@charset "UTF-8";
/* --------------------------------------------------------------------------
    Reset
-------------------------------------------------------------------------- */
.lp-main-container img {
    width: 100%;
    height: auto;
}

/* --------------------------------------------------------------------------
    Common
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .lp-main-container {
        font-size: 16px;
        --font: 16;
        --lp-c-white: #fff;
        --lp-bg-color01: #ede6a4;
        --lp-bg-color02: #8ec19a;
        --lp-c-main: #e85513;
    }
    .lp-main-container__inner {
    }
    .lp-br-sp {
        display: none;
    }
    .lp-sec {
    }
    .lp-sec__inner {
        max-width: calc(1164 / var(--font) * 1em);
        max-width: calc(976 / var(--font) * 1em);
        margin-inline: auto;
        padding-inline: calc(20 / var(--font) * 1em);
        container-type: inline-size;
        --lp-sec-inner-width: 1124;
    }
    .lp-sec__body {
    }
    .lp-heading {
        margin-bottom: calc(32 / var(--font) * 1em);
    }
    .lp-heading__inner {
        background: var(--lp-c-white);
        border: solid var(--lp-c-main) 2px;
        border-radius: 9999px;

        text-align: center;
    }
    .lp-heading__label {
        color: var(--lp-c-main);
        font-size: calc(42 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: bold;
        font-feature-settings: "palt";
        letter-spacing: calc(140 / 1000 * 1em);
    }
    .lp-sec-content {
    }
    .lp-sec-block {
    }
    .lp-sec-block + .lp-sec-block {
        margin-top: calc(67 / var(--font) * 1em);
    }
    .lp-accent-color {
        color: var(--lp-c-main);
    }
    .lp-note {
    }
    .lp-note-txt {
        display: flex;
        align-items: start;
        line-height: calc(21 / 15);
    }
    .lp-note-txt::before {
        content: "※";
        flex-shrink: 0;
    }
    .lp-note-txt__label {
    }
}
@media all and (max-width: 767px) {
    .lp-main-container {
        font-size: 16px;
        --font: 16;
        --lp-c-white: #fff;
        --lp-bg-color01: #ede6a4;
        --lp-bg-color02: #8ec19a;
        --lp-c-main: #e85513;
    }
    .lp-main-container__inner {
        overflow: hidden;
    }
    .lp-br-pc {
        display: none;
    }
    .lp-sec {
    }
    .lp-sec__inner {
        margin-inline: auto;
        padding-inline: calc(14 / var(--font) * 1em);
        max-width: calc(375 / var(--font) * 1em);
    }
    .lp-sec__body {
    }
    .lp-heading {
        margin-bottom: calc(24 / var(--font) * 1em);
        max-width: calc(269 / var(--font) * 1em);
        margin-inline: auto;
    }
    .lp-heading__inner {
        background: var(--lp-c-white);
        border: solid var(--lp-c-main) 1px;
        border-radius: 9999px;

        text-align: center;
    }
    .lp-heading__label {
        color: var(--lp-c-main);
        font-size: calc(13 / var(--font) * 1em);
        font-weight: bold;
        font-feature-settings: "palt";
        letter-spacing: calc(140 / 1000 * 1em);
    }
    .lp-sec-content {
    }
    .lp-sec-block {
    }
    .lp-sec-block + .lp-sec-block {
        margin-top: calc(16 / var(--font) * 1em);
    }
    .lp-accent-color {
        color: var(--lp-c-main);
    }
    .lp-note {
    }
    .lp-note-txt {
        display: flex;
        align-items: start;
        line-height: calc(21 / 15);
        font-size: calc(12 / var(--font) * 1em);
    }
    .lp-note-txt::before {
        content: "※";
        flex-shrink: 0;
    }
    .lp-note-txt__label {
    }
}

/* --------------------------------------------------------------------------
    Introduce
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .introduce-content {
    }
    .introduce-content-heading {
        text-align: center;
        margin-bottom: calc(24 / var(--lp-sec-inner-width) * 100cqi);
    }
    .introduce-content-heading__label {
        color: var(--lp-c-main);
        font-size: calc(48 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(57 / 48);
        letter-spacing: calc(70 / 1000 * 1em);
    }
    .introduce-content-btn__container {
    }
    .introduce-content-btn {
        display: block;
        width: calc(622 / var(--lp-sec-inner-width) * 100cqi);
        margin-inline: auto;
        transition: opacity .3s ease;
    }
    .introduce-content-btn:hover {
        opacity: 0.7;
    }
    .introduce-content-btn-note {
        margin-top: calc(16 / var(--lp-sec-inner-width) * 100cqi);
    }
    .introduce-content-btn-note .lp-note-txt {
        justify-content: center;
        font-size: calc(23 / var(--lp-sec-inner-width) * 100cqi);
    }
}
@media all and (max-width: 767px) {
    .introduce-content {
    }
    .introduce-content-heading {
        text-align: center;
        margin-bottom: calc(13 / var(--font) * 1em);
    }
    .introduce-content-heading__label {
        color: var(--lp-c-main);
        font-size: calc(16 / var(--font) * 1em);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(20 / 16);
        letter-spacing: calc(70 / 1000 * 1em);
    }
    .introduce-content-btn__container {
    }
    .introduce-content-btn {
        display: block;
        max-width: calc(252 / var(--font) * 1em);
        margin-inline: auto;
        transition: opacity .3s ease;
    }
    .introduce-content-btn:hover {
        opacity: 0.7;
    }
    .introduce-content-btn-note {
        margin-top: calc(6 / var(--font) * 1em);
    }
    .introduce-content-btn-note .lp-note-txt {
        justify-content: center;
    }
}

/* --------------------------------------------------------------------------
    Mv
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .lp-mv {
        background: var(--lp-bg-color01);
    }
    .lp-mv__inner {
        max-width: calc(1390 / var(--font) * 1em);
        max-width: calc(1160 / var(--font) * 1em);
        margin-inline: auto;
        padding-inline: calc(20 / var(--font) * 1em);
    }
    .lp-mv__body {
    }
    .lp-mv-thumb {
    }
    .lp-mv-thumb-img {
    }
}
@media all and (max-width: 767px) {
    .lp-mv {
        background: var(--lp-bg-color01);
    }
    .lp-mv__inner {
    }
    .lp-mv__body {
    }
    .lp-mv-thumb {
    }
    .lp-mv-thumb-img {
    }
}

/* --------------------------------------------------------------------------
    Whats
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .sec-whats {
        background: var(--lp-bg-color01);
    }
    .sec-whats .lp-sec__inner {
        max-width: calc(1390 / var(--font) * 1em);
        max-width: calc(1160 / var(--font) * 1em);
        --lp-sec-inner-width: 1350;
    }
    .sec-whats .lp-sec__body {
        padding-bottom: calc(42 / var(--font) * 1em);
    }
    .sec-whats .lp-sec-content {
        position: relative;
    }
    .sec-whats .lp-sec-content::before {
        content: "";
        display: block;
        width: 100%;
        padding-top: calc(1424 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/whats_bg_confetti.png) no-repeat center top / contain;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        pointer-events: none;
    }
    .whats-content {
        position: relative;
        z-index: 0;
    }
    .whats-content__deco {
    }
    .whats-content__deco:nth-child(2):before,
    .whats-content__deco:nth-child(2):after {
        content: "";
        display: block;
        position: absolute;
        opacity: 0.7;
    }
    .whats-content__deco:nth-child(2):before {
        width: calc(191 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(174 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/whats_deco_left.svg) no-repeat center / contain;
        right: calc(100% + (80 / var(--lp-sec-inner-width) * 100cqi));
        top: calc(23 / var(--lp-sec-inner-width) * 100cqi);
        transform: translateX(100%);
    }
    .whats-content__deco:nth-child(2):after {
        width: calc(277 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(195 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/whats_deco_right.svg) no-repeat center / contain;
        left: calc(100% + (80 / var(--lp-sec-inner-width) * 100cqi));
        top: calc(122 / var(--lp-sec-inner-width) * 100cqi);
        transform: translateX(-100%);
    }
    .whats-content__deco:nth-child(1):before,
    .whats-content__deco:nth-child(1):after {
        content: "";
        display: block;
        position: absolute;
    }
    .whats-content__deco:nth-child(1):before {
        width: calc(123 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(185 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/whats_deco_01.png) no-repeat center / contain;
        left: calc(244 / var(--lp-sec-inner-width) * 100cqi);
        bottom: calc(21 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-content__deco:nth-child(1):after {
        width: calc(143 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(202 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/whats_deco_02.png) no-repeat center / contain;
        right: calc(235 / var(--lp-sec-inner-width) * 100cqi);
        bottom: calc(17 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-content::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background: var(--lp-c-white);
        clip-path: polygon(0 0, 100% 0, 100% calc(430 / var(--font) * 1em), 50% 100%, 0 calc(430 / var(--font) * 1em));
        position: absolute;
        inset: 0;
        z-index: -1;
    }
    .whats-content__inner {
    }
    .whats-content__body {
        padding-top: calc(50 / var(--lp-sec-inner-width) * 100cqi);
        padding-bottom: calc(105 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-heading {
        margin-bottom: calc(31 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-heading__inner {
        color: var(--lp-c-main);
        font-weight: bold;
        font-feature-settings: "palt";
        text-align: center;
        line-height: 1.25;
        letter-spacing: calc(180 / 1000 * 1em);
    }
    .whats-heading-sub {
        font-size: calc(37 / var(--lp-sec-inner-width) * 100cqi);
        margin-bottom: calc(10 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-heading__label {
        font-size: calc(55 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-read {
    }
    .whats-read-txt {
        text-align: center;
    }
    .whats-read-txt__label {
        font-size: calc(24 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: 400;
        line-height: calc(40 / 24);
    }
    .whats-read-note {
        display: flex;
        justify-content: center;
        margin-top: calc(12 / var(--lp-sec-inner-width) * 100cqi);
    }
    .whats-read-note .lp-note-txt::before,
    .whats-read-note .lp-note-txt__label {
        display: inline;
    }
    .whats-read-note .lp-note-txt {
        display: inline-block;
        text-align: center;
        font-size: calc(15 / var(--lp-sec-inner-width) * 100cqi);
    }
    .sec-whats .introduce-content {
        margin-top: calc(30 / var(--lp-sec-inner-width) * 100cqi);
    }
}
@media all and (max-width: 767px) {
    .sec-whats {
        background: var(--lp-bg-color01);
    }
    .sec-whats .lp-sec__body {
        padding-bottom: calc(25 / var(--font) * 1em);
    }
    .sec-whats .lp-sec-content {
        position: relative;
    }
    .sec-whats .lp-sec-content::before {
        content: "";
        display: block;
        width: calc(414 / var(--font) * 1em);
        height: calc(914 / var(--font) * 1em);
        background: url(/img/campaign/introduce/whats_bg_confetti_sp.png) no-repeat center top / contain;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        pointer-events: none;
    }
    .whats-content {
        position: relative;
        z-index: 0;
        max-width: calc(289 / var(--font) * 1em);
        margin-inline: auto;
    }
    .whats-content__deco:nth-child(1):before,
    .whats-content__deco:nth-child(1):after {
        content: "";
        display: block;
        position: absolute;
    }
    .whats-content__deco:nth-child(1):before {
        width: calc(48 / var(--font) * 1em);
        padding-top: calc(73 / var(--font) * 1em);
        background: url(/img/campaign/introduce/whats_deco_01.png) no-repeat center / contain;
        left: 0;
        bottom: calc(-29 / var(--font) * 1em);
    }
    .whats-content__deco:nth-child(1):after {
        width: calc(50 / var(--font) * 1em);
        padding-top: calc(70 / var(--font) * 1em);
        background: url(/img/campaign/introduce/whats_deco_02.png) no-repeat center / contain;
        right: 0;
        bottom: calc(-30 / var(--font) * 1em);
    }
    .whats-content::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background: var(--lp-c-white);
        clip-path: polygon(0 0, 100% 0, 100% calc(276 / var(--font) * 1em), 50% 100%, 0 calc(276 / var(--font) * 1em));
        position: absolute;
        inset: 0;
        z-index: -1;
    }
    .whats-content__inner {
        padding-inline: calc(10 / var(--font) * 1em);
    }
    .whats-content__body {
        padding-top: calc(33 / var(--font) * 1em);
        padding-bottom: calc(35 / var(--font) * 1em);
    }
    .whats-heading {
        margin-bottom: calc(8 / var(--font) * 1em);
    }
    .whats-heading__inner {
        color: var(--lp-c-main);
        font-weight: bold;
        font-feature-settings: "palt";
        text-align: center;
        line-height: 1.25;
        letter-spacing: calc(180 / 1000 * 1em);
    }
    .whats-heading-sub {
        font-size: calc(16 / var(--font) * 1em);
        margin-bottom: calc(3 / var(--font) * 1em);
    }
    .whats-heading__label {
        font-size: calc(15 / var(--font) * 1em);
    }
    .whats-read {
    }
    .whats-read-txt {
        text-align: center;
    }
    .whats-read-txt__label {
        font-size: calc(11 / var(--font) * 1em);
        font-weight: 400;
        line-height: calc(19 / 11);
    }
    .whats-read-note {
        display: flex;
        justify-content: center;
        margin-top: calc(6 / var(--font) * 1em);
    }
    .whats-read-note .lp-note-txt::before,
    .whats-read-note .lp-note-txt__label {
        display: inline;
    }
    .whats-read-note .lp-note-txt {
        display: inline-block;
        text-align: center;
        font-size: calc(8 / var(--font) * 1em);
        line-height: calc(10 / 8);
    }
    .sec-whats .introduce-content {
        margin-top: calc(24 / var(--font) * 1em);
    }
}

/* --------------------------------------------------------------------------
    Step
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .sec-step {
        background: var(--lp-bg-color01);
    }
    .sec-step .lp-sec__body {
        padding-top: calc(42 / var(--font) * 1em);
        margin-bottom: calc(-286 / var(--font) * 1em);
    }
    .step-list__container {
        position: relative;
        z-index: 1;
    }
    .step-list {
        display: flex;
        gap: calc(40 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-list-item {
        width: calc((100% - (40 / var(--font) * 1em) * 2) / 3);
    }
    .step-list-item--01 {
    }
    .step-list-item--02 {
    }
    .step-list-item--03 {
    }
    .step-card {
        border-radius: calc(30 / var(--lp-sec-inner-width) * 100cqi);
        background: #ffffda;
        border: solid calc(6 / var(--lp-sec-inner-width) * 100cqi) var(--lp-c-main);
        height: 100%;
        box-shadow: calc(9 / var(--lp-sec-inner-width) * 100cqi) calc(9 / var(--lp-sec-inner-width) * 100cqi) 0 #000;
    }
    .step-card__inner {
        padding-inline: calc(2 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-card__body {
        padding-block: calc(18 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-card-heading {
        width: calc(180 / var(--lp-sec-inner-width) * 100cqi);
        margin-inline: auto;
        margin-bottom: calc(50 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-card-heading__label {
    }
    .step-card-thumb {
        width: calc(227 / var(--lp-sec-inner-width) * 100cqi);
        margin-inline: auto;
    }
    .step-card-thumb-img {
    }
    .step-card-read {
        margin-top: calc(60 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-card-overview {
        text-align: center;
    }
    .step-card-overview__inner {
        position: relative;
        margin-bottom: calc(16 / var(--lp-sec-inner-width) * 100cqi);
        padding-bottom: calc(38 / var(--lp-sec-inner-width) * 100cqi);
    }
    .step-card-overview__inner::before {
        content: "";
        display: block;
        background: var(--lp-c-main);
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        width: calc(47 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(17 / var(--lp-sec-inner-width) * 100cqi);
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .step-card-overview__label {
        font-size: calc(28 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(40 / 28);
        letter-spacing: calc(80 / 1000 * 1em);
    }
    .step-card-txt {
        text-align: center;
    }
    .step-card-txt__label {
        font-size: calc(21 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: 400;
        line-height: calc(28 / 21);
    }
}
@media all and (max-width: 767px) {
    .sec-step {
        background: var(--lp-bg-color01);
    }
    .sec-step .lp-sec__body {
        padding-top: calc(25 / var(--font) * 1em);
        margin-bottom: calc(-900 / var(--font) * 1em);
    }
    .step-list__container {
        position: relative;
        z-index: 1;
        max-width: calc(225 / var(--font) * 1em);
        margin-inline: auto;
    }
    .step-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(36 / var(--font) * 1em) 0;
    }
    .step-list-item {
        width: 100%;
    }
    .step-list-item--01 {
    }
    .step-list-item--02 {
    }
    .step-list-item--03 {
    }
    .step-card {
        border-radius: calc(24 / var(--font) * 1em);
        background: #ffffda;
        border: solid calc(6 / var(--font) * 1em) var(--lp-c-main);
        height: 100%;
        box-shadow: calc(9 / var(--font) * 1em) calc(9 / var(--font) * 1em) 0 #000;
    }
    .step-card__inner {
        padding-inline: calc(2 / var(--font) * 1em);
    }
    .step-card__body {
        padding-block: calc(18 / var(--font) * 1em);
    }
    .step-card-heading {
        width: calc(118 / var(--font) * 1em);
        margin-inline: auto;
        margin-bottom: calc(30 / var(--font) * 1em);
    }
    .step-card-heading__label {
    }
    .step-card-thumb {
        width: calc(152 / var(--font) * 1em);
        margin-inline: auto;
    }
    .step-card-thumb-img {
    }
    .step-card-read {
        margin-top: calc(26 / var(--font) * 1em);
    }
    .step-card-overview {
        text-align: center;
    }
    .step-card-overview__inner {
        position: relative;
        margin-bottom: calc(11 / var(--font) * 1em);
        padding-bottom: calc(22 / var(--font) * 1em);
    }
    .step-card-overview__inner::before {
        content: "";
        display: block;
        background: var(--lp-c-main);
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        width: calc(31 / var(--font) * 1em);
        padding-top: calc(14 / var(--font) * 1em);
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .step-card-overview__label {
        font-size: calc(19 / var(--font) * 1em);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(26 / 19);
    }
    .step-card-txt {
        text-align: center;
    }
    .step-card-txt__label {
        font-size: calc(14 / var(--font) * 1em);
        font-weight: 400;
        line-height: calc(18 / 14);
    }
}


/* --------------------------------------------------------------------------
    Merit
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .sec-merit {
        background: var(--lp-bg-color02);
    }
    .sec-merit .lp-sec__body {
        padding-top: calc(349 / var(--font) * 1em);
        padding-bottom: calc(155 / var(--font) * 1em);
        position: relative;
    }
    .merit-deco::before,
    .merit-deco::after {
        content: "";
        display: block;
        position: absolute;
    }
    .merit-deco::before {
        width: calc(229 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(188 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/merit_deco_01.png) no-repeat center / contain;
        left: calc(415 / var(--lp-sec-inner-width) * 100cqi);
        bottom: calc(-26 / var(--lp-sec-inner-width) * 100cqi);
    }
    .merit-deco::after {
        width: calc(898 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(144 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/deco_scenery.png) no-repeat center / contain;
        left: calc(730 / var(--lp-sec-inner-width) * 100cqi);
        bottom: calc(-62 / var(--lp-sec-inner-width) * 100cqi);
    }
    .merit-heading {
        margin-bottom: calc(52 / var(--lp-sec-inner-width) * 100cqi);
    }
    .merit-heading__inner {
        color: var(--lp-c-white);
        font-weight: bold;
        text-align: center;
    }
    .merit-heading-sub {
        font-size: calc(48 / var(--lp-sec-inner-width) * 100cqi);
        line-height: calc(57 / 48);
        margin-bottom: calc(19 / var(--lp-sec-inner-width) * 100cqi);
    }
    .merit-heading__label {
        font-size: calc(76 / var(--lp-sec-inner-width) * 100cqi);
        line-height: calc(92 / 76);
    }
    .merit-list__container {
    }
    .merit-list {
        display: flex;
        gap: calc(33 / var(--lp-sec-inner-width) * 100cqi);
    }
    .merit-list-item {
        width: calc((100% - (33 / var(--lp-sec-inner-width) * 100cqi) * 2) / 3);
    }
    .merit-card {
        background: var(--lp-c-white);
        border-radius: 100%;
        aspect-ratio: 1 / 1;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .merit-card__inner {
    }
    .merit-card-txt {
        text-align: center;
    }
    .merit-card-txt__label {
        color: var(--lp-c-main);
        font-size: calc(31 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(47 / 31);
    }
}
@media all and (max-width: 767px) {
    .sec-merit {
        background: var(--lp-bg-color02);
    }
    .sec-merit .lp-sec__body {
        padding-top: calc(934 / var(--font) * 1em);
        padding-bottom: calc(50 / var(--font) * 1em);
        position: relative;
    }
    .merit-deco::before,
    .merit-deco::after {
        content: "";
        display: block;
        position: absolute;
    }
    .merit-deco::before {
        width: calc(81 / var(--font) * 1em);
        padding-top: calc(66 / var(--font) * 1em);
        background: url(/img/campaign/introduce/merit_deco_01.png) no-repeat center / contain;
        left: calc(72 / var(--font) * 1em);
        bottom: calc(-3 / var(--font) * 1em);
    }
    .merit-deco::after {
        width: calc(387 / var(--font) * 1em);
        padding-top: calc(70 / var(--font) * 1em);
        background: url(/img/campaign/introduce/deco_scenery_02.png) no-repeat center / contain;
        left: calc(180 / var(--font) * 1em);
        bottom: calc(-5 / var(--font) * 1em);
    }
    .merit-heading {
        margin-bottom: calc(16 / var(--font) * 1em);
    }
    .merit-heading__inner {
        color: var(--lp-c-white);
        font-weight: bold;
        text-align: center;
    }
    .merit-heading-sub {
        font-size: calc(17 / var(--font) * 1em);
        line-height: calc(20 / 17);
        margin-bottom: calc(6 / var(--font) * 1em);
    }
    .merit-heading__label {
        font-size: calc(27 / var(--font) * 1em);
        line-height: calc(33 / 27);
    }
    .merit-list__container {
        position: relative;
        min-height: calc(285 / var(--font) * 1em);
        max-width: calc(300 / var(--font) * 1em);
        margin-inline: auto;
    }
    .merit-list {
    }
    .merit-list-item {
        width: calc(146 / var(--font) * 1em);
        position: absolute;
    }
    .merit-list-item--01 {
        top: calc(33 / var(--font) * 1em);
        left: 0;
    }
    .merit-list-item--02 {
        left: 50%;
        bottom: 0;
        transform: translateX(-50%);
    }
    .merit-list-item--03 {
        top: 0;
        right: 0;
    }
    .merit-card {
        background: var(--lp-c-white);
        border: solid 1.5px var(--lp-c-main);
        border-radius: 100%;
        aspect-ratio: 1 / 1;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .merit-card__inner {
    }
    .merit-card-txt {
        text-align: center;
    }
    .merit-card-txt__label {
        color: var(--lp-c-main);
        font-size: calc(13 / var(--font) * 1em);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(19 / 13);
    }
}

/* --------------------------------------------------------------------------
    Faq
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .sec-faq {
        background: var(--lp-bg-color01);
    }
    .sec-faq .lp-sec__body {
        padding-top: calc(100 / var(--font) * 1em);
        padding-bottom: calc(64 / var(--font) * 1em);
        position: relative;
    }
    .sec-faq .lp-sec__body::before {
        content: "";
        display: block;
        width: calc(1440 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(1073 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/faq_bg_confetti.png) no-repeat center top / contain;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        pointer-events: none;
    }
    .faq-deco::before {
        content: "";
        display: block;
        width: calc(898 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(144 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/deco_scenery.png) no-repeat center / contain;
        position: absolute;
        left: calc(-471 / var(--lp-sec-inner-width) * 100cqi);
        bottom: calc(-46 / var(--lp-sec-inner-width) * 100cqi);
    }
    .faq-list__container {
        position: relative;
        padding-bottom: calc(72 / var(--lp-sec-inner-width) * 100cqi);
        margin-bottom: calc(95 / var(--lp-sec-inner-width) * 100cqi);
    }
    .faq-list__container::before,
    .faq-list__container::after {
        content: "";
        display: block;
        position: absolute;
    }
    .faq-list__container::before {
        width: calc(100vw - ((44 * 2) / var(--lp-sec-inner-width) * 100cqi));
        padding-top: calc(5 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/line_deco_dots.svg) repeat-x center / contain;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .faq-list__container::after {
        width: calc(152 / var(--lp-sec-inner-width) * 100cqi);
        padding-top: calc(168 / var(--lp-sec-inner-width) * 100cqi);
        background: url(/img/campaign/introduce/faq_deco_01.png) repeat-x center / contain;
        bottom: calc(6 / var(--lp-sec-inner-width) * 100cqi);
        left: calc(892 / var(--lp-sec-inner-width) * 100cqi);
        transform: translateX(-50%);
    }
    .faq-list {
    }
    .faq-list-item {
    }
    .faq-list-item + .faq-list-item {
        margin-top: calc(46 / var(--lp-sec-inner-width) * 100cqi);
    }
    .faq-card {
    }
    .faq-card-q {
    }
    .faq-card-q__inner {
        display: flex;
        align-items: start;
        color: var(--lp-c-main);
        font-size: calc(34 / var(--lp-sec-inner-width) * 100cqi);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(47 / 34);
    }
    .faq-card-q__head {
        flex-shrink: 0;
    }
    .faq-card-q__head::before {
        content: "■";
    }
    .faq-card-q__label {
    }
    .faq-card-a {
    }
    .faq-card-a__inner {
        display: flex;
        align-items: start;
        font-size: calc(29 / var(--lp-sec-inner-width) * 100cqi);
        font-feature-settings: "palt";
        line-height: calc(47 / 29);
    }
    .faq-card-a__inner::before {
        content: "→";
    }
    .faq-card-a__label {
    }
    .sec-faq .introduce-content-heading__label {
        font-size: calc(53 / var(--lp-sec-inner-width) * 100cqi);
    }
}
@media all and (max-width: 767px) {
    .sec-faq {
        background: var(--lp-bg-color01);
    }
    .sec-faq .lp-sec__body {
        padding-top: calc(52 / var(--font) * 1em);
        padding-bottom: calc(74 / var(--font) * 1em);
        position: relative;
    }
    .sec-faq .lp-sec__body::before {
        content: "";
        display: block;
        width: calc(414 / var(--font) * 1em);
        padding-top: calc(507 / var(--font) * 1em);
        background: url(/img/campaign/introduce/faq_bg_confetti_sp.png) no-repeat center top / contain;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        pointer-events: none;
    }
    .faq-list__container {
        display: flex;
        justify-content: center;
        margin-bottom: calc(37 / var(--font) * 1em);
        padding-bottom: calc(30 / var(--font) * 1em);
        position: relative;
    }
    .faq-list__container::before,
    .faq-list__container::after {
        content: "";
        display: block;
        position: absolute;
    }
    .faq-list__container::before {
        width: 100%;
        padding-top: calc(2 / var(--font) * 1em);
        background: url(/img/campaign/introduce/line_deco_dots.svg) repeat-x center / contain;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .faq-list__container::after {
        width: calc(62 / var(--font) * 1em);
        padding-top: calc(68 / var(--font) * 1em);
        background: url(/img/campaign/introduce/faq_deco_01.png) repeat-x center / contain;
        right: calc(56 / var(--font) * 1em);
        bottom: calc(-22 / var(--font) * 1em);
    }
    .faq-deco::before {
        content: "";
        display: block;
        width: calc(387 / var(--font) * 1em);
        padding-top: calc(62 / var(--font) * 1em);
        background: url(/img/campaign/introduce/deco_scenery.png) no-repeat center / contain;
        position: absolute;
        left: calc(-97 / var(--font) * 1em);
        bottom: calc(-7 / var(--font) * 1em);
    }
    .faq-list {
    }
    .faq-list-item {
    }
    .faq-list-item + .faq-list-item {
        margin-top: calc(12 / var(--font) * 1em);
    }
    .faq-card {
    }
    .faq-card-q {
    }
    .faq-card-q__inner {
        display: flex;
        align-items: start;
        color: var(--lp-c-main);
        font-size: calc(11 / var(--font) * 1em);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: calc(13 / 11);
    }
    .faq-card-q__head {
        flex-shrink: 0;
    }
    .faq-card-q__head::before {
        content: "■";
    }
    .faq-card-q__label {
    }
    .faq-card-a {
    }
    .faq-card-a__inner {
        display: flex;
        align-items: start;
        font-size: calc(9 / var(--font) * 1em);
        font-feature-settings: "palt";
        line-height: calc(13 / 9);
    }
    .faq-card-a__inner::before {
        content: "→";
    }
    .faq-card-a__label {
    }
    .sec-faq .introduce-content-heading__label {
        font-size: calc(16 / var(--font) * 1em);
    }
}

/* --------------------------------------------------------------------------
    Other
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .sec-other {
    }
    .sec-other .lp-sec__body {
        padding-top: calc(76 / var(--font) * 1em);
        padding-bottom: calc(64 / var(--font) * 1em);
    }
    .other-read {
    }
    .other-read-txt {
    }
    .other-read-txt__label {
        font-size: calc(18 / var(--font) * 1em);
        line-height: calc(41 / 22);
    }
    .contact-read {
    }
    .contact-read-txt {
        text-align: center;
    }
    .contact-read-txt__label {
        font-size: calc(25 / var(--font) * 1em);
        line-height: calc(48 / 30);
    }
}
@media all and (max-width: 767px) {
    .sec-other {
    }
    .sec-other .lp-sec__inner {
        max-width: calc(308 / var(--font) * 1em);
    }
    .sec-other .lp-sec__body {
        padding-top: calc(21 / var(--font) * 1em);
        padding-bottom: calc(42 / var(--font) * 1em);
    }
    .other-read {
    }
    .other-read-txt {
    }
    .other-read-txt__label {
        font-size: calc(9 / var(--font) * 1em);
        line-height: calc(14 / 9);
    }
    .contact-read {
    }
    .contact-read-txt {
        text-align: center;
    }
    .contact-read-txt__label {
        font-size: calc(13 / var(--font) * 1em);
        line-height: calc(19 / 13);
    }
}