@media screen and (max-width: 768px) {
	.-w-more_btn a, .-w-more_btn a span {
		transition: none !important;
	}
}/*common_css*/
:root {
    --white: #fff;
    --text_color: #292D32;
    --bg_color: #FFFFFF;
    --bg_color2: #FFF7FA;
    --bg_color3: #F4F5F5;
    --main_color: #C75B87;
    --main_color2: #C44873;
    --main_color3: #E9B8CC;
    --cv_color: #C44873;
    --cv_color2: #06C755;
    --rem1: 10rem;
    --rem2: calc(var(--rem1) / 2);
    --rem3: calc(var(--rem2) / 2);
    --rem4: calc(var(--rem3) / 2);
    --rem5: calc(var(--rem4) / 2);
    --fs1: 1.6rem;
    --fs05: calc(var(--fs1) * .64);
    --fs08: calc(var(--fs1) * .8);
    --fs12: calc(var(--fs1) * 1.2);
    --fs15: calc(var(--fs1) * 1.563);
    --fs2: calc(var(--fs1) * 1.953);
    --fs25: calc(var(--fs1) * 2.441);
    --fs3: calc(var(--fs1) * 3.052);
}

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--bg_color);
    color: var(--text_color);
    font-family: Noto Sans JP, Hiragino Kaku Gothic ProN, Yu Gothic, sans-serif;
    font-size: clamp(var(--fs1), calc(var(--fs1) * .6 + .625vw), var(--fs12));
    line-height: 1.6;
    letter-spacing: .035em;
    overflow-wrap: anywhere;
}

img, picture, svg, video {
    max-width: 100%;
    height: auto;
}

img {
    vertical-align: middle;
}

button, input, select, textarea {
    font: inherit;
}

button {
    cursor: pointer;
}

a {
    color: inherit;
    text-decoration: none;
}

a, button {
    transition: .3s;
}

p, h1, h2, h3, h4, h5, h6, ul, ol, dl, dd {
    margin: 0;
}

ul, ol {
    padding: 0;
    list-style: none;
}

p + p {
    margin-top: 1em;
}

h1, h2, h3, h4, h5, h6, .mincho {
    font-family: Noto Serif JP, Yu Mincho, serif;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .04em;
    word-break: auto-phrase;
}

h2 {
    font-size: var(--fs3);
    font-weight: 700;
}

h2, .lead {
    text-wrap: balance;
}

.lead {
    word-break: auto-phrase;
    font-size: var(--fs15);
    font-weight: 500;
    line-height: 1.2;
}

h3 {
    font-size: var(--fs15);
}

.en {
    font-family: Georgia, serif;
    font-weight: 400;
}

.wrap, .w1600, .w1440, .w1080, .w800 {
    width: min(90%, 100%);
    margin-inline: auto;
}

.wrap {
    max-width: 1170px;
}

.w1600 {
    max-width: 1600px;
}

.w1440 {
    max-width: 1440px;
}

.w1080 {
    max-width: 1080px;
}

.w800 {
    max-width: 800px;
}

.full {
    width: 100%;
    max-width: none;
}

.flex {
    display: flex;
    gap: var(--rem3);
}

.flex.center {
    align-items: center;
}

.flex.between {
    justify-content: space-between;
}

.tx-center {
    text-align: center;
}

.tx-right {
    text-align: right;
}

.hidden {
    overflow: hidden;
}

.rel {
    position: relative;
}

.abs {
    position: absolute;
}

a.underline {
    text-decoration: underline;
    text-underline-offset: .2em;
}

.pc {
    display: block;
}

.sp, .tab {
    display: none;
}

section {
    padding: var(--rem1) 0;
}

.btn {

    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 34px;
    align-items: center;
    column-gap: var(--rem4);
    width: min(90%, calc(var(--rem1) * 5.56));
    max-width: 425px;
    margin: var(--rem3) auto 0;
    padding: calc(var(--rem4) + var(--rem5)) calc(var(--rem3) + var(--rem4));
    border-radius: 999px;
    background: var(--main_color2);
    color: var(--white);
      font-family: Noto Sans JP, Hiragino Kaku Gothic ProN, Yu Gothic, sans-serif;
    font-size: var(--fs15);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: center;
}

.btn > span:first-child {
    grid-column: 2;
    min-width: 0;
    text-wrap: balance;
}

.btn::after,
a.cta::after,
a.link::after,
[data-lib="171"] .arrow::after {
    content: "";
    justify-self: center;
    width: 14px;
    height: 14px;
    border-top: 4px solid currentColor;
    border-right: 4px solid currentColor;
    border-radius: 1px;
    transform: rotate(45deg);
}

.btn--line {
    background: var(--cv_color2);
    border-color: var(--cv_color2);
    color: var(--text_color);
}

.btn--form {
    background: var(--white);
    border-color: var(--cv_color);
    color: var(--cv_color);
}

.btn:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
    outline: 3px solid var(--main_color2);
    outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
    a[href]:hover, button:not(:disabled):hover {
        opacity: .8;
    }
}


@media (max-width: 1024px) {
    .btn {
        grid-template-columns: var(--fs1) minmax(0, 1fr) var(--fs1);
        column-gap: var(--rem5);
        padding: var(--rem4) var(--rem4);
        font-size: var(--fs12);
    }
}

@media (max-width: 768px) {

    .pc {
        display: none;
    }

    .tab {
        display: block;
    }

    .wrap,
    .w1600,
    .w1440,
    .w1080,
    .w800 {
        width: min(90%, 100%);
    }

    .flex.column {
        flex-direction: column;
    }
}

@media (max-width: 599px) {
    :root {
        --rem1: 8rem;
        --fs05: calc(var(--fs1) * .64);
        --fs08: calc(var(--fs1) * .8);
        --fs1: 4vw;
        --fs12: calc(var(--fs1) * 1.2);
        --fs15: calc(var(--fs1) * 1.563);
        --fs2: calc(var(--fs1) * 1.953);
        --fs25: calc(var(--fs1) * 2.441);
        --fs3: calc(var(--fs1) * 3.052);
    }

    section {
        padding: var(--rem2) 0;
    }

    .tab,
    .pc {
        display: none;
    }

    .flex {
        flex-direction: column;
    }

    .flex.block,
    .sp {
        display: block;
    }

    a.tel {
        pointer-events: auto;
        color: var(--a);
        text-decoration: underline;
    }

    .btn {
        grid-template-columns: var(--fs12) minmax(0, 1fr) var(--fs12);
        padding: calc(var(--rem4) + var(--rem5)) var(--rem3);
        font-size: var(--fs12);
    }

    h2 {
        font-size: var(--fs25);
    }
    .lead {
        font-size: var(--fs12);
    }

    h3 {
        font-size: var(--fs12);
    }

    .pagenation .prev.current,
    .pagenation .next.current,
    .pagenation .page.current {
        padding: calc(var(--rem3) - 3.5px);
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *, *::before, *::after {
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

/* 下層の基本ページ：TOPと共通の文字・余白・ボタンを使用 */
.subpage {
    padding: 0;
}

.subpage .kv {
    position: relative;
    overflow: hidden;
    padding: var(--rem1) 0 var(--rem2);
    background: var(--white);
}

.subpage .kv .photo {
    position: absolute;
    inset: 0;
}

.subpage .kv::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg, var(--white), rgba(255, 255, 255, .94) 25%, rgba(255, 255, 255, .6) 48%, rgba(255, 255, 255, 0) 75%);
    pointer-events: none;
}

.subpage .kv img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 85% center;
}

.subpage.first-time .kv img {
    object-position: 85% 10%;
}

.subpage.representative .kv img {
    object-position: 85% 25%;
}

.subpage .kv .w1080 {
    position: relative;
    z-index: 2;
}

.subpage h1 {
    width: 70%;
    margin: 0;
    font-size: var(--fs3);
    text-wrap: balance;
}

.subpage .breadcrumb {
    margin: var(--rem4) 0 0;
    font-size: var(--fs08);
}

.subpage .breadcrumb a {
    color: var(--main_color2);
    text-decoration: underline;
}

.subpage .intro {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: var(--rem2);
}

#site-content .subpage h2 {
    margin: 0;
    word-break: normal;
    text-wrap: balance;
}

#site-content .subpage h3 {
    color: var(--main_color2);
    word-break: normal;
    text-wrap: wrap;
}

.subpage .lead {
    margin-top: var(--rem3);
    color: var(--main_color2);
    word-break: normal;
    text-wrap: balance;
}

.subpage .text {
    text-wrap: wrap;
}

.subpage .lead br,
.subpage .text br {
    display: none;
}

.subpage .intro .photo {
    grid-column: 1 / -1;
    order: 3;
}

.subpage .intro .photo img {
    display: block;
    width: 100%;
    aspect-ratio: 8 / 3;
    object-fit: cover;
    object-position: right center;
}

.subpage .intro.copy {
    display: block;
}

.subpage .intro.copy .text,
.subpage.representative .text {
    margin-top: var(--rem3);
}

.subpage.first-time .intro .photo {
    grid-column: 2;
    grid-row: 1 / 3;
    order: 0;
}

.subpage.first-time .intro .photo img {
    aspect-ratio: 4 / 3;
}

.subpage.first-time .intro .text {
    grid-column: 1;
}

.subpage .tone {
    background: var(--bg_color2);
}

.subpage .list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--rem2);
    margin-top: var(--rem2);
}

.subpage .item {
    padding-top: var(--rem3);
    border-top: 1px solid var(--main_color3);
}

.subpage .item p {
    margin-top: var(--rem4);
    text-wrap: wrap;
}

.subpage.concept .list,
.subpage.fees .list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.subpage .closing {
    max-width: 800px;
    margin: var(--rem2) auto 0;
    text-wrap: wrap;
}

.subpage .price {
    margin: var(--rem2) 0 var(--rem3);
    padding: var(--rem2);
    background: var(--bg_color2);
    text-align: center;
}

.subpage .price > p {
    margin-top: var(--rem3);
}

.subpage .amount {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: var(--rem5);
    color: var(--main_color2);
    line-height: 1.2;
}

.subpage .amount strong {
    font-size: var(--fs3);
}

.subpage .amount span {
    font-size: var(--fs12);
}

.subpage .costs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--rem3);
    margin-top: var(--rem2);
    text-align: left;
}

.subpage .costs > div {
    padding-top: var(--rem3);
    border-top: 1px solid var(--main_color3);
}

.subpage .costs dt {
    margin-bottom: var(--rem4);
    font-weight: 700;
}

.subpage .costs ul {
    padding-left: 1em;
    list-style: disc;
}

.subpage .steps {
    display: block;
    max-width: 800px;
    margin-inline: auto;
    counter-reset: item;
}

.subpage .steps .item {
    display: grid;
    grid-template-columns: var(--rem2) minmax(0, 1fr);
    gap: var(--rem3);
    padding: var(--rem2) 0;
    counter-increment: item;
}

.subpage .steps .item::before {
    content: counter(item, decimal-leading-zero);
    color: var(--main_color2);
    font-size: var(--fs2);
    font-weight: 700;
    line-height: 1.2;
}

.subpage.cases .list,
.subpage.representative .list {
    display: block;
}

.subpage.cases .item,
.subpage.representative .item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: var(--rem2);
    padding: var(--rem3) 0;
}

.subpage.cases .item p,
.subpage.representative .item p {
    margin: 0;
}

.subpage.representative .intro {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    align-items: center;
}

.subpage .profile {
    width: min(100%, 400px);
    margin-inline: auto;
    text-align: center;
}

.subpage.representative .intro .photo img {
    aspect-ratio: 3 / 4;
    object-position: center top;
}

.subpage .profile p {
    margin-top: var(--rem3);
}

.subpage .profile strong {
    font-size: var(--fs15);
}

.subpage .office {
    max-width: 800px;
    margin: var(--rem2) auto 0;
}

.subpage .office > div {
    display: grid;
    grid-template-columns: var(--rem1) minmax(0, 1fr);
    gap: var(--rem3);
    padding: var(--rem3) 0;
    border-bottom: 1px solid var(--main_color3);
}

.subpage .office dt {
    font-weight: 700;
}

