body{margin:0;font-family:system-ui,"Hiragino Sans","Noto Sans JP",sans-serif;line-height:1.8;color:#222;background:#fafafa}
main{max-width:820px;margin:0 auto;padding:1rem 1.2rem 3rem;background:#fff}
.site-header{background:#1d2b3a;color:#fff;padding:.8rem 1.2rem}
.site-header a{color:#fff;text-decoration:none}
.logo{font-weight:700;font-size:1.4rem}.logo span{font-size:.8rem;margin-left:.6rem;opacity:.8}
.site-header nav ul{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.9rem}
.pr-box{background:#fff8e1;border:1px solid #f0c36d;padding:.6rem .8rem;font-size:.85rem}
.meta{display:grid;grid-template-columns:auto 1fr;gap:.2rem .8rem;font-size:.85rem;background:#f3f6f9;padding:.6rem .8rem}
.meta dt{font-weight:700}.meta dd{margin:0}
table{border-collapse:collapse;width:100%;font-size:.9rem;display:block;overflow-x:auto}
th,td{border:1px solid #ccc;padding:.3rem .5rem}
pre{background:#1e1e1e;color:#eee;padding:.8rem;overflow-x:auto;font-size:.85rem}
code{font-family:ui-monospace,Consolas,monospace}
.ad{border:1px solid #ccc;padding:.6rem;margin:.8rem 0;font-size:.95rem}.ad-label{margin:0 0 .3rem;color:#666;font-size:.8rem}
.site-footer{text-align:center;font-size:.85rem;padding:1.5rem;color:#555}
.site-footer ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1rem}
form.contact label{display:block;margin-top:.8rem}form.contact input,form.contact textarea{width:100%;padding:.4rem}
