@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
.l-wrapper {
    overflow: hidden;
}
@media screen and (min-width: 751px) {
    .l-wrapper {
        position: relative;
        max-width: calc(var(--contents-width-pc) * 1px);
        margin-inline: auto;
    }
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}
.l-header__container {
    padding: calc(11 / var(--design-width) * 100vw) calc(9 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .l-header__container {
        padding: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px) calc(9 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.l-header__logo {
    position: absolute;
    width: calc(48 / var(--design-width) * 100vw);
    top: calc(17 / var(--design-width) * 100vw);
    right: calc(17 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .l-header__logo {
        width: calc(48 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.l-header__ttl {
    width: calc(94 / var(--design-width) * 100vw);
    margin: calc(21 / var(--design-width) * 100vw) auto 0;
}
@media print, screen and (min-width: 751px) {
    .l-header__ttl {
        width: calc(94 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(21 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
    }
}
.l-header__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-header__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    padding-top: calc(var(--fixed-header-height) * 1px);
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    background-color: var(--color-white-1);
}
.l-footer__container {
    padding-block: calc(32 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .l-footer__container {
        padding-block: calc(32 * var(--contents-width-pc) / var(--design-width) * 1px) calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.l-footer__logo {
    width: calc(147 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media print, screen and (min-width: 751px) {
    .l-footer__logo {
        width: calc(147 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.l-footer__logo img {
    width: 100%;
}
.l-footer__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__logo-link {
        transition: opacity var(--hover-duration);
    }
    .l-footer__logo-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.l-footer__copyright {
    display: block;
    margin-top: calc(25 / var(--design-width) * 100vw);
    font-family: var(--ff-sans);
    font-size: calc(10 / var(--design-width) * 100vw);
    color: #12110c;
    letter-spacing: 0.1em;
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .l-footer__copyright {
        margin-top: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-block
--------------------------------------------- */
.c-block__lead {
    width: calc(218 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
    .c-block__lead {
        width: calc(218 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block__bnr {
    width: calc(270 / var(--design-width) * 100vw);
    margin: calc(25 / var(--design-width) * 100vw) auto 0;
}
@media print, screen and (min-width: 751px) {
    .c-block__bnr {
        width: calc(270 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-block__bnr-link {
        transition: opacity var(--hover-duration);
    }
    .c-block__bnr-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   c-block-bg
--------------------------------------------- */
.c-block-bg {
    position: fixed;
    inset: 0;
}
.c-block-bg__logo {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: calc((100% - var(--contents-width-pc) * 1px) / 2);
    height: 100%;
}
.c-block-bg__logo img {
    position: absolute;
    inset: 0;
    width: 189px;
    margin: auto;
}
@media screen and (max-width: 1000px) {
    .c-block-bg__logo img {
        width: 18.9vw;
    }
}
.c-block-bg__qr {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: calc((100% - var(--contents-width-pc) * 1px) / 2);
    height: 100%;
}
.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;
    -o-object-position: center bottom;
       object-position: center bottom;
}

/* ---------------------------------------------
*   c-block-intro
--------------------------------------------- */
.c-block-intro {
    position: relative;
    padding-top: calc(25 / var(--design-width) * 100vw);
    padding-bottom: calc(220 / var(--design-width) * 100vw);
    margin-top: calc(-30 / var(--design-width) * 100vw);
    background: url(../img/bg_intro.png) 0 0 no-repeat;
    background-size: 100% 100%;
    z-index: 3;
}
@media print, screen and (min-width: 751px) {
    .c-block-intro {
        padding-top: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(220 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-30 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__arch {
    width: calc(180 / var(--design-width) * 100vw);
    margin-top: calc(75 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media print, screen and (min-width: 751px) {
    .c-block-intro__arch {
        width: calc(180 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(75 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__arch img {
    width: 100%;
    height: 100%;
}
.c-block-intro__ttl {
    position: relative;
}
.c-block-intro__body {
    margin-top: calc(50 / var(--design-width) * 100vw);
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-block-intro__body {
        margin-top: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__txt {
    font-weight: bold;
    font-size: calc(15 / var(--design-width) * 100vw);
    line-height: 1.8666666667;
    letter-spacing: 0.05em;
    color: #FFFFFF;
}
@media print, screen and (min-width: 751px) {
    .c-block-intro__txt {
        font-size: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__txt:nth-of-type(2) {
    margin-top: calc(15 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-intro__txt:nth-of-type(2) {
        margin-top: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__txt-enpha {
    position: relative;
    display: inline-block;
    color: #f10d3b;
    line-height: 1;
    letter-spacing: 0.07em;
    background-color: #fff;
    padding: calc(3 / var(--design-width) * 100vw) calc(1 / var(--design-width) * 100vw) calc(5 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw);
    margin-right: calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-intro__txt-enpha {
        padding: calc(4 * var(--contents-width-pc) / var(--design-width) * 1px) calc(1 * var(--contents-width-pc) / var(--design-width) * 1px) calc(5 * var(--contents-width-pc) / var(--design-width) * 1px) calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-right: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-intro__foot-img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}

/* ---------------------------------------------
*   c-block-share
--------------------------------------------- */
.c-block-share {
    margin-top: calc(-40 / var(--design-width) * 100vw);
    padding-top: calc(-40 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-share {
        margin-top: calc(-40 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-top: calc(-40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-share__ttl {
    width: calc(245 / var(--design-width) * 100vw);
    padding-top: calc(97 / var(--design-width) * 100vw);
    margin-inline: auto;
    margin-top: calc(-1 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-share__ttl {
        width: calc(245 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-top: calc(97 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-1 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-share__btn {
    display: flex;
    justify-content: center;
    margin-top: calc(6 / var(--design-width) * 100vw);
    gap: calc(20 / var(--design-width) * 100vw);
    padding: calc(25 / var(--design-width) * 100vw) calc(11 / var(--design-width) * 100vw) calc(48 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-share__btn {
        margin-top: calc(6 * var(--contents-width-pc) / var(--design-width) * 1px);
        gap: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px) calc(11 * var(--contents-width-pc) / var(--design-width) * 1px) calc(48 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-share__link {
    width: calc(159 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-share__link {
        width: calc(159 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-block-share__link {
        transition: opacity var(--hover-duration);
    }
    .c-block-share__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   c-block-sns
--------------------------------------------- */
.c-block-sns {
    padding-bottom: calc(50 / var(--design-width) * 100vw);
    margin-top: calc(12 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns {
        padding-bottom: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-sns__list {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 11.3%;
    margin-top: calc(35 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns__list {
        margin-top: calc(35 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--instagram {
    width: calc(34 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns__item--instagram {
        width: calc(34 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--x {
    width: calc(34 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns__item--x {
        width: calc(34 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--tiktok {
    width: calc(34 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns__item--tiktok {
        width: calc(34 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-block-sns__link {
        transition: opacity var(--hover-duration);
    }
    .c-block-sns__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-block-sns__ttl img {
    width: 100%;
}

/* ---------------------------------------------
*   c-block-sns-note
--------------------------------------------- */
.c-block-sns-note {
    margin-top: calc(50 / var(--design-width) * 100vw);
    padding-inline: calc(23 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-sns-note {
        margin-top: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-inline: calc(23 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-block-sns-note__txt {
    font-family: var(--ff-ZenKakuGothicNew);
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 500;
    line-height: 1.6923076923;
    color: #fff;
    text-align: justify;
    font-feature-settings: "palt" 1;
}
@media print, screen and (min-width: 751px) {
    .c-block-sns-note__txt {
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-block-bg-bottom
--------------------------------------------- */
.c-block-bg-bottom {
    background: #d43842;
    margin-top: calc(-2 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-block-bg-bottom {
        margin-top: calc(-2 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-card-campaign
--------------------------------------------- */
.c-card-campaign {
    position: relative;
    width: calc(335 / var(--design-width) * 100vw);
    margin: 0 auto;
    background: url(../img/bg_campaign_card.png) 0 0 no-repeat;
    background-size: 100% 100%;
}
@media print, screen and (min-width: 751px) {
    .c-card-campaign {
        width: calc(335 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--01 {
    padding-bottom: calc(40 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-card-campaign--01 {
        padding-bottom: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--01 .c-card-campaign__reef {
    position: absolute;
}
.c-card-campaign--01 .c-card-campaign__reef--01 {
    top: calc(303 / var(--design-width) * 100vw);
    right: calc(-20 / var(--design-width) * 100vw);
    width: calc(145 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--01 .c-card-campaign__reef--01 {
        top: calc(303 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-20 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(145 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--01 .c-card-campaign__reef--02 {
    top: calc(404 / var(--design-width) * 100vw);
    left: calc(-20 / var(--design-width) * 100vw);
    width: calc(145 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--01 .c-card-campaign__reef--02 {
        top: calc(404 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-20 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(145 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--01 .c-card-campaign__img {
    width: calc(540 / var(--design-width) * 100vw);
    translate: calc(-103 / var(--design-width) * 100vw) calc(-158 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--01 .c-card-campaign__img {
        width: calc(540 * var(--contents-width-pc) / var(--design-width) * 1px);
        translate: calc(-103 * var(--contents-width-pc) / var(--design-width) * 1px) calc(-158 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 {
    background-image: url(../img/bg_campaign_card02.png);
    margin-top: calc(35 / var(--design-width) * 100vw);
    padding-bottom: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 {
        margin-top: calc(35 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__num {
    width: calc(80 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__num {
        width: calc(80 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__body {
    margin-top: calc(30 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__body {
        margin-top: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__ttl {
    width: calc(262 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__ttl {
        width: calc(262 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__date {
    width: calc(250 / var(--design-width) * 100vw);
    margin-top: calc(22 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__date {
        width: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(22 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__img {
    width: calc(530 / var(--design-width) * 100vw);
    translate: calc(-100 / var(--design-width) * 100vw) calc(-113 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__img {
        width: calc(530 * var(--contents-width-pc) / var(--design-width) * 1px);
        translate: calc(-100 * var(--contents-width-pc) / var(--design-width) * 1px) calc(-113 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__img--2 {
    width: calc(250 / var(--design-width) * 100vw);
    margin: calc(-281 / var(--design-width) * 100vw) auto 0;
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__img--2 {
        width: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-281 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__reef {
    position: absolute;
}
.c-card-campaign--02 .c-card-campaign__reef--01 {
    top: calc(406 / var(--design-width) * 100vw);
    left: calc(-20 / var(--design-width) * 100vw);
    width: calc(147 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__reef--01 {
        top: calc(406 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-20 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(147 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--02 .c-card-campaign__reef--02 {
    top: calc(423 / var(--design-width) * 100vw);
    right: calc(-103 / var(--design-width) * 100vw);
    width: calc(264 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--02 .c-card-campaign__reef--02 {
        top: calc(423 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-103 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(264 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 {
    padding-bottom: calc(38 / var(--design-width) * 100vw);
    background-image: url(../img/bg_campaign_card03.png);
    margin-top: calc(36 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 {
        padding-bottom: calc(38 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(36 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__body {
    margin-top: calc(27 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__body {
        margin-top: calc(27 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__num {
    width: calc(78 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__num {
        width: calc(78 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__date {
    width: calc(246 / var(--design-width) * 100vw);
    margin-top: calc(22 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__date {
        width: calc(246 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(22 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__img {
    position: relative;
    width: calc(133 / var(--design-width) * 100vw);
    translate: calc(106 / var(--design-width) * 100vw) calc(33 / var(--design-width) * 100vw);
    z-index: 3;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__img {
        width: calc(133 * var(--contents-width-pc) / var(--design-width) * 1px);
        translate: calc(106 * var(--contents-width-pc) / var(--design-width) * 1px) calc(33 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__img--2 {
    width: calc(250 / var(--design-width) * 100vw);
    margin: calc(34 / var(--design-width) * 100vw) auto 0;
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__img--2 {
        width: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(34 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__reef {
    position: absolute;
}
.c-card-campaign--03 .c-card-campaign__reef--01 {
    top: calc(289 / var(--design-width) * 100vw);
    left: calc(209 / var(--design-width) * 100vw);
    width: calc(147 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__reef--01 {
        top: calc(289 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(209 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(147 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__reef--02 {
    top: calc(389 / var(--design-width) * 100vw);
    right: calc(207 / var(--design-width) * 100vw);
    width: calc(149 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__reef--02 {
        top: calc(389 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(207 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(149 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__txt {
    width: calc(250 / var(--design-width) * 100vw);
    margin: calc(36 / var(--design-width) * 100vw) auto 0;
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__txt {
        width: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(36 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__anno {
    width: calc(250 / var(--design-width) * 100vw);
    margin: calc(16 / var(--design-width) * 100vw) auto 0;
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__anno {
        width: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__winning {
    width: calc(246 / var(--design-width) * 100vw);
    margin: calc(59 / var(--design-width) * 100vw) auto 0;
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__winning {
        width: calc(246 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(59 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__inner {
    width: calc(265 / var(--design-width) * 100vw);
    margin: calc(70 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__inner {
        width: calc(265 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(70 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign--03 .c-card-campaign__inner-btn {
    margin-top: calc(30 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign--03 .c-card-campaign__inner-btn {
        margin-top: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__img {
    pointer-events: none;
}
.c-card-campaign__num {
    width: calc(70 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
    .c-card-campaign__num {
        width: calc(70 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__num img {
    width: 100%;
}
.c-card-campaign__reef {
    z-index: 5;
}
.c-card-campaign__body {
    margin-top: calc(30 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__body {
        margin-top: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__ttl {
    width: calc(242 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__ttl {
        width: calc(242 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__date {
    width: calc(178 / var(--design-width) * 100vw);
    margin: calc(20 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__date {
        width: calc(178 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__date img {
    display: block;
}
.c-card-campaign__img-blur {
    position: absolute;
    top: calc(200 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    width: calc(520 / var(--design-width) * 100vw);
    translate: 0 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__img-blur {
        top: calc(200 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(520 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__lead {
    position: relative;
    z-index: 4;
    display: block;
    width: calc(243 / var(--design-width) * 100vw);
    margin: calc(40 / var(--design-width) * 100vw) auto 0;
    font-weight: 600;
    font-size: calc(13 / var(--design-width) * 100vw);
    line-height: 1.8461538462;
    letter-spacing: 0.12em;
    color: #FFFFFF;
    text-align: justify;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__lead {
        width: calc(243 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__lead::before, .c-card-campaign__lead::after {
    content: "";
    position: absolute;
    top: calc(-13 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(276 / var(--design-width) * 100vw);
    height: calc(1 / var(--design-width) * 100vw);
    background-color: #ff694e;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__lead::before, .c-card-campaign__lead::after {
        top: calc(-13 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(276 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: 1px;
    }
}
.c-card-campaign__lead::after {
    top: auto;
    bottom: calc(-16 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__lead::after {
        bottom: calc(-16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__txt {
    position: relative;
    display: block;
    width: calc(235 / var(--design-width) * 100vw);
    margin: calc(-340 / var(--design-width) * 100vw) auto 0;
    font-weight: 600;
    font-size: calc(10 / var(--design-width) * 100vw);
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__txt {
        width: calc(235 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-340 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__anno {
    position: relative;
    z-index: 4;
    display: block;
    width: calc(245 / var(--design-width) * 100vw);
    margin: calc(10 / var(--design-width) * 100vw) auto 0;
    font-weight: 600;
    font-size: calc(10 / var(--design-width) * 100vw);
    line-height: 1.9;
    letter-spacing: 0.1em;
    color: #FFFFFF;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__anno {
        width: calc(245 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__winning {
    position: relative;
    width: calc(246 / var(--design-width) * 100vw);
    margin: calc(51 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__winning {
        width: calc(246 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(51 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__winning::before {
    content: "";
    position: absolute;
    top: calc(-35 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(276 / var(--design-width) * 100vw);
    height: calc(1 / var(--design-width) * 100vw);
    background-color: #ff694e;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__winning::before {
        top: calc(-35 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(276 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: 1px;
    }
}
.c-card-campaign__inner {
    width: calc(265 / var(--design-width) * 100vw);
    margin: calc(61 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner {
        width: calc(265 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(61 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-ttl {
    display: block;
    font-weight: 600;
    font-size: calc(17 / var(--design-width) * 100vw);
    letter-spacing: 0.03em;
    color: #ffcb41;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-ttl {
        font-size: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-list {
    margin-top: calc(25 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-list {
        margin-top: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-item {
    display: flex;
    align-items: start;
    gap: calc(12 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-item {
        gap: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-item:nth-of-type(n+2) {
    margin-top: calc(12 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-item:nth-of-type(n+2) {
        margin-top: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-step {
    flex-shrink: 0;
    display: block;
    padding: 0px calc(4 / var(--design-width) * 100vw) calc(1 / var(--design-width) * 100vw) calc(7 / var(--design-width) * 100vw);
    border-radius: calc(4 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(12 / var(--design-width) * 100vw);
    letter-spacing: 0.07em;
    background-color: #fff;
    color: #f10d3b;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-step {
        padding: calc(0 * var(--contents-width-pc) / var(--design-width) * 1px) calc(4 * var(--contents-width-pc) / var(--design-width) * 1px) calc(1 * var(--contents-width-pc) / var(--design-width) * 1px) calc(7 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-txt {
    display: block;
    font-size: calc(13 / var(--design-width) * 100vw);
    line-height: 1.5384615385;
    letter-spacing: 0.03em;
    color: #fff;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-txt {
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-txt--s {
    font-size: calc(10 / var(--design-width) * 100vw);
    letter-spacing: 0.1em;
    line-height: 1.5;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-txt--s {
        font-size: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(157deg, #F5C690 0%, #DE3442 85%);
    width: calc(255 / var(--design-width) * 100vw);
    height: calc(60 / var(--design-width) * 100vw);
    margin-top: calc(30 / var(--design-width) * 100vw);
    box-shadow: calc(3 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw) rgba(102, 0, 0, 0.3);
    border-radius: calc(30 / var(--design-width) * 100vw);
    font-size: calc(12 / var(--design-width) * 100vw);
    letter-spacing: 0.08em;
    color: #fff;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-btn {
        width: calc(255 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(60 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
        box-shadow: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px) calc(4 * var(--contents-width-pc) / var(--design-width) * 1px) rgba(102, 0, 0, 0.3);
        border-radius: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-card-campaign__inner-btn {
        transition: opacity var(--hover-duration);
    }
    .c-card-campaign__inner-btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-card-campaign__inner-link {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: calc(28 / var(--design-width) * 100vw) auto 0;
    padding-right: calc(14 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(13 / var(--design-width) * 100vw);
    letter-spacing: 0.05em;
    border-bottom: 1px solid #fff;
    color: #fff;
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-link {
        margin-top: calc(28 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-right: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__inner-link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: url(../img/icn_link.svg) 0 0 no-repeat;
    background-size: contain;
    width: calc(11 / var(--design-width) * 100vw);
    height: calc(11 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__inner-link::before {
        width: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-card-campaign__inner-link {
        transition: opacity var(--hover-duration);
    }
    .c-card-campaign__inner-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-card-campaign__pumpkin {
    position: absolute;
    z-index: 2;
}
.c-card-campaign__pumpkin--1 {
    top: calc(154 / var(--design-width) * 100vw);
    left: calc(-160 / var(--design-width) * 100vw);
    width: calc(500 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__pumpkin--1 {
        top: calc(154 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-160 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(500 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-card-campaign__pumpkin--2 {
    top: calc(221 / var(--design-width) * 100vw);
    width: calc(470 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-card-campaign__pumpkin--2 {
        top: calc(221 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(470 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-block-opening
--------------------------------------------- */
.c-block-opening {
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    width: 100vw;
    height: 100dvh;
    background: url(../img/bg_opening.png) center/cover no-repeat;
    background-color: #DE4744;
    z-index: 100;
    pointer-events: none;
    animation: fade 1s forwards;
    animation-delay: 5s;
}

.c-block-opening__container {
    perspective: 1000px;
}

.c-block-opening__icon {
    position: absolute;
    top: 50%;
    left: 44%;
    transform: translate(-50%, -50%);
    width: calc(65 / var(--design-width) * 100vw);
    opacity: 1;
    animation: fade2 11s forwards;
}
@media screen and (min-width: 751px) {
    .c-block-opening__icon {
        left: 50%;
        width: 100px;
    }
}

/* カード */
.c-block-opening__card {
    /* 画像パスは文字列。使う側で url(var(--...)) */
    --front: "../img/book_02.png";
    --back: "../img/book_01.png";
    position: relative;
    width: calc(446 / var(--design-width) * 100vw);
    height: calc(220 / var(--design-width) * 100vw);
    transform-style: preserve-3d;
    opacity: 0;
    transform: translate(calc(-340 / var(--design-width) * 100vw), calc(-30 / var(--design-width) * 100vw)) scale(1) rotate(30deg);
    animation: move 10s forwards;
    /* 初期：左=90deg(閉) / 右=0deg(開) */
    --fold-left: 179deg;
    --fold-right: 0deg;
}
@media screen and (min-width: 751px) {
    .c-block-opening__card {
        width: calc(524 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(270 * var(--contents-width-pc) / var(--design-width) * 1px);
        transform: translate(calc(-340 * var(--contents-width-pc) / var(--design-width) * 1px), calc(-30 * var(--contents-width-pc) / var(--design-width) * 1px)) scale(1) rotate(30deg);
        animation: move-2 10s forwards;
    }
}

.c-block-opening__card .card-fold {
    position: absolute;
    inset: 0;
    transform-style: preserve-3d;
}

.c-block-opening__card .panel {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 49.9%;
    transform-style: preserve-3d;
}

.c-block-opening__card.is-open .panel {
    animation: width 1s forwards;
}

/* 表裏の面 */
.c-block-opening__card .face {
    position: absolute;
    inset: 0;
    backface-visibility: hidden;
    background-repeat: no-repeat;
    background-size: 200% 100%; /* 横を2倍にして半分だけ表示 */
}

/* ここで画像を当てる（変数→url(var(--...))） */
.c-block-opening__card .face--front {
    background-image: url("../img/book_02.png");
    box-shadow: calc(6 / var(--design-width) * 100vw) calc(12 / var(--design-width) * 100vw) calc(12 / var(--design-width) * 100vw) rgba(102, 0, 0, 0.5);
}
@media screen and (min-width: 751px) {
    .c-block-opening__card .face--front {
        box-shadow: calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(12 * var(--contents-width-pc) / var(--design-width) * 1px) calc(12 * var(--contents-width-pc) / var(--design-width) * 1px) rgba(102, 0, 0, 0.5);
    }
}

.c-block-opening__card .face--back {
    background-image: url("../img/book_01.png");
    transform: rotateY(180deg);
}

/* 左パネル */
.c-block-opening__card .panel--left {
    left: 0;
    transform-origin: 100% 50%;
    transform: rotateY(var(--fold-left));
}

.c-block-opening__card .panel--left .face {
    background-position: left center;
}

/* 右パネル */
.c-block-opening__card .panel--right {
    right: 0;
    transform-origin: 0% 50%;
    transform: rotateY(calc(-1 * var(--fold-right)));
}

.c-block-opening__card .panel--right .face {
    background-position: right center;
}

/* アニメーション（開く時に付与） */
.c-block-opening__card.is-open .panel--left,
.c-block-opening__card.is-open .panel--right {
    transition: transform 3s cubic-bezier(0.2, 0.7, 0, 1);
}

/* 裏面のハーフ割り当てと反転補正 */
.c-block-opening__card .panel--left .face--back {
    /* 左パネルの裏は “右ハーフ” を使う */
    background-position: right center;
    transform: rotateY(180deg) scaleX(-1);
}

.c-block-opening__card .panel--right .face--back {
    /* 右パネルの裏は “左ハーフ” を使う */
    background-position: left center;
    transform: rotateY(180deg) scaleX(-1);
}

/* 綴じ目の影（任意） */
/* 状態クラス（任意） */
.c-block-opening__card.open-both {
    --fold-left: 0deg;
    --fold-right: 0deg;
}

.c-block-opening__card.closed-both {
    --fold-left: 90deg;
    --fold-right: 90deg;
}

.c-block-opening__card.right-only-open {
    --fold-left: 90deg;
    --fold-right: 0deg;
}

.c-block-opening__card.left-only-open {
    --fold-left: 0deg;
    --fold-right: 90deg;
}

@keyframes move {
    0% {
        opacity: 1;
        transform: translate(calc(340 / var(--design-width) * 100vw), calc(-30 / var(--design-width) * 100vw)) scale(1) rotate(30deg);
    }
    20% {
        opacity: 1;
        transform: translate(calc(-130 / var(--design-width) * 100vw), 0) scale(1) rotate(0);
    }
    30% {
        opacity: 1;
        transform: translate(calc(-50 / var(--design-width) * 100vw), 0) scale(1) rotate(0);
    }
    80% {
        transform: translate(calc(-370 / var(--design-width) * 100vw), 0) scale(4);
    }
    100% {
        transform: translate(calc(-370 / var(--design-width) * 100vw), 0) scale(4);
        opacity: 0;
    }
}
@keyframes move-2 {
    0% {
        opacity: 1;
        transform: translate(calc(340 * var(--contents-width-pc) / var(--design-width) * 1px), calc(-30 * var(--contents-width-pc) / var(--design-width) * 1px)) scale(1) rotate(30deg);
    }
    20% {
        opacity: 1;
        transform: translate(calc(-60 * var(--contents-width-pc) / var(--design-width) * 1px), 0) scale(1) rotate(0);
    }
    30% {
        opacity: 1;
        transform: translate(calc(0 * var(--contents-width-pc) / var(--design-width) * 1px), 0) scale(1) rotate(0);
    }
    80% {
        transform: translate(calc(-250 * var(--contents-width-pc) / var(--design-width) * 1px), 0) scale(4);
        opacity: 1;
    }
    100% {
        transform: translate(calc(-250 * var(--contents-width-pc) / var(--design-width) * 1px), 0) scale(4);
        opacity: 0;
    }
}
@keyframes fade {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes fade2 {
    0% {
        opacity: 1;
    }
    60% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@keyframes width {
    0% {
        width: 49.9%;
    }
    10% {
        width: 49.9%;
    }
    100% {
        width: 50%;
    }
}
/* ---------------------------------------------
*   c-cassette-lineup
--------------------------------------------- */
.c-cassette-lineup {
    width: 100%;
    position: relative;
    height: calc(280 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup {
        height: calc(280 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup--2 {
    margin-top: calc(50 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup--2 {
        margin-top: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup--3 {
    margin-top: calc(81 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup--3 {
        margin-top: calc(81 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__ttl-bg {
    position: absolute;
    display: block;
    width: 100%;
}
.c-cassette-lineup__ttl-bg img {
    width: 100%;
}
.c-cassette-lineup__ttl-bg--1 {
    top: calc(-208 / var(--design-width) * 100vw);
    left: calc(-103 / var(--design-width) * 100vw);
    width: calc(660 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__ttl-bg--1 {
        top: calc(-208 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-103 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(660 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.edge .c-cassette-lineup__ttl-bg--1 {
    left: calc(-112 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .edge .c-cassette-lineup__ttl-bg--1 {
        left: calc(-112 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.c-cassette-lineup__ttl-bg--2 {
    top: calc(-189 / var(--design-width) * 100vw);
    left: calc(-169 / var(--design-width) * 100vw);
    width: calc(640 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__ttl-bg--2 {
        top: calc(-189 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-169 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(640 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__ttl-bg--3 {
    top: calc(-219 / var(--design-width) * 100vw);
    left: calc(-102 / var(--design-width) * 100vw);
    width: calc(660 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__ttl-bg--3 {
        top: calc(-219 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-102 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(660 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.edge .c-cassette-lineup__ttl-bg--3 {
    left: calc(-112 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .edge .c-cassette-lineup__ttl-bg--3 {
        left: calc(-112 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.c-cassette-lineup__product {
    position: absolute;
    z-index: 5;
}
.c-cassette-lineup__product--1 {
    width: calc(269 / var(--design-width) * 100vw);
    top: calc(-29 / var(--design-width) * 100vw);
    right: calc(132 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__product--1 {
        width: calc(269 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(-29 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(132 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__product--2 {
    width: calc(277 / var(--design-width) * 100vw);
    top: calc(-12 / var(--design-width) * 100vw);
    left: calc(135 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__product--2 {
        width: calc(277 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(-12 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(135 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__product--3 {
    width: calc(270 / var(--design-width) * 100vw);
    top: calc(-33 / var(--design-width) * 100vw);
    right: calc(132 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__product--3 {
        width: calc(270 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(-33 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(132 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__product img {
    width: 100%;
    height: 100%;
}
.c-cassette-lineup__txtwrap {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: calc(154 / var(--design-width) * 100vw);
    left: calc(187 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__txtwrap {
        top: calc(154 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(187 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__txtwrap--2 {
    top: calc(164 / var(--design-width) * 100vw);
    right: calc(176 / var(--design-width) * 100vw);
    left: auto;
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__txtwrap--2 {
        top: calc(164 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(176 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__txtwrap--3 {
    top: calc(142 / var(--design-width) * 100vw);
    left: calc(186 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__txtwrap--3 {
        top: calc(142 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(186 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__txtwrap--3 .c-cassette-lineup__name-sub {
    margin-bottom: calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__txtwrap--3 .c-cassette-lineup__name-sub {
        margin-bottom: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__txtwrap--3 .c-cassette-lineup__size {
    margin-top: calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__txtwrap--3 .c-cassette-lineup__size {
        margin-top: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__name {
    display: block;
    font-weight: 600;
    font-size: calc(17 / var(--design-width) * 100vw);
    line-height: 1.4117647059;
    color: #FFFFFF;
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__name {
        font-size: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__name--2 {
    margin-top: calc(1 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__name--2 {
        margin-top: calc(1 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__size {
    display: inline-block;
    font-size: calc(14 / var(--design-width) * 100vw);
    line-height: 1.5714285714;
    letter-spacing: 0.02em;
    font-weight: bold;
    color: var(--color-green-4);
    margin-top: calc(8 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__size {
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(8 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__price {
    display: block;
    width: calc(84 / var(--design-width) * 100vw);
    margin-top: calc(18 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__price {
        width: calc(84 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(18 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__price--2 {
    margin-top: calc(23 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__price--2 {
        margin-top: calc(23 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__price--3 {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-cassette-lineup__price--3 {
        margin-top: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-cassette-lineup__price img {
    display: block;
    width: 100%;
}

/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    position: relative;
}
.c-kv__main {
    width: calc(375 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-kv__main {
        width: calc(375 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-kv__logo {
    position: absolute;
    z-index: 6;
    top: calc(452 / var(--design-width) * 100vw);
    left: calc(24 / var(--design-width) * 100vw);
    width: calc(115 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-kv__logo {
        top: calc(452 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(24 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(115 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-kv__lead-main {
    width: calc(266 / var(--design-width) * 100vw);
    margin-top: calc(-48 / var(--design-width) * 100vw);
    opacity: 0;
}
.is-loaded .c-kv__lead-main {
    animation: fadeInUp 1s forwards;
    animation-delay: 0.5s; /* 0.5秒遅延 */
}

@media print, screen and (min-width: 751px) {
    .c-kv__lead-main {
        width: calc(266 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-48 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-kv__lead-sub {
    margin-top: calc(-46 / var(--design-width) * 100vw);
    opacity: 0;
}
.is-loaded .c-kv__lead-sub {
    animation: fadeInUp 1s forwards;
    animation-delay: 1s; /* 0.5秒遅延 */
}

@media print, screen and (min-width: 751px) {
    .c-kv__lead-sub {
        margin-top: calc(-46 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-kv__foot {
    width: 100%;
    position: relative;
    z-index: 2;
}
.c-kv__foot-bg {
    width: 100%;
    margin-top: calc(-68 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-kv__foot-bg {
        margin-top: calc(-90 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-kv__foot-txt {
    width: calc(244 / var(--design-width) * 100vw);
    position: absolute;
    top: calc(113 / var(--design-width) * 100vw);
    left: calc(70 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-kv__foot-txt {
        width: calc(244 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(113 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(70 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* ---------------------------------------------
*   c-kv-wrap
--------------------------------------------- */
.c-kv-wrap {
    position: relative;
}
.c-kv-wrap::before {
    content: "";
    position: absolute;
    z-index: 2;
    background: url(../img/bg_kv_bottom.png) 0 0 no-repeat;
    background-size: 100% auto;
    top: calc(400 / var(--design-width) * 100vw);
    left: 0;
    width: calc(375 / var(--design-width) * 100vw);
    height: calc(348 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-kv-wrap::before {
        top: calc(400 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(375 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(348 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-list-kv-img
--------------------------------------------- */
.c-list-kv-img__item {
    position: absolute;
    top: calc(-110 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-list-kv-img__item {
        top: calc(-110 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-kv-img__item--1 {
    width: calc(108 / var(--design-width) * 100vw);
    right: calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-list-kv-img__item--1 {
        width: calc(108 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-kv-img__item--2 {
    width: calc(82 / var(--design-width) * 100vw);
    left: calc(-22 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-list-kv-img__item--2 {
        width: calc(82 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-22 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-kv-img__item--3 {
    width: calc(86 / var(--design-width) * 100vw);
    left: calc(-86 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-list-kv-img__item--3 {
        width: calc(86 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-86 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-kv-img__item--4 {
    width: calc(60 / var(--design-width) * 100vw);
    right: calc(-6 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-list-kv-img__item--4 {
        width: calc(60 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-6 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-list-feature
--------------------------------------------- */
.c-list-feature__item {
    position: relative;
}
.c-list-feature__img {
    position: absolute;
    width: calc(522 / var(--design-width) * 100vw);
    pointer-events: none;
}
@media screen and (min-width: 751px) {
    .c-list-feature__img {
        width: calc(522 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__img--1 {
    top: calc(-331 / var(--design-width) * 100vw);
    left: calc(-197 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__img--1 {
        top: calc(-341 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-197 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__img--2 {
    top: calc(-361 / var(--design-width) * 100vw);
    right: calc(-230 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__img--2 {
        top: calc(-371 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-230 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__icon {
    position: absolute;
}
.c-list-feature__icon--1 {
    top: calc(-175 / var(--design-width) * 100vw);
    right: calc(-15 / var(--design-width) * 100vw);
    width: calc(245 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__icon--1 {
        top: calc(-175 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-15 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(245 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__icon--2 {
    top: calc(16 / var(--design-width) * 100vw);
    right: calc(171 / var(--design-width) * 100vw);
    width: calc(210 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__icon--2 {
        top: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(171 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(210 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__txtarea {
    position: relative;
    z-index: 2;
    display: block;
    width: calc(270 / var(--design-width) * 100vw);
    margin: calc(212 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-list-feature__txtarea {
        width: calc(270 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(222 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
    }
}
.c-list-feature__subttl {
    width: calc(71 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__subttl {
        width: calc(71 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__subttl--2 {
    width: calc(103 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__subttl--2 {
        width: calc(103 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__lead {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: calc(7 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(25 / var(--design-width) * 100vw);
    line-height: 1.2;
    letter-spacing: 0.02em;
    color: #F10D3B;
    background-color: #fff;
    padding: 0 calc(6 / var(--design-width) * 100vw) calc(2 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-feature__lead {
        margin-top: calc(7 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: 0 calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-feature__txt {
    display: block;
    margin-top: calc(10 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(14 / var(--design-width) * 100vw);
    line-height: 1.8571428571;
    letter-spacing: 0.06em;
    color: #FFFFFF;
}
@media screen and (min-width: 751px) {
    .c-list-feature__txt {
        margin-top: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-list-sns-asaginyo
--------------------------------------------- */
.c-list-sns-asaginyo {
    display: flex;
    justify-content: center;
    align-items: end;
    gap: calc(33 / var(--design-width) * 100vw);
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo {
        gap: calc(33 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__item--1 {
    width: calc(56 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo__item--1 {
        width: calc(56 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__item--2 {
    width: calc(25 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo__item--2 {
        width: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__item--3 {
    width: calc(26 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo__item--3 {
        width: calc(26 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__item--4 {
    width: calc(26 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo__item--4 {
        width: calc(26 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__item--5 {
    width: calc(31 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-sns-asaginyo__item--5 {
        width: calc(31 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-list-sns-asaginyo__link {
    display: block;
    width: 100%;
    height: 100%;
}
.c-list-sns-asaginyo__link img {
    display: block;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-sns-asaginyo__link {
        transition: opacity var(--hover-duration);
    }
    .c-list-sns-asaginyo__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   c-section-lineup
--------------------------------------------- */
.c-section-lineup {
    position: relative;
    z-index: 3;
    padding-block: calc(157 / var(--design-width) * 100vw) calc(1090 / var(--design-width) * 100vw);
    background: url(../img/bg_lineup.png) 0 0 no-repeat;
    background-size: 100% 100%;
}
@media print, screen and (min-width: 751px) {
    .c-section-lineup {
        padding-block: calc(157 * var(--contents-width-pc) / var(--design-width) * 1px) calc(1090 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-lineup::before {
    content: "";
    position: absolute;
    z-index: 5;
    top: calc(-77 / var(--design-width) * 100vw);
    left: 0;
    width: 100%;
    height: calc(375 / var(--design-width) * 100vw);
    background: url(../img/bg_linup02.png) 0 0 no-repeat;
    background-size: 100% 100%;
}
@media print, screen and (min-width: 751px) {
    .c-section-lineup::before {
        top: calc(-77 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(375 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-lineup__container {
    position: relative;
    z-index: 3;
}
.c-section-lineup__ttl {
    width: calc(219 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
    .c-section-lineup__ttl {
        width: calc(219 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-lineup__ttl img {
    width: 100%;
    height: 100%;
}
.c-section-lineup__lead {
    margin-top: calc(10 / var(--design-width) * 100vw);
    font-size: calc(18 / var(--design-width) * 100vw);
    text-align: center;
    line-height: 1.7222222222;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: var(--color-red-1);
}
@media print, screen and (min-width: 751px) {
    .c-section-lineup__lead {
        margin-top: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(18 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-lineup__body {
    padding-top: calc(45 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-lineup__body {
        padding-top: calc(45 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-lineup__foot {
    position: absolute;
    margin-top: calc(80 / var(--design-width) * 100vw);
    width: calc(426 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(-180deg, rgba(255, 56, 66, 0) 0%, rgb(255, 56, 66) 70%);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__foot {
        margin-top: calc(80 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(426 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-feature
--------------------------------------------- */
.c-section-feature {
    position: relative;
    z-index: 4;
    background: linear-gradient(0deg, rgb(161, 2, 6) 0%, rgb(255, 56, 66) 100%);
    padding-block: calc(47 / var(--design-width) * 100vw) calc(144 / var(--design-width) * 100vw);
    margin-top: calc(-710 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-feature {
        padding-block: calc(47 * var(--contents-width-pc) / var(--design-width) * 1px) calc(144 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-710 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature::before {
    content: "";
    position: absolute;
    z-index: 7;
    top: calc(-25 / var(--design-width) * 100vw);
    left: 0;
    background-color: rgba(255, 56, 66, 0.7);
    width: 100%;
    filter: blur(calc(6 / var(--design-width) * 100vw));
    height: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature::before {
        top: calc(-11 * var(--contents-width-pc) / var(--design-width) * 1px);
        filter: blur(calc(6 * var(--contents-width-pc) / var(--design-width) * 1px));
        background-color: rgba(255, 56, 66, 0.4);
        height: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
.c-section-feature__loop-wrap {
    display: flex;
    overflow: hidden;
    gap: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__loop-wrap {
        gap: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__loop-list {
    display: flex;
    list-style: none;
    padding: 0;
    gap: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__loop-list {
        gap: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__loop-list--left {
    animation: infinity-scroll-left 100s infinite linear 0.5s both;
}
.c-section-feature__loop-item {
    width: calc(988 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__loop-item {
        width: calc(988 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__loop-item img {
    width: 100%;
}
.c-section-feature__head {
    margin-top: calc(-7 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-feature__head {
        margin-top: calc(-7 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__ttl {
    display: block;
    width: calc(234 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media print, screen and (min-width: 751px) {
    .c-section-feature__ttl {
        width: calc(234 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__ttl img {
    width: 100%;
    height: 100%;
}
.c-section-feature__lead {
    width: calc(242 / var(--design-width) * 100vw);
    margin: calc(60 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-section-feature__lead {
        width: calc(242 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(60 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
    }
}
.c-section-feature__txt {
    display: block;
    margin-top: calc(38 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(17 / var(--design-width) * 100vw);
    line-height: 1.576471;
    letter-spacing: 0.02em;
    color: #FFFFFF;
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-section-feature__txt {
        margin-top: calc(38 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__body {
    width: calc(343 / var(--design-width) * 100vw);
    background: url(../img/bg_feature.png) 0 0 no-repeat;
    background-size: contain;
    margin: calc(52 / var(--design-width) * 100vw) auto 0;
    padding-block: calc(80 / var(--design-width) * 100vw) 0;
}
@media screen and (min-width: 751px) {
    .c-section-feature__body {
        width: calc(343 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(52 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
        padding-block: calc(80 * var(--contents-width-pc) / var(--design-width) * 1px) 0;
    }
}
.c-section-feature__tea {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding-block: calc(50 / var(--design-width) * 100vw) calc(85 / var(--design-width) * 100vw);
    background: url(../img/bg_tea.png) 0 0 no-repeat;
    background-size: 100% 100%;
    margin-top: calc(70 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__tea {
        width: 430px;
        margin: 0 calc(50% - 215px);
        padding-block: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px) calc(85 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(100 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__tea-img {
    width: calc(280 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-feature__tea-img {
        width: calc(280 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__tea-subttl {
    display: block;
    margin-top: calc(28 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(18 / var(--design-width) * 100vw);
    letter-spacing: 0.16em;
    color: #FFFFFF;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-feature__tea-subttl {
        margin-top: calc(28 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(18 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__tea-ttl {
    display: block;
    margin-top: calc(9 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__tea-ttl {
        margin-top: calc(9 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-feature__tea-txt {
    width: calc(254 / var(--design-width) * 100vw);
    margin: calc(21 / var(--design-width) * 100vw) auto 0;
    font-weight: 600;
    font-size: calc(14 / var(--design-width) * 100vw);
    line-height: 2;
    letter-spacing: 0.06em;
    color: #FFFFFF;
}
@media screen and (min-width: 751px) {
    .c-section-feature__tea-txt {
        width: calc(254 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(21 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-asaginyo
--------------------------------------------- */
.c-section-asaginyo {
    position: relative;
    z-index: 5;
    padding-top: calc(579 / var(--design-width) * 100vw);
    padding-bottom: calc(122 / var(--design-width) * 100vw);
    margin-top: calc(-57 / var(--design-width) * 100vw);
    background: url(../img/img_sec_red01.png) 0 0 no-repeat;
    background-size: 100% 100%;
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo {
        padding-top: calc(579 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(122 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-57 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple {
    position: absolute;
    top: calc(650 / var(--design-width) * 100vw);
    right: calc(48 / var(--design-width) * 100vw);
    width: calc(63 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple {
        top: calc(650 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(48 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(63 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--01 {
    top: calc(710 / var(--design-width) * 100vw);
    right: calc(11 / var(--design-width) * 100vw);
    width: calc(74 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--01 {
        top: calc(710 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(74 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--02 {
    top: calc(716 / var(--design-width) * 100vw);
    right: calc(21 / var(--design-width) * 100vw);
    width: calc(117 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--02 {
        top: calc(716 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(21 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(117 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--03 {
    top: calc(678 / var(--design-width) * 100vw);
    right: auto;
    left: calc(-40 / var(--design-width) * 100vw);
    width: calc(106 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--03 {
        top: calc(678 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-40 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(106 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--04 {
    top: calc(760 / var(--design-width) * 100vw);
    right: calc(167 / var(--design-width) * 100vw);
    width: calc(106 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--04 {
        top: calc(760 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(167 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(106 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--05 {
    top: calc(895 / var(--design-width) * 100vw);
    right: auto;
    width: calc(45 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--05 {
        top: calc(895 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(45 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__apple--06 {
    top: calc(914 / var(--design-width) * 100vw);
    right: auto;
    left: calc(46 / var(--design-width) * 100vw);
    width: calc(45 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__apple--06 {
        top: calc(914 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(46 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(45 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__circle {
    position: absolute;
    pointer-events: none;
    z-index: 2;
    top: calc(-27 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(1950 / var(--design-width) * 100vw);
    animation: rotation 110s linear infinite;
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__circle {
        top: calc(-27 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(1950 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__ttl {
    width: calc(310 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__ttl {
        width: calc(310 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo__txt {
    position: relative;
    width: calc(318 / var(--design-width) * 100vw);
    margin: calc(72 / var(--design-width) * 100vw) auto 0;
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__txt {
        width: calc(318 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(72 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
    }
}
.c-section-asaginyo__foot {
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo__foot {
        margin-top: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

@keyframes rotation {
    from {
        transform: translateX(-50%) rotate(0deg);
    }
    to {
        transform: translateX(-50%) rotate(-360deg);
    }
}
/* ---------------------------------------------
*   c-section-monthly
--------------------------------------------- */
.c-section-monthly {
    position: relative;
    background: url(../img/bg_monthly.png) center no-repeat;
    background-size: 100% 100%;
    margin-top: 0;
    position: relative;
    padding: calc(105 / var(--design-width) * 100vw) 0 calc(80 / var(--design-width) * 100vw);
    margin-top: calc(-35 / var(--design-width) * 100vw);
    z-index: 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly {
        padding: calc(105 * var(--contents-width-pc) / var(--design-width) * 1px) 0 calc(80 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-35 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__container {
    position: relative;
    margin-inline: auto;
    width: calc(335 / var(--design-width) * 100vw);
    border-radius: calc(12 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
    padding-top: calc(42 / var(--design-width) * 100vw);
    padding-bottom: calc(51 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__container {
        width: calc(335 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-top: calc(42 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(51 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__label {
    position: absolute;
    top: calc(-21 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__label {
        top: calc(-21 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__balloon {
    padding: calc(6 / var(--design-width) * 100vw) calc(28 / var(--design-width) * 100vw) calc(2 / var(--design-width) * 100vw);
    border: calc(1 / var(--design-width) * 100vw) solid var(--color-black-1);
    line-height: 1;
    border-radius: calc(30 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__balloon {
        padding: calc(22 * var(--contents-width-pc) / var(--design-width) * 1px) calc(29 * var(--contents-width-pc) / var(--design-width) * 1px) calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
        border: calc(1 * var(--contents-width-pc) / var(--design-width) * 1px) solid var(--color-black-1);
        border-radius: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__balloon::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: calc(16 / var(--design-width) * 100vw);
    height: calc(22 / var(--design-width) * 100vw);
    background: url(../img/bg_balloon_bottom.png) 50% 0 no-repeat;
    background-size: 100% auto;
    transform: translate(-50%, 85%);
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__balloon::after {
        width: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(22 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__balloon-txt {
    color: var(--color-black-1);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: bold;
    letter-spacing: 0;
    white-space: nowrap;
    position: relative;
    top: calc(-11 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__balloon-txt {
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(-10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__float-img-item {
    position: absolute;
    z-index: 5;
}
.c-section-monthly__float-img-item--1 {
    width: calc(375 / var(--design-width) * 100vw);
    top: calc(246 / var(--design-width) * 100vw);
    left: 0;
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--1 {
        width: calc(375 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(246 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__float-img-item--2 {
    width: calc(81 / var(--design-width) * 100vw);
    top: calc(295 / var(--design-width) * 100vw);
    right: 0;
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--2 {
        width: calc(81 * var(--contents-width-pc) / var(--design-width) * 1px);
        top: calc(295 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__float-img-item img {
    display: block;
    width: 100%;
}
.c-section-monthly__img {
    position: relative;
    width: calc(300 / var(--design-width) * 100vw);
    margin-inline: auto;
    margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__img {
        width: calc(300 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-monthly__img img {
    display: block;
    width: 100%;
}
.c-section-monthly__btn {
    display: block;
    width: calc(255 / var(--design-width) * 100vw);
    margin: calc(36 / var(--design-width) * 100vw) auto 0;
    padding-block: calc(17 / var(--design-width) * 100vw);
    box-shadow: 0 calc(7 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw) rgba(244, 170, 52, 0.3);
    border-radius: calc(10 / var(--design-width) * 100vw);
    background-color: var(--color-orange-1);
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: calc(16 / var(--design-width) * 100vw);
    color: var(--color-white-1);
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-section-monthly__btn {
        width: calc(255 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin: calc(36 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
        padding-block: calc(17 * var(--contents-width-pc) / var(--design-width) * 1px);
        box-shadow: 0 calc(7 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px) rgba(244, 170, 52, 0.3);
        border-radius: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-monthly__btn {
        transition: opacity var(--hover-duration);
    }
    .c-section-monthly__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}

/* ---------------------------------------------
*   c-section-asaginyo-2
--------------------------------------------- */
.c-section-asaginyo-2 {
    position: relative;
    z-index: 6;
    background: url(../img/bg_asaginyo02.png) 0 0 no-repeat;
    background-size: 100% 100%;
    margin-top: calc(-111 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-asaginyo-2 {
        margin-top: calc(-111 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__loop {
    padding-block: calc(5 / var(--design-width) * 100vw);
    background: linear-gradient(90deg, #d86c00 0%, #ff0030 100%);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__loop {
        padding-block: calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__loop--2 {
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__loop--2 {
        margin-top: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
@keyframes infinity-scroll-right {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}
.c-section-asaginyo-2__loop-wrap {
    display: flex;
    overflow: hidden;
    gap: calc(15 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__loop-wrap {
        gap: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__loop-list {
    display: flex;
    list-style: none;
    padding: 0;
    gap: calc(15 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__loop-list {
        gap: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__loop-list--left {
    animation: infinity-scroll-left 100s infinite linear 0.5s both;
}
.c-section-asaginyo-2__loop-list--right {
    animation: infinity-scroll-right 100s infinite linear 0.5s both;
}
.c-section-asaginyo-2__loop-item {
    width: calc(504 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__loop-item {
        width: calc(504 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__loop-item img {
    display: block;
    width: 100%;
}
.c-section-asaginyo-2__apple {
    position: absolute;
    top: calc(227 / var(--design-width) * 100vw);
    right: calc(33 / var(--design-width) * 100vw);
    width: calc(42 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__apple {
        top: calc(227 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(33 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(42 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__apple--1 {
    top: calc(250 / var(--design-width) * 100vw);
    right: calc(-8 / var(--design-width) * 100vw);
    width: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__apple--1 {
        top: calc(250 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(-8 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__apple--2 {
    top: calc(294 / var(--design-width) * 100vw);
    right: calc(21 / var(--design-width) * 100vw);
    width: calc(35 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__apple--2 {
        top: calc(294 * var(--contents-width-pc) / var(--design-width) * 1px);
        right: calc(21 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(35 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__apple--3 {
    top: calc(466 / var(--design-width) * 100vw);
    right: auto;
    left: calc(-23 / var(--design-width) * 100vw);
    width: calc(69 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__apple--3 {
        top: calc(466 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(-23 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(69 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__apple--4 {
    top: calc(532 / var(--design-width) * 100vw);
    right: auto;
    left: calc(13 / var(--design-width) * 100vw);
    width: calc(98 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__apple--4 {
        top: calc(532 * var(--contents-width-pc) / var(--design-width) * 1px);
        left: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(98 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__img {
    width: calc(340 / var(--design-width) * 100vw);
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__img {
        width: calc(340 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__txtarea {
    width: calc(220 / var(--design-width) * 100vw);
    margin-top: calc(-118 / var(--design-width) * 100vw);
    margin-left: calc(118 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__txtarea {
        width: calc(220 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(-93 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-left: calc(118 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__ttl {
    width: calc(190 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__ttl {
        width: calc(190 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-asaginyo-2__txt {
    width: calc(212 / var(--design-width) * 100vw);
    margin-top: calc(22 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-asaginyo-2__txt {
        width: calc(212 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(22 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-campaign
--------------------------------------------- */
.c-section-campaign {
    position: relative;
    z-index: 3;
    overflow: hidden;
    background: url(../img/bg_campaign.png) 0 0 no-repeat;
    background-size: 100% 100%;
    padding-top: calc(134 / var(--design-width) * 100vw);
    padding-bottom: calc(96 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-campaign {
        padding-top: calc(134 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(96 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign__ttl {
    width: calc(305 / var(--design-width) * 100vw);
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-campaign__ttl {
        width: calc(305 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign__txt {
    display: block;
    margin-top: calc(20 / var(--design-width) * 100vw);
    font-weight: 600;
    font-size: calc(14 / var(--design-width) * 100vw);
    line-height: 2;
    letter-spacing: 0.06em;
    color: #FFFFFF;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-campaign__txt {
        margin-top: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign__body {
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-campaign__body {
        margin-top: calc(40 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-campaign-02
--------------------------------------------- */
.c-section-campaign-02 {
    position: relative;
    padding-top: calc(43 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02 {
        padding-top: calc(43 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__container {
    padding-inline: calc(25 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__container {
        padding-inline: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__lead {
    margin-top: calc(42 / var(--design-width) * 100vw);
    font-size: calc(16 / var(--design-width) * 100vw);
    line-height: 1.6;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-feature-settings: "palt";
    color: var(--color-green-5);
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__lead {
        margin-top: calc(42 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__lead:nth-of-type(2) {
    margin-top: calc(12 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__lead:nth-of-type(2) {
        margin-top: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__ttl {
    width: calc(261 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__ttl {
        width: calc(261 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__ttl img {
    width: 100%;
}
.c-section-campaign-02__head-txt {
    display: block;
    text-align: center;
    font-size: calc(16 / var(--design-width) * 100vw);
    font-weight: 700;
    color: var(--color-white-1);
    text-align: center;
    line-height: 1.4375;
    letter-spacing: 0.08em;
    margin-top: calc(15 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__head-txt {
        font-size: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__contents {
    position: relative;
    margin: calc(35 / var(--design-width) * 100vw) auto 0;
    padding: calc(13 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw) calc(26 / var(--design-width) * 100vw);
    border-radius: calc(10 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__contents {
        margin-top: calc(35 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px) calc(15 * var(--contents-width-pc) / var(--design-width) * 1px) calc(35 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__date {
    margin-inline: auto;
    margin-block: calc(9 / var(--design-width) * 100vw) calc(19 / var(--design-width) * 100vw);
    width: calc(280 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__date {
        margin-block: calc(9 * var(--contents-width-pc) / var(--design-width) * 1px) calc(19 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(280 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__date img {
    width: 100%;
}
.c-section-campaign-02__txt-wrap {
    margin-top: calc(12 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__txt-wrap {
        margin-top: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__txt {
    font-size: calc(16 / var(--design-width) * 100vw);
    font-weight: 700;
    color: var(--color-black-1);
    text-align: center;
    line-height: 1.5;
    color: var(--color-black-6);
    font-feature-settings: "palt" 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__txt {
        font-size: calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__txt--2 {
    display: block;
    margin-top: calc(12 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__txt--2 {
        margin-top: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__txt--ls {
    letter-spacing: -0.08em;
}
.c-section-campaign-02__img {
    margin-block: calc(9 / var(--design-width) * 100vw) calc(16 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__img {
        margin-block: calc(9 * var(--contents-width-pc) / var(--design-width) * 1px) calc(16 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__item--2 {
    margin-top: calc(19 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__item--2 {
        margin-top: calc(19 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__item-toc {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    font-size: calc(12 / var(--design-width) * 100vw);
    font-weight: 700;
    color: var(--color-orange-3);
    border: 1px solid var(--color-orange-3);
    border-radius: calc(50 / var(--design-width) * 100vw);
    padding: calc(2 / var(--design-width) * 100vw) calc(9 / var(--design-width) * 100vw);
    text-align: center;
    line-height: 1.5;
    letter-spacing: 0.02em;
    font-feature-settings: "palt" 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__item-toc {
        border-radius: calc(50 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px) calc(8 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__item-toc--2 {
    padding: calc(2 / var(--design-width) * 100vw) calc(16 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__item-toc--2 {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(16 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__item-txt {
    display: block;
    width: calc(270 / var(--design-width) * 100vw);
    margin: calc(6 / var(--design-width) * 100vw) auto 0;
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 500;
    color: #2E0B0E;
    line-height: 1.5714285714;
    letter-spacing: 0.04em;
    font-family: var(--ff-sans);
    font-feature-settings: "palt" 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__item-txt {
        width: calc(270 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-top: calc(6 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__item-txt--2 {
    text-align: center;
}
.c-section-campaign-02__ttl02 {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: 25px auto 0;
    padding-bottom: calc(4 / var(--design-width) * 100vw);
    font-size: calc(18 / var(--design-width) * 100vw);
    font-weight: 700;
    color: var(--color-orange-3);
    border-bottom: 2px solid var(--color-orange-3);
    text-align: center;
    line-height: 1.1111111111;
    letter-spacing: -0.02em;
    font-feature-settings: "palt" 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__ttl02 {
        margin-top: calc(25 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(18 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box {
    margin-top: calc(30 / var(--design-width) * 100vw);
    padding: calc(20 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw) calc(5 / var(--design-width) * 100vw);
    border-radius: calc(10 / var(--design-width) * 100vw);
    background: linear-gradient(360deg, rgba(255, 50, 67, 0.2) 0%, rgba(251, 149, 147, 0.2) 100%);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box {
        margin-top: calc(30 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px) calc(20 * var(--contents-width-pc) / var(--design-width) * 1px) calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box + .c-section-campaign-02__box {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box + .c-section-campaign-02__box {
        margin-top: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box-icon {
    display: block;
    width: calc(27 / var(--design-width) * 100vw);
    margin: 0 auto calc(10 / var(--design-width) * 100vw);
    line-height: 1;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box-icon {
        width: calc(27 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-bottom: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box-icon img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-section-campaign-02__box-list-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: calc(8 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box-list-item {
        margin-bottom: calc(8 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box-list-item:last-of-type {
    margin-bottom: 0;
}
.c-section-campaign-02__box-list-label {
    display: inline-block;
    margin-right: calc(10 / var(--design-width) * 100vw);
    border-radius: calc(4 / var(--design-width) * 100vw);
    border: 1px solid var(--color-orange-3);
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1;
    color: #d90037;
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
    border: 2px solid #d90037;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box-list-label {
        margin-right: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(1 * var(--contents-width-pc) / var(--design-width) * 1px) calc(8 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__box-list-label--2 {
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box-list-label--2 {
        padding: calc(3 * var(--contents-width-pc) / var(--design-width) * 1px) calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(2 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.firefox .c-section-campaign-02__box-list-label--2 {
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .firefox .c-section-campaign-02__box-list-label--2 {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.safari .c-section-campaign-02__box-list-label--2 {
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .safari .c-section-campaign-02__box-list-label--2 {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.windows .c-section-campaign-02__box-list-label--2 {
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .windows .c-section-campaign-02__box-list-label--2 {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(6 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.c-section-campaign-02__box-list-txt {
    margin-top: calc(1 / var(--design-width) * 100vw);
    color: var(--color-black-6);
    line-height: 1.3076923077;
    font-feature-settings: "palt";
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: bold;
    letter-spacing: -0.04em;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__box-list-txt {
        margin-top: calc(1 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
        letter-spacing: 0.01em;
    }
}
.c-section-campaign-02__box-list-txt--color {
    color: #F57E16;
}
.c-section-campaign-02__btn {
    display: block;
    margin: calc(6 / var(--design-width) * 100vw) auto 0;
    width: calc(100% + (23 / var(--design-width) * 100vw));
    transform: translateX(calc(-8 / var(--design-width) * 100vw));
}
@media (hover: hover) and (pointer: fine) {
    .c-section-campaign-02__btn {
        transition: opacity var(--hover-duration);
    }
    .c-section-campaign-02__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__btn {
        margin-top: calc(6 * var(--contents-width-pc) / var(--design-width) * 1px);
        width: calc(100% + 23 * var(--contents-width-pc) / var(--design-width) * 1px);
        transform: translateX(calc(-8 * var(--contents-width-pc) / var(--design-width) * 1px));
    }
}
.c-section-campaign-02__btn img {
    width: 100%;
    display: block;
}
.c-section-campaign-02__link-outer {
    text-align: center;
    color: var(--color-black-3);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__link-outer {
        margin-top: calc(23 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__link {
    position: relative;
    font-size: calc(13 / var(--design-width) * 100vw);
    padding-right: calc(18 / var(--design-width) * 100vw);
    padding-bottom: calc(5 / var(--design-width) * 100vw);
    border-bottom: calc(1.7 / var(--design-width) * 100vw) solid var(--color-black-3);
    color: var(--color-black-6);
    font-weight: 700;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-campaign-02__link {
        transition: opacity var(--hover-duration);
    }
    .c-section-campaign-02__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__link {
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-right: calc(18 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding-bottom: calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-bottom-width: calc(1.7 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-section-campaign-02__link:after {
    content: "";
    position: absolute;
    top: 20%;
    right: 0;
    width: calc(11 / var(--design-width) * 100vw);
    height: calc(11 / var(--design-width) * 100vw);
    -webkit-mask: url(../img/icn_link.svg) 0 0/100% auto no-repeat;
    mask: url(../img/icn_link.svg) 0 0/100% auto no-repeat;
    background-color: var(--color-black-3);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign-02__link:after {
        width: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px);
        height: calc(11 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-acc
--------------------------------------------- */
.c-acc {
    width: calc(295 / var(--design-width) * 100vw);
    margin-inline: auto;
    border-radius: calc(10 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
    overflow: hidden;
}
@media print, screen and (min-width: 751px) {
    .c-acc {
        width: calc(295 * var(--contents-width-pc) / var(--design-width) * 1px);
        border-radius: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc--2 {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc--2 {
        margin-top: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc.is-open .c-acc__head-arrow-open {
    display: none;
}
.c-acc.is-open .c-acc__head-arrow-close {
    display: block;
}
.c-acc.is-close .c-acc__head-arrow-open {
    display: block;
}
.c-acc.is-close .c-acc__head-arrow-close {
    display: none;
}
.c-acc__head {
    width: 100%;
    background-color: var(--color-white-1);
    border-radius: calc(10 / var(--design-width) * 100vw);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: calc(13 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__head {
        border-radius: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px) calc(20 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-acc__head {
        transition: opacity var(--hover-duration);
    }
    .c-acc__head:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-acc__head-txt {
    display: block;
    width: calc(108 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__head-txt {
        width: calc(108 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__head-txt--insta {
    width: calc(184 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__head-txt--insta {
        width: calc(184 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__head-arrow {
    display: block;
    width: calc(14 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__head-arrow {
        width: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__head-arrow-open {
    display: block;
}
.c-acc__head-arrow-close {
    display: none;
}
.c-acc__body-inner {
    border-top: 1px solid var(--color-black-4);
    padding-bottom: calc(5 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-inner {
        padding-bottom: calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-list {
    margin-top: calc(15 / var(--design-width) * 100vw);
    margin-inline: calc(20 / var(--design-width) * 100vw) calc(14 / var(--design-width) * 100vw);
    display: flex;
    flex-direction: column;
    row-gap: calc(6 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-list {
        margin-top: calc(15 * var(--contents-width-pc) / var(--design-width) * 1px);
        margin-inline: calc(20 * var(--contents-width-pc) / var(--design-width) * 1px) calc(14 * var(--contents-width-pc) / var(--design-width) * 1px);
        row-gap: calc(6 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-item {
    text-align: left;
}
.c-acc__body-item:nth-of-type(1) {
    padding-bottom: calc(8 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item:nth-of-type(1) {
        padding-bottom: calc(8 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-item-wrap {
    display: flex;
    justify-content: start;
    -moz-column-gap: calc(10 / var(--design-width) * 100vw);
         column-gap: calc(10 / var(--design-width) * 100vw);
    align-items: start;
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item-wrap {
        -moz-column-gap: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
             column-gap: calc(10 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-item-label {
    display: block;
    font-size: calc(12 / var(--design-width) * 100vw);
    line-height: 1;
    font-family: var(--ff-ZenKakuGothicNew);
    color: var(--color-pink-2);
    font-weight: bold;
    border: 1px solid var(--color-pink-2);
    border-radius: calc(4 / var(--design-width) * 100vw);
    padding: calc(2 / var(--design-width) * 100vw) calc(8 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item-label {
        border-radius: calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
        font-size: calc(12 * var(--contents-width-pc) / var(--design-width) * 1px);
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(8 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.firefox .c-acc__body-item-label {
    padding: calc(2 / var(--design-width) * 100vw) calc(8 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .firefox .c-acc__body-item-label {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(8 * var(--contents-width-pc) / var(--design-width) * 1px) calc(4 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}

.c-acc__body-item-label--4 {
    padding: calc(2 / var(--design-width) * 100vw) calc(8 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item-label--4 {
        padding: calc(2 * var(--contents-width-pc) / var(--design-width) * 1px) calc(8 * var(--contents-width-pc) / var(--design-width) * 1px) calc(3 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-item-desc {
    display: block;
    font-size: calc(13 / var(--design-width) * 100vw);
    line-height: 1.3076923077;
    letter-spacing: -0.02em;
    color: var(--color-black-5);
    font-weight: bold;
    font-family: var(--ff-ZenKakuGothicNew);
    text-align: left;
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item-desc {
        font-size: calc(13 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__body-item-desc--pink {
    color: var(--color-pink-2);
    letter-spacing: -0.05em;
    margin-top: calc(5 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__body-item-desc--pink {
        margin-top: calc(5 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__btn {
    margin: calc(14 / var(--design-width) * 100vw) auto 0;
    width: calc(278 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-acc__btn {
        margin: calc(14 * var(--contents-width-pc) / var(--design-width) * 1px) auto 0;
        width: calc(278 * var(--contents-width-pc) / var(--design-width) * 1px);
    }
}
.c-acc__btn-link {
    display: block;
    width: 100%;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-acc__btn-link {
        transition: opacity var(--hover-duration);
    }
    .c-acc__btn-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
.c-acc__btn-link img {
    display: block;
    width: 100%;
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: var(--color-white-1) !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 800 !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;
}

/* ---------------------------------------------
*   falling-effect-1
--------------------------------------------- */
.falling-effect-1 {
    animation: fall 8s linear infinite, sway1 4s ease-in-out infinite alternate;
}

@keyframes fall {
    to {
        top: 80%;
    }
}
@keyframes sway1 {
    from {
        transform: translateX(180px) rotate(-45deg);
    }
    to {
        transform: translateX(0) rotate(0deg);
    }
}
/* ---------------------------------------------
*   falling-effect-2
--------------------------------------------- */
.falling-effect-2 {
    animation: fall 8s linear infinite, sway2 4s ease-in-out infinite alternate;
    animation-delay: 2s;
}

@keyframes fall {
    to {
        top: 80%;
    }
}
@keyframes sway2 {
    from {
        transform: translateX(0px) rotate(0deg);
    }
    to {
        transform: translateX(130px) rotate(-45deg);
    }
}
/* ---------------------------------------------
*   falling-effect-3
--------------------------------------------- */
.falling-effect-3 {
    animation: fall 8s linear infinite, sway3 4s ease-in-out infinite alternate;
    animation-delay: 4s;
}

@keyframes fall {
    to {
        top: 80%;
    }
}
@keyframes sway3 {
    from {
        transform: translateX(180px) rotate(-45deg);
    }
    to {
        transform: translateX(0) rotate(0deg);
    }
}
/* ---------------------------------------------
*   falling-effect-4
--------------------------------------------- */
.falling-effect-4 {
    animation: fall 8s linear infinite, sway4 4s ease-in-out infinite alternate;
    animation-delay: 6s;
}

@keyframes fall {
    to {
        top: 80%;
    }
}
@keyframes sway4 {
    from {
        transform: translateX(0px) rotate(0deg);
    }
    to {
        transform: translateX(-120px) rotate(-45deg);
    }
}
.js-acc-target {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target {
    animation: closeAccAnim 0.5s forwards;
}

.js-acc-scope.is-open .js-acc-target {
    animation: openAccAnim 0.5s forwards;
}

@keyframes openAccAnim {
    0% {
        height: 0px;
        visibility: hidden;
    }
    99% {
        height: var(--acc-body-height);
        visibility: visible;
    }
    100% {
        height: auto;
    }
}
@keyframes closeAccAnim {
    0% {
        height: var(--acc-body-height);
    }
    99% {
        visibility: visible;
    }
    100% {
        height: 0px;
        visibility: hidden;
    }
}

/* ---------------------------------------------
*   フェードイン
--------------------------------------------- */
/* フェードイン */
.js-fade {
    opacity: 0;
}
.js-fade.is-active {
    opacity: 1;
    transition: opacity 0.75s 0.2s, transform 0.75s 0.2s;
}

.js-fade-2 {
    opacity: 0;
}
.js-fade-2.is-active {
    opacity: 1;
    transition: opacity 0.75s 0.2s, transform 0.75s 0.2s;
}

.js-fade-3 {
    opacity: 0;
}
.js-fade-3.is-active {
    opacity: 1;
    transition: opacity 0.75s 0.3s, transform 0.75s 0.3s;
    transition-delay: 1s;
}

.js-fade-right {
    opacity: 0;
    transform: translate(30px, -30px);
}
.js-fade-right.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translate(0, 0);
}

.js-fade-left {
    opacity: 0;
    transform: translate(-30px, -30px);
}
.js-fade-left.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translate(0, 0);
}

/* 右にスライドイン */
.js-slidein {
    opacity: 0;
    transform: translateX(-30px);
}
.js-slidein.is-active {
    opacity: 1;
    transition: opacity 0.75s 0.3s, transform 0.75s 0.3s;
    transform: translateX(0);
}

/* 左にスライドイン */
.js-slidein-2 {
    opacity: 0;
    transform: translateX(30px);
}
.js-slidein-2.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translateX(0);
    transition-delay: 0.5s;
}

/* 右にスライドイン遅延 */
.js-slidein-3 {
    opacity: 0;
    transform: translateX(-30px);
}
.js-slidein-3.is-active {
    opacity: 1;
    transition: opacity 0.75s, transform 0.75s;
    transform: translateX(0);
    transition-delay: 0.5s;
}

/* フェードインアップ */
.js-fadein-up {
    opacity: 0;
    transform: translateY(50px);
}
.js-fadein-up.is-active {
    transform: translateY(0);
    opacity: 1;
    transition: transform 1s, opacity 1s;
}

/* フェードインアップ 遅延*/
.js-fadein-up-2 {
    opacity: 0;
    transform: translateY(50px);
}
.js-fadein-up-2.is-active {
    transform: translateY(0);
    opacity: 1;
    transition: transform 1s, opacity 1s;
}

/* 右にスライドイン */
/* テキストとベタが左から右にスライドイン */
.js-curtain {
    position: relative;
    transition: -webkit-clip-path 1s;
    transition: clip-path 1s;
    transition: clip-path 1s, -webkit-clip-path 1s;
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
}

.js-curtain::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--color-brown-1);
    transition: -webkit-clip-path 0.5s 0.4s;
    transition: clip-path 0.5s 0.4s;
    transition: clip-path 0.5s 0.4s, -webkit-clip-path 0.5s 0.4s;
    -webkit-clip-path: inset(0 0 0 100%);
            clip-path: inset(0 0 0 100%);
}

.js-curtain.is-active {
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
}

.js-fuyo {
    animation: fuyo 1.5s infinite alternate ease-in-out;
    animation-delay: 0;
}
.js-fuyo--2 {
    animation-delay: 0.6s;
}
.js-fuyo--3 {
    animation-delay: 0.9s;
}
.js-fuyo--4 {
    animation-delay: 0.7s;
}
.js-fuyo--5 {
    animation-delay: 1s;
}
.js-fuyo--6 {
    animation-delay: 0.2s;
}
.js-fuyo--7 {
    animation-delay: 0.4s;
}

.js-fuyo-2 {
    animation: fuyo2 1.5s 1.5s infinite alternate ease-in-out, fead 1.5s forwards;
}
.js-fuyo-2--2 {
    animation-delay: 0.6s;
}
.js-fuyo-2--3 {
    animation-delay: 0.9s;
}

@keyframes fuyo {
    0% {
        transform: translate(0px, 0px);
    }
    100% {
        transform: translate(0px, 10px);
    }
}
@keyframes fuyo2 {
    0% {
        transform: translate(0px, 0px);
    }
    100% {
        transform: translate(0px, 15px);
    }
}
@keyframes fead {
    0% {
        opacity: 0;
    }
    100% {
        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: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--10 {
        margin-top: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--15 {
        margin-top: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--20 {
        margin-top: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--25 {
        margin-top: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--30 {
        margin-top: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--35 {
        margin-top: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--40 {
        margin-top: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--45 {
        margin-top: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--50 {
        margin-top: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--55 {
        margin-top: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--60 {
        margin-top: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--65 {
        margin-top: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--70 {
        margin-top: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--75 {
        margin-top: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--80 {
        margin-top: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--85 {
        margin-top: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--90 {
        margin-top: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--95 {
        margin-top: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--100 {
        margin-top: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--105 {
        margin-top: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--110 {
        margin-top: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--115 {
        margin-top: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--120 {
        margin-top: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--125 {
        margin-top: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--130 {
        margin-top: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--135 {
        margin-top: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--140 {
        margin-top: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--145 {
        margin-top: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--150 {
        margin-top: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--155 {
        margin-top: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--160 {
        margin-top: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--165 {
        margin-top: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--170 {
        margin-top: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--175 {
        margin-top: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--180 {
        margin-top: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--185 {
        margin-top: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--190 {
        margin-top: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--195 {
        margin-top: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--200 {
        margin-top: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--205 {
        margin-top: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--210 {
        margin-top: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--215 {
        margin-top: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--220 {
        margin-top: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--225 {
        margin-top: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--230 {
        margin-top: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--235 {
        margin-top: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--240 {
        margin-top: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--245 {
        margin-top: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgt-sp--250 {
        margin-top: calc(250 / var(--design-width) * 100vw) !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: calc(5 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--10 {
        margin-bottom: calc(10 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--15 {
        margin-bottom: calc(15 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--20 {
        margin-bottom: calc(20 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--25 {
        margin-bottom: calc(25 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--30 {
        margin-bottom: calc(30 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--35 {
        margin-bottom: calc(35 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--40 {
        margin-bottom: calc(40 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--45 {
        margin-bottom: calc(45 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--50 {
        margin-bottom: calc(50 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--55 {
        margin-bottom: calc(55 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--60 {
        margin-bottom: calc(60 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--65 {
        margin-bottom: calc(65 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--70 {
        margin-bottom: calc(70 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--75 {
        margin-bottom: calc(75 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--80 {
        margin-bottom: calc(80 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--85 {
        margin-bottom: calc(85 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--90 {
        margin-bottom: calc(90 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--95 {
        margin-bottom: calc(95 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--100 {
        margin-bottom: calc(100 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--105 {
        margin-bottom: calc(105 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--110 {
        margin-bottom: calc(110 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--115 {
        margin-bottom: calc(115 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--120 {
        margin-bottom: calc(120 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--125 {
        margin-bottom: calc(125 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--130 {
        margin-bottom: calc(130 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--135 {
        margin-bottom: calc(135 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--140 {
        margin-bottom: calc(140 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--145 {
        margin-bottom: calc(145 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--150 {
        margin-bottom: calc(150 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--155 {
        margin-bottom: calc(155 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--160 {
        margin-bottom: calc(160 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--165 {
        margin-bottom: calc(165 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--170 {
        margin-bottom: calc(170 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--175 {
        margin-bottom: calc(175 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--180 {
        margin-bottom: calc(180 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--185 {
        margin-bottom: calc(185 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--190 {
        margin-bottom: calc(190 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--195 {
        margin-bottom: calc(195 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--200 {
        margin-bottom: calc(200 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--205 {
        margin-bottom: calc(205 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--210 {
        margin-bottom: calc(210 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--215 {
        margin-bottom: calc(215 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--220 {
        margin-bottom: calc(220 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--225 {
        margin-bottom: calc(225 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--230 {
        margin-bottom: calc(230 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--235 {
        margin-bottom: calc(235 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--240 {
        margin-bottom: calc(240 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--245 {
        margin-bottom: calc(245 / var(--design-width) * 100vw) !important;
    }
    .mgb-sp--250 {
        margin-bottom: calc(250 / var(--design-width) * 100vw) !important;
    }
}