:root{--ink:#172832;--muted:#53636b;--paper:#faf8f2;--line:#d6ddd8;--accent:#a94125;--dark:#122b33;--lime:#dce8b7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.9}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}button,input,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.masthead-note{background:var(--dark);color:#eef4e3;font-size:11px;letter-spacing:.08em;padding:8px 5vw}body>header{max-width:1320px;margin:auto;padding:23px 5vw;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{font-size:21px;font-weight:800;letter-spacing:.03em;text-decoration:none;white-space:nowrap}.brand span{color:var(--accent)}.brand small{font-size:9px;letter-spacing:.18em;font-weight:500;display:block;line-height:1.5}nav{display:flex;gap:28px;font-size:12px}nav a{text-decoration:none}main{max-width:1320px;margin:auto;padding:0 5vw}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,53px);line-height:1.5;letter-spacing:.02em;font-weight:750}h2{font-size:clamp(22px,2.5vw,31px);line-height:1.6;letter-spacing:.01em}h3{line-height:1.75;font-size:19px}section{margin:65px 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent);margin-bottom:12px}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center;margin:65px 0 45px}.hero h1{font-size:clamp(31px,3.6vw,49px)}.hero em{font-style:normal;color:var(--accent)}.intro{font-size:14px;color:var(--muted)}.button{background:var(--dark);color:white;display:inline-flex;align-items:center;gap:35px;padding:12px 23px;font-size:13px;text-decoration:none}.button:hover{color:var(--lime)}.route{background:var(--dark);color:#f5f5eb;padding:32px}.route .eyebrow{color:var(--lime)}.route ol{padding:0;list-style:none}.route li{display:flex;gap:18px;align-items:center;border-bottom:1px solid #42606a;padding:13px 0;font-size:13px}.route b{font-size:23px;color:var(--lime);font-family:serif}.route>p:last-child{font-size:11px;color:#c4d2d2;margin-bottom:0}.notice{border-left:3px solid var(--accent);background:#efece2;display:flex;align-items:flex-start;gap:24px;padding:19px 24px;font-size:12px;margin:28px 0}.notice strong{white-space:nowrap;color:var(--accent)}.notice p{margin:0;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:2px solid var(--ink);padding-bottom:15px;margin-bottom:24px;gap:20px}.section-heading h2{margin:0}.section-heading span{font-size:11px;color:var(--muted)}.section-heading .eyebrow{margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}.service-tile{display:grid;grid-template-columns:28px 1fr 20px;gap:0 15px;padding:21px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:center}.service-tile>span{font:16px serif;color:var(--accent)}.service-tile strong{font-size:22px}.service-tile small{grid-column:2;font-size:11px;color:var(--muted)}.service-tile b{grid-column:3;grid-row:1 / span 2;color:var(--accent)}.question-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.question-grid>a{padding:20px 0;text-decoration:none}.question-grid span{font-size:11px;color:var(--accent)}.question-grid h3{margin:9px 0}.question-grid p{font-size:12px;color:var(--muted);margin:0}.filters{display:flex;gap:22px;background:#eeeede;padding:20px}.filters label{font-size:11px;display:grid;gap:7px;flex:1}input[type=search],select{padding:9px 12px;border:1px solid #b7c3be;background:white;min-width:0;width:100%;font-size:14px}.count{font-size:11px;margin:15px 0;color:var(--muted)}.stories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}.story{padding:25px 0;border-bottom:1px solid var(--line);min-width:0}.story-meta{color:var(--accent);font-size:12px;font-weight:700;display:flex;justify-content:space-between;gap:10px}.story-meta span{color:var(--muted);font-size:10px;font-weight:400}.story h3{margin:13px 0}.story h3 a{text-decoration:none}.story p{font-size:13px;color:var(--muted)}.read{display:flex;justify-content:space-between;font-size:12px;text-decoration:none}.editorial-note{padding:40px;background:var(--dark);color:white}.editorial-note .eyebrow{color:var(--lime)}.editorial-note p{max-width:720px;font-size:14px}.editorial-note a{font-size:12px}footer{max-width:1320px;margin:70px auto 0;padding:35px 5vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;font-size:11px;color:var(--muted)}footer strong{font-size:16px;color:var(--ink)}footer p{margin:5px 0}.breadcrumbs{font-size:11px;color:var(--muted);margin:28px 0}.page-intro{max-width:900px;margin:55px 0 35px}.page-intro p{color:var(--muted)}.article-heading{display:block;max-width:950px;margin:50px 0 25px}.article-heading h1{font-size:clamp(28px,3.4vw,43px);line-height:1.65}.article-lead{color:var(--muted);font-size:15px;line-height:2.1}.article-meta{font-size:11px;color:var(--muted)}.research-label{display:inline-block;background:#e8eddc;color:#33452f;font-size:11px;padding:5px 10px}.article-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:55px;margin-top:45px}.toc{align-self:start;border-top:2px solid var(--ink);position:sticky;top:20px;padding-top:15px}.toc h2{font-size:12px}.toc a{display:block;padding:9px 0;border-bottom:1px solid var(--line);font-size:11px;text-decoration:none;line-height:1.8}.article-body{max-width:780px;min-width:0}.article-body section{margin:0 0 55px}.article-body p,.article-body li{font-size:15px;line-height:2.2}.article-body h2{font-size:25px}.section-number{font-size:12px;color:var(--accent);display:block;margin-bottom:8px}.table-scroll{overflow-x:auto;margin:24px 0;max-width:100%}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;min-width:440px}th{background:var(--dark);color:white;padding:12px 15px}td{padding:14px 15px;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:nth-child(2n){background:#f0f0e7}.sources{padding-left:20px}.sources li{font-size:12px!important;margin-bottom:15px;overflow-wrap:anywhere}.sources span{display:block;font-size:10px;color:var(--muted)}.small{font-size:11px!important;color:var(--muted)}.check-panel{padding:27px;background:#e9efdc}.check-panel>p,.progress{font-size:12px!important}.check{display:block;border-bottom:1px solid #bcc7ae;padding:13px 0;font-size:13px;cursor:pointer}.check input{width:18px;height:18px;margin:0 12px 0 0;vertical-align:middle;accent-color:var(--dark)}button{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:7px 15px;cursor:pointer;font-size:12px}.check-panel small{font-size:10px;display:block;margin-top:15px}.prose{max-width:800px}.prose p{font-size:15px;line-height:2.2}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:10;padding:12px}[hidden]{display:none!important}@media(max-width:900px){.hero{gap:25px}.question-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:28px}nav{gap:14px;font-size:11px}.route{padding:24px}.story-meta{display:block}.story-meta span{display:block}}@media(max-width:650px){.masthead-note{font-size:9px;padding:7px 6vw}body>header{display:block;padding:18px 6vw}.brand{font-size:19px}nav{margin-top:18px;justify-content:space-between}main{padding:0 6vw}.hero{grid-template-columns:1fr;margin-top:35px}.hero h1{font-size:32px}.route{padding:23px}.hero .intro br{display:none}.notice{display:block;padding:16px 18px}.notice strong{display:block;margin-bottom:6px}section{margin:45px 0}.service-grid,.stories{grid-template-columns:1fr}.service-tile{padding:16px 0}.question-grid{gap:0 20px}.question-grid h3{font-size:16px}.filters{display:grid;gap:12px;padding:16px}.section-heading{align-items:start}.section-heading>span{max-width:100px}.story-meta{display:flex}.story-meta span{max-width:150px}.article-layout{grid-template-columns:1fr;gap:25px}.toc{position:static;display:block}.toc a{padding:7px 0}.article-heading{margin-top:32px}.article-heading h1{font-size:28px}.article-body h2{font-size:22px}.article-body p,.article-body li{font-size:14px}.editorial-note{padding:25px}footer{display:block;padding:25px 6vw}footer>div+div{margin-top:20px}.check-panel{padding:20px}.prose p{font-size:14px}}
