:root{color-scheme:light;--bg: #FBFAF7;--surface: #FFFFFF;--surface-2: #F4F2EC;--text: #21201D;--text-soft: #54524C;--muted: #8A877E;--hairline: rgba(33, 32, 29, .1);--hairline-strong: rgba(33, 32, 29, .2);--accent: #34685D;--accent-ink: #244a42;--accent-soft: rgba(52, 104, 93, .08);--good: #3B7A4E;--warn: #8C5A1E;--warn-soft: rgba(140, 90, 30, .08);--maxw: 760px;--maxw-wide: 1080px;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sans: "Inter", "Noto Sans JP", system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--serif: "Noto Serif JP", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Noto Sans JP", serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}main{min-height:60vh}.article-head h1,.doc h1,.doc-body h2,.doc-body h3,.prose h1,.prose h2,.prose h3{font-family:var(--serif)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}.wrap-wide{max-width:var(--maxw-wide);margin:0 auto;padding:0 22px}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.eyebrow .dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}header.site{border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.1) blur(8px);position:sticky;top:0;z-index:40}header.site .bar{max-width:var(--maxw-wide);margin:0 auto;padding:14px 22px;display:flex;align-items:center;gap:20px}.brandmark{display:inline-flex;align-items:center;gap:13px;font-weight:700;font-size:19px;letter-spacing:.01em;color:var(--text);white-space:nowrap;flex-shrink:0}.brandmark:hover{text-decoration:none}.brandmark .logo-mark{height:26px;width:26px;align-self:center;flex-shrink:0;color:var(--text)}.brandmark .ja{font-size:19px}.brandmark .en{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--muted);text-transform:lowercase}header.site nav{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap}header.site nav a{font-size:13.5px;color:var(--text-soft);padding:6px 11px;border-radius:7px}header.site nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}header.site nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}footer.site{margin-top:80px;border-top:1px solid var(--hairline);background:var(--surface)}footer.site .inner{max-width:var(--maxw-wide);margin:0 auto;padding:44px 22px 20px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}footer.site .tagline{color:var(--text-soft);font-size:14px;max-width:38ch;margin:12px 0 0}footer.site h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}footer.site .col{display:flex;flex-direction:column;gap:8px}footer.site .col a{color:var(--text-soft);font-size:14px}footer.site .bottom{max-width:var(--maxw-wide);margin:28px auto 0;padding:18px 22px 36px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-top:1px solid var(--hairline);font-family:var(--mono);font-size:11.5px;color:var(--muted)}.hero{padding:64px 0 36px;border-bottom:1px solid var(--hairline)}@media(max-width:640px){.hero{padding:36px 0 24px}.hero h1{margin:12px 0 10px}.section{padding:28px 0 0}}.hero-mark{display:block;width:46px;height:5px;border-radius:2.5px;background:var(--accent);margin:2px 0 18px}.hero h1{font-size:clamp(30px,5vw,46px);line-height:1.32;letter-spacing:-.01em;margin:18px 0 14px;font-weight:700}.hero h1 .ln{display:inline-block}.hero .lead{color:var(--text-soft);font-size:17px;max-width:56ch;margin:0}.hero .lead strong{color:var(--text);font-weight:600}.section{padding:40px 0 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--hairline)}.section-head h2{font-size:19px;font-weight:700;margin:0;letter-spacing:.01em}.section-head a{font-size:13px;color:var(--muted)}.card-list{display:grid;gap:14px}@media(min-width:900px){.card-list{grid-template-columns:1fr 1fr}.section:first-of-type .card-list .card:first-child{grid-column:1 / -1}}.card{display:block;padding:20px 22px;background:var(--surface);border:1px solid var(--hairline-strong);border-radius:12px;transition:background .15s ease,border-color .15s ease}.card:hover{text-decoration:none;background:var(--accent-soft);border-color:var(--accent)}.card .ctype{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.card h3{font-size:18px;font-weight:650;margin:7px 0 6px;color:var(--text);line-height:1.5}.section:first-of-type .card-list .card:first-child h3{font-size:21px}.card p{font-size:14px;color:var(--text-soft);margin:0 0 10px;line-height:1.75}.card .foot{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--muted)}.card .foot .v-ok,.card .foot .v-pending,.card .foot .v-partial{font-size:10.5px;padding:2px 8px;border-radius:100px;border:1px solid;margin-left:auto;white-space:nowrap}.card .foot .v-ok{color:var(--good);border-color:color-mix(in srgb,var(--good) 40%,transparent)}.card .foot .v-pending{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.card .foot .v-partial{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,transparent)}.empty-note{padding:28px 22px;border:1px dashed var(--hairline-strong);border-radius:10px;color:var(--text-soft);font-size:14px;background:var(--surface)}.article-head{padding:52px 0 0}.crumbs{font-family:var(--mono);font-size:11.5px;color:var(--muted);display:flex;gap:8px;flex-wrap:nowrap;margin-bottom:16px}.crumbs a{color:var(--muted);white-space:nowrap}.crumbs .sep{opacity:.5}.crumbs .crumb-cur{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ctype-pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);border:1px solid var(--hairline-strong);border-radius:100px;padding:4px 11px}.article-head h1{font-size:clamp(26px,4.4vw,38px);line-height:1.4;letter-spacing:-.005em;margin:16px 0 12px;font-weight:700}.article-head .lead{color:var(--text-soft);font-size:17px;margin:0 0 18px}.article-meta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-family:var(--mono);font-size:12px;color:var(--muted);padding:14px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.article-meta strong{color:var(--text-soft);font-weight:500}.article-meta .tags{color:var(--accent)}.verify-status{display:flex;gap:12px;align-items:flex-start;margin:24px 0;padding:14px 16px;border-radius:10px;border:1px solid var(--hairline);background:var(--surface);font-size:13.5px;line-height:1.8;color:var(--text-soft)}.verify-status .badge{flex:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;padding:3px 9px;border-radius:6px;white-space:nowrap;border:1px solid var(--hairline-strong)}.verify-status.ok .badge{color:var(--good);border-color:color-mix(in srgb,var(--good) 40%,transparent)}.verify-status.pending{background:var(--warn-soft)}.verify-status.pending .badge{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}@media(max-width:520px){.verify-status{flex-direction:column;gap:8px}.verify-status .badge{align-self:flex-start}}.verify-status.partial{background:var(--warn-soft)}.verify-status.partial .badge{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,transparent)}.verify-status.partial ul{margin:6px 0 4px;padding-left:1.2em}.verify-status.partial li{margin:2px 0}.verify-status strong{color:var(--text);font-weight:600}.verify-status details.verify-more{margin-top:4px}.verify-status details.verify-more summary{cursor:pointer;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:2px;width:fit-content}.verify-status details.verify-more p{margin:6px 0 0}.affiliate-note{margin:22px 0;padding:12px 16px;border-left:3px solid var(--accent);background:var(--accent-soft);font-size:13px;line-height:1.8;color:var(--text-soft);border-radius:0 8px 8px 0}.prose{font-size:16px;line-height:1.95;color:var(--text-soft);margin-top:8px;counter-reset:prose-sec}.prose>:first-child{margin-top:0}.prose>blockquote:first-child{font-size:13px;line-height:1.75}.prose h2{font-size:21px;font-weight:700;color:var(--text);letter-spacing:.01em;margin:48px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--hairline)}.prose h2:before{counter-increment:prose-sec;content:counter(prose-sec,decimal-leading-zero);font-family:var(--mono);font-size:12.5px;font-weight:500;color:var(--accent);border:1px solid var(--hairline-strong);border-radius:6px;padding:1px 7px;margin-right:10px;vertical-align:2px}.prose h3{font-size:17px;font-weight:650;color:var(--text);margin:30px 0 10px}.prose p{margin:0 0 16px}.prose strong{color:var(--text);font-weight:600}.prose a{text-decoration:underline;text-underline-offset:2px}.prose ul,.prose ol{margin:12px 0 18px;padding-left:24px}.prose li{margin-bottom:8px}.prose blockquote{margin:18px 0;padding:4px 18px;border-left:3px solid var(--hairline-strong);color:var(--muted)}.prose code{font-family:var(--mono);font-size:.88em;background:var(--surface-2);padding:2px 6px;border-radius:5px;color:var(--accent-ink)}h1,h2,h3,h4,.prose p,.prose li,.prose dd,.prose td,.prose th{overflow-wrap:break-word}.prose pre{background:var(--surface-2);border:1px solid var(--hairline);border-radius:10px;padding:42px 18px 16px;overflow-x:auto;margin:18px 0;font-size:14px;line-height:1.75;position:relative}.prose pre code{background:none;padding:0;font-size:14px}.copybtn{position:absolute;top:8px;right:8px;font-family:var(--sans);font-size:12px;font-weight:600;line-height:1;padding:7px 12px;cursor:pointer;color:var(--text-soft);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:0}.copybtn:hover{color:var(--text);border-color:var(--accent)}.copybtn.ok{color:var(--good);border-color:var(--good)}.prose table{width:100%;border-collapse:collapse;margin:18px 0;font-size:14px}.prose th,.prose td{border:1px solid var(--hairline);padding:9px 12px;text-align:left}.prose th{background:var(--surface-2);font-weight:600;color:var(--text)}@media(max-width:640px){.prose table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.prose th,.prose td{min-width:84px}}.prose hr{border:none;border-top:1px solid var(--hairline);margin:36px 0}.prose figure{margin:22px 0}.prose figure img{display:block;width:100%;height:auto;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-2)}.prose figure figcaption{margin-top:8px;font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--muted);letter-spacing:.01em}.doc{padding:48px 0 0}.doc h1{font-size:clamp(28px,4.4vw,40px);margin:16px 0 12px;line-height:1.35;font-weight:700}.doc .lead{color:var(--text-soft);font-size:17px;margin:0 0 8px}.doc-body{font-size:15.5px;line-height:1.95;color:var(--text-soft)}.doc-body h2{font-size:20px;font-weight:700;color:var(--text);margin:48px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--hairline)}.doc-body h3{font-size:16px;font-weight:650;color:var(--text);margin:26px 0 8px}.doc-body p{margin:0 0 14px}.doc-body strong{color:var(--text);font-weight:600}.doc-body ul{margin:12px 0 16px;padding-left:22px}.doc-body li{margin-bottom:7px}.kv{margin:16px 0;border:1px solid var(--hairline);border-radius:10px;overflow:hidden;background:var(--surface)}.kv-row{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid var(--hairline)}.kv-row:last-child{border-bottom:none}.kv-key{padding:13px 16px;background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;display:flex;align-items:center}.kv-val{padding:13px 16px;color:var(--text);font-size:14px;display:flex;align-items:center}.callout{margin:22px 0;padding:16px 18px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 8px 8px 0;font-size:14px;color:var(--text-soft);line-height:1.85}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;color:var(--text-soft);font-weight:500}.field input,.field textarea{font-family:var(--sans);font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:8px;padding:10px 12px}.field input:focus,.field textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;padding:11px 20px}.btn:hover{background:var(--accent-ink);text-decoration:none}.related{margin-top:56px;padding-top:24px;border-top:1px solid var(--hairline)}.related h2{font-size:16px;font-weight:700;margin:0 0 12px}@media(max-width:720px){footer.site .inner{grid-template-columns:1fr 1fr;gap:24px}footer.site .tagline{grid-column:1 / -1}.kv-row{grid-template-columns:1fr}.kv-key{padding:10px 14px 2px}.kv-val{padding:2px 14px 12px}header.site nav a{padding:6px 8px}}
