:root{--theme:#2a7f8e;--accent:#d97742;--text:#2b2b2b;--text-weak:#6b6b6b;--bg:#fdfcfa;--bg-soft:#f4f1ec;--border:#e3ded6;--max-width:760px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,BIZ UDPGothic,Meiryo,system-ui,sans-serif;color:var(--text);background:var(--bg);line-height:1.9;font-size:16px}a{color:var(--theme)}.container{max-width:var(--max-width);margin:0 auto;padding:0 18px}.site-header{background:var(--theme);padding:14px 0 10px}.site-header .site-title{color:#fff;text-decoration:none;font-size:1.35rem;font-weight:700;letter-spacing:.02em}.site-nav{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px 14px}.site-nav a{color:rgba(255,255,255,.92);text-decoration:none;font-size:.85rem}.site-nav a:hover{text-decoration:underline}.site-footer{margin-top:64px;padding:28px 0 40px;background:var(--bg-soft);border-top:1px solid var(--border);font-size:.85rem;color:var(--text-weak)}.site-footer nav{display:flex;flex-wrap:wrap;gap:4px 18px;margin-bottom:8px}.site-footer a{color:var(--text-weak)}.hero{padding:30px 0 6px}.hero h1{font-size:1.5rem;margin:0 0 6px;line-height:1.5}.hero p{margin:0;color:var(--text-weak);font-size:.95rem}.section-title{font-size:1.15rem;border-left:4px solid var(--accent);padding-left:10px;margin:40px 0 14px}.article-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px}.article-card{border:1px solid var(--border);border-radius:10px;background:#fff;padding:14px 16px}.article-card a{text-decoration:none;color:var(--text);font-weight:600;line-height:1.6;display:block}.article-card a:hover{color:var(--theme)}.article-card .meta{font-size:.78rem;color:var(--text-weak);margin-top:4px}.article-card .desc{font-size:.86rem;color:var(--text-weak);margin:6px 0 0}.more-link{display:inline-block;margin-top:10px;font-size:.9rem}.breadcrumb{font-size:.78rem;color:var(--text-weak);margin:18px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:2px 4px}.breadcrumb li+li:before{content:"›";margin-right:4px;color:var(--border)}.breadcrumb a{color:var(--text-weak)}.article-header h1{font-size:1.55rem;line-height:1.55;margin:14px 0 8px}.article-header .meta{font-size:.82rem;color:var(--text-weak);display:flex;flex-wrap:wrap;gap:2px 14px}.toc{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:14px 18px;margin:24px 0;font-size:.9rem}.toc-title{font-weight:700;margin:0 0 6px}.toc ol{margin:0;padding-left:20px}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.article-body h2{font-size:1.25rem;line-height:1.6;margin:44px 0 14px;padding:8px 12px;background:var(--bg-soft);border-left:4px solid var(--theme);border-radius:4px}.article-body h3{font-size:1.05rem;margin:30px 0 10px;padding-bottom:4px;border-bottom:2px solid var(--border)}.article-body p{margin:0 0 1.1em}.article-body ol,.article-body ul{padding-left:24px;margin:0 0 1.1em}.article-body li{margin-bottom:.3em}.article-body strong{background:linear-gradient(transparent 68%,color-mix(in srgb,var(--accent) 30%,transparent) 68%)}.article-body blockquote{margin:0 0 1.1em;padding:10px 16px;border-left:4px solid var(--accent);background:var(--bg-soft);color:var(--text-weak);border-radius:4px}.article-body table,.table-wrap{margin:0 0 1.1em}.article-body table{border-collapse:collapse;width:100%;font-size:.9rem;display:block;overflow-x:auto;white-space:nowrap}.article-body td,.article-body th{border:1px solid var(--border);padding:8px 12px;white-space:normal;min-width:6em}.article-body th{background:var(--bg-soft)}.faq{margin-top:48px}.faq h2{font-size:1.25rem;padding:8px 12px;background:var(--bg-soft);border-left:4px solid var(--theme);border-radius:4px}.faq dl{margin:0}.faq dt{font-weight:700;margin:18px 0 6px}.faq dt:before{content:"Q. ";color:var(--accent);font-weight:700}.faq dd{margin:0;padding-left:1.4em}.sources{margin-top:40px;padding:14px 18px;background:var(--bg-soft);border-radius:10px;font-size:.85rem}.sources h2{font-size:.95rem;margin:0 0 6px}.sources ul{margin:0;padding-left:20px}.related{margin-top:48px}.updated-note{font-size:.8rem;color:var(--text-weak)}@media (max-width:480px){body{font-size:15.5px}.article-header h1{font-size:1.35rem}}