:root{--ink:#243045;--muted:#607087;--line:#d9e1ea;--paper:#f6f8fb;--accent:#335fa8;--accent2:#294c86;--ok:#176b55;--warn:#8a5a00}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.7}.container{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:44px 0 72px}.narrow{width:min(760px,calc(100% - 32px))}.hero,.form-header{margin-bottom:26px}.eyebrow{font-weight:800;color:var(--accent);letter-spacing:.08em;margin:0}h1{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.25;margin:.15em 0 .35em}h2{font-size:1.15rem;line-height:1.45}.notice{padding:14px 16px;border-left:5px solid var(--accent);background:#eaf1fb;border-radius:8px;margin:22px 0}.notice.warning{border-color:#c28a12;background:#fff7df}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.card{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;color:inherit;text-decoration:none;box-shadow:0 3px 12px rgba(35,48,69,.05)}.card:hover{border-color:var(--accent);transform:translateY(-1px)}.card p{color:var(--muted);margin-bottom:0}.badge{display:inline-block;font-size:.75rem;font-weight:800;border-radius:999px;padding:2px 9px}.badge.ok{color:var(--ok);background:#e3f4ee}.badge.pending{color:var(--warn);background:#fff0c9}.back{display:inline-block;margin-bottom:20px;color:var(--accent)}.event-info{margin:-4px 0 26px;overflow:hidden;border:1px solid #cbd8ea;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(35,48,69,.07)}.event-info h2{margin:0;padding:12px 18px;background:#e8f0fb;color:#294c86;border-bottom:1px solid #cbd8ea}.event-details{margin:0}.event-details>div{display:grid;grid-template-columns:7.5em 1fr;border-bottom:1px solid #e5eaf1}.event-details dt,.event-details dd{margin:0;padding:12px 18px}.event-details dt{font-weight:800;color:#40536e;background:#f8fafd}.event-details dd{font-weight:650}.event-notes{margin:0;padding:14px 22px 16px 40px;color:#52637a;background:#fbfcfe}.event-notes li+li{margin-top:4px}form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:clamp(18px,4vw,32px)}.field{border:0;padding:0;margin:0 0 24px}.field legend{font-weight:700;margin-bottom:7px}.required{font-size:.72rem;background:#b63b48;color:white;border-radius:4px;padding:2px 6px;margin-left:8px}input[type=text],input[type=email],input[type=number],input[type=date],input[type=time],select,textarea{width:100%;font:inherit;border:1px solid #aeb9c8;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid rgba(51,95,168,.18);border-color:var(--accent)}.choices{display:grid;gap:8px}.choices label,.consent{display:block;padding:7px 0}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button,.button-link{display:inline-block;border:0;border-radius:9px;background:var(--accent);color:#fff;font:inherit;font-weight:800;padding:12px 22px;text-decoration:none;cursor:pointer}button:hover,.button-link:hover{background:var(--accent2)}.confirm{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.confirm div{padding:14px 18px;border-bottom:1px solid var(--line)}.confirm div:last-child{border-bottom:0}.confirm dt{font-weight:800}.confirm dd{margin:4px 0 0;white-space:normal}.error-list{background:#fff0f1;border-left:5px solid #b63b48;padding:12px 16px;border-radius:8px}.result{text-align:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:44px 20px}@media(max-width:560px){.container{padding-top:26px}.grid{grid-template-columns:1fr}.event-details>div{grid-template-columns:1fr}.event-details dt{padding:10px 16px 2px;background:#fff}.event-details dd{padding:0 16px 11px}form{padding:18px}}
