@charset "UTF-8";
/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    overflow: hidden;
}

/* ---------------------------------------------
*   c-block-bg-lineup
--------------------------------------------- */
.c-block-bg-lineup {
    background: url(../img/bg_lineup.png) top center no-repeat;
    background-size: 100% auto;
}

/* ---------------------------------------------
*   c-block-ac-_lineup
--------------------------------------------- */
.c-block-ac-lineup {
    background: url(../img/acc_lineup.png) top center no-repeat;
    background-size: cover;
}

/* ---------------------------------------------
*   c-block-bg-feature
--------------------------------------------- */
.c-block-bg-feature {
    z-index: 1;
    background: url(../img/bg_feature.png) top center no-repeat;
    background-size: cover;
}

/* ---------------------------------------------
*   c-bg-campaign
--------------------------------------------- */
.c-bg-campaign {
    z-index: 1;
    background: url(../img/bg_campaign.png) top center no-repeat;
    background-size: cover;
}

/* ---------------------------------------------
*   c-block-bg-intro
--------------------------------------------- */
.c-block-bg-intro {
    position: relative;
}
.c-block-bg-intro::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/bg_intro.png) top -24.5333333333vw center no-repeat;
    background-size: 100% auto;
}
@media screen and (min-width: 751px) {
    .c-block-bg-intro::before {
        background: url(../img/bg_intro.png) top -106px center no-repeat;
        background-size: 100% auto;
    }
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    background-color: #382b20;
}
.l-footer__container {
    padding-top: 10.1333333333%;
    padding-bottom: 5.8666666667%;
}
.l-footer__logo {
    width: 35.7333333333%;
    margin-inline: auto;
    margin-top: 9.3333333333vw;
}
@media screen and (min-width: 751px) {
    .l-footer__logo {
        margin-top: 40.1333333333px;
    }
}
.l-footer__logo img {
    width: 100%;
}
.l-footer__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__logo-link {
        transition: opacity 300ms;
    }
    .l-footer__logo-link:hover {
        opacity: 0.8;
    }
}
.l-footer__copyright {
    margin-top: 1.6%;
    text-align: center;
}
.l-footer__copyright-txt {
    display: block;
    color: #fff;
    font-family: "Lato", serif;
    font-size: 2.6666666667vw;
    font-weight: 400;
    letter-spacing: 0.12em;
}
@media screen and (min-width: 751px) {
    .l-footer__copyright-txt {
        font-size: 11.4666666667px;
    }
}

/* ---------------------------------------------
*   l-footer-sns
--------------------------------------------- */
.l-footer-sns {
    position: relative;
}
.l-footer-sns__list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8%;
}
.l-footer-sns__list-item {
    width: 6.1333333333%;
}
.l-footer-sns__list-item--ig {
    width: 5.8666666667%;
}
.l-footer-sns__list-item--fb {
    width: 3.2%;
}
.l-footer-sns__list-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-sns__list-link {
        transition: opacity 300ms;
    }
    .l-footer-sns__list-link:hover {
        opacity: 0.8;
    }
}
.l-footer-sns__list-link img {
    width: 100%;
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}
.l-header__container {
    padding: 6.6666666667vw 5.3333333333vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
@media screen and (min-width: 751px) {
    .l-header__container {
        padding: 28.6666666667px 22.9333333333px;
    }
}
.l-header__logo {
    padding-top: 1.0666666667vw;
    width: 13.6vw;
}
@media screen and (min-width: 751px) {
    .l-header__logo {
        padding-top: 4.5866666667px;
        width: 58.48px;
    }
}
.l-header__logo img {
    width: 100%;
}
.l-header__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity 300ms;
    }
    .l-header__logo-link:hover {
        opacity: 0.8;
    }
}
.l-header__logo-link img {
    width: 100%;
}
.l-header__ttl {
    width: 18.6666666667vw;
}
@media screen and (max-width: 750px) {
    .l-header__ttl {
        margin-top: 0.5333333333vw;
        margin-left: 0.8vw;
    }
}
@media screen and (min-width: 751px) {
    .l-header__ttl {
        width: 80.2666666667px;
        margin-left: 4px;
    }
}

/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
.l-wrapper {
    position: relative;
    opacity: 0;
}
.is-loaded .l-wrapper {
    opacity: 1;
}

@media screen and (min-width: 751px) {
    .l-wrapper {
        left: 0;
        right: 0;
        max-width: 430px;
        margin-inline: auto;
        overflow-y: auto;
    }
}

/* ---------------------------------------------
*   c-block-bg
--------------------------------------------- */
.c-block-bg {
    position: fixed;
    inset: 0;
}
.c-block-bg__logo {
    position: absolute;
    width: calc((100% - 430px) / 2);
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
}
.c-block-bg__logo img {
    position: absolute;
    inset: 0;
    width: 181px;
    margin: auto;
}
@media screen and (max-width: 1000px) {
    .c-block-bg__logo img {
        width: 18.1vw;
    }
}
.c-block-bg__qr {
    position: absolute;
    width: calc((100% - 430px) / 2);
    height: 100%;
    top: 0;
    right: 0;
    z-index: 1;
}
.c-block-bg__qr img {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 160px;
}
@media screen and (max-width: 1000px) {
    .c-block-bg__qr img {
        width: 16vw;
    }
}
.c-block-bg__bg {
    position: absolute;
    inset: 0;
}
.c-block-bg__bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-block
--------------------------------------------- */
.c-block {
    position: relative;
    z-index: 2;
    margin-top: -2px;
}
.c-block__date {
    display: block;
    width: 61.0666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-block__date {
        width: 262.5866666667px;
    }
}
.c-block__bnr {
    width: 77.3333333333vw;
    margin-inline: auto;
    margin-top: 1.6vw;
    transform: translateX(1.0666666667vw);
}
@media screen and (min-width: 751px) {
    .c-block__bnr {
        width: 332.5333333333px;
        transform: translateX(4.5866666667px);
        margin-top: 5px;
    }
}
.c-block__bnr img {
    width: 100%;
}
.c-block__bnr-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-block__bnr-link {
        transition: opacity 300ms;
    }
    .c-block__bnr-link:hover {
        opacity: 0.8;
    }
}

