:root{--navy:#0c2335;--ink:#172e3e;--muted:#60727c;--lime:#c5e778;--blue:#24617f;--pale:#f4f7f4;--line:#dbe3e6;--white:#fff;--serif:Georgia,'Yu Mincho','Hiragino Mincho ProN',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fbfcfc;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.85;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3a85a7;outline-offset:4px}a:hover{text-decoration-color:var(--blue)}p{margin:0 0 1.2em}h1,h2,h3{line-height:1.5;margin:0;font-weight:650;letter-spacing:-.035em}h2{font-family:var(--serif);font-size:clamp(25px,2.6vw,36px);font-weight:500}h3{font-size:20px}small{font-size:12px}.wrap{width:min(1210px,calc(100% - 80px));margin:auto}.skip{position:fixed;top:-80px;left:20px;background:var(--lime);padding:12px;z-index:100}.skip:focus{top:10px}.header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{min-height:82px;display:flex;align-items:center;gap:30px}.brand{display:flex;gap:11px;align-items:center;line-height:1.3;flex-shrink:0}.brand svg{width:37px;height:37px}.brand strong{display:block;font-size:19px;letter-spacing:-.04em}.brand small{color:var(--muted);font-size:10px;letter-spacing:.13em}.nav{display:flex;gap:28px;align-items:center;margin-left:auto;font-size:13px;font-weight:650}.lang{color:var(--blue);border-left:1px solid var(--line);padding-left:23px;font-size:12px}.menu-button{display:none}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:650;letter-spacing:.17em;color:var(--blue);display:block;margin-bottom:16px}.hero{color:white;background:var(--navy);position:relative;overflow:hidden}.hero:before{content:'';position:absolute;right:-280px;top:-700px;width:1000px;height:1000px;border-radius:50%;border:1px solid #ffffff14;box-shadow:0 0 0 100px #ffffff05,0 0 0 101px #ffffff09,0 0 0 220px #ffffff03,0 0 0 221px #ffffff08}.hero-top{display:flex;justify-content:space-between;position:relative;padding-top:30px;color:#a0b3bf;font-size:11px;letter-spacing:.12em}.hero-body{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding:55px 0 66px}.hero h1{font-family:var(--serif);font-size:clamp(44px,4.7vw,65px);font-weight:600;line-height:1.55;letter-spacing:.015em;margin-bottom:23px}.hero h1 em{font-style:normal;color:var(--lime)}.hero .intro{font-size:14px;line-height:2.1;color:#bdccd3;max-width:520px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:12px 20px;border:1px solid var(--line);border-radius:3px;font-size:13px;font-weight:650;background:white;color:var(--ink);line-height:1.6;min-height:46px}.button:hover{background:#edf3e3;text-decoration:none}.button.primary{background:var(--lime);border-color:var(--lime)}.button.outline{color:white;background:transparent;border-color:#6e8392}.guide{display:grid;grid-template-columns:42% 58%;align-items:center;gap:0}.guide-art{aspect-ratio:2/3.1;isolation:isolate;border-radius:30% 30% 20% 20%;position:relative;overflow:hidden;transform:rotate(-3deg)}.guide-art img{position:absolute;width:300%;max-width:none;height:auto;top:-18%;left:0;pointer-events:none}.guide-bubble{background:#f2f7e9;color:var(--ink);border-radius:18px 18px 18px 3px;padding:24px 25px;position:relative;box-shadow:0 10px 35px #0001}.guide-bubble:before{content:'';position:absolute;width:14px;height:14px;background:inherit;left:-7px;top:48%;transform:rotate(45deg)}.guide-name{color:#476445;font-size:11px;letter-spacing:.06em;line-height:1.5;margin-bottom:12px}.guide-name strong{display:block;font-size:14px;color:var(--ink)}.guide-bubble h2{font-family:inherit;font-size:23px;margin-bottom:9px;font-weight:650}.guide-bubble p{font-size:13px;line-height:2;margin:0}.hero-bottom{border-top:1px solid #ffffff20;display:flex;position:relative;padding:20px 0;gap:32px;font-size:11px;color:#b9cbd4;align-items:center}.hero-bottom b{color:var(--lime);margin-right:8px;font-size:14px}.hero-bottom span:last-child{margin-left:auto}.section{padding:66px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-head p{max-width:400px;margin:0;color:var(--muted);font-size:13px}.fields{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:5px;background:white;overflow:hidden}.field{padding:27px 28px 25px;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:background .15s}.field:last-child{border-right:0}.field:hover{background:#f3f7ed}.field-top{display:flex;justify-content:space-between;align-items:center}.field-number{font-family:var(--serif);font-size:25px;color:var(--blue)}.field-tag{font-size:10px;letter-spacing:.1em;font-weight:700;color:var(--muted)}.field svg{width:100%;height:100px;display:block;color:var(--blue);margin:15px 0}.field h3{font-family:var(--serif);font-size:24px;font-weight:500;margin-bottom:10px}.field p{font-size:13px;color:var(--muted);flex-grow:1}.field-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;font-size:11px;font-weight:650;color:var(--blue)}.subtle{color:var(--muted);font-size:12px}.lens-section{background:#eef3ef;border-block:1px solid var(--line)}.tabs{display:flex;gap:0;border-bottom:1px solid #bfcfca;margin-top:25px}.tabs button{padding:13px 30px;background:transparent;border:0;border-bottom:3px solid transparent;color:var(--muted);font-size:13px}.tabs button.active{border-bottom-color:var(--blue);color:var(--ink);font-weight:700}.lens-body{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding-top:28px}.lens-body h3{font-family:var(--serif);font-size:27px;font-weight:500;margin:6px 0 14px}.lens-body p{font-size:13px;color:var(--muted)}.lens-steps{margin:0;padding:0;list-style:none;counter-reset:steps}.lens-steps li{padding:14px 0;border-bottom:1px solid #d4dfd8;font-size:14px;display:flex;gap:20px;align-items:center}.lens-steps li:before{counter-increment:steps;content:'0'counter(steps);font-family:var(--serif);font-size:22px;color:var(--blue)}.searchbar{display:flex;gap:12px}.searchbar input{flex:1;min-width:0;padding:14px 16px;border:1px solid #b7c8d0;border-radius:3px;background:white}.chips{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.chip{border:1px solid var(--line);background:#fff;padding:7px 14px;border-radius:3px;font-size:12px;color:var(--muted)}.chip.active,.chip[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:white}.result-line{display:flex;justify-content:space-between;margin:23px 0;font-size:11px;color:var(--muted)}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-card{background:#fff;border:1px solid var(--line);border-radius:3px;padding:25px;display:flex;flex-direction:column;min-height:280px;transition:transform .15s,border-color .15s}.article-card:hover{transform:translateY(-3px);border-color:var(--blue)}.article-card .tag{font-size:10px;letter-spacing:.08em;color:var(--blue);font-weight:700}.article-card h3{font-family:var(--serif);font-size:21px;font-weight:500;margin:17px 0 12px;line-height:1.65}.article-card p{font-size:12px;color:var(--muted);line-height:1.9;flex:1}.article-card .bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line);font-size:11px;color:var(--blue)}.center{text-align:center;margin-top:30px}.welfare{background:var(--navy);color:#fff}.welfare-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.welfare .eyebrow{color:var(--lime)}.welfare h2{font-size:34px}.welfare p{color:#bfcbd2;font-size:14px;margin-top:20px}.welfare-quote{border-left:2px solid var(--lime);padding-left:30px}.welfare-quote strong{display:block;font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.8}.welfare-quote small{color:#9bb0bc;display:block;margin-top:18px}.pipeline{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:white}.pipeline article{padding:22px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.pipeline article:nth-child(3n){border-right:0}.pipeline article:nth-child(n+4){border-bottom:0}.pipeline span{font-family:var(--serif);font-size:24px;color:var(--blue)}.pipeline h3{font-size:15px;margin:10px 0}.pipeline p{font-size:12px;color:var(--muted);margin:0}.pipeline-note{font-size:12px;color:var(--muted);margin-top:15px}.research{background:#f2f5f6;border-block:1px solid var(--line)}.research-summary{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0}.research-summary div{padding-right:30px;border-right:1px solid #ccd9dd}.research-summary b{font-family:var(--serif);font-size:32px;font-weight:500;display:block}.research-summary span{font-size:11px;color:var(--muted)}.research-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.research-controls input,.research-controls select{width:100%;padding:11px 12px;border:1px solid #bccbd1;border-radius:3px;background:#fff}.research-controls label{font-size:11px;color:var(--muted)}.country-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:22px 0}.country-button{display:flex;justify-content:space-between;gap:7px;text-align:left;background:white;padding:9px 11px;border:1px solid var(--line);border-radius:2px;font-size:11px}.country-button small{font-size:10px;color:var(--muted)}.country-button.active{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.research-list{display:grid;gap:12px}.source{background:#fff;border:1px solid var(--line);padding:22px 24px}.source .source-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:10px;color:var(--muted);margin-bottom:8px}.source h3{font-family:var(--serif);font-size:19px;font-weight:500;letter-spacing:-.01em;margin-bottom:10px}.source h3 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.source p{font-size:12px;margin:0 0 10px;color:var(--muted)}.source details{font-size:11px;border-top:1px solid #e8eeef;padding-top:8px}.source details div{margin-top:10px;color:var(--muted)}.badge{background:#edf3e5;color:#486135;padding:2px 7px;border-radius:2px;font-size:10px}.pagination{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:22px}.empty{padding:40px;text-align:center;background:white;border:1px solid var(--line);color:var(--muted)}.tools-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:28px}.tool-box{border:1px solid var(--line);background:white;padding:28px;border-radius:3px}.tool-box h3{font-family:var(--serif);font-size:23px;font-weight:500;margin-bottom:10px}.tool-box>p{font-size:12px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:11px;display:flex;flex-direction:column;gap:5px;color:var(--muted)}.form-grid input,.form-grid select,.form-grid textarea{padding:8px 10px;border:1px solid #bdcbd1;border-radius:3px;width:100%;font-size:13px;color:var(--ink);background:#fff}.form-grid .full{grid-column:1/-1}.calc-result{margin-top:22px;padding:20px;background:#edf3e6}.calc-result strong{font-family:var(--serif);font-size:30px;font-weight:500;display:block}.calc-result p{font-size:12px;margin:4px 0}.calc-result .metrics{display:flex;gap:25px;flex-wrap:wrap;margin-top:12px;border-top:1px solid #cad6c1;padding-top:12px}.calc-result .metrics b{display:block}.calc-result .metrics span{font-size:11px}.checklist{padding:0;list-style:none;margin:18px 0}.checklist li{border-bottom:1px solid var(--line);padding:11px 0;display:flex;gap:12px;font-size:12px}.checklist input{width:17px;height:17px;flex-shrink:0;accent-color:var(--blue);margin-top:5px}.checklist label{cursor:pointer}.checklist-progress{font-size:12px;background:#f1f5f7;padding:12px;margin:12px 0}.error{color:#9b3025;font-size:12px}.closing{border-top:1px solid var(--line);background:#eef3ee}.closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.closing .guide{max-width:480px;grid-template-columns:25% 75%}.closing .guide-bubble{background:white;box-shadow:none}.footer{padding:35px 0;background:white}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-links{display:flex;gap:22px;font-size:12px;align-items:start;flex-wrap:wrap}.footer small{display:block;color:var(--muted);margin-top:22px;font-size:10px}.article-hero{background:var(--navy);color:white;padding:55px 0}.article-hero h1{font-family:var(--serif);font-size:clamp(29px,3.6vw,46px);font-weight:500;max-width:900px;line-height:1.55}.article-hero .eyebrow{color:var(--lime)}.article-hero p{color:#b7c8d1;max-width:820px;margin:22px 0 0;font-size:15px}.breadcrumbs{font-size:12px;margin-bottom:25px;color:#b3c5cf}.article-layout{display:grid;grid-template-columns:230px minmax(0,780px);gap:65px;padding:50px 0 70px}.toc{position:sticky;top:110px;align-self:start;font-size:12px}.toc a{display:block;padding:9px 0;border-bottom:1px solid var(--line);color:var(--muted)}.toc strong{display:block;font-size:11px;letter-spacing:.1em;margin-bottom:14px}.prose h2{font-size:27px;margin-bottom:20px}.prose section{margin-bottom:45px}.prose p{font-size:15px;line-height:2.2;white-space:pre-line}.prose .takeaway{background:#edf3e6;border-left:3px solid #8fb843;padding:22px 26px;font-size:14px;margin-bottom:40px;line-height:2}.sources{padding:25px;background:#f0f4f5;font-size:12px;overflow-wrap:anywhere}.sources a{text-decoration:underline;color:var(--blue)}.sources li{margin:12px 0}.editorial{max-width:840px}.editorial p,.editorial li{font-size:14px;line-height:2}.editorial h2{margin:40px 0 16px}.editorial table{width:100%;border-collapse:collapse;font-size:12px}.editorial td,.editorial th{text-align:left;padding:12px;border:1px solid var(--line)}.print-button{margin-top:20px}.noscript{padding:15px;background:#fff0d3}.mobile-only{display:none}[hidden]{display:none!important}button:disabled{opacity:.45;cursor:default}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:16px;font-size:12px}.hero-body{gap:25px}.guide-bubble{padding:19px}.guide-bubble h2{font-size:20px}.hero h1{font-size:48px}.country-grid{grid-template-columns:repeat(5,1fr)}.welfare-grid{gap:35px}.article-grid{grid-template-columns:repeat(2,1fr)}.tools-grid{grid-template-columns:1fr 1fr}.field{padding:22px}.article-layout{gap:35px;grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:68px;gap:12px;flex-wrap:wrap}.brand strong{font-size:17px}.brand small{font-size:8px}.brand svg{width:31px;height:31px}.menu-button{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);padding:7px 11px;font-size:11px}.nav{display:none;width:100%;order:3;padding:14px 0;border-top:1px solid var(--line);flex-wrap:wrap;margin:0;gap:20px}.nav.open{display:flex}.lang{padding-left:12px;font-size:11px}.hero-top{font-size:9px;padding-top:25px}.hero-top span:last-child{display:none}.hero-body{grid-template-columns:1fr;padding:31px 0;gap:25px}.hero h1{font-size:40px;line-height:1.5;margin-bottom:18px}.hero .intro{font-size:13px}.hero .guide{max-width:440px;grid-template-columns:30% 70%}.guide-art{max-height:210px}.hero .guide-bubble{padding:18px 20px}.hero .guide-bubble p{font-size:12px}.guide-bubble h2{font-size:20px}.hero-bottom{gap:15px;font-size:9px;flex-wrap:wrap;padding:15px 0}.hero-bottom b{font-size:12px}.hero-bottom span:last-child{margin:0}.section{padding:43px 0}.section-head{display:block;margin-bottom:23px}.section-head p{margin-top:14px}.eyebrow{font-size:10px;margin-bottom:10px}.fields{grid-template-columns:1fr}.field{border-right:0;border-bottom:1px solid var(--line);padding:23px}.field:last-child{border-bottom:0}.field svg{height:85px}.field p{max-width:500px}.lens-body{grid-template-columns:1fr;gap:13px;padding-top:23px}.tabs button{flex:1;padding:12px 8px;font-size:12px}.article-grid{gap:12px}.article-card{padding:20px;min-height:260px}.article-card h3{font-size:19px}.welfare-grid{grid-template-columns:1fr;gap:25px}.welfare h2{font-size:27px}.welfare-quote strong{font-size:23px}.pipeline{grid-template-columns:1fr 1fr}.pipeline article{padding:20px}.pipeline article:nth-child(3n){border-right:1px solid var(--line)}.pipeline article:nth-child(2n){border-right:0}.pipeline article:nth-child(4){border-bottom:1px solid var(--line)}.research-controls{grid-template-columns:1fr 1fr}.research-controls label:first-child{grid-column:1/-1}.country-grid{grid-template-columns:repeat(3,1fr)}.research-summary{gap:10px}.research-summary div{padding-right:15px}.research-summary b{font-size:26px}.tools-grid{grid-template-columns:1fr}.tool-box{padding:23px}.closing-grid{grid-template-columns:1fr;gap:30px}.footer-top{display:block}.footer-links{margin-top:25px;gap:15px}.article-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.toc{position:static}.toc a{padding:5px 0}.article-hero{padding:35px 0}.prose p{font-size:14px;line-height:2.1}.prose h2{font-size:24px}.source{padding:18px}.source h3{font-size:18px}.button{gap:12px;font-size:12px}.section-head .button{margin-top:18px}}
@media(max-width:430px){.article-grid{grid-template-columns:1fr}.article-card{min-height:0}.article-card h3{margin-top:10px}.country-grid{grid-template-columns:repeat(2,1fr)}.brand small{letter-spacing:.05em}.header-inner{gap:9px}.lang{border:0;padding:0}.hero h1{font-size:36px}.hero-bottom{gap:9px}.form-grid{gap:10px}.tool-box{padding:19px}.pipeline article{padding:17px}.pipeline h3{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header,.footer,.toc,.actions,.print-button,.menu-button{display:none}.wrap{width:100%}.article-layout{display:block}.article-hero{background:white;color:black;padding:0}.article-hero p{color:#333}.prose p{font-size:11pt}.prose h2{font-size:17pt}.prose section{break-inside:avoid}.sources{background:white}.prose a:after{content:' ('attr(href)')';font-size:9pt}.guide-art{display:none}body{background:white}}

.geometry-box{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.geometry-box details{align-self:center}.geometry-box .calc-result{margin:0}.geometry-box h3{margin-top:12px}@media(max-width:760px){.geometry-box{grid-template-columns:1fr}}
