body:has(.lp) {}


body:has(.lp) * {
    margin: 0;
    padding: 0;
    line-height: 1.6;
    vertical-align: top;
}

body:has(.lp) header {
    display: none;
}

body:has(.lp) .site-footer {
    display: none;
}

body:has(.lp) #ast-scroll-top {
    display: none !important;
}

body:has(.lp) .ast-container {
    max-width: unset;
    display: block;
}

body:has(.lp) .grecaptcha-badge {
    opacity: 0;
}

.lp img {
    width: 100%;
    height: auto;
}

.lp .mv_block {
    position: relative;
    z-index: 0;
}

.lp .main_area {
    position: relative;
}



.lp .main_cta_button {
    width: calc(650/750*100vw);
    position: absolute;
    bottom: calc(107/750*100vw);
    left: 50%;
    translate: -50% 0;
    z-index: 1;
}

.lp .contents_block {
    width: min(100%, 750px);
}

.lp .content_cta_box {
    padding: min(calc(1200/750*100vw), 1210px) min(calc(50/750*100vw), 60px) min(calc(130/750*100vw), 125px);
    background: url(../img/250702_lp/250702_cnt01_sp.jpg) no-repeat top center /100% auto;
}

.lp .content_cta_box .content_cta_button {
    width: 100%;
}

.lp .mt_20 {
    margin-top: -28px;
}

.lp .mt-90 {
    margin-top: clamp(24px, calc(92/750*100vw), 55px);
}

.lp .mt-75 {
    margin-top: clamp(24px, calc(75/750*100vw), 42px);
}

.lp .flow_cta_contents {
    aspect-ratio: 750/995;
    position: relative;
    z-index: 0;
    padding-top: min(calc(750/750*100vw), 750px);
}

.lp .flow_cta_button {
    display: block;
    width: calc(590/750*100%);
    margin-inline: auto;
}

.lp .flow_cta_contents .bg {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.lp .lp_footer {
    background: linear-gradient(80deg, #FF8D1B 18%, #FF7221 75%);
    max-width: 750px;
    margin-inline: auto;
}

.lp .lp_footer_inner {
    padding: 40px 20px 60px;
    max-width: 750px;
    margin-inline: auto;
}

.logolink {
    display: block;
    width: min(32%, 160px);
}

.lp_footer_sitelink {
    margin-top: 24px;
}

.lp_footer_sitelink li {
    list-style: none;
}

.lp_footer_sitelink a {
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.025em;
    line-height: 1.25;
    color: #fff;
}

.lp .fixed_button {
    width: min(calc(285/750*100vw), 220px);
    position: fixed;
    z-index: 99;
    right: 5px;
    bottom: 10px;
}

@media only screen and (min-width: 751px) {
    .lp .main_cta_button {
        width: calc(435/2000*100vw);
        position: absolute;
        bottom: calc(95/2000*100vw);
        left: auto;
        right: calc(530/2000*100vw);
        translate: 0;
        z-index: 1;
    }

    .lp .contents_block {
        margin: 60px auto 0;
    }

    .lp .lp_footer_inner {
        display: flex;
        gap: 32px;
    }

    .lp_footer_sitelink {
        margin-top: 0;
        flex: 1;
        display: flex;
        justify-content: flex-end;
        gap: 16px;
    }
}