/* 神楽AYA：予約フォーム・押し込み式選択 2026-11-12 */
@media(min-width:941px){.header .navigation{gap:clamp(8px,.9vw,14px)!important}}
#personalBookingForm{font-size:16px!important;line-height:1.65}
#personalBookingForm .pkr-form-section h3{font-size:clamp(19px,2vw,22px)!important;font-weight:750!important;line-height:1.5!important}
#personalBookingForm .pkr-field>span,#personalBookingForm .kqa-area-intro,#personalBookingForm fieldset legend{font-size:16px!important;font-weight:700!important;line-height:1.5!important}
#personalBookingForm input[type=text],#personalBookingForm input[type=email],#personalBookingForm select,#personalBookingForm textarea{font-size:17px!important;font-weight:500!important;line-height:1.5!important}
#personalBookingForm .pkr-section-copy,#personalBookingForm .pkr-field-note,#personalBookingForm .pkr-time-rule,#personalBookingForm .kqa-channel-note{font-size:15px!important;line-height:1.8!important}
#personalBookingForm .pkr-date-label,#personalBookingForm .pkr-choice-label strong{font-size:17px!important;font-weight:700!important}
#personalBookingForm .pkr-price-box>span{font-size:16px!important;font-weight:700!important}
#personalBookingForm .pkr-price-box strong{font-size:clamp(23px,4.2vw,29px)!important;font-weight:800!important;line-height:1.55!important;overflow-wrap:anywhere}
#personalBookingForm #pkrMenu,#personalBookingForm #pkrPlan{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;opacity:0!important;pointer-events:none!important;padding:0!important}
#personalBookingForm .pkr-field:has(#pkrMenu),#personalBookingForm .pkr-field:has(#pkrPlan){position:relative!important;min-height:0!important;margin-bottom:8px!important}
#personalBookingForm .kqa-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;min-width:0;margin:7px 0 14px}
#personalBookingForm .kqa-press-card{font:inherit;display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:68px;padding:12px 14px;border:1.5px solid #e5cbd4;border-radius:15px;background:#fff;color:#654854;box-shadow:0 4px 10px #82465d17;text-align:left;cursor:pointer;transition:transform .13s,box-shadow .13s}
#personalBookingForm .kqa-press-card[aria-pressed=true]{transform:translateY(2px);background:linear-gradient(140deg,#fbe5ed,#fff4f7);border:2px solid #b45f83;box-shadow:inset 0 3px 9px #7b345133,0 1px 3px #7b34511a;padding:11.5px 13.5px}
#personalBookingForm .kqa-press-card:focus-visible{outline:3px solid #a7567a;outline-offset:3px}
#personalBookingForm .kqa-press-dot{width:24px;height:24px;border:2px solid #d8bdc8;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:transparent}
#personalBookingForm .kqa-press-card[aria-pressed=true] .kqa-press-dot{background:#a64d74;border-color:#a64d74;color:#fff}
#personalBookingForm .kqa-press-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
#personalBookingForm .kqa-press-title{font-size:16px!important;font-weight:700!important;line-height:1.5!important;overflow-wrap:anywhere}
#personalBookingForm .kqa-press-sub{font-size:13px!important;font-weight:500!important;line-height:1.5!important;color:#816c76;overflow-wrap:anywhere}
#personalBookingForm .kqa-press-price{font-size:18px!important;font-weight:800!important;color:#a14c70;white-space:nowrap}
#personalBookingForm .kqa-menu-more{margin:10px 0 12px;padding:0 2px}
#personalBookingForm .kqa-menu-more>summary{font-size:15px;font-weight:700;color:#915a73;cursor:pointer;padding:10px 0}
#personalBookingForm .kqa-venue-step .kqa-area-choices{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
#personalBookingForm .kqa-venue-step .kqa-area-intro{grid-column:1/-1;margin:0!important}
#personalBookingForm .kqa-venue-step .kqa-area-card{display:flex!important;align-items:center!important;min-width:0!important;min-height:62px!important;margin:0!important;border:1.5px solid #e5cbd4!important;border-radius:14px!important;background:#fff!important;box-shadow:0 3px 8px #82465d12!important;cursor:pointer!important}
#personalBookingForm .kqa-venue-step .kqa-area-card:has(input:checked){transform:translateY(2px)!important;background:#fbe7ee!important;border:2px solid #b45f83!important;box-shadow:inset 0 3px 9px #7b34512b!important}
#personalBookingForm .kqa-venue-step .kqa-area-card label,#personalBookingForm .kqa-venue-step .kqa-area-card label strong{font-size:16px!important;font-weight:700!important;line-height:1.5!important;cursor:pointer!important}
#personalBookingForm .kqa-venue-step .kqa-area-card input[type=radio]{accent-color:#a64d74;width:19px;height:19px}
#personalBookingForm .kqa-payment-fieldset,#personalBookingForm .kqa-discount-fieldset{border:0!important;margin:0!important;padding:0!important;min-width:0}
#personalBookingForm .kqa-radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#personalBookingForm .kqa-radio-card{display:flex;align-items:center;gap:8px;min-height:76px;padding:11px 12px;border:1.5px solid #e5cbd4;border-radius:14px;background:#fff;box-shadow:0 3px 9px #82465d14;cursor:pointer}
#personalBookingForm .kqa-radio-card:has(input:checked){transform:translateY(2px);background:#fbe7ee;border:2px solid #b45f83;box-shadow:inset 0 3px 9px #7b34512e;padding:10.5px 11.5px}
#personalBookingForm .kqa-radio-card:has(input:disabled){opacity:.45;cursor:not-allowed}
#personalBookingForm .kqa-radio-card:has(input:focus-visible){outline:3px solid #a7567a;outline-offset:3px}
#personalBookingForm .kqa-radio-card input{width:21px;height:21px;flex:0 0 auto;accent-color:#a64d74;margin:0}
#personalBookingForm .kqa-radio-card-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
#personalBookingForm .kqa-radio-card-copy strong{font-size:16px!important;font-weight:700!important;line-height:1.45!important;overflow-wrap:anywhere}
#personalBookingForm .kqa-radio-card-copy small{font-size:13px!important;font-weight:500!important;line-height:1.55!important;color:#826d75}
#personalBookingForm .kqa-choice-note{font-size:14px!important;line-height:1.7!important;color:#826672;margin:10px 0 0}
#personalBookingForm #pkrReviewWrap{display:none!important}
#personalBookingForm .kqa-payment-step,#personalBookingForm .pkr-final-review{border-top:1px solid #f0dfe3}
@media(max-width:760px){#personalBookingForm .kqa-choice-grid{grid-template-columns:minmax(0,1fr)!important;gap:9px}#personalBookingForm .kqa-radio-card{padding:10px;gap:7px}#personalBookingForm .kqa-radio-card-copy strong{font-size:15px!important}#personalBookingForm .kqa-radio-card-copy small{font-size:12.5px!important}}
@media(max-width:365px){#personalBookingForm .kqa-radio-grid,#personalBookingForm .kqa-venue-step .kqa-area-choices{grid-template-columns:minmax(0,1fr)!important}}
@media(prefers-reduced-motion:reduce){#personalBookingForm .kqa-press-card{transition:none!important}}

/* Full-width menu cards within the existing form grid */
#personalBookingForm .pkr-form-grid:has(#pkrMenu){display:block!important;width:100%!important;min-width:0!important}
#personalBookingForm .pkr-course-row:has(#pkrPlan){display:block!important;width:100%!important;min-width:0!important}
#personalBookingForm #kqaMenuCards,#personalBookingForm #kqaMenuExtra,#personalBookingForm #kqaPlanCards{width:100%!important;min-width:0!important;grid-column:1/-1!important}
#kqm-cat-training{scroll-margin-top:110px}
@media(min-width:741px) and (max-width:1080px){.header .menu-btn{display:block!important}.header .navigation{display:none!important;position:absolute!important;top:85px!important;left:0!important;right:0!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:18px 25px 25px!important;background:#fffbf8!important;box-shadow:0 12px 25px #99746622!important;white-space:normal!important}.header .navigation.open{display:flex!important}.header .navigation a{padding:12px 5px!important;border-bottom:1px solid #eee3d6!important;font-size:14px!important}}
