/* キッズパーク｜お問い合わせフォーム：デモ専用 */
.form-hero { background: radial-gradient(circle at 95% 15%,#eaf8ff 0 12%,transparent 12.5%),linear-gradient(115deg,#f2faff,#fffafc); padding: 28px 0 65px; }
.breadcrumbs { display:flex;gap:10px;align-items:center;font-size:12px;color:#57718b; }
.breadcrumbs a { color:inherit;text-decoration:none; }
.breadcrumbs a span { color:#f35091;font-size:18px; }
.form-kicker { color:#ef4c88;letter-spacing:.14em;font-size:12px;font-weight:800; }
.form-hero .form-kicker { margin:38px 0 10px; }
.form-hero h1 { color:#153d6c;font-size:clamp(30px,4vw,48px);margin:0 0 14px; }
.form-hero p:last-child { color:#375b7b;line-height:1.8; }
.form-layout { max-width:960px;padding-top:60px;padding-bottom:85px; }
.form-intro { text-align:center;margin-bottom:40px; }
.form-intro h2 { color:#163f6e;font-size:clamp(25px,3.2vw,35px);margin:8px 0 18px; }
.form-intro p { line-height:1.9; }
.demo-notice { display:inline-block;background:#fff4e5;border:1px solid #f0c98a;border-radius:12px;padding:13px 18px;color:#775326;font-size:14px;line-height:1.75;margin:15px 0; }
.visit-form { display:grid;gap:28px; }
.form-group { background:#fff;border:1px solid #e7eff6;border-radius:22px;box-shadow:0 6px 25px rgba(26,69,99,.04);overflow:hidden;padding:30px 32px 34px; }
.form-group-title { display:flex;align-items:center;gap:15px;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid #e8eff5; }
.form-group-number { background:#fce3ed;color:#db4c84;width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;font-weight:800; }
.form-group:nth-of-type(3n+2) .form-group-number { background:#e5f5ff;color:#2a8bd0; }
.form-group:nth-of-type(3n+3) .form-group-number { background:#eaf7eb;color:#398d62; }
.form-group-title h2 { color:#164875;font-size:clamp(19px,2.4vw,24px);margin:0;line-height:1.45; }
.form-group-title p { margin:5px 0 0;color:#587187;font-size:13px; }
.form-group-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px; }
.form-field { min-width:0;margin:0;padding:0;border:0; }
.form-field.full,.form-field:has(.option-list) { grid-column:1/-1; }
.form-field>label,.form-field legend { display:block;color:#214969;font-weight:750;margin-bottom:11px;font-size:15px; }
.form-badge { display:inline-block;font-size:11px;margin-left:8px;padding:2px 7px;border-radius:6px;vertical-align:middle;font-weight:750; }
.form-badge.required { color:#c93068;background:#ffe7ee; }
.form-badge.optional { color:#577484;background:#edf4f8; }
.form-field input:not([type=radio]):not([type=checkbox]),.form-field textarea { width:100%;border:1px solid #cbdbe6;border-radius:10px;padding:13px 14px;font:inherit;min-height:48px;background:#fff;color:#16354e;box-sizing:border-box; }
.form-field textarea { resize:vertical; }
.form-field input:focus,.form-field textarea:focus,.form-field input[type=checkbox]:focus-visible,.form-field input[type=radio]:focus-visible { outline:2px solid #69b9e8;outline-offset:2px; }
.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true] {border-color:#e04174;background:#fff7f9;}
.form-field small {display:block;font-size:12px;color:#677f8b;line-height:1.6;margin-top:8px;}
.option-list {display:flex;flex-wrap:wrap;gap:10px;}
.option-chip {display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 14px;border-radius:12px;background:#f8fbfd;border:1px solid #dfeaf1;cursor:pointer;font-weight:500;font-size:14px;}
.option-chip:has(input:checked) {border-color:#ed78a0;background:#fff0f6;color:#913257;}
.option-chip input {width:17px;height:17px;accent-color:#f04d88;}
.form-last { background:#fff2f7;border-radius:22px;padding:30px 34px;text-align:center; }
.form-last h2 {font-size:22px;color:#164675;margin:0 0 15px;}
.form-last p {line-height:1.8;font-size:14px;}
.confirm-check {display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0;font-size:14px;}
.confirm-check input {width:19px;height:19px;accent-color:#ef4e89;}
.form-action {margin:24px 0 10px;}
.form-action button {min-height:50px;cursor:pointer;}
#form-message {font-weight:700;color:#b6315c;}
.form-demo-link {font-size:13px;}
.form-demo-link a {color:#164d82;text-decoration:underline;}
.thanks-main {min-height:65vh;padding-top:85px;padding-bottom:95px;display:grid;place-items:center;}
.thanks-panel {max-width:650px;margin:auto;text-align:center;background:#f7fbfe;padding:55px 34px;border-radius:25px;}
.thanks-check {width:65px;height:65px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#deefd7;color:#398a58;font-size:37px;}
.thanks-panel h1 {color:#174679;font-size:32px;}
.thanks-lead {line-height:1.9;}
.thanks-panel .button {display:inline-flex;margin:20px 0;}
@media(max-width:767px){
 .form-hero {padding:20px 0 38px;}
 .form-hero .form-kicker {margin-top:26px;}
 .form-layout {padding-top:42px;padding-bottom:65px;}
 .form-group {padding:22px 16px;border-radius:16px;}
 .form-group-title {gap:10px;}
 .form-group-number {width:38px;height:38px;flex-basis:38px;}
 .form-group-grid {grid-template-columns:minmax(0,1fr);gap:20px;}
 .form-field {grid-column:1/-1;}
 .form-field>label,.form-field legend {font-size:15px;}
 .option-chip {font-size:14px;}
 .form-last {padding:25px 16px;}
 .confirm-check {align-items:flex-start;text-align:left;}
 .thanks-main {padding-top:42px;padding-bottom:55px;}
 .thanks-panel {padding:32px 18px;}
 .thanks-panel h1 {font-size:26px;}
}