@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--color-brand: #E32C1B;--color-brand-dark: #AB2014;--color-bg: #F8F8F8;--color-white: #ffffff;--color-text: #1a1a1a;--color-text-body: #676767;--color-border: #E6E6E6;--color-link: #4A90E2;--font: "Space Grotesk", "Noto Sans JP", system-ui, -apple-system, sans-serif;--font-ja: "Noto Sans JP", "Space Grotesk", system-ui, -apple-system, sans-serif;--max-width: 780px}[data-lang=en] .lang-ja,[data-lang=ja] .lang-en{display:none}[data-lang=ja] .prose,[data-lang=ja] .section-title{font-family:var(--font-ja)}[data-lang=ja] .prose{line-height:1.9}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text-body);font-family:var(--font);font-size:16px;line-height:1.7}.site-header{background:var(--color-brand);color:#fff;padding:3rem 1.5rem 2.5rem;text-align:center}.site-header h1{font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.2;color:#ffffffe6;margin-bottom:.5rem;letter-spacing:-.01em}.site-header .subtitle{font-size:1.25rem;font-weight:400;color:#ffffffb3}.toc-wrapper{background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10}.toc{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.toc-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.toc-toggle{background:none;border:none;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-body);padding:.75rem 0;display:flex;align-items:center;gap:.5rem;text-align:left}.lang-switch{display:flex;flex-shrink:0;border:1px solid var(--color-border);border-radius:999px;overflow:hidden}.lang-btn{background:none;border:none;cursor:pointer;font-family:var(--font);font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--color-text-body);padding:.3rem .75rem;line-height:1.4}.lang-btn+.lang-btn{border-left:1px solid var(--color-border)}.lang-btn:hover{color:var(--color-brand)}.lang-btn[aria-pressed=true]{background:var(--color-brand);color:#fff}.toc-toggle:hover{color:var(--color-brand)}.toc-toggle:after{content:"▾";font-size:1em;transition:transform .2s}.toc-toggle.open:after{transform:rotate(-180deg)}.toc-list{display:none;padding-bottom:1rem;columns:2;gap:2rem;list-style:none}.toc-list.open{display:block}.toc-list a{display:block;font-size:14px;color:var(--color-text-body);text-decoration:none;padding:.2rem 0;break-inside:avoid}.toc-list a:hover{color:var(--color-brand)}.toc-list a .num{color:var(--color-border);margin-right:.35em;font-variant-numeric:tabular-nums}@media (max-width: 600px){.toc-list{columns:1}}.toc-group{break-inside:avoid;margin-bottom:.9rem;list-style:none}.toc-group>ul{list-style:none}.toc-list .toc-group-title{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand);text-decoration:none;padding:.5rem 0 .25rem}.toc-list .toc-group-title:hover{color:var(--color-brand-dark)}.ja-notice{max-width:var(--max-width);margin:0 auto;padding:.6rem 1.5rem;font-family:var(--font-ja);font-size:12px;line-height:1.6;color:var(--color-text-body)}main{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem 6rem}.category-header{border-top:2px solid var(--color-brand);margin-top:4rem;padding-top:1.5rem}.category:first-child .category-header{margin-top:1.5rem}.category-title{font-size:clamp(1.6rem,4.5vw,2.3rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:var(--color-text)}.category.appendix .category-header{border-top-color:var(--color-border);margin-top:3rem}.category.appendix .category-title{font-size:1.2rem;font-weight:700;color:var(--color-text-body)}.section{padding:3.5rem 0;border-bottom:1px solid var(--color-border)}.section:last-child{border-bottom:none}.category .section:first-of-type{padding-top:1.75rem}.category .section:last-of-type{border-bottom:none}.section-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1.5rem}.section-number{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand);flex-shrink:0}.section-title{font-size:25px;font-weight:400;line-height:1.25;color:var(--color-text)}.prose>h1:first-child{display:none}.prose h1{font-size:30px;font-weight:400;line-height:1.2;color:var(--color-text);margin-bottom:1.25rem}.prose h2{font-size:22px;font-weight:700;line-height:1.3;color:var(--color-text);margin-top:2.5rem;margin-bottom:.75rem}.prose h3{font-size:18px;font-weight:700;line-height:1.3;color:var(--color-text);margin-top:2rem;margin-bottom:.5rem}.prose h4{font-size:16px;font-weight:700;line-height:1.3;color:var(--color-text);margin-top:1.5rem;margin-bottom:.5rem}.prose p{margin-bottom:1.25rem}.prose p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:.75rem 0 1.25rem 1.5rem}.prose li{margin-bottom:.35rem}.prose li>ul,.prose li>ol{margin-top:.35rem;margin-bottom:.35rem}.prose strong{font-weight:700;color:var(--color-text)}.prose em{font-style:italic}.prose a{color:var(--color-link);text-decoration:underline;text-underline-offset:2px}.prose a:hover{color:var(--color-brand)}.prose blockquote{border-left:3px solid var(--color-brand);padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--color-white);border-radius:0 5px 5px 0;font-size:16px;color:var(--color-text-body)}.prose blockquote p{margin-bottom:.6rem}.prose blockquote p:last-child{margin-bottom:0}.prose hr{border:none;border-top:1px solid var(--color-border);margin:2rem 0}.prose table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:15px}.prose th{text-align:left;padding:.5rem .75rem;border-bottom:2px solid var(--color-border);font-weight:700;color:var(--color-text)}.prose td{padding:.5rem .75rem;border-bottom:1px solid var(--color-border);vertical-align:top}.prose code{white-space:nowrap}.prose img{max-width:100%;height:auto;border-radius:5px;margin:1.5rem 0}.site-footer{background:var(--color-white);border-top:1px solid var(--color-border);text-align:center;padding:2rem;font-size:13px;color:var(--color-text-body)}.site-footer .footnote{max-width:540px;margin:.6rem auto 0;font-size:12px;opacity:.8}[data-lang=ja] .site-footer .footnote{font-family:var(--font-ja)}