/* ---------------------------------------------
*   c-block-intro
--------------------------------------------- */
.c-block-intro {
    position: relative;
    z-index: 2;
    padding: 23.4666666667vw 0 49.0666666667vw;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-block-intro {
        padding: 100.9066666667px 0 206px;
    }
}
@media screen and (max-width: 750px) {
    .edge .c-block-intro {
        padding-bottom: 40vw;
    }
}

.c-block-intro__container {
    position: relative;
    margin: 0 auto;
}
.c-block-intro__mainimg {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 67.2vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-block-intro__mainimg {
        width: 288.96px;
    }
}
.c-block-intro__ttlwrap {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.77);
    width: 11.2vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttlwrap {
        width: 48.16px;
    }
}
.c-block-intro__ttlwrap--1 {
    top: -12vw;
    right: 9.0666666667vw;
    height: 93.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttlwrap--1 {
        top: -51.6px;
        right: 38.9866666667px;
        height: 403.6266666667px;
    }
}
.c-block-intro__ttlwrap--2 {
    top: 50.6666666667vw;
    left: 8.5333333333vw;
    height: 48vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttlwrap--2 {
        top: 217.8666666667px;
        left: 36.6933333333px;
        height: 206.4px;
    }
}
.c-block-intro__ttlimg img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-block-intro__ttlimg--1 {
    display: block;
    width: 9.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttlimg--1 {
        width: 40.1333333333px;
    }
}
.c-block-intro__ttlimg--2 {
    display: block;
    width: 10.4vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttlimg--2 {
        width: 44.72px;
    }
}
.c-block-intro__txt {
    display: block;
    color: #7E302E;
    font-size: 4vw;
    font-weight: 700;
    line-height: 1.9;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-block-intro__txt {
        font-size: 17.2px;
    }
}
.c-block-intro__txt + .c-block-intro__txt {
    margin-top: 1em;
}
.c-block-intro__txt-bg {
    position: relative;
}
.c-block-intro__txt-bg::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #FFEDED;
}
.c-block-intro__body {
    margin-top: 15.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__body {
        margin-top: 70px;
    }
}
.c-block-intro__sakura {
    position: absolute;
    display: block;
}
.c-block-intro__sakura--1 {
    top: 91.4666666667vw;
    right: 8vw;
    width: 25.6vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__sakura--1 {
        top: 393.3066666667px;
        right: 34.4px;
        width: 110.08px;
    }
}
.c-block-intro__sakura--2 {
    top: 170.4vw;
    left: 8vw;
    width: 20.8vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__sakura--2 {
        top: 732.72px;
        left: 34.4px;
        width: 89.44px;
    }
}

/* ---------------------------------------------
*   c-block-note
--------------------------------------------- */
.c-block-note {
    padding: 13.3333333333vw 5.3333333333vw 5.3333333333vw;
    position: relative;
    z-index: 2;
}
@media screen and (min-width: 751px) {
    .c-block-note {
        padding: 57.3333333333px 22.9333333333px 22.9333333333px;
    }
}
.c-block-note__ttl {
    display: block;
    width: 60.2666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-block-note__ttl {
        width: 259.1466666667px;
    }
}
.c-block-note__btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 6.4vw;
}
@media screen and (min-width: 751px) {
    .c-block-note__btn {
        margin-top: 27.52px;
    }
}
.c-block-note__link {
    display: block;
    flex-shrink: 0;
    width: 49.2537313433%;
    transition: opacity 300ms;
}
.c-block-note__link:hover {
    opacity: 0.8;
}
@media screen and (min-width: 751px) {
    .c-block-note__link {
        width: 189.2px;
    }
}
.c-block-note__txt {
    color: #EADBC6;
    font-size: 3.4666666667vw;
    font-weight: 500;
    line-height: 1.7;
    margin-top: 12vw;
}
@media screen and (min-width: 751px) {
    .c-block-note__txt {
        font-size: 14.9066666667px;
        margin-top: 51.6px;
    }
}

/* ---------------------------------------------
*   c-block-almond
--------------------------------------------- */
.c-block-almond {
    padding: 8vw 0 10.1333333333vw;
    background: url(../img/bg_tea.png) 0 0 no-repeat;
    background-size: 100% 100%;
    margin-top: -2px;
}
@media screen and (min-width: 751px) {
    .c-block-almond {
        padding: 34.4px 0 43.5733333333px;
    }
}
.c-block-almond__img {
    display: block;
    width: 79.4666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-block-almond__img {
        width: 341.7066666667px;
    }
}
.c-block-almond__inner {
    color: #fff;
    text-align: center;
    margin-top: 2.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-almond__inner {
        margin-top: 9.1733333333px;
    }
}
.c-block-almond__ttl {
    display: block;
    font-size: 4vw;
    font-weight: 700;
    line-height: 1.3333333333;
}
@media screen and (min-width: 751px) {
    .c-block-almond__ttl {
        font-size: 17.2px;
    }
}
.c-block-almond__ttl-l {
    display: block;
    font-size: 7.4666666667vw;
    line-height: 1.0714285714;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-block-almond__ttl-l {
        font-size: 32.1066666667px;
        margin-top: 4.5866666667px;
    }
}
.c-block-almond__txt {
    display: block;
    font-size: 3.2vw;
    font-weight: 700;
    line-height: 1.8333333333;
    margin-top: 4.8vw;
}
@media screen and (min-width: 751px) {
    .c-block-almond__txt {
        font-size: 13.76px;
        margin-top: 20.64px;
    }
}