.subpage .office dd,
.subpage .office p {
    margin: 0;
    text-wrap: balance;
}

.subpage .office a {
    color: var(--main_color2);
    text-decoration: underline;
    text-underline-offset: .2em;
}

.subpage .brand {
    display: block;
    width: min(100%, 600px);
    height: auto;
    margin: 0 auto var(--rem2);
}

.subpage .search {
    margin-top: var(--rem2);
}

.subpage .search label {
    display: block;
    margin-bottom: var(--rem4);
    font-weight: 700;
}

.subpage .search input {
    width: 100%;
    padding: var(--rem4) var(--rem3);
    border: 1px solid var(--main_color3);
    border-radius: var(--rem5);
    background: var(--white);
    color: var(--text_color);
    font-size: var(--fs12);
}

.subpage .search input::placeholder {
    color: var(--text_color);
    opacity: .8;
}

.subpage .result {
    margin-top: var(--rem4);
}

.subpage.faq .list {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--rem4);
    margin-top: var(--rem3);
}

.subpage details {
    border: 1px solid var(--main_color3);
    border-radius: var(--rem5);
    background: var(--white);
}

.subpage details[hidden] {
    display: none;
}

.subpage summary {
    display: grid;
    grid-template-columns: var(--fs15) minmax(0, 1fr) var(--fs15);
    align-items: center;
    gap: var(--rem4);
    padding: var(--rem3);
    cursor: pointer;
    list-style: none;
    font-size: var(--fs12);
    font-weight: 700;
    line-height: 1.2;
    transition: .3s;
}

.subpage summary::-webkit-details-marker {
    display: none;
}

.subpage summary::before {
    content: "Q";
    align-self: start;
    color: var(--main_color2);
    font-size: var(--fs15);
}

.subpage summary::after {
    content: "+";
    justify-self: center;
    color: var(--main_color2);
    font-size: var(--fs15);
}

.subpage details[open] summary::after {
    content: "−";
}

.subpage details[open] summary {
    background: var(--bg_color2);
}

.subpage summary:focus-visible {
    outline: 2px solid var(--main_color2);
    outline-offset: 2px;
}

.subpage .answer {
    padding: 0 var(--rem3) var(--rem3);
}

.subpage .answer p:first-child {
    padding-top: var(--rem3);
}

.subpage .no-result {
    margin-top: var(--rem3);
}

/* 写真を使わない補助ページの共通タイトル */
.page-title {
    padding: var(--rem2) 0;
    background: var(--bg_color2);
}

.page-title h1 {
    font-size: var(--fs3);
    text-wrap: balance;
}

.page-title .breadcrumb {
    margin-top: var(--rem4);
    font-size: var(--fs08);
}

.page-title a {
    color: var(--main_color2);
    text-decoration: underline;
}

@media screen and (max-width: 1024px) {
    .subpage h1 {
        width: 80%;
        font-size: var(--fs25);
    }

    .subpage .intro,
    .subpage.representative .intro {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem3);
    }

    .subpage .intro .photo,
    .subpage.first-time .intro .photo,
    .subpage.first-time .intro .text {
        grid-column: auto;
        grid-row: auto;
        order: 0;
    }

    .subpage.first-time .intro .photo img {
        aspect-ratio: 8 / 3;
    }

    .subpage.concept .list,
    .subpage.fees .list {
        grid-template-columns: minmax(0, 1fr);
    }

    .page-title h1 {
        font-size: var(--fs25);
    }
}

@media screen and (max-width: 599px) {
    .subpage h1 {
        font-size: var(--fs15);
    }

    .subpage h2 {
        font-size: var(--fs15);
        line-height: 1.4;
    }

    .subpage .list {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem3);
        margin-top: var(--rem3);
    }

    .subpage .price {
        padding: var(--rem3);
    }

    .subpage .costs {
        grid-template-columns: minmax(0, 1fr);
        margin-top: var(--rem3);
    }

    .subpage .steps .item {
        grid-template-columns: var(--rem2) minmax(0, 1fr);
        gap: var(--rem4);
        padding: var(--rem3) 0;
    }

    .subpage .steps .item::before {
        font-size: var(--fs12);
    }

    .subpage.cases .item,
    .subpage.representative .item {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem4);
    }

    .subpage .profile {
        width: 70%;
    }

    .subpage .office > div {
        gap: var(--rem4);
    }

    .subpage summary {
        padding: var(--rem3) var(--rem4);
        font-size: var(--fs1);
        line-height: 1.6;
    }

    .page-title h1 {
        font-size: var(--fs15);
    }
}

@media (min-width: 1025px) {
    body {
        line-height: 1.75;
    }
}

/* 2026-10-16 説明文の行間とブログの操作性 */
#site-content [data-lib="81"] .text,
#site-content [data-lib="89"] .note p,
#site-content [data-lib="97"] .lead,
#site-content [data-lib="108"] .note,
#site-content [data-lib="116"] .note p,
#site-content [data-lib="130"] .note,
#site-content [data-lib="150"] .copy p {
    line-height: 1.6;
}

#site-content [data-lib="18"] .tag,
#site-content [data-lib="22"] .tag ul.flex {
    row-gap: var(--rem3);
    padding-block: var(--rem4);
}

#site-content [data-lib="18"] .tag a,
#site-content [data-lib="22"] .tag a {
    position: relative;
}

#site-content [data-lib="18"] .tag a::before,
#site-content [data-lib="22"] .tag a::before {
    content: "";
    position: absolute;
    inset: calc(var(--rem4) * -1) 0;
}

@media (max-width: 768px) {
    #blog:has([data-lib="10"]) [data-lib="22"] .new {
        display: none;
    }
}

@media (max-width: 599px) {
    .subpage summary > span {
        min-width: 0;
        text-wrap: balance;
    }

}

@media (max-width: 1024px) {
    #site-content [data-lib="54"] .cta,
    #site-content [data-lib="97"] .link {
        grid-template-columns: var(--fs2) minmax(0, 1fr) var(--fs1);
        padding: var(--rem4) calc(var(--rem4) + var(--rem5));
    }

    #site-content [data-lib="54"] .icon,
    #site-content [data-lib="97"] .icon {
        height: var(--fs2);
    }

    #site-content [data-lib="54"] .icon,
    #site-content [data-lib="97"] .icon {
        width: auto;
        justify-self: stretch;
    }

    #site-content [data-lib="54"] .icon img,
    #site-content [data-lib="97"] .icon img {
        width: var(--fs2);
        height: var(--fs2);
    }

    #site-content [data-lib="54"] .label,
    #site-content [data-lib="97"] .label {
        font-size: var(--fs12);
    }

    #site-content [data-lib="54"] .tel .label,
    #site-content [data-lib="97"] .phone .label {
        font-size: var(--fs1);
    }

    #site-content [data-lib="54"] .number,
    #site-content [data-lib="97"] .number {
        font-size: var(--fs2);
    }
}

@media (max-width: 599px) {
    #site-content [data-lib="368"] .intro h2 {
        letter-spacing: 0;
        font-feature-settings: "palt";
    }
}

#site-content [data-lib="116"] p.lead span.row,
#site-content [data-lib="18"] :is(.heading2, .heading3, .heading4) > span,
#site-content [data-lib="158"] .question > span,
#site-content [data-lib="81"] .list .item h3,
#site-content :is([data-lib="81"], [data-lib="89"], [data-lib="97"], [data-lib="108"], [data-lib="116"], [data-lib="130"], [data-lib="140"], [data-lib="150"], [data-lib="158"], [data-lib="163"], [data-lib="171"]) :is(p, h3, dd),
#site-content :is([data-lib="10"], [data-lib="18"], [data-lib="22"]) :is(h1, h2, h3, h4, h5, h6, p, li, dd, .text, .body) {
    word-break: normal;
    text-wrap: wrap;
}

#site-content :is([data-lib="116"], [data-lib="140"], [data-lib="158"]) .lead > span,
#site-content [data-lib="140"] .note > span,
#site-content [data-lib="158"] .question > span {
    display: inline;
}

#site-content :is([data-lib="81"], [data-lib="116"], [data-lib="130"], [data-lib="140"], [data-lib="150"]) p br,
#site-content [data-lib="18"] .body p br {
    display: none;
}

#site-content > [data-lib="54"] ~ [data-lib] h2,
#site-content > [data-lib="54"] ~ [data-lib] h2 span,
#site-content > [data-lib="54"] ~ [data-lib] h2.head span {
    word-break: normal;
    text-wrap: wrap;
}

#site-content > [data-lib="54"] ~ [data-lib] h2 span,
#site-content > [data-lib="54"] ~ [data-lib] h2.head span {
    display: inline;
}

#site-content > [data-lib="54"] ~ [data-lib] h2 br {
    display: none;
}

#site-content > [data-lib="54"] ~ [data-lib="81"] h2 {
    max-width: 800px;
}

@media (max-width: 599px) {
    #site-content > [data-lib="54"] ~ :is([data-lib="74"], [data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="140"], [data-lib="150"], [data-lib="171"]) h2,
    #site-content > [data-lib="54"] ~ :is([data-lib="74"], [data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="140"], [data-lib="150"], [data-lib="171"]) h2 span,
    #site-content > [data-lib="54"] ~ :is([data-lib="74"], [data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="140"], [data-lib="150"], [data-lib="171"]) h2.head span {
        font-size: var(--fs15);
        font-feature-settings: "palt";
        letter-spacing: 0;
    }

    #site-content > [data-lib="54"] ~ :is([data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="171"]) h2,
    #site-content > [data-lib="54"] ~ :is([data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="171"]) h2 span,
    #site-content > [data-lib="54"] ~ :is([data-lib="81"], [data-lib="97"], [data-lib="116"], [data-lib="130"], [data-lib="171"]) h2.head span {
        font-size: clamp(var(--fs12), 5.5vw, var(--fs15));
    }

    #site-content > [data-lib="54"] ~ [data-lib="140"] h2,
    #site-content > [data-lib="54"] ~ [data-lib="140"] h2 span,
    #site-content > [data-lib="54"] ~ [data-lib="140"] h2.head span {
        font-size: clamp(var(--fs12), 5.7vw, var(--fs15));
    }
}

#site-sticky a {
    transition: opacity .3s, filter .3s, transform .3s;
}

