:root{--ink:#10182a;--ink-2:#2b3752;--ink-3:#5a6580;--ink-4:#8a93a8;--bg:#f7f8fb;--bg-panel:#fff;--bg-sunken:#eef1f7;--line:#dfe4ee;--line-soft:#eaeef5;--accent:#1f4fd8;--accent-ink:#16379a;--accent-bg:#eef2ff;--warn-bg:#fff8e8;--warn-line:#e8d3a0;--warn-ink:#6b5210;--font-sans:"Noto Sans JP", -apple-system, "Hiragino Sans", "Yu Gothic UI", "Meiryo", sans-serif;--font-serif:"Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--w-page:1080px;--w-text:720px;--pad-x:clamp(20px, 5vw, 40px);--r-sm:6px;--r-md:10px;--r-lg:16px;--shadow-sm:0 1px 2px #10182a0d;--shadow-md:0 4px 16px #10182a12}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-feature-settings:"palt" 1;letter-spacing:.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.9}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.2em}a:hover{color:var(--accent-ink)}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:.01em;color:var(--ink);margin:0;font-weight:600;line-height:1.45}p{margin:0 0 1.2em}p:last-child{margin-bottom:0}.page{max-width:var(--w-page);padding-inline:var(--pad-x);margin-inline:auto}.narrow{max-width:var(--w-text)}.section{padding-block:clamp(56px,9vw,104px)}.section+.section{border-top:1px solid var(--line-soft)}.section--panel{background:var(--bg-panel)}.section--sunken{background:var(--bg-sunken)}.eyebrow{font-family:var(--font-sans);letter-spacing:.18em;color:var(--accent);text-transform:uppercase;margin:0 0 14px;font-size:12px;font-weight:700}.h-section{margin-bottom:20px;font-size:clamp(22px,3.4vw,32px)}.h-sub{margin-bottom:10px;font-size:clamp(17px,2.2vw,20px)}.lead{color:var(--ink-2);font-size:clamp(15px,1.7vw,17px)}.muted{color:var(--ink-3);font-size:14px}.btn{border-radius:var(--r-md);border:1px solid #0000;align-items:center;gap:8px;padding:14px 26px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .12s,box-shadow .12s,background-color .12s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-md)}.btn--primary:hover{background:var(--accent-ink);color:#fff}.btn--ghost{color:var(--ink-2);border-color:var(--line);background:0 0}.btn--ghost:hover{background:var(--bg-panel);color:var(--ink)}.card{background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:clamp(20px,3vw,30px)}.grid{gap:20px;display:grid}@media (width>=720px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}}.stat{text-align:left}.stat__num{font-family:var(--font-serif);color:var(--ink);font-size:clamp(30px,5vw,44px);font-weight:600;line-height:1.2}.stat__label{color:var(--ink-3);margin-top:6px;font-size:13px}.todo{background:var(--warn-bg);border:1px dashed var(--warn-line);color:var(--warn-ink);border-radius:var(--r-sm);font-size:13px;font-family:var(--font-sans);padding:2px 8px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 14px}th{color:var(--ink-3);white-space:nowrap;font-size:13px;font-weight:700}.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}:where(a,button,summary,input,textarea,select,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm)}.sr-only:focus,.sr-only:focus-visible{clip:auto;white-space:normal;z-index:200;background:var(--ink);color:#fff;border-radius:var(--r-md);width:auto;height:auto;margin:0;padding:12px 18px;font-size:14px;font-weight:700;text-decoration:none;position:fixed;top:12px;left:12px;overflow:visible}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.site-header[data-astro-cid-z4jru4n3]{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);background:#f7f8fb;position:sticky;top:0}.site-header__inner[data-astro-cid-z4jru4n3]{align-items:center;gap:24px;min-height:72px;display:flex}.site-header__brand[data-astro-cid-z4jru4n3]{color:var(--ink);flex-direction:column;margin-right:auto;text-decoration:none;display:flex}.site-header__name[data-astro-cid-z4jru4n3]{font-family:var(--font-serif);font-size:19px;font-weight:600;line-height:1.3}.site-header__tag[data-astro-cid-z4jru4n3]{letter-spacing:.12em;color:var(--ink-3);font-size:11px}.site-nav[data-astro-cid-z4jru4n3]{gap:24px;display:none}.site-nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]{color:var(--ink-2);font-size:14px;font-weight:500;text-decoration:none}.site-nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]:hover{color:var(--accent)}.site-header__cta[data-astro-cid-z4jru4n3]{white-space:nowrap;padding:9px 16px;font-size:13px}.mmenu[data-astro-cid-z4jru4n3]{position:relative}.mmenu__button[data-astro-cid-z4jru4n3]{cursor:pointer;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-panel);justify-content:center;align-items:center;width:40px;height:40px;list-style:none;display:flex}.mmenu__button[data-astro-cid-z4jru4n3]::-webkit-details-marker{display:none}.mmenu__bars[data-astro-cid-z4jru4n3]{gap:4px;display:grid}.mmenu__bars[data-astro-cid-z4jru4n3] i[data-astro-cid-z4jru4n3]{background:var(--ink-2);border-radius:2px;width:18px;height:2px;display:block}.mmenu[data-astro-cid-z4jru4n3][open] .mmenu__button[data-astro-cid-z4jru4n3]{border-color:var(--accent);background:var(--accent-bg)}.mmenu__panel[data-astro-cid-z4jru4n3]{background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--r-lg);min-width:220px;box-shadow:var(--shadow-md);z-index:60;flex-direction:column;padding:8px;display:flex;position:absolute;top:calc(100% + 10px);right:0}.mmenu__panel[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]{border-radius:var(--r-sm);color:var(--ink-2);padding:12px 14px;font-size:15px;font-weight:500;text-decoration:none}.mmenu__panel[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]:hover{background:var(--bg-sunken);color:var(--accent)}.mmenu__cta[data-astro-cid-z4jru4n3]{background:var(--accent);text-align:center;margin-top:6px;color:#fff!important;font-weight:700!important}.mmenu__cta[data-astro-cid-z4jru4n3]:hover{background:var(--accent-ink)}@media (width>=900px){.site-nav[data-astro-cid-z4jru4n3]{display:flex}.site-header__cta[data-astro-cid-z4jru4n3]{padding:10px 20px;font-size:14px}.mmenu[data-astro-cid-z4jru4n3]{display:none}}@media (width<=899px){.site-header__cta[data-astro-cid-z4jru4n3]{display:none}}.site-footer[data-astro-cid-z4jru4n3]{background:var(--bg-panel);border-top:1px solid var(--line);margin-top:0;padding-block:48px 28px}.site-footer__inner[data-astro-cid-z4jru4n3]{flex-wrap:wrap;justify-content:space-between;gap:28px;display:flex}.site-footer__name[data-astro-cid-z4jru4n3]{font-family:var(--font-serif);margin:0 0 6px;font-size:17px;font-weight:600}.site-footer__nav[data-astro-cid-z4jru4n3]{flex-wrap:wrap;align-items:flex-start;gap:20px;display:flex}.site-footer__nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]{color:var(--ink-2);font-size:14px;text-decoration:none}.site-footer__nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]:hover{color:var(--accent)}.site-footer__copy[data-astro-cid-z4jru4n3]{border-top:1px solid var(--line-soft);margin-top:32px;padding-top:18px}
