:root{--ink:#242424;--red:#b72236;--cream:#f8f7f4;--line:#d9d4cd;--muted:#706d68}.content-page{background:var(--cream);color:var(--ink);overflow:hidden}.content-page .wrap{max-width:1180px}.content-hero{padding:clamp(4.75rem,10vw,9.25rem) 0 clamp(3.5rem,7vw,6.5rem)}.content-hero__grid{grid-template-columns:minmax(0,1.03fr) minmax(280px,.97fr);align-items:end;gap:clamp(2rem,6vw,7rem);display:grid}.content-hero__grid--text{grid-template-columns:minmax(0,760px)}.content-hero .breadcrumb{color:var(--muted);letter-spacing:.08em;margin:0 0 1.7rem;font-size:.75rem}.content-hero .breadcrumb a{color:inherit;text-decoration:none}.content-hero .breadcrumb a:hover{color:var(--red)}.content-hero .eyebrow,.story__eyebrow,.content-kicker{color:var(--red);letter-spacing:.16em;font-size:.72rem;font-weight:700}.content-hero h1{letter-spacing:-.06em;margin:.75rem 0 1.6rem;font-family:Noto Serif JP,serif;font-size:clamp(2.45rem,5.3vw,5rem);font-weight:500;line-height:1.25}.content-hero__lead{color:#4e4c49;max-width:39rem;margin:0 0 2rem;font-size:clamp(.96rem,1.35vw,1.08rem);line-height:2.05}.content-hero__visual{background:#e9e5de;min-height:clamp(300px,39vw,520px);margin:0;position:relative;overflow:hidden}.content-hero__visual:after{content:"";border:1px solid #b72236b3;width:48%;height:40%;position:absolute;bottom:-1.5rem;right:-1.5rem}.content-hero__visual img{width:100%;height:100%;min-height:inherit;object-fit:cover;display:block}.content-hero__visual figcaption,.story__visual figcaption{color:#fff;letter-spacing:.04em;background:#242424c9;margin:0;padding:.55rem .75rem;font-size:.68rem;position:absolute;bottom:0;left:0}.content-hero__aside{border-top:1px solid var(--line);color:#65615c;max-width:38rem;margin-top:2.5rem;padding-top:1.2rem;font-size:.82rem;line-height:1.8}.story-stage{padding:clamp(2.5rem,6vw,6rem) 0}.story{border-top:1px solid var(--line);grid-template-columns:4.5rem minmax(0,.86fr) minmax(260px,.78fr);align-items:center;gap:clamp(1.25rem,4vw,4.5rem);padding:clamp(4.25rem,8vw,8.75rem) 0;display:grid;position:relative}.story--reversed .story__body{grid-area:1/3}.story--reversed .story__visual{grid-area:1/2}.story--text-only{grid-template-columns:4.5rem minmax(0,720px);padding-left:min(8vw,8rem)}.story__number{color:var(--red);letter-spacing:.1em;align-self:start;padding-top:.35rem;font-family:Noto Serif JP,serif;font-size:1.05rem}.story__eyebrow{margin:0 0 .75rem}.story h2{letter-spacing:-.045em;max-width:14em;margin:0 0 1.25rem;font-family:Noto Serif JP,serif;font-size:clamp(1.72rem,3vw,2.75rem);font-weight:500;line-height:1.52}.story__copy{color:#4f4c48;max-width:38rem;font-size:.96rem;line-height:2}.story__copy p{margin:0 0 1.1rem}.story__copy p:last-child{margin-bottom:0}.story__copy strong{color:var(--ink);font-weight:700}.story__copy a{color:var(--red);text-underline-offset:.25em;font-weight:700}.story__visual{background:#e5e1db;min-height:350px;margin:0;position:relative;overflow:hidden}.story__visual img{object-fit:cover;width:100%;height:100%;min-height:350px;transition:transform .6s}.story__visual:hover img{transform:scale(1.025)}.story__note{border-left:2px solid var(--red);color:#6b6761;padding-left:1rem;font-size:.81rem;line-height:1.8;margin-top:1.4rem!important}.content-bridge{background:#ebe7e0;padding:clamp(3.8rem,8vw,7rem) 0}.content-bridge__grid{grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);align-items:end;gap:3rem;display:grid}.content-bridge h2{letter-spacing:-.05em;margin:.75rem 0 1rem;font-family:Noto Serif JP,serif;font-size:clamp(2rem,4vw,3.35rem);font-weight:500;line-height:1.42}.content-bridge p{color:#56514c;max-width:35rem;margin:0;line-height:1.9}.content-bridge__actions{flex-wrap:wrap;justify-content:flex-end;gap:.8rem;display:flex}.content-bridge .button,.content-hero .button{text-decoration:none}.content-sources{padding:2rem 0 calc(3.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.content-sources p{color:#6e6964;letter-spacing:.06em;margin:0 0 .55rem;font-size:.75rem}.content-sources ul{flex-wrap:wrap;gap:.45rem 1rem;margin:0;padding:0;list-style:none;display:flex}.content-sources a{color:#655f5a;text-underline-offset:.25em;word-break:break-all;font-size:.73rem}.guide-links{flex-wrap:wrap;gap:.85rem;margin-top:1.7rem;display:flex}.guide-links a{border:1px solid var(--red);min-height:2.75rem;color:var(--red);align-items:center;padding:0 1rem;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.guide-links a:hover{background:var(--red);color:#fff}.faq-intro{padding:0 0 clamp(2.5rem,5vw,5rem)}.faq-intro__inner{border-top:1px solid var(--line);color:#5e5954;max-width:680px;padding:1.8rem 0 0 4.5rem;line-height:1.9}.faq-list{padding:0 0 clamp(4.5rem,9vw,8rem)}.faq-list__inner{max-width:900px;margin-left:auto}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;color:var(--ink);grid-template-columns:2.5rem 1fr 1.5rem;align-items:center;gap:1rem;padding:1.35rem 0;font-family:Noto Serif JP,serif;font-size:clamp(1.03rem,1.8vw,1.28rem);line-height:1.65;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:before{content:"Q";color:var(--red);letter-spacing:.12em;font-family:Noto Sans JP,sans-serif;font-size:.82rem;font-weight:700}.faq-list summary:after{content:"+";color:var(--red);justify-self:end;font-family:Noto Sans JP,sans-serif;font-size:1.45rem;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list__answer{color:#57534e;max-width:660px;padding:0 3.5rem 1.75rem;font-size:.92rem;line-height:2}.faq-list__answer p{margin:0}.privacy-callout{border-left:2px solid var(--red);color:#5f5a55;background:#f0ece6;max-width:700px;margin:1.5rem 0 0;padding:1.1rem 1.25rem;font-size:.84rem;line-height:1.85}@media (width<=760px){.content-hero{padding-top:3.75rem}.content-hero__grid{grid-template-columns:1fr;gap:2.5rem}.content-hero__visual{min-height:280px}.content-hero__visual:after{bottom:-1rem;right:-1rem}.story,.story--reversed{grid-template-columns:2.6rem 1fr;gap:.9rem;padding:3.8rem 0}.story--text-only{padding-left:0}.story__body,.story--reversed .story__body{grid-area:auto/2}.story__visual,.story--reversed .story__visual{grid-area:auto/2;min-height:275px;margin-top:.8rem}.story__visual img{min-height:275px}.content-bridge__grid{grid-template-columns:1fr;gap:1.75rem}.content-bridge__actions{justify-content:flex-start}.faq-intro__inner{padding-left:0}.faq-list__answer{padding:0 1rem 1.5rem 3.5rem}.faq-list summary{grid-template-columns:1.7rem 1fr 1rem;gap:.6rem}}