/* ---------------------------------------------
*   c-block-almond-detail
--------------------------------------------- */
.c-block-almond-detail {
    display: block;
    width: 100%;
    margin-top: -2px;
}
.c-block-almond-detail img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-cassette-lineup
--------------------------------------------- */
.c-cassette-lineup {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    font-feature-settings: "palt" 1;
}
.c-cassette-lineup--1 {
    padding-left: 14.4vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup--1 {
        padding-left: 61.92px;
    }
}
.c-cassette-lineup--2 {
    padding-left: 0;
    padding-right: 9.3333333333vw;
    flex-direction: row-reverse;
    margin-top: 16vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup--2 {
        padding-right: 40.1333333333px;
        margin-top: 68.8px;
    }
}
.c-cassette-lineup--3 {
    padding-left: 14.9333333333vw;
    margin-top: 36.8vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup--3 {
        padding-left: 64.2133333333px;
        margin-top: 158.24px;
    }
}
.c-cassette-lineup__inner {
    position: relative;
    z-index: 1;
}
.c-cassette-lineup__inner--1 {
    padding-top: 14.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__inner--1 {
        padding-top: 64.2133333333px;
    }
}
.c-cassette-lineup__ttl {
    display: block;
}
.c-cassette-lineup__ttl--1 {
    width: 14.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__ttl--1 {
        width: 63.0666666667px;
    }
}
.c-cassette-lineup__ttl--2 {
    position: relative;
    width: 18.1333333333vw;
    margin-left: auto;
    margin-right: 5.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__ttl--2 {
        width: 77.9733333333px;
        margin-right: 22.9333333333px;
    }
}
.c-cassette-lineup__ttl--3 {
    width: 14.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__ttl--3 {
        width: 63.0666666667px;
    }
}
.c-cassette-lineup__txt-wrap--1 {
    padding-left: 2.6666666667vw;
    margin-top: 1.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__txt-wrap--1 {
        padding-left: 11.4666666667px;
        margin-top: 5.7333333333px;
    }
}
.c-cassette-lineup__txt-wrap--2 {
    margin-top: 1.6vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__txt-wrap--2 {
        margin-top: 6.88px;
    }
}
.c-cassette-lineup__txt-wrap--3 {
    padding-left: 2.9333333333vw;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__txt-wrap--3 {
        padding-left: 12.6133333333px;
        margin-top: 4.5866666667px;
    }
}
.c-cassette-lineup__name {
    display: block;
    color: #841E1E;
    font-size: 2.9333333333vw;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.8181818182;
    white-space: nowrap;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__name {
        font-size: 12.6133333333px;
    }
}
.c-cassette-lineup__name-l {
    display: block;
    font-size: 4vw;
    line-height: 1.2;
    margin-top: 0.2666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__name-l {
        font-size: 17.2px;
        margin-top: 1.1466666667px;
    }
}
.c-cassette-lineup__size {
    display: block;
    color: #841E1E;
    font-size: 2.6666666667vw;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.1;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__size {
        font-size: 11.4666666667px;
        margin-top: 4.5866666667px;
    }
}
.c-cassette-lineup__price {
    display: block;
    margin-top: 2.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__price {
        margin-top: 11.4666666667px;
    }
}
.c-cassette-lineup__price--1 {
    width: 14.4vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__price--1 {
        width: 61.92px;
    }
}
.c-cassette-lineup__price--2 {
    width: 15.2vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__price--2 {
        width: 65.36px;
    }
}
.c-cassette-lineup__price--3 {
    width: 14.4vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__price--3 {
        width: 61.92px;
    }
}
.c-cassette-lineup__product {
    position: relative;
    z-index: 1;
    display: block;
    flex-shrink: 0;
}
.c-cassette-lineup__product--1 {
    width: 58.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product--1 {
        width: 253.4133333333px;
    }
}
.c-cassette-lineup__product--2 {
    position: absolute;
    top: -32vw;
    left: -13.8666666667vw;
    width: 96.2666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product--2 {
        top: -137.6px;
        left: -59.6266666667px;
        width: 413.9466666667px;
    }
}
.c-cassette-lineup__product--3 {
    position: absolute;
    top: -35.2vw;
    left: 16.8vw;
    width: 96.2666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product--3 {
        top: -151.36px;
        left: 72.24px;
        width: 413.9466666667px;
    }
}
.c-cassette-lineup__product-bg {
    position: absolute;
}
.c-cassette-lineup__product-bg--1 {
    top: 0;
    left: 1.0666666667vw;
    width: 84vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product-bg--1 {
        left: 4.5866666667px;
        width: 361.2px;
    }
}
.c-cassette-lineup__product-bg--2 {
    top: 30.6666666667vw;
    left: -2.6666666667vw;
    width: 60vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product-bg--2 {
        top: 131.8666666667px;
        left: -11.4666666667px;
        width: 258px;
    }
}
.c-cassette-lineup__product-bg--3 {
    top: 6.9333333333vw;
    left: 25.8666666667vw;
    width: 84vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product-bg--3 {
        top: 29.8133333333px;
        left: 111.2266666667px;
        width: 361.2px;
    }
}