#site-content [data-lib="10"] .box h3 {
    text-wrap: balance;
}
/*widget:6a5ec95f-390c-4cd9-9151-a70a661cf529*/[data-lib="39"] {width: 100%;
	position: relative;}[data-lib="39"] .skip{position: absolute;
	top: 0;
	left: var(--rem4);
	z-index: 2000;
	padding: var(--rem4) var(--rem3);
	background: var(--white);
	color: var(--text_color);
	transform: translateY(-150%);}[data-lib="39"] .skip:focus{transform: translateY(0);}[data-lib="39"] main{width: 100%;
	padding: 0;
	outline: none;}@media screen and (max-width: 768px){[data-lib="39"] {padding-bottom: calc(var(--site-sticky-height) + env(safe-area-inset-bottom, 0px));}}/*widget:12b45b74-f436-416f-92a4-d2a5202a66ce*/[data-lib="41"] {width: 100%;
	background: var(--white);
	color: var(--mv-ink);
	position: sticky;
	top: 0;
	z-index: 30;}[data-lib="41"] .head{width: 90%;
	margin-inline: auto;
	height: var(--site-header-height);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--rem3);}[data-lib="41"] .brand{flex-shrink: 1;
	display: block;
	width: 44rem;
	max-width: 45%;
	height: var(--site-header-height);
	padding-block: var(--rem5);}[data-lib="41"] .brand picture{display: flex;
	align-items: center;
	height: 100%;}[data-lib="41"] .brand img{display: block;
	width: 94%;
	height: 94%;
	object-fit: contain;
	object-position: left center;}[data-lib="41"] .primary{flex-shrink: 0;
	margin-left: auto;}[data-lib="41"] .primary ul{display: flex;
	gap: var(--rem4);
	align-items: center;}[data-lib="41"] .primary a{display: block;
	padding-block: var(--rem4);
	font-size: var(--fs1);}[data-lib="41"] .open{position: relative;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	display: none;}[data-lib="41"] .open span{display: block;
	position: absolute;
	left: 11px;
	width: 22px;
	height: 1px;
	background: var(--mv-tel);}[data-lib="41"] .open span:nth-child(1){top: 14px;}[data-lib="41"] .open span:nth-child(2){top: 21px;}[data-lib="41"] .open span:nth-child(3){top: 28px;}[data-lib="41"] dialog{width: 100%;
	max-width: none;
	height: 100dvh;
	max-height: none;
	inset: 0;
	margin: 0;
	padding: var(--rem3) var(--rem4) calc(var(--site-sticky-height) + var(--rem3) + env(safe-area-inset-bottom, 0px));
	border: 0;
	background: transparent;
	color: var(--text_color);
	overflow: hidden;
	opacity: 0;
	transition: .3s;}[data-lib="41"] dialog.shown{opacity: 1;}[data-lib="41"] .menu-panel{width: min(90%, 900px);
	max-height: 100%;
	margin-inline: auto;
	padding: 0 var(--rem3) var(--rem3);
	border-radius: 16px;
	background: var(--white);
	overflow-y: auto;
	overscroll-behavior: contain;
	transform: translateY(var(--rem4));
	transition: .3s;}[data-lib="41"] dialog.shown .menu-panel{transform: none;}[data-lib="41"] dialog::backdrop{background: rgba(41,45,50,.35);
	opacity: 0;
	transition: .3s;}[data-lib="41"] dialog.shown::backdrop{opacity: 1;}[data-lib="41"] .menu-head{display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--rem3);
	position: sticky;
	top: 0;
	z-index: 1;
	margin-bottom: 0;
	padding: var(--rem4) 0;
	background: var(--white);}[data-lib="41"] .menu-head p{font-size: var(--fs1);}[data-lib="41"] .close{flex-shrink: 0;
	width: 44px;
	height: 44px;
	padding: 0;
	border-radius: 50%;
	background: var(--bg_color2);
	border: 0;
	color: var(--mv-tel);
	font-size: var(--fs2);
	line-height: 1.2;}[data-lib="41"] .menu-links{display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 0 var(--rem3);}[data-lib="41"] .menu-links a{display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--rem4);
	padding: calc(var(--rem4) + var(--rem5)) var(--rem4);
	line-height: 1.2;
	border-bottom: 1px solid var(--main_color3);
	font-size: var(--fs1);}[data-lib="41"] .menu-links a::after{flex-shrink: 0;
	color: var(--mv-tel);}@media screen and (max-width: 1171px){}@media screen and (max-width: 1380px){[data-lib="41"] .primary{display: none;}[data-lib="41"] .open{display: block;}[data-lib="41"] .brand{max-width: calc(100% - 44px - var(--rem4));}}@media screen and (max-width: 768px){[data-lib="41"] .head{width: calc(100% - var(--rem3) * 2);
	gap: var(--rem4);}[data-lib="41"] .open span{height: 2px;
	background: var(--mv-ink);}[data-lib="41"] .menu-panel{width: 100%;}[data-lib="41"] .menu-links{grid-template-columns: minmax(0,1fr);}[data-lib="41"] .menu-head p{font-size: var(--fs08);}}/*widget:7fd88958-7896-4668-9c44-92c5c05ecbb9*/[data-lib="45"] {position: relative;
	background: var(--white);
	color: var(--mv-ink);
	padding: var(--rem2) 0 calc(var(--site-sticky-height) + var(--rem3));}[data-lib="45"] .body{display: grid;
	grid-template-columns: minmax(0, 470fr) minmax(0, 540fr);
	gap: calc(var(--rem2) + var(--rem4));
	align-items: start;
	width: 100%;
	max-width: calc(var(--fs1) * 67);
	margin-left: calc(var(--rem3) + var(--rem5));}[data-lib="45"] .brand{display: block;
	text-align: center;
	line-height: 1.2;
	padding-bottom: var(--rem4);
	border-bottom: 1px solid #D8D8D8;}[data-lib="45"] .brand small{display: block;
	font-size: var(--fs2);}[data-lib="45"] .brand strong{display: block;
	font-size: var(--fs25);
	font-weight: 700;
	letter-spacing: 0;}[data-lib="45"] .brand > span{display: block;
	font-size: var(--fs2);}[data-lib="45"] .address{text-wrap: balance;
	font-size: var(--fs12);
	text-align: center;
	margin-top: var(--rem4);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--rem4);}[data-lib="45"] .tel{display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--rem4);
	margin-top: var(--rem4);
	color: var(--mv-tel);}[data-lib="45"] .tel picture{display: block;
	flex-shrink: 0;
	width: 48px;
	height: 48px;}[data-lib="45"] .tel img{width: 100%;
	height: 100%;
	object-fit: contain;
	filter: brightness(0) saturate(100%) invert(24%) sepia(78%) saturate(2318%) hue-rotate(322deg) brightness(91%) contrast(95%);}[data-lib="45"] .tel > span{display: block;
	text-align: center;}[data-lib="45"] .tel strong{display: block;
	font-size: var(--fs3);
	letter-spacing: -.04em;
	line-height: 1.2;
	font-weight: 400;}[data-lib="45"] .tel small{display: block;
	color: var(--mv-ink);
	font-size: var(--fs1);
	line-height: 1.2;}[data-lib="45"] .links{display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	border-top: 1px solid #D8D8D8;}[data-lib="45"] .links > ul:not(.legal){display: contents;}[data-lib="45"] .links li{border-bottom: 1px solid #D8D8D8;}[data-lib="45"] .links > ul:not(.legal) li:nth-child(odd){border-right: 1px solid #D8D8D8;}[data-lib="45"] .links a{display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--rem5);
	padding: var(--rem4) var(--rem3);
	font-size: var(--fs1);
	line-height: 1.2;}[data-lib="45"] .links a::after{content: "";
	color: var(--mv-pink);
	flex-shrink: 0;
	width: calc(var(--fs1) * .375);
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	height: calc(var(--fs1) * .375);}[data-lib="45"] .legal{grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #D8D8D8;}[data-lib="45"] .legal li{border: 0;}[data-lib="45"] .legal a{font-size: var(--fs1);
	padding-inline: var(--rem4);}[data-lib="45"] .top{display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--rem5);
	position: absolute;
	right: var(--rem3);
	bottom: calc(var(--site-sticky-height) + var(--rem2));
	color: var(--mv-tel);
	font-size: var(--fs08);
	line-height: 1.2;}[data-lib="45"] .top span{display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--mv-tel);
	border-radius: 50%;
	width: 54px;
	height: 54px;
	font-size: 0;
	line-height: 1.2;}[data-lib="45"] .copy{text-align: center;
	font-size: var(--fs08);
	margin-top: var(--rem3);}[data-lib="45"] .office{min-width: 0;
	container-type: inline-size;}[data-lib="45"] .address img{flex-shrink: 0;
	width: 24px;
	height: 40px;
	object-fit: contain;}[data-lib="45"] .top span::before{content: "";
	width: calc(var(--fs1) * .875);
	border-top: 3px solid currentColor;
	border-right: 3px solid currentColor;
	transform: translateY(20%) rotate(-45deg);
	height: calc(var(--fs1) * .875);}@media screen and (max-width: 1171px){[data-lib="45"] .links a{padding-inline: var(--rem4);
	font-size: var(--fs1);}[data-lib="45"] .top{position: static;
	margin-top: var(--rem3);}[data-lib="45"] .brand small,[data-lib="45"]  .brand > span{font-size: var(--fs15);}[data-lib="45"] .body{max-width: none;
	margin-left: 0;
	gap: var(--rem2);}[data-lib="45"] .brand strong{font-size: var(--fs15);}[data-lib="45"] .tel strong{font-size: var(--fs25);}}@media screen and (max-width: 768px){[data-lib="45"] {padding: var(--rem2) 0 var(--rem4);}[data-lib="45"] .body{grid-template-columns: minmax(0,1fr);
	gap: var(--rem4);}[data-lib="45"] .office{max-width: 480px;
	width: 100%;
	margin-inline: auto;}[data-lib="45"] .brand small,[data-lib="45"]  .brand > span{font-size: var(--fs12);}[data-lib="45"] .tel{gap: var(--rem5);
	text-decoration: none;}[data-lib="45"] .tel picture{width: 36px;
	height: 36px;}[data-lib="45"] .tel strong{font-size: var(--fs25);
	font-weight: 700;}[data-lib="45"] .links a{padding: calc(var(--rem4) + var(--rem5)) var(--rem4);
	letter-spacing: 0;
	text-wrap: balance;}[data-lib="45"] .legal{flex-wrap: wrap;}[data-lib="45"] .legal a{font-size: var(--fs08);
	padding-block: calc(var(--rem4) + var(--rem5));}[data-lib="45"] .top{margin-top: calc(var(--rem4) + var(--rem5));}[data-lib="45"] .wrap{width: calc(100% - var(--rem4) * 2.4);}[data-lib="45"] .brand{padding-bottom: var(--rem3);}[data-lib="45"] .address img{width: 16px;
	height: 27px;}[data-lib="45"] .top span{width: calc(var(--fs1) * 2.375);
	height: calc(var(--fs1) * 2.375);}[data-lib="45"] .top span::before{width: calc(var(--fs1) * .625);
	border-width: 2px;
	height: calc(var(--fs1) * .625);}[data-lib="45"] .brand strong{font-size: var(--fs2);}}/*widget:30b22093-120d-4f13-9185-6fdbfcdbba4c*/[data-lib="49"] {position: fixed;
	right: var(--rem3);
	bottom: var(--rem3);
	width: var(--site-sticky-width);
	max-width: 100%;
	z-index: 100;}[data-lib="49"] nav{display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--rem5);
	padding: var(--rem5);
	border-radius: 16px;
	background: var(--white);
	box-shadow: 0 4px 12px rgba(41, 45, 50, .16);}[data-lib="49"] a{display: flex;
	align-items: center;
	justify-content: center;
	height: 52px;
	gap: var(--rem5);
	padding: var(--rem5) 0;
	border-radius: 10px;
	font-size: min(var(--fs1), 1.6rem);
	line-height: 1.2;
	font-weight: 700;}[data-lib="49"] picture{display: block;
	flex: 0 0 24px;
	width: 24px;
	height: 24px;}[data-lib="49"] img{display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;}[data-lib="49"] .form{background: color-mix(in srgb, var(--main_color3) 40%, var(--white));
	color: var(--mv-tel);}[data-lib="49"] .line{background: var(--cv_color2);
	color: var(--white);}[data-lib="49"] .phone{background: var(--mv-tel);
	color: var(--white);}[data-lib="49"] a:hover{filter: brightness(.96);}[data-lib="49"] a:focus-visible{outline: 2px solid var(--text_color);
	outline-offset: 2px;}[data-lib="49"] a:active{transform: translateY(1px);}@media screen and (max-width: 768px){[data-lib="49"] {right: var(--rem5);
	bottom: calc(var(--rem5) + env(safe-area-inset-bottom, 0px));
	left: var(--rem5);
	width: auto;
	max-width: var(--site-sticky-width);
	margin: 0 auto;}}/*layout:2*/:root {
    --mv-ink: #111111;
    --mv-pink: #f81667;
    --mv-tel: #c71c53;
}

:root {
    --site-header-height: 86px;
    --site-sticky-width: 390px;
    --site-sticky-height: 87px;
}
html { scroll-padding-top: calc(var(--site-header-height) + var(--rem4)); }
@media (max-width: 768px) {
    :root { --site-header-height: 54px; }
}

@media (max-width: 900px) {
    #site-header {
        background: transparent;
        transition: background-color .3s ease;
    }
    #site-header.scrolled {
        background: var(--white);
    }
}
/*layout:7*/.lp h1,
.lp h2,
.lp h3,
.lp p,
.lp li,
.lp dd {
    word-break: normal;
    text-wrap: wrap;
}

.lp h1,
.lp h2 {
    letter-spacing: 0;
    line-height: 1.4;
    word-break: auto-phrase;
}

.lp h2 > span {
    display: inline;
}

.lp h2 > em {
    display: inline-block;
    max-width: 100%;
}

