:root{--bg:#f6f8fb;--paper:#fff;--ink:#17213a;--muted:#5b6680;--rule:#dde3ee;--rule-strong:#c3ccdc;--ai:#2340a0;--ai-soft:#e7ecfa;--take:#1f8a5b;--take-soft:#e3f4ec;--warn:#b5541c;--warn-soft:#fbeee4;--pr:#8a6a12;--pr-soft:#fbf4df;--seg-exp:#c9d1e0;--seg-it:#2340a0;--seg-rt:#5f7ad6;--seg-kk:#b5541c;--seg-pn:#e0915e;--seg-jg:#8a6a12;--f-display:"Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", sans-serif;--f-body:"Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;--f-num:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1422;--paper:#161d30;--ink:#e6eaf4;--muted:#9aa5bf;--rule:#263049;--rule-strong:#34405e;--ai:#8ea6ff;--ai-soft:#1f2a4d;--take:#4fcf92;--take-soft:#143326;--warn:#f0a070;--warn-soft:#3a2416;--pr:#e2c26a;--pr-soft:#2f2812;--seg-exp:#3a4664;--seg-it:#8ea6ff;--seg-rt:#5b72c4;--seg-kk:#e0864f;--seg-pn:#f2b88e;--seg-jg:#d4b45a;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1422;--paper:#161d30;--ink:#e6eaf4;--muted:#9aa5bf;--rule:#263049;--rule-strong:#34405e;--ai:#8ea6ff;--ai-soft:#1f2a4d;--take:#4fcf92;--take-soft:#143326;--warn:#f0a070;--warn-soft:#3a2416;--pr:#e2c26a;--pr-soft:#2f2812;--seg-exp:#3a4664;--seg-it:#8ea6ff;--seg-rt:#5b72c4;--seg-kk:#e0864f;--seg-pn:#f2b88e;--seg-jg:#d4b45a;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.75}.wrap{max-width:1120px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.35}.num{font-family:var(--f-num);font-variant-numeric:tabular-nums}a{color:var(--ai)}:focus-visible{outline:2px solid var(--ai);outline-offset:2px}header.site{background:var(--paper);border-bottom:1px solid var(--rule)}header.site .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:14px;display:flex}.brand{color:var(--ink);align-items:baseline;gap:10px;text-decoration:none;display:flex}.brand b{font-family:var(--f-display);letter-spacing:.04em;font-size:22px;font-weight:900}.brand small{color:var(--muted);font-size:12px}.badge-year{color:var(--ai);background:var(--ai-soft);border-radius:99px;padding:2px 10px;font-size:12px;font-weight:700}.hero .wrap{gap:10px;padding-block:36px 20px;display:grid}.hero h1{letter-spacing:.01em;font-size:clamp(24px,4.2vw,38px);font-weight:900}.hero h1 em{color:var(--take);font-style:normal}.hero p{color:var(--muted);max-width:62ch;margin:0}.tabs{border-bottom:2px solid var(--rule-strong);gap:4px;margin-top:12px;display:flex;overflow-x:auto}.tab{appearance:none;font:inherit;font-family:var(--f-display);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;padding:12px 18px;font-size:15px;font-weight:700}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--ai);border-bottom-color:var(--ai)}.tab .q{font-family:var(--f-body);color:var(--muted);font-size:11px;font-weight:400;display:block}.panel{padding-block:24px 8px}.tool{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:24px;display:grid}@media (width<=860px){.tool{grid-template-columns:minmax(0,1fr)}}.form{background:var(--paper);border:1px solid var(--rule);border-radius:10px;gap:16px;padding:20px;display:grid}.form h2{letter-spacing:.08em;color:var(--muted);font-size:15px;font-weight:700}.field{gap:6px;display:grid}.field>label,.field>.lbl{font-size:14px;font-weight:700}.field .hint{color:var(--muted);font-size:12px;line-height:1.6}.money{border:1px solid var(--rule-strong);background:var(--bg);border-radius:8px;align-items:center;display:flex;overflow:hidden}.money input{min-width:0;color:var(--ink);font:600 18px var(--f-num);text-align:right;background:0 0;border:0;flex:1;padding:10px 12px}.money input:focus{outline:none}.money:focus-within{border-color:var(--ai);box-shadow:0 0 0 3px var(--ai-soft)}.money span{color:var(--muted);padding:0 12px;font-size:13px}input[type=range]{width:100%;accent-color:var(--ai)}select{font:inherit;border:1px solid var(--rule-strong);background:var(--bg);color:var(--ink);border-radius:8px;padding:9px 10px}.seg{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:6px;display:grid}.seg label{position:relative}.seg input{opacity:0;position:absolute;inset:0}.seg span{text-align:center;border:1px solid var(--rule-strong);cursor:pointer;border-radius:8px;padding:8px 6px;font-size:13px;line-height:1.4;display:block}.seg input:checked+span{background:var(--ai);border-color:var(--ai);color:var(--paper);font-weight:700}.seg input:focus-visible+span{outline:2px solid var(--ai);outline-offset:2px}.check{align-items:flex-start;gap:10px;font-size:14px;display:flex}.check input{accent-color:var(--ai);width:16px;height:16px;margin-top:5px}.sample{color:var(--muted);border-top:1px dashed var(--rule-strong);padding-top:12px;font-size:12px}.result{gap:18px;min-width:0;display:grid}.headline{background:var(--paper);border:1px solid var(--rule);border-radius:10px;gap:14px;padding:22px;display:grid}.kicker{letter-spacing:.1em;color:var(--muted);font-size:12px;font-weight:700}.big{font-family:var(--f-num);color:var(--take);font-variant-numeric:tabular-nums;font-size:clamp(32px,5.6vw,48px);font-weight:600;line-height:1.1}.big small{color:var(--muted);font-size:.42em;font-family:var(--f-body);margin-left:4px}.subs{color:var(--muted);flex-wrap:wrap;gap:8px 22px;font-size:13px;display:flex}.subs b{color:var(--ink);font-family:var(--f-num);font-weight:600}.bar{background:var(--rule);border-radius:6px;height:26px;display:flex;overflow:hidden}.bar i{height:100%;transition:width .35s;display:block}@media (prefers-reduced-motion:reduce){.bar i{transition:none}}.legend{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:2px 20px;font-size:13px;display:grid}.legend div{border-bottom:1px solid var(--rule);justify-content:space-between;gap:10px;padding:6px 0;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}.legend span:before{content:"";background:var(--c);border-radius:2px;flex:none;width:10px;height:10px}.legend b{font-family:var(--f-num);font-variant-numeric:tabular-nums;font-weight:600}.tips{gap:10px;display:grid}.tips h3,.block h3{font-size:16px}.tip{background:var(--paper);border:1px solid var(--rule);border-radius:10px;grid-template-columns:auto 1fr;gap:4px 12px;padding:14px 16px;display:grid}.tip .gain{font-family:var(--f-num);color:var(--take);background:var(--take-soft);white-space:nowrap;border-radius:8px;grid-row:span 2;align-self:center;padding:6px 10px;font-size:14px;font-weight:600}.tip p{color:var(--muted);margin:0;font-size:13px}.tip strong{font-size:14px}.compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=520px){.compare{grid-template-columns:minmax(0,1fr)}}.col{background:var(--paper);border:1px solid var(--rule);border-radius:10px;align-content:start;gap:8px;padding:18px;display:grid}.col.win{border-color:var(--take);box-shadow:inset 0 0 0 1px var(--take)}.col h3{justify-content:space-between;align-items:center;gap:8px;font-size:15px;display:flex}.pill{background:var(--take-soft);color:var(--take);font-size:11px;font-weight:700;font-family:var(--f-body);border-radius:99px;padding:2px 9px}.col .total{font-family:var(--f-num);font-variant-numeric:tabular-nums;font-size:26px;font-weight:600}.rows{font-size:13px;display:grid}.rows div{border-bottom:1px solid var(--rule);justify-content:space-between;gap:10px;padding:5px 0;display:flex}.rows div b{font-family:var(--f-num);font-variant-numeric:tabular-nums;font-weight:500}.rows .sum{border-bottom:0;font-weight:700}.verdict{border-radius:10px;gap:4px;padding:14px 16px;font-size:14px;display:grid}.verdict.yes{background:var(--take-soft)}.verdict.no{background:var(--ai-soft)}.verdict strong{font-family:var(--f-display);font-size:17px}.chart-box{background:var(--paper);border:1px solid var(--rule);border-radius:10px;gap:8px;padding:18px;display:grid}.chart-box p{color:var(--muted);margin:0;font-size:13px}.chart-scroll{overflow-x:auto}svg.chart{width:100%;min-width:480px;height:auto;display:block}svg.chart text{fill:var(--muted);font-family:var(--f-num);font-size:11px}svg.chart .grid{stroke:var(--rule)}svg.chart .zero{stroke:var(--rule-strong);stroke-width:1.5px}svg.chart .line{fill:none;stroke:var(--ai);stroke-width:2.5px}svg.chart .area-pos{fill:var(--take-soft)}svg.chart .area-neg{fill:var(--warn-soft)}svg.chart .dot{fill:var(--ai);stroke:var(--paper);stroke-width:2px}svg.chart .cross{stroke:var(--take);stroke-dasharray:4 4;stroke-width:1.5px}svg.chart .cross-lbl{fill:var(--take);font-weight:600}.methods{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.method{background:var(--paper);border:1px solid var(--rule);border-radius:10px;align-content:start;gap:6px;padding:16px;display:grid}.method.best{border-color:var(--take);box-shadow:inset 0 0 0 1px var(--take)}.method.off{opacity:.55}.method h4{font-family:var(--f-display);justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.method .amt{font-family:var(--f-num);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.method p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.tag{font-size:11px;font-weight:700;font-family:var(--f-body);white-space:nowrap;border-radius:99px;padding:2px 8px}.tag.warn{background:var(--warn-soft);color:var(--warn)}.tag.ok{background:var(--take-soft);color:var(--take)}.pr{gap:10px;display:grid}.pr-head{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.pr-head .tag{background:var(--pr-soft);color:var(--pr)}.offers{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.offer{background:var(--paper);border:1px solid var(--rule);border-radius:10px;align-content:space-between;gap:8px;padding:16px;display:grid}.offer .why{color:var(--pr);font-size:12px;font-weight:700}.offer strong{font-family:var(--f-display);font-size:16px}.offer p{color:var(--muted);margin:0;font-size:13px}.offer .btn{text-align:center;background:var(--ai);color:var(--paper);border-radius:8px;padding:10px 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.offer .btn:hover{filter:brightness(1.1)}.explain{gap:18px;padding-block:28px 8px;display:grid}.block{background:var(--paper);border:1px solid var(--rule);border-radius:10px;gap:10px;padding:20px 22px;display:grid}.block p,.block li{max-width:72ch;margin:0;font-size:14px}.block ul{gap:6px;margin:0;padding-left:1.2em;display:grid}details{border-top:1px solid var(--rule);padding:10px 0}details:first-of-type{border-top:0}summary{cursor:pointer;font-size:14px;font-weight:700}details p{color:var(--muted);margin-top:8px!important}.guide-nav{flex-wrap:wrap;gap:8px;display:flex}.guide-nav a{border:1px solid var(--rule-strong);color:var(--ink);background:var(--paper);border-radius:99px;padding:6px 12px;font-size:13px;font-weight:700;text-decoration:none}.guide-nav a:hover{border-color:var(--ai);color:var(--ai)}.sec-title{gap:4px;display:grid}.sec-title h2{font-size:clamp(20px,3vw,26px);font-weight:900}.sec-title p{color:var(--muted);max-width:70ch;margin:0;font-size:14px}.table-scroll{border:1px solid var(--rule);background:var(--paper);border-radius:10px;overflow-x:auto}table.data{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}table.data th,table.data td{border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap;padding:9px 12px}table.data th:first-child,table.data td:first-child{text-align:left}table.data thead th{color:var(--muted);background:var(--bg);font-size:12px;font-weight:700;position:sticky;top:0}table.data td{font-family:var(--f-num);font-variant-numeric:tabular-nums}table.data td.take{color:var(--take);font-weight:600}table.data tr.hl td{background:var(--ai-soft)}table.data tbody tr:last-child td{border-bottom:0}table.plain{min-width:0}table.plain td{font-family:var(--f-body);white-space:normal;text-align:left}.cases{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.case{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;background:var(--paper);border:1px solid var(--rule);border-radius:10px;align-content:start;gap:6px;padding:16px;display:grid}.case:hover{border-color:var(--ai)}.case strong{font-family:var(--f-display);font-size:16px}.case .meta{color:var(--muted);font-size:12px}.case .val{font-family:var(--f-num);color:var(--take);font-size:20px;font-weight:600}.case .go{color:var(--ai);font-size:12px;font-weight:700}.steps{counter-reset:s;gap:0;display:grid}.step{border-bottom:1px solid var(--rule);grid-template-columns:34px 1fr auto;align-items:baseline;gap:12px;padding:10px 0;font-size:14px;display:grid}.step:before{counter-increment:s;content:counter(s);font-family:var(--f-num);color:var(--ai);background:var(--ai-soft);text-align:center;border-radius:6px;padding:2px 0;font-weight:600}.step b{font-family:var(--f-num);white-space:nowrap;font-weight:600}.step small{color:var(--muted);font-size:12px;display:block}.cal{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.mon{background:var(--paper);border:1px solid var(--rule);border-radius:10px;align-content:start;gap:4px;padding:12px;display:grid}.mon.peak{border-color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn)}.mon .m{font-family:var(--f-display);justify-content:space-between;align-items:center;font-size:15px;font-weight:900;display:flex}.mon .amt{font-family:var(--f-num);font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.mon ul{color:var(--muted);margin:0;padding:0;font-size:11.5px;line-height:1.55;list-style:none}.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=640px){.two{grid-template-columns:minmax(0,1fr)}}.ok-list li::marker{content:"○ ";color:var(--take)}.ng-list li::marker{content:"× ";color:var(--warn)}.checklist{list-style:none;padding:0!important}.checklist label{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;display:flex}.checklist input{accent-color:var(--take);flex:none;width:16px;height:16px;margin-top:5px}.check-score{background:var(--ai-soft);border-radius:8px;padding:10px 14px;font-size:14px;font-weight:700}footer{border-top:1px solid var(--rule);background:var(--paper);margin-top:36px}footer .wrap{color:var(--muted);gap:8px;padding-block:22px 32px;font-size:12px;display:grid}footer p{max-width:90ch;margin:0}html{scrollbar-gutter:stable;scrollbar-color:var(--rule-strong) var(--bg);scrollbar-width:thin}body{margin:0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--rule-strong);border:2px solid var(--bg);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}::-webkit-scrollbar-thumb:active{background:var(--ai)}@media (forced-colors:active){html{scrollbar-color:auto}}.brand{flex-wrap:wrap;min-width:0}.badge-year{overflow-wrap:anywhere;border-radius:10px;max-width:100%}.breadcrumbs{color:var(--muted);padding-block:12px;font-size:12px}.breadcrumbs ol{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"›";margin-right:8px}.foundation{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-block:24px;display:grid}.foundation>*{min-width:0}.foundation h2{font-size:20px}.summary{gap:16px;margin:0;display:grid}.summary dt{color:var(--muted);font-size:12px}.summary dd{overflow-wrap:anywhere;margin:4px 0 0}.summary .big{font-size:clamp(26px,4.5vw,42px)}.rows{margin:0}.rows dd{font-family:var(--f-num);overflow-wrap:anywhere;margin:0}.assumptions{color:var(--muted);font-size:12px!important}.phase-note{padding-top:12px}.skip-link{z-index:10;background:var(--paper);padding:12px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:8px}a{cursor:pointer}a:hover{text-decoration-thickness:2px}a:active{opacity:.8}@media (width<=640px){.foundation{grid-template-columns:minmax(0,1fr)}}.tool-nav{border-bottom:2px solid var(--rule-strong);flex-wrap:wrap;gap:4px;display:flex}.tool-nav a{font-family:var(--f-display);border-bottom:3px solid #0000;flex:180px;padding:12px 16px;font-weight:700;text-decoration:none}.tool-nav a[aria-current=page]{color:var(--ai);border-bottom-color:var(--ai);background:var(--ai-soft)}.tool-nav small{font-family:var(--f-body);color:var(--muted);font-size:11px;font-weight:400;display:block}.tool-nav a:hover{background:var(--ai-soft)}.tool-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-block:24px;display:grid}.tool-cards .block{align-content:start}.tool-cards h2{font-size:20px}.primary-link,.share-btn{background:var(--ai);color:var(--paper);text-align:center;font:700 14px var(--f-body);cursor:pointer;border:0;border-radius:8px;padding:12px 14px;text-decoration:none;display:block}.primary-link:hover,.share-btn:hover{filter:brightness(1.1)}.primary-link:active,.share-btn:active{filter:brightness(.9)}.share-status{min-height:1.5em;color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px}.input-error{color:var(--warn);margin:0;font-size:12px}[aria-invalid=true]{outline:2px solid var(--warn);outline-offset:1px}[hidden]{display:none!important}.result-stale{opacity:.6}.result h2{font-size:18px}.result h3{font-size:16px}.legend{margin:0;padding:0}.legend dt,.legend dd{margin:0}.legend dd{font-family:var(--f-num);white-space:nowrap}.rows dt{min-width:0}.rows dd{text-align:right;flex-shrink:0}.compare .col{min-width:0}.result .big,.col .total{overflow-wrap:anywhere}.col .total{font-size:clamp(20px,2.3vw,26px)}.assumptions{margin:0}.result .assumptions{max-width:none}.calendar-section{gap:12px;display:grid}.calendar-section>p{color:var(--muted);margin:0;font-size:13px}svg.chart{min-width:0}.method h2{font-family:var(--f-display);flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;display:flex}.invoice-amount{color:var(--ai)}.home-guides,.home-section{gap:16px;display:grid}.home-guides{gap:36px;padding-block:12px 24px}.home-table{min-width:580px}.case{text-decoration:none}.case:hover .go{text-decoration:underline}.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.guide-card{color:var(--ink);text-decoration:none}.guide-card span{color:var(--ai);font-size:13px;font-weight:700}.guide-card:hover{border-color:var(--ai)}.checklist-section{padding-block:24px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form{min-width:0}.form .sample{margin:0}.step{grid-template-columns:28px minmax(0,1fr) auto;gap:8px}.step b{font-size:12px}.step span{min-width:0}.offer a[aria-disabled=true]{cursor:default}@media (width<=860px){.tool-cards,.guide-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.tool-nav{gap:0}.tool-nav a{flex:100%;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.tool-nav small{font-size:10px}.headline{padding:18px}.step{grid-template-columns:28px minmax(0,1fr)}.step b{grid-column:2;font-size:14px}.tip{grid-template-columns:minmax(0,1fr)}.tip .gain{grid-row:auto;justify-self:start}}.income-article{gap:24px;max-width:960px;padding-block:24px;display:grid}.income-article h1{font-size:clamp(24px,3.5vw,36px)}.income-article h2{font-size:20px}.income-article>p{margin:0}.income-article .sec-title{gap:12px}.summary-metrics{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.summary-metrics dt{color:var(--muted);font-size:12px}.summary-metrics dd{font-family:var(--f-num);margin:4px 0 0;font-size:18px}.amount-neighbors{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.income-article .table-scroll{max-width:100%}.income-article table.plain{min-width:520px}.income-article table.plain th{white-space:normal}.income-article .headline .big{overflow-wrap:anywhere;font-size:clamp(26px,5vw,46px)}.income-article .legend{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.income-article .block a{overflow-wrap:anywhere}.comparison-result{gap:20px;min-width:0;display:grid}.expense-form{max-width:460px}@media (width<=520px){.income-article{gap:20px}.income-article .block{padding:18px}.income-article .legend{grid-template-columns:minmax(0,1fr)}.income-article .summary-metrics{display:grid}.income-article .primary-link{font-size:13px}}.income-article table.breakdown-table{min-width:0}.legend-dot{border-radius:2px;width:10px;height:10px;margin-right:8px;display:inline-block}
