/* Page-specific reading and decision support. Existing photo and motion layers remain. */
.page-services main,.page-sale main,.page-lease main,.page-kanri main,.page-reno main,.page-trade main,.page-sozoku main{word-break:normal;line-break:strict;overflow-wrap:anywhere}
.scope-grid>*,.prepare-section>*,.cost-layout>*,.cost-point-body,.decision-item,.hub-service>*{min-width:0}
.scope-list dd,.decision-item p,.prepare-section p,.prepare-list li{word-break:normal;line-break:strict;overflow-wrap:anywhere}
.service-hero .hero-copy h1{font-size:clamp(2rem,3.1vw,3.4rem);line-height:1.65;letter-spacing:.035em}
.service-hero .hero-line{white-space:normal;word-break:normal;overflow-wrap:anywhere}
.service-hero .hero-lead{max-width:36em;line-height:2}
.page-outline{display:flex;flex-wrap:wrap;gap:8px 28px;padding-top:26px;padding-bottom:26px;border-block:1px solid var(--line);margin-top:48px}
.page-outline a{min-height:44px;display:inline-flex;align-items:center;gap:12px;font-size:.88rem;text-decoration:none;color:inherit;border-bottom:1px solid transparent}
.page-outline a:hover,.page-outline a:focus-visible{color:var(--blue);border-color:currentColor}
.prepare-section{display:grid;grid-template-columns:1fr 1.05fr;gap:8%;border-top:1px solid var(--line)}
.prepare-section h2{font-size:clamp(1.6rem,2.4vw,2.3rem);line-height:1.8;margin:18px 0 24px}
.prepare-section p{line-height:2;font-size:.94rem}
.prepare-list{list-style:none;margin:0;padding:0}
.prepare-list li{padding:18px 0 18px 26px;border-bottom:1px solid var(--line);position:relative;line-height:1.9}
.prepare-list li::before{content:'＋';position:absolute;left:0;color:var(--blue)}
.prepare-note,.prepare-section p.prepare-note{color:var(--muted);font-size:.8rem;margin-top:25px}
.content-sources{padding-bottom:70px;line-height:1.9;color:var(--muted);font-size:.8rem}
.content-sources>p{font-weight:600;color:var(--ink)}
.content-sources ul{padding-left:1.1em;margin:12px 0}
.content-sources a{display:inline-block;padding:10px 0;color:var(--blue);text-underline-offset:4px}
.content-sources small{display:block;font-size:.75rem}
.service-hero~.section .scope-list dd{line-height:2.05}
.service-hero~.section .scope-list>div{padding-block:22px}
.service-hero~.section .section-heading h2,.service-hero~.cost h2{font-size:clamp(1.75rem,2.7vw,2.9rem);line-height:1.7}
.heading-phrase{display:inline-block;max-width:100%}
.service-hero~.section h2,.service-hero~.cost h2{max-width:none}
.service-hero~.cost h2{font-size:clamp(1.75rem,2.4vw,2.5rem)}
.service-hero~.faq h2{font-size:clamp(1.75rem,2.7vw,2.6rem);line-height:1.7}
.hub-choice{margin-bottom:60px;padding:32px 0;border-bottom:1px solid var(--line);line-height:2}
.hub-choice h2{font-size:1.55rem;line-height:1.8}
.hub-choice dl{display:grid;grid-template-columns:1fr 1fr;gap:24px 60px;margin-top:30px}
.hub-choice dt{font-weight:600;margin-bottom:8px}
.hub-choice dd{margin:0;font-size:.9rem;color:var(--muted)}
.contact-guidance{padding-top:30px;padding-bottom:50px}
.contact-guidance h2{font-size:1.5rem;line-height:1.8}
.contact-guidance p,.contact-guidance li{line-height:2}
.contact-guidance ul{padding-left:1.3em}
.consultation-flow .flow-step p{font-size:.85rem;line-height:1.9;margin-top:14px}
.consultation-flow .flow-step p{grid-column:2;min-width:0;word-break:normal;line-break:strict}
.hub-intro h1{font-size:clamp(28px,5vw,60px)}
.news-pagination{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.news-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line)}
.news-pagination .current{color:#fff;background:var(--blue)}
@media(max-width:899px){.service-hero .hero-copy h1{font-size:clamp(1.65rem,5.7vw,2.6rem)}.decision-grid{gap:28px;margin-top:30px}.prepare-section{grid-template-columns:1fr;gap:24px}.hub-choice dl{grid-template-columns:1fr;gap:26px}.page-outline{gap:4px 20px;margin-top:20px}.content-sources{padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){.page-outline a{transition:none}}

/* Decision guides: choose a structure that explains the business question. */
.decision-section{padding-block:90px}
.decision-heading{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:18px 64px;align-items:end;margin-bottom:42px}
.decision-heading>.eyebrow{grid-column:1/-1;margin:0}
.service-hero~.section .decision-heading h2,.decision-heading h2{font-family:var(--display);font-size:clamp(1.8rem,2.65vw,2.65rem);line-height:1.55;letter-spacing:.04em;max-width:none;margin:0;font-weight:400;text-wrap:balance;overflow-wrap:normal;word-break:normal}
.decision-heading .decision-lead{font-size:.94rem;line-height:2;color:var(--muted);margin:0;max-width:38em}
.decision-section h3{font-size:1.15rem;line-height:1.7;font-weight:500;margin:0 0 15px;letter-spacing:.025em}
.decision-section .guide-body{font-size:.94rem;line-height:2;letter-spacing:.015em;color:var(--muted);margin:0;word-break:normal;overflow-wrap:anywhere}
.guide-kicker{display:block;color:var(--blue);font-size:.73rem;letter-spacing:.1em;line-height:1.6;margin-bottom:14px}
.guide-board-label{display:flex;justify-content:space-between;gap:20px;padding:20px 32px;background:var(--ink);color:var(--paper);font-size:.77rem;letter-spacing:.08em}
.trade-comparison{border:1px solid var(--line);background:var(--paper)}
.trade-option{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:42px;padding:34px 32px;border-bottom:1px solid var(--line);align-items:center}
.trade-option:last-child{border-bottom:0}
.trade-option h3{font-family:var(--display);font-size:1.38rem;margin-bottom:22px}
.trade-timeline{display:grid;grid-template-columns:1fr 32px 1fr;align-items:center;gap:8px;max-width:360px}
.timeline-stage{display:block;padding:11px 0 0;text-align:left;font-size:.84rem;border-top:3px solid var(--line);color:var(--muted)}
.timeline-stage.stage-buy{border-top-color:var(--blue);color:var(--blue)}
.timeline-join{text-align:center;color:var(--blue)}
.timeline-end{grid-column:1/-1;font-size:.7rem;letter-spacing:.08em;color:var(--muted);padding-top:2px}
.trade-timeline.is-parallel{grid-template-columns:1fr;gap:12px;max-width:300px}.trade-timeline.is-parallel .timeline-stage{padding-top:5px}.trade-timeline.is-parallel .timeline-join{display:none}
.income-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr);gap:70px;align-items:stretch}
.income-map{margin:0;padding:36px;background:var(--ink);color:var(--paper);border-radius:0 70px 0 0;display:flex;flex-direction:column;justify-content:center}
.income-map figcaption{position:static;background:none;color:inherit;padding:0;margin-bottom:30px;font-size:.75rem;line-height:1.7}
.income-map figcaption strong{display:block;font-family:var(--display);font-weight:400;font-size:1.8rem;line-height:1.65;margin-top:14px;letter-spacing:.04em}
.income-node{border:1px solid var(--line);padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.income-node small{font-size:.65rem;letter-spacing:.12em;color:var(--pale)}
.income-node>span{font-size:1rem;letter-spacing:.05em}
.income-connector{text-align:center;padding:12px;color:var(--pale)}
.income-costs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.income-costs span{font-size:.8rem;background:color-mix(in srgb,var(--ink) 88%,var(--paper));padding:12px;text-align:center}
.income-costs span:last-child{grid-column:1/-1}
.income-result{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.income-result small{color:var(--muted)}
.income-map .diagram-note{color:var(--pale);font-size:.7rem;line-height:1.8;margin:20px 0 0}
.income-notes{display:flex;flex-direction:column;justify-content:center}
.income-note{padding:28px 0;border-bottom:1px solid var(--line)}
.income-note:first-child{padding-top:0}.income-note:last-child{padding-bottom:0;border-bottom:0}
.lease-perspective{display:grid;grid-template-columns:260px minmax(0,1fr);border-top:3px solid var(--blue);background:var(--wash)}
.perspective-sign{background:var(--blue);color:var(--paper);padding:36px 28px}
.perspective-sign .guide-kicker{color:inherit}.perspective-sign p{font-family:var(--display);font-size:1.4rem;line-height:1.7;letter-spacing:.05em;margin:10px 0 0}
.perspective-sign svg{width:100%;max-width:180px;stroke:currentColor;stroke-width:1.4;fill:none;margin-block:10px;opacity:.85}
.perspective-notes{padding:36px 42px;display:grid;grid-template-columns:1fr 1fr;gap:38px}
.perspective-notes article+article{border-left:1px solid var(--line);padding-left:38px}
.for-resident{border-top-color:var(--ink)}.for-resident .perspective-sign{background:var(--ink)}
.decision-lease#residents{padding-top:15px}
.estimate-sheet{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);border:1px solid var(--line);box-shadow:8px 8px 0 var(--pale)}
.estimate-spine{padding:36px;background:var(--wash);border-right:1px solid var(--line)}
.estimate-spine>span{font-size:.75rem;letter-spacing:.08em;color:var(--blue)}
.estimate-spine strong{display:block;font-family:var(--display);font-weight:400;font-size:1.8rem;line-height:1.75;letter-spacing:.04em;margin:28px 0}
.estimate-spine p{font-size:.83rem;line-height:2;color:var(--muted)}
.estimate-body{padding:0 36px}.estimate-row{padding:30px 0;border-bottom:1px solid var(--line)}.estimate-row:last-child{border:0}
.estimate-tabs{display:flex;gap:0;margin-bottom:16px;color:var(--blue)}
.estimate-tabs span{font-size:.75rem;letter-spacing:.08em;padding:0 14px;border-right:1px solid var(--line)}.estimate-tabs span:first-child{padding-left:0}.estimate-tabs span:last-child{border:0}
.inheritance-options{border-top:3px solid var(--ink)}
.inheritance-axis{display:grid;grid-template-columns:240px 1fr;gap:48px;padding:18px 28px;background:var(--wash);color:var(--muted);font-size:.76rem;letter-spacing:.06em}
.inheritance-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;padding:34px 28px;border-bottom:1px solid var(--line)}
.choice-word{color:var(--blue);font-size:.68rem;letter-spacing:.18em}.inheritance-label h3{font-family:var(--display);font-size:1.65rem;margin:7px 0 5px}.choice-context{font-size:.75rem;color:var(--muted)}
.choice-focus{display:flex;gap:20px;align-items:baseline;border-top:1px dashed var(--line);padding-top:14px;margin-top:20px;font-size:.75rem;line-height:1.9;color:var(--blue)}.choice-focus>span:first-child{white-space:nowrap;color:var(--muted)}
.handover-sheet{border:1px solid var(--line)}
.handover-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:40px;padding:32px;background:var(--ink);color:var(--paper)}
.handover-banner .guide-kicker{color:var(--pale);margin:0}.handover-banner p{font-size:.85rem;line-height:2;margin:0;padding-bottom:4px}.handover-banner strong{display:block;font-family:var(--display);font-size:1.8rem;font-weight:400;line-height:1.8;letter-spacing:.04em;margin-top:14px}
.handover-notes{padding:8px 34px}.handover-note{display:grid;grid-template-columns:220px minmax(0,1fr);gap:38px;padding:26px 0;border-bottom:1px solid var(--line)}.handover-note:last-child{border:0}
.handover-topic{display:flex;gap:14px;align-items:flex-start;padding-top:5px;color:var(--blue);font-size:.73rem;letter-spacing:.08em;margin-bottom:12px}.handover-topic svg{width:28px;height:28px;flex:none;fill:none;stroke:currentColor;stroke-width:1.3}
.guide-fallback{display:grid;gap:28px}.decision-section [data-reveal]:focus-within{opacity:1;transform:none}
@media(max-width:1099px){.decision-heading{gap:20px 36px}.income-layout{gap:38px}.perspective-notes{padding:28px;gap:24px}.perspective-notes article+article{padding-left:24px}.lease-perspective{grid-template-columns:220px 1fr}}
@media(max-width:899px){.decision-section{padding-block:56px}.decision-heading{display:block;margin-bottom:30px}.decision-heading>.eyebrow{margin-bottom:16px}.service-hero~.section .decision-heading h2{font-size:clamp(1.7rem,4.8vw,2.3rem);line-height:1.6;letter-spacing:.03em}.decision-heading .decision-lead{margin-top:20px;max-width:46em}.trade-option{grid-template-columns:1fr;gap:20px}.trade-timeline{max-width:420px}.income-layout{grid-template-columns:1fr;gap:32px}.income-map{max-width:none;padding:32px}.income-costs{grid-template-columns:repeat(3,1fr)}.income-costs span:last-child{grid-column:auto}.income-note:first-child{padding-top:4px}.lease-perspective{grid-template-columns:1fr}.perspective-sign{display:grid;grid-template-columns:1fr 110px;gap:8px 20px;padding:24px}.perspective-sign svg{grid-column:2;grid-row:1/3;margin:0}.perspective-sign p{grid-column:1;font-size:1.25rem;margin:0}.perspective-sign .guide-kicker{margin:0}.estimate-sheet,.handover-sheet{grid-template-columns:1fr}.estimate-spine{border-right:0;border-bottom:1px solid var(--line);padding:28px}.estimate-spine strong{margin:16px 0;font-size:1.6rem}.estimate-spine p{margin:0}.handover-banner{padding:28px}.handover-note{grid-template-columns:170px minmax(0,1fr);gap:28px}.handover-banner p{margin:12px 0 0}.handover-banner strong{font-size:1.6rem;margin-top:10px}.inheritance-axis,.inheritance-row{grid-template-columns:170px 1fr;gap:26px;padding-inline:20px}}
@media(max-width:599px){.decision-section h3{font-size:1.1rem}.decision-section .guide-body{font-size:.9rem;line-height:2}.guide-board-label{padding:17px 20px;font-size:.7rem}.guide-board-label span:last-child{display:none}.trade-option{padding:26px 20px;gap:20px}.trade-option h3{font-size:1.26rem;margin-bottom:18px}.timeline-stage{padding:9px 0 0}.income-map{padding:24px 22px;border-top-right-radius:48px}.income-map figcaption{margin-bottom:22px}.income-map figcaption strong{margin-top:8px}.income-connector{padding:7px}.income-costs span{padding:8px}.income-map .diagram-note{margin-top:16px}.income-map figcaption strong{font-size:1.65rem}.income-node{padding:14px}.income-costs{grid-template-columns:1fr 1fr}.income-costs span:last-child{grid-column:1/-1}.income-note{padding-block:24px}.perspective-notes{grid-template-columns:1fr;padding:24px;gap:24px}.perspective-notes article+article{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.estimate-spine{padding:25px 22px}.estimate-body{padding-inline:22px}.estimate-sheet{box-shadow:5px 5px 0 var(--pale)}.estimate-tabs span{padding-inline:10px}.inheritance-axis{display:none}.inheritance-row{grid-template-columns:1fr;gap:22px;padding:26px 0}.inheritance-label{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:0 12px}.inheritance-label .choice-word{grid-column:1}.inheritance-label h3{grid-column:1;grid-row:2;font-size:1.45rem}.choice-context{grid-column:2;grid-row:2}.choice-focus{gap:12px;align-items:flex-start}.handover-banner{display:block;padding:26px 22px}.handover-note{grid-template-columns:1fr;gap:4px}.handover-banner p{margin-top:18px}.handover-banner strong{font-size:1.55rem}.handover-notes{padding:4px 22px}}

.estimate-preview{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:18px 12px;margin:32px 0;padding:22px 18px 28px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--blue);transform:rotate(-2deg);box-shadow:4px 5px 0 var(--pale)}
.estimate-preview span{font-size:.67rem;color:var(--blue);white-space:nowrap}.estimate-preview i{height:7px;border-bottom:1px solid var(--line)}
@media(max-width:899px){.estimate-preview{display:none}}

@media(max-width:349px){.perspective-sign{grid-template-columns:minmax(0,1fr) 64px;gap:8px 12px;padding:22px 20px}.perspective-sign p{font-size:1.05rem}}