.lp h1 > span,
.lp h1 > em {
    display: inline-block;
    max-width: 100%;
}

.lp .lead {
    line-height: 1.6;
}

.lp .body > div,
.lp .list > li,
.lp .cv > a {
    min-width: 0;
}

.lp .cv {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--rem3);
}

.lp .cta {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 14px;
    align-items: center;
    gap: var(--rem4);
    padding: var(--rem3) var(--rem4);
    border: 2px solid var(--mv-tel);
    border-radius: var(--rem4);
    background: var(--mv-tel);
    color: var(--white);
    text-align: center;
    line-height: 1.2;
    font-weight: 700;
}

.lp .cta:hover {
    opacity: .85;
}

.lp .cta img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.lp .cta > span {
    display: grid;
    gap: var(--rem5);
    padding-left: var(--rem4);
    border-left: 1px solid currentColor;
    font-size: var(--fs12);
}

.lp .phone strong {
    font-size: var(--fs2);
}

.lp .phone b {
    font-size: var(--fs12);
}

.lp .phone small {
    font-size: var(--fs08);
    font-weight: 500;
}

.lp .line {
    border-color: var(--cv_color2);
    background: var(--cv_color2);
}

.lp .form {
    background: var(--white);
    color: var(--mv-tel);
}

@media screen and (max-width: 1280px) {
    .lp .cv {
        grid-template-columns: 1fr;
        gap: var(--rem4);
    }

    .lp .cta {
        grid-template-columns: 36px minmax(0, 1fr) 14px;
        gap: var(--rem5);
        padding: var(--rem4);
    }

    .lp .cta img {
        width: 36px;
        height: 36px;
    }

    .lp .cta > span {
        padding-left: var(--rem5);
    }
}

@media screen and (max-width: 1024px) {
    .lp .phone strong {
        font-size: var(--fs15);
    }

    .lp .cta > span {
        font-size: var(--fs1);
    }
}

@media screen and (max-width: 768px) {
    .lp .cta > span {
        font-size: var(--fs12);
    }

    .lp .phone strong {
        font-size: var(--fs2);
    }
}

@media (max-width: 599px) {
    .lp h2 {
        font-size: var(--fs15);
        line-height: 1.4;
    }

    .lp .closing {
        font-size: var(--fs1);
        letter-spacing: 0;
    }

    [data-lib="558"] .upper,
    [data-lib="660"] .upper {
        display: flex;
        flex-direction: column;
        padding: 0;
    }

    [data-lib="558"] .upper::before,
    [data-lib="660"] .upper::before {
        display: none;
    }

    [data-lib="558"] .upper .body,
    [data-lib="660"] .upper .body {
        order: -1;
        padding: var(--rem3) 0;
    }

    [data-lib="558"] .upper > .photo,
    [data-lib="660"] .upper > .photo {
        position: static;
    }

    [data-lib="558"] .upper > .photo img,
    [data-lib="660"] .upper > .photo img {
        height: auto;
        aspect-ratio: 2 / 1;
        object-position: center;
    }
}

@media screen and (min-width: 1281px) {
    .lp[data-lp="02"] .thoughts li {
        font-size: var(--fs15);
        word-break: auto-phrase;
    }

    .lp[data-lp="03"] {
        padding-bottom: calc(var(--rem2) + var(--rem3));
    }

    .lp[data-lp="03"] .upper {
        padding-bottom: calc(var(--rem2) + var(--rem3));
    }

    .lp[data-lp="03"] ul {
        gap: var(--rem3);
        font-size: var(--fs15);
        line-height: 1.6;
    }

    .lp[data-lp="04"] .upper > .photo img {
        object-position: right 25%;
    }

    .lp[data-lp="04"] .answers p {
        word-break: auto-phrase;
    }

    .lp[data-lp="06"] {
        padding: calc(var(--rem2) + var(--rem3)) 0;
    }

    .lp[data-lp="06"] .paper li {
        padding: var(--rem4) 0;
    }

    .lp[data-lp="08"] .list li {
        grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    }

    .lp[data-lp="08"] .text {
        padding: var(--rem3);
    }

    .lp[data-lp="10"] .comment {
        margin-top: var(--rem3);
        font-size: var(--fs12);
    }

    .lp[data-lp="10"] .signature {
        margin-top: var(--rem3);
    }
}

@media screen and (max-width: 599px) {
    .lp .lead,
    .lp .closing {
        word-break: auto-phrase;
    }

    .lp[data-lp="01"] .lead {
        width: 60%;
        letter-spacing: 0;
        text-wrap: balance;
    }

    .lp[data-lp="02"] .visual {
        margin-inline: 0;
    }

    .lp[data-lp="02"] .visual .photo {
        position: static;
    }

    .lp[data-lp="02"] .visual .photo img {
        height: auto;
        aspect-ratio: 3 / 2;
        object-position: center;
    }

    .lp[data-lp="02"] .thoughts {
        gap: var(--rem4);
        padding: var(--rem4) 0 0;
    }

    .lp[data-lp="02"] .thoughts li:nth-child(n) {
        padding: var(--rem3) var(--rem4) var(--rem2);
        transform: none;
        letter-spacing: 0;
        word-break: auto-phrase;
    }

    .lp[data-lp="04"] .lead {
        font-size: var(--fs1);
    }

    .lp[data-lp="06"] .paper li {
        padding: var(--rem4) 0;
    }

    .lp[data-lp="10"] .body {
        gap: var(--rem3);
    }

    .lp[data-lp="10"] .photo {
        width: 60%;
    }

    .lp[data-lp="10"] .comment,
    .lp[data-lp="10"] .signature {
        margin-top: var(--rem3);
    }

    .lp[data-lp="13"] .steps {
        gap: var(--rem4);
    }

    .lp[data-lp="13"] .number {
        margin-bottom: var(--rem4);
        font-size: var(--fs3);
    }

    .lp[data-lp="13"] .steps p {
        margin-top: var(--rem4);
    }
}
/*PAGE*/:where(.lp-private) [data-lp="01"] {container-type: inline-size;
	max-width: 1920px;
	margin-inline: auto;
	color: var(--text_color);
	background: var(--white);}
:where(.lp-private) [data-lp="01"] .mv {display: flow-root;
	padding-bottom: 3px;
	color: #34051a;
	background: var(--white);}
:where(.lp-private) [data-lp="01"] .mv .hero {position: relative;
	isolation: isolate;
	aspect-ratio: 1920 / 720;}
:where(.lp-private) [data-lp="01"] .mv .hero::after {content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgb(255 255 255 / .68), rgb(255 255 255 / .35) 38%, rgb(255 255 255 / 0) 68%);
	pointer-events: none;}
:where(.lp-private) [data-lp="01"] .mv .photo {position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;}
:where(.lp-private) [data-lp="01"] .mv .photo img {display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;}
:where(.lp-private) [data-lp="01"] .mv .body {padding-top: clamp(var(--rem3), 2.61cqi, var(--rem2));
	padding-bottom: var(--rem1);}
:where(.lp-private) [data-lp="01"] .mv .area {font-size: var(--fs15);
	font-weight: 600;
	letter-spacing: .02em;}
:where(.lp-private) [data-lp="01"] .mv .copy {width: 52%;
	margin-top: clamp(var(--rem4), calc(var(--rem4) + var(--rem4) + (var(--fs15) - 2.54cqi) * 1.6), calc(var(--rem3) + var(--rem4)));}
:where(.lp-private) [data-lp="01"] .mv .pre {width: fit-content;
	padding: var(--rem4) var(--rem3);
	background: #fef0e7;
	color: var(--mv-pink);
	font-size: clamp(var(--fs2), 2.54cqi, var(--fs3));
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: .02em;}
:where(.lp-private) [data-lp="01"] .mv h1 {margin-top: var(--rem4);
	font-size: clamp(var(--fs3), 7.02cqi, calc(var(--fs3) * 2.77));
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -.065em;
	font-feature-settings: "palt";
	word-break: normal;}
:where(.lp-private) [data-lp="01"] .mv h1 span {display: block;
	transform: translateY(-5px) scaleY(1.07);
	transform-origin: left top;}
:where(.lp-private) [data-lp="01"] .mv h1 em {display: block;
	color: var(--mv-pink);
	font-style: normal;
	transform: translateY(2px) scale(.95, 1.02);
	transform-origin: left top;}
:where(.lp-private) [data-lp="01"] .mv .stroke {display: block;
	width: 76%;
	height: auto;
	margin-top: -2px;}
:where(.lp-private) [data-lp="01"] .mv .lead {max-width: 18em;
	margin-top: -4px;
	font-size: clamp(var(--fs2), 1.88cqi, var(--fs3));
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: .02em;
	text-wrap: wrap;
	word-break: auto-phrase;}
:where(.lp-private) [data-lp="01"] .mv .trust {position: relative;
	isolation: isolate;
	margin-top: calc(var(--rem2) * -1);
	padding: var(--rem3) 0 calc(var(--rem5) * .8);}
:where(.lp-private) [data-lp="01"] .mv .wave {position: absolute;
	z-index: -1;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;}
:where(.lp-private) [data-lp="01"] .mv .wave img {display: block;
	width: 100%;
	height: 100%;}
:where(.lp-private) [data-lp="01"] .mv .inner {display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.018fr);
	align-items: center;
	gap: var(--rem3);}
:where(.lp-private) [data-lp="01"] .mv .intro {display: grid;
	grid-template-columns: clamp(var(--rem1), 10.6cqi, calc(var(--rem1) * 2.04)) minmax(0, 1fr);
	align-items: center;
	gap: calc(var(--rem4) + var(--rem5));}
:where(.lp-private) [data-lp="01"] .mv .portrait {position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 50%;}
:where(.lp-private) [data-lp="01"] .mv .portrait img {display: block;
	width: 100%;
	height: auto;
	border-radius: 50%;}
:where(.lp-private) [data-lp="01"] .mv .ring {position: absolute;
	inset: 0;
	pointer-events: none;}
:where(.lp-private) [data-lp="01"] .mv .intro p {font-size: clamp(var(--fs2), 2.55cqi, var(--fs3));
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -.055em;
	text-wrap: pretty;
	word-break: auto-phrase;}
:where(.lp-private) [data-lp="01"] .mv .intro em {font-size: 1.2em;
	line-height: 1;
	color: var(--mv-pink);
	font-style: normal;}
:where(.lp-private) [data-lp="01"] .mv .list {display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.09fr);
	gap: var(--rem4);
	transform: translateY(var(--rem4));}
:where(.lp-private) [data-lp="01"] .mv .list li {position: relative;
	display: grid;
	justify-items: center;
	align-content: center;
	gap: var(--rem5);
	padding: calc(var(--rem3) - 4px) var(--rem5);
	font-size: clamp(var(--fs15), 1.72cqi, var(--fs2));
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.045em;
	text-align: center;
	font-feature-settings: "palt";}
:where(.lp-private) [data-lp="01"] .mv .frame {position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;}
:where(.lp-private) [data-lp="01"] .mv .mark {width: clamp(var(--fs3), 4.2cqi, calc(var(--fs3) * 1.7));
	height: clamp(var(--fs2), 3.1cqi, calc(var(--fs3) * 1.2));
	object-fit: contain;
	transform: translate(calc(var(--rem5) * -1), -3px);}
:where(.lp-private) [data-lp="01"] .mv .list li:nth-child(2) .mark {transform: translate(calc(var(--rem4) * -1), -3px);}
:where(.lp-private) [data-lp="01"] .mv .list li:last-child .mark {width: clamp(var(--fs3), 5.72cqi, calc(var(--fs3) * 2.25));
	height: clamp(var(--fs2), 3.18cqi, calc(var(--fs3) * 1.25));
	transform: translate(2px, -3px);}
:where(.lp-private) [data-lp="01"] .actions {display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: var(--rem4);
	margin-block: 0;
	padding-block: clamp(calc(var(--rem3) + var(--rem4)), 2.61cqi, var(--rem2));
	background: var(--white);}
