:root{--ink:#23222e;--muted:#6b6878;--line:#e4e1ea;--bg:#fbfaf7;--card:#ffffff;--accent:#2b2a4c;--gold:#a8741a;--good:#8a5a00;--good-bg:#fff4dc;--bad:#9b2c2c;--bad-bg:#fde8e8;--span:#3d5a80;--span-bg:#e6eef7;--sun:#c0392b;--sat:#2e5c9a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.75;font-size:16px}a{color:var(--accent)}.wrap{max-width:960px;margin:0 auto;padding:0 16px}.site-header{background:var(--accent);color:#fff}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding-top:10px;padding-bottom:10px}.site-header a{color:#fff;text-decoration:none}.logo{font-weight:700;font-size:1.15rem;letter-spacing:.05em}.site-header nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.92rem}.menu-btn{display:none}.site-footer{margin-top:48px;border-top:1px solid var(--line);padding:20px 0 32px;background:#f3f1ec}.site-footer nav{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.9rem}.small{font-size:.82rem;color:var(--muted)}h1{font-size:1.55rem;line-height:1.4;margin:20px 0 8px}h2{font-size:1.22rem;margin:32px 0 10px;padding-bottom:4px;border-bottom:2px solid var(--line)}h3{font-size:1.05rem;margin:20px 0 6px}.lead{margin-top:0}.crumbs,.lead{color:var(--muted)}.crumbs{font-size:.82rem;margin-top:12px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:12px 0}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:12px;gap:12px}.tag{display:inline-block;font-size:.72rem;line-height:1.5;padding:0 6px;border-radius:4px;margin:1px 2px 1px 0;white-space:nowrap}.tag.good{color:var(--good);background:var(--good-bg)}.tag.bad{color:var(--bad);background:var(--bad-bg)}.tag.span{color:var(--span);background:var(--span-bg)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;background:var(--card);font-size:.92rem}td,th{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}td.nowrap,th{white-space:nowrap}th.wrap-th{white-space:normal}td{min-width:4em}td.long{min-width:13em}.cal td,.cal th{white-space:normal;min-width:0}th{background:#f4f2f7;font-weight:600}.cal{table-layout:fixed;min-width:640px}.cal td{height:92px;font-size:.78rem;padding:4px}.cal .d{font-weight:700;font-size:1rem}.rokuyo-cal td{height:64px;font-size:.86rem}.cal .sun .d{color:var(--sun)}.cal .sat .d{color:var(--sat)}.cal .meta{color:var(--muted);display:block}.cal .empty{background:#f7f6f3}.cal .today{outline:2px solid var(--gold);outline-offset:-2px}.list{padding-left:1.2em}.list li{margin:4px 0}.sources{font-size:.88rem}.note{background:#f6f4ee;border-left:4px solid var(--gold);padding:10px 14px;margin:14px 0;font-size:.95rem}.pager{display:flex;justify-content:space-between;gap:12px;margin:20px 0}.ad{margin:24px 0;min-height:100px}.today-box{background:var(--card);border:2px solid var(--accent);border-radius:12px;padding:16px;margin:16px 0}.today-box .big{font-size:1.3rem;font-weight:700}.chips a{display:inline-block;margin:4px 6px 4px 0;padding:4px 10px;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:var(--card);font-size:.9rem}@media (max-width:600px){h1{font-size:1.3rem}.cal td{height:84px}}@media (max-width:720px){.site-header .wrap{justify-content:space-between;min-height:52px;gap:0 12px;padding-top:4px;padding-bottom:4px}.menu-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font:inherit;font-size:.92rem;font-weight:700;color:#fff;background:none;border:1px solid rgba(255,255,255,.5);border-radius:8px;cursor:pointer}.site-header nav{display:none;width:100%;flex-direction:column;gap:0;padding:4px 0}.site-header nav.is-open{display:flex}.site-header nav a{display:flex;align-items:center;min-height:44px;border-top:1px solid rgba(255,255,255,.25)}}