@charset "UTF-8";
:root{--ink:#172e28;--green:#164e3d;--lime:#d9ef87;--paper:#fff;--line:#cdd7d0;--muted:#52615a;--wash:#f2f5f2;--font: 'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 var(--font)}a{color:inherit;text-underline-offset:.25em}a:hover{color:#387057}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9b5c0a;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5}h1{font-size:clamp(2rem,4.6vw,4rem);letter-spacing:-.04em;font-weight:800}h2{font-size:clamp(1.5rem,2.7vw,2.1rem)}h3{font-size:1.2rem}.wrap{max-width:1200px;margin:auto;padding:0 32px}.skip{position:absolute;left:15px;top:-80px;background:#fff;z-index:10}.skip:focus{top:12px}.header{border-bottom:1px solid var(--line)}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px}.logo{text-decoration:none;font-size:1.8rem;font-weight:900;letter-spacing:-.09em;white-space:nowrap}.logo small{display:block;font-size:.65rem;letter-spacing:.16em;line-height:1}.nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.nav a{font-size:.9rem;font-weight:700;text-decoration:none}.nav a[aria-current]{border-bottom:2px solid var(--green)}.button{display:inline-block;text-align:center;border:1px solid var(--green);background:var(--green);color:white;padding:13px 24px;text-decoration:none;font-weight:700;cursor:pointer;border-radius:3px}.button:hover{background:#29614e;color:#fff}.button.light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.eyebrow{font-size:.8rem;letter-spacing:.15em;font-weight:700;color:var(--green);margin-bottom:24px}.hero{padding:55px 0 64px}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:54px;align-items:center}.hero h1{margin:0 0 25px}.hero h1 span{display:block}.hero .lead{max-width:29em}.hero figure{margin:0;position:relative}.hero img{aspect-ratio:1.1;object-fit:cover;border-radius:2px}.hero .issue{position:absolute;bottom:28px;left:-20px;padding:14px 24px;background:var(--lime);font-size:.85rem;font-weight:700;box-shadow:6px 6px 0 #17392a}.lead{font-size:1.05rem;color:var(--muted)}.meta,.fine,figcaption{font-size:.8rem;color:var(--muted)}figcaption{padding-top:8px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--wash);padding:18px 0}.strip .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.9rem}.section{padding:64px 0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px}.section-head h2{margin:0}.paths{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.path{padding:30px 24px;border-bottom:1px solid var(--line);text-decoration:none}.path+.path{border-left:1px solid var(--line)}.path b{display:block;font-size:1.3rem;margin:15px 0}.path p{font-size:.9rem;color:var(--muted)}.number{font:2rem/1 Georgia,serif;color:#6d8b7c}.contrast{background:var(--green);color:#fff}.contrast .eyebrow,.contrast .fine{color:#d9e5dc}.contrast .split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.example{border-top:1px solid #6f9282;border-bottom:1px solid #6f9282;padding:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:22px}.example strong{display:block;color:var(--lime);font-size:2rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.article-card{display:block;border:1px solid var(--line);padding:28px;text-decoration:none;background:#fff}.article-card:hover{border-color:var(--green);background:var(--wash)}.article-card h3{margin:16px 0}.article-card p{font-size:.9rem;color:var(--muted);margin-bottom:0}.tag{font-size:.78rem;color:var(--green);font-weight:700}.crumb{padding-top:24px;font-size:.8rem;color:var(--muted)}.pagehead{padding:48px 0 30px}.pagehead h1{font-size:clamp(2rem,3.8vw,3.3rem);max-width:950px}.pagehead .lead{max-width:800px}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;background:var(--wash);border-top:3px solid var(--green);padding:26px;margin:16px 0}.controls label{font-size:.9rem;font-weight:700;display:block}select,input[type=number]{display:block;width:100%;padding:10px 12px;border:1px solid #9eafa4;border-radius:3px;background:white;color:var(--ink);min-height:46px;margin-top:7px}.condition{display:flex;gap:12px;align-items:start;margin:20px 0}.condition input{width:20px;height:20px;flex-shrink:0;margin-top:5px}.results{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:30px 0}.plan{border:1px solid var(--line);padding:28px;background:white}.plan h2{font-size:1.4rem;margin:8px 0 24px}.plan .price{font-size:2.5rem;font-weight:800;line-height:1.2;letter-spacing:-.04em}.breakdown{display:grid;grid-template-columns:1fr auto;font-size:.9rem;gap:6px;margin:20px 0;padding-bottom:20px;border-bottom:1px solid var(--line)}dt,dd{margin:0}.breakdown dd{text-align:right}.plan .spec{font-size:.9rem;color:var(--muted)}.plan .button{width:100%;margin-top:16px}.notice{background:#f6f0df;border-left:4px solid #a36b13;padding:20px 26px;margin:24px 0}.notice p:last-child{margin-bottom:0}.table-wrap{overflow:auto;margin:28px 0}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{padding:16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--wash)}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 240px;gap:60px;align-items:start;padding-bottom:70px}.prose p{line-height:2.1;margin-bottom:24px}.prose h2{font-size:1.6rem;margin:45px 0 22px;padding-top:20px;border-top:1px solid var(--line);scroll-margin-top:25px}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin-bottom:10px}.prose a{color:var(--green)}.toc{background:var(--wash);padding:24px;position:sticky;top:20px;font-size:.85rem}.toc ol{padding-left:1.3em}.toc li{margin:12px 0}.toc a{text-decoration:none}.links-list a{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.checklist{padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--line);padding:16px 0}.checklist label{display:flex;gap:12px;align-items:baseline}.checklist input{width:20px;height:20px;flex-shrink:0}.checklist input:checked+span{color:#5a7166;text-decoration:line-through}.check-progress{font-weight:700;color:var(--green)}.error{color:#962d1a;font-weight:700}.ad-disclosure{padding:12px 32px;background:var(--wash);font-size:.8rem}.ad-pixel{width:1px;height:1px}.footer{border-top:1px solid var(--line);background:var(--wash);padding:45px 0}.footer-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0;font-size:.85rem}.categories{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.categories a{padding:6px 14px;border:1px solid var(--line);text-decoration:none}.category{scroll-margin-top:20px}.empty{padding:30px;border:1px dashed var(--line)}@media(max-width:850px){.header .wrap{min-height:90px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;gap:18px}.nav{gap:18px}.nav .button{padding:8px 15px}.hero-grid{gap:25px}.hero h1{font-size:2.6rem}.grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.toc{position:static;grid-row:1}.toc ol{columns:2}.contrast .split{gap:25px}}@media(max-width:600px){.wrap{padding:0 20px}.logo{font-size:1.55rem}.nav{width:100%;justify-content:space-between;gap:8px}.nav a{font-size:.8rem}.hero{padding:36px 0}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:2.6rem}.hero img{aspect-ratio:1.45}.hero .issue{left:-8px;bottom:25px}.paths,.grid,.results,.controls,.contrast .split{grid-template-columns:1fr}.path{padding:25px 0}.path+.path{border-left:0}.section{padding:42px 0}.section-head{align-items:start;flex-direction:column;gap:12px}.controls{gap:16px;padding:22px}.plan{padding:24px}.pagehead{padding:30px 0 20px}.pagehead h1{font-size:2rem}.toc ol{columns:1}.article-layout{gap:20px}.example strong{font-size:1.7rem}}@media print{.header,.footer,.toc,.button,.controls{display:none}.wrap{max-width:none;padding:0}.article-layout{display:block}a{text-decoration:none;color:#000}.prose{font-size:11pt}}
[hidden]{display:none!important}
