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

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

/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}
.l-header__container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 5.8% 2.6666666667% 0 6.466667%;
}
.l-header__ttl {
    width: 68.8vw;
}
@media screen and (min-width: 751px) {
    .l-header__ttl {
        width: 295.84px;
    }
}
.l-header__logo {
    width: 11.8666666667vw;
}
@media screen and (min-width: 751px) {
    .l-header__logo {
        width: 51.0266666667px;
    }
}
.l-header__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity 300ms;
    }
    .l-header__logo-link:hover {
        opacity: 0.8;
    }
}
.l-header__logo-link img {
    width: 100%;
}

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

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

/* ---------------------------------------------
*   c-block-loading
--------------------------------------------- */
.c-block-loading {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100svh;
    background: url(../img/bg_load.jpg) 0 0 no-repeat;
    background-size: 100% 100%;
}
@media screen and (max-width: 750px) {
    .c-block-loading {
        transition-timing-function: ease-out;
        transition-duration: 1.2s;
    }
}
.mac.safari .c-block-loading {
    transition-duration: 1.2s;
}

.is-loaded .c-block-loading {
    animation-name: animation-clip-path;
    animation-duration: 2s;
    animation-delay: 1s;
    animation-fill-mode: forwards;
    pointer-events: none;
}

@keyframes animation-clip-path {
    0% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 140%, 0% 100%);
                clip-path: polygon(0 0, 100% 0, 100% 140%, 0% 100%);
    }
    50% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 140%, 0% 100%);
                clip-path: polygon(0 0, 100% 0, 100% 140%, 0% 100%);
    }
    100% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
                clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    }
}
.c-block-loading__container {
    margin-top: 50px;
}
.c-block-loading__img {
    display: block;
    width: 97px;
    opacity: 0;
    margin: 0 auto 10.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-block-loading__img {
        width: 111.2266666667px;
        margin: 0 auto 45.8666666667px;
    }
}
.is-loaded .c-block-loading__img {
    animation-name: animation-fade;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
}

.c-block-loading__img--2 {
    width: 75px;
    margin: 0 auto 0;
}
@media screen and (min-width: 751px) {
    .c-block-loading__img--2 {
        width: 86px;
        margin: 0 auto 0;
    }
}
.is-loaded .c-block-loading__img--2 {
    animation-delay: 0.3s;
}

.c-block-loading__img img {
    transition: opacity 0.8s 1.5s;
}
.is-loaded .c-block-loading__img img {
    opacity: 0;
}

