:root{--primary:#1F5F7A;--primary-ink:#123E51;--ink:#1E2B33;--ink-2:#4A5A63;--surface:#EEF6F9;--surface-2:#F7FAFB;--line:#CFE0E7;--line-2:#E3EDF1;--tick:#9DB6C1;--pr-bg:#F4F4F2;--pr-line:#D5D5D0;--pr-ink:#6B6B66;--katachi:#D99A1E;--katachi-t:#FBF1DC;--kazu:#2A9D8F;--kazu-t:#E1F3F0;--kangaeru:#4A90D9;--kangaeru-t:#E3EFFA;--kotoba:#E07A5F;--kotoba-t:#FBE9E4;--chishiki:#5E9C4C;--chishiki-t:#E7F1E3;--karada:#8E7DBE;--karada-t:#EFECF7;--round-s:14px;--round-m:20px;--round-l:28px;--f-head:"Zen Maru Gothic",sans-serif;--f-body:"Noto Sans JP",sans-serif;--f-code:"IBM Plex Mono",monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:#fff;color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.8}a{color:var(--primary)}a:hover{color:var(--primary-ink)}:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:6px}img,svg{display:block}h1,h2,h3{font-family:var(--f-head);font-weight:700;line-height:1.45;margin:0}h1{font-size:clamp(26px,4vw,38px)}h2{font-size:clamp(20px,2.6vw,26px)}h3{font-size:18px}p{margin:0}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}@media (max-width:640px){.wrap{padding:0 16px}}main.wrap{padding-top:24px;padding-bottom:72px;display:flex;flex-direction:column;gap:44px}@media (max-width:640px){main.wrap{gap:28px;padding-top:16px;padding-bottom:40px}}.muted{color:var(--ink-2)}.small{font-size:13px}.xs{font-size:12px}.code{font-family:var(--f-code);font-size:12px;color:var(--ink-2);background:#fff;border-radius:999px;padding:3px 10px}.site-head{border-bottom:1px solid var(--line-2);background:#fff}.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand span{font-family:var(--f-head);font-weight:700;font-size:21px}.gnav{display:flex;gap:4px;flex-wrap:wrap;font-size:14px;font-weight:500}.gnav a{text-decoration:none;padding:10px 14px;border-radius:999px}.gnav a[aria-current=page]{background:var(--surface)}.gnav a.cta{background:var(--primary);color:#fff;padding:10px 16px}.menu-btn{display:none;width:44px;height:44px;border:0;border-radius:12px;background:var(--surface);align-items:center;justify-content:center;cursor:pointer}@media (max-width:900px){.brand span{font-size:18px}.menu-btn{display:flex}.gnav{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px 16px;z-index:10}.gnav.open{display:flex}.gnav a{padding:14px 12px}.site-head{position:relative}}.site-foot{border-top:1px solid var(--line-2)}.site-foot .wrap{padding-top:28px;padding-bottom:40px;display:flex;flex-wrap:wrap;gap:12px 22px;font-size:13px;color:var(--ink-2)}.hero{background:var(--surface);border-radius:32px;padding:40px 44px;display:flex;flex-wrap:wrap;gap:28px;align-items:center}@media (max-width:640px){.hero{border-radius:26px;padding:22px 18px;gap:14px}}.hero-main{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:14px}.hero-side{flex:1 1 300px;min-width:0}.crumb{font-size:13px;color:var(--ink-2)}.crumb a{color:var(--ink-2)}.pills{display:flex;flex-wrap:wrap;gap:6px;font-size:13px}.pill{background:#fff;border-radius:999px;padding:6px 12px;text-decoration:none;color:var(--ink)}.pill.line{border:1px solid var(--line);background:#fff}.box{border:1px solid var(--line);border-radius:22px;padding:20px}.box.strong{border:2px solid var(--primary)}.panel{background:var(--surface);border-radius:24px;padding:22px}.panel.soft{background:var(--surface-2)}.grid{display:grid;gap:12px}.g-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.g-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}@media (max-width:640px){.g-2{grid-template-columns:1fr}}.sec{display:flex;flex-direction:column;gap:16px}.sec-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:12px 24px;border-radius:999px;background:var(--primary);color:#fff;text-decoration:none;font-weight:700;border:0;font-size:15px;cursor:pointer}.btn:hover{background:var(--primary-ink);color:#fff}.btn.ghost{background:#fff;color:var(--primary);border:1px solid var(--primary)}.input{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:15px 18px;font-size:16px;font-family:inherit;color:var(--ink)}label.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-2)}.rows{border:1px solid var(--line);border-radius:20px;overflow:hidden}.rows>*{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;border-top:1px solid var(--line-2);text-decoration:none;color:var(--ink)}.rows>*:first-child{border-top:0}.rows a:hover{background:var(--surface-2)}.rows .sub{font-size:12px;color:var(--ink-2)}.book{border:1px solid var(--line);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);background:#fff}.book:hover{border-color:var(--primary)}.book .pub{font-size:12px;color:var(--ink-2)}.book .title{font-weight:700;font-size:15px;line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:4px}.tag{background:var(--surface);border-radius:999px;padding:2px 9px;font-size:11px;color:var(--ink)}.tag.check{background:#fff;border:1px dashed var(--tick);color:var(--ink-2)}.gchip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 12px;font-size:13px;text-decoration:none;color:var(--ink)}.gicon{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;flex-shrink:0}.pr{background:var(--pr-bg);border:1px dashed var(--pr-line);border-radius:20px;padding:20px;color:var(--pr-ink);font-size:13px;display:flex;gap:12px;align-items:center}.pr b{border:1px solid #B9B9B3;border-radius:6px;padding:1px 7px;font-size:11px}details.fold{border:1px solid var(--line);border-radius:20px;padding:14px 18px}details.fold summary{font-weight:700;cursor:pointer;min-height:28px}details.fold p{margin-top:10px;font-size:14px}.note{font-size:12px;color:var(--ink-2);line-height:1.7}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.prose{max-width:720px;display:flex;flex-direction:column;gap:12px;font-size:15px;line-height:1.9}.prose h2{font-size:20px;margin-top:18px}.prose ul{padding-left:1.2em;display:flex;flex-direction:column;gap:6px}.rows>div{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--line-2)}.rows>div:first-child{border-top:0}.prose-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 20px}.prose-dl dt{color:var(--ink-2)}
