@charset "UTF-8";
:root{font-family:Inter,"Noto Sans JP","Yu Gothic UI",Meiryo,sans-serif;color:#182536;background:#f8fafb;font-synthesis:none;line-height:1.75;--muted:#5b6b7b;--line:#dce3e9;--blue:#145ce2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #ffbc48;outline-offset:4px}p{margin:0 0 1em}h1,h2,h3{line-height:1.45;letter-spacing:-.035em;margin:0}h2{font-size:27px}h3{font-size:19px}small{font-size:14px}main,.site-header,footer{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.site-header>a{font-size:14px;text-decoration:none}.site-header .brand{font-size:17px;font-weight:750;display:flex;gap:12px;align-items:center}.brand-mark{background:#172b43;color:white;width:32px;height:32px;display:grid;place-items:center;border-radius:8px;font-size:17px}.intro{padding:58px 0 30px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.15em;color:var(--blue);margin-bottom:16px}h1{font-size:clamp(30px,4vw,46px);font-weight:800;letter-spacing:-.055em}.lead{font-size:17px;color:var(--muted);margin:20px 0}.updated{font-size:13px;color:var(--muted);display:flex;gap:20px;flex-wrap:wrap}.mobile-break{display:none}.calculator{display:grid;grid-template-columns:1.15fr 1fr;background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 30px #15395a05}.input-panel{padding:32px}.section-label{display:flex;align-items:center;gap:14px}.section-label>span{font-size:13px;font-weight:800;color:var(--blue);background:#eaf0ff;padding:3px 9px;border-radius:6px}.section-label h2{font-size:21px}.presets{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.presets button{background:white;border:1px solid var(--line);border-radius:30px;font-size:13px;padding:6px 12px;color:var(--muted)}.presets button:hover{border-color:var(--blue);color:var(--blue)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.field label{font-size:14px;font-weight:700;display:block;margin-bottom:7px}.number-wrap{display:flex;align-items:center;border:1px solid #b9c7d4;border-radius:8px;background:#fff;overflow:hidden}.number-wrap:focus-within{outline:2px solid var(--blue);outline-offset:2px}.number-wrap input{border:0;background:transparent;width:100%;min-width:0;padding:10px 12px;font-size:23px;font-weight:650;color:#182536;outline:none}.number-wrap span{padding-right:13px;font-size:14px;color:var(--muted);white-space:nowrap}.field small{font-size:12px;display:block;line-height:1.7;color:var(--muted);margin-top:6px}.primary-button{background:var(--blue);border:0;color:white;display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 18px;border-radius:8px;font-size:16px;font-weight:700;margin-top:24px}.primary-button:hover{background:#0848bf}.primary-button span{font-size:22px;line-height:1}.local-note{font-size:12px;text-align:center;color:var(--muted);margin:12px 0 0}.error:empty{display:none}.error{color:#a52626;font-size:14px;margin-top:12px}.summary-panel{background:#edf3ff;padding:36px;display:flex;flex-direction:column;justify-content:center;outline-offset:4px}.summary-panel .eyebrow{margin-bottom:8px}.total{display:flex;align-items:baseline;gap:10px;color:#12325c;flex-wrap:wrap}.total>span:first-child{font-size:clamp(36px,5vw,68px);letter-spacing:-.055em;font-weight:750;line-height:1.3}.total>span:last-child{font-size:16px}.total-note{font-size:13px;color:var(--muted);margin-top:8px}.summary-line{height:1px;background:#cad8ee;margin:15px 0 24px}.summary-panel h2{font-size:23px;margin-bottom:14px}.summary-panel>p:not(.eyebrow){color:#435c78;font-size:15px}.summary-panel .scope-note{font-size:12px!important;margin:18px 0 0;line-height:1.8}.results-section{padding:54px 0 0}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:24px}.section-heading .eyebrow{margin-bottom:7px}.section-heading>p{font-size:12px;color:var(--muted);margin:0}.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.result-card{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;flex-direction:column}.badge{align-self:flex-start;border-radius:4px;font-size:11px;font-weight:700;padding:3px 7px;line-height:1.6}.fit{color:#126247;background:#e9f6ef}.over{color:#6a6060;background:#f3f0ed}.result-card h3{font-size:17px;letter-spacing:-.02em;margin:17px 0 14px;min-height:49px}.price{font-size:29px;font-weight:750;line-height:1.1;letter-spacing:-.03em;margin:0 0 7px}.billing{font-size:12px;color:var(--muted);margin-bottom:18px}.limits{font-size:13px;font-weight:700;border-top:1px solid var(--line);padding-top:16px;min-height:65px}.explanation{font-size:13px;color:var(--muted);line-height:1.85;flex:1}.official-link{font-size:13px;font-weight:700;color:var(--blue);margin-top:10px}.footnote{font-size:12px;color:var(--muted);margin:16px 0 0}.billing-section{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;padding:38px;margin-top:50px;background:#eef0f2;border-radius:12px}.billing-section h2{margin-bottom:16px}.billing-section>div>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:0}.billing-comparison>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #d3dbe2;gap:16px}.billing-comparison>div span{font-size:14px}.billing-comparison strong{font-size:26px}.billing-comparison p{margin:15px 0 12px!important;color:#182536!important;font-weight:650}.billing-comparison small{font-size:12px;color:var(--muted);display:block}.reading-section{padding:60px 0}.reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:28px}.reading-grid article{border-top:2px solid #192f49;padding-top:18px}.reading-number{font-size:11px;letter-spacing:.09em;font-weight:700;color:var(--muted)}.reading-grid h3{font-size:19px;margin:12px 0}.reading-grid p{font-size:14px;color:var(--muted);line-height:1.9}.sources-section{border-top:1px solid var(--line);padding:42px 0;display:grid;grid-template-columns:.8fr 1.4fr;gap:64px}.sources-section p,.sources-section li{font-size:13px;color:var(--muted)}.sources-section h2{font-size:24px;margin-bottom:18px}.sources-section h3{font-size:15px;margin:22px 0 10px}.sources-section h3:first-child{margin-top:0}.sources-section ul{padding-left:18px;margin:10px 0 16px}.sources-section li{margin-bottom:8px}.source-details a{color:#214f91}footer{border-top:1px solid var(--line);padding-top:22px;padding-bottom:28px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);gap:16px}
@media(max-width:1000px){.results-grid{grid-template-columns:repeat(2,1fr)}.result-card h3{min-height:0}.calculator{grid-template-columns:1fr 1fr}.field-grid{grid-template-columns:1fr}.summary-panel{padding:28px}.billing-section{gap:30px}.limits{min-height:0}}
@media(max-width:680px){main,.site-header,footer{padding-left:20px;padding-right:20px}.site-header{height:72px}.site-header .brand{font-size:14px;gap:8px}.brand-mark{width:27px;height:27px}.site-header>a{font-size:12px}.intro{padding-top:36px}.mobile-break{display:block}.desktop-break{display:none}.lead{font-size:15px}.updated{gap:3px;flex-direction:column;font-size:12px}.calculator{grid-template-columns:1fr}.input-panel,.summary-panel{padding:24px}.field-grid{grid-template-columns:1fr 1fr;gap:18px 14px}.field label{font-size:13px;min-height:44px;display:flex;align-items:end}.field small{font-size:11px}.presets button{font-size:12px}.total>span:first-child{font-size:51px}.section-heading{display:block}.section-heading>p{margin-top:12px}.section-heading>p br{display:none}h2{font-size:23px}.results-grid{grid-template-columns:1fr}.result-card{padding:24px}.result-card h3{font-size:20px}.badge{font-size:12px}.result-card .explanation,.limits,.official-link{font-size:14px}.billing-section{grid-template-columns:1fr;gap:20px;padding:24px;margin-top:32px}.billing-section h2 br{display:none}.billing-comparison strong{font-size:25px}.reading-section{padding:44px 0}.reading-grid{grid-template-columns:1fr;gap:20px}.sources-section{grid-template-columns:1fr;gap:20px}.sources-section p,.sources-section li{font-size:14px}.summary-panel .scope-note{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