@keyframes animation-fade {
    0% {
        opacity: 0;
        transform: translateY(20%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ---------------------------------------------
*   c-block-bg
--------------------------------------------- */
.c-block-bg {
    position: fixed;
    opacity: 1;
    inset: 0;
    opacity: 0;
}
.is-loaded .c-block-bg {
    opacity: 1;
}

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

/* ---------------------------------------------
*   c-block-bnr
--------------------------------------------- */
.c-block-bnr {
    width: 77.0666666667vw;
    margin: 0 auto;
    animation-name: animation-fade-bnr;
    animation-duration: 0.8s;
    animation-delay: 3.5s;
    animation-fill-mode: forwards;
    opacity: 0;
}
@media screen and (min-width: 751px) {
    .c-block-bnr {
        width: 331.3866666667px;
    }
}
.c-block-bnr__img {
    display: block;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) and (min-width: 750px) {
    .c-block-bnr__img {
        transition: opacity 300ms;
    }
    .c-block-bnr__img:hover {
        opacity: 0.8;
    }
}
@keyframes animation-fade-bnr {
    0% {
        transform: translateY(50%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ---------------------------------------------
*   c-block-img
--------------------------------------------- */
.c-block-img {
    position: relative;
    margin-top: -18.6666666667vw;
    -webkit-clip-path: polygon(0 34%, 100% 19%, 100% 100%, 0 100%);
            clip-path: polygon(0 34%, 100% 19%, 100% 100%, 0 100%);
}
@media screen and (min-width: 751px) {
    .c-block-img {
        margin-top: -80.2666666667px;
    }
}

/* ---------------------------------------------
*   c-block-intro
--------------------------------------------- */
.c-block-intro {
    position: relative;
    padding-top: 45.0666666667%;
    padding-bottom: 47.2%;
    background-color: #ff96a1;
}
.c-block-intro__bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.c-block-intro__bg img {
    width: 100%;
}
.c-block-intro__container {
    position: relative;
    z-index: 1;
    padding-left: 16%;
}
.c-block-intro__img-float-top {
    position: absolute;
    top: -49.8666666667vw;
    right: 0;
    z-index: -1;
    width: 64%;
}
@media screen and (min-width: 751px) {
    .c-block-intro__img-float-top {
        top: -214.4266666667px;
    }
}
.c-block-intro__img-float-top img {
    width: 100%;
}
.c-block-intro__ttl-img {
    display: block;
}
.c-block-intro__ttl-img.js-curtain {
    transition: -webkit-clip-path 0.4s;
    transition: clip-path 0.4s;
    transition: clip-path 0.4s, -webkit-clip-path 0.4s;
}
.c-block-intro__ttl-img:not(:first-of-type) {
    margin-top: 4.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttl-img:not(:first-of-type) {
        margin-top: 10px;
    }
}
.c-block-intro__ttl-img:nth-of-type(1) {
    width: 108.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttl-img:nth-of-type(1) {
        width: 233px;
    }
}
.c-block-intro__ttl-img:nth-of-type(2) {
    width: 150.4vw;
    transition-delay: 0.2s;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttl-img:nth-of-type(2) {
        width: 323px;
    }
}
.c-block-intro__ttl-img:nth-of-type(3) {
    width: 65.0666666667vw;
    transition-delay: 0.4s;
}
@media screen and (min-width: 751px) {
    .c-block-intro__ttl-img:nth-of-type(3) {
        width: 140px;
    }
}
.c-block-intro__ttl-img img {
    width: 100%;
}
.c-block-intro__lead {
    margin-top: 14.1333333333vw;
    font-size: 8vw;
    font-weight: bold;
    line-height: 2.4;
    letter-spacing: 0.085em;
}
@media screen and (min-width: 751px) {
    .c-block-intro__lead {
        margin-top: 60.7733333333px;
        font-size: 34.4px;
    }
}
.mac.safari .c-block-intro__lead {
    letter-spacing: 0.077em;
}
@media screen and (min-width: 751px) {
    .mac.safari .c-block-intro__lead {
        letter-spacing: 0.08em;
    }
}

@media screen and (max-width: 750px) {
    .windows.chrome .c-block-intro__lead, .windows.edge .c-block-intro__lead {
        letter-spacing: 0.056em;
    }
}

.c-block-intro__lead:not(:first-of-type) {
    margin-top: 6.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-block-intro__lead:not(:first-of-type) {
        margin-top: 26.3733333333px;
    }
}
.c-block-intro__lead-img {
    position: relative;
    top: -0.2em;
    display: inline-flex;
    vertical-align: middle;
}
.c-block-intro__lead-img--01 {
    width: 76.1904761905%;
    margin-left: 0.6%;
}
.c-block-intro__lead-img--02 {
    width: 160.3174603175%;
    margin-right: 1.8%;
}
.c-block-intro__lead-img--03 {
    width: 93.3333333333%;
    margin-right: 1.2%;
    margin-left: 0.6%;
}
.c-block-intro__lead-img img {
    width: 100%;
}
.c-block-intro__img-float-bottom {
    position: absolute;
    bottom: 1.3333333333vw;
    left: 0;
    width: 92.2666666667%;
}
@media screen and (min-width: 751px) {
    .c-block-intro__img-float-bottom {
        bottom: 5.7333333333px;
    }
}
.c-block-intro__img-float-bottom img {
    width: 100%;
}

/* ---------------------------------------------
*   c-block-monthly
--------------------------------------------- */
.c-block-monthly {
    padding-bottom: 44.2666666667vw;
    background-color: #ffc5cb;
    padding-inline: 15.7333333333%;
}
@media screen and (min-width: 751px) {
    .c-block-monthly {
        padding-bottom: 190.3466666667px;
    }
}
.c-block-monthly__inner {
    padding-block: 24vw 20vw;
    border-radius: 2.6666666667vw;
    background-color: rgba(255, 147, 154, 0.6);
}
@media screen and (min-width: 751px) {
    .c-block-monthly__inner {
        padding-block: 103.2px 86px;
        border-radius: 11.4666666667px;
    }
}
.c-block-monthly__img {
    position: relative;
    left: 1.0666666667vw;
    width: 72.2662440571%;
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-block-monthly__img {
        left: 4.5866666667px;
    }
}
.c-block-monthly__img img {
    width: 100%;
}

/* ---------------------------------------------
*   c-block-3
--------------------------------------------- */
.c-block-3 {
    position: relative;
    padding-top: 18.0333333333%;
    padding-bottom: 20.6666666667%;
    background-color: #FCECE9;
}
.c-section-2 + .c-block-3 {
    padding-top: 60%;
}

.c-block-3__lead {
    width: 100%;
}
.c-block-3__list {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 12.3%;
    margin-top: 10.6666666667%;
}
.c-block-3__list-item:first-of-type {
    width: 9.0666666667%;
}
.c-block-3__list-item:nth-of-type(2) {
    width: 9.0666666667%;
}
.c-block-3__list-item:nth-of-type(3) {
    width: 4.8%;
}
.c-block-3__list-item:nth-of-type(4) {
    width: 9.0666666667%;
}
.c-block-3__list-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-block-3__list-link {
        transition: opacity 300ms;
    }
    .c-block-3__list-link:hover {
        opacity: 0.8;
    }
}
.c-block-3__list-link img {
    width: 100%;
}

/* ---------------------------------------------
*   c-cassette-lineup
--------------------------------------------- */
.c-cassette-lineup + .c-cassette-lineup {
    margin-top: 10.4666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup + .c-cassette-lineup {
        margin-top: 45.0066666667px;
    }
}
.c-cassette-lineup__img {
    position: relative;
    width: 52.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__img {
        width: 226.7533333333px;
    }
}
.c-cassette-lineup__container {
    overflow: hidden;
}
.c-cassette-lineup__bnr-txt {
    display: block;
    width: -moz-max-content;
    width: max-content;
    white-space: nowrap;
    font-feature-settings: "palt";
    font-family: "Playfair Display", serif;
    font-weight: 800;
    line-height: 0.8;
    font-size: 16vw;
    letter-spacing: -0.02em;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__bnr-txt {
        font-size: 68.8px;
    }
}
.c-cassette-lineup__bnr-txt--s {
    font-size: 9.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__bnr-txt--s {
        font-size: 42.4266666667px;
    }
}
.c-cassette-lineup__bnr-txt--s span {
    line-height: 1.2;
}
.c-cassette-lineup__inner {
    display: flex;
    justify-content: flex-end;
    margin-top: -36.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__inner {
        margin-top: -157.0933333333px;
    }
}
.c-cassette-lineup__inner--left {
    flex-direction: row-reverse;
    justify-content: center;
}
.c-cassette-lineup__inner--left .c-cassette-lineup__img {
    transform: translateX(5.0666666667vw);
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__inner--left .c-cassette-lineup__img {
        transform: translateX(21.7866666667px);
    }
}
.c-cassette-lineup__product {
    text-align: left;
    margin-top: 37.3333333333vw;
    margin-right: 10.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product {
        margin-top: 160.5333333333px;
        margin-right: 45.8666666667px;
    }
}
.c-cassette-lineup__product--right {
    text-align: right;
    margin-top: 36.5333333333vw;
    margin-right: 6.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__product--right {
        margin-top: 157.0933333333px;
        margin-right: 26.3733333333px;
    }
}
.c-cassette-lineup__name {
    display: block;
    font-feature-settings: "palt";
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 5.3333333333vw;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: -0.1em;
    color: #E74632;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__name {
        font-size: 22.9333333333px;
    }
}
.c-cassette-lineup__name--2 {
    color: #F3889E;
}
.c-cassette-lineup__name--3 {
    color: #FF9232;
}
.c-cassette-lineup__name--s {
    font-size: 3.2vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__name--s {
        font-size: 13.76px;
    }
}
.windows .c-cassette-lineup__name {
    letter-spacing: -0.12em;
}

.c-cassette-lineup__num {
    display: block;
    width: 15.2vw;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__num {
        width: 65.36px;
        margin-top: 4.5866666667px;
    }
}
.c-cassette-lineup__num--right {
    width: 13.6vw;
    margin-right: 0;
    margin-left: auto;
}
@media screen and (min-width: 751px) {
    .c-cassette-lineup__num--right {
        width: 58.48px;
    }
}

/* ---------------------------------------------
*   c-cassette-feature
--------------------------------------------- */
.c-cassette-feature {
    margin-top: 7.7333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature {
        margin-top: 33.2533333333px;
    }
}
.c-cassette-feature + .c-cassette-feature {
    margin-top: 16.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature + .c-cassette-feature {
        margin-top: 69.3733333333px;
    }
}
.c-cassette-feature + .c-cassette-feature + .c-cassette-feature {
    margin-top: 12.2333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature + .c-cassette-feature + .c-cassette-feature {
        margin-top: 52.6033333333px;
    }
}
.c-cassette-feature__ttl-wrap--2 {
    position: relative;
    z-index: 1;
}
.c-cassette-feature__ttl {
    position: relative;
    display: flex;
    line-height: 0.8;
    margin-left: 8vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl {
        margin-left: 34.4px;
    }
}
.c-cassette-feature__ttl--left {
    flex-direction: row-reverse;
    justify-content: flex-end;
    margin-left: 0;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl--left {
        margin-left: 0;
    }
}
.c-cassette-feature__ttl-num {
    display: block;
    font-feature-settings: "palt";
    font-family: "Playfair Display", serif;
    font-weight: 800;
    font-size: 4.5333333333vw;
    letter-spacing: -0.045em;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-num {
        font-size: 19.4933333333px;
    }
}
.c-cassette-feature__ttl-txt {
    font-feature-settings: "palt";
    font-family: "Playfair Display", serif;
    font-weight: 800;
    font-size: 19.2vw;
    letter-spacing: -0.045em;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-txt {
        font-size: 82.56px;
    }
}
.c-cassette-feature__ttl-logo--1 {
    width: 13.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-logo--1 {
        width: 59.6266666667px;
    }
}
.c-cassette-feature__ttl-logo--2 {
    position: relative;
    width: 40vw;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-logo--2 {
        width: 172px;
    }
}
.c-cassette-feature__ttl-logo--3 {
    width: 46.1333333333vw;
    margin-top: -5.8666666667vw;
    margin-left: 2.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__ttl-logo--3 {
        width: 198.3733333333px;
        margin-top: -25.2266666667px;
        margin-left: 12.6133333333px;
    }
}
.c-cassette-feature__img {
    width: 73.6vw;
    margin: -7.7333333333vw 0 0 auto;
    -webkit-clip-path: ellipse(0% 20% at 50% 100%);
            clip-path: ellipse(0% 20% at 50% 100%);
    transition: -webkit-clip-path 3s;
    transition: clip-path 3s;
    transition: clip-path 3s, -webkit-clip-path 3s;
    transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.c-cassette-feature__img.is-active {
    -webkit-clip-path: ellipse(150% 150% at 50% 50%);
            clip-path: ellipse(150% 150% at 50% 50%);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img {
        width: 316.48px;
        margin: -33.2533333333px 0 0 auto;
    }
}
.c-cassette-feature__img--left {
    width: 74.9333333333vw;
    margin-left: 0;
    margin-right: auto;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--left {
        width: 322.2133333333px;
    }
}
.c-cassette-feature__img--1 {
    position: relative;
}
.c-cassette-feature__img--1::before {
    content: "";
    position: absolute;
    background: url(../img/img_kira2.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 10.5333333333vw;
    height: 11.36vw;
    top: 40.8vw;
    left: -19.2vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--1::before {
        width: 45.2933333333px;
        height: 48.848px;
        top: 175.44px;
        left: -82.56px;
    }
}
.c-cassette-feature__img--3 {
    position: relative;
    margin-top: 4.8333333333vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--3 {
        margin-top: 20.7833333333px;
    }
}
.c-cassette-feature__img--3::before {
    content: "";
    position: absolute;
    background: url(../img/img_kira2.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 10.5333333333vw;
    height: 11.36vw;
    top: 3.2vw;
    left: -18.6666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__img--3::before {
        width: 45.2933333333px;
        height: 48.848px;
        top: 13.76px;
        left: -80.2666666667px;
    }
}
.c-cassette-feature__wrap {
    margin-left: 8vw;
    margin-top: -12.5333333333vw;
    -webkit-clip-path: ellipse(0% 20% at 50% 100%);
            clip-path: ellipse(0% 20% at 50% 100%);
    transition: -webkit-clip-path 3s;
    transition: clip-path 3s;
    transition: clip-path 3s, -webkit-clip-path 3s;
    transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
.c-cassette-feature__wrap.is-active {
    -webkit-clip-path: ellipse(150% 150% at 50% 50%);
            clip-path: ellipse(150% 150% at 50% 50%);
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__wrap {
        margin-left: 34.4px;
        margin-top: -53.8933333333px;
    }
}
.c-cassette-feature__wrap--right {
    width: 56vw;
    margin: -12.4666666667vw 2.6vw 0 auto;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__wrap--right {
        width: 240.8px;
        margin: -53.6066666667px 11.18px 0 auto;
    }
}
.c-cassette-feature__lead {
    font-feature-settings: "palt";
    font-family: "Shippori Mincho", serif;
    font-weight: 500;
    font-size: 8vw;
    line-height: 1.1;
    letter-spacing: -0.05em;
    scale: 0.9 1;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead {
        font-size: 34.4px;
    }
}
.c-cassette-feature__lead--1 {
    margin-left: -4.8vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead--1 {
        margin-left: -20.64px;
    }
}
.c-cassette-feature__lead--2 {
    margin-left: -3.2vw;
    letter-spacing: -0.16em;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead--2 {
        margin-left: -13.76px;
    }
}
.c-cassette-feature__lead--3 {
    margin-left: -4.8vw;
    letter-spacing: -0.15em;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__lead--3 {
        margin-left: -20.64px;
    }
}
.c-cassette-feature__txt {
    width: 56vw;
    margin-top: 3.4666666667vw;
    font-feature-settings: "palt";
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
    font-size: 3.4666666667vw;
    line-height: 1.5384615385;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt {
        width: 240.8px;
        font-size: 14.9066666667px;
        margin-top: 14.9066666667px;
    }
}
.c-cassette-feature__txt--2 {
    width: 52vw;
    letter-spacing: -0.08em;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt--2 {
        width: 223.6px;
    }
}
.c-cassette-feature__txt--3 {
    width: 55vw;
    margin-top: 1.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-cassette-feature__txt--3 {
        width: 236.5px;
        margin-top: 4.5866666667px;
    }
}

/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    width: 100%;
}

/* ---------------------------------------------
*   c-section
--------------------------------------------- */
.c-section-intro {
    position: relative;
    background: url(../img/bg_img1.png) 0 0 no-repeat;
    background-size: 100% auto;
    margin-top: -33.0666666667vw;
    z-index: 1;
}
@media screen and (min-width: 751px) {
    .c-section-intro {
        margin-top: -142.1866666667px;
    }
}
.c-section-intro__head {
    padding-top: 16.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__head {
        padding-top: 71.0933333333px;
    }
}
.c-section-intro__body {
    background: url(../img/bg_intro.png) 0 0 no-repeat;
    background-size: 100% auto;
    margin-top: -9.0666666667vw;
    padding-top: 15.12vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__body {
        padding-top: 65.016px;
        margin-top: -40.1333333333px;
    }
}
.c-section-intro__wrap {
    position: relative;
}
.c-section-intro__img {
    width: 62.4vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-intro__img {
        width: 268.32px;
    }
}
.c-section-intro__kira {
    position: absolute;
}
.c-section-intro__kira--1 {
    width: 4vw;
    top: -0.4375rem;
    left: 13.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--1 {
        width: 17.2px;
        top: -8.0266666667px;
        left: 59.6266666667px;
    }
}
.c-section-intro__kira--2 {
    width: 6.6666666667vw;
    top: 0;
    left: 26.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--2 {
        width: 28.6666666667px;
        top: 0;
        left: 115.8133333333px;
    }
}
.c-section-intro__kira--3 {
    width: 3.2vw;
    top: -0.5625rem;
    left: 41.6vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--3 {
        width: 13.76px;
        top: -10.32px;
        left: 178.88px;
    }
}
.c-section-intro__kira--4 {
    width: 4vw;
    top: -1.5rem;
    right: 12.8vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--4 {
        width: 17.2px;
        top: -27.52px;
        right: 55.04px;
    }
}
.c-section-intro__kira--5 {
    width: 4vw;
    bottom: -0.8125rem;
    left: 10.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--5 {
        width: 17.2px;
        bottom: -14.9066666667px;
        left: 43.5733333333px;
    }
}
.c-section-intro__kira--6 {
    width: 5.6vw;
    bottom: -2.5625rem;
    left: 12.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--6 {
        width: 24.08px;
        bottom: -47.0133333333px;
        left: 53.8933333333px;
    }
}
.c-section-intro__kira--7 {
    width: 4vw;
    bottom: 1.0625rem;
    right: 26.4vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__kira--7 {
        width: 17.2px;
        bottom: 19.4933333333px;
        right: 113.52px;
    }
}
.c-section-intro__ttl {
    font-feature-settings: "palt";
    font-family: "Shippori Mincho", serif;
    font-weight: 800;
    font-size: 12.2666666667vw;
    line-height: 1.234783;
    letter-spacing: -0.15em;
    text-align: center;
    scale: 0.8 1;
}
@media screen and (min-width: 751px) {
    .c-section-intro__ttl {
        font-size: 52.7466666667px;
    }
}
.c-section-intro__sub-ttl {
    font-feature-settings: "palt";
    font-size: 5.8666666667vw;
    line-height: 1.1818181818;
    letter-spacing: 0.02em;
    text-align: center;
    margin-top: 0.5333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__sub-ttl {
        font-size: 25.2266666667px;
        margin-top: 2.2933333333px;
    }
}
.c-section-intro__lead-wrap {
    width: 82.6666666667vw;
    margin: 8vw auto 0;
    padding-left: 1.8666666667vw;
    text-align: left;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead-wrap {
        width: 355.4666666667px;
        margin: 34.4px auto 0;
        padding-left: 8.0266666667px;
    }
}
.c-section-intro__lead {
    font-feature-settings: "palt";
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
    font-size: 3.7333333333vw;
    line-height: 1.8571428571;
    letter-spacing: -0.03em;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead {
        font-size: 16.0533333333px;
    }
}
.c-section-intro__lead:nth-of-type(2) {
    margin-top: 3.2vw;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead:nth-of-type(2) {
        margin-top: 13.76px;
    }
}
.c-section-intro__lead-txt {
    display: block;
}
.c-section-intro__lead-txt--underline1 {
    position: relative;
}
.c-section-intro__lead-txt--underline1::before {
    content: "";
    position: absolute;
    width: 55.7333333333vw;
    height: 1.6vw;
    bottom: 0.8vw;
    background-color: rgb(255, 160, 178);
    z-index: -1;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead-txt--underline1::before {
        width: 239.6533333333px;
        height: 6.88px;
        bottom: 3.44px;
    }
}
.c-section-intro__lead-txt--underline2 {
    position: relative;
}
.c-section-intro__lead-txt--underline2::before {
    content: "";
    position: absolute;
    width: 54.8vw;
    height: 1.6vw;
    bottom: 0.8vw;
    left: 12.5333333333vw;
    background-color: rgb(255, 160, 178);
    z-index: -1;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead-txt--underline2::before {
        width: 235.64px;
        height: 6.88px;
        bottom: 3.44px;
        left: 53.8933333333px;
    }
}
.c-section-intro__lead-txt--underline3 {
    position: relative;
}
.c-section-intro__lead-txt--underline3::before {
    content: "";
    position: absolute;
    width: 55.7333333333vw;
    height: 1.6vw;
    bottom: 0.8vw;
    background-color: rgb(255, 160, 178);
    z-index: -1;
}
@media screen and (min-width: 751px) {
    .c-section-intro__lead-txt--underline3::before {
        width: 239.6533333333px;
        height: 6.88px;
        bottom: 3.44px;
    }
}
.c-section-intro__bottom-img {
    width: 66.1333333333vw;
    margin-right: 0;
    margin-left: auto;
    margin: -2.4vw 0 0 auto;
}
@media screen and (min-width: 751px) {
    .c-section-intro__bottom-img {
        width: 284.3733333333px;
        margin: -10.32px 0 0 auto;
    }
}

/* ---------------------------------------------
*   c-section-lineup
--------------------------------------------- */
.c-section-lineup {
    position: relative;
    margin-top: -1.3333333333vw;
    padding-bottom: 7.4666666667vw;
    background-color: #F5E6E3;
}
@media screen and (min-width: 751px) {
    .c-section-lineup {
        margin-top: -5.7333333333px;
        padding-bottom: 32.1066666667px;
    }
}
.c-section-lineup::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 35.6622133333vw;
    top: -35.6231112vw;
    left: 0;
    background-color: #F5E6E3;
}
@media screen and (min-width: 751px) {
    .c-section-lineup::before {
        width: 430px;
        height: 153.3475173333px;
        top: -153.17937816px;
    }
}
.c-section-lineup__head {
    margin-bottom: 11.4666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-lineup__head {
        margin-bottom: 49.3066666667px;
    }
}

/* ---------------------------------------------
*   c-section-feature
--------------------------------------------- */
.c-section-feature {
    position: relative;
    background-color: #FFBCD0;
    margin-top: -2.9333333333vw;
    padding-bottom: 12.0666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-feature {
        margin-top: -12.6133333333px;
        padding-bottom: 51.8866666667px;
    }
}
.c-section-feature::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 21.3333333333vw;
    top: -21.0666666667vw;
    left: 0;
    -webkit-clip-path: polygon(0% 57%, 0% 100%, 100% 100%);
            clip-path: polygon(0% 57%, 0% 100%, 100% 100%);
    background-color: #FFBCD0;
}
@media screen and (min-width: 751px) {
    .c-section-feature::before {
        width: 430px;
        height: 91.7333333333px;
        top: -90.5866666667px;
    }
}
.c-section-feature__head {
    padding-top: 9.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-feature__head {
        padding-top: 40.1333333333px;
    }
}

/* ---------------------------------------------
*   c-section-monthly
--------------------------------------------- */
.c-section-monthly {
    position: relative;
    background-color: #FFBCD0;
    padding-top: 12.8vw;
    padding-bottom: 31.4666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly {
        padding-top: 55.04px;
        padding-bottom: 135.3066666667px;
    }
}
.c-section-monthly__container {
    width: 89.3333333333vw;
    margin: 0 auto;
    border-radius: 3.2vw;
    background-color: #FAF1E9;
    padding-bottom: 9.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__container {
        width: 384.1333333333px;
        padding-bottom: 42.4266666667px;
        border-radius: 13.76px;
    }
}
.c-section-monthly__label {
    position: absolute;
    top: 7.1666666667vw;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
    .c-section-monthly__label {
        top: 30.8166666667px;
    }
}
.c-section-monthly__balloon {
    padding: 2.6666666667vw 7.9666666667vw 2.6666666667vw;
    border: 1px solid #000;
    border-radius: 6vw;
    line-height: 1.25;
    background-color: #fff;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon {
        padding: 11.4666666667px 34.2566666667px 11.4666666667px;
        border-radius: 25.8px;
    }
}
.c-section-monthly__balloon::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 4vw;
    height: 4.8vw;
    background: url(../img/bg_balloon_bottom_2.png) 50% 0 no-repeat;
    background-size: 100% auto;
    transform: translate(-50%, 85%);
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon::after {
        width: 17.2px;
        height: 20.64px;
    }
}
.c-section-monthly__balloon-txt {
    letter-spacing: 0.085em;
    font-family: "Noto Sans JP", sans-serif;
    color: #000;
    font-size: 3.4666666667vw;
    font-weight: bold;
    white-space: nowrap;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__balloon-txt {
        font-size: 14.9066666667px;
    }
}
.c-section-monthly__head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 11.3333333333vw;
    padding-top: 10.9333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__head {
        margin-bottom: 48.7333333333px;
        padding-top: 47.0133333333px;
    }
}
.c-section-monthly__head-txt-s {
    width: 60vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__head-txt-s {
        width: 258px;
    }
}
.c-section-monthly__head-txt-s img {
    display: block;
    width: 100%;
}
.c-section-monthly__head-txt-l {
    color: #000;
    font-size: 6.6666666667vw;
    font-weight: bold;
    white-space: nowrap;
    margin-top: 1.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__head-txt-l {
        font-size: 28.6666666667px;
        margin-top: 5.7333333333px;
    }
}
.c-section-monthly__float-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
}
.c-section-monthly__float-img-item {
    position: absolute;
}
.c-section-monthly__float-img-item--1 {
    top: 53vw;
    left: 0;
    width: 26.2vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--1 {
        top: 227.9px;
        width: 112.66px;
    }
}
.c-section-monthly__float-img-item--2 {
    top: 149vw;
    right: 0;
    width: 22.8vw;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__float-img-item--2 {
        top: 640.7px;
        width: 98.04px;
    }
}
.c-section-monthly__float-img-item img {
    display: block;
    width: 100%;
}
.c-section-monthly__img {
    position: relative;
    width: 80vw;
    margin-inline: auto;
}
@media screen and (min-width: 751px) {
    .c-section-monthly__img {
        width: 344px;
    }
}
.c-section-monthly__img img {
    display: block;
    width: 100%;
}

/* ---------------------------------------------
*   c-section-3
--------------------------------------------- */
.c-section-3 {
    position: relative;
    padding-top: 10.3%;
    background-color: #F7EBE9;
    color: #E74632;
}
.c-section-3::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 21.3333333333vw;
    top: -21.0666666667vw;
    left: 0;
    -webkit-clip-path: polygon(0% 29%, 0% 100%, 100% 100%);
            clip-path: polygon(0% 29%, 0% 100%, 100% 100%);
    background-color: #F7EBE9;
}
@media screen and (min-width: 751px) {
    .c-section-3::before {
        width: 430px;
        height: 91.7333333333px;
        top: -90.5866666667px;
    }
}
.c-section-3__head {
    color: #fff;
    text-align: center;
}
.c-section-3__sub-ttl {
    margin-top: 0.6666666667%;
    font-size: 4.8vw;
    letter-spacing: 0.15em;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
}
@media screen and (min-width: 751px) {
    .c-section-3__sub-ttl {
        font-size: 20.64px;
    }
}
.c-section-3__contents {
    width: 86.6666666667%;
    margin: 11.333333% auto 0;
    padding: 8.2% 4.3% 9.533333%;
    border-radius: 2.6666666667vw;
    background-color: #fff;
}
@media screen and (min-width: 751px) {
    .c-section-3__contents {
        border-radius: 11.4666666667px;
    }
}
.c-section-3__date-l {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.8666666667vw;
    white-space: nowrap;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-l {
        margin-bottom: 8.0266666667px;
    }
}
.c-section-3__date-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 10.8vw;
    height: 10.8vw;
    padding-top: 0.2666666667vw;
    margin-right: 2.4vw;
    border-radius: 50%;
    border: 1px solid #E74632;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 3.0533333333vw;
    font-weight: bold;
    line-height: 1.08;
    letter-spacing: 0.05em;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-icon {
        width: 46.44px;
        height: 46.44px;
        margin-right: 5.7333333333px;
        padding-top: 0;
        font-size: 13.1293333333px;
    }
    .windows .c-section-3__date-icon {
        padding-top: 1.1466666667px;
    }
}
.c-section-3__date-txt {
    font-size: 12vw;
    font-family: "Work Sans", sans-serif;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-txt {
        font-size: 51.6px;
    }
}
.c-section-3__date-txt-s {
    display: inline-block;
    margin-left: 0.5333333333vw;
    font-size: 3.7333333333vw;
    font-weight: 500;
    letter-spacing: -0.05em;
}
@media screen and (min-width: 751px) {
    .c-section-3__date-txt-s {
        margin-left: 2.2933333333px;
        font-size: 16.0533333333px;
    }
}
.c-section-3__txt {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 4vw;
    font-weight: bold;
    letter-spacing: 0.04em;
    color: #4D4D4D;
    text-align: center;
    line-height: 1.63;
}
@media screen and (min-width: 751px) {
    .c-section-3__txt {
        font-size: 17.2px;
    }
}
.c-section-3__box {
    margin-top: 4.6666666667vw;
    padding: 4.0666666667vw 5.3333333333vw 4.6666666667vw;
    border-radius: 2.6666666667vw;
    background-color: rgba(252, 236, 233, 0.4);
}
@media screen and (min-width: 751px) {
    .c-section-3__box {
        margin-top: 20.0666666667px;
        padding: 17.4866666667px 22.9333333333px 20.0666666667px;
        border-radius: 11.4666666667px;
    }
}
.c-section-3__box-ttl {
    width: 28.16vw;
    margin: 0 auto 4.2666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-ttl {
        width: 121.088px;
        margin-bottom: 18.3466666667px;
    }
}
.c-section-3__box-list-item {
    display: flex;
    align-items: center;
    margin-bottom: 1.8666666667vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-list-item {
        margin-bottom: 8.0266666667px;
    }
}
.c-section-3__box-list-item:last-of-type {
    margin-bottom: 0;
}
.c-section-3__box-list-label {
    display: inline-block;
    margin-right: 2.6666666667vw;
    padding: 0.6666666667vw 2.1333333333vw 0.1333333333vw;
    border-radius: 1.0666666667vw;
    border: 1px solid #E74632;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 2.8vw;
    font-weight: bold;
    letter-spacing: 0.03em;
}
.firefox .c-section-3__box-list-label {
    padding: 0.407vw 2.1333333333vw 0.1333333333vw;
}

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

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

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

