:root{color-scheme:light;--bg: #f6f2ea;--bg-soft: #efe9dd;--surface: #fffdf8;--text: #35302a;--muted: #7a7265;--line: #e3dccd;--line-strong: #cfc5b1;--accent: #7d4a2c;--accent-dark: #5e3720;--accent-weak: #f0e6d8;--cta: #31557a;--cta-dark: #264463;--warn: #8a6214;--warn-weak: #f6ecd3;--radius: 16px;--shadow: 0 2px 10px rgba(94, 55, 32, .06);--shadow-hover: 0 8px 22px rgba(94, 55, 32, .12);--font-mincho: "Shippori Mincho", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:BIZ UDPGothic,Hiragino Sans,Noto Sans JP,system-ui,sans-serif;line-height:2;font-size:17px}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-dark)}img{max-width:100%}.main-narrow{max-width:760px;margin:0 auto;padding:20px 20px 64px}.main-full{padding-bottom:0}.container{max-width:1000px;margin:0 auto;padding:0 20px}h1{font-size:clamp(1.4rem,3.4vw,1.85rem);line-height:1.7;font-weight:700;letter-spacing:.03em;margin:.4em 0}h2{font-size:1.2rem;line-height:1.6;margin:2.4em 0 .9em;padding-left:22px;position:relative}h2:before{content:"";position:absolute;left:0;top:.55em;width:12px;height:12px;border-radius:50%;background:var(--accent)}h3{font-size:1.04rem;margin:1.8em 0 .6em}.site-header{position:sticky;top:0;z-index:20;background:#f6f2eaf2;backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}.site-header-inner{max-width:1000px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:10px 28px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:1.12rem;font-weight:700;letter-spacing:.06em;color:var(--text);text-decoration:none;white-space:nowrap}.brand:hover{color:var(--accent-dark)}.brand-mark{width:26px;height:26px;flex:0 0 auto;border:2.5px solid var(--accent);border-radius:3px;background:var(--accent-weak);position:relative}.brand-mark:before,.brand-mark:after{content:"";position:absolute;bottom:3px;width:6px;background:var(--accent);border-radius:1px}.brand-mark:before{left:4px;height:13px}.brand-mark:after{right:4px;height:8px}.global-nav{display:flex;gap:18px;margin-left:auto;font-size:.9rem}.global-nav a{color:var(--text);text-decoration:none;padding:4px 2px;border-bottom:2px solid transparent;white-space:nowrap}.global-nav a:hover{border-bottom-color:var(--accent)}@media(max-width:860px){.site-header-inner{flex-wrap:wrap;padding:10px 16px 0}.global-nav{width:100%;margin:0;gap:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px}}.site-footer{background:var(--accent-dark);color:#e3d5c8;font-size:.82rem}.site-footer-inner{max-width:1000px;margin:0 auto;padding:36px 20px 44px}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px}.site-footer a{color:#f3e9de}.site-footer p{margin:14px 0 0;color:#b59b86}.pr{max-width:760px;margin:0 auto;padding:10px 20px 0;font-size:.78rem;color:var(--muted)}.lead{color:var(--muted);margin-top:0}.meta{color:var(--muted);font-size:.85rem}.section{padding:56px 0}.section.alt{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{display:flex;align-items:baseline;gap:14px;margin-bottom:26px}.section-head h2{margin:0;letter-spacing:.08em;white-space:nowrap}.section-head .rule{flex:1;height:1px;background:var(--line-strong)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:860px){.cards{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cards{grid-template-columns:1fr}}.post-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--text);box-shadow:var(--shadow);transition:box-shadow .15s,transform .15s}.post-card:hover{color:var(--text);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.post-card .thumb{aspect-ratio:16 / 9;overflow:hidden}.post-card .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}.post-card .cat{font-size:.72rem;letter-spacing:.12em;color:var(--accent);font-weight:700}.post-card h3{margin:0;font-size:.96rem;line-height:1.7;font-weight:700}.post-card .date{color:var(--muted);font-size:.78rem;margin-top:auto}.cat-tag{display:inline-block;font-size:.74rem;letter-spacing:.12em;color:var(--accent-dark);background:var(--accent-weak);border:1px solid var(--line-strong);padding:1px 12px;border-radius:999px;font-weight:700;text-decoration:none;margin-top:10px}.article-meta{display:flex;flex-wrap:wrap;gap:4px 18px;color:var(--muted);font-size:.82rem;border-bottom:1px solid var(--line-strong);padding-bottom:16px;margin-bottom:30px}.article-meta .chk{color:var(--accent);font-weight:700}.conclusion{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:20px 22px;margin:0 0 30px;box-shadow:var(--shadow)}.conclusion p{margin:0}.toc{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:16px 22px;margin:0 0 34px;font-size:.9rem;line-height:1.8}.toc .toc-title{margin:0 0 6px;font-weight:700;font-size:.8rem;letter-spacing:.14em;color:var(--muted)}.toc ul{margin:0;padding-left:1.2em}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.md p,.md ul,.md ol{margin:0 0 1.3em}.md .conclusion p,.md blockquote p,.md .toc ul{margin:0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line-strong);border-radius:12px;margin:16px 0 1.4em;background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:.88rem;line-height:1.7;background:var(--surface)}.table-wrap table{min-width:560px}th,td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}thead th{background:var(--accent-weak);color:var(--accent-dark);font-weight:700;font-size:.8rem;white-space:nowrap;border-bottom:2px solid var(--accent)}tbody tr:nth-child(2n){background:#fbf7ef}tbody tr:last-child td{border-bottom:none}td{font-variant-numeric:tabular-nums}section[data-footnotes]{border-top:1px solid var(--line-strong);margin-top:3em;padding-top:.6em;font-size:.84rem;color:var(--muted)}section[data-footnotes] h2{font-size:1rem;margin-top:.8em}sup a{text-decoration:none;font-weight:700}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px 16px;margin:18px 0;box-shadow:var(--shadow)}.card h3{margin-top:0}.ad-card .pr-badge{display:inline-block;font-size:.7rem;font-weight:700;color:#fff;background:#9b938a;padding:1px 10px;border-radius:999px;letter-spacing:.1em}.notice{background:var(--warn-weak);border:1px solid #e4d3a6;border-radius:var(--radius);padding:14px 18px;margin:16px 0;font-size:.92rem}.disclaimer{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px;margin-top:2.4em;font-size:.82rem;color:var(--muted)}.disclaimer p{margin:0}.point{background:var(--accent-weak);border:1px solid var(--line-strong);border-radius:var(--radius);padding:14px 18px;margin:16px 0;font-size:.95rem}.point ul{margin:6px 0 2px;padding-left:0;list-style:none}.point li{padding-left:1.5em;position:relative}.point li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700}.btn,.btn-cta,.btn-primary{display:block;max-width:440px;margin:20px auto;padding:13px 20px;border-radius:999px;text-align:center;text-decoration:none;font-weight:700;font-size:1rem;line-height:1.5}.btn-cta{background:var(--cta);color:#fff;box-shadow:0 2px 6px #26446347}.btn-cta:hover{background:var(--cta-dark);color:#fff}.btn{background:var(--surface);color:var(--accent);border:2px solid var(--accent)}.btn:hover{background:var(--accent-weak)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark);color:#fff}.tag{display:inline-block;font-size:.78rem;padding:1px 10px;border-radius:999px;background:var(--accent-weak);color:var(--accent-dark);font-weight:600}blockquote{margin:8px 0 1.3em;padding:10px 16px;border-left:3px solid var(--line-strong);background:var(--bg-soft);border-radius:0 10px 10px 0;color:var(--muted);font-size:.9rem}blockquote p{margin:0}dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:10px 0}dl.facts dt{color:var(--muted);font-size:.88rem}dl.facts dd{margin:0}.md img{max-width:100%}
