
:root{--read-body:20px;--read-card:26px;--read-note:16px;--read-flow:23px}
body.layout-aligned main :is(.intro,.card p,.overview-cards p,.overview-side p,.info-grid p,.role-cards p,.settlement-note p,.checklist p,.needs p,.consult p,.faq-answer,.property-photo-description){font-size:var(--read-body)!important;line-height:1.7!important}
body.layout-aligned main :is(.card h3,.overview-cards h3,.overview-side h3,.role-cards h3,.checklist h3,.settlement-note h3){font-size:var(--read-card)!important;line-height:1.45!important}
body.layout-aligned main :is(.note,.property-photo-note){font-size:var(--read-note)!important;line-height:1.65!important}
body.layout-aligned main .faq-item summary{font-size:var(--read-body)!important;line-height:1.65;min-height:70px}
body.layout-aligned main .steps h3{font-size:var(--read-flow)!important;line-height:1.5!important}
body.layout-aligned main .flow-step-label{align-items:flex-start}
body.layout-aligned main .flow-step-label .number{width:58px;height:58px;font-size:32px!important}
body.layout-aligned main .steps .card{min-width:0;height:auto}
body.layout-aligned main :is(th,td){font-size:var(--read-body)!important;line-height:1.65}
body.layout-aligned main .button{font-size:20px;white-space:normal}
body.layout-aligned main :is(.card,.info-grid article,.role-cards article,.checklist li){min-width:0}
body.layout-aligned main .property-photo h2{font-size:32px;line-height:1.45}
@media(min-width:1101px){
 body.layout-aligned.inheritance-html #conditions table{table-layout:fixed;width:100%}
 body.layout-aligned.inheritance-html #conditions th:first-child{width:30%}
 body.layout-aligned.inheritance-html #conditions th:nth-child(2){width:39%}
 body.layout-aligned.inheritance-html #conditions .table-art{width:88px;margin-right:16px}
 body.layout-aligned.inheritance-html #conditions td:last-child .table-art{width:62px}
 body.layout-aligned.consumer.inheritance-html #check .info-grid p{font-size:18px!important}
 body.layout-aligned.business .overview-cards article{grid-template-columns:64px 1fr 1.15fr}
 body.layout-aligned.business .overview-cards h3{font-size:23px!important}
 body.layout-aligned.business #check .info-grid h3{font-size:23px}
 body.layout-aligned.leaseback-html #process .faq{grid-template-columns:1fr}
}
@media(max-width:1100px){:root{--read-body:18px;--read-card:23px;--read-note:15px;--read-flow:21px}}
@media(max-width:720px){
 :root{--read-body:17px;--read-card:22px;--read-note:14px;--read-flow:21px}
 body.layout-aligned main .flow-step-label .number{width:48px;height:48px;font-size:28px!important}
 body.layout-aligned main .button{font-size:18px}
 body.layout-aligned main .property-photo h2{font-size:26px}
 body.layout-aligned main .faq-item summary{padding:16px 12px}
}


body:not(.layout-aligned){--lp-body:20px;--lp-card-title:26px}
body:not(.layout-aligned) main :is(.native-content p,.greeting p,.shop-card figcaption,.access-layout dl,.flow-grid small.step-note,.section-lead){font-size:var(--read-body)!important;line-height:1.75!important}
body:not(.layout-aligned) main :is(.support-card h3,.flow-grid h3,.voice-title h3,.shop-card h3){font-size:var(--read-card)!important;line-height:1.5}
body:not(.layout-aligned) main :is(.results-grid figcaption,.voice-title span:not(.voice-kind)){font-size:var(--read-note)!important;line-height:1.65}
body:not(.layout-aligned) main :is(.comparison th,.comparison td,.check-list li,.property-grid figcaption){font-size:var(--read-body)!important;line-height:1.65}
body:not(.layout-aligned) #about .greeting h3{font-size:38px;line-height:1.5}
body:not(.layout-aligned) .voice-grid article{min-height:0;height:auto}
@media(max-width:720px){
 body:not(.layout-aligned){--lp-body:17px;--lp-card-title:22px}
 body:not(.layout-aligned) #about .greeting h3{font-size:28px}
 body:not(.layout-aligned) .property-grid figcaption{font-size:17px!important}
 body:not(.layout-aligned) .results-grid figcaption{font-size:14px!important}
}

body.layout-aligned main :is(h3,.flow-step-label){text-wrap:balance}
@media(min-width:1101px){body.layout-aligned main .flow-step-label{min-height:70px}}
body.layout-aligned main .table-scroll{position:relative}
@media(max-width:720px){body.layout-aligned main .table-scroll::before{content:'表は横にスクロールできます →';display:block;position:sticky;left:0;padding:8px;font-size:14px;color:#52674b;background:#fff;text-align:right}}

body:not(.layout-aligned) .flow-grid h3{overflow-wrap:anywhere;text-wrap:balance}
body:not(.layout-aligned) #about .shop-card h3{letter-spacing:0;overflow-wrap:anywhere;text-wrap:balance}
@media(min-width:721px) and (max-width:1100px){body:not(.layout-aligned) #access dl>div{grid-template-columns:82px minmax(0,1fr)}body:not(.layout-aligned) #access dt{white-space:normal}}


body.layout-aligned.consumer.leaseback-html #comparison .card .layout-art{width:100%;max-width:none;margin:0 auto 12px}


body.layout-aligned .subpage-closing-cta__inner{max-width:1180px;min-height:0;padding:24px;grid-template-columns:120px minmax(0,1fr) 280px;gap:24px}
body.layout-aligned .subpage-closing-cta__badge{width:120px;height:120px}
body.layout-aligned .subpage-closing-cta__title{height:auto;max-height:none;font:700 28px/1.5 'Noto Sans JP',sans-serif;letter-spacing:0;margin:0 auto 16px;padding-bottom:10px;border-bottom:1px solid #6da34e;color:#263326;text-wrap:balance}
body.layout-aligned .subpage-closing-cta__title strong{color:#25832c}
body.layout-aligned .subpage-closing-cta__copy p{font-size:21px;line-height:1.7;text-wrap:balance}
body.layout-aligned .subpage-closing-cta__actions a{font-size:24px;min-height:66px;padding:8px;box-sizing:border-box;line-height:1.4}
@media(max-width:1100px){
 body.layout-aligned .subpage-closing-cta__inner{grid-template-columns:110px minmax(0,1fr)}
 body.layout-aligned .subpage-closing-cta__badge{width:110px;height:110px}
 body.layout-aligned .subpage-closing-cta__actions{grid-column:1/-1;flex-direction:row}
 body.layout-aligned .subpage-closing-cta__actions a{flex:1;min-width:0}
}
@media(max-width:600px){
 body.layout-aligned .subpage-closing-cta__inner{grid-template-columns:76px minmax(0,1fr);padding:20px 16px;gap:16px 12px}
 body.layout-aligned .subpage-closing-cta__badge{width:76px;height:76px}
 body.layout-aligned .subpage-closing-cta__copy{display:contents}
 body.layout-aligned .subpage-closing-cta__title{font-size:22px;margin:0;padding-bottom:8px}
 body.layout-aligned .subpage-closing-cta__copy p{grid-column:1/-1;font-size:17px}
 body.layout-aligned .subpage-closing-cta__actions{flex-direction:column;gap:10px}
 body.layout-aligned .subpage-closing-cta__actions a{font-size:21px;min-height:58px}
}

body.layout-aligned .subpage-closing-cta__title strong{white-space:nowrap}
@media(max-width:600px){body.layout-aligned .subpage-closing-cta__copy p br{display:none}}
