:root{color:#12213c;background:#f8fafb;font-family:system-ui,-apple-system,'Noto Sans JP',sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #e0e9ed}.top{max-width:980px;margin:auto;padding:19px 24px 16px;display:flex;align-items:baseline;gap:14px}.logo{font-family:ui-rounded,'Arial Rounded MT Bold',system-ui,sans-serif;font-size:29px;font-weight:900;letter-spacing:.055em;text-decoration:none;color:#162941}.logo span{color:#70bfd0;font-size:9px;margin-left:3px}.tag{font-size:12px;color:#718497;font-weight:700}nav{max-width:980px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);padding:0 20px;gap:7px}button,input,select{font:inherit}button{cursor:pointer}nav button,nav a{border:0;background:transparent;padding:14px 4px 12px;font-weight:800;color:#536a7e;border-bottom:4px solid transparent}nav .active[data-mode=week]{border-color:#61b7cf;color:#17677b;background:#edf8fb}nav .active[data-mode=performer]{border-color:#ddbb4c;color:#69520a;background:#fff9de}nav .active[data-mode=theater]{border-color:#85ba91;color:#285e37;background:#eef8ef}main{max-width:980px;min-height:70vh;margin:auto;padding:32px 24px 60px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:#7292a0}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}h1{font-size:clamp(27px,5vw,40px);letter-spacing:-.04em;margin:6px 0 8px}h2{font-size:20px;margin:0}.lead{color:#65778b;margin:0 0 25px;font-size:14px}.controls{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.controls button,.controls select,.controls input{border:1px solid #cfdce3;background:white;color:#1d344d;border-radius:9px;padding:10px 13px}.controls input{min-width:180px;flex:1}.controls button.selected{background:#e9f6f9;border-color:#7ac1d2;font-weight:700}.coursebar{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:12px;background:#eaf6fa;padding:14px 16px;margin:20px 0}.coursebar button{border:1px solid #b4d5dd;background:white;border-radius:7px;padding:7px 12px;color:#23536a}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card{background:white;border:1px solid #dbe6eb;border-radius:12px;overflow:hidden}.cardhead{background:#f0f9fb;padding:16px;border-bottom:1px solid #dfe9ed}.cardhead h2{font-size:22px}.meta{color:#5b7183;font-weight:700;font-size:13px;margin-top:4px}.rows{list-style:none;margin:0;padding:0}.rows li{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf1f3;min-height:49px;padding:8px 14px}.rows li:last-child{border-bottom:0}.num{width:29px;height:29px;border-radius:50%;background:#edf2f6;color:#445d73;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}.num.empty{background:transparent}.name{border:0;background:none;text-align:left;padding:3px 0;font-weight:700;color:#142a43}.self{background:#fff9df}.pill{font-size:11px;border-radius:20px;background:#edf2f5;padding:3px 7px;color:#5c7282}.listbutton{border:1px solid #dae6eb;border-radius:10px;background:white;text-align:left;padding:14px 16px;color:#19334b;font-weight:700}.gridnames{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.back{border:0;background:none;color:#39788c;font-weight:700;padding:0;margin-bottom:14px}.section{margin:26px 0 10px;color:#526e80;font-weight:800}.empty-state{padding:40px 20px;text-align:center;background:white;border-radius:12px;color:#6b7f8d}.note{font-size:12px;color:#728696}.single{grid-template-columns:1fr}.future .cardhead{background:#fffdf3}.archive .cardhead{background:#f4f6f7}footer{border-top:1px solid #e3ebee;padding:25px;text-align:center;font-weight:900;color:#6c8390}footer span,footer p{font-size:11px;font-weight:500;margin-left:8px}@media(max-width:600px){.top{padding:16px}.tag{font-size:11px}nav{padding:0 8px}main{padding:24px 15px 50px}.cards{grid-template-columns:1fr}.heading{display:block}.gridnames{grid-template-columns:repeat(2,minmax(0,1fr))}.coursebar{padding:12px}.coursebar button{padding:7px}.logo{font-size:25px}}

body[data-mode=week]{--tint:#f0f9fb;--paper:#f8fbfc}body[data-mode=performer]{--tint:#fff9df;--paper:#fffdf5}body[data-mode=theater]{--tint:#edf8ef;--paper:#f8fcf8}body{background:var(--paper,#f8fafb)}.cardhead{background:var(--tint,#f0f9fb)}.future .cardhead{background:var(--tint,#fffdf3)}

.logo{display:inline-flex;align-items:center}.logo img{display:block;width:170px;height:auto}

body[data-mode=performer] .cardhead,body[data-mode=performer] .future .cardhead,body[data-mode=performer] .rows li{background:#fff}
.kana-nav{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 24px}.kana-nav a{background:white;border:1px solid #e3dba9;border-radius:8px;color:#56491a;font-weight:800;text-decoration:none;padding:9px 12px}.kana-section{margin:24px 0 10px;font-size:18px;scroll-margin-top:20px}

.future-card{padding:16px}.future-title{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;font-size:21px;font-weight:800}.future-title .name{font-size:inherit}.future-extras{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}

nav a{display:block;text-align:center;text-decoration:none}.seo-list{line-height:1.9}.seo-list a{color:#225d70} .seo-list li{margin:4px 0}

a.name,.listbutton{text-decoration:none}

#analytics-consent{position:fixed;z-index:20;bottom:12px;left:50%;transform:translateX(-50%);width:min(94%,650px);background:#fff;border:1px solid #cbdde3;border-radius:12px;padding:16px;box-shadow:0 5px 24px #16294133;font-size:14px}#analytics-consent p{margin:0 0 12px}#analytics-consent div{display:flex;gap:8px;justify-content:flex-end}#analytics-consent button{border:1px solid #9abec6;border-radius:8px;padding:8px 14px;background:#eef8fa;color:#143849;font-weight:700}

.cardhead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cardhead-left{min-width:0}.cardhead-notes{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:55%;text-align:right}.cardhead-notes .pill{white-space:normal}@media(max-width:360px){.cardhead{gap:8px}.cardhead-notes{max-width:50%}}
