:root{--c-primary: #1d4ed8;--c-primary-dark: #1e40af;--c-bg: #faf9f6;--c-text: #1f2937;--c-text-muted: #57534e;--c-accent: #b45309;--c-accent-bg: #fffbeb;--c-surface: #ffffff;--c-border: #e7e5e4;--c-th-bg: #f4f1ea;--sp-1: 8px;--sp-2: 16px;--sp-3: 24px;--sp-4: 32px;--sp-6: 48px;--sp-8: 64px;--sp-12: 96px;--radius: 12px;--font-sans: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--font-serif: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--w-prose: 42rem;--w-wide: 64rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.9;color:var(--c-text);background:var(--c-bg);-webkit-text-size-adjust:100%}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:700;line-height:1.4;letter-spacing:.01em;margin:0}p{margin:var(--sp-2) 0}a{color:var(--c-primary);text-underline-offset:3px;transition:color .2s ease}a:hover{color:var(--c-primary-dark)}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--c-surface);padding:var(--sp-1) var(--sp-2);z-index:100}.skip-link:focus{left:var(--sp-1)}.container{max-width:var(--w-wide);margin-inline:auto;padding-inline:var(--sp-2)}.site-header{border-bottom:1px solid var(--c-border);padding:var(--sp-2) 0}.site-header .container{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1) var(--sp-3)}.brand{font-family:var(--font-serif);font-size:1.4rem;font-weight:700;color:var(--c-text);text-decoration:none}.brand span{color:var(--c-primary)}.site-nav{display:flex;gap:var(--sp-2);margin-left:auto;font-size:.9rem}.site-nav a{color:var(--c-text-muted);text-decoration:none;padding:var(--sp-1) 0}.site-nav a:hover{color:var(--c-primary)}.site-footer{border-top:1px solid var(--c-border);margin-top:var(--sp-12);padding:var(--sp-4) 0 var(--sp-6);font-size:.85rem;color:var(--c-text-muted)}.site-footer nav{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-2)}.footer-pr{margin:var(--sp-2) 0}.hero{padding:var(--sp-8) 0 var(--sp-6)}.hero h1{font-size:clamp(1.7rem,5vw,2.4rem)}.hero .lede{max-width:var(--w-prose);color:var(--c-text-muted);margin-top:var(--sp-2)}.section{margin-top:var(--sp-8)}.section>h2{font-size:1.4rem;margin-bottom:var(--sp-3)}.card-grid{display:grid;gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.card{display:block;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--sp-3);color:inherit;text-decoration:none;transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:var(--c-primary);transform:translateY(-2px);color:inherit}.card h3{font-size:1.05rem;margin:var(--sp-1) 0}.card p{font-size:.9rem;color:var(--c-text-muted);margin:0}.chip{display:inline-block;font-size:.78rem;line-height:1;border:1px solid var(--c-border);color:var(--c-text-muted);padding:5px 10px;border-radius:999px;background:var(--c-surface)}.promise{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--sp-3) var(--sp-3)}.promise ul{margin:0;padding-left:1.2em}.promise li+li{margin-top:var(--sp-1)}.prose{max-width:var(--w-prose);margin-inline:auto}.article-header{max-width:var(--w-prose);margin:var(--sp-4) auto 0}.article-header h1{font-size:clamp(1.5rem,4.5vw,2rem);margin:var(--sp-2) 0}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);font-size:.85rem;color:var(--c-text-muted)}.pr-note{font-size:.9rem;color:var(--c-text);background:var(--c-th-bg);padding:var(--sp-1) var(--sp-2);margin:var(--sp-2) 0}.pr-note strong{color:var(--c-accent);margin-right:4px}.breadcrumb{font-size:.8rem;color:var(--c-text-muted)}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.breadcrumb li+li:before{content:"›";margin-right:4px;color:var(--c-border)}.prose h2{font-size:1.45rem;margin-top:var(--sp-8);padding-bottom:var(--sp-1);border-bottom:1px solid var(--c-border)}.prose h3{font-size:1.15rem;margin-top:var(--sp-4)}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:4px}.prose table{display:block;overflow-x:auto;border-collapse:collapse;font-size:.92rem;margin:var(--sp-3) 0}.prose th,.prose td{border:1px solid var(--c-border);padding:var(--sp-1) var(--sp-2);text-align:left;vertical-align:top;min-width:6em}.prose th{background:var(--c-th-bg);font-weight:700;white-space:nowrap}.prose blockquote{margin:var(--sp-3) 0;padding:var(--sp-1) var(--sp-3);border-left:3px solid var(--c-border);color:var(--c-text-muted)}.tldr{background:var(--c-surface);border:1px solid var(--c-border);border-left:4px solid var(--c-primary);padding:var(--sp-2) var(--sp-3);margin:var(--sp-4) 0}.tldr:before{content:"結論だけ先に";display:block;font-size:.8rem;font-weight:700;color:var(--c-primary);margin-bottom:var(--sp-1)}.owner-note{background:var(--c-accent-bg);border:1.5px dashed var(--c-accent);border-radius:var(--radius);padding:var(--sp-2) var(--sp-3);margin:var(--sp-4) 0}.owner-note:before{content:"編集部の検証メモ";display:block;font-size:.8rem;font-weight:700;color:var(--c-accent);margin-bottom:4px}.owner-note .q{font-size:.85rem;color:var(--c-text-muted);margin:0 0 4px}.owner-note p{margin:4px 0}.cta{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--sp-3);margin:var(--sp-4) 0}.cta .cta-title{font-weight:700;margin:0 0 var(--sp-1)}.cta .btn{display:inline-block;min-height:44px;padding:10px 24px;border-radius:var(--radius);color:#fff;font-weight:700;text-decoration:none;transition:background-color .2s ease}.cta .btn:hover{color:#fff}.btn-read{background:var(--c-primary)}.btn-read:hover{background:var(--c-primary-dark)}.btn-watch{background:var(--c-accent)}.btn-watch:hover{background:#92400e}.cta .note{font-size:.78rem;color:var(--c-text-muted);margin:var(--sp-1) 0 0}.faq details{border-bottom:1px solid var(--c-border)}.faq summary{cursor:pointer;font-weight:700;padding:var(--sp-2) 0}.faq details p{margin:0 0 var(--sp-2);color:var(--c-text-muted)}.related{max-width:var(--w-prose);margin:var(--sp-8) auto 0}.notice{background:var(--c-surface);border:1px dashed var(--c-border);border-radius:var(--radius);padding:var(--sp-3);color:var(--c-text-muted);font-size:.9rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation:none!important}}
