/* =========================================================
   お問い合わせフォーム
   ========================================================= */

/* 電話・FAXでの受付（大きく表示） */
.contact-tel-box{ display:flex; gap:1.2rem 2.5rem; flex-wrap:wrap; margin-bottom:1.8rem; }
.contact-tel-item{ min-width:230px; text-align:left; }
.contact-tel-label{ display:block; font-size:1.35rem; font-weight:700; letter-spacing:.18em; color:var(--green); margin-bottom:.2rem; }
.contact-tel-number{ font-family:'Noto Serif JP',serif; font-size:1.9rem; font-weight:700; color:var(--green-dark); text-decoration:none; letter-spacing:.03em; line-height:1.2; white-space:nowrap; }
a.contact-tel-number:hover{ color:var(--green); }
.contact-form-head{ border-top:1px solid var(--beige); padding-top:1.2rem; margin-bottom:1.6rem; }
.contact-form-head .contact-tel-label{ font-size:1.35rem; }
.contact-form-lead{ font-size:1rem; color:var(--muted); line-height:1.9; margin:0; }
@media(max-width:560px){ .contact-tel-number{ font-size:1.6rem; } }

.cform-row{ display:flex; gap:1rem; }
.cform-row .cform-group{ flex:1; min-width:0; }
.cform-group{ margin-bottom:1rem; }
.cform-label{ display:block; font-size:.82rem; font-weight:700; color:var(--muted); margin-bottom:.3rem; }
.cform-req{ background:var(--green); color:#fff; font-size:.65rem; padding:.1rem .4rem; border-radius:3px; margin-left:.4rem; vertical-align:middle; }
.cform-opt{ background:var(--beige); color:var(--muted); font-size:.65rem; padding:.1rem .4rem; border-radius:3px; margin-left:.4rem; vertical-align:middle; }
.cform-input{ width:100%; padding:.65rem .9rem; border:1.5px solid var(--beige); border-radius:8px; font-size:.9rem; color:var(--text); font-family:inherit; background:#fff; transition:border-color .15s; }
.cform-input:focus{ outline:none; border-color:var(--green); }
textarea.cform-input{ resize:vertical; line-height:1.8; }
.cform-error{ font-size:.8rem; color:#c0392b; margin-bottom:.8rem; min-height:1.2em; }
.cform-submit{ width:100%; padding:.85rem; background:var(--green); color:#fff; border:none; border-radius:8px; font-size:1rem; font-weight:700; font-family:inherit; cursor:pointer; letter-spacing:.05em; transition:.2s; }
.cform-submit:hover{ background:var(--green-dark); }
@media(max-width:560px){ .cform-row{ flex-direction:column; gap:0; } }