/* ---------------------------------------------
*   c-cassette-feature
--------------------------------------------- */
.c-cassette-feature {
    position: relative;
}
.c-cassette-feature--2 {
    padding-top: 7.2vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature--2 {
        padding-top: 36px;
    }
}
.c-cassette-feature--3 {
    padding-top: 10.4vw;
    padding-bottom: 13.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature--3 {
        padding-top: 44.72px;
        padding-bottom: 57.3333333333px;
    }
}
.c-cassette-feature__acc {
    position: absolute;
    z-index: 1;
}
.c-cassette-feature__acc--1 {
    top: 38.4vw;
    right: -10.6666666667vw;
    width: 41.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__acc--1 {
        top: 159px;
        right: -47px;
        width: 176.5866666667px;
    }
}
.c-cassette-feature__acc--2 {
    top: 2.6666666667vw;
    left: -12.5333333333vw;
    width: 39.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__acc--2 {
        top: 11.4666666667px;
        left: -53.8933333333px;
        width: 170.8533333333px;
    }
}
.c-cassette-feature__acc--3 {
    top: -0.2666666667vw;
    right: 0;
    width: 25.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__acc--3 {
        top: -11px;
        width: 111.2266666667px;
    }
}
.c-cassette-feature__acc--4 {
    bottom: -16.8vw;
    left: -14.6666666667vw;
    width: 32vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__acc--4 {
        bottom: -72.24px;
        left: -63.0666666667px;
        width: 137.6px;
    }
}
.c-cassette-feature__bg {
    display: block;
    width: 100%;
    margin-top: 1.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__bg {
        margin-top: 8.0266666667px;
    }
}
.c-cassette-feature__bg img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-cassette-feature__inner {
    position: relative;
    margin-top: 3.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__inner {
        margin-top: 16.0533333333px;
    }
}
.c-cassette-feature__thumb {
    position: absolute;
    display: block;
}
.c-cassette-feature__thumb--1 {
    top: -13.3333333333vw;
    left: 9.8666666667vw;
    width: 34.4vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__thumb--1 {
        top: -57.3333333333px;
        left: 42.4266666667px;
        width: 147.92px;
    }
}
.c-cassette-feature__thumb--2 {
    top: -13.3333333333vw;
    right: 9.8666666667vw;
    width: 38.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__thumb--2 {
        top: -57px;
        right: 42.4266666667px;
        width: 163.9733333333px;
    }
}
.c-cassette-feature__thumb--3 {
    top: -13.6vw;
    left: 10.4vw;
    width: 37.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__thumb--3 {
        top: -58.48px;
        left: 44.72px;
        width: 160.5333333333px;
    }
}
.c-cassette-feature__lead {
    position: relative;
    display: block;
    color: #E02318;
    font-size: 4vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.4;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead {
        font-size: 17.2px;
    }
}
.c-cassette-feature__lead-l {
    display: block;
    font-size: 7.4666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead-l {
        font-size: 32.1066666667px;
    }
}
.c-cassette-feature__txt-wrap {
    margin-top: 2.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt-wrap {
        margin-top: 11.4666666667px;
    }
}
.c-cassette-feature__txt {
    color: #841E1E;
    font-feature-settings: "palt" 1;
    font-size: 3.2vw;
    font-weight: 700;
    line-height: 1.8333333333;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt {
        font-size: 13.76px;
    }
}
.c-cassette-feature__sub {
    position: relative;
    display: block;
    margin: 5.6vw auto 0;
    width: 73.0666666667vw;
    transform: translateX(1.3333333333vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__sub {
        width: 314.1866666667px;
        margin-top: 24.08px;
        transform: translateX(5.7333333333px);
    }
}
.c-cassette-feature__loop {
    display: flex;
    margin: 0 auto;
}
.c-cassette-feature__loop--1 {
    width: 196.2666666667vw;
    width: 197.6vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__loop--1 {
        width: 843.9466666667px;
        width: 849.68px;
    }
}
.c-cassette-feature__loop--2 {
    width: 142.1333333333vw;
    width: 142.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__loop--2 {
        width: 611.1733333333px;
        width: 614.6133333333px;
    }
}
.c-cassette-feature__loop--3 {
    width: 142.6666666667vw;
    width: 144vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__loop--3 {
        width: 613.4666666667px;
        width: 619.2px;
    }
}
.c-cassette-feature__loop img:first-of-type {
    animation: loop1 40s -20s linear infinite;
}
.c-cassette-feature__loop img:last-of-type {
    animation: loop2 40s linear infinite;
}
.c-cassette-feature__loop img {
    width: 100%;
}
@keyframes loop1 {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}
@keyframes loop2 {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-200%);
    }
}
/* ---------------------------------------------
*   c-keyvisual
--------------------------------------------- */
.c-keyvisual {
    position: relative;
    z-index: 1;
}
.c-keyvisual img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-section-feature
--------------------------------------------- */
.c-section-feature {
    position: relative;
    padding-top: 25.3333333333vw;
    margin-top: -7.4666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-feature {
        padding-top: 108.9333333333px;
        margin-top: -32.1066666667px;
    }
}
@media screen and (max-width: 750px) {
    .windows.firefox .c-section-feature {
        margin-top: -23vw;
    }
}

@media screen and (max-width: 750px) {
    .windows.chrome .c-section-feature {
        margin-top: -23vw;
    }
}

.c-section-feature__container {
    margin: 0 auto;
}
.c-section-feature__ttl {
    display: block;
    width: 57.0666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-feature__ttl {
        width: 245.3866666667px;
    }
}
.c-section-feature__body {
    margin-top: 5.3333333333vw;
    overflow: hidden;
}
@media screen and (min-width: 751px) {
    .c-section-feature__body {
        margin-top: 30px;
    }
}

/* ---------------------------------------------
*   c-section-monthly
--------------------------------------------- */
.c-section-monthly {
    position: relative;
    padding: 8vw 0 10.6666666667vw;
    background-color: #E7696D;
    margin-top: -2px;
}
@media screen and (min-width: 751px) {
    .c-section-monthly {
        padding: 34.4px 0 45.8666666667px;
    }
}
.c-section-monthly__container {
    width: 89.3333333333vw;
    margin: 0 auto;
    border-radius: 3.2vw;
    background-color: #FFECEA;
    padding-top: 10.6666666667vw;
    padding-bottom: 12vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__container {
        width: 384.1333333333px;
        padding-top: 45.8666666667px;
        padding-bottom: 51.6px;
        border-radius: 13.76px;
    }
}
.c-section-monthly__label {
    position: absolute;
    top: 1.6vw;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
    .c-section-monthly__label {
        top: 6.88px;
    }
}
.c-section-monthly__balloon {
    padding: 2.266667vw 6.866667vw 3.566667vw;
    border: 1px solid #000;
    line-height: 1.25;
    border-radius: 6vw;
    background-color: #fff;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon {
        padding: 15px 30px 16px;
        border-radius: 25.8px;
        line-height: 1;
    }
}
.c-section-monthly__balloon::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 4.2666666667vw;
    height: 5.0666666667vw;
    background: url(../img/bg_balloon_bottom_2.png) 50% 0 no-repeat;
    background-size: 100% auto;
    transform: translate(-50%, 85%);
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon::after {
        width: 18.3466666667px;
        height: 21.7866666667px;
    }
}
.c-section-monthly__balloon-txt {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 3.4666666667vw;
    font-weight: bold;
    letter-spacing: 0.07em;
    white-space: nowrap;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon-txt {
        font-size: 14.9066666667px;
    }
}
.c-section-monthly__float-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
}
.c-section-monthly__float-img-item {
    position: absolute;
}
.c-section-monthly__float-img-item--1 {
    top: 53.3333333333vw;
    right: 0;
    width: 28.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--1 {
        top: 229.3333333333px;
        width: 122.6933333333px;
    }
}
.c-section-monthly__float-img-item--2 {
    top: 74.1333333333vw;
    left: -3.2vw;
    width: 33.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--2 {
        top: 318.7733333333px;
        left: -13.76px;
        width: 145.6266666667px;
    }
}
.c-section-monthly__float-img-item--3 {
    top: 163.2vw;
    right: -0.5333333333vw;
    width: 26.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--3 {
        top: 701.76px;
        right: -2.2933333333px;
        width: 112.3733333333px;
    }
}
.c-section-monthly__float-img-item--4 {
    top: 193.0666666667vw;
    left: 0;
    width: 22.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--4 {
        top: 830.1866666667px;
        width: 98.6133333333px;
    }
}
.c-section-monthly__float-img-item img {
    display: block;
    width: 100%;
}
.c-section-monthly__img {
    position: relative;
    width: 86.9333333333vw;
    margin: 0 auto;
    transform: translateX(-3.4666666667vw);
}
@media screen and (min-width: 751px) {
    .c-section-monthly__img {
        width: 373.8133333333px;
        transform: translateX(-14.9066666667px);
    }
}
.c-section-monthly__img img {
    display: block;
    width: 100%;
}