:where(.lp-private) [data-lp="01"] .cta {display: grid;
	grid-template-columns: clamp(var(--fs2), calc(6.7cqi - 64px), calc(var(--fs3) * 1.3)) minmax(0, 1fr) 24px;
	align-items: center;
	column-gap: var(--rem4);
	padding: calc(var(--rem4) * .6) clamp(var(--rem4), calc(2.6cqi - 25px), var(--rem3));
	border: 2px solid transparent;
	border-radius: var(--rem4);
	color: var(--white);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	transition: opacity .3s ease;}
:where(.lp-private) [data-lp="01"] .icon {width: clamp(var(--fs2), calc(6.7cqi - 64px), calc(var(--fs3) * 1.3));
	height: clamp(var(--fs2), calc(6.7cqi - 64px), calc(var(--fs3) * 1.3));
	object-fit: contain;}
:where(.lp-private) [data-lp="01"] .text {display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 0;}
:where(.lp-private) [data-lp="01"] .label {min-width: 0;
	font-size: var(--fs2);}
:where(.lp-private) [data-lp="01"] .tel {background: var(--mv-tel);}
:where(.lp-private) [data-lp="01"] .tel .label {font-size: var(--fs15);}
:where(.lp-private) [data-lp="01"] .number {font-size: var(--fs3);
	font-weight: 900;
	letter-spacing: -.045em;
	font-variant-numeric: lining-nums tabular-nums;}
:where(.lp-private) [data-lp="01"] .cta::after {width: 20px;
	height: 20px;
	border-width: 5px;}
:where(.lp-private) [data-lp="01"] .hours {font-size: clamp(var(--fs1), 1cqi, var(--fs12));
	font-weight: 700;}
:where(.lp-private) [data-lp="01"] .line {background: var(--cv_color2);}
:where(.lp-private) [data-lp="01"] .form {border-color: var(--mv-pink);
	background: var(--white);
	color: var(--mv-pink);}
:where(.lp-private) [data-lp="01"] em {color: var(--mv-pink);
	font-style: normal;}
:where(.lp-private) [data-lp="01"] p {text-wrap: pretty;
	word-break: normal;}
:where(.lp-private) [data-lp="01"] a:focus-visible {outline: 3px solid var(--text_color);
	outline-offset: 4px;}
:where(.lp-private) [data-lp="01"] .word {display: inline-block;}
:where(.lp-private) [data-lp="01"] .cta:focus-visible {outline: 3px solid var(--mv-ink, var(--text_color));
	outline-offset: 4px;}
@media screen and (max-width: 1440px) {
:where(.lp-private) [data-lp="01"] .number {font-size: var(--fs2);}
:where(.lp-private) [data-lp="01"] .label {font-size: var(--fs15);}
:where(.lp-private) [data-lp="01"] .cta {grid-template-columns: var(--fs2) minmax(0, 1fr) 14px;
	column-gap: var(--rem5);
	padding: var(--rem4);}
:where(.lp-private) [data-lp="01"] .icon {width: var(--fs2);
	height: var(--fs2);}
:where(.lp-private) [data-lp="01"] .mv .list li {font-size: var(--fs12);}
}
@media screen and (max-width: 1171px) {
:where(.lp-private) [data-lp="01"] .mv .copy {width: 60%;}
:where(.lp-private) [data-lp="01"] .mv .area {font-size: var(--fs12);}
:where(.lp-private) [data-lp="01"] .mv .lead {font-size: var(--fs15);}
:where(.lp-private) [data-lp="01"] .mv .pre {font-size: var(--fs12);}
:where(.lp-private) [data-lp="01"] .mv .inner {grid-template-columns: minmax(0, 1fr);}
:where(.lp-private) [data-lp="01"] .mv .intro {max-width: calc(var(--rem1) * 8);
	margin-inline: auto;}
:where(.lp-private) [data-lp="01"] .mv .intro p {font-size: var(--fs2);
	text-wrap: balance;}
:where(.lp-private) [data-lp="01"] .mv .list {width: min(100%, calc(var(--rem1) * 8));
	margin-inline: auto;
	transform: none;}
:where(.lp-private) [data-lp="01"] .mv .list li {padding: var(--rem4);
	font-size: var(--fs15);}
:where(.lp-private) [data-lp="01"] .cta {grid-template-columns: var(--fs2) minmax(0, 1fr) 12px;
	column-gap: var(--rem5);
	padding: var(--rem4);}
:where(.lp-private) [data-lp="01"] .actions {grid-template-columns: minmax(0, 1fr);
	max-width: calc(var(--rem1) * 8);}
:where(.lp-private) [data-lp="01"] .icon {width: var(--fs2);
	height: var(--fs2);}
:where(.lp-private) [data-lp="01"] .label {font-size: var(--fs15);}
:where(.lp-private) [data-lp="01"] .number {font-size: var(--fs2);}
:where(.lp-private) [data-lp="01"] .hours {font-size: var(--fs08);}
}
@media screen and (max-width: 768px) {
:where(.lp-private) [data-lp="01"] .mv .hero {aspect-ratio: 390 / 480;}
:where(.lp-private) [data-lp="01"] .mv .body {padding-top: var(--rem3);
	padding-bottom: var(--rem2);}
:where(.lp-private) [data-lp="01"] .mv .area {font-size: clamp(var(--fs08), 3.2cqi, var(--fs15));}
:where(.lp-private) [data-lp="01"] .mv .copy {width: 90%;
	margin-top: var(--rem4);}
:where(.lp-private) [data-lp="01"] .mv .pre {padding: var(--rem5) var(--rem4);
	font-size: var(--fs1);}
:where(.lp-private) [data-lp="01"] .mv h1 {margin-top: calc(var(--rem4) * .8);
	font-size: clamp(var(--fs3), 14.25cqi, calc(var(--fs3) * 2.1));
	line-height: 1.15;
	letter-spacing: -.075em;}
:where(.lp-private) [data-lp="01"] .mv h1 span {transform: translateY(-1px) scale(.95, 1.06);}
:where(.lp-private) [data-lp="01"] .mv h1 em {transform: translateY(-5px) scale(.88, 1.04);}
:where(.lp-private) [data-lp="01"] .mv .stroke {width: 70%;
	height: var(--rem4);
	margin-top: 0;}
:where(.lp-private) [data-lp="01"] .mv .lead {max-width: 17em;
	margin-top: calc(var(--rem5) * 1.5);
	font-size: clamp(var(--fs1), 3.5cqi, var(--fs2));
	line-height: 1.55;}
:where(.lp-private) [data-lp="01"] .mv .trust {margin-top: calc(var(--rem3) * -1);
	padding: calc(var(--rem3) + var(--rem5)) 0 calc(var(--rem4) + 2px);}
:where(.lp-private) [data-lp="01"] .mv .inner {gap: 0;}
:where(.lp-private) [data-lp="01"] .mv .intro {grid-template-columns: clamp(var(--rem2), 25cqi, calc(var(--rem1) * 2.4)) minmax(0, 1fr);
	gap: var(--rem4);}
:where(.lp-private) [data-lp="01"] .mv .intro p {font-size: clamp(var(--fs15), 6.25cqi, var(--fs3));
	line-height: 1.35;
	letter-spacing: -.065em;
	text-wrap: pretty;
	transform: translateY(-7px) scaleY(1.1);
	transform-origin: left top;}
:where(.lp-private) [data-lp="01"] .mv .list {width: 100%;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--rem5);}
:where(.lp-private) [data-lp="01"] .mv .list li {padding: calc(var(--rem5) * 1.5) 0;
	font-size: clamp(var(--fs08), 4cqi, var(--fs15));
	gap: var(--rem5);}
:where(.lp-private) [data-lp="01"] .mv .mark {width: clamp(var(--fs2), 8.97cqi, calc(var(--fs3) * 1.5));
	height: clamp(var(--fs1), 6.67cqi, calc(var(--fs3) * 1.1));
	transform: translateX(calc(var(--rem5) * -1));}
:where(.lp-private) [data-lp="01"] .mv .list li:nth-child(2) .mark {transform: translateX(calc(var(--rem5) * -1));}
:where(.lp-private) [data-lp="01"] .mv .list li:last-child .mark {width: clamp(var(--fs2), 11.8cqi, calc(var(--fs3) * 1.7));
	height: clamp(var(--fs1), 6.92cqi, calc(var(--fs3) * 1.1));
	transform: none;}
:where(.lp-private) [data-lp="01"] .actions {grid-template-columns: minmax(0, 1fr);
	gap: calc(var(--rem5) * 1.333);
	padding-block: var(--rem3);}
:where(.lp-private) [data-lp="01"] .cta {grid-template-columns: var(--fs2) minmax(0, 1fr) 14px;
	column-gap: var(--rem5);
	padding: calc(var(--rem4) * .8) var(--rem4);
	border-radius: calc(var(--rem4) * .8);}
:where(.lp-private) [data-lp="01"] .cta::after {width: 12px;
	height: 12px;
	border-width: 3px;}
:where(.lp-private) [data-lp="01"] .icon {width: var(--fs2);
	height: var(--fs2);}
:where(.lp-private) [data-lp="01"] .label {font-size: clamp(var(--fs15), 6.25cqi, var(--fs3));}
:where(.lp-private) [data-lp="01"] .tel {padding-block: var(--rem4);}
:where(.lp-private) [data-lp="01"] .tel .label {font-size: var(--fs1);}
:where(.lp-private) [data-lp="01"] .number {font-size: clamp(var(--fs2), 8.75cqi, calc(var(--fs3) * 1.5));
	line-height: 1.1;}
:where(.lp-private) [data-lp="01"] .hours {font-size: clamp(var(--fs08), 3.2cqi, var(--fs15));}
:where(.lp-private) [data-lp="01"] .mv .hero::after {content: none;}
}
@media screen and (min-width: 600px) and (max-width: 768px) {
:where(.lp-private) [data-lp="01"] .mv .hero {aspect-ratio: 390 / 400;}
:where(.lp-private) [data-lp="01"] .mv .photo {overflow: hidden;}
:where(.lp-private) [data-lp="01"] .mv .photo img {height: calc(100% + var(--rem2));
	transform: translateY(calc(var(--rem2) * -1));}
}
@media (min-width: 1921px) {
#site-content:has(.lp-private) {
        overflow-x: clip;
    }
