:root{--brand: #9b1c31;--brand-dark: #7a1626;--text: #222;--muted: #666;--bg: #fff;--surface: #f7f5f5;--border: #e5e0e0;--school: #0064b5;--school-dark: #004f8f}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Meiryo,sans-serif;line-height:1.7}a{color:var(--brand)}.hero img{display:block;width:100%;height:auto;max-width:1440px;margin:0 auto}.container{max-width:720px;margin:0 auto;padding:32px 16px 48px}h1,h2{line-height:1.4}h1{font-size:1.6rem;margin:0 0 16px;text-align:center}h2{font-size:1.2rem;margin:0 0 12px}.hint.lead{text-align:center;margin:0 0 24px}.areas{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.area{--accent: var(--brand);--accent-dark: var(--brand-dark);padding:20px;border:1px solid var(--border);border-top:4px solid var(--accent);border-radius:12px;background:var(--surface)}.area--school{--accent: var(--school);--accent-dark: var(--school-dark);border-color:#d9e3ee;border-top-color:var(--accent);background:#f4f7fb}.area h2{color:var(--accent);text-align:center}.area a{color:var(--accent)}.login-button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:88px;padding:16px;border-radius:12px;background:var(--accent);color:#fff!important;text-decoration:none;transition:background .15s}.login-button:hover,.login-button:focus-visible{background:var(--accent-dark)}.login-button:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,#fff);outline-offset:2px}.login-label{font-size:1.25rem;font-weight:700}.login-note{font-size:.9rem;opacity:.9}.area-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 24px;list-style:none;padding:0;margin:16px 0 0}.icon-link{display:inline-flex;align-items:center;gap:6px}.icon{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hint{color:var(--muted);font-size:.9rem;margin:12px 0 0}.inquiry{margin-top:32px;text-align:center}.inquiry h2{font-size:1rem;margin-bottom:4px}.inquiry p{margin:0}.top-message{background:#fff6d6;color:#5c1a0f;border-bottom:1px solid #f0c36d;font-size:.95rem}.top-message p{display:flex;align-items:baseline;gap:8px;max-width:1200px;margin:0 auto;padding:10px 16px}.top-message p+p{border-top:1px solid #f0c36d}.top-message a{color:#5c1a0f;font-weight:700}.top-message-label{flex:none;padding:0 8px;border-radius:4px;background:#b42318;color:#fff;font-size:.8rem;font-weight:700}.site-header{background:var(--brand)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:12px 16px}.site-header a{color:#fff;text-decoration:none}.site-header-logo{display:inline-flex;align-items:center;font-size:1.4rem;font-weight:700;letter-spacing:.08em}.site-header-logo img{margin-right:10px;border-radius:6px}.site-header-logo span{font-size:.8rem;font-weight:400;letter-spacing:0}.site-header-login{padding:6px 14px;border:1px solid #fff;border-radius:999px;font-size:.9rem}.page h1{text-align:left}.news-section{padding-top:0}.news-section h2{text-align:center}.news-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--border)}.news-list li{border-bottom:1px solid var(--border)}.news-list a{display:block;padding:14px 4px;color:var(--text);text-decoration:none}.news-list a:hover .news-title{text-decoration:underline}.news-meta{display:flex;align-items:center;gap:10px;margin:0 0 4px;color:var(--muted);font-size:.85rem}.news-title{display:block}.news-type{padding:0 8px;border-radius:4px;font-size:.75rem;font-weight:700;line-height:1.8;color:#fff;background:#6b7280}.news-type--maintenance{background:#b45309}.news-type--outage{background:#b42318}.news-type--feature{background:var(--school)}.more-link,.back-link{margin:16px 0 0;text-align:right;font-size:.95rem}.article h1{font-size:1.4rem;margin-top:0}.prose{overflow-wrap:anywhere}.prose h2{font-size:1.15rem;margin:2em 0 .5em;padding-bottom:4px;border-bottom:1px solid var(--border)}.prose h3{font-size:1.05rem;margin:1.5em 0 .5em}.prose img{max-width:100%;height:auto}.prose a{overflow-wrap:anywhere}@media(min-width:1024px){body{background:var(--surface)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-template-rows:1fr auto auto auto auto 1fr;grid-template-areas:".    ." ".    title" ".    lead" "hero areas" ".    inquiry" ".    .";column-gap:56px;max-width:1280px;min-height:calc(100vh - 80px);margin:0 auto;padding:48px 32px}.layout .container{display:contents}.layout h1{grid-area:title}.layout .lead{grid-area:lead}.layout .areas{grid-area:areas;grid-template-columns:1fr}.layout .inquiry{grid-area:inquiry}.hero{grid-area:hero}.hero img{height:100%;object-fit:cover;border-radius:16px;box-shadow:0 8px 24px #0000001f}.area{padding:16px 20px;background:var(--bg)}.area--school{background:var(--bg)}.area h2{margin-bottom:8px}.login-button{min-height:76px;padding:12px 16px}.area-links{margin-top:12px}.site-footer{background:var(--bg)}.news-section{padding-top:16px}.page{background:var(--bg);border-radius:16px;margin-top:32px;margin-bottom:48px;padding:40px}}.site-footer{padding:24px 16px;text-align:center;color:var(--muted);font-size:.85rem;border-top:1px solid var(--border)}.site-footer p{margin:0}
