:root{color-scheme:light;--accent:#204c40}*{box-sizing:border-box}body{margin:0;background:#f6f2e9;color:#263b34;font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.9}a{color:var(--accent);text-underline-offset:.22em}a:focus-visible,summary:focus-visible{outline:3px solid #b45432;outline-offset:4px}h1,h2,h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.55;overflow-wrap:anywhere}h1{font-size:clamp(1.9rem,4vw,3.2rem);letter-spacing:.025em}h2{font-size:1.5rem}img{max-width:100%;height:auto}.skip{position:absolute;left:12px;top:-100px;background:white;padding:8px}.skip:focus{top:8px}.blog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px max(5vw,20px);border-bottom:1px solid #d9d2c2;flex-wrap:wrap}.brand{font-family:serif;font-size:1.4rem;font-weight:bold;text-decoration:none}.blog-header nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.95rem}main{max-width:1120px;margin:auto;padding:32px 24px 64px}.blog-intro{max-width:800px;margin:24px 0 48px}.eyebrow{color:var(--accent);font-weight:650;letter-spacing:.1em}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:28px}.blog-card{max-width:620px;background:#fffcf5;border:1px solid #d9d2c2;border-radius:8px;overflow:hidden}.blog-card>a{display:block;text-decoration:none;color:inherit}.blog-card img{display:block;aspect-ratio:16/9;object-fit:cover}.blog-card a>div{padding:24px}.blog-card h2{margin:8px 0}.blog-card span{color:var(--accent);font-weight:bold}.blog-article{max-width:800px;margin:auto}.blog-article>header{margin:24px 0}.meta,.breadcrumbs,small{color:#5e6a62;font-size:.9rem}.breadcrumbs{max-width:800px;margin:auto}.cover{margin:24px 0}.cover img{border-radius:8px;display:block}.answer{background:#e7eee7;border-left:5px solid var(--accent);padding:22px 26px;margin:32px 0}.answer h2{font-size:1.2rem}.toc{padding:20px 28px;border:1px solid #d9d2c2}.toc p{font-weight:bold}.prose{font-size:1.06rem}.prose h2{margin-top:48px;border-bottom:1px solid #d9d2c2;padding-bottom:12px;scroll-margin-top:20px}.prose p{margin:1.5em 0}.prose figure{margin:28px 0;background:#fffcf5;padding:12px;border-radius:6px}.prose figcaption{font-size:.85rem;color:#59685d}.prose blockquote{margin:24px 0;padding:20px 24px;background:#fffcf5;border-left:3px solid #a5523a}.prose details{border-bottom:1px solid #d9d2c2;padding:18px 0}.prose summary{cursor:pointer;font-weight:bold}.lesson{background:#e7eee7;border-radius:8px;padding:24px;margin-top:40px}.sources{font-size:.9rem;margin-top:40px;overflow-wrap:anywhere}.author{display:flex;gap:24px;align-items:flex-start;border-top:1px solid #d9d2c2;padding-top:28px;margin-top:36px;font-size:.9rem}.author img{border-radius:50%;width:80px;height:80px;object-fit:cover;flex-shrink:0}.author h2{font-size:1.1rem;margin-top:0}footer{text-align:center;border-top:1px solid #d9d2c2;padding:32px 20px;font-size:.9rem}footer>a{display:inline-block;margin:8px 14px}@media(max-width:480px){main{padding:24px 18px 48px}.blog-header{padding:18px}.blog-header nav{gap:14px}.answer,.toc,.lesson{padding:18px}.author{gap:14px}.author img{width:60px;height:60px}.prose{font-size:1rem}}
.blog-filter{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:24px 0}.blog-filter label{display:grid;gap:6px}.blog-filter input,.blog-filter select,.blog-filter button{font:inherit;padding:8px 12px;max-width:100%;border:1px solid #b6bbaa;border-radius:4px;background:#fffcf5;color:#263b34}.blog-card[hidden]{display:none}
.footer-inner{max-width:1100px;margin:auto;text-align:left}.footer-brand>span{font-size:1.3rem;font-weight:bold}.footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px}.footer-columns nav{display:flex;flex-direction:column;gap:8px}.footer-columns h2{font-size:1rem}.footer-columns p{margin:0}