@media screen and (min-width: 751px) {
    .c-section-3__box-list-label {
        margin-right: 11.4666666667px;
        padding: 0.866667px 9.1733333333px 1.573333px;
        font-size: 12.04px;
        border-radius: 4.5866666667px;
    }
    .firefox .c-section-3__box-list-label {
        padding: 1.467px 9.1733333333px 0.573px;
    }
    .windows .c-section-3__box-list-label {
        padding: 2.366667px 9.1733333333px 0.5733333333px;
    }
    .safari .c-section-3__box-list-label {
        padding: 3.17px 9.1733333333px 1.573333px;
    }
}
.c-section-3__box-list-txt {
    margin-top: 0.2666666667vw;
    font-size: 3.3333333333vw;
    font-weight: bold;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-feature-settings: "palt";
    color: #4D4D4D;
}
@media screen and (min-width: 751px) {
    .c-section-3__box-list-txt {
        margin-top: 1.1466666667px;
        font-size: 14.3333333333px;
    }
}
.c-section-3__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0.5333333333vw 1.0666666667vw 2.6666666667vw rgba(0, 0, 0, 0.3);
    margin-top: 4.1333333333vw;
    padding-top: 3.4666666667vw;
    padding-right: 1.6vw;
    padding-bottom: 3.4666666667vw;
    border-radius: 2.6666666667vw;
    background-color: #E74632;
}
@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .c-section-3__btn {
        transition: opacity 300ms;
    }
    .c-section-3__btn:hover {
        opacity: 0.8;
    }
}
@media screen and (min-width: 751px) {
    .c-section-3__btn {
        margin-top: 17.7733333333px;
        padding-top: 14.9066666667px;
        padding-right: 6.88px;
        padding-bottom: 14.9066666667px;
        border-radius: 11.4666666667px;
        box-shadow: 2.2933333333px 4.5866666667px 11.4666666667px rgba(0, 0, 0, 0.3);
    }
}
.c-section-3__btn-icn {
    width: 5.3333333333vw;
    margin-right: 1.3333333333vw;
}
@media screen and (min-width: 751px) {
    .c-section-3__btn-icn {
        width: 22.9333333333px;
        margin-right: 5.7333333333px;
    }
}
.c-section-3__btn-icn img {
    display: block;
}
.c-section-3__btn-txt {
    color: #fff;
    font-size: 3.4666666667vw;
    font-weight: bold;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    letter-spacing: 0.02em;
}
@media screen and (min-width: 751px) {
    .c-section-3__btn-txt {
        font-size: 14.9066666667px;
    }
}
.c-section-3__link-outer {
    margin-top: 5.7666666667vw;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-section-3__link-outer {
        margin-top: 24.7966666667px;
    }
}
.c-section-3__link {
    position: relative;
    font-size: 3.4666666667vw;
    padding-right: 4.8vw;
    padding-bottom: 1.3333333333vw;
    border-bottom: 1px solid #E74632;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .c-section-3__link {
        transition: opacity 300ms;
    }
    .c-section-3__link:hover {
        opacity: 0.8;
    }
}
@media screen and (min-width: 751px) {
    .c-section-3__link {
        font-size: 14.9066666667px;
        padding-right: 20.64px;
        padding-bottom: 5.7333333333px;
    }
}
.c-section-3__link:after {
    content: "";
    position: absolute;
    top: 5%;
    right: 0;
    width: 3.2vw;
    height: 3.2vw;
    background: url("../img/icn_blank.svg") 0 0/100% auto no-repeat;
}
@media screen and (min-width: 751px) {
    .c-section-3__link:after {
        width: 13.76px;
        height: 13.76px;
    }
}
.android .c-section-3__link:after {
    top: 17%;
}