/* ---------------------------------------------
*   c-section-3
--------------------------------------------- */
.c-section-3 {
    position: relative;
    padding-top: 5.3333333333vw;
    color: #7E302E;
}
@media screen and (min-width: 751px) {
    .c-section-3 {
        padding-top: 22.9333333333px;
    }
}
.c-section-3__head {
    text-align: center;
}
.c-section-3__ttl {
    display: block;
    width: 76.2666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-3__ttl {
        width: 327.9466666667px;
    }
}
.c-section-3__ttl img {
    width: 100%;
}
.c-section-3__contents {
    width: 86.6666666667%;
    margin: 6.6666666667vw auto 0;
    padding: 6.8% 4.3% 10.4vw;
    border-radius: 2.6666666667vw;
    background-color: #FFECEA;
}
@media screen and (min-width: 751px) {
    .c-section-3__contents {
        padding-bottom: 44.72px;
        margin-top: 28.6666666667px;
        border-radius: 11.4666666667px;
    }
}
.c-section-3__date-l {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    white-space: nowrap;
}
.c-section-3__date-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 11.4666666667vw;
    height: 11.4666666667vw;
    color: #E7696D;
    font-size: 3.0533333333vw;
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: 0.05em;
    margin-top: 2.3vw;
    margin-right: 1.6vw;
    border-radius: 50%;
    border: 2px solid #E7696D;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-icon {
        width: 49.3066666667px;
        height: 49.3066666667px;
        margin-top: 9px;
        margin-right: 6.88px;
        font-size: 13.1293333333px;
    }
}
.c-section-3__date-txt {
    color: #E7696D;
    font-family: "Work Sans", sans-serif;
    font-size: 10.6666666667vw;
    font-weight: 500;
    letter-spacing: -0.01em;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-txt {
        font-size: 45.8666666667px;
    }
}
.c-section-3__date-txt-s {
    display: inline-block;
    margin-left: 1.0666666667vw;
    font-size: 3.7333333333vw;
    font-weight: 500;
    letter-spacing: 0;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-txt-s {
        margin-left: 4.5866666667px;
        font-size: 16.0533333333px;
    }
}
.c-section-3__date-txt-sym {
    display: inline-block;
    font-size: 10.6666666667vw;
    margin-left: 0.8vw;
    margin-right: 1.8666666667vw;
    transform: translateY(-1.0666666667vw);
}
@media screen and (min-width: 751px) {
    .c-section-3__date-txt-sym {
        font-size: 45.8666666667px;
        margin-left: 3.44px;
        margin-right: 8.0266666667px;
        transform: translateY(-4.5866666667px);
    }
}
.c-section-3__txt {
    font-size: 4vw;
    font-weight: bold;
    color: #382b20;
    text-align: center;
    line-height: 1.63;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__txt {
        font-size: 17.2px;
        margin-top: 4.5866666667px;
    }
}
.c-section-3__box {
    margin-top: 4.6666666667vw;
    padding: 5.8666666667vw 5.3333333333vw 0.2666666667vw;
    border-radius: 2.6666666667vw;
    background-color: #fff;
}
@media screen and (min-width: 751px) {
    .c-section-3__box {
        margin-top: 20.0666666667px;
        padding: 25.2266666667px 22.9333333333px 1.1466666667px;
        border-radius: 11.4666666667px;
    }
}
.c-section-3__box-ttl {
    width: 6.4vw;
    margin: 0 auto 2.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-ttl {
        width: 27.52px;
        margin-bottom: 11.4666666667px;
    }
}
.c-section-3__box-ttl svg {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-section-3__box-list-item {
    display: flex;
    align-items: center;
    margin-bottom: 1.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-list-item {
        margin-bottom: 8.0266666667px;
    }
}
.c-section-3__box-list-item:last-of-type {
    margin-bottom: 0;
}
.c-section-3__box-list-label {
    display: inline-block;
    margin-right: 2.6666666667vw;
    padding: 0.1333333333vw 2.1333333333vw 0.1333333333vw;
    border-radius: 1.0666666667vw;
    border: 1px solid #E7696D;
    color: #E7696D;
    font-size: 3.2vw;
    font-weight: bold;
    letter-spacing: 0.03em;
}
.firefox .c-section-3__box-list-label {
    padding: 0.407vw 2.1333333333vw 0.1333333333vw;
}

.windows .c-section-3__box-list-label {
    padding: 0.466667vw 2.1333333333vw 0.233333vw;
}

.safari .c-section-3__box-list-label {
    padding: 0.47vw 2.1333333333vw 0.1333333333vw;
}

.android .c-section-3__box-list-label {
    padding: 0.37vw 2.1333333333vw 0.3333333333vw;
}

@media screen and (min-width: 751px) {
    .c-section-3__box-list-label {
        margin-right: 11.4666666667px;
        padding: 0.866667px 9.1733333333px 1px;
        font-size: 13.76px;
        border-radius: 4.5866666667px;
    }
    .firefox .c-section-3__box-list-label {
        padding: 1.467px 9.1733333333px 0.573px;
    }
    .windows .c-section-3__box-list-label {
        padding: 2.366667px 9.1733333333px 0.5733333333px;
    }
    .safari .c-section-3__box-list-label {
        padding: 2px 9.1733333333px 0px;
    }
}
.c-section-3__box-list-txt {
    color: #382b20;
    font-feature-settings: "palt";
    font-size: 3.3333333333vw;
    font-weight: bold;
    letter-spacing: 0.02em;
    margin-top: 0.2666666667vw;
    white-space: nowrap;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-list-txt {
        font-size: 14.3333333333px;
        margin-top: 1.1466666667px;
    }
}
.c-section-3__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 74.6666666667vw;
    margin-top: 2.1333333333vw;
    transform: translateX(-4.3%);
    transition: opacity 300ms;
}
.c-section-3__btn:hover {
    opacity: 0.8;
}
@media screen and (min-width: 751px) {
    .c-section-3__btn {
        width: 321.0666666667px;
        margin-top: 9.1733333333px;
        transform: translateX(-14px);
    }
}
@media screen and (max-width: 750px) {
    .windows .c-section-3__btn {
        transform: translateX(-6%);
    }
}

