@charset "UTF-8";
/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 999;
    background-color: #fff;
    height: 75px;
}

@media screen and (max-width: 750px) {
    .l-header {
        height: 13.3333333333vw;
    }
}
.l-header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    height: 100%;
    width: 1024px;
    margin: 0 auto;
    padding-inline: 20px;
}

@media screen and (max-width: 750px) {
    .l-header__container {
        min-width: 0;
        width: 100%;
        padding-right: 1.4666666667vw;
        padding-left: 3.0666666667vw;
    }
}
.l-header__logo {
    width: 277px;
}

@media screen and (max-width: 750px) {
    .l-header__logo {
        width: 40vw;
    }
}
.l-header__logo-2 {
    display: block;
    width: 222px;
}

@media screen and (max-width: 750px) {
    .l-header__logo-2 {
        width: 35.4666666667vw;
    }
}
@media screen and (min-width: 751px) {
    .l-header__logo-2 {
        will-change: opacity;
    }
}
/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    margin-inline: auto;
    padding-top: calc(var(--fixed-header-height) * 1px);
    background-color: var(--color-bg-2);
    overflow: hidden;
}
@media print, screen and (min-width: 751px) {
    .l-contents {
        width: calc(var(--contents-width) * 1px);
    }
}
@media screen and (max-width: 750px) {
    .l-contents {
        padding-top: calc(100 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
.l-footer {
    background-color: #595757;
    position: relative;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", sans-serif;
    font-weight: 300;
}

.l-footer__container {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    height: 125px;
}

@media screen and (max-width: 750px) {
    .l-footer__container {
        display: block;
        height: auto;
        padding: 5.3333333333vw 0 4.8vw;
    }
}
/*  l-footer-nav
--------------------------------------------- */
.l-footer-nav {
    max-width: 950px;
    text-align: center;
    font-size: 0;
}

.l-footer-nav__item {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    color: #fff;
    font-size: 12px;
    line-height: 1.75;
}

@media screen and (max-width: 750px) {
    .l-footer-nav__item {
        display: block;
        padding-left: 0;
        font-size: 2.1333333333vw;
        line-height: 2;
        font-feature-settings: "palt" 1;
    }
}
.l-footer-nav__item:last-child {
    padding-right: 5px;
}

@media screen and (max-width: 750px) {
    .l-footer-nav__item:last-child {
        padding-right: 0;
    }
}
.l-footer-nav__item:after {
    position: absolute;
    top: 0;
    left: 5px;
    content: "|";
}

@media screen and (max-width: 750px) {
    .l-footer-nav__item:after {
        display: none;
    }
}
.l-footer-nav__item:last-child:before {
    position: absolute;
    top: 0;
    right: -5px;
    content: "|";
}

@media screen and (max-width: 750px) {
    .l-footer-nav__item:last-child:before {
        display: none;
    }
}
.l-footer-nav__link {
    will-change: opacity;
}

/*  l-footer-copyright
--------------------------------------------- */
.l-footer-copyright {
    height: 101px;
    background-color: #fff;
}

@media screen and (max-width: 750px) {
    .l-footer-copyright {
        height: 43.2vw;
    }
}
.l-footer-copyright__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 1024px;
    height: 100%;
    padding-inline: 20px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .l-footer-copyright__inner {
        flex-direction: column-reverse;
        justify-content: center;
        min-width: 0;
        width: 100%;
        padding: 0;
    }
}
.l-footer-copyright__txt {
    text-align: center;
    font-size: 12px;
    line-height: 1.9;
    color: #595757;
    letter-spacing: -0.05em;
}

@media screen and (max-width: 750px) {
    .l-footer-copyright__txt {
        line-height: 1.72;
        margin-top: 8vw;
        font-size: 2.9333333333vw;
    }
}
.l-footer-copyright__logo {
    width: 230px;
    will-change: opacity;
}

@media screen and (max-width: 750px) {
    .l-footer-copyright__logo {
        width: 61.3333333333vw;
    }
}
/*  l-footer-pagetop
--------------------------------------------- */
.l-footer-pagetop {
    border-radius: 50%;
    position: fixed;
    right: 20px;
    bottom: 90px;
    z-index: 510;
    display: block;
    width: 70px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
    will-change: opacity;
}
.l-footer-pagetop.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
@media screen and (max-width: 750px) {
    .l-footer-pagetop {
        border-radius: 0;
        right: calc(20 / var(--design-width) * 100vw);
        bottom: calc(calc(178 / var(--design-width) * 100vw) + env(safe-area-inset-bottom));
        width: calc(100 / var(--design-width) * 100vw);
    }
}

.l-footer-pagetop__btn {
    background-color: #728AC3;
    border: 6px solid #fff;
    border-radius: 50%;
    display: block;
    position: relative;
    width: 100%;
    will-change: background-color;
    transition: background-color 0.3s ease;
}
@media screen and (hover: hover) and (pointer: fine) {
    .l-footer-pagetop__btn:hover {
        background-color: #3152A1;
    }
}
@media screen and (max-width: 750px) {
    .l-footer-pagetop__btn {
        border: none;
    }
    .l-footer-pagetop__btn::before {
        border: calc(8 / var(--design-width) * 100vw) solid #fff;
        border-radius: 50%;
        content: "";
        position: absolute;
        top: -1%;
        left: -1%;
        width: 102%;
        height: 102%;
    }
}
.l-footer-pagetop__btn img {
    width: 100%;
}

/* ---------------------------------------------
*   u-visually-hidden
--------------------------------------------- */
.u-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ---------------------------------------------
*   c-campaign
--------------------------------------------- */
.c-campaign {
    padding-top: 75px;
    overflow: hidden;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
}
@media screen and (max-width: 750px) {
    .c-campaign {
        padding-top: calc(100 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-link-image
--------------------------------------------- */
.c-link-image {
    display: block;
}
@media screen and (min-width: 751px) and (hover: hover) and (pointer: fine) {
    .c-link-image {
        transition: background-color 0.25s ease;
    }
    .c-link-image:hover {
        background-color: var(--button-hover-bg);
    }
}

/* ---------------------------------------------
*   c-box-download
--------------------------------------------- */
.c-box-download {
    width: 1024px;
    margin: 37px auto 0;
    padding: 40px 65px 45px;
    border-radius: 30px;
    background: #D7F4F1;
}
@media screen and (max-width: 750px) {
    .c-box-download {
        width: 100%;
        margin-top: calc(46 / var(--design-width) * 100vw);
        padding: calc(50 / var(--design-width) * 100vw) calc(48 / var(--design-width) * 100vw) calc(26 / var(--design-width) * 100vw);
        border-radius: calc(40 / var(--design-width) * 100vw);
    }
}
.c-box-download__title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    color: #009E96;
    font-size: 24px;
    font-weight: 800;
}
@media screen and (max-width: 750px) {
    .c-box-download__title {
        gap: calc(16 / var(--design-width) * 100vw);
        font-size: calc(28 / var(--design-width) * 100vw);
        margin: auto;
        width: calc(432 / var(--design-width) * 100vw);
    }
    .c-box-download__title img {
        width: 100%;
    }
}
.c-box-download__body {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 35px;
    margin-top: 10px;
}
@media screen and (max-width: 750px) {
    .c-box-download__body {
        gap: calc(18 / var(--design-width) * 100vw);
        margin-top: calc(16 / var(--design-width) * 100vw);
    }
}
.c-box-download__qr {
    width: 140px;
}
@media screen and (max-width: 750px) {
    .c-box-download__qr {
        display: none;
    }
}
.c-box-download .mod-fixed-btn__label {
    display: block;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 17px;
    font-weight: bold;
    margin-bottom: 8px;
    text-align: center;
}
@media screen and (max-width: 750px) {
    .c-box-download .mod-fixed-btn__label {
        font-size: calc(19 / var(--design-width) * 100vw);
        margin-bottom: 3.5px;
    }
}
.c-box-download .mod-fixed-btn__label--google {
    padding-left: 6px;
}
@media screen and (max-width: 750px) {
    .c-box-download .mod-fixed-btn__label--google {
        padding-left: 0;
    }
}
@media screen and (max-width: 750px) {
    .c-box-download .mod-fixed-btn__app-inner-wrap {
        gap: calc(44 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-box-cards / c-box-entry
--------------------------------------------- */
.c-box-cards,
.c-box-entry {
    margin-top: 34px;
    border: 10px solid #009E96;
    border-radius: 60px;
    background: #fffef7;
}
@media screen and (max-width: 750px) {
    .c-box-cards,
    .c-box-entry {
        margin-top: calc(58 / var(--design-width) * 100vw);
        border-width: calc(12 / var(--design-width) * 100vw);
        border-radius: calc(80 / var(--design-width) * 100vw);
    }
}

.c-box-cards {
    min-height: 692px;
    margin-top: 41px;
    padding: 65px 68px;
}
@media screen and (max-width: 750px) {
    .c-box-cards {
        min-height: calc(1120 / var(--design-width) * 100vw);
        margin-top: calc(50 / var(--design-width) * 100vw);
        padding: calc(70 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw) calc(65 / var(--design-width) * 100vw);
    }
}
.c-box-cards__excluded {
    margin-top: 35px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.75;
}
@media screen and (max-width: 750px) {
    .c-box-cards__excluded {
        width: calc(550 / var(--design-width) * 100vw);
        margin: calc(44 / var(--design-width) * 100vw) auto 0;
        font-size: calc(18 / var(--design-width) * 100vw);
        line-height: 1.7;
    }
}

/* ---------------------------------------------
*   c-box-entry
--------------------------------------------- */
.c-box-entry {
    margin-top: 40px;
    padding: 35px 60px 60px;
    border-color: #0068B7;
}
@media screen and (max-width: 750px) {
    .c-box-entry {
        margin-top: calc(52 / var(--design-width) * 100vw);
        min-height: auto;
        padding: calc(70 / var(--design-width) * 100vw) calc(50 / var(--design-width) * 100vw) calc(60 / var(--design-width) * 100vw);
    }
}
.c-box-entry__heading {
    box-sizing: border-box;
    width: 693px;
    margin-inline: auto;
    padding: 20px 56px 22px;
}
@media screen and (max-width: 750px) {
    .c-box-entry__heading {
        width: auto;
        padding: 0;
    }
}
.c-box-entry__eyebrow {
    display: block;
    width: 313px;
    margin-inline: auto;
}
@media screen and (max-width: 750px) {
    .c-box-entry__eyebrow {
        display: block;
        width: calc(496 / var(--design-width) * 100vw);
        margin-bottom: calc(12 / var(--design-width) * 100vw);
    }
}
@media screen and (min-width: 751px) {
    .c-box-entry__eyebrow {
        transform: translate(-1.5px, 3px);
    }
}
.c-box-entry__title {
    display: block;
    width: 568px;
    margin: 8px auto 0;
}
@media screen and (max-width: 750px) {
    .c-box-entry__title {
        width: calc(488 / var(--design-width) * 100vw);
        margin-top: 0;
    }
}
@media screen and (min-width: 751px) {
    .c-box-entry__title {
        transform: translateY(1px);
    }
}
.c-box-entry__body {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 15px;
    transform: translate(13px, -13px);
}
@media screen and (max-width: 750px) {
    .c-box-entry__body {
        display: block;
        margin-top: calc(49 / var(--design-width) * 100vw);
        transform: none;
    }
}
.c-box-entry__cards {
    display: block;
    flex: 0 1 calc(432 / 888 * 100%);
    width: calc(432 / 888 * 100%);
}
@media screen and (max-width: 750px) {
    .c-box-entry__cards {
        display: block;
        width: calc(460 / var(--design-width) * 100vw);
        margin-inline: auto;
    }
}
.c-box-entry__benefits {
    width: 378px;
    transform: translate(3px, -1px);
}
@media screen and (max-width: 750px) {
    .c-box-entry__benefits {
        width: 100%;
        transform: none;
    }
}
.c-box-entry__benefits-box {
    box-sizing: border-box;
    width: calc(434 / 888 * 100%);
    padding: 21px 28px;
    transform: translateY(-2px);
}
@media screen and (max-width: 750px) {
    .c-box-entry__benefits-box {
        width: 100%;
        margin-top: calc(35 / var(--design-width) * 100vw);
        padding: 0;
        transform: none;
    }
}
.c-box-entry__note, .c-box-entry__disclaimer {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.7;
}
@media screen and (max-width: 750px) {
    .c-box-entry__note, .c-box-entry__disclaimer {
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}
.c-box-entry__note {
    margin-top: 10px;
    position: relative;
    padding-left: 1em;
}
.c-box-entry__note::before {
    content: "※";
    position: absolute;
    left: 0;
}
@media screen and (max-width: 750px) {
    .c-box-entry__note {
        margin-top: calc(27 / var(--design-width) * 100vw);
    }
}
.c-box-entry__disclaimer {
    margin-top: 20px;
    text-align: center;
}
@media screen and (max-width: 750px) {
    .c-box-entry__disclaimer {
        margin: calc(40 / var(--design-width) * 100vw) auto 0;
    }
}
.c-box-entry .c-btn-cta--entry {
    width: 700px;
    min-height: 90px;
    margin-top: 40px;
    padding-inline: 30px;
    border-color: #0069b7;
    color: #0069b7;
}
@media screen and (max-width: 750px) {
    .c-box-entry .c-btn-cta--entry {
        width: 100%;
        min-height: calc(160 / var(--design-width) * 100vw);
        margin-top: calc(40 / var(--design-width) * 100vw);
        padding-inline: calc(30 / var(--design-width) * 100vw);
    }
}
.c-box-entry .c-btn-cta--entry .c-btn-cta__text {
    transform: none;
}
.c-box-entry .c-btn-cta--entry .c-btn-cta__subtext {
    display: block;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: -0.25px;
    white-space: nowrap;
}
@media screen and (max-width: 750px) {
    .c-box-entry .c-btn-cta--entry .c-btn-cta__subtext {
        width: calc(380 / var(--design-width) * 100vw);
        margin-inline: auto;
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.3;
        letter-spacing: calc(-1 / var(--design-width) * 100vw);
        white-space: normal;
    }
}
.c-box-entry .c-btn-cta--entry .c-btn-cta__maintext {
    display: block;
    font-size: 24px;
    line-height: 1.3;
    letter-spacing: -0.4px;
    transform: translateY(2px);
}
@media screen and (max-width: 750px) {
    .c-box-entry .c-btn-cta--entry .c-btn-cta__maintext {
        font-size: calc(32 / var(--design-width) * 100vw);
        line-height: 1.2;
        letter-spacing: 0;
        transform: translate(calc(-12 / var(--design-width) * 100vw), 0);
    }
}
.c-box-entry .c-btn-cta--entry .c-btn-cta__icon {
    background: #0069b7;
}
@media screen and (min-width: 751px) and (hover: hover) and (pointer: fine) {
    .c-box-entry .c-btn-cta--entry:hover {
        color: #ffec3f;
        background-color: #0069b7;
    }
    .c-box-entry .c-btn-cta--entry:hover .c-btn-cta__icon {
        background-color: #ffec3f;
    }
    .c-box-entry .c-btn-cta--entry:hover .c-btn-cta__icon::after {
        border-left-color: #0069b7;
    }
}

/* ---------------------------------------------
*   c-btn-1
--------------------------------------------- */
.c-btn-1 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 50px;
    height: 52px;
    border: 1.3px solid var(--color-white-1);
    border-radius: 26px;
    color: var(--color-white-1);
    font-size: calc(17 / var(--root-fz) * 1rem);
    line-height: 2;
    font-weight: 500;
    will-change: opacity;
}
@media screen and (max-width: 750px) {
    .c-btn-1 {
        padding-inline: calc(80 / var(--design-width) * 100vw);
        height: calc(80 / var(--design-width) * 100vw);
        border-radius: calc(40 / var(--design-width) * 100vw);
        border-width: calc(2 / var(--design-width) * 100vw);
        font-size: calc(26 / var(--design-width) * 100vw);
        line-height: 2;
    }
}
@media screen and (max-width: 750px) {
    .windows .c-btn-1 {
        padding-inline: calc(70 / var(--design-width) * 100vw);
    }
}

.c-btn-1::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-100%, -50%) rotate(-90deg);
    width: 17px;
    height: 11px;
}
@media screen and (max-width: 750px) {
    .c-btn-1::after {
        width: calc(26 / var(--design-width) * 100vw);
        height: calc(16 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-btn-2
--------------------------------------------- */
.c-btn-2 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px auto 0;
    padding-inline: 50px;
    width: 504px;
    height: 90px;
    border-radius: 45px;
    background-color: var(--color-red-1);
    color: var(--color-white-1);
    font-size: calc(36 / var(--root-fz) * 1rem);
    line-height: 1.0833333333;
    font-weight: 700;
    will-change: opacity;
}
@media screen and (max-width: 750px) {
    .c-btn-2 {
        margin-top: calc(60 / var(--design-width) * 100vw);
        padding-inline: calc(100 / var(--design-width) * 100vw);
        width: 100%;
        height: calc(120 / var(--design-width) * 100vw);
        border-radius: calc(60 / var(--design-width) * 100vw);
        font-size: calc(48 / var(--design-width) * 100vw);
        line-height: 1.0833333333;
    }
}
.c-btn-2::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-60%, -50%);
    width: 38px;
    height: 38px;
}
@media screen and (max-width: 750px) {
    .c-btn-2::after {
        width: calc(50 / var(--design-width) * 100vw);
        height: calc(50 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   mod-fixed-btn
--------------------------------------------- */
.mod-fixed-btn__app-inner-wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 0 24px;
    padding-bottom: 15px;
}

.mod-fixed-btn__img {
    display: block;
    will-change: opacity;
    transition: opacity 0.3s ease;
}
.mod-fixed-btn__img--app {
    width: 176px;
}
@media screen and (max-width: 750px) {
    .mod-fixed-btn__img--app {
        width: calc(236 / var(--design-width) * 100vw);
    }
}
.mod-fixed-btn__img--google {
    width: 217px;
}
@media screen and (max-width: 750px) {
    .mod-fixed-btn__img--google {
        width: calc(286 / var(--design-width) * 100vw);
    }
}
.mod-fixed-btn__img:hover {
    opacity: 0.8;
}

/* ---------------------------------------------
*   c-btn-cta
--------------------------------------------- */
.c-btn-cta {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 600px;
    min-height: 80px;
    margin: 40px auto 0;
    padding: 12px 58px;
    border: 5px solid #009E96;
    border-radius: 20px;
    box-shadow: inset 0 0 0 3px #fff, 0 7px 0 #676767;
    text-align: center;
    color: #009E96;
    background: #FFEC3F;
    font-size: 24px;
    line-height: 1.35;
    letter-spacing: -0.4px;
    font-weight: 800;
    transition: border-color 0.25s ease, color 0.25s ease, background-color 0.25s ease;
}
@media screen and (max-width: 750px) {
    .c-btn-cta {
        width: 100%;
        min-height: calc(140 / var(--design-width) * 100vw);
        margin-top: calc(50 / var(--design-width) * 100vw);
        padding: calc(14 / var(--design-width) * 100vw) calc(60 / var(--design-width) * 100vw);
        border-width: calc(10 / var(--design-width) * 100vw);
        border-radius: calc(40 / var(--design-width) * 100vw);
        box-shadow: inset 0 0 0 calc(6 / var(--design-width) * 100vw) #fff, 0 calc(14 / var(--design-width) * 100vw) 0 #676767;
        font-size: calc(32 / var(--design-width) * 100vw);
        letter-spacing: 0;
    }
}
@media screen and (hover: hover) and (pointer: fine) {
    .c-btn-cta:hover {
        color: #ffec3f;
        background-color: #009E96;
    }
    .c-btn-cta:hover .c-btn-cta__icon {
        background-color: #ffec3f;
    }
    .c-btn-cta:hover .c-btn-cta__icon::after {
        border-left-color: #009E96;
    }
}
.c-btn-cta__text {
    display: block;
    transform: translateX(-6px);
}
@media screen and (max-width: 750px) {
    .c-btn-cta__text {
        transform: translateX(calc(-12 / var(--design-width) * 100vw));
    }
}
.c-btn-cta__icon {
    position: absolute;
    right: 25px;
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #009E96;
    font-size: 0;
    transition: background-color 0.25s ease;
}
@media screen and (max-width: 750px) {
    .c-btn-cta__icon {
        right: calc(26 / var(--design-width) * 100vw);
        width: calc(52 / var(--design-width) * 100vw);
        height: calc(52 / var(--design-width) * 100vw);
    }
}
.c-btn-cta__icon::after {
    content: "";
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 6px solid #fff7ac;
    transition: border-left-color 0.25s ease;
}
@media screen and (max-width: 750px) {
    .c-btn-cta__icon::after {
        border-top-width: calc(8 / var(--design-width) * 100vw);
        border-bottom-width: calc(8 / var(--design-width) * 100vw);
        border-left-width: calc(12 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-fixed-campaign
--------------------------------------------- */
.c-fixed-campaign {
    position: fixed;
    right: 0;
    bottom: -1px;
    left: 0;
    z-index: 500;
    display: block;
    overflow: hidden;
    height: 82px;
    background: linear-gradient(to bottom, transparent 0, transparent 8px, #fffde0 8px, #fffde0 15px, #E85298 15px, #E85298 100%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
    will-change: opacity;
}
.c-fixed-campaign.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
@media screen and (max-width: 750px) {
    .c-fixed-campaign {
        height: auto;
        background: none;
    }
}
.c-fixed-campaign__inner {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1440px;
    height: 82px;
    transform: translateX(-50%);
}
@media screen and (max-width: 750px) {
    .c-fixed-campaign__inner {
        display: none;
    }
}
.c-fixed-campaign__banner {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1440px;
    max-width: none;
}
.c-fixed-campaign__button {
    background: url(../img/btn_floating_hover.png) no-repeat center center/cover;
    border-radius: calc(infinity * 1px);
    position: absolute;
    top: 35px;
    left: 944px;
    display: block;
    width: 246px;
    pointer-events: auto;
}
.c-fixed-campaign__button-image {
    display: block;
    width: 100%;
    will-change: opacity;
    position: relative;
    transition: opacity 0.3s ease;
    z-index: 1;
}
@media screen and (hover: hover) and (pointer: fine) {
    .c-fixed-campaign__button:hover .c-fixed-campaign__button-image {
        opacity: 0;
    }
}
.c-fixed-campaign__link {
    display: none;
}
@media screen and (max-width: 750px) {
    .c-fixed-campaign__link {
        display: block;
        width: 100%;
        pointer-events: auto;
        will-change: opacity;
        transform: translateY(1px);
        transition: opacity 0.3s ease;
    }
}
@media screen and (max-width: 750px) and (hover: hover) {
    .c-fixed-campaign__link:hover {
        opacity: 0.8;
    }
}
.c-fixed-campaign__image {
    display: none;
}
@media screen and (max-width: 750px) {
    .c-fixed-campaign__image {
        display: block;
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-list-note
--------------------------------------------- */
.c-list-note {
    font-size: calc(15 / var(--root-fz) * 1rem);
    line-height: 1.7333333333;
    font-weight: 500;
}
@media screen and (max-width: 750px) {
    .c-list-note {
        margin-top: calc(10 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.5;
    }
}
.c-list-note span {
    display: contents;
    font-weight: 700;
}
.c-list-note--lh {
    line-height: 1;
}
.c-list-note--white {
    color: var(--color-white-1);
}
.c-list-note .c-list-note__item--red {
    color: var(--color-red-1);
}
@media screen and (max-width: 750px) {
    .c-list-note--l {
        font-size: calc(24 / var(--design-width) * 100vw);
        line-height: 1.5;
        letter-spacing: -0.01em;
    }
}
.c-list-note__item {
    display: flex;
}
.c-list-note__item::before {
    content: "※";
}

/* ---------------------------------------------
*   c-list-cards
--------------------------------------------- */
.c-list-cards {
    display: grid;
    grid-template-columns: repeat(3, calc(207 / 886 * 100%));
    justify-content: center;
    gap: 30px calc(71 / 886 * 100%);
}
@media screen and (max-width: 750px) {
    .c-list-cards {
        grid-template-columns: repeat(2, calc(240 / var(--design-width) * 100vw));
        gap: calc(46 / var(--design-width) * 100vw) calc(68 / var(--design-width) * 100vw);
    }
}
.c-list-cards__item {
    text-align: center;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}
@media screen and (max-width: 750px) {
    .c-list-cards__item {
        font-size: calc(17 / var(--design-width) * 100vw);
    }
}
.c-list-cards__item img {
    display: block;
    width: 207px;
    margin-bottom: 12px;
}
@media screen and (max-width: 750px) {
    .c-list-cards__item img {
        margin-bottom: calc(10 / var(--design-width) * 100vw);
    }
}
.c-list-cards__item small {
    display: block;
    margin-top: 5px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    font-weight: 400;
    transform: translateX(-25px);
    width: calc(100% + 50px);
}
@media screen and (max-width: 750px) {
    .c-list-cards__item small {
        font-size: calc(16 / var(--design-width) * 100vw);
        margin-top: calc(4 / var(--design-width) * 100vw);
        transform: translateX(calc(-25 / var(--design-width) * 100vw));
        white-space: nowrap;
        width: calc(100% + 50 / var(--design-width) * 100vw);
    }
    body.edge .c-list-cards__item small {
        margin-top: calc(2 / var(--design-width) * 100vw);
    }
}
.c-list-cards__item p {
    font-size: 16px;
    transform: translateX(-25px);
    white-space: nowrap;
    width: calc(100% + 50px);
}
@media screen and (max-width: 750px) {
    .c-list-cards__item p {
        font-size: calc(18 / var(--design-width) * 100vw);
        transform: translateX(calc(-25 / var(--design-width) * 100vw));
        white-space: nowrap;
        width: calc(100% + 50 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-section
--------------------------------------------- */
.c-section__container {
    position: relative;
    z-index: 1;
    width: 1024px;
    margin-inline: auto;
}
@media screen and (max-width: 750px) {
    .c-section__container {
        width: 100%;
        padding-inline: calc(40 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-section-hero
--------------------------------------------- */
.c-section-hero {
    position: relative;
    min-height: 1297px;
    color: #fff;
    background-color: #009E96;
    background-image: url("../img/bg_hero_grid.png");
    background-position: center top -10px;
    background-repeat: repeat-x;
    background-size: 1440px auto;
}
@media screen and (max-width: 750px) {
    .c-section-hero {
        min-height: calc(2360 / var(--design-width) * 100vw);
        background-image: url("../img/sp/bg_hero_grid.png");
        background-position: center top;
        background-repeat: repeat-x;
        background-size: 100% auto;
    }
    body.edge .c-section-hero {
        min-height: calc(2340 / var(--design-width) * 100vw);
    }
}
.c-section-hero__decor-layer {
    box-shadow: inset 0 4px 0 #009e96;
    position: absolute;
    inset: 0;
    z-index: 2;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width: 750px) {
    .c-section-hero__decor-layer {
        display: block;
    }
}
.c-section-hero__decor-bottom {
    position: absolute;
    display: block;
    max-width: none;
}
.c-section-hero__decor-bottom--left {
    top: 949px;
    left: max(32px, 50% - 688px);
    width: 84px;
}
.c-section-hero__decor-bottom--right {
    top: 945px;
    right: max(41px, 50% - 679px);
    width: 128px;
}
.c-section-hero__decor-side {
    position: absolute;
    display: block;
    max-width: none;
}
.c-section-hero__decor-side--left {
    top: 140px;
    left: calc(50% - 688px);
    width: 258.5px;
}
.c-section-hero__decor-side--right {
    top: 101px;
    left: calc(50% + 419px);
    width: 273px;
}
.c-section-hero__decor-sp {
    display: none;
}
@media screen and (max-width: 750px) {
    .c-section-hero__decor-sp {
        position: absolute;
        top: calc(1294 / var(--design-width) * 100vw);
        left: 0;
        display: block;
        width: 100%;
        max-width: none;
    }
}
@media screen and (max-width: 750px) {
    .c-section-hero__decor-bottom, .c-section-hero__decor-side {
        display: none;
    }
}
.c-section-hero__target {
    position: relative;
    z-index: 1;
    display: grid;
    place-content: center;
    width: 100%;
    height: 66px;
    overflow: hidden;
    background: #fff;
    padding-top: 4px;
}
@media screen and (max-width: 750px) {
    .c-section-hero__target {
        height: auto;
        padding-top: 0;
    }
}
.c-section-hero__target img {
    display: block;
}
@media screen and (max-width: 750px) {
    .c-section-hero__target img {
        width: 100%;
    }
}
.c-section-hero__inner {
    position: relative;
    z-index: 1;
    width: 1050px;
    margin: -37px auto 0;
}
@media screen and (max-width: 750px) {
    .c-section-hero__inner {
        width: 100%;
        margin: 0;
    }
}
.c-section-hero__kv {
    display: block;
    width: 1024px;
    margin-inline: auto;
}
@media screen and (max-width: 750px) {
    .c-section-hero__kv {
        width: 100%;
        height: calc(1200 / var(--design-width) * 100vw);
        overflow: hidden;
    }
}
.c-section-hero__kv img {
    display: block;
    width: 100%;
}
@media screen and (max-width: 750px) {
    .c-section-hero__kv img {
        max-width: none;
    }
}
.c-section-hero__schedule {
    position: absolute;
    z-index: 2;
    top: 704px;
    left: 50%;
    width: 480px;
    margin: 0;
    transform: translateX(-50%);
    color: #3f3a37;
    background: #fffef7;
    text-align: center;
    white-space: nowrap;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (max-width: 750px) {
    .c-section-hero__schedule {
        top: calc(1026 / var(--design-width) * 100vw);
        width: calc(440 / var(--design-width) * 100vw);
        font-size: calc(18 / var(--design-width) * 100vw);
        line-height: calc(28 / var(--design-width) * 100vw);
        letter-spacing: 0.02em;
    }
    body.edge .c-section-hero__schedule {
        top: calc(1000 / var(--design-width) * 100vw);
    }
}
.c-section-hero__schedule-expiry {
    margin-left: 1em;
    text-decoration: underline;
    text-underline-offset: 1px;
    font-weight: 700;
}
@media screen and (max-width: 750px) {
    .c-section-hero__schedule-expiry {
        display: block;
        margin-left: 0;
    }
}
.c-section-hero__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    width: 1040px;
    margin: 36px auto 0;
}
@media screen and (max-width: 750px) {
    .c-section-hero__links {
        display: block;
        width: 100%;
        margin-top: calc(30 / var(--design-width) * 100vw);
        padding-inline: calc(40 / var(--design-width) * 100vw);
    }
    body.edge .c-section-hero__links {
        margin-top: calc(10 / var(--design-width) * 100vw);
    }
}
.c-section-hero__link-item {
    --button-hover-bg: #ecfbfa;
}
.c-section-hero__link-item:nth-child(2) {
    --button-hover-bg: #ebf6ff;
}
@media screen and (max-width: 750px) {
    .c-section-hero__link-item + .c-section-hero__link-item {
        margin-top: calc(66 / var(--design-width) * 100vw);
    }
}
.c-section-hero__benefit {
    display: block;
    width: 360px;
    margin: 0 auto 7px;
}
@media screen and (max-width: 750px) {
    .c-section-hero__benefit {
        width: calc(532 / var(--design-width) * 100vw);
        margin-bottom: calc(10 / var(--design-width) * 100vw);
    }
}
.c-section-hero .c-link-image {
    width: 490px;
    margin-inline: auto;
    border-radius: 40px;
    background: #fffef7;
    box-shadow: 0 8px 0 rgba(0, 0, 0, 0.6);
    transition: background-color 0.3s ease;
    will-change: background-color;
}
@media screen and (max-width: 750px) {
    .c-section-hero .c-link-image {
        width: 100%;
        border-radius: calc(60 / var(--design-width) * 100vw);
        box-shadow: 0 calc(8 / var(--design-width) * 100vw) 0 rgba(0, 0, 0, 0.6);
    }
}
.c-section-hero .c-link-image--sclist:hover {
    background-color: #ECFBFA;
}
.c-section-hero .c-link-image--facility:hover {
    background-color: #EBF6FF;
}
.c-section-hero__note {
    position: relative;
    margin: 24px 10px 0;
    padding-left: 30px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    line-height: 1.7;
    font-weight: 700;
    text-align: justify;
}
@media screen and (max-width: 750px) {
    .c-section-hero__note {
        margin: calc(30 / var(--design-width) * 100vw) 0 0;
        padding-left: calc(44 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
        line-height: 1.8;
        letter-spacing: 0.05em;
        padding-right: 8px;
    }
}
.c-section-hero__note::before {
    content: "!";
    position: absolute;
    top: 1px;
    left: 0;
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    color: #009E96;
    background: #ffe64e;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (max-width: 750px) {
    .c-section-hero__note::before {
        width: calc(32 / var(--design-width) * 100vw);
        height: calc(32 / var(--design-width) * 100vw);
        font-size: calc(20 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-section-app
--------------------------------------------- */
.c-section-app {
    margin-top: -35px;
    position: relative;
    min-height: 1326px;
    padding: 120px 0 145px;
    background-image: url("../img/bg_app_section.png");
    background-position: center top;
    background-repeat: repeat-x;
    background-size: 1440px auto;
}
@media screen and (max-width: 750px) {
    .c-section-app {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        min-height: calc(1690 / var(--design-width) * 100vw);
        padding: calc(146 / var(--design-width) * 100vw) 0 calc(228 / var(--design-width) * 100vw);
        background-image: url("../img/sp/img_decor_point_2.png"), url("../img/sp/bg_app_section.png");
        background-position: left 0 top calc(1593 / var(--design-width) * 100vw), center top, center top;
        background-repeat: no-repeat, no-repeat, repeat-x;
        background-size: calc(232 / var(--design-width) * 100vw) auto, 100% auto, 100% auto;
    }
    body.edge .c-section-app {
        background-position: left 0 top calc(1577 / var(--design-width) * 100vw), center top, center top;
    }
}
.c-section-app__decor {
    position: absolute;
    z-index: 2;
    display: block;
    max-width: none;
    pointer-events: none;
}
.c-section-app__decor--top-pc {
    top: -66px;
    left: 50%;
    width: 1284px;
    transform: translateX(-50%);
}
.c-section-app__decor--top-sp {
    display: none;
}
@media screen and (max-width: 750px) {
    .c-section-app__decor--top-pc {
        display: none;
    }
    .c-section-app__decor--top-sp {
        top: calc(-73 / var(--design-width) * 100vw);
        right: 0;
        display: block;
        width: calc(282 / var(--design-width) * 100vw);
    }
}
.c-section-app__decor-layer {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width: 750px) {
    .c-section-app__decor-layer {
        display: none;
    }
}
.c-section-app__decor-side {
    position: absolute;
    display: block;
    max-width: none;
}
.c-section-app__decor-side--left {
    top: 179px;
    left: calc(50% - 715px);
    width: 226px;
}
.c-section-app__decor-side--right {
    top: 144px;
    left: calc(50% + 489px);
    width: 225px;
}
.c-section-app__title {
    width: 583px;
    margin-inline: auto;
}
@media screen and (max-width: 750px) {
    .c-section-app__title {
        text-align: center;
        width: calc(632 / var(--design-width) * 100vw);
    }
    .c-section-app__title img {
        width: 100%;
        max-width: none;
    }
}
.c-section-app__lead {
    font-family: "M PLUS Rounded 1c", sans-serif;
    margin-top: 32px;
    text-align: center;
    font-size: 20px;
    line-height: 1.75;
    font-weight: 800;
}
@media screen and (max-width: 750px) {
    .c-section-app__lead {
        margin-top: calc(32 / var(--design-width) * 100vw);
        font-size: calc(28 / var(--design-width) * 100vw);
        line-height: 1.7;
    }
}
.c-section-app__features {
    display: block;
    width: 666px;
    margin: 32px auto 0;
}
@media screen and (max-width: 750px) {
    .c-section-app__features {
        width: 100%;
        margin-top: calc(60 / var(--design-width) * 100vw);
    }
}
.c-section-app__annotation {
    margin-top: 16px;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    font-weight: 500;
}
@media screen and (max-width: 750px) {
    .c-section-app__annotation {
        margin-top: calc(22 / var(--design-width) * 100vw);
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}

/* ---------------------------------------------
*   c-section-cards
--------------------------------------------- */
.c-section-cards {
    position: relative;
    min-height: 1883px;
    padding: 140px 0 125px;
    margin-top: -42px;
    background-image: url("../img/bg_card_section.png");
    background-position: center top;
    background-repeat: repeat-x;
    background-size: 1440px auto;
}
@media screen and (max-width: 750px) {
    .c-section-cards {
        margin-top: calc(-50 / var(--design-width) * 100vw);
        min-height: auto;
        padding: calc(160 / var(--design-width) * 100vw) 0 calc(140 / var(--design-width) * 100vw);
        background-image: url("../img/sp/img_decor_point_6.png"), url("../img/sp/bg_card_section.png");
        background-position: right 0 top calc(2904 / var(--design-width) * 100vw), center top;
        background-repeat: no-repeat, repeat-x;
        background-size: calc(206 / var(--design-width) * 100vw) auto, 100% auto;
    }
}
.c-section-cards__decor {
    position: absolute;
    z-index: 2;
    display: block;
    max-width: none;
    pointer-events: none;
}
.c-section-cards__decor--top-pc {
    top: -61px;
    left: 50%;
    width: 1284px;
    transform: translateX(-50%);
}
.c-section-cards__decor--top-sp, .c-section-cards__decor--middle-sp, .c-section-cards__decor--bottom-sp {
    display: none;
}
@media screen and (max-width: 750px) {
    .c-section-cards__decor--top-pc {
        display: none;
    }
    .c-section-cards__decor--top-sp {
        top: calc(-50 / var(--design-width) * 100vw);
        left: 0;
        display: block;
        width: calc(212 / var(--design-width) * 100vw);
        z-index: 2;
    }
    .c-section-cards__decor--middle-sp {
        top: calc(1595 / var(--design-width) * 100vw);
        right: 0;
        z-index: 2;
        display: block;
        width: calc(136 / var(--design-width) * 100vw);
    }
    .c-section-cards__decor--bottom-sp {
        bottom: calc(-74 / var(--design-width) * 100vw);
        left: 0;
        display: block;
        width: calc(154 / var(--design-width) * 100vw);
        z-index: 2;
    }
}
.c-section-cards__decor-layer {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width: 750px) {
    .c-section-cards__decor-layer {
        display: none;
    }
}
.c-section-cards__decor-side {
    position: absolute;
    display: block;
    max-width: none;
}
.c-section-cards__decor-side--left {
    top: 194px;
    left: calc(50% - 715px);
    width: 226px;
}
.c-section-cards__decor-side--right {
    top: 159px;
    left: calc(50% + 489px);
    width: 225px;
}
.c-section-cards__title {
    width: 351px;
    margin-inline: auto;
}
@media screen and (max-width: 750px) {
    .c-section-cards__title {
        width: calc(464 / var(--design-width) * 100vw);
    }
    .c-section-cards__title img {
        width: 100%;
        max-width: none;
    }
}
.c-section-cards__lead {
    font-family: "M PLUS Rounded 1c", sans-serif;
    margin-top: 22px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
}
@media screen and (max-width: 750px) {
    .c-section-cards__lead {
        margin-top: calc(40 / var(--design-width) * 100vw);
        font-size: calc(28 / var(--design-width) * 100vw);
        line-height: 1.65;
    }
}

/* ---------------------------------------------
*   c-section-notes
--------------------------------------------- */
.c-section-notes {
    min-height: 480px;
    padding: 80px 0 83px;
    color: #fff;
    background: #009E96;
    font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 750px) {
    .c-section-notes {
        min-height: calc(884 / var(--design-width) * 100vw);
        padding: calc(86 / var(--design-width) * 100vw) 0 calc(68 / var(--design-width) * 100vw);
    }
}
.c-section-notes__title {
    text-align: center;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 30px;
    letter-spacing: 0.03em;
    line-height: 1.2;
    font-weight: 700;
}
@media screen and (max-width: 750px) {
    .c-section-notes__title {
        font-size: calc(30 / var(--design-width) * 100vw);
    }
}
.c-section-notes__list {
    margin-top: 30px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.7;
}
@media screen and (max-width: 750px) {
    .c-section-notes__list {
        margin-top: calc(25 / var(--design-width) * 100vw);
        font-size: calc(18 / var(--design-width) * 100vw);
    }
}
.c-section-notes__list li {
    position: relative;
    padding-left: 1.2em;
}
.c-section-notes__list li::before {
    content: "※";
    position: absolute;
    left: 0;
}

.c-section-notes .c-section__container--narrow {
    width: 1024px;
}
@media screen and (max-width: 750px) {
    .c-section-notes .c-section__container--narrow {
        width: 100%;
    }
}

/* ---------------------------------------------
*   c-section-app-promo
--------------------------------------------- */
.c-section-app-promo {
    position: relative;
    background-color: #fff;
    padding-top: 90px;
    padding-bottom: 71px;
    z-index: 1;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo {
        padding-top: calc(80 / var(--design-width) * 100vw);
        padding-bottom: calc(80 / var(--design-width) * 100vw);
    }
}
.c-section-app-promo__title {
    width: 284px;
    margin: 0 auto;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__title {
        width: 44vw;
    }
}
.c-section-app-promo__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 20px auto 35px;
    font-size: 34px;
    font-weight: 700;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__heading {
        width: 71.8vw;
        margin-bottom: calc(40 / var(--design-width) * 100vw);
    }
}
.c-section-app-promo__download {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 0 35px;
    position: relative;
    right: 8px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__download {
        display: block;
        right: 0;
    }
}
.c-section-app-promo__download .mod-fixed-btn__app-inner-wrap {
    padding-bottom: 0;
}
.c-section-app-promo__qr {
    width: 113px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__qr {
        display: none;
    }
}
.c-section-app-promo__list {
    padding-left: 238px;
    margin-top: 42px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__list {
        padding-left: 2.4vw;
        margin-top: 6.9333333333vw;
    }
}
.c-section-app-promo__item {
    padding-left: 1px;
    text-indent: -1em;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__item {
        font-size: calc(18 / var(--design-width) * 100vw);
        font-weight: 400;
        letter-spacing: 0.02em;
        line-height: 1.9;
        font-feature-settings: "palt" 1;
    }
}
.c-section-app-promo__link {
    position: relative;
    text-decoration: none;
}
.c-section-app-promo__link::after {
    position: absolute;
    right: 0;
    bottom: 2px;
    left: 0;
    height: 1px;
    content: "";
    background-color: currentColor;
    transition: opacity 0.3s ease;
    will-change: opacity;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo__link::after {
        bottom: calc(3 / var(--design-width) * 100vw);
        height: 0.5px;
    }
}
@media screen and (hover: hover) and (pointer: fine) {
    .c-section-app-promo__link:hover::after {
        opacity: 0;
    }
}
.c-section-app-promo .mod-fixed-btn__label {
    display: block;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 3.5px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo .mod-fixed-btn__label {
        font-size: calc(19 / var(--design-width) * 100vw);
        line-height: 1.5555555556;
        margin-bottom: calc(4 / var(--design-width) * 100vw);
    }
}
.c-section-app-promo .mod-fixed-btn__label--google {
    padding-left: 6px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo .mod-fixed-btn__label--google {
        padding-left: 0;
    }
}
.c-section-app-promo .mod-fixed-btn__img {
    transition: opacity 0.3s ease;
    will-change: opacity;
}
.c-section-app-promo .mod-fixed-btn__img--app {
    width: 176px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo .mod-fixed-btn__img--app {
        width: calc(256 / var(--design-width) * 100vw);
    }
}
.c-section-app-promo .mod-fixed-btn__img--google {
    width: 217px;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo .mod-fixed-btn__img--google {
        width: calc(312 / var(--design-width) * 100vw);
    }
}
.c-section-app-promo .mod-fixed-btn__img:hover {
    opacity: 0.8;
}
@media screen and (max-width: 750px) {
    .c-section-app-promo .mod-fixed-btn__app-inner-wrap {
        gap: 0 calc(44 / var(--design-width) * 100vw);
        justify-content: center;
    }
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: var(--color-white-1) !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-acc-target
--------------------------------------------- */
.js-acc-target {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target {
    animation: closeAccAnim 0.5s forwards;
}

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

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

@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;
    }
}
/*# sourceMappingURL=module.css.map */