#site-content .lp-private > [data-lp="01"] {
        max-width: 1920px;
        margin-inline: auto;
    }
}
body:has(.lp-private) {
    --text_color: var(--mv-ink);
    --bg_color2: var(--lp-paper);
    --main_color: var(--mv-tel);
    --main_color2: var(--mv-tel);
    --main_color3: color-mix(in srgb, var(--mv-tel) 26%, var(--white));
    --cv_color: var(--mv-tel);
}
body:has(.lp-private[data-theme="parents"]) {
    --mv-ink: #10283a;
    --mv-pink: #175974;
    --mv-tel: #174c63;
    --lp-paper: #eaf4f8;
}
body:has(.lp-private[data-theme="children"]) {
    --mv-ink: #34251c;
    --mv-pink: #984828;
    --mv-tel: #91492f;
    --lp-paper: #faf0df;
}
body:has(.lp-private[data-theme="one-day"]) {
    --mv-ink: #102339;
    --mv-pink: #795a29;
    --mv-tel: #7d5b27;
    --lp-paper: #f6f1e7;
}
[data-theme] [data-lp="01"],
[data-theme] [data-lp]:has(> .story) {
    max-width: none;
}
[data-theme] .cta.form .icon {
    filter: grayscale(1);
}
[data-theme="one-day"] .cta.form {
    color: var(--mv-ink);
    border-color: var(--mv-ink);
}
[data-theme] .key {
    background: var(--white);
}
:where(.lp-private) .key .kv {
    background: var(--lp-paper);
}
:where(.lp-private) .key .scene {
    display: grid;
    grid-template-columns: minmax(0, 51fr) minmax(0, 49fr);
    max-width: 1920px;
    margin-inline: auto;
}
:where(.lp-private) .key .photo {
    display: block;
}
:where(.lp-private) .key .photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
:where(.lp-private) .key .head {
    align-self: center;
    padding: clamp(var(--rem3), 3vw, var(--rem2));
}
:where(.lp-private) .key .area {
    width: fit-content;
    padding: var(--rem5) var(--rem4);
    background: var(--mv-tel);
    color: var(--white);
    font-size: clamp(var(--fs08), 1.55vw, var(--fs15));
    line-height: 1.4;
}
:where(.lp-private) .key .pre {
    margin-top: var(--rem4);
    font-size: clamp(var(--fs1), 1.95vw, var(--fs2));
    line-height: 1.5;
}
:where(.lp-private) .key h1 {
    margin-top: var(--rem5);
    font-size: clamp(var(--fs25), 6.95vw, calc(var(--fs3) * 2.56));
    line-height: 1.05;
    letter-spacing: -.045em;
    text-wrap: balance;
}
:where(.lp-private) .key h1 span,
:where(.lp-private) .key h1 em {
    display: block;
}
:where(.lp-private) .key h1 em {
    color: var(--mv-pink);
}
:where(.lp-private) .key .intro,
:where(.lp-private) .key .rep,
:where(.lp-private) .key .pledge {
    font-size: clamp(var(--fs1), 1.55vw, var(--fs15));
    line-height: 1.55;
    word-break: auto-phrase;
}
:where(.lp-private) .key .head .intro {
    margin-top: var(--rem3);
}
:where(.lp-private) .key .head .rep {
    margin-top: var(--rem5);
}
:where(.lp-private) .key .assure {
    padding-block: var(--rem3) var(--rem4);
    text-align: center;
}
:where(.lp-private) .key .badges {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: min(100%, calc(var(--rem1) * 11.5));
    margin-inline: auto;
}
:where(.lp-private) .key .badges li {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--rem4);
    padding-inline: var(--rem4);
    font-weight: 700;
    font-size: clamp(var(--fs1), 1.7vw, var(--fs15));
    line-height: 1.3;
}
:where(.lp-private) .key .badges li + li {
    border-left: 1px solid var(--main_color3);
}
:where(.lp-private) .key .badges img {
    flex: none;
    width: clamp(var(--fs12), 3.1vw, var(--fs3));
    height: auto;
    mix-blend-mode: multiply;
}
[data-theme="parents"] .key .photo {
    aspect-ratio: 852 / 602;
}
[data-theme="parents"] .key .kv {
    background: #e8f3f7;
}
[data-theme="children"] .key .scene {
    grid-template-columns: minmax(0, 1fr);
}
[data-theme="children"] .key .kv {
    background: #f6ecd9;
}
[data-theme="children"] .key .head {
    padding-block: var(--rem4);
    text-align: center;
}
[data-theme="children"] .key .area {
    margin-inline: auto;
}
[data-theme="children"] .key h1 {
    font-size: clamp(var(--fs25), 5vw, calc(var(--fs3) * 1.72));
}
[data-theme="children"] .key .photo {
    aspect-ratio: 1672 / 343;
}
[data-theme="children"] .key .assure,
[data-theme="one-day"] .key .assure {
    background: var(--lp-paper);
}
[data-theme="children"] .key .rep {
    width: min(100%, calc(var(--rem1) * 9));
    margin: var(--rem5) auto var(--rem4);
    padding: var(--rem5) var(--rem4);
    color: var(--white);
    background: var(--mv-tel);
}
[data-theme="one-day"] .key .kv {
    color: var(--white);
    background: #0f2137;
}
[data-theme="one-day"] .key .scene {
    grid-template-columns: minmax(0, 48fr) minmax(0, 52fr);
}
[data-theme="one-day"] .key .area {
    padding: 0 0 0 var(--rem4);
    border-left: 4px solid #dfbf78;
    color: inherit;
    background: transparent;
}
[data-theme="one-day"] .key h1,
[data-theme="one-day"] .key .pre {
    color: inherit;
}
[data-theme="one-day"] .key h1 em {
    color: #dfbf78;
}
[data-theme="one-day"] .key .photo {
    aspect-ratio: 873 / 469;
    mask-image: linear-gradient(to right, transparent, black 22%);
}
[data-theme="one-day"] .key .pledge {
    margin-top: var(--rem4);
    font-weight: 700;
}
@media (max-width: 1024px) {
[data-theme] .key .head {
        padding-inline: var(--rem3);
    }
}
@media (max-width: 768px) {
[data-theme] .key .scene {
        grid-template-columns: minmax(0, 1fr);
    }
[data-theme] .key .photo {
        aspect-ratio: 916 / 475;
        mask-image: none;
    }
[data-theme="children"] .key .photo {
        aspect-ratio: 916 / 518;
    }
[data-theme="one-day"] .key .photo {
        aspect-ratio: 916 / 502;
    }
[data-theme] .key .head {
        padding: var(--rem4) 5% var(--rem3);
    }
[data-theme="parents"] .key .head {
        padding-top: 0;
    }
[data-theme="parents"] .key .area {
        position: relative;
        margin-top: calc(var(--rem5) * -1);
    }
[data-theme="children"] .key .head {
        text-align: left;
    }
[data-theme="children"] .key .area {
        margin-inline: 0;
    }
:where(.lp-private) .key .area {
        font-size: var(--fs08);
    }
:where(.lp-private) .key .pre {
        margin-top: var(--rem5);
        font-size: var(--fs1);
    }
:where(.lp-private) .key h1 {
        font-size: clamp(var(--fs2), 14vw, calc(var(--fs3) * 1.18));
    }
[data-theme="children"] .key h1 {
        font-size: clamp(var(--fs15), 8.55vw, var(--fs3));
    }
:where(.lp-private) .key .head .intro {
        margin-top: var(--rem4);
    }
:where(.lp-private) .key .intro,
    :where(.lp-private) .key .rep,
    :where(.lp-private) .key .pledge {
        font-size: var(--fs1);
    }
:where(.lp-private) .key .assure {
        padding-block: var(--rem4);
    }
:where(.lp-private) .key .badges li {
        gap: var(--rem5);
        padding-inline: var(--rem5);
        font-size: var(--fs08);
    }
[data-theme="parents"] .key .badges,
    [data-theme="children"] .key .badges {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.36fr);
    }
:where(.lp-private) .key .badges img {
        width: var(--fs12);
    }
[data-theme="one-day"] .key .badges li {
        flex-direction: column;
    }
}
@media (max-width: 360px) {
:where(.lp-private) .key .badges li {
        flex-direction: column;
    }
}
body:has(.lp-private) #site-sticky.cta-overlap {
    visibility: hidden;
    pointer-events: none;
    transition: none;
}

/* MVより下の共通レイアウトと、ページごとの写真構成 */
.lp-private[data-theme="parents"] {
    --chapter-dark: #142e42;
    --chapter-bright: #b6dce9;
}

.lp-private[data-theme="children"] {
    --chapter-dark: #542e23;
    --chapter-bright: #f7c6a4;
}

.lp-private[data-theme="one-day"] {
    --chapter-dark: #112238;
    --chapter-bright: #e9c785;
}

.lp-private .chap {
    --ink: var(--mv-ink);
    --accent: var(--mv-pink);
    --rule: color-mix(in srgb, var(--ink) 22%, transparent);
    padding-block: var(--rem1);
    background: var(--white);
    color: var(--ink);
}

.lp-private .chap.tint {
    background: var(--lp-paper);
}

.lp-private .chap.warm {
    background: #f5e3d1;
}

.lp-private .chap.dark {
    --ink: var(--white);
    --accent: var(--chapter-bright);
    background: var(--chapter-dark);
}

.lp-private .chap .intro {
    max-width: calc(var(--rem1) * 8);
}

.lp-private .chap h2 {
    margin: 0;
    color: var(--ink);
    font-size: clamp(var(--fs3), 3.85vw, calc(var(--fs3) * 1.32));
    line-height: 1.27;
    font-weight: 700;
    letter-spacing: .015em;
    text-wrap: balance;
    word-break: auto-phrase;
}

.lp-private .chap h3 {
    margin: 0;
    color: var(--ink);
    font-size: var(--fs15);
    line-height: 1.45;
    font-weight: 700;
    text-wrap: balance;
    word-break: auto-phrase;
}

.lp-private .chap .word {
    display: inline-block;
    max-width: 100%;
}

.lp-private .chap em {
    color: var(--accent);
    font-style: normal;
}

.lp-private .chap p {
    line-height: 1.75;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .chap .eyebrow {
    margin: 0 0 var(--rem4);
    color: var(--accent);
    font-size: var(--fs1);
    font-weight: 700;
    letter-spacing: .11em;
}

.lp-private .chap .lead {
    max-width: 34em;
    margin: var(--rem3) 0 0;
    font-size: var(--fs12);
}

.lp-private .chap .foot {
    margin: var(--rem3) 0 0;
    font-size: var(--fs1);
}

.lp-private .chap .media {
    margin: 0;
    overflow: clip;
}

.lp-private .chap .media picture,
.lp-private .chap .media img {
    display: block;
    width: 100%;
}

.lp-private .chap .media img {
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.lp-private .chap .num {
    color: var(--accent);
    font-size: var(--fs2);
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

/* それぞれの導入 */
.lp-private[data-theme="parents"] .opening {
    padding: 0;
}

.lp-private .opening-split {
    display: grid;
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
    width: 100%;
    max-width: 1920px;
}

.lp-private .opening-copy {
    align-self: center;
    padding: var(--rem2) var(--rem2) var(--rem2) max(var(--rem2), calc((min(100vw, 1920px) - 1440px) / 2));
}

.lp-private .opening-split .media {
    display: grid;
}

.lp-private .opening-split .media img {
    height: 100%;
    object-position: 60% center;
}

.lp-private .opening .signals {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--rem4) var(--rem3);
    margin: var(--rem3) 0 0;
    padding: 0;
    list-style: none;
}

.lp-private .opening .signals li {
    padding-top: var(--rem4);
    border-top: 1px solid var(--rule);
    font-size: var(--fs12);
    font-weight: 700;
    line-height: 1.55;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .opening-warm > .intro {
    max-width: calc(var(--rem1) * 9);
}

.lp-private .opening-story {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr);
    align-items: end;
    margin-top: var(--rem2);
}

.lp-private .opening-story .media img {
    aspect-ratio: 1.8;
    object-position: center 38%;
}

.lp-private .signal-panel {
    position: relative;
    margin: 0 0 var(--rem3) calc(var(--rem2) * -1);
    padding: var(--rem2);
    background: var(--white);
    box-shadow: 0 var(--rem4) var(--rem2) color-mix(in srgb, var(--mv-ink) 14%, transparent);
}

.lp-private .signal-panel .signals {
    margin-top: 0;
}

.lp-private .opening-memo {
    padding: var(--rem2);
    border: 1px solid var(--rule);
    background: var(--lp-paper);
    text-align: center;
}

.lp-private .opening-memo .intro,
.lp-private .opening-memo .lead {
    margin-inline: auto;
}

.lp-private .opening-memo .signals {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--rem3);
}

/* 相談の目的と初回相談 */
.lp-private .prepare-layout,
.lp-private .plan-layout,
.lp-private .scope-layout,
.lp-private .estimate-layout,
.lp-private .report-layout,
.lp-private .area-layout,
.lp-private .office-layout,
.lp-private .contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
    align-items: center;
    gap: var(--rem2);
}

.lp-private .prepare-layout .media img {
    aspect-ratio: 1.28;
    object-position: 55% center;
}

.lp-private[data-theme="parents"] .prepare-layout > .media {
    grid-column: 1;
    grid-row: 1;
}

.lp-private[data-theme="parents"] .prepare-copy {
    grid-column: 2;
}

.lp-private .note-list,
.lp-private .note-steps,
.lp-private .report-items {
    margin: var(--rem3) 0 0;
    padding: 0;
}

.lp-private .note-list > div,
.lp-private .note-steps > li,
.lp-private .report-items > li {
    padding-block: var(--rem4);
    border-top: 1px solid var(--rule);
}

.lp-private .note-list dt,
.lp-private .note-steps > li,
.lp-private .report-items > li {
    display: grid;
    grid-template-columns: var(--fs3) minmax(0, 1fr);
    align-items: start;
    gap: var(--rem4);
    font-size: var(--fs12);
    font-weight: 700;
}