@media screen and (max-width: 750px) {
    .windows.chrome .c-section-3__btn {
        transform: translateX(-5.5%);
    }
}

@media screen and (max-width: 750px) {
    .edge .c-section-3__btn {
        transform: translateX(-5.5%);
    }
}

.c-section-3__link-outer {
    margin-top: 6.1333333333vw;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-3__link-outer {
        margin-top: 26.3733333333px;
    }
}
.c-section-3__link {
    position: relative;
    font-size: 3.4666666667vw;
    padding-right: 4.8vw;
    padding-bottom: 1.3333333333vw;
    border-bottom: 2px solid #E7696D;
    font-weight: bold;
    color: #E7696D;
    transition: opacity 300ms;
}
.c-section-3__link:hover {
    opacity: 0.8;
}
@media screen and (min-width: 751px) {
    .c-section-3__link {
        padding-right: 20.64px;
        padding-bottom: 5.7333333333px;
        font-size: 14.9066666667px;
    }
}
.c-section-3__link:after {
    content: "";
    position: absolute;
    top: 5%;
    right: 0;
    width: 3.2vw;
    height: 3.2vw;
    -webkit-mask: url("../img/icn_blank.svg") 0 0/100% auto no-repeat;
            mask: url("../img/icn_blank.svg") 0 0/100% auto no-repeat;
    background-color: #E7696D;
}
@media screen and (min-width: 751px) {
    .c-section-3__link:after {
        width: 13.76px;
        height: 13.76px;
    }
}
.android .c-section-3__link:after {
    top: 17%;
}

/* ---------------------------------------------
*   c-section-lineup
--------------------------------------------- */
.c-section-lineup {
    position: relative;
    z-index: 1;
    padding-top: 17.6vw;
    margin-top: -9.6vw;
}
@media screen and (min-width: 751px) {
    .c-section-lineup {
        padding-top: 75px;
        margin-top: -38px;
    }
}
@media screen and (max-width: 750px) {
    .windows.firefox .c-section-lineup {
        margin-top: -23vw;
    }
}

@media screen and (max-width: 750px) {
    .windows.chrome .c-section-lineup {
        margin-top: -23vw;
    }
}

.c-section-lineup__container {
    padding-bottom: 93.3333333333vw;
    overflow: hidden;
}
@media screen and (min-width: 751px) {
    .c-section-lineup__container {
        padding-bottom: 401.3333333333px;
    }
}
@media screen and (max-width: 750px) {
    .edge .c-section-lineup__container {
        padding-bottom: 80vw;
    }
}

.c-section-lineup__head {
    margin: 0 auto 5.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-lineup__head {
        margin-bottom: 22.9333333333px;
    }
}
.c-section-lineup__ttl {
    display: block;
    width: 49.0666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-lineup__ttl {
        width: 210.9866666667px;
    }
}

/* ---------------------------------------------
*   c-section-collabo
--------------------------------------------- */
.c-section-collabo {
    padding-top: 21.8666666667vw;
    padding-bottom: 11.4666666667vw;
    background: url(../img/bg_collabo.png) top center no-repeat;
    background-size: 100% 100%;
    margin-top: -2px;
}
@media screen and (min-width: 751px) {
    .c-section-collabo {
        padding-top: 94.0266666667px;
        padding-bottom: 49.3066666667px;
    }
}
.c-section-collabo__container {
    width: 89.3333333333vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__container {
        width: 384.1333333333px;
    }
}
.c-section-collabo__top-ttl {
    width: 80vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__top-ttl {
        width: 344px;
    }
}
.c-section-collabo__top-txt {
    width: 68.2666666667vw;
    margin: 6.6666666667vw auto 0;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__top-txt {
        width: 293.5466666667px;
        margin-top: 28.6666666667px;
    }
}
.c-section-collabo__top-name {
    width: 93.8666666667vw;
    margin: 8.5333333333vw auto 0;
    transform: translateX(-3.2vw);
}
@media screen and (min-width: 751px) {
    .c-section-collabo__top-name {
        width: 403.6266666667px;
        margin-top: 36.6933333333px;
        transform: translateX(-13.76px);
    }
}
.c-section-collabo__thumb {
    display: block;
    width: 100vw;
    margin: 3.7333333333vw calc(50% - 50vw) 0;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__thumb {
        width: 432px;
        margin: 16.0533333333px calc(50% - 216px) 0;
    }
}
.c-section-collabo__top-link {
    margin-top: 3.4666666667vw;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__top-link {
        margin-top: 20px;
    }
}
.c-section-collabo__top-link--large {
    margin-top: 5.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__top-link--large {
        margin-top: 21.7866666667px;
    }
}
.c-section-collabo__body {
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 3.4666666667vw;
    margin-top: 9.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__body {
        margin-top: 42.4266666667px;
        border-radius: 14.9066666667px;
    }
}
.c-section-collabo__movie {
    padding-top: 10.4vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__movie {
        padding-top: 44.72px;
    }
}
.c-section-collabo__movie-ttl {
    width: 73.8666666667vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__movie-ttl {
        width: 317.6266666667px;
    }
}
.c-section-collabo__movie-link {
    text-align: center;
    margin-top: 2.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__movie-link {
        margin-top: 12px;
    }
}
.c-section-collabo__campaign {
    margin-top: 7.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign {
        margin-top: 33.2533333333px;
    }
}
.c-section-collabo__campaign-ttl {
    width: 55.2vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign-ttl {
        width: 237.36px;
    }
}
.c-section-collabo__campaign-box {
    width: 88.0597014925%;
    margin: 4.5333333333vw auto 0;
    background-color: #FFE1EB;
    border-radius: 2.6666666667vw;
    padding-top: 6.9333333333vw;
    padding-bottom: 6.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign-box {
        padding-top: 29.8133333333px;
        padding-bottom: 29.8133333333px;
        border-radius: 11.4666666667px;
        margin-top: 19.4933333333px;
    }
}
.c-section-collabo__campaign-txt1 {
    width: 70.4vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign-txt1 {
        width: 302.72px;
    }
}
.c-section-collabo__campaign-btn {
    display: block;
    cursor: pointer;
    transition: opacity 300ms;
    width: 74.6666666667vw;
    margin: 1.8666666667vw auto 0;
    transform: translateX(0.5333333333vw);
}
.c-section-collabo__campaign-btn:hover {
    opacity: 0.8;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign-btn {
        width: 321.0666666667px;
        margin-top: 8.0266666667px;
        transform: translateX(2.2933333333px);
    }
}
.c-section-collabo__campaign-txt2 {
    width: 51.4666666667vw;
    margin: 2.9333333333vw auto 0;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__campaign-txt2 {
        width: 221.3066666667px;
        margin-top: 12.6133333333px;
    }
}
.c-section-collabo__foot {
    text-align: center;
    margin-top: 2.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__foot {
        margin-top: 17px;
    }
}
.c-section-collabo__copyright {
    padding-bottom: 5.0666666667vw;
    width: 56.2666666667vw;
    margin: 6.9333333333vw auto 0;
}
@media screen and (min-width: 751px) {
    .c-section-collabo__copyright {
        padding-bottom: 21.7866666667px;
        width: 241.9466666667px;
        margin-top: 19px;
    }
}

