:root{--ink:#183c32;--muted:#68736c;--paper:#f7f5ef;--line:#dcded5;--orange:#b95832;--light:#e5ecdf}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.9 'Noto Sans JP',sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input{font:inherit}button,a,input{outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:'Noto Serif JP',serif;font-weight:500}header{border-bottom:1px solid var(--line)}.header{max-width:1200px;margin:auto;padding:23px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:'Noto Serif JP',serif;font-size:23px;letter-spacing:.06em;display:flex;align-items:center;gap:12px}.brand i{font-style:normal;background:var(--ink);color:var(--paper);width:31px;height:35px;text-align:center;font-size:19px;border-radius:15px 15px 3px 3px}.header nav{display:flex;gap:25px;font-size:12px}.wrap{max-width:1200px;margin:auto;padding:0 36px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;color:var(--muted)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding:65px 0 60px}.hero h1{font-size:49px;line-height:1.6;letter-spacing:.02em;margin:16px 0 20px}.hero p{font-size:14px;color:var(--muted);line-height:2.2}.hero-visual{height:345px;position:relative;border-radius:180px 180px 8px 8px;background:#e6ebdf;overflow:hidden}.hero-visual svg{width:100%;height:100%}.visual-note{position:absolute;bottom:21px;left:26px;font-size:10px;letter-spacing:.13em;color:#4f685b}.arrowlink{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--ink);padding:6px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}.sectionhead h2{font-size:27px;margin-bottom:0}.sectionhead small{color:var(--muted);font-size:11px}.articles{padding:40px 0 55px;border-top:1px solid var(--line)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.card-art{height:210px;overflow:hidden;position:relative;background:#e3eadf}.card:nth-child(2) .card-art{background:#e9e2d6}.card:nth-child(3) .card-art{background:#e1e6e7}.card-art svg{width:100%;height:100%}.number{position:absolute;left:16px;top:11px;font-family:serif;font-size:19px;color:#6d7a6c}.tag{font-size:10px;letter-spacing:.05em;color:var(--orange);display:block;margin:19px 0 10px}.card h3{font-family:'Noto Serif JP',serif;font-size:20px;font-weight:500;line-height:1.8;margin-bottom:12px}.card p{color:var(--muted);font-size:12px;line-height:1.9}.card-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;padding-top:13px;border-top:1px solid var(--line)}.categories{padding:38px 0 56px;border-top:1px solid var(--line)}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category{padding:21px 0;border-top:1px solid #b9c5b8;display:flex;gap:15px}.category span{font-size:21px}.category h3{font-size:14px;margin-bottom:4px}.category p{font-size:11px;color:var(--muted);margin:0}.editorial{background:#e8ece2;padding:40px 46px;margin:0 0 58px;display:grid;grid-template-columns:1fr 1.5fr;gap:40px}.editorial h2{font-size:27px;margin-bottom:0}.editorial p{font-size:12px;margin:0;line-height:2.2;color:#51665a}footer{border-top:1px solid var(--line);padding:28px 0 22px;font-size:10px;color:var(--muted)}.foot{display:flex;justify-content:space-between;gap:20px}.foot nav{display:flex;gap:20px}.private{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.breadcrumbs{font-size:11px;color:var(--muted);margin:30px 0}.article-head{max-width:830px;margin:0 auto;padding:25px 0 35px}.article-head h1{font-size:38px;line-height:1.6;margin:12px 0 20px}.lead{font-size:16px;color:#52665b;line-height:2}.article-meta{font-size:11px;color:var(--muted)}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 225px;gap:65px;max-width:1050px;margin:auto;padding-bottom:60px}.article-body{color:#314d41;font-size:15px;line-height:2.1}.article-body h2{color:var(--ink);font-size:25px;line-height:1.7;margin:42px 0 18px;padding-top:10px;border-top:1px solid var(--line)}.article-body h3{font-size:18px;margin:25px 0 12px}.article-body li{margin-bottom:8px}.article-body ul,.article-body ol{padding-left:24px}.summary{background:var(--light);padding:25px 30px;margin:20px 0 30px;border-left:3px solid #78916f}.summary strong{display:block;margin-bottom:8px}.summary p:last-child{margin-bottom:0}.aside{padding-top:28px;font-size:12px}.aside-inner{position:sticky;top:30px}.aside ol{padding-left:19px;line-height:2.6}.aside p{font-size:11px;color:var(--muted)}.sources{font-size:12px;overflow-wrap:anywhere}.sources a{border-bottom:1px solid #9aa995}.note{font-size:12px;color:var(--muted)}.calc{padding:26px;background:#e7ecdf;border:1px solid #cbd4c4;border-radius:5px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fields label{font-size:12px;display:block}.fields input{width:100%;border:1px solid #adbba8;padding:8px 10px;color:var(--ink);background:#fffef9;border-radius:3px}.results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.result{padding:14px;background:#fffef9;font-size:12px}.result b{display:block;font-size:25px;font-family:serif}.verdict{font-weight:600;font-size:14px;margin:15px 0 0}.button{background:var(--ink);color:var(--paper);border:0;padding:8px 17px;cursor:pointer;margin-top:16px;font-size:12px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:#fff;padding:10px;z-index:5}.topic-page{max-width:760px;padding:40px 0 80px;margin:auto}.topic-page h1{font-size:36px}.topic-page h2{font-size:24px;margin-top:35px}.topic-page p{line-height:2.2}.article-body a:focus-visible{outline:2px solid var(--orange)}@media(max-width:760px){.wrap{padding:0 22px}.header{padding:18px 22px;flex-wrap:wrap;gap:12px}.brand{font-size:20px}.header nav{gap:17px;font-size:10px;width:100%;justify-content:space-between}.hero{grid-template-columns:1fr;gap:22px;padding:35px 0 35px}.hero h1{font-size:36px;line-height:1.55;margin:10px 0 18px}.hero p{font-size:12px}.hero-visual{height:255px;max-width:440px;width:100%;margin:auto}.cards{grid-template-columns:1fr;gap:34px}.card-art{height:230px}.card h3{font-size:21px}.card p{font-size:13px}.sectionhead h2{font-size:23px}.sectionhead small{font-size:9px}.category-grid{grid-template-columns:1fr;gap:4px}.editorial{grid-template-columns:1fr;gap:19px;padding:28px 25px}.editorial h2{font-size:24px}.foot{flex-direction:column;gap:10px}.article-head{padding:5px 0 20px}.article-head h1{font-size:29px}.lead{font-size:14px}.article-layout{display:flex;flex-direction:column-reverse;gap:8px}.aside{padding:0}.aside-inner{position:static;border-top:1px solid var(--line);padding:15px 0}.aside ol{display:flex;flex-wrap:wrap;gap:0 30px;margin:7px 0}.aside p{display:none}.article-body{font-size:14px}.article-body h2{font-size:23px}.summary{padding:20px}.fields{gap:12px}.calc{padding:20px 16px}.results{gap:8px}.result{padding:10px}.result b{font-size:23px}.topic-page h1{font-size:29px}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}a{transition:opacity .18s}a:hover{opacity:.8}}
.consent-link{font:inherit;color:inherit;background:none;border:0;text-decoration:underline;cursor:pointer;padding:0}.foot nav{flex-wrap:wrap}.consent-banner{position:fixed;z-index:100;bottom:0;left:0;right:0;background:#fffef8;color:#183c32;border-top:1px solid #a9baa5;box-shadow:0 -6px 25px #183c3214;padding:20px max(22px,calc((100vw - 1128px)/2));display:flex;align-items:center;gap:30px;font-size:12px;max-height:70vh;overflow:auto}.consent-banner[hidden]{display:none}.consent-banner p{margin:5px 0;font-size:12px;line-height:1.8}.consent-banner a{text-decoration:underline}.consent-actions{display:flex;gap:12px;flex-shrink:0}.consent-actions button{border:1px solid #183c32;color:#183c32;background:#fffef8;border-radius:3px;cursor:pointer;padding:10px 22px;white-space:nowrap;font-size:13px}.consent-actions button:hover{background:#e5ecdf}.consent-banner #analytics-status{font-size:10px;color:#68736c}@media(max-width:760px){.consent-banner{display:block;padding:15px 22px}.consent-actions{margin-top:12px}.consent-actions button{flex:1}.consent-banner p{font-size:11px}}