.page{--fs-xs:12.5px;--fs-sm:13.5px;--fs-base:15px;--fs-md:16px;--fs-lg:18px;font-size:var(--fs-base);--radius-card:10px;--radius-button:8px;--radius-input:8px;--radius-sm:6px}.page .alert,.page .btn-entry{border-radius:var(--radius-button)}.page .btn-sm{border-radius:var(--radius-sm)}.page .page-header{--fs-sm:12.5px;--fs-md:15px}.page .kv{font-size:var(--fs-base)}.page .price{flex:none;white-space:nowrap}.page .field>label{font-size:var(--fs-base);font-weight:500;color:var(--c-heading)}.page .badge-optional,.page .badge-required{font-size:11px}.icon{display:inline-block;flex:none;width:1.25em;height:1.25em}.header-back .icon{width:24px;height:24px}.map-link{display:inline-flex;align-items:center;gap:4px}.map-link .icon{width:1.1em;height:1.1em}.alert-with-icon{flex-direction:row;align-items:flex-start;gap:var(--sp-2)}.alert-with-icon>.icon{width:22px;height:22px;margin-top:1px}.alert-text{display:flex;flex-direction:column;gap:var(--sp-1)}.avatar-silhouette{width:100%;height:100%;fill:var(--c-border-strong)}.pending-mark{display:none}.page .btn{position:relative}.card.is-choice,.seg a,.time-btn,a.cal-cell{transition:background-color .15s ease-out,border-color .15s ease-out,box-shadow .15s ease-out}.card.is-choice:active,.time-btn:active,a.cal-cell:active{background:var(--c-bg-warm)}@media (hover:hover){.card.is-choice:hover,.time-btn:hover,a.cal-cell:hover{border-color:var(--c-border-strong)}}:is(.card,.time-btn,.cal-cell,.seg a):has(>.pending-mark[data-pending]){box-shadow:inset 0 0 0 2px var(--c-red)}.btn:has(>.pending-mark[data-pending]){cursor:progress}.btn:has(>.pending-mark[data-pending]):after{content:"";position:absolute;right:var(--sp-4);top:50%;width:16px;height:16px;margin-top:-8px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:pending-spin .8s linear infinite}@keyframes pending-spin{to{transform:rotate(1turn)}}.header-brand{display:flex;align-items:center;gap:var(--sp-2);flex:1 1;min-width:0;font-family:var(--f-heading);font-weight:600;color:var(--c-heading);font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-brand img{max-height:28px;width:auto}.header-page-title{flex:none;font-size:var(--fs-sm);color:var(--c-muted)}.header-back{flex:none;display:flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);margin-left:calc(var(--sp-3) * -1);color:var(--c-muted);text-decoration:none;font-size:20px;line-height:1}.stepbar{display:flex;flex-direction:column;gap:var(--sp-3)}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--sp-1);gap:var(--sp-1)}.steps li{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-xs);color:var(--c-muted)}.steps li:before{content:"";height:4px;border-radius:2px;background:var(--c-border)}.steps li.is-current:before,.steps li.is-done:before{background:var(--c-gold)}.steps li.is-current{color:var(--c-heading);font-weight:700}.step-title{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-xl)}.step-count{font-family:var(--f-body);font-size:var(--fs-xs);font-weight:700;color:var(--c-muted);letter-spacing:.04em}.entry-lead{margin-top:var(--sp-2)}.entry-lead,.entry-note{text-align:center}.merits-box{background:var(--c-line-bg);border-radius:var(--radius-card);padding:var(--sp-3);flex-direction:column}.merits-box,.merits-title{display:flex;gap:var(--sp-2)}.merits-title{align-items:center;font-size:var(--fs-base);font-weight:700;color:var(--c-heading)}.merits{flex-direction:column}.merits,.merits li{display:flex;gap:var(--sp-2)}.merits li{font-size:var(--fs-sm);line-height:1.6;color:var(--c-text)}.merits .num{flex:none;width:22px;height:22px;margin-top:1px;border-radius:50%;background:var(--c-line);color:#FFFFFF;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.merits em{font-style:normal;font-weight:700;color:var(--c-heading)}.seg{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;background:var(--c-bg-warm);padding:4px;border-radius:var(--radius-button)}.seg a{min-height:var(--tap-min);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:var(--fs-base);text-decoration:none;color:var(--c-muted)}.seg a.is-active{background:var(--c-surface);color:var(--c-heading);font-weight:700;box-shadow:var(--shadow-card)}a.card{text-decoration:none;color:inherit}.choice-mark{flex:none;width:22px;height:22px;border-radius:50%;border:2px solid var(--c-border-strong);background:var(--c-surface)}.menu-photo{width:100%;max-height:150px;object-fit:cover}.menu-photo,.photo-ph{border-radius:var(--radius-sm)}.photo-ph{height:96px;background:var(--c-bg-warm);border:1px dashed var(--c-border);display:flex;align-items:center;justify-content:center;color:var(--c-muted);font-size:var(--fs-xs)}.menu-desc{line-height:1.65}.camp,.menu-desc{font-size:var(--fs-sm);color:var(--c-text)}.camp{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.sub-heading{font-size:var(--fs-sm);color:var(--c-muted);margin-top:var(--sp-2)}.staff-card{display:flex;gap:var(--sp-3);align-items:flex-start}.staff-card>div{flex:1 1;min-width:0}.staff-name-row{justify-content:space-between;gap:var(--sp-2);min-height:28px}.avatar,.staff-name-row{display:flex;align-items:center}.avatar{flex:none;width:52px;height:52px;border-radius:50%;background:var(--c-bg-warm);border:1px solid var(--c-border);justify-content:center;overflow:hidden;font-size:10px;color:var(--c-muted)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.is-sm{width:32px;height:32px;font-size:9px}.staff-name{font-weight:700;color:var(--c-heading)}.staff-name small{font-weight:400;color:var(--c-muted);font-size:var(--fs-xs);margin-left:6px}.staff-say{font-size:var(--fs-sm);line-height:1.65;margin-top:2px}.legend,.staff-say{color:var(--c-muted)}.legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);font-size:var(--fs-xs)}.legend span{display:inline-flex;align-items:center;gap:2px}.legend b{font-size:14px}.cal-nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2)}.cal-nav .btn{min-height:var(--tap-min)}.cal-month{font-size:var(--fs-md)}.cal-month,.cal-range{text-align:center}.legend .legend-chip{padding:1px 4px;border:1px dashed var(--c-border-strong);border-radius:4px;line-height:1.2}.cal{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.cal-dow{text-align:center;font-size:var(--fs-xs);color:var(--c-muted);padding:2px 0}.cal-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:54px;padding:4px 2px;border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-surface);color:var(--c-text);font-size:14px;text-decoration:none;min-width:0;overflow:hidden}.cal-cell.is-empty{border-color:transparent;background:none}.cal-cell.is-disabled,.cal-cell.is-past{background:var(--c-bg-warm);border-color:transparent;color:var(--c-muted)}.cal-cell.is-selected{border:2px solid var(--c-red);padding:3px 1px}.cal-cell.is-today{box-shadow:inset 0 -2px 0 var(--c-gold)}.cal-num{font-weight:500}.cal-sym{font-size:14px;font-weight:700;line-height:1}.cal-sym.sym-plenty{color:var(--c-ok);font-size:15px}.cal-sym.sym-open{color:var(--c-ok)}.cal-sym.sym-few{color:var(--c-warn)}.cal-sym.sym-full{display:flex;flex-direction:column;align-items:center;color:var(--c-text);font-size:var(--fs-xs);font-weight:500;line-height:1.1}.cal-sym.sym-closed{color:var(--c-muted)}.legend .cal-sym.sym-full{display:inline-flex;flex-direction:row}.cal-cell.is-inquiry{background:var(--c-surface);border-style:dashed;border-color:var(--c-border-strong);color:var(--c-muted)}.cal-cell.is-inquiry.is-selected{border-style:solid;border-color:var(--c-red)}.inquiry-actions,.inquiry-notice{display:flex;flex-direction:column;gap:var(--sp-2)}.times{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));grid-gap:var(--sp-2);gap:var(--sp-2)}.time-btn{display:flex;align-items:center;justify-content:center;min-height:var(--tap-min);border:1px solid var(--c-border-strong);border-radius:var(--radius-button);background:var(--c-surface);color:var(--c-heading);font-size:var(--fs-md);font-weight:500;text-decoration:none}.time-btn.is-selected{border:2px solid var(--c-red);color:var(--c-red);font-weight:700}.fold{border:1px solid var(--c-border);border-radius:var(--radius-button)}.fold>summary{min-height:var(--tap-min);display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;font-size:var(--fs-base);color:var(--c-heading);list-style:none}.fold>summary::-webkit-details-marker{display:none}.fold>summary:after{content:"＋";color:var(--c-muted)}.fold[open]>summary:after{content:"−"}.fold-body{padding:0 12px 12px;display:flex;flex-direction:column;gap:var(--sp-3)}.confirm-summary{background:var(--c-bg-warm);border-radius:var(--radius-button);padding:10px 12px;font-size:var(--fs-sm);line-height:1.6}.confirm-summary b{color:var(--c-heading)}.email-recheck{font-size:var(--fs-sm);color:var(--c-muted);text-align:center;overflow-wrap:anywhere}.email-recheck b{color:var(--c-heading)}.linkbtn{background:none;border:0;padding:0;color:var(--c-red);text-decoration:underline;text-underline-offset:2px;cursor:pointer;font:inherit}.terms-dialog{border:0;border-radius:var(--radius-card);padding:0;width:min(92vw,420px);background:var(--c-surface);color:var(--c-text)}.terms-dialog::-webkit-backdrop{background:rgba(0,0,0,.45)}.terms-dialog::backdrop{background:rgba(0,0,0,.45)}.terms-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--c-border)}.terms-body{padding:var(--sp-4);max-height:60vh;overflow:auto;display:flex;flex-direction:column;gap:var(--sp-3);font-size:var(--fs-base);line-height:1.7}.terms-body h3{font-size:var(--fs-md)}.terms-body ul{display:flex;flex-direction:column;gap:var(--sp-1)}.terms-body li{padding-left:1em;text-indent:-1em}.terms-body li:before{content:"・"}.terms-text{white-space:pre-wrap;overflow-wrap:anywhere}.terms-foot{padding:var(--sp-3) var(--sp-4) var(--sp-4);border-top:1px solid var(--c-border)}.panel{border:1px solid var(--c-border);border-radius:var(--radius-card);padding:var(--sp-3);background:var(--c-bg-warm);display:flex;flex-direction:column;gap:var(--sp-3)}.panel>h2{font-size:var(--fs-md)}.code-input{letter-spacing:.4em;text-align:center;font-size:20px;font-weight:700}.form-flow{display:flex;flex-direction:column;flex:1 1;min-height:0}.form-flow:has(.input:focus,.textarea:focus)>.page-footer{position:static}