@charset "utf-8";

/* common */
.main {
    background-color: #fff;
    padding-top: 50rem;
    padding-bottom: 85rem;
}
.main.bg_blue {
    background-color: #F0FAFA;
}
.main.bg_pink {
    background-color: #FAF3EA;
}
.main.bg_purple {
    background-color: #FAF5FA;
}
.main.bg_orange {
    background-color: #FEECD2;
}
.main.bg_yellow {
    background-color: #FFFAE1;
}
.main.bg_green {
    background-color: #E2F5D3;
}
@media screen and (max-width:1023px) {
    .main {
        padding-top: 20rem;
    }
}
.footer {
    background: #fff;
}

/* content */
.content:not(:last-of-type) {
    margin-bottom: 75rem;
}

/* breadcrumb */
.breadcrumb {
    margin-bottom: 60rem;
}
.breadcrumb ul {
    display: flex;
    align-items: center;
    column-gap: 20rem;
}
.breadcrumb ul li,
.breadcrumb ul li a {
    font-size: 22rem;
    font-weight: 300;
    line-height: 1.2;
}
.breadcrumb ul li:not(:first-of-type) {
    position: relative;
    padding-left: 28.637rem;
}
.breadcrumb ul li:not(:first-of-type)::before {
    position: absolute;
    content: '';
    width: 11rem;
    height: 11rem;
    border-top: .8px solid #000;
    border-right: .8px solid #000;
    left: -5.5rem;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}

/* part_ttl */
.part_ttl {
    font-size: 40rem;
    font-weight: 700;
    text-align: center;
    color: #898989;
    line-height: calc(53.53 / 29.33);
    margin-bottom: 18rem;
}
.part_ttl .en {
    font-family: "Outfit", serif;
    font-size: 93rem;
    color: var(--color-main);
    line-height: calc(53.53 / 68.2);
}

.part_ttl_sub {
    font-size: 33rem;
    font-weight: 700;
    text-align: center;
    color: #fff;
    padding: 20rem 0;
    background-color: var(--color-main);
    margin-bottom: 65rem;
}

/* trend */
.trend {
    display: flex;
    justify-content: center;
    column-gap: 30rem;
    margin-bottom: 57.825rem;
}
.trend .trend_item {
    font-size: 24rem;
    font-weight: 400;
    text-align: center;
    color: #fff;
    width: 160rem;
    background-color: var(--color-main);
    padding: 15.886rem 0;
    border-radius: 9999px;
}

@media screen and (min-width:1023px) {
    .trend .trend_item {
        transition: opacity .3s;
    }
    .trend .trend_item:hover {
        opacity: .7;
    }
}

/* main_img */
.main_img {
    text-align: center;
    margin-bottom: 75rem;
}

/* main_lead */
.main_lead {
    font-size: 28rem;
    font-weight: 400;
    line-height: calc(44 / 20.53);
    font-feature-settings: "palt";
}

/* noteflex */
.noteflex {
    display: flex;
}
.noteflex .kome {
    flex-shrink: 0;
}

/* align */
.alignCenter {
    text-align: center;
}

