
/* Babysitting reservation form */
.baby-form-page{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;background:#f5f8f7;padding:18px;color:#26363c}
.baby-form-page *{box-sizing:border-box}.baby-form-hero{background:#eef8f6;border:1px solid #d2e6e1;border-radius:15px;padding:24px;margin-bottom:18px}.baby-form-eyebrow{margin:0 0 5px;color:#176f78;font-size:.8rem;font-weight:800;letter-spacing:.1em}.baby-form-hero h1{margin:0 0 10px;color:#174f57;font-size:1.65rem}.baby-form-hero p{line-height:1.75}.baby-form-links a{color:#176f78;font-weight:700}
.baby-booking-form{background:#fff;border:1px solid #e0e7e5;border-radius:15px;padding:20px;box-shadow:0 6px 18px rgba(0,0,0,.04)}
.baby-form-section{border:1px solid #dbe4e2;border-radius:12px;padding:16px;margin:0 0 17px;background:#fff;min-width:0}.baby-form-section legend{font-weight:800;color:#174f57;padding:0 8px}.baby-form-section legend span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:#176f78;color:#fff;margin-right:7px}
.baby-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.baby-field{min-width:0}.baby-field-full{grid-column:1/-1}.baby-field label,.baby-label{display:block;font-weight:750;margin-bottom:6px}.baby-field em,.baby-label em{font-style:normal;color:#c64738;font-size:.78rem;margin-left:5px}.baby-field input,.baby-field select,.baby-field textarea{width:100%;max-width:100%;padding:10px 11px;border:1px solid #cbd6d3;border-radius:8px;background:#fff;font:inherit}.baby-field textarea{resize:vertical}.baby-field input:focus,.baby-field select:focus,.baby-field textarea:focus{outline:3px solid rgba(23,111,120,.15);border-color:#3b929a}
.baby-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.baby-choice-grid label{display:flex;align-items:flex-start;gap:8px;border:1px solid #dbe5e2;border-radius:10px;padding:11px;background:#fafcfc;cursor:pointer}.baby-choice-grid input{margin-top:3px}.baby-choice-grid span{display:block}.baby-choice-grid strong,.baby-choice-grid small{display:block}.baby-choice-grid small{margin-top:3px;color:#64757a}
.baby-confirm-list{display:grid;gap:9px;margin-top:16px}.baby-confirm-list label{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-radius:9px;background:#f8fbfa;line-height:1.65}.baby-confirm-list input{margin-top:5px}
.baby-security{max-width:430px;margin:20px auto;padding:15px 18px;background:#f8fbfa;border:1px solid #dbe6e3;border-radius:12px;text-align:center}.baby-security h2{font-size:1rem;margin:0 0 5px;color:#174f57}.baby-security p{font-size:.88rem;line-height:1.55;margin:0 0 10px}.baby-security .cf-turnstile{max-width:360px;margin:0 auto}
.baby-form-error{margin:12px 0 0;padding:10px;background:#fff0ee;border:1px solid #efc4bd;color:#a43c31;border-radius:8px}.baby-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.baby-form-page{padding:9px}.baby-booking-form{padding:12px}.baby-form-grid,.baby-choice-grid{grid-template-columns:1fr}.baby-field-full{grid-column:auto}}


/* =========================================================
   2026-08-27 textarea display fix
   MailformPro / site-wide CSS の上書き対策
   ========================================================= */
body #mailformpro .baby-field label,
body #mailformpro .baby-field .baby-label{
	display:block !important;
	width:100% !important;
	margin-bottom:7px !important;
}

body #mailformpro .baby-field textarea{
	display:block !important;
	width:100% !important;
	max-width:100% !important;
	min-width:100% !important;
	min-height:105px !important;
	height:auto !important;
	padding:10px 12px !important;
	margin:0 !important;
	box-sizing:border-box !important;
	resize:vertical !important;
	font:inherit !important;
	line-height:1.55 !important;
}

/* 備考欄は少し大きく */
body #mailformpro #remarks{
	min-height:150px !important;
}

/* お子様ごとの連絡事項 */
body #mailformpro textarea[id^="child"][id$="_note"]{
	min-height:105px !important;
}