/* ---------------------------------------------
*   c-ttl-1
--------------------------------------------- */
.c-ttl-1__logo {
    width: 9.3333333333vw;
    margin: 0 auto;
}
@media screen and (min-width: 751px) {
    .c-ttl-1__logo {
        width: 40.1333333333px;
    }
}
.c-ttl-1__txt {
    font-feature-settings: "palt";
    font-family: "Playfair Display", serif;
    font-style: italic;
    font-weight: 800;
    font-size: 12vw;
    color: #EF5141;
    margin-top: -2.1333333333vw;
    line-height: 1.36;
    letter-spacing: -0.065em;
    text-align: center;
}
@media screen and (min-width: 751px) {
    .c-ttl-1__txt {
        font-size: 51.6px;
        margin-top: -9.1733333333px;
    }
}
.c-ttl-1__txt--s {
    display: block;
    font-family: "Shippori Mincho", serif;
    font-style: normal;
    font-size: 4vw;
    margin-top: 0;
    line-height: 1.1;
    letter-spacing: -0.12em;
}
@media screen and (min-width: 751px) {
    .c-ttl-1__txt--s {
        font-size: 17.2px;
    }
}
.c-ttl-1__txt--1 {
    margin-top: 0;
    color: #EF7469;
}
.c-ttl-1__txt--bottom {
    font-size: 13.5vw;
    margin-top: -2.1333333333vw;
}
@media screen and (min-width: 751px) {
    .c-ttl-1__txt--bottom {
        font-size: 58.05px;
        margin-top: -9.1733333333px;
    }
}

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

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

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

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

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

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