/* ---------------------------------------------
*   c-link
--------------------------------------------- */
.c-link {
    position: relative;
    font-size: 3.4666666667vw;
    padding-right: 4.8vw;
    padding-bottom: 0.8vw;
    border-bottom: 2px solid #009BE8;
    font-weight: bold;
    color: #009BE8;
    transition: opacity 300ms;
}
.c-link:hover {
    opacity: 0.8;
}
@media screen and (min-width: 751px) {
    .c-link {
        padding-right: 20.64px;
        padding-bottom: 3.44px;
        font-size: 14.9066666667px;
    }
}
.c-link:after {
    content: "";
    position: absolute;
    top: 21%;
    right: 0;
    width: 3.2vw;
    aspect-ratio: 1/1;
    -webkit-mask: url("../img/icn_blank.svg") 0 0/100% auto no-repeat;
            mask: url("../img/icn_blank.svg") 0 0/100% auto no-repeat;
    background-color: #009BE8;
}
@media screen and (min-width: 751px) {
    .c-link:after {
        top: 21%;
        width: 13.76px;
    }
}
.android .c-link:after {
    top: 17%;
}

.c-link--large {
    padding-right: 6.4vw;
    font-size: 4.8vw;
    letter-spacing: -0.07em;
}
@media screen and (min-width: 751px) {
    .c-link--large {
        padding-right: 27.52px;
        font-size: 20.64px;
    }
}
.c-link--large:after {
    width: 4.2666666667vw;
}
@media screen and (min-width: 751px) {
    .c-link--large:after {
        width: 18.3466666667px;
    }
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: #fff !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

/*  Scroll Interaction
--------------------------------------------- */
/* フェードアップ */
.js-fadeup {
    opacity: 0;
    transform: translateY(30px);
}
.js-fadeup.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translateY(0);
}

/* フェードダウン */
.js-fadedawn {
    opacity: 0;
    transform: translateY(-30px);
}
.js-fadedawn.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translateY(0);
}

/* 桜のお花回転 */
.js-fade-rotate-ltr {
    transform-origin: bottom center;
    transform: rotate(0deg);
}
.js-fade-rotate-ltr.is-active {
    transition: transform 1s;
    transform: rotate(45deg);
}

.js-fade-rotate-rtl {
    transform-origin: bottom center;
    transform: rotate(0deg);
}
.js-fade-rotate-rtl.is-active {
    transition: transform 1s;
    transform: rotate(-50deg);
}

/* 桜の花びらアニメ */
.js-fadesakura-1 {
    transition-delay: 0.2s;
    transition-duration: 1s;
}
.js-fadesakura-1 img {
    opacity: 0;
    position: relative;
}
.is-active .js-fadesakura-1 {
    animation: anim_rakura_b 2s ease-in-out 0s;
    animation-delay: 0.4s;
    animation-fill-mode: forwards;
}
@media screen and (min-width: 751px) {
    .is-active .js-fadesakura-1 {
        animation: anim_rakura_bpc 2s ease-in-out 0s;
        animation-delay: 0.4s;
        animation-fill-mode: forwards;
    }
}
.is-active .js-fadesakura-1 img {
    animation: anim_rakura_b2 2s ease-in-out 0s;
    animation-delay: 0.4s;
    animation-fill-mode: forwards;
}
@media screen and (min-width: 751px) {
    .is-active .js-fadesakura-1 img {
        animation: anim_rakura_b2pc 2s ease-in-out 0s;
        animation-delay: 0.4s;
        animation-fill-mode: forwards;
    }
}

.js-fadesakura-2 {
    transition-delay: 1s;
    transition-duration: 1s;
}
.js-fadesakura-2 img {
    opacity: 0;
    position: relative;
}
.is-active .js-fadesakura-2 {
    animation: anim_rakura_b 2s ease-in-out 0s;
    animation-delay: 1.4s;
    animation-fill-mode: forwards;
}
@media screen and (min-width: 751px) {
    .is-active .js-fadesakura-2 {
        animation: anim_rakura_bpc 2s ease-in-out 0s;
        animation-delay: 1.4s;
        animation-fill-mode: forwards;
    }
}
.is-active .js-fadesakura-2 img {
    animation: anim_rakura_b2 2s ease-in-out 0s;
    animation-delay: 1.4s;
    animation-fill-mode: forwards;
}
@media screen and (min-width: 751px) {
    .is-active .js-fadesakura-2 img {
        animation: anim_rakura_b2pc 2s ease-in-out 0s;
        animation-delay: 1.4s;
        animation-fill-mode: forwards;
    }
}

