.merits-section>.section-title{margin-bottom:48px}
.merits-subheading{margin:48px 0 28px;font-size:20px;font-weight:700;line-height:30px;color:var(--ink)}
.merits-subheading::after{display:block;width:50px;height:1px;margin-top:12px;background:var(--blue);content:''}
.merits-section>.merits-subheading:first-of-type{margin-top:0}
.merits-cases{margin-top:48px;align-items:start}
.merits-cases>article{min-width:0}
.merits-cases .chart-card{margin:0}
.merits-cases .chart-card svg{width:100%;height:auto}
.merits-allocation{margin-top:64px;margin-bottom:0;align-items:start}
.merits-allocation>div>.merits-subheading{margin-top:0}
.merits-allocation-table{width:100%;max-width:460px;min-width:0;margin-inline:auto}
.merits-allocation-table table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:14px;line-height:21px}
.merits-allocation-table caption{margin:0 0 12px;color:var(--blue);font-size:16px;font-weight:700;line-height:24px;text-align:left}
.merits-allocation-table thead th{padding:12px 8px;background:var(--blue);color:#fff;font-size:14px;line-height:21px;text-align:center}
.merits-allocation-table thead th:first-child{width:16%;background:#f6f6f6}
.merits-allocation-table th,.merits-allocation-table td{border:1px solid #ccc}
.merits-allocation-table tbody th{padding:14px 6px;text-align:center;background:#f6f6f6;font-size:16px}
.merits-allocation-table tbody td{padding:14px 8px;text-align:center;background:#f6f6f6}
.merits-allocation-table td>b{display:block;color:#111;font-size:27px;font-weight:400;line-height:34px}
.merits-allocation-table td>b>span{font-size:18px}
.merits-allocation-table td>span{display:block;margin-top:4px;font-size:13px;line-height:20px}
.merits-allocation-table td.merits-building-cell{background:#e4f0e9}
.merits-allocation-table td.merits-building-cell>b,.merits-allocation-table td.merits-building-cell>span{color:var(--blue)}
.merits-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:320px;overflow:hidden}
.merits-photo-strip img{width:100%;height:100%;object-fit:cover}
.merits-market-intro{margin-top:0;align-items:start}
.merits-market-intro .merits-subheading{margin-top:0}
.merits-market-intro>.price-comparison-chart{margin-top:0}
.merits-data-chart{margin:0;padding:24px}
.merits-data-chart>figcaption{margin-bottom:16px;color:var(--ink);font-size:16px;line-height:24px}
.merits-data-chart>svg{margin:0}
.merits-reason{margin-top:64px;margin-bottom:64px;align-items:start}
.merits-reason .merits-subheading{margin-top:12px}
.merits-reason-label{margin:0;color:var(--blue);font-size:14px;line-height:21px}
.merits-growth-heading{margin-top:64px}
.merits-demand{margin-top:64px}
.merits-demand .merits-subheading{margin-top:12px}
.merits-demand-charts{margin-top:32px;align-items:start}
.merits-risk-note{margin-top:32px}
.merits-anchor{display:block;position:relative;top:-72px;visibility:hidden;height:0}
@media(max-width:1023px){.merits-allocation-table thead th{font-size:13px}.merits-allocation-table tbody td{padding:12px 6px}.merits-allocation-table td>b{font-size:26px}.merits-allocation-table td>span{font-size:12px;line-height:19px}.merits-data-chart{padding:20px}}
@media(max-width:767px){
 .merits-section>.section-title{margin-bottom:40px}
 .merits-subheading{margin-top:40px;margin-bottom:24px;font-size:18px;line-height:27px}
 .merits-cases{margin-top:40px;gap:40px}
 .merits-allocation{margin-top:48px;gap:32px}
 .merits-allocation-table caption{font-size:16px;line-height:24px}
 .merits-allocation-table thead th{font-size:12px;line-height:18px;padding:10px 6px}
 .merits-allocation-table thead th:first-child{width:17%}
 .merits-allocation-table tbody th{padding:12px 6px;font-size:14px}
 .merits-allocation-table tbody td{padding:12px 6px}
 .merits-allocation-table td>b{font-size:26px;line-height:32px}
 .merits-allocation-table td>b>span{font-size:17px}
 .merits-allocation-table td>span{font-size:12px;line-height:18px}
 .merits-photo-strip{height:240px;grid-template-columns:repeat(3,70%)}
 .merits-market-intro{gap:32px;margin-bottom:48px}
 .merits-data-chart{padding:16px}
 .merits-data-chart>figcaption{font-size:14px;line-height:21px}
 .merits-reason{margin-top:48px;margin-bottom:48px;gap:32px}
 .merits-reason-reverse>div{grid-row:1}
 .merits-reason-reverse>figure{grid-row:2}
 .merits-growth-heading,.merits-demand{margin-top:48px}
 .merits-demand-charts{margin-top:28px;gap:32px}
 .merits-anchor{top:-50px}
}
.investment-comparison{border-top:1px solid var(--line);scroll-margin-top:88px}
.investment-comparison>.section-title{margin-bottom:24px}
.investment-lead{max-width:780px;line-height:1.9}
.investment-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:32px;align-items:start}
.investment-panel{min-width:0;padding-top:20px;border-top:1px solid var(--line);scroll-margin-top:96px}
.investment-panel-label{margin-top:0}
.investment-return-figure{width:100%;max-width:520px;margin:0 auto;padding:12px;border:1px solid var(--line);border-radius:3px;background:#fff;outline-offset:6px}
.investment-return-figure:has(.investment-replay-hint:not([hidden])){cursor:pointer;-webkit-tap-highlight-color:transparent}
.investment-return-figure>figcaption{text-align:center;color:var(--ink);font-size:14px;font-weight:600;line-height:1.6}
.investment-return-chart{display:block;width:100%;height:auto;max-width:520px;margin:10px auto 0;letter-spacing:0;overflow:visible}
.investment-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin-top:10px;font-size:10px;line-height:18px;letter-spacing:0}
.investment-legend>span{display:flex;align-items:center;gap:5px;white-space:nowrap}
.investment-legend i{display:inline-block;flex:none;width:9px;height:9px;background:#147d68}
.investment-legend .investment-capital-key{background:#79ac96}
.investment-legend .investment-saving-key{background:#ee913d}
.investment-legend .investment-paid-key{background:rgba(255,255,255,.72);border:1.5px dashed #b87832}
.investment-legend .investment-net-key{background:#173d36}
.investment-legend .investment-loss-key{background:rgba(255,255,255,.72);border:1.5px dashed #68736d}
.investment-replay-hint{display:block;width:auto;margin:6px auto 0;padding:3px 6px;border:0;border-radius:2px;background:transparent;font-family:inherit;font-size:10px;font-weight:400;line-height:1.6;letter-spacing:0;text-align:center;color:#68736d;cursor:pointer;-webkit-tap-highlight-color:transparent}
.investment-replay-hint[hidden]{display:none}
.investment-replay-hint:hover{color:var(--accent);background:var(--accent-soft)}
.investment-replay-hint:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.investment-interpretation{max-width:540px;margin:20px auto 0;font-size:16px;line-height:1.8;letter-spacing:0;color:var(--body)}
.investment-interpretation p+p{margin-top:10px}
.investment-interpretation strong{font-weight:600;color:var(--ink)}
.investment-note{max-width:540px;margin:16px auto 0;font-size:10px;line-height:1.85;letter-spacing:0;color:#68736d}
.investment-note a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:767px){
 .investment-panels{grid-template-columns:1fr;gap:36px}
 .investment-panel{width:100%;max-width:640px;margin-inline:auto}
}
@media(max-width:767px){
 .investment-comparison>.section-title{margin-bottom:18px;font-size:23px;letter-spacing:0;line-height:1.6}
 .investment-lead{font-size:14px;line-height:1.8}
 .investment-panels{margin-top:26px;gap:32px}
 .investment-panel{padding-top:18px;scroll-margin-top:72px}
 .investment-return-figure{padding:8px}
 .investment-return-figure>figcaption{font-size:13px}
 .investment-return-chart{margin-top:10px}
 .investment-chart-axis{font-size:16px}
 .investment-chart-component{font-size:18px}
 .investment-chart-deduction{font-size:14px}
 .investment-chart-component-small{font-size:14px}
 .investment-chart-label{font-size:21px}
 .investment-chart-annual{font-size:28px}
 .investment-legend{gap:5px 12px;margin-top:8px;font-size:10px}
 .investment-interpretation{margin-top:18px;font-size:14px;line-height:1.8}
 .investment-note{margin-top:14px;font-size:10px;line-height:1.8}
}
@media print{.investment-panels{grid-template-columns:1fr}.investment-return-figure{break-inside:avoid}.investment-replay-hint{display:none}}