.lp-private .note-list dd {
    margin: var(--rem5) 0 0 calc(var(--fs3) + var(--rem4));
    font-size: var(--fs1);
    line-height: 1.65;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .note-steps p,
.lp-private .report-items p {
    margin: 0;
}

.lp-private .planning {
    padding: var(--rem3) var(--rem2);
    background: var(--white);
}

.lp-private .planning .note-steps {
    margin-top: 0;
}

.lp-private .policy-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    align-items: stretch;
    gap: var(--rem2);
    margin-top: var(--rem2);
}

.lp-private .policy-layout .media {
    align-self: start;
    background: var(--chapter-dark);
    color: var(--white);
}

.lp-private .policy-layout .media img {
    aspect-ratio: 1.62;
    object-position: center 38%;
}

.lp-private .policy-layout figcaption {
    padding: var(--rem4) var(--rem3);
    font-size: var(--fs1);
    font-weight: 700;
}

.lp-private .short-qa {
    align-self: center;
    margin: 0;
    padding: var(--rem3);
    background: var(--lp-paper);
}

.lp-private .short-qa > div + div {
    margin-top: var(--rem3);
    padding-top: var(--rem3);
    border-top: 1px solid var(--rule);
}

.lp-private .short-qa dt,
.lp-private .short-qa dd {
    display: grid;
    grid-template-columns: var(--fs15) minmax(0, 1fr);
    gap: var(--rem4);
    margin: 0;
    line-height: 1.55;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .short-qa dt {
    font-size: var(--fs12);
    font-weight: 700;
}

.lp-private .short-qa dd {
    margin-top: var(--rem5);
    font-size: var(--fs1);
}

.lp-private .short-qa b {
    color: var(--accent);
}

/* 調査範囲と見積もり */
.lp-private .scope.dark .scope-layout {
    grid-template-columns: minmax(0, 1.07fr) minmax(0, .93fr);
}

.lp-private .scope.dark .media img {
    aspect-ratio: 1.24;
    object-position: 64% center;
}

.lp-private .records {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    margin: var(--rem3) 0 0;
    padding: 1px;
    background: var(--rule);
}

.lp-private .scope.tint .records {
    margin-top: 0;
}

.lp-private .records > div {
    padding: var(--rem3);
    background: var(--white);
    color: var(--mv-ink);
}

.lp-private .scope.dark .records > div {
    background: var(--chapter-dark);
    color: var(--white);
}

.lp-private .records dt {
    color: var(--accent);
    font-size: var(--fs1);
    font-weight: 700;
}

.lp-private .records dd {
    margin: var(--rem5) 0 0;
    font-size: var(--fs12);
    font-weight: 700;
    line-height: 1.5;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .estimate-layout {
    align-items: start;
}

.lp-private .terms-box {
    padding: var(--rem3);
    background: var(--lp-paper);
}

.lp-private .terms {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--rem4);
    margin: 0;
    padding: 0;
    list-style: none;
}

.lp-private .terms > li {
    padding: var(--rem3);
    border-top: 3px solid var(--accent);
    background: var(--white);
}

.lp-private .terms .num {
    display: block;
    margin-bottom: var(--rem4);
}

.lp-private .terms p {
    margin: 0;
    font-size: var(--fs12);
    font-weight: 700;
}

.lp-private .terms h3 + p {
    margin-top: var(--rem5);
    font-size: var(--fs1);
    font-weight: 400;
}

.lp-private[data-theme="one-day"] .terms-box {
    background: var(--chapter-dark);
}

.lp-private[data-theme="one-day"] .terms-box .num {
    color: var(--mv-pink);
}

/* 相談例 */
.lp-private .case-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--rem3);
    margin: var(--rem2) 0 0;
    padding: 0;
    list-style: none;
}

.lp-private .case-grid > li {
    background: var(--lp-paper);
}

.lp-private .case-copy {
    padding: var(--rem3);
}

.lp-private .case-copy .case-label {
    margin: 0 0 var(--rem4);
    color: var(--accent);
    font-size: var(--fs1);
    font-weight: 700;
    letter-spacing: .06em;
}

.lp-private .case-label span {
    padding-left: var(--rem5);
    font-size: var(--fs12);
    font-variant-numeric: tabular-nums;
}

.lp-private .case-copy h3 + p {
    margin: var(--rem4) 0 0;
    font-size: var(--fs1);
}

.lp-private[data-theme="children"] .case-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
    grid-template-rows: repeat(2, auto);
    align-items: stretch;
}

.lp-private[data-theme="children"] .case-grid li:first-child {
    grid-row: span 2;
}

.lp-private[data-theme="children"] .case-grid li:first-child .media img {
    aspect-ratio: 1.77;
    object-position: center 34%;
}

.lp-private[data-theme="children"] .case-grid li:not(:first-child) {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    align-items: stretch;
}

.lp-private[data-theme="children"] .case-grid li:not(:first-child) .media {
    display: grid;
}

.lp-private[data-theme="children"] .case-grid li:not(:first-child) .media img {
    height: 100%;
    aspect-ratio: 1;
    object-position: center 34%;
}

.lp-private[data-theme="one-day"] .case-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--rem4);
}

.lp-private[data-theme="one-day"] .case-copy {
    display: grid;
    grid-template-columns: minmax(0, .22fr) minmax(0, .94fr) minmax(0, .84fr);
    align-items: center;
    gap: var(--rem3);
}

.lp-private[data-theme="one-day"] .case-copy p {
    margin: 0;
}

/* 報告、代表、地域 */
.lp-private .report-card,
.lp-private .office-card {
    padding: var(--rem2);
    background: var(--white);
}

.lp-private .report-card .foot {
    padding-top: var(--rem4);
    border-top: 1px solid var(--rule);
}

.lp-private .rep-layout {
    display: grid;
    grid-template-columns: minmax(0, .76fr) minmax(0, 1.24fr);
    align-items: center;
    gap: var(--rem1);
}

.lp-private .portrait {
    margin: 0;
    background: var(--lp-paper);
}

.lp-private .portrait-frame {
    display: grid;
    place-items: end center;
    padding: var(--rem4) var(--rem3) 0;
}

.lp-private .portrait img {
    display: block;
    width: min(100%, calc(var(--rem1) * 4.4));
    height: auto;
    margin-inline: auto;
}

.lp-private .portrait figcaption {
    padding: var(--rem4) var(--rem3);
    background: var(--chapter-dark);
    color: var(--white);
    font-size: var(--fs12);
    text-align: center;
}

.lp-private .rep-copy .prose {
    max-width: 37em;
    margin-top: var(--rem3);
    font-size: var(--fs12);
}

.lp-private .rep-copy .promise {
    margin-top: var(--rem3);
    color: var(--accent);
    font-weight: 700;
}

.lp-private .area-panel {
    padding-block: var(--rem2);
}

.lp-private .area-panel .media img {
    aspect-ratio: 1.82;
}

.lp-private .area-copy h2 {
    font-size: var(--fs3);
}

.lp-private .area-copy > div {
    margin-top: var(--rem3);
}

.lp-private .area-copy p + p {
    margin-top: var(--rem4);
}

/* 相談ボタン */
.lp-private .contact {
    padding-block: var(--rem2);
}

.lp-private .contact-light {
    border-bottom: 1px solid var(--rule);
}

.lp-private .contact h2 {
    font-size: var(--fs25);
}

.lp-private .contact .lead {
    margin-top: var(--rem4);
    font-size: var(--fs1);
}

.lp-private .contact-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--rem4);
}

.lp-private .contact-actions .cta {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--rem4);
    padding: var(--rem3) var(--rem4);
    border: 1px solid transparent;
    border-radius: var(--rem4);
    font-size: var(--fs12);
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    text-decoration: none;
    text-wrap: balance;
}

.lp-private .contact-actions .cta:hover {
    box-shadow: inset 0 0 0 2px currentColor;
}

.lp-private .contact-actions .cta:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 4px;
}

.lp-private .contact-actions .tel {
    border-color: color-mix(in srgb, var(--white) 34%, transparent);
    background: var(--mv-tel);
    color: var(--white);
}

.lp-private .contact-actions .line {
    background: var(--cv_color2);
    color: var(--white);
}

.lp-private .contact-actions .form {
    border-color: var(--mv-tel);
    background: var(--white);
    color: var(--mv-ink);
}

.lp-private .contact-actions .icon {
    flex: 0 0 auto;
    width: var(--fs15);
    height: var(--fs15);
    object-fit: contain;
}

.lp-private .closing-panel {
    position: relative;
    isolation: isolate;
    overflow: clip;
    text-align: center;
}

.lp-private .closing-panel > .back {
    position: absolute;
    z-index: -1;
    inset: 0 0 0 auto;
    width: min(68%, 1200px);
    height: 100%;
    object-fit: cover;
    object-position: 72% 57%;
    opacity: .44;
    filter: blur(3px);
    mask-image: linear-gradient(90deg, transparent, #000 78%);
    pointer-events: none;
}

.lp-private .closing-panel .intro,
.lp-private .closing-panel .lead {
    margin-inline: auto;
}

.lp-private .closing-panel .reassure {
    margin: var(--rem3) 0 0;
    color: var(--accent);
    font-size: var(--fs12);
    font-weight: 700;
}

.lp-private .closing-panel .contact-actions {
    margin-top: var(--rem2);
}

.lp-private .closing-panel .cta {
    padding: var(--rem3);
    font-size: var(--fs15);
}

.lp-private .closing-panel .icon {
    width: var(--fs2);
    height: var(--fs2);
}

.lp-private .closing-panel .cta .text {
    display: grid;
    justify-items: center;
    gap: var(--rem5);
}

.lp-private .closing-panel .tel .label,
.lp-private .closing-panel .hours {
    font-size: var(--fs1);
}

.lp-private .closing-panel .number {
    font-size: var(--fs25);
    font-variant-numeric: tabular-nums;
    letter-spacing: -.025em;
}

/* 相談から報告、FAQ、事務所 */
.lp-private .phase-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--rem3);
    margin-top: var(--rem2);
}

.lp-private .phase {
    background: var(--white);
}

.lp-private .phase-head {
    margin: 0;
    padding: var(--rem4) var(--rem3);
    background: var(--chapter-dark);
    color: var(--white);
    font-size: var(--fs12);
    font-weight: 700;
}

.lp-private .steps {
    margin: 0;
    padding: var(--rem3);
    list-style: none;
}

.lp-private .steps > li {
    display: grid;
    grid-template-columns: var(--fs3) minmax(0, 1fr);
    gap: var(--rem4);
}

.lp-private .steps > li + li {
    margin-top: var(--rem3);
    padding-top: var(--rem3);
    border-top: 1px solid var(--rule);
}

.lp-private .step-number {
    color: var(--accent);
    font-size: var(--fs2);
    font-weight: 700;
    line-height: 1.3;
}

.lp-private .steps h3 + p {
    margin: var(--rem5) 0 0;
    font-size: var(--fs1);
}

.lp-private .flow-foot {
    color: var(--accent);
    font-weight: 700;
}

.lp-private .faq-layout {
    display: grid;
    grid-template-columns: minmax(0, .68fr) minmax(0, 1.32fr);
    align-items: start;
    gap: var(--rem2);
}

.lp-private .faq-layout .intro {
    padding: var(--rem3);
    border-top: 3px solid var(--accent);
    background: var(--lp-paper);
}

.lp-private .faq-layout > ul {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--rule);
    list-style: none;
}

.lp-private .faq-layout li {
    border-bottom: 1px solid var(--rule);
}

.lp-private .faq-layout summary {
    display: grid;
    grid-template-columns: var(--fs15) minmax(0, 1fr) var(--fs15);
    gap: var(--rem4);
    padding: var(--rem3) var(--rem4);
    color: var(--ink);
    font-size: var(--fs12);
    line-height: 1.5;
    font-weight: 700;
    list-style: none;
    cursor: pointer;
}

.lp-private .faq-layout summary::-webkit-details-marker {
    display: none;
}

.lp-private .faq-layout summary:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: -2px;
}

.lp-private .faq-layout .q,
.lp-private .faq-layout .toggle {
    color: var(--accent);
    text-align: center;
}

