:root{--ink:#1c2530;--ink-soft:#5a636e;--teal:#1f6f6b;--teal-dark:#185855;--paper:#fafaf7;--card:#ffffff;--line:#e6e5de;--line-soft:#f0efe9}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Zen Kaku Gothic New,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;color:var(--ink);background:var(--paper);line-height:1.85;font-size:16px;-webkit-font-smoothing:antialiased;letter-spacing:.01em}a{color:inherit;text-decoration:none}.wrap{max-width:980px;margin:0 auto;padding:0 24px}header.site{position:sticky;top:0;z-index:50;background:#fafaf7e0;backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}header.site .nav{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{font-weight:700;font-size:17px;letter-spacing:.04em}.brand small{display:block;font-weight:400;font-size:11px;color:var(--ink-soft);letter-spacing:.08em;margin-top:1px}.nav-links{display:flex;align-items:center;gap:26px;font-size:14px;color:var(--ink-soft)}.nav-links a:hover{color:var(--ink)}.nav-cta{background:var(--teal);color:#fff;padding:9px 18px;border-radius:6px;font-size:14px;font-weight:500;transition:background .2s}.nav-cta:hover{background:var(--teal-dark)}.menu-links{display:flex;align-items:center;gap:26px}@media(max-width:680px){.menu-links .txt{display:none}.nav-links{gap:0}}section{padding:76px 0}.sec-head{margin-bottom:46px}.sec-label{font-size:13px;color:var(--teal);font-weight:500;letter-spacing:.1em;margin-bottom:10px}.sec-head h2{font-size:clamp(23px,3.6vw,32px);font-weight:700;line-height:1.5}.sec-head p{color:var(--ink-soft);margin-top:13px;font-size:15px;max-width:620px}.btn-primary{background:var(--teal);color:#fff;padding:14px 30px;border-radius:7px;font-weight:500;font-size:16px;display:inline-block;transition:background .2s,transform .2s}.btn-primary:hover{background:var(--teal-dark);transform:translateY(-1px)}.btn-ghost{padding:14px 8px;color:var(--ink-soft);font-size:15px;display:inline-block}.btn-ghost:hover{color:var(--ink)}.text-link{color:var(--teal);font-size:14px;font-weight:500;border-bottom:1px solid rgba(31,111,107,.35);padding-bottom:1px}footer.site{background:var(--ink);color:#aab2bb;padding:48px 0 36px;font-size:14px}footer.site .foot-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:34px}.foot-brand{color:#fff;font-weight:700;font-size:16px}.foot-brand small{display:block;color:#7c858e;font-weight:400;font-size:12px;margin-top:4px}.foot-links{display:flex;flex-wrap:wrap;gap:24px 48px;font-size:13.5px}.foot-col{display:flex;flex-direction:column;gap:9px}.foot-links a{color:#aab2bb;transition:color .2s}.foot-links a:hover{color:#fff}.copy{border-top:1px solid #2c3640;padding-top:24px;color:#7c858e;font-size:12px}.reveal{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:3px}.page-hero{padding:72px 0 40px;border-bottom:1px solid var(--line)}.page-hero .eyebrow{display:inline-block;font-size:12px;color:var(--ink-soft);font-weight:500;letter-spacing:.12em;margin-bottom:14px}.page-hero h1{font-size:clamp(27px,4.6vw,40px);font-weight:700;line-height:1.4;letter-spacing:.02em}.page-hero .lead{font-size:16px;color:var(--ink-soft);max-width:660px;margin-top:18px}.crumbs{font-size:13px;color:var(--ink-soft);padding:18px 0 0}.crumbs a{color:var(--teal)}.crumbs span{margin:0 8px;opacity:.5}.law-note{font-size:12.5px;color:var(--ink-soft);padding:6px 0 48px}.law-note a{color:var(--ink-soft);border-bottom:1px solid var(--line)}.law-note a:hover{color:var(--teal)}.prose{padding:56px 0 72px;max-width:760px}.prose h2{font-size:clamp(20px,3vw,26px);font-weight:700;line-height:1.5;margin:48px 0 18px;padding-bottom:10px;border-bottom:1px solid var(--line)}.prose h3{font-size:18px;font-weight:700;line-height:1.6;margin:32px 0 12px}.prose h2:first-child,.prose h3:first-child{margin-top:0}.prose p{margin:0 0 18px;font-size:15.5px}.prose ul,.prose ol{margin:0 0 20px;padding-left:1.4em}.prose li{margin:6px 0;font-size:15.5px}.prose ul li::marker{color:var(--teal)}.prose a{color:var(--teal);border-bottom:1px solid rgba(31,111,107,.35)}.prose a:hover{color:var(--teal-dark)}.prose img{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--line);margin:18px 0}.prose strong{font-weight:700}.prose blockquote{margin:24px 0;padding:16px 22px;background:var(--card);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;color:var(--ink-soft);font-size:15px}.prose hr{border:0;border-top:1px solid var(--line);margin:36px 0}.prose .cap{font-size:13px;color:var(--ink-soft);margin-top:-8px}.prose iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:8px;margin:18px 0;display:block}.prose table{width:100%;border-collapse:collapse;font-size:14.5px;margin:20px 0;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);padding:10px 13px;text-align:left;vertical-align:top}.prose thead th{background:var(--line-soft);font-weight:700}.tool{padding:40px 0 72px;max-width:680px}.tool .calc{display:flex;flex-direction:column;gap:16px}.tool .f{display:flex;flex-direction:column;gap:6px}.tool .f label{font-size:13.5px;color:var(--ink);font-weight:500}.tool .f label small{color:var(--ink-soft);font-weight:400;margin-left:6px}.tool .f input{font-family:inherit;font-size:16px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:11px 13px;width:100%}.tool .f input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #1f6f6b1f}.tool .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.tool .grid2{grid-template-columns:1fr}}.tool .result{margin-top:10px;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}.tool .result .r{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 20px;border-top:1px solid var(--line-soft)}.tool .result .r:first-child{border-top:0}.tool .result .r span{font-size:14px;color:var(--ink-soft)}.tool .result .r b{font-size:18px;font-weight:700;color:var(--ink)}.tool .result .r.total{background:#1f6f6b0f}.tool .result .r.total b{font-size:22px;color:var(--teal)}.tool .note{font-size:12.5px;color:var(--ink-soft);line-height:1.85;margin-top:20px}.tool select,.tool textarea{font-family:inherit;font-size:16px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:11px 13px;width:100%}.tool textarea{font-size:15px;line-height:1.8;resize:vertical;min-height:160px}.tool select:focus,.tool textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #1f6f6b1f}.tool .seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex-wrap:wrap}.tool .seg button{font-family:inherit;font-size:13px;color:var(--ink-soft);background:var(--card);border:0;border-left:1px solid var(--line);padding:9px 15px;cursor:pointer}.tool .seg button:first-child{border-left:0}.tool .seg button.on{background:var(--teal);color:#fff}.tool .out{display:flex;align-items:center;gap:10px}.tool .out input{font-family:ui-monospace,Menlo,monospace}.tool .copy{flex-shrink:0;font-family:inherit;font-size:13px;color:var(--teal);background:var(--card);border:1px solid rgba(31,111,107,.35);border-radius:8px;padding:10px 14px;cursor:pointer;white-space:nowrap}.tool .copy:hover{background:#1f6f6b0f}.tool .check{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--ink)}.tool .check input{width:auto}.tools-index{padding:40px 0 72px}.tools-cat{margin-bottom:40px}.tools-cat h2{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:760px){.tools-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.tools-grid{grid-template-columns:1fr}}.tool-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px 20px;transition:border-color .2s}.tool-card:hover{border-color:var(--teal)}.tool-card h3{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:5px}.tool-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.6}.info-table{width:100%;border-collapse:collapse;font-size:15px}.info-table th{text-align:left;font-weight:500;color:var(--ink-soft);width:160px;padding:15px 0;border-bottom:1px solid var(--line-soft);vertical-align:top}.info-table td{padding:15px 0;border-bottom:1px solid var(--line-soft)}@media(max-width:680px){.info-table th{width:108px;font-size:13px;display:block;padding-bottom:2px;border-bottom:0}.info-table td{font-size:14px;display:block;padding-top:4px}}