@keyframes anim_rakura_bpc {
    0% {
        transform: translate3d(0, -126px, 0);
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}
@keyframes anim_rakura_b {
    0% {
        transform: translate3d(0, -30vw, 0);
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}
@keyframes anim_rakura_b2pc {
    0% {
        opacity: 0;
        transform: translate3d(23px, 0, 0);
    }
    30% {
        opacity: 1;
        transform: translate3d(-13px, 0, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(9px, 0, 0);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
@keyframes anim_rakura_b2 {
    0% {
        opacity: 0;
        transform: translate3d(5vw, 0, 0);
    }
    30% {
        opacity: 1;
        transform: translate3d(-3vw, 0, 0);
    }
    60% {
        opacity: 1;
        transform: translate3d(2vw, 0, 0);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
/* ぱたり */
.js-fade-patari {
    will-change: transform;
    backface-visibility: hidden;
    opacity: 0;
}
.js-fade-patari.is-active {
    animation-name: rotate-left;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    perspective-origin: left center;
}

@keyframes rotate-left {
    0% {
        transform: perspective(600px) translate3d(0, 0, 0) rotateY(30deg);
        opacity: 0;
    }
    100% {
        transform: perspective(600px) translate3d(0, 0, 0) rotateY(0deg);
        opacity: 1;
    }
}
@media print and (min-width: 751px), screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 750px), screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 1.3333333333vw !important;
    }
    .mgt-sp--10 {
        margin-top: 2.6666666667vw !important;
    }
    .mgt-sp--15 {
        margin-top: 4vw !important;
    }
    .mgt-sp--20 {
        margin-top: 5.3333333333vw !important;
    }
    .mgt-sp--25 {
        margin-top: 6.6666666667vw !important;
    }
    .mgt-sp--30 {
        margin-top: 8vw !important;
    }
    .mgt-sp--35 {
        margin-top: 9.3333333333vw !important;
    }
    .mgt-sp--40 {
        margin-top: 10.6666666667vw !important;
    }
    .mgt-sp--45 {
        margin-top: 12vw !important;
    }
    .mgt-sp--50 {
        margin-top: 13.3333333333vw !important;
    }
    .mgt-sp--55 {
        margin-top: 14.6666666667vw !important;
    }
    .mgt-sp--60 {
        margin-top: 16vw !important;
    }
    .mgt-sp--65 {
        margin-top: 17.3333333333vw !important;
    }
    .mgt-sp--70 {
        margin-top: 18.6666666667vw !important;
    }
    .mgt-sp--75 {
        margin-top: 20vw !important;
    }
    .mgt-sp--80 {
        margin-top: 21.3333333333vw !important;
    }
    .mgt-sp--85 {
        margin-top: 22.6666666667vw !important;
    }
    .mgt-sp--90 {
        margin-top: 24vw !important;
    }
    .mgt-sp--95 {
        margin-top: 25.3333333333vw !important;
    }
    .mgt-sp--100 {
        margin-top: 26.6666666667vw !important;
    }
    .mgt-sp--105 {
        margin-top: 28vw !important;
    }
    .mgt-sp--110 {
        margin-top: 29.3333333333vw !important;
    }
    .mgt-sp--115 {
        margin-top: 30.6666666667vw !important;
    }
    .mgt-sp--120 {
        margin-top: 32vw !important;
    }
    .mgt-sp--125 {
        margin-top: 33.3333333333vw !important;
    }
    .mgt-sp--130 {
        margin-top: 34.6666666667vw !important;
    }
    .mgt-sp--135 {
        margin-top: 36vw !important;
    }
    .mgt-sp--140 {
        margin-top: 37.3333333333vw !important;
    }
    .mgt-sp--145 {
        margin-top: 38.6666666667vw !important;
    }
    .mgt-sp--150 {
        margin-top: 40vw !important;
    }
    .mgt-sp--155 {
        margin-top: 41.3333333333vw !important;
    }
    .mgt-sp--160 {
        margin-top: 42.6666666667vw !important;
    }
    .mgt-sp--165 {
        margin-top: 44vw !important;
    }
    .mgt-sp--170 {
        margin-top: 45.3333333333vw !important;
    }
    .mgt-sp--175 {
        margin-top: 46.6666666667vw !important;
    }
    .mgt-sp--180 {
        margin-top: 48vw !important;
    }
    .mgt-sp--185 {
        margin-top: 49.3333333333vw !important;
    }
    .mgt-sp--190 {
        margin-top: 50.6666666667vw !important;
    }
    .mgt-sp--195 {
        margin-top: 52vw !important;
    }
    .mgt-sp--200 {
        margin-top: 53.3333333333vw !important;
    }
    .mgt-sp--205 {
        margin-top: 54.6666666667vw !important;
    }
    .mgt-sp--210 {
        margin-top: 56vw !important;
    }
    .mgt-sp--215 {
        margin-top: 57.3333333333vw !important;
    }
    .mgt-sp--220 {
        margin-top: 58.6666666667vw !important;
    }
    .mgt-sp--225 {
        margin-top: 60vw !important;
    }
    .mgt-sp--230 {
        margin-top: 61.3333333333vw !important;
    }
    .mgt-sp--235 {
        margin-top: 62.6666666667vw !important;
    }
    .mgt-sp--240 {
        margin-top: 64vw !important;
    }
    .mgt-sp--245 {
        margin-top: 65.3333333333vw !important;
    }
    .mgt-sp--250 {
        margin-top: 66.6666666667vw !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 1.3333333333vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 2.6666666667vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 4vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 5.3333333333vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 6.6666666667vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 8vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 9.3333333333vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 10.6666666667vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 12vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 13.3333333333vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 14.6666666667vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 16vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 17.3333333333vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 18.6666666667vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 20vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 21.3333333333vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 22.6666666667vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 24vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 25.3333333333vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 26.6666666667vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 28vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 29.3333333333vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 30.6666666667vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 32vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 33.3333333333vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 34.6666666667vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 36vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 37.3333333333vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 38.6666666667vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 40vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 41.3333333333vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 42.6666666667vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 44vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 45.3333333333vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 46.6666666667vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 48vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 49.3333333333vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 50.6666666667vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 52vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 53.3333333333vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 54.6666666667vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 56vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 57.3333333333vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 58.6666666667vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 60vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 61.3333333333vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 62.6666666667vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 64vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 65.3333333333vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 66.6666666667vw !important;
    }
}