:root{--cadet:#5f9ea0;--cadet-dark:#4a7e80;--cadet-light:#e8f1f1;--ink:#1f2d2d;--muted:#6b7c7c;--line:#dce4e4;--bg:#fff;--bg-soft:#f7fafa;--ok:#5f9ea0;--warn:#c9821b;--full:#b0b7b7;--radius:8px;--radius-sm:8px;--shadow:0 1px 3px #1f2d2d0f, 0 4px 16px #1f2d2d0d}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,a,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.shell{background:var(--bg);min-height:100vh}.siteHeader{z-index:100;background:var(--cadet);color:#fff;position:sticky;top:0;box-shadow:inset 0 1px #ffffff26,0 2px 8px #1f2d2d1f}.brand{align-items:center;gap:10px;max-width:560px;min-height:50px;margin:0 auto;padding:10px 16px;display:flex}.brand img{object-fit:contain;flex:none;width:auto;height:30px}.brand span{gap:2px;display:grid}.brand .name-ja{letter-spacing:.02em;color:#fff;font-size:15px;font-weight:700;line-height:1.2}.brand .name-en{opacity:.85;letter-spacing:.04em;color:#fff;font-size:9.5px;font-weight:400;line-height:1.2}.progressWrap{max-width:560px;margin:0 auto;padding:0 16px 10px}.progressLabel{color:#ffffffdb;justify-content:space-between;align-items:baseline;gap:16px;font-size:13px;display:flex}.progressLabel b{color:#fff;font-size:14px}.progress{border-radius:var(--radius-sm);background:#ffffff40;height:4px;margin-top:9px;overflow:hidden}.progress span{border-radius:var(--radius-sm);background:#fff;height:100%;transition:width .18s;display:block}.panel{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);max-width:560px;box-shadow:var(--shadow);margin:28px auto;padding:20px}.narrow{max-width:580px}.panel h2{color:var(--ink);align-items:center;gap:10px;margin:0 0 18px;font-size:20px;line-height:1.35;display:flex}.panel h2 svg{width:22px;height:22px;color:var(--cadet);stroke-width:1.8px;flex:none}.menus{gap:12px;display:grid}.menu{text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:var(--radius-sm);width:100%;min-height:72px;color:var(--ink);align-items:center;gap:14px;padding:16px 18px;display:flex}.menu svg{box-sizing:content-box;width:24px;height:24px;color:var(--cadet);stroke-width:1.8px;background:var(--cadet-light);border:1px solid #5f9ea047;border-radius:999px;flex:none;padding:10px}.menu:after{content:"›";color:var(--line);margin-left:auto;font-size:28px;line-height:1}.menu span{gap:4px;display:grid}.menu b{font-size:17px;line-height:1.25}.menu small{color:var(--muted);line-height:1.5}.menu.priority{order:-1}.menu.selected{border-color:var(--cadet);background:var(--cadet-light)}.fastestCard{border-radius:var(--radius);background:var(--cadet-light);border:1px solid #5f9ea061;gap:8px;margin-bottom:18px;padding:16px;display:grid}.eyebrow{color:var(--cadet-dark);font-size:12px;font-weight:800}.fastestCard strong{font-size:22px;line-height:1.3}.fastestCard em{color:var(--cadet-dark);font-style:normal}.fastestCard p{color:var(--muted);margin:0;font-weight:650}.fastApply{width:100%;min-height:52px}.datePicker{scroll-snap-type:x proximity;gap:10px;padding:2px 0 10px;display:flex;overflow-x:auto}.dateChip{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-width:76px;min-height:70px;color:var(--ink);scroll-snap-align:start;flex:none;justify-items:center;gap:3px;padding:9px 10px;display:grid}.dateChip span{color:var(--muted);font-size:12px;font-weight:700}.dateChip b{font-size:17px;line-height:1.15}.dateChip i{color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 6px;font-size:11px;font-style:normal;font-weight:900;display:inline-flex}.dateChip.open i{background:var(--cadet)}.dateChip.few i{background:var(--warn)}.dateChip.full i{background:var(--full)}.dateChip.closed{background:var(--bg-soft);color:var(--full)}.dateChip.closed i{background:var(--full);min-width:42px}.dateChip.selected{border-color:var(--cadet);background:var(--cadet);color:#fff}.dateChip.selected span,.dateChip.selected b{color:#fff}.dateChip.selected i{background:#ffffff47}.dateNote{color:var(--cadet-dark);margin:2px 0 8px;font-size:13px;font-weight:700}.slotDisclaimer{color:var(--muted);margin:0 0 16px;font-size:12.5px;line-height:1.6}.slotGridWrap{animation:.16s fadeIn}.slotGridWrap h3{margin:0 0 12px;font-size:16px}.slotGroup{margin-top:12px}.slotGroup h4{color:var(--muted);margin:0 0 8px;font-size:13px}.timeGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.closedDay{border-radius:var(--radius-sm);background:var(--bg-soft);color:var(--muted);margin:0;padding:18px;font-weight:700}.slot{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:48px;color:var(--ink);justify-content:space-between;align-items:center;gap:8px;margin:0;padding:10px 12px;display:flex}.slot.open small{color:var(--ok)}.slot.few small{color:var(--warn)}.slot.full{color:var(--full);background:var(--bg-soft)}.slot.picked{border-color:var(--cadet);background:var(--cadet);color:#fff}.slot.picked small{color:#fff}.slot.cutoff small{color:var(--full)}.selectedSlot,.confirm{border-radius:var(--radius-sm);background:var(--cadet-light);min-height:56px;color:var(--cadet-dark);align-items:center;gap:10px;margin-top:16px;padding:14px 16px;font-weight:700;display:flex}.segmented{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);grid-template-columns:repeat(2,120px);gap:4px;width:fit-content;margin-bottom:18px;padding:4px;display:grid}.segmented button{border-radius:var(--radius-sm);min-height:44px;color:var(--muted);background:0 0;border:0;font-weight:700}.segmented .on{background:var(--bg);color:var(--cadet-dark);box-shadow:var(--shadow)}.form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{color:var(--ink);gap:7px;font-weight:700;display:grid}.field span{color:var(--muted);font-size:13px}.field input,.field textarea,textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:48px;color:var(--ink);padding:12px 13px}.field textarea,textarea{resize:vertical;min-height:96px}.field input:focus,.field textarea:focus,textarea:focus{border-color:var(--cadet);box-shadow:0 0 0 3px var(--cadet-light);border-width:2px;outline:0}.wide{grid-column:1/-1}.fieldError{color:var(--cadet-dark);font-weight:650;line-height:1.4}.notice{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);color:var(--ink);margin:18px 0 0;padding:14px 16px;line-height:1.7}.navActions,.actions{grid-template-columns:minmax(120px,180px) 1fr;gap:12px;margin-top:18px;display:grid}.navActions.single{grid-template-columns:minmax(120px,180px)}.actions{grid-template-columns:1fr 1fr}.primary,.secondary{border-radius:var(--radius-sm);border:1px solid var(--cadet);justify-content:center;align-items:center;min-height:54px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.primary{background:var(--cadet);color:#fff}.primary:hover{background:var(--cadet-dark)}.secondary{background:var(--bg);color:var(--cadet-dark)}.primary:disabled,.secondary:disabled{border-color:var(--full);background:var(--full);color:#fff}.linkButton{width:100%}.err{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cadet-light);max-width:560px;color:var(--cadet-dark);margin:16px auto 0;padding:12px 16px;font-weight:700}.summary{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);gap:8px;padding:16px;display:grid}.done{min-height:56px;color:var(--cadet-dark);align-items:center;gap:9px;margin-top:16px;font-weight:800;display:flex}.donePanel{text-align:center}.doneLogo{object-fit:contain;width:24px;height:24px;margin:0 auto 12px;display:block}.big{width:64px;height:64px;color:var(--cadet);stroke-width:1.7px}.checkDraw{stroke-dasharray:120;stroke-dashoffset:120px;animation:.65s forwards drawCheck}.muted{color:var(--muted)}.code{border:1px solid var(--line);border-radius:var(--radius);background:var(--cadet-light);max-width:420px;color:var(--cadet-dark);letter-spacing:.08em;margin:10px auto 16px;padding:18px;font-size:40px;font-weight:850;line-height:1.2}.confirmList{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;display:grid;overflow:hidden}.confirmList div{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:16px;padding:14px 16px;display:grid}.confirmList div:last-child{border-bottom:0}.confirmList dt{color:var(--muted);font-weight:700}.confirmList dd{color:var(--ink);overflow-wrap:anywhere;margin:0}@media (width<=760px){.brand{padding:11px 14px}.brand .name-ja{font-size:16px}.brand .name-en{font-size:11px}.progressWrap{padding:0 14px 10px}.panel{margin:24px 10px;padding:16px}.form,.navActions,.actions{grid-template-columns:1fr}.segmented{grid-template-columns:repeat(2,1fr);width:100%}.confirmList div{grid-template-columns:1fr;gap:5px}.code{font-size:32px}}@keyframes fadeIn{0%{opacity:.45;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes drawCheck{to{stroke-dashoffset:0}}
