@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) * 1px);
        margin-inline: auto;
    }
}

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}
.l-header__logo {
    position: absolute;
    display: block;
    top: calc(16 / var(--design-width) * 100vw);
    left: calc(22 / var(--design-width) * 100vw);
    width: calc(48 / var(--design-width) * 100vw);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo {
        transition: opacity var(--hover-duration);
    }
    .l-header__logo:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (min-width: 751px) {
    .l-header__logo {
        top: calc(18 * var(--contents-width) / var(--design-width) * 1px);
        left: calc(22 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(48 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    padding-block: calc(37.5 / var(--design-width) * 100vw) calc(20.5 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
}
@media screen and (min-width: 751px) {
    .l-footer {
        padding-block: calc(37.5 * var(--contents-width) / var(--design-width) * 1px) calc(20.5 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.l-footer__logo {
    width: calc(147 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .l-footer__logo {
        width: calc(147 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.l-footer__logo-link {
    display: block;
    will-change: opacity;
}
@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(24 / var(--design-width) * 100vw);
    font-family: var(--ff-lato);
    font-size: calc(10 / var(--design-width) * 100vw);
    font-weight: 400;
    line-height: 1.7;
    color: var(--color-black-1);
    letter-spacing: 0.12em;
    text-align: center;
    translate: calc(4.5 / var(--design-width) * 100vw) 0;
}
@media screen and (min-width: 751px) {
    .l-footer__copyright {
        margin-top: calc(24 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(10 * var(--contents-width) / var(--design-width) * 1px);
        translate: calc(4.5 * var(--contents-width) / var(--design-width) * 1px) 0;
    }
}

/* ---------------------------------------------
*   c-block-bg
--------------------------------------------- */
.c-block-bg {
    position: fixed;
    inset: 0;
}
.c-block-bg__side {
    position: absolute;
    top: 0;
    width: calc((100% - var(--contents-width) * 1px) / 2);
    height: 100%;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
}
.c-block-bg__side--left {
    left: 0;
    background-image: url(../img/bg_pc_left.png);
}
.c-block-bg__side--right {
    right: 0;
    background-image: url(../img/bg_pc_right.png);
}
.c-block-bg__logo {
    position: absolute;
    inset: 0;
    padding: 20px;
    display: grid;
    place-content: center;
}
.c-block-bg__logo img {
    width: calc(303 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-bg__logo img {
        width: min(303 * var(--contents-width) / var(--design-width) * 1px, 303px);
    }
}
.c-block-bg__qr {
    position: absolute;
    inset: 0;
    padding: 20px;
    display: grid;
    place-content: center;
}
.c-block-bg__qr img {
    translate: calc(0 / var(--design-width) * 100vw) calc(16 / var(--design-width) * 100vw);
    width: calc(161 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-bg__qr img {
        translate: calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(16 * var(--contents-width) / var(--design-width) * 1px);
        width: min(161 * var(--contents-width) / var(--design-width) * 1px, 161px);
    }
}

/* ---------------------------------------------
*   c-block-share
--------------------------------------------- */
.c-block-share {
    margin-top: calc(120 / var(--design-width) * 100%);
}
.c-block-share__container {
    width: calc(338 / var(--design-width) * 100%);
    margin-inline: auto;
}
.c-block-share__ttl {
    width: calc(262 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-block-share__ttl {
        width: calc(262 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-share__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(20 / var(--design-width) * 100vw);
    margin-top: calc(29 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-share__btn {
        gap: calc(20 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(29 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-share__link {
    display: block;
    width: calc(160 / var(--design-width) * 100vw);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .c-block-share__link {
        transition: opacity var(--hover-duration);
    }
    .c-block-share__link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (min-width: 751px) {
    .c-block-share__link {
        width: calc(160 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-share__link img {
    display: block;
}

/* ---------------------------------------------
*   c-block-sns
--------------------------------------------- */
.c-block-sns {
    padding-top: calc(81 / var(--design-width) * 100%);
    padding-bottom: calc(48 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-block-sns {
        padding-top: calc(81 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(48 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-sns__ttl {
    width: 100%;
}
.c-block-sns__list {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-top: calc(41 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-block-sns__list {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--instagram {
    width: calc(34 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-sns__item--instagram {
        width: calc(34 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--x {
    margin-left: calc(42 / var(--design-width) * 100vw);
    width: calc(35 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-sns__item--x {
        margin-left: calc(42 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(35 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-sns__item--tiktok {
    margin-left: calc(41 / var(--design-width) * 100vw);
    width: calc(34 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-sns__item--tiktok {
        margin-left: calc(41 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(34 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-sns__link {
    display: block;
    will-change: opacity;
}
@media (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__link img {
    display: block;
}

/* ---------------------------------------------
*   c-block-craft
--------------------------------------------- */
.c-block-craft {
    position: relative;
    background: url(../img/bg_craft.png) 0 0 no-repeat;
    background-size: 100% auto;
    padding-top: calc(106 / var(--design-width) * 100vw);
    margin-top: calc(-43 / var(--design-width) * 100vw);
    padding-bottom: calc(113 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-block-craft {
        padding-top: calc(106 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(-43 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(113 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-block-craft {
    margin-top: calc(-47 / var(--design-width) * 100vw);
    padding-top: calc(104 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-block-craft {
        margin-top: calc(-43 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(106 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-block-craft__btn {
    display: block;
    width: calc(290 / var(--design-width) * 100vw);
    margin: calc(27 / var(--design-width) * 100vw) auto 0;
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .c-block-craft__btn {
        transition: opacity var(--hover-duration);
    }
    .c-block-craft__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (min-width: 751px) {
    .c-block-craft__btn {
        width: calc(290 * var(--contents-width) / var(--design-width) * 1px);
        margin: calc(27 * var(--contents-width) / var(--design-width) * 1px) auto 0;
    }
}

/* ---------------------------------------------
*   c-bg-intro
--------------------------------------------- */
.c-bg-intro {
    background: url(../img/bg_intro.png) no-repeat center top;
    background-size: 100% auto;
    position: relative;
    z-index: 4;
}

/* ---------------------------------------------
*   c-bg-1
--------------------------------------------- */
.c-bg-1 {
    background: url(../img/bg_rich-lineup.png) no-repeat center top;
    background-size: 100% auto;
    height: calc(2753 / var(--design-width) * 100vw);
    margin-top: calc(-300 / var(--design-width) * 100vw);
    padding-top: calc(297 / var(--design-width) * 100vw);
    position: relative;
    z-index: 3;
}
@media screen and (min-width: 751px) {
    .c-bg-1 {
        height: 3155px;
        margin-top: calc(-300 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(297 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-bg-1 {
    height: calc(2667 / var(--design-width) * 100vw);
    margin-top: calc(-312 / var(--design-width) * 100vw);
    padding-top: calc(267 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-bg-1 {
        margin-top: calc(-280 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(283 * var(--contents-width) / var(--design-width) * 1px);
        height: 3155px;
    }
}

/* ---------------------------------------------
*   c-bg-2
--------------------------------------------- */
.c-bg-2 {
    background: url(../img/bg_bgm-campaign.png) no-repeat center bottom;
    background-size: 100% auto;
    padding-bottom: calc(56 / var(--design-width) * 100vw);
    position: relative;
    z-index: 0;
}
@media screen and (min-width: 751px) {
    .c-bg-2 {
        padding-bottom: calc(56 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-box-bgm
--------------------------------------------- */
.c-box-bgm {
    background: url(../img/bg_bgm.png) center top no-repeat;
    background-size: 100% auto;
    margin-top: calc(-43 / var(--design-width) * 100%);
    padding: calc(124 / var(--design-width) * 100%) 0 calc(120 / var(--design-width) * 100%);
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-box-bgm {
        margin-top: calc(-43 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(124 * var(--contents-width) / var(--design-width) * 1px) 0 calc(120 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-box-bgm__container {
    background: url(../img/bg_bgm-content.png) center top no-repeat;
    background-size: 100% auto;
    padding: calc(50 / var(--design-width) * 100%) 0 calc(45 / var(--design-width) * 100%);
    width: calc(330 / var(--design-width) * 100%);
    margin-inline: auto;
}
.c-box-bgm__lead {
    width: calc(244 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-box-bgm__lead {
        width: calc(244 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-box-bgm__lead img {
    display: block;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 0 10px rgba(128, 0, 0, 0.2));
}
.c-box-bgm__btn {
    display: block;
    width: calc(255 / var(--design-width) * 100vw);
    margin-inline: auto;
    margin-top: calc(23 / var(--design-width) * 100vw);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .c-box-bgm__btn {
        transition: opacity var(--hover-duration);
    }
    .c-box-bgm__btn:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (min-width: 751px) {
    .c-box-bgm__btn {
        width: calc(255 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(23 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-box-bgm__btn img {
    display: block;
}

/* ---------------------------------------------
*   c-cassette-feature
--------------------------------------------- */
.c-cassette-feature {
    position: relative;
    width: calc(335 / var(--design-width) * 100%);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature {
        width: calc(335 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature + .c-cassette-feature {
    margin-top: calc(76 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature + .c-cassette-feature {
        margin-top: calc(76 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-feature + .c-cassette-feature {
    margin-top: calc(66 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-feature + .c-cassette-feature {
        margin-top: calc(66 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature__num {
    position: absolute;
    top: 0;
    left: calc(-4 / var(--design-width) * 100vw);
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__num {
        left: calc(-4 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature--1 .c-cassette-feature__num {
    width: calc(101 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature--1 .c-cassette-feature__num {
        width: calc(101 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature--2 .c-cassette-feature__num {
    width: calc(108 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature--2 .c-cassette-feature__num {
        width: calc(108 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature--3 .c-cassette-feature__num {
    width: calc(107 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature--3 .c-cassette-feature__num {
        width: calc(107 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature__img {
    position: relative;
    translate: 0 calc(-15 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img {
        translate: 0 calc(-15 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-feature__img {
    translate: calc(-4.5 / var(--design-width) * 100vw) calc(-15 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-feature__img {
        translate: 0 calc(-15 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature__img-inner {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}
.c-cassette-feature__img--1 .c-cassette-feature__img-inner {
    left: 52%;
    top: 53.3%;
    width: calc(306 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--1 .c-cassette-feature__img-inner {
        width: calc(306 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature__img--2 .c-cassette-feature__img-inner {
    top: 50%;
    width: calc(341 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--2 .c-cassette-feature__img-inner {
        width: calc(341 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature__img--3 .c-cassette-feature__img-inner {
    top: 50%;
    width: calc(341 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--3 .c-cassette-feature__img-inner {
        width: calc(341 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-feature__bg {
    filter: drop-shadow(0 0 calc(13 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.2));
    transform: translateX(calc(-47 / var(--design-width) * 100vw));
    width: calc(427 / var(--design-width) * 100vw);
    height: calc(358 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__bg {
        width: calc(427 * var(--contents-width) / var(--design-width) * 1px);
        height: calc(358 * var(--contents-width) / var(--design-width) * 1px);
        transform: translateX(calc(-47 * var(--contents-width) / var(--design-width) * 1px));
        filter: drop-shadow(0 0 calc(13 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.2));
    }
}
.c-cassette-feature__bg img {
    width: 100%;
    height: auto;
}
.c-cassette-feature__body {
    margin-top: calc(-42 / var(--design-width) * 100vw);
    padding: calc(0 / var(--design-width) * 100vw) calc(17.5 / var(--design-width) * 100vw);
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__body {
        margin-top: calc(-42 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(17.5 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature__lead {
    align-items: center;
    display: flex;
    text-align: center;
}
.c-cassette-feature__lead::before, .c-cassette-feature__lead::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--color-white-1);
}
.c-cassette-feature__lead-text {
    color: var(--color-white-1);
    flex-shrink: 0;
    font-family: var(--ff-serif);
    position: relative;
    display: inline-block;
    padding: calc(0 / var(--design-width) * 100vw) calc(8 / var(--design-width) * 100vw);
    font-size: calc(16 / var(--design-width) * 100vw);
    font-weight: 700;
    font-optical-sizing: auto;
    letter-spacing: -0.06em;
    text-shadow: 0 0 calc(10 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.7), 0 0 calc(20 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.3);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead-text {
        padding: calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(8 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(16 * var(--contents-width) / var(--design-width) * 1px);
        text-shadow: 0 0 calc(10 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.7), 0 0 calc(20 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.3);
    }
}
.c-cassette-feature__ttl {
    color: var(--color-white-1);
    margin-top: calc(1 / var(--design-width) * 100vw);
    font-size: calc(28 / var(--design-width) * 100vw);
    font-weight: 700;
    font-family: var(--ff-serif);
    font-optical-sizing: auto;
    letter-spacing: -0.1em;
    line-height: 1.5555555556;
    display: inline-block;
    padding: calc(0 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw);
    text-shadow: 0 0 calc(10 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.7), 0 0 calc(20 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.3);
    --anim-delay: .9s;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl {
        letter-spacing: -0.06em;
        margin-top: calc(1 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(28 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(6 * var(--contents-width) / var(--design-width) * 1px);
        text-shadow: 0 0 calc(12 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.6);
    }
}
.c-cassette-feature__ttl-txt {
    display: inline-block;
}
.c-cassette-feature__ttl-txt + .c-cassette-feature__ttl-txt {
    margin-left: calc(5 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-txt + .c-cassette-feature__ttl-txt {
        margin-left: calc(5 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-feature__txt {
    color: var(--color-white-1);
    margin-top: calc(7 / var(--design-width) * 100vw);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-optical-sizing: auto;
    letter-spacing: -0.02em;
    line-height: 1.8571428571;
    text-align: center;
    text-shadow: 0 0 calc(15 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.7), 0 0 calc(20 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.3);
    font-family: var(--ff-root);
    font-weight: 400;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt {
        margin-top: calc(7 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
        text-shadow: 0 0 calc(15 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.7), 0 0 calc(20 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.3);
    }
}
.c-cassette-feature__txt-inner {
    display: inline-block;
    text-align: justify;
    -moz-text-align-last: center;
         text-align-last: center;
    text-justify: inter-ideograph;
}

/* ---------------------------------------------
*   c-cassette-limited
--------------------------------------------- */
.c-cassette-limited {
    filter: drop-shadow(0 0 calc(12 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.3));
    height: calc(320 / var(--design-width) * 100vw);
    position: relative;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-limited {
        filter: drop-shadow(0 0 calc(12 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.3));
        height: 366px;
    }
}
.c-cassette-limited + .c-cassette-limited {
    margin-top: calc(41 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited + .c-cassette-limited {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-cassette-limited + .c-cassette-limited {
    margin-top: calc(35 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-cassette-limited + .c-cassette-limited {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--1, .c-cassette-limited--3 {
    background: url(../img/bg_limited_item_1.png) 0 0 no-repeat;
    background-size: 100% auto;
}
.c-cassette-limited--2 {
    background: url(../img/bg_limited_item_2.png) 0 0 no-repeat;
    background-size: 100% auto;
}
.c-cassette-limited__topping {
    animation: float 1.5s 0.2s infinite alternate ease-in-out;
    animation-delay: 1s;
    width: calc(79 / var(--design-width) * 100vw);
    height: calc(79 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited__topping {
        width: calc(79 * var(--contents-width) / var(--design-width) * 1px);
        height: calc(79 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--2 .c-cassette-limited__topping {
    margin-left: auto;
}
.c-cassette-limited__img {
    width: calc(237 / var(--design-width) * 100vw);
    margin-inline: auto;
    margin-top: calc(-25 / var(--design-width) * 100vw);
    translate: calc(10 / var(--design-width) * 100vw) 0;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-cassette-limited__img {
        width: calc(237 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(-25 * var(--contents-width) / var(--design-width) * 1px);
        translate: calc(10 * var(--contents-width) / var(--design-width) * 1px) 0;
    }
}
body.edge .c-cassette-limited__img {
    padding-bottom: calc(0 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-limited__img {
        padding-bottom: calc(6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--1 .c-cassette-limited__img {
    padding-bottom: calc(7 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited--1 .c-cassette-limited__img {
        padding-bottom: calc(7 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-limited--1 .c-cassette-limited__img {
    padding-bottom: calc(1 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-limited--1 .c-cassette-limited__img {
        padding-bottom: calc(6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-limited--2 .c-cassette-limited__img {
    margin-top: calc(-33 / var(--design-width) * 100vw);
    padding-bottom: calc(4 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-limited--2 .c-cassette-limited__img {
        margin-top: calc(-25 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(4 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--3 .c-cassette-limited__img {
    padding-bottom: calc(7 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited--3 .c-cassette-limited__img {
        padding-bottom: calc(7 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-limited--3 .c-cassette-limited__img {
    padding-bottom: calc(1 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-limited--3 .c-cassette-limited__img {
        padding-bottom: calc(6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited__txt {
    padding-bottom: calc(13 / var(--design-width) * 100vw);
    padding-top: calc(8 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited__txt {
        padding-bottom: calc(13 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(8 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-cassette-limited__txt {
    padding-bottom: calc(7 / var(--design-width) * 100vw);
    padding-top: calc(5 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-cassette-limited__txt {
        padding-bottom: calc(9 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(5 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited__ttl {
    --anim-delay: 0.6s;
}
.c-cassette-limited__ttl img {
    width: auto;
    max-width: 100%;
    height: calc(30 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited__ttl img {
        height: calc(30 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--1 .c-cassette-limited__ttl img {
    width: calc(245 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited--1 .c-cassette-limited__ttl img {
        width: calc(245 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited--3 .c-cassette-limited__ttl img {
    width: calc(243 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-limited--3 .c-cassette-limited__ttl img {
        width: calc(245 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-limited__txt-body {
    color: var(--color-theme-2);
    padding-top: calc(12 / var(--design-width) * 100vw);
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 400;
    line-height: 1.7692307692;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-limited__txt-body {
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(12 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-cassette-custom
--------------------------------------------- */
.c-cassette-custom {
    margin-inline: auto;
    width: calc(300 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom {
        width: calc(300 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom + .c-cassette-custom {
    margin-top: calc(33 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom + .c-cassette-custom {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-cassette-custom + .c-cassette-custom {
    margin-top: calc(30 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-cassette-custom + .c-cassette-custom {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom__img {
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-cassette-custom__img {
        width: calc(302 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom__img img {
    display: block;
    width: 100%;
    height: auto;
}
.c-cassette-custom--1 .c-cassette-custom__img {
    transform: translateX(calc(-2 / var(--design-width) * 100vw));
    width: calc(302 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--1 .c-cassette-custom__img {
        transform: translateX(calc(-2 * var(--contents-width) / var(--design-width) * 1px));
        width: calc(299 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-custom--2 .c-cassette-custom__img {
    width: calc(299 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--2 .c-cassette-custom__img {
        width: calc(299 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-custom--3 .c-cassette-custom__img {
    width: calc(299 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--3 .c-cassette-custom__img {
        width: calc(299 * var(--contents-width) / var(--design-width) * 1px);
    }
}

.c-cassette-custom__ttl {
    margin-top: calc(33 / 300 * 100%);
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-cassette-custom__ttl {
        margin-top: calc(33 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom__ttl img {
    display: inline-block;
    height: auto;
    max-width: 100%;
    vertical-align: top;
}
.c-cassette-custom--1 .c-cassette-custom__ttl img {
    width: calc(261 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--1 .c-cassette-custom__ttl img {
        width: calc(261 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom--2 .c-cassette-custom__ttl img {
    width: calc(303 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--2 .c-cassette-custom__ttl img {
        width: calc(303 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom--3 .c-cassette-custom__ttl img {
    width: calc(260 / 300 * 100%);
}
@media screen and (min-width: 751px) {
    .c-cassette-custom--3 .c-cassette-custom__ttl img {
        width: calc(260 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom__order {
    --anim-delay: 0.6s;
    margin-top: calc(27 / 300 * 100%);
    margin-inline: auto;
    width: 100%;
}
@media screen and (min-width: 751px) {
    .c-cassette-custom__order {
        margin-top: calc(27 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-cassette-custom__txt {
    color: var(--color-white-1);
    margin-top: calc(21 / 300 * 100%);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: 1.8571428571;
    font-feature-settings: "palt";
    text-align: justify;
}
@media screen and (min-width: 751px) {
    .c-cassette-custom__txt {
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(23 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    height: calc(714 / var(--design-width) * 100vw);
    position: relative;
}
@media screen and (min-width: 751px) {
    .c-kv {
        height: calc(714 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-kv__main {
    position: relative;
    width: 100%;
}
.c-kv__ttl {
    position: absolute;
    top: calc(61 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(239 / var(--design-width) * 100vw);
    --anim-delay: .9s;
}
@media screen and (min-width: 751px) {
    .c-kv__ttl {
        top: calc(61 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(239 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-kv__sub {
    position: absolute;
    top: calc(164 / var(--design-width) * 100vw);
    right: calc(35 / var(--design-width) * 100vw);
    width: calc(29 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-kv__sub {
        top: calc(164 * var(--contents-width) / var(--design-width) * 1px);
        right: calc(37 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(29 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-kv__date {
    position: absolute;
    bottom: calc(64 / var(--design-width) * 100vw);
    left: calc(50% + -2 / var(--design-width) * 100vw);
    transform: translateX(-50%);
    width: calc(303 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-kv__date {
        bottom: calc(64 * var(--contents-width) / var(--design-width) * 1px);
        left: calc(50% + -2 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(303 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-list-coconut
--------------------------------------------- */
.c-list-coconut {
    width: calc(272 / var(--design-width) * 100%);
    margin-inline: auto;
    margin-bottom: calc(33 / var(--design-width) * 100vw);
    margin-top: calc(44 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-list-coconut {
        width: calc(272 * var(--contents-width) / var(--design-width) * 1px);
        margin-bottom: calc(33 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(44 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-list-coconut__item {
    color: var(--color-yellow-1);
    display: flex;
    font-size: calc(10 / var(--design-width) * 100vw);
    font-weight: 400;
    line-height: 1.8;
    text-align: justify;
}
@media screen and (min-width: 751px) {
    .c-list-coconut__item {
        font-size: calc(10 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-list-coconut__item::before {
    content: "※";
    display: inline-block;
    flex-shrink: 0;
}

/* ---------------------------------------------
*   c-list-note
--------------------------------------------- */
.c-list-note {
    color: var(--color-white-1);
    line-height: 1.4;
    width: calc(330 / var(--design-width) * 100%);
    margin-inline: auto;
    text-align: justify;
}
@media screen and (min-width: 751px) {
    .c-list-note {
        width: calc(330 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-list-note__item {
    display: inline;
    font-family: var(--ff-zenkaku);
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 400;
    letter-spacing: -0.06em;
    line-height: 1;
    font-optical-sizing: auto;
}
@media screen and (min-width: 751px) {
    .c-list-note__item {
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-intro
--------------------------------------------- */
.c-section-intro {
    height: calc(1123 / var(--design-width) * 100vw);
    margin-top: calc(-144 / var(--design-width) * 100vw);
    padding-top: calc(225 / var(--design-width) * 100vw);
    position: relative;
}
body.edge .c-section-intro {
    padding-top: calc(196 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-intro {
        padding-top: calc(225 * var(--contents-width) / var(--design-width) * 1px);
    }
}
@media screen and (min-width: 751px) {
    .c-section-intro {
        height: calc(1123 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(-144 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(225 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__img {
    margin-bottom: calc(135 / var(--design-width) * 100vw);
    position: relative;
}
@media screen and (min-width: 751px) {
    .c-section-intro__img {
        margin-bottom: calc(135 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__img-txt {
    width: calc(265 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-intro__img-txt {
        width: calc(265 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__img-visual {
    width: calc(246 / var(--design-width) * 100vw);
    position: absolute;
    top: calc(100 / var(--design-width) * 100vw);
    left: calc(70 / var(--design-width) * 100vw);
    --anim-delay: .4s;
}
@media screen and (min-width: 751px) {
    .c-section-intro__img-visual {
        width: calc(246 * var(--contents-width) / var(--design-width) * 1px);
        top: calc(100 * var(--contents-width) / var(--design-width) * 1px);
        left: calc(70 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__txt {
    color: var(--color-white-1);
    font-family: var(--ff-serif);
    font-size: calc(16 / var(--design-width) * 100vw);
    font-weight: 600;
    line-height: 1.875;
    letter-spacing: -0.07em;
    margin-inline: auto;
    padding-bottom: calc(330 / var(--design-width) * 100vw);
    padding-top: calc(33 / var(--design-width) * 100vw);
    text-align: center;
    --anim-delay: .8s;
}
@media screen and (min-width: 751px) {
    .c-section-intro__txt {
        font-size: calc(16 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(330 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(35 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__txt p {
    font-feature-settings: "palt" 1;
    font-optical-sizing: auto;
}
body.edge .c-section-intro__txt {
    padding-top: calc(27 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-intro__txt {
        padding-top: calc(27 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__txt-2 {
    margin-top: calc(21 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-intro__txt-2 {
        margin-top: calc(21 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-intro__txt-2 {
    margin-top: calc(18 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-intro__txt-2 {
        margin-top: calc(18 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-intro__txt-strong {
    display: inline-block;
    padding: calc(2.5 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
    background-color: var(--color-theme-1);
    -webkit-box-decoration-break: clone;
            box-decoration-break: clone;
    letter-spacing: -0.06em;
    margin-right: calc(3 / var(--design-width) * 100vw);
    line-height: 1;
}
@media screen and (min-width: 751px) {
    .c-section-intro__txt-strong {
        margin-right: calc(3 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(2 * var(--contents-width) / var(--design-width) * 1px) calc(6 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-intro__txt-strong {
    padding: calc(2 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-intro__txt-strong {
        padding: calc(2 * var(--contents-width) / var(--design-width) * 1px) calc(6 * var(--contents-width) / var(--design-width) * 1px) calc(4 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-about
--------------------------------------------- */
.c-section-about {
    padding-bottom: calc(62 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-about {
        padding-bottom: calc(62 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-about__ttl {
    width: calc(365 / var(--design-width) * 100vw);
    margin-inline: auto;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-about__ttl {
        width: calc(365 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-about__img {
    margin-top: calc(40 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-about__img {
        margin-top: calc(40 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-about__lead {
    margin-top: calc(-35 / var(--design-width) * 100vw);
    width: calc(354 / var(--design-width) * 100vw);
    margin-inline: auto;
    margin-bottom: calc(-43 / var(--design-width) * 100vw);
    --anim-duration: .7s;
}
@media screen and (min-width: 751px) {
    .c-section-about__lead {
        margin-bottom: calc(-43 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(-35 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(354 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-about__txt {
    color: var(--color-white-1);
    text-shadow: 0 0 calc(15 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.7), 0 0 calc(20 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.3);
    margin-top: calc(18 / var(--design-width) * 100vw);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 500;
    letter-spacing: 0.02em;
    font-optical-sizing: auto;
    line-height: 1.9285714286;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-about__txt {
        margin-top: calc(18 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
        text-shadow: 0 0 calc(15 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.7), 0 0 calc(20 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.3);
    }
}

/* ---------------------------------------------
*   c-section-lineup
--------------------------------------------- */
.c-section-lineup {
    padding-bottom: calc(115 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup {
        padding-bottom: calc(115 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__head {
    text-align: center;
}
.c-section-lineup__head img {
    filter: drop-shadow(0 0 3px rgba(207, 35, 0, 0.5)) drop-shadow(0 0 10px rgba(207, 35, 0, 0.2));
    width: calc(321 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-lineup__head img {
        width: calc(321 * var(--contents-width) / var(--design-width) * 1px);
        filter: drop-shadow(0 0 calc(3 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.4)) drop-shadow(0 0 calc(10 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.15));
    }
}
.c-section-lineup__body {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__body {
        margin-top: calc(20 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__item {
    display: flex;
    position: relative;
    width: 100%;
}
.c-section-lineup__item + .c-section-lineup__item {
    margin-top: calc(48 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item + .c-section-lineup__item {
        margin-top: calc(48 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__item--1 {
    justify-content: flex-end;
}
.c-section-lineup__item--1 .c-section-lineup__img {
    width: calc(190 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item--1 .c-section-lineup__img {
        width: calc(190 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__item--1 .c-section-lineup__name {
    left: calc(3 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item--1 .c-section-lineup__name {
        left: calc(-3 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-lineup__item--1 .c-section-lineup__name {
    left: calc(-6 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-lineup__item--1 .c-section-lineup__name {
        left: calc(-6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__item--1 .c-section-lineup__name img {
    filter: drop-shadow(0 0 calc(3 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.4)) drop-shadow(0 0 calc(10 / var(--design-width) * 100vw) rgba(207, 35, 0, 0.15));
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item--1 .c-section-lineup__name img {
        filter: drop-shadow(0 0 calc(3 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.4)) drop-shadow(0 0 calc(10 * var(--contents-width) / var(--design-width) * 1px) rgba(207, 35, 0, 0.15));
    }
}
.c-section-lineup__item--2 {
    justify-content: flex-start;
}
.c-section-lineup__item--2 .c-section-lineup__img {
    width: calc(250 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item--2 .c-section-lineup__img {
        width: calc(250 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__item--2 .c-section-lineup__name {
    right: calc(1 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__item--2 .c-section-lineup__name {
        right: calc(-6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-lineup__item--2 .c-section-lineup__name {
    right: calc(-6 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-lineup__item--2 .c-section-lineup__name {
        right: calc(-6 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-lineup__name {
    position: absolute;
    top: calc(-30 / var(--design-width) * 100vw);
    text-align: center;
    width: calc(205 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-lineup__name {
        top: calc(-30 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(205 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-coconut
--------------------------------------------- */
.c-section-coconut {
    padding-bottom: calc(200 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut {
        padding-bottom: calc(200 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__container {
    background: url(../img/bg_lineup_coconut.png) no-repeat center top;
    background-size: 100% auto;
    margin-inline: auto;
    padding-top: calc(55 / var(--design-width) * 100vw);
    padding-bottom: calc(55 / var(--design-width) * 100vw);
    position: relative;
    width: calc(335 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__container {
        margin-inline: auto;
        padding-top: calc(55 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(55 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(335 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-coconut__container {
    padding-top: calc(40 / var(--design-width) * 100vw);
    padding-bottom: calc(46 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-coconut__container {
        padding-top: calc(55 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(55 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__attention {
    text-align: center;
}
.c-section-coconut__attention-txt {
    color: var(--color-yellow-1);
    font-size: calc(12 / var(--design-width) * 100vw);
    font-weight: 700;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__attention-txt {
        font-size: calc(12 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__attention-link {
    border-bottom: 1px solid var(--color-yellow-1);
    color: var(--color-yellow-1);
    display: inline-block;
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 700;
    letter-spacing: 0.01em;
    font-optical-sizing: auto;
    margin-top: calc(5 / var(--design-width) * 100vw);
    padding-left: calc(4 / var(--design-width) * 100vw);
    will-change: opacity;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-coconut__attention-link {
        transition: opacity var(--hover-duration);
    }
    .c-section-coconut__attention-link:hover {
        opacity: var(--hover-opacity-ratio);
    }
}
@media screen and (min-width: 751px) {
    .c-section-coconut__attention-link {
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(5 * var(--contents-width) / var(--design-width) * 1px);
        padding-left: calc(4 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__attention-link img {
    width: calc(12 / var(--design-width) * 100vw);
    vertical-align: middle;
    margin-left: calc(8 / var(--design-width) * 100vw);
    margin-top: calc(-2 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__attention-link img {
        width: calc(12 * var(--contents-width) / var(--design-width) * 1px);
        margin-left: calc(8 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(-2 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__label {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translate(-50%, 45%);
    width: calc(205 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__label {
        width: calc(205 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__head {
    margin-inline: auto;
    margin-top: calc(8 / var(--design-width) * 100vw);
    width: calc(270 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__head {
        margin-top: calc(8 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(270 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__head {
    margin-top: calc(8 / var(--design-width) * 100vw);
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__head {
        margin-top: calc(8 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__img {
    margin-top: calc(-12 / var(--design-width) * 100vw);
    position: relative;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__img {
        margin-top: calc(-12 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__item--1 {
    margin-left: auto;
    margin-right: calc(16 / var(--design-width) * 100vw);
    position: relative;
    width: calc(245 / var(--design-width) * 100vw);
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__item--1 {
        width: calc(245 * var(--contents-width) / var(--design-width) * 1px);
        margin-right: calc(16 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__item--2 {
    position: absolute;
    bottom: calc(-21 / var(--design-width) * 100vw);
    right: calc(-38 / var(--design-width) * 100vw);
    width: calc(186 / var(--design-width) * 100vw);
    z-index: 2;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__item--2 {
        width: calc(186 * var(--contents-width) / var(--design-width) * 1px);
        bottom: calc(-21 * var(--contents-width) / var(--design-width) * 1px);
        right: calc(-38 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__item--3 {
    position: absolute;
    bottom: calc(0 / var(--design-width) * 100vw);
    left: calc(-38 / var(--design-width) * 100vw);
    width: calc(195 / var(--design-width) * 100vw);
    z-index: 0;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__item--3 {
        width: calc(195 * var(--contents-width) / var(--design-width) * 1px);
        bottom: calc(0 * var(--contents-width) / var(--design-width) * 1px);
        left: calc(-38 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price {
    margin-top: calc(16 / var(--design-width) * 100vw);
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price {
        margin-top: calc(16 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-name {
    font-family: var(--ff-serif);
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 500;
    letter-spacing: -0.06em;
    font-optical-sizing: auto;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-name {
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-name-2 {
    font-family: var(--ff-serif);
    font-size: calc(18 / var(--design-width) * 100vw);
    font-weight: 600;
    letter-spacing: -0.11em;
    font-optical-sizing: auto;
    line-height: 1;
    margin-top: calc(3 / var(--design-width) * 100vw);
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-name-2 {
        font-size: calc(18 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(3 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-marker {
    display: inline-block;
    line-height: 1;
    background: var(--color-theme-1);
    color: var(--color-white-1);
}
.c-section-coconut__price-marker--1 {
    padding: calc(3 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw) calc(4 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-marker--1 {
        padding: calc(3 * var(--contents-width) / var(--design-width) * 1px) calc(4 * var(--contents-width) / var(--design-width) * 1px) calc(4 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-marker--2 {
    padding: calc(1 / var(--design-width) * 100vw) calc(6 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
    --anim-delay: .5s;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-marker--2 {
        padding: calc(1 * var(--contents-width) / var(--design-width) * 1px) calc(6 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px) calc(3 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-price-size {
    color: var(--color-theme-1);
    font-family: var(--ff-serif);
    margin-top: calc(7 / var(--design-width) * 100vw);
    text-align: center;
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 700;
    letter-spacing: 0.02em;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-price-size {
        margin-top: calc(7 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-price-value {
    margin-inline: auto;
    margin-top: calc(11 / var(--design-width) * 100vw);
    width: calc(92 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-price-value {
        width: calc(92 * var(--contents-width) / var(--design-width) * 1px);
        margin-top: calc(11 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-coconut__price-txt {
    color: var(--color-theme-1);
    margin-top: calc(19 / var(--design-width) * 100vw);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 500;
    font-optical-sizing: auto;
    line-height: 1.9285714286;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-coconut__price-txt {
        margin-top: calc(19 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-feature
--------------------------------------------- */
.c-section-feature {
    background-image: url(../img/bg_feature.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    height: calc(2944 / var(--design-width) * 100vw);
    margin-top: calc(-60 / var(--design-width) * 100vw);
    padding-top: calc(148 / var(--design-width) * 100vw);
    position: relative;
    z-index: 2;
}
@media screen and (min-width: 751px) {
    .c-section-feature {
        height: 3374px;
        margin-top: calc(-60 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(150 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-section-feature {
    height: calc(2854 / var(--design-width) * 100vw);
    margin-top: calc(-50 / var(--design-width) * 100vw);
    padding-top: calc(138 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-section-feature {
        height: 3374px;
        margin-top: calc(-60 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(150 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-feature__head {
    margin-inline: auto;
    width: calc(258 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__head {
        width: calc(258 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-feature__loop {
    margin-top: calc(121 / var(--design-width) * 100vw);
    overflow: hidden;
    width: calc(375 / var(--design-width) * 100%);
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
    .c-section-feature__loop {
        margin-top: calc(121 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(375 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-feature__loop {
    margin-top: calc(110 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-feature__loop {
        margin-top: calc(121 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-feature__loop-inner {
    display: flex;
    width: -moz-max-content;
    width: max-content;
    animation: loop-slide 10s linear infinite;
}
.c-section-feature__loop-inner img {
    height: calc(83 / var(--design-width) * 100vw);
    width: auto;
}
@media screen and (min-width: 751px) {
    .c-section-feature__loop-inner img {
        height: calc(83 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-feature__body {
    margin-top: calc(51 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-feature__body {
        margin-top: calc(51 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-feature__body {
    margin-top: calc(35 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-feature__body {
        margin-top: calc(51 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-feature__foot {
    padding-bottom: calc(140 / var(--design-width) * 100vw);
    margin-inline: calc(-20 / 335 * 100%);
    position: relative;
}
@media screen and (min-width: 751px) {
    .c-section-feature__foot {
        padding-bottom: calc(140 * var(--contents-width) / var(--design-width) * 1px);
        margin-inline: 0;
    }
}
.c-section-feature__foot-img {
    position: absolute;
    bottom: calc(45 / var(--design-width) * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(375 / var(--design-width) * 100vw);
    height: auto;
}
@media screen and (min-width: 751px) {
    .c-section-feature__foot-img {
        width: calc(375 * var(--contents-width) / var(--design-width) * 1px);
        bottom: calc(45 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-feature__foot-img {
    bottom: calc(50 / var(--design-width) * 100vw);
    width: calc(364 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-feature__foot-img {
        bottom: calc(45 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(375 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-trivia
--------------------------------------------- */
.c-section-trivia {
    background: url(../img/bg_feature_trivia.png) no-repeat center bottom;
    background-size: 100% auto;
    filter: drop-shadow(0 0 12px rgba(207, 35, 0, 0.35));
    height: calc(608 / var(--design-width) * 100vw);
    margin-top: calc(77 / var(--design-width) * 100vw);
    padding: calc(32 / var(--design-width) * 100vw) calc(0 / var(--design-width) * 100vw) calc(99 / var(--design-width) * 100vw);
    position: relative;
    width: calc(335 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-trivia {
        height: 697px;
        margin-top: calc(77 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(32 * var(--contents-width) / var(--design-width) * 1px) calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(99 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(335 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-trivia {
    height: calc(591 / var(--design-width) * 100vw);
    margin-top: calc(72 / var(--design-width) * 100vw);
    padding: calc(30 / var(--design-width) * 100vw) calc(0 / var(--design-width) * 100vw) calc(97 / var(--design-width) * 100vw);
    width: calc(325 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-trivia {
        height: 697px;
        margin-top: calc(77 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(32 * var(--contents-width) / var(--design-width) * 1px) calc(0 * var(--contents-width) / var(--design-width) * 1px) calc(99 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(335 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__container {
    width: calc(250 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-trivia__container {
        width: calc(250 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__char {
    animation: float 1.5s 0.2s infinite alternate ease-in-out;
    animation-delay: 1s;
    position: absolute;
    top: calc(-40 / var(--design-width) * 100vw);
    left: calc(-12 / var(--design-width) * 100vw);
    width: calc(105 / var(--design-width) * 100vw);
    height: auto;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-section-trivia__char {
        width: calc(105 * var(--contents-width) / var(--design-width) * 1px);
        top: calc(-40 * var(--contents-width) / var(--design-width) * 1px);
        left: calc(-12 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__head {
    width: calc(181 / var(--design-width) * 100vw);
    margin-inline: auto;
    translate: calc(5 / var(--design-width) * 100vw) calc(-0.5 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-trivia__head {
        translate: calc(5 * var(--contents-width) / var(--design-width) * 1px) calc(-0.5 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(181 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__head img {
    width: 100%;
}
.c-section-trivia__body {
    margin-top: calc(28 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-trivia__body {
        margin-top: calc(28 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge .c-section-trivia__body {
    margin-top: calc(25 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge .c-section-trivia__body {
        margin-top: calc(25 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__txt-ttl img {
    width: calc(251 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-trivia__txt-ttl img {
        width: calc(251 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-trivia__txt-body {
    color: var(--color-theme-2);
    margin-top: calc(23 / var(--design-width) * 100vw);
    font-size: calc(14 / var(--design-width) * 100vw);
    font-weight: 400;
    letter-spacing: 0.005em;
    line-height: 1.8571428571;
    text-align: justify;
    font-optical-sizing: auto;
}
@media screen and (min-width: 751px) {
    .c-section-trivia__txt-body {
        margin-top: calc(23 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(14 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-limited
--------------------------------------------- */
.c-section-limited {
    background-image: url(../img/bg_limited.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    margin-top: calc(-48 / var(--design-width) * 100vw);
    padding-bottom: calc(158 / var(--design-width) * 100vw);
    padding-top: calc(115 / var(--design-width) * 100vw);
    position: relative;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-section-limited {
        margin-top: calc(-48 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(160 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(115 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-section-limited {
    margin-top: calc(-45 / var(--design-width) * 100vw);
    padding-bottom: calc(137 / var(--design-width) * 100vw);
    padding-top: calc(110 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-section-limited {
        margin-top: calc(-48 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(160 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(115 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-limited__container {
    width: calc(321 / var(--design-width) * 100%);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-limited__container {
        width: calc(321 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-limited__head {
    text-align: center;
    width: calc(263 / var(--design-width) * 100vw);
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-limited__head {
        width: calc(263 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-limited__head img {
    width: 100%;
}
.c-section-limited__body {
    margin-top: calc(55 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-limited__body {
        margin-top: calc(55 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-section-limited__body {
    margin-top: calc(50 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-section-limited__body {
        margin-top: calc(55 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   c-section-custom
--------------------------------------------- */
.c-section-custom {
    background: url(../img/bg_custom.png) no-repeat center top;
    background-size: 100% auto;
    margin-top: calc(-45 / var(--design-width) * 100%);
    padding-bottom: calc(439 / var(--design-width) * 100%);
    padding-top: calc(84 / var(--design-width) * 100%);
    position: relative;
    z-index: 0;
}
@media screen and (min-width: 751px) {
    .c-section-custom {
        margin-top: calc(-45 * var(--contents-width) / var(--design-width) * 1px);
        padding-top: calc(84 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(439 * var(--contents-width) / var(--design-width) * 1px);
    }
}
body.edge.windows .c-section-custom {
    padding-bottom: calc(430 / var(--design-width) * 100vw);
    padding-top: calc(75 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    body.edge.windows .c-section-custom {
        padding-top: calc(84 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(439 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__head {
    text-align: center;
    margin-inline: auto;
    width: calc(344 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-custom__head {
        width: calc(344 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__head img {
    display: block;
    width: 100%;
    height: auto;
}
.c-section-custom__body {
    margin-top: calc(41 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-custom__body {
        margin-top: calc(41 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__foot {
    position: absolute;
    bottom: calc(-101.5 / var(--design-width) * 100vw);
    left: 49.2%;
    transform: translateX(-50%);
    width: 100%;
}
@media screen and (min-width: 751px) {
    .c-section-custom__foot {
        bottom: calc(-101.5 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__foot-txt {
    margin-inline: auto;
    margin-bottom: calc(-52 / var(--design-width) * 100%);
    width: calc(353 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-custom__foot-txt {
        margin-bottom: calc(-52 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(353 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__foot-txt img {
    display: block;
    width: 100%;
    height: auto;
}
.c-section-custom__foot-img {
    margin-inline: auto;
    transform: translateX(calc(2 / var(--design-width) * 100vw));
    width: calc(375 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-custom__foot-img {
        width: calc(375 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-custom__foot-img img {
    display: block;
    width: 100%;
    height: auto;
}

/* ---------------------------------------------
*   c-section-campaign
--------------------------------------------- */
.c-section-campaign {
    margin-top: calc(64 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-campaign {
        margin-top: calc(64 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__ttl {
    width: calc(405 / var(--design-width) * 100%);
    margin-inline: auto;
    position: relative;
    left: 50%;
    translate: -50% 0;
}
@media screen and (min-width: 751px) {
    .c-section-campaign__ttl {
        width: calc(405 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__body {
    position: relative;
    margin: calc(38 / var(--design-width) * 100vw) auto 0;
    border-radius: calc(10 / var(--design-width) * 100vw);
    background-color: var(--color-white-1);
    overflow: hidden;
    font-family: var(--ff-noto-sans);
    padding-bottom: calc(30 / var(--design-width) * 100vw);
    margin-top: calc(5 / var(--design-width) * 100vw);
    margin-inline: auto;
    width: calc(325 / var(--design-width) * 100%);
}
@media screen and (min-width: 751px) {
    .c-section-campaign__body {
        margin-top: calc(5 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(325 * var(--contents-width) / var(--design-width) * 1px);
        border-radius: calc(10 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(30 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__contents + .c-section-campaign__contents {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media screen and (min-width: 751px) {
    .c-section-campaign__contents + .c-section-campaign__contents {
        margin-top: calc(20 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__heading {
    padding: calc(12 / var(--design-width) * 100vw);
    display: flex;
    justify-content: center;
    color: var(--color-purple-1);
    font-size: calc(22 / var(--design-width) * 100vw);
    font-weight: bold;
    letter-spacing: 0.3em;
    width: 100%;
    background: linear-gradient(135deg, rgb(249, 231, 251) 0%, rgb(196, 160, 218) 100%);
}
@media screen and (min-width: 751px) {
    .c-section-campaign__heading {
        padding: calc(12 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(22 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__heading--2 {
    background: linear-gradient(135deg, #f9def6 0%, #e5a6d6 100%);
}
.c-section-campaign__heading-num {
    font-family: var(--ff-worksans);
    font-size: calc(28 / var(--design-width) * 100vw);
    line-height: 1;
    transform: translateY(11%);
    font-weight: 500;
}
@media screen and (min-width: 751px) {
    .c-section-campaign__heading-num {
        font-size: calc(28 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__inner {
    padding: calc(28 / var(--design-width) * 100vw) calc(15 / var(--design-width) * 100vw) 0;
}
@media screen and (min-width: 751px) {
    .c-section-campaign__inner {
        padding: calc(28 * var(--contents-width) / var(--design-width) * 1px) calc(15 * var(--contents-width) / var(--design-width) * 1px) 0;
    }
}
.c-section-campaign__date {
    display: block;
    width: 100%;
}
.c-section-campaign__date img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-section-campaign__date--small {
    width: 82%;
    margin-inline: auto;
}
.c-section-campaign__txt-wrap {
    margin-top: calc(27 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__txt-wrap {
        margin-top: calc(27 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__txt {
    text-align: center;
    color: #2e0b0e;
    font-size: calc(16 / var(--design-width) * 100vw);
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -0.01em;
    white-space: nowrap;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__txt {
        font-size: calc(16 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__box {
    margin: calc(38 / var(--design-width) * 100vw) auto 0;
    padding: calc(17 / var(--design-width) * 100vw) calc(20 / var(--design-width) * 100vw);
    border-radius: calc(10 / var(--design-width) * 100vw);
    background: linear-gradient(135deg, rgb(249, 231, 251) 0%, rgb(196, 160, 218) 100%);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__box {
        margin-top: calc(38 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(20 * var(--contents-width) / var(--design-width) * 1px) calc(20 * var(--contents-width) / var(--design-width) * 1px) calc(17 * var(--contents-width) / var(--design-width) * 1px);
        border-radius: calc(10 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__box--2 {
    background: #fffadc;
}
.c-section-campaign__box + .c-section-campaign__box {
    margin-top: calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__box + .c-section-campaign__box {
        margin-top: calc(20 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__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__box-icon {
        width: calc(27 * var(--contents-width) / var(--design-width) * 1px);
        margin-bottom: calc(10 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__box-icon img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-section-campaign__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__box-list-item {
        margin-bottom: calc(8 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__box-list-item:last-of-type {
    margin-bottom: 0;
}
.c-section-campaign__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 #ff9d00;
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: 600;
    line-height: 1;
    color: #ff9d00;
    padding: calc(2 / var(--design-width) * 100vw) calc(7 / var(--design-width) * 100vw) calc(3 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__box-list-label {
        margin-right: calc(10 * var(--contents-width) / var(--design-width) * 1px);
        padding: calc(3 * var(--contents-width) / var(--design-width) * 1px) calc(7 * var(--contents-width) / var(--design-width) * 1px) calc(4 * var(--contents-width) / var(--design-width) * 1px);
        border-radius: calc(4 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__box-list-txt {
    color: #2e0b0e;
    font-feature-settings: "palt";
    font-size: calc(13 / var(--design-width) * 100vw);
    font-weight: bold;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__box-list-txt {
        margin-top: calc(1 * var(--contents-width) / var(--design-width) * 1px);
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__btn {
    display: block;
    margin: calc(14 / var(--design-width) * 100vw) auto 0;
    width: 100%;
    backface-visibility: hidden;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-campaign__btn {
        transition: opacity 0.3s;
    }
    .c-section-campaign__btn:hover {
        opacity: 0.8;
    }
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__btn {
        margin-top: calc(14 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__btn img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-section-campaign__link-outer {
    margin-top: calc(23 / var(--design-width) * 100vw);
    text-align: center;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__link-outer {
        margin-top: calc(23 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__link {
    display: inline-block;
    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 #231815;
    color: #231815;
    font-weight: 700;
    font-family: var(--ff-zenkaku);
    backface-visibility: hidden;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-campaign__link {
        transition: opacity 0.3s;
    }
    .c-section-campaign__link:hover {
        opacity: 0.8;
    }
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__link {
        font-size: calc(13 * var(--contents-width) / var(--design-width) * 1px);
        padding-right: calc(18 * var(--contents-width) / var(--design-width) * 1px);
        padding-bottom: calc(5 * var(--contents-width) / var(--design-width) * 1px);
        border-bottom-width: calc(1.7 * var(--contents-width) / var(--design-width) * 1px);
    }
}
.c-section-campaign__link::after {
    content: "";
    position: absolute;
    top: 20%;
    right: calc(2 / var(--design-width) * 100vw);
    width: calc(12 / var(--design-width) * 100vw);
    aspect-ratio: 1/1;
    background: url(../img/ico_campaign_link.svg) no-repeat center center/cover;
}
@media print, screen and (min-width: 751px) {
    .c-section-campaign__link::after {
        right: calc(2 * var(--contents-width) / var(--design-width) * 1px);
        width: calc(12 * var(--contents-width) / var(--design-width) * 1px);
    }
}

/* ---------------------------------------------
*   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;
}

/* ---------------------------------------------
*   js-bg-reveal
*   背景のベタ塗りだけが左から右にワイプ出現
*   ::before 擬似要素のスケールを制御
*   発火: IntersectionObserver → is-active 付与
*
*   使用例: c-cassette-feature__lead-text
*   前提: 当該要素に position: relative; overflow: hidden;
*         ::before で background-color を定義すること
--------------------------------------------- */
.js-bg-reveal::before {
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.5s ease-in-out var(--anim-delay, 0s);
}
.js-bg-reveal.is-active::before {
    transform: scaleX(1);
}

/* ---------------------------------------------
*   js-clipin-left
*   左から右にクリップイン（clip-path で領域を展開）
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-clipin-left {
    clip-path: circle(0% at 0 100%);
    transition: clip-path var(--anim-duration, 0.5s) linear var(--anim-delay, 0s);
    will-change: clip-path;
}
.js-clipin-left.is-active {
    clip-path: circle(150% at 0 100%);
}

/* ---------------------------------------------
*   js-blur-in
*   ぼかし状態から鮮明に（blur to focus）
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-blur-in {
    filter: blur(10px);
    opacity: 0.6;
    transition: filter 1s ease-out var(--anim-delay, 0s), opacity 1s ease-out var(--anim-delay, 0s);
}
.js-blur-in.is-active {
    filter: blur(0);
    opacity: 1;
}

/* ---------------------------------------------
*   js-fade-in
*   方向なしフェードイン（既存 common.js で制御）
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-fade-in {
    opacity: 0;
    transition: opacity 1s ease-out var(--anim-delay, 0s);
}
.js-fade-in.is-active {
    opacity: 1;
}

/* ---------------------------------------------
*   js-fade-up
*   下から上にフェードイン
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-fade-up {
    opacity: 0;
    transform: translateY(calc(20 / var(--design-width) * 100vw));
    transition: opacity 1s ease-out var(--anim-delay, 0s), transform 1s ease-out var(--anim-delay, 0s);
}
@media screen and (min-width: 751px) {
    .js-fade-up {
        transform: translateY(calc(20 * var(--contents-width) / var(--design-width) * 1px));
    }
}
.js-fade-up.is-active {
    opacity: 1;
    transform: translateY(0);
}

/* ---------------------------------------------
*   js-fade-left
*   左方向からフェードイン
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-fade-left {
    opacity: 0;
    transform: translateX(calc(-30 / var(--design-width) * 100vw));
    transition: opacity 1s ease-out var(--anim-delay, 0s), transform 1s ease-out var(--anim-delay, 0s);
}
@media screen and (min-width: 751px) {
    .js-fade-left {
        transform: translateX(calc(-30 * var(--contents-width) / var(--design-width) * 1px));
    }
}
.js-fade-left.is-active {
    opacity: 1;
    transform: translateX(0);
}

/* ---------------------------------------------
*   js-fade-right
*   右方向からフェードイン
*   発火: IntersectionObserver → is-active 付与
--------------------------------------------- */
.js-fade-right {
    opacity: 0;
    transform: translateX(calc(30 / var(--design-width) * 100vw));
    transition: opacity 1s ease-out var(--anim-delay, 0s), transform 1s ease-out var(--anim-delay, 0s);
}
@media screen and (min-width: 751px) {
    .js-fade-right {
        transform: translateX(calc(30 * var(--contents-width) / var(--design-width) * 1px));
    }
}
.js-fade-right.is-active {
    opacity: 1;
    transform: translateX(0);
}

/* ---------------------------------------------
*   float
*   使用箇所: c-section-now-how__char (ふわふわ浮遊・常時ループ)
--------------------------------------------- */
@keyframes float {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(15px);
    }
}
/* ---------------------------------------------
*   loop-slide
*   使用箇所: c-section-feature__loop-inner (文字ループスクロール・常時ループ)
*   2枚の画像を横並びにした状態で -50% 移動することでシームレスなループを実現
--------------------------------------------- */
@keyframes loop-slide {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
@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;
    }
}