:root{font-family:"Noto Sans JP",system-ui,sans-serif;color:#172033;background:#eef2f7}*{box-sizing:border-box}body{margin:0}header{height:58px;padding:0 20px;background:#14213d;color:#fff;display:flex;align-items:center;gap:16px}header span{margin-left:auto;font-size:.86rem;color:#cbd5e1}button{border:0;border-radius:10px;background:#2563eb;color:#fff;font-weight:700;padding:12px 20px;cursor:pointer}button:disabled{opacity:.5;cursor:wait}header button{padding:8px 12px;background:#334155}.secondary{display:block;margin:12px auto 0;background:#475569}#gate{min-height:calc(100vh - 58px);display:grid;place-items:center;padding:24px}.card{width:min(520px,100%);padding:42px;text-align:center;background:#fff;border-radius:22px;box-shadow:0 18px 60px #0f172a1f}.mark{display:inline-grid;place-items:center;width:82px;height:82px;border-radius:22px;background:#14213d;color:#fca311;font-weight:900;letter-spacing:.08em}.card h1{font-size:clamp(1.55rem,4vw,2.2rem);margin:24px 0 10px}.card p{line-height:1.8;color:#526078}.card a{color:#315ea8}form{margin:24px 0;text-align:left}label{display:block;font-weight:700;margin-bottom:8px}input{width:100%;padding:13px;border:1px solid #cbd5e1;border-radius:10px;font-size:1rem;margin-bottom:12px}form button{width:100%}#books{display:block;width:100%;height:calc(100vh - 58px);border:0;background:#fff}#books[hidden]{display:none}@media(max-width:640px){header{padding:0 12px}header span{display:none}.card{padding:28px 20px}}
header .menu-link{color:#cbd5e1;text-decoration:none;font-size:.85rem;white-space:nowrap}header .menu-link:focus-visible{outline:2px solid #60a5fa;outline-offset:4px}@media(max-width:640px){header,#cloudbar{flex-wrap:wrap;height:auto;min-height:52px;padding:10px 12px;gap:8px}header strong{flex-basis:100%}header .menu-link{font-size:.8rem}}
[hidden]{display:none!important}
