.prefectures{background:var(--white)}.prefectures.section-padding{padding:0}.prefectures .container{max-width:1280px;margin:0 auto;padding:80px 32px}.prefectures .grid-2{grid-template-columns:1.2fr 1fr;gap:60px;display:grid}.prefectures .form-wrapper{z-index:999;margin-top:-200px}.prefectures-title{color:var(--primary);margin-bottom:12px;font-size:42px;font-weight:700;line-height:1.2}.prefectures-subtitle{color:var(--primary);margin-bottom:24px;font-size:1rem;font-weight:600;line-height:1.7}.prefectures-text{color:var(--text-light);margin-bottom:16px;font-size:1rem;line-height:1.7}.contact-row{align-items:center;gap:12px;display:flex}.contact-avatar{object-fit:cover;border-radius:50%;width:48px;height:48px}.contact-name{color:var(--primary);font-size:.875rem;font-weight:600}.contact-schedule{color:var(--text-light);font-size:.75rem}.contact-phone-btn{color:var(--primary);margin-top:6px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-block}.contact-phone-btn:hover{text-decoration:underline}.form-card{border-radius:var(--radius);background:var(--white);border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 20px 40px #00000014}.form-header{text-align:center;padding:40px 24px 0!important}.form-header h3{color:var(--primary);font-size:1.5rem;font-weight:700;line-height:1.4}.form-header .highlight{color:var(--accent)}.form-body{flex-direction:column;gap:5px;padding:44px;display:flex}.form-label{color:#33475b;margin-bottom:4px;font-size:.875rem;font-weight:500;display:block}.form-note{color:#999;margin-top:8px;margin-bottom:8px;font-size:11px}.form-note a{color:#4656b1;text-decoration:underline}.form-input,.form-textarea{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid #e5e7eb;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:.875rem;transition:border-color .2s}.form-textarea{resize:vertical}.form-input:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.form-input:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-submit{background:var(--primary-light);width:100%;color:var(--white);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:14px;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .3s ease-out,transform .2s ease-out}.btn-submit:hover{background:var(--primary-hover)}.btn-submit:active{transform:translateY(1px)}.form-required{color:var(--primary-light);align-items:center;gap:8px;font-size:.75rem;display:flex}.form-required svg{width:12px;height:12px}.form-message{border-radius:var(--radius-sm);align-items:flex-start;gap:12px;margin-top:20px;margin-bottom:20px;padding:16px;animation:.3s ease-out slideDown;display:flex}.form-message-success{color:#166534;background:#f0fdf4;border:1px solid #86efac}.form-message-error{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5}.form-message-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px}.form-message-icon svg{width:100%;height:100%}.form-message-text{flex:1;margin:0;font-size:.875rem;line-height:1.5}.form-message-close{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:opacity .2s;display:flex}.form-message-close:hover{opacity:1}.form-message-close svg{width:16px;height:16px}.btn-submit:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.form-checkbox-label{cursor:pointer;color:#33475b;align-items:flex-start;gap:10px;margin-top:4px;font-size:.875rem;line-height:1.5;display:flex}.form-checkbox{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin-top:2px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.prefectures .container{padding:0 24px 24px}.prefectures.section-padding{padding:40px 0}.prefectures .grid-2{grid-template-columns:1fr;gap:32px}.prefectures .form-wrapper{order:-1;position:static}.form-body{padding:25px}.prefectures-title{margin-top:20px;font-size:32px;line-height:1.2}}@media (max-width:640px){.prefectures .container{padding:32px 16px}.prefectures.section-padding{padding:32px 0}.form-card{border-radius:var(--radius-sm)}.prefectures-subtitle{line-height:1.4}.prefectures-title{font-size:24px}}