/* フェードイン */
.js-fadein-up {
    opacity: 0;
    transform: translateY(20%);
    will-change: transform;
}
.js-fadein-up.is-active {
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

.js-fadein-right {
    opacity: 0;
    transform: translateX(20%);
    will-change: transform;
}
.js-fadein-right.is-active {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.8s, opacity 0.8s;
}

.js-fadein-left {
    opacity: 0;
    transform: translateX(-20%);
    will-change: transform;
}
.js-fadein-left.is-active {
    transform: translateX(0);
    opacity: 1;
    transition: transform 0.8s, opacity 1s;
}

/* フェードインアップ */
.js-txts-rising-item {
    display: block;
    overflow: hidden;
}
.js-txts-rising-item span {
    display: block;
    will-change: transform;
    transform: translateY(200%);
    transition: transform 0.75s;
}
.js-txts-rising.is-active .js-txts-rising-item span {
    transform: translateY(0);
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(1) span {
    transition-delay: 0s;
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(2) span {
    transition-delay: 100ms;
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(3) span {
    transition-delay: 200ms;
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(4) span {
    transition-delay: 300ms;
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(5) span {
    transition-delay: 400ms;
}
.js-txts-rising.is-active .js-txts-rising-item:nth-child(6) span {
    transition-delay: 500ms;
}

/*  js-txts-fadeup
--------------------------------------------- */
.js-txts-fadeup span {
    will-change: transform;
    display: inline-block;
    opacity: 0;
}

/*  js-scroll-hz-anime
--------------------------------------------- */
.js-scroll-hz-anime-rl {
    will-change: transform;
}

.js-scroll-hz-anime-lr {
    transform: translateX(calc(430px - 100%));
    will-change: transform;
}

/* ---------------------------------------------
*   js-clips
--------------------------------------------- */
.js-clips {
    --animate-duration: 1s;
}
.js-clips .js-clips-item {
    transform: scale(0);
}
.js-clips.is-active .js-clips-item {
    transform: scale(1);
    animation-duration: calc(var(--animate-duration));
    animation-name: bounceIn;
}
@keyframes bounceIn {
    from, 20%, 40%, 60%, 80%, to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        transform: scale3d(0.3, 0.3, 0.3);
    }
    20% {
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        transform: scale3d(1, 1, 1);
    }
}
@media print and (min-width: 751px), screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 750px), screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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