.lp-private .faq-layout .question {
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .faq-layout .toggle::before {
    content: "+";
}

.lp-private .faq-layout details[open] {
    background: var(--lp-paper);
}

.lp-private .faq-layout details[open] .toggle::before {
    content: "−";
}

.lp-private .faq-layout .answer {
    margin: 0;
    padding: 0 var(--rem3) var(--rem3) calc(var(--fs15) + var(--rem4) * 2);
    font-size: var(--fs1);
}

.lp-private .office-layout {
    align-items: start;
}

.lp-private .office-layout .brand {
    color: var(--accent);
    font-size: var(--fs15);
    font-weight: 700;
}

.lp-private .office-card dl {
    margin: 0;
}

.lp-private .office-card dl > div {
    display: grid;
    grid-template-columns: 6em minmax(0, 1fr);
    gap: var(--rem4);
    padding-block: var(--rem4);
    border-top: 1px solid var(--rule);
    font-size: var(--fs1);
    line-height: 1.65;
}

.lp-private .office-card dt {
    font-weight: 700;
}

.lp-private .office-card dd {
    margin: 0;
    text-wrap: pretty;
    word-break: auto-phrase;
}

.lp-private .office-card small {
    display: block;
    font-size: var(--fs08);
}

@media (max-width: 1171px) {
    .lp-private .chap h2 {
        font-size: var(--fs25);
    }

    .lp-private .chap h3 {
        font-size: var(--fs12);
    }

    .lp-private .terms > li {
        padding: var(--rem4);
    }

    .lp-private .rep-layout {
        gap: var(--rem2);
    }

    .lp-private .closing-panel .cta {
        font-size: var(--fs12);
    }
}

@media (max-width: 1024px) {
    .lp-private .records > div {
        padding: var(--rem4);
    }

    .lp-private .records dd {
        font-size: var(--fs1);
    }

    .lp-private .contact-layout,
    .lp-private .estimate-layout,
    .lp-private .office-layout,
    .lp-private .faq-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem3);
    }

    .lp-private .opening-copy {
        padding-inline: var(--rem3);
    }

    .lp-private .signal-panel {
        padding: var(--rem3);
    }

    .lp-private .signal-panel .signals {
        grid-template-columns: minmax(0, 1fr);
    }

    .lp-private .case-copy {
        padding: var(--rem4);
    }
}

@media (max-width: 900px) {
    .lp-private .closing-panel > .back {
        width: 100%;
        height: 64%;
        opacity: .32;
        mask-image: linear-gradient(#000, transparent);
    }

    .lp-private .chap {
        padding-block: var(--rem2);
    }

    .lp-private .chap h2 {
        font-size: var(--fs25);
    }

    .lp-private .opening-split h2,
    .lp-private .opening-warm h2,
    .lp-private .opening-memo h2,
    .lp-private .policy h2,
    .lp-private .cases h2,
    .lp-private .closing-panel h2,
    .lp-private[data-theme="children"] .prepare h2 {
        font-size: clamp(var(--fs15), 7.5vw, var(--fs25));
    }

    .lp-private .chap .lead {
        margin-top: var(--rem4);
        font-size: var(--fs1);
    }

    .lp-private .chap .eyebrow {
        margin-bottom: var(--rem4);
        font-size: var(--fs08);
    }

    .lp-private .opening-split,
    .lp-private .opening-story,
    .lp-private .prepare-layout,
    .lp-private .plan-layout,
    .lp-private .policy-layout,
    .lp-private .scope-layout,
    .lp-private .scope.dark .scope-layout,
    .lp-private .report-layout,
    .lp-private .rep-layout,
    .lp-private .area-layout,
    .lp-private .case-grid,
    .lp-private[data-theme="children"] .case-grid,
    .lp-private .phase-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem3);
    }

    .lp-private .opening-copy,
    .lp-private .prepare-layout .prepare-copy {
        display: contents;
    }

    .lp-private .opening-split > .media,
    .lp-private[data-theme="parents"] .prepare-layout > .media,
    .lp-private .prepare-layout > .media {
        grid-row: 2;
        grid-column: auto;
    }

    .lp-private .opening-split .intro {
        padding: var(--rem3) var(--rem3) 0;
    }

    .lp-private .opening-split .signals {
        margin-top: 0;
        padding: 0 var(--rem3) var(--rem3);
    }

    .lp-private .opening-split .media img {
        height: auto;
        aspect-ratio: 1.56;
    }

    .lp-private .opening .signals li {
        font-size: var(--fs1);
    }

    .lp-private .opening-story {
        gap: 0;
        margin-top: var(--rem3);
    }

    .lp-private .signal-panel {
        margin: calc(var(--rem4) * -1) var(--rem4) 0;
        padding: var(--rem3);
    }

    .lp-private .signal-panel .signals,
    .lp-private .opening-memo .signals {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--rem4);
    }

    .lp-private .opening-memo,
    .lp-private .report-card,
    .lp-private .office-card,
    .lp-private .planning,
    .lp-private .short-qa,
    .lp-private .terms-box {
        padding: var(--rem3);
    }

    .lp-private .note-list,
    .lp-private .note-steps {
        margin-top: 0;
    }

    .lp-private .note-list > div:last-child {
        padding-bottom: 0;
    }

    .lp-private .note-list dt,
    .lp-private .note-steps > li,
    .lp-private .report-items > li {
        grid-template-columns: calc(var(--fs2) * 1.3) minmax(0, 1fr);
    }

    .lp-private .note-list dd {
        margin-left: calc(var(--fs2) * 1.3 + var(--rem4));
    }

    .lp-private .policy-layout,
    .lp-private .case-grid,
    .lp-private .phase-grid {
        margin-top: var(--rem3);
    }

    .lp-private .terms p {
        font-size: var(--fs1);
    }

    .lp-private .terms h3 + p {
        font-size: var(--fs08);
    }

    .lp-private[data-theme="children"] .case-grid {
        grid-template-rows: auto;
    }

    .lp-private[data-theme="children"] .case-grid li:first-child {
        grid-row: auto;
    }

    .lp-private[data-theme="children"] .case-grid li:first-child .media img {
        aspect-ratio: 1.43;
    }

    .lp-private[data-theme="one-day"] .case-copy {
        display: block;
    }

    .lp-private[data-theme="one-day"] .case-copy .case-label {
        margin-bottom: var(--rem4);
    }

    .lp-private[data-theme="one-day"] .case-copy h3 + p {
        margin-top: var(--rem4);
    }

    .lp-private .portrait {
        width: min(100%, calc(var(--rem1) * 4.2));
        margin-inline: auto;
    }

    .lp-private .rep-copy .prose {
        font-size: var(--fs1);
    }

    .lp-private .area-copy h2,
    .lp-private .contact h2 {
        font-size: var(--fs2);
    }

    .lp-private .contact-actions {
        gap: var(--rem5);
    }

    .lp-private .contact-actions .cta {
        gap: var(--rem5);
        padding: calc(var(--rem4) + var(--rem5)) var(--rem5);
        font-size: var(--fs1);
    }

    .lp-private .contact-actions .icon {
        width: var(--fs12);
        height: var(--fs12);
    }

    .lp-private .closing-panel .contact-actions {
        grid-template-columns: minmax(0, 1fr);
        margin-top: var(--rem3);
    }

    .lp-private .closing-panel .cta {
        padding: calc(var(--rem4) + var(--rem5));
        font-size: var(--fs12);
    }

    .lp-private .closing-panel .icon {
        width: var(--fs2);
        height: var(--fs2);
    }

    .lp-private .closing-panel .number {
        font-size: var(--fs2);
    }

    .lp-private .steps {
        padding: var(--rem3) var(--rem4);
    }

    .lp-private .steps > li {
        grid-template-columns: var(--fs2) minmax(0, 1fr);
    }

    .lp-private .step-number {
        font-size: var(--fs15);
    }

    .lp-private .faq-layout summary {
        padding-block: var(--rem4);
    }

    .lp-private .office-card dl > div {
        gap: var(--rem5);
    }
}

@media (max-width: 480px) {
    .lp-private .contact .cta {
        min-height: 44px;
    }

    .lp-private .contact .cta::after {
        content: none;
    }

    .lp-private .terms {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem5);
    }

    .lp-private .terms > li {
        display: grid;
        grid-template-columns: var(--fs2) minmax(0, 1fr);
        align-items: baseline;
        gap: var(--rem5) var(--rem4);
        border-top: 0;
        border-inline-start: 3px solid var(--accent);
    }

    .lp-private .terms .num {
        grid-row: 1 / span 2;
        margin: 0;
        font-size: var(--fs15);
    }

    .lp-private .terms h3 + p {
        margin: 0;
        font-size: var(--fs1);
    }

    .lp-private .faq-layout summary {
        grid-template-columns: var(--fs1) minmax(0, 1fr) var(--fs1);
        gap: var(--rem5);
        padding-inline: var(--rem5);
        font-size: var(--fs1);
    }

    .lp-private .faq-layout .answer {
        padding-inline-start: calc(var(--fs1) + var(--rem5) * 2);
    }
}


@media (min-width: 1025px) {
    .lp-private[data-theme="one-day"] .phase-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .lp-private[data-theme="one-day"] .steps {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: var(--rem3);
    }

    .lp-private[data-theme="one-day"] .steps > li {
        grid-template-columns: minmax(0, 1fr);
        align-content: start;
    }

    .lp-private[data-theme="one-day"] .steps > li + li {
        margin-top: 0;
        padding: 0 0 0 var(--rem3);
        border-top: 0;
        border-inline-start: 1px solid var(--rule);
    }
}

/* 料金の目安 */
.lp-private #s06 {
    padding-block: var(--rem2);
}

.lp-private #s06 .amount {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--rem5);
    margin: var(--rem5) 0 var(--rem4);
    color: var(--accent);
    font-size: var(--fs15);
    font-weight: 700;
    line-height: 1.1;
}

.lp-private #s06 .amount strong {
    font-size: clamp(var(--fs3), 5.4vw, calc(var(--fs3) * 1.55));
    font-variant-numeric: tabular-nums;
    letter-spacing: -.025em;
}

.lp-private #s06 .fee-included {
    margin: 0;
    font-size: var(--fs1);
    font-weight: 700;
}

.lp-private #s06 .fee-note {
    max-width: 33em;
    margin: var(--rem5) 0 0;
    font-size: var(--fs1);
}

.lp-private #s06 .terms-box {
    padding: 0;
    background: transparent;
}

.lp-private #s06 .terms > li {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: baseline;
    gap: var(--rem4);
    padding: var(--rem4) 0 0;
    border: 0;
    border-block-start: 1px solid var(--rule);
    background: transparent;
}

.lp-private #s06 .terms .num {
    margin: 0;
    font-size: var(--fs15);
}

@media (max-width: 599px) {
    .lp-private #s06 h2 {
        font-size: var(--fs2);
    }
}

.lp-private #s06 .day-fee {
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
    align-items: start;
    gap: var(--rem2);
}

.lp-private #s06 .fee-lead,
.lp-private #s06 .fee-plan {
    display: grid;
    gap: var(--rem3);
}

.lp-private #s06 .fee-lead .price {
    --ink: var(--white);
    --accent: var(--chapter-bright);
    padding: var(--rem3);
    border-block-start: 3px solid var(--chapter-bright);
    background: var(--chapter-dark);
    color: var(--ink);
}

.lp-private #s06 .fee-plan .media img {
    aspect-ratio: 2.45;
    object-position: center 60%;
}

.lp-private #s06 .fee-plan .terms {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--rem4);
}

.lp-private #s06 .fee-plan .terms h3 {
    font-size: var(--fs12);
}

.lp-private #s06 .fee-plan .terms h3 + p {
    margin-top: var(--rem5);
    font-size: var(--fs1);
}

@media (min-width: 1172px) {
    .lp-private #s06 .day-fee h2 {
        font-size: var(--fs3);
    }
}

@media (max-width: 900px) {
    .lp-private #s06 .day-fee {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--rem3);
    }

    .lp-private #s06 .fee-plan .media img {
        aspect-ratio: 2.15;
    }
}

@media (max-width: 768px) {
    .lp-private .chap .intro > .eyebrow,
    .lp-private .chap .intro > h2 {
        text-align: center;
    }
}