/* いみずスポーツクラブ CF7 フォーム（MW WP Form の見た目を再現） */

/* ラジオボタン（.mwform-radio-field 相当） */
.imispo-cf7 .wpcf7-radio { display: block; }
.imispo-cf7 .wpcf7-list-item {
	display: block;
	margin: 0;
	padding: 5px 0;
	font-size: 16px;
}
.imispo-cf7 .wpcf7-list-item input[type="radio"] {
	width: auto;
	min-height: 0;
	margin-right: 10px;
}
.imispo-cf7 .radio-side .wpcf7-list-item {
	display: inline-block;
	font-size: 14px;
	margin-right: 10px;
}
.imispo-cf7 .radio-side .wpcf7-list-item input[type="radio"] { margin-right: 5px; }

/* 入力欄 */
.imispo-cf7 .wpcf7-form-control-wrap { display: inline-block; max-width: 100%; }
.imispo-cf7 td > .wpcf7-form-control-wrap { display: block; }
.imispo-cf7 .taiken-hour .wpcf7-form-control-wrap,
.imispo-cf7 .taiken-min .wpcf7-form-control-wrap { display: inline-block; }
.imispo-cf7 input.imispo-zip { width: 120px; }
.imispo-cf7 input.imispo-tel { width: 200px; }
.imispo-cf7 input.imispo-age { width: 100px; }
.imispo-cf7 input.imispo-datepicker { width: 200px; }
.imispo-cf7 input.imispo-wide { width: 100%; }

/* 既存（MW WP Form）は入力画面でリセットボタンを出力していないため非表示で合わせる */
.imispo-cf7 input.reset-button { display: none !important; }

/* エラー表示（.mw_wp_form .error 相当） */
.imispo-cf7 .wpcf7-not-valid-tip {
	display: block;
	color: #b70000;
	font-size: 14px;
	margin-top: 3px;
}
.imispo-cf7 .wpcf7-not-valid { border-color: #b70000; }

/* ボタン */
.imispo-cf7 .contact-btn { position: relative; }
.imispo-cf7 .imispo-back { display: none; }
.imispo-cf7 .wpcf7-spinner {
	position: absolute;
	right: -34px;
	top: 13px;
	margin: 0;
}
.imispo-cf7 .wpcf7-response-output {
	clear: both;
	margin: 30px 0 0 !important;
}

/* 確認画面（.mw_wp_form_preview 相当） */
.imispo-cf7.is-confirm table.form td .wpcf7-form-control-wrap { display: none !important; }
.imispo-cf7.is-confirm table.form tr { border-bottom: 1px dotted #a8861a; }
.imispo-cf7.is-confirm table.form tr:last-child { border-bottom: none; }
.imispo-cf7.is-confirm input[type="reset"] { display: none; }
.imispo-cf7.is-confirm .imispo-back { display: block; }
.imispo-cf7 .imispo-preview { word-break: break-all; }
.imispo-cf7 .imispo-confirm-title { margin-bottom: 40px; }

/* 送信完了（完了ページなしのフォーム：物販） */
.imispo-cf7.is-complete table.form,
.imispo-cf7.is-complete .contact-btn { display: none; }
.imispo-cf7.is-complete .wpcf7-response-output {
	border: none !important;
	padding: 0 !important;
	font-size: 16px;
	line-height: 1.9;
	text-align: center;
	white-space: pre-line;
}

/* 送信完了（デモ） */
.imispo-cf7-done {
	margin-top: 30px;
	padding: 20px;
	border: 2px solid #275ca8;
	text-align: center;
	line-height: 1.8;
}

/* ハニーポット（人には見えない） */
.imispo-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* プレビューページ専用 */
.imispo-preview-note {
	margin: 30px 0 20px;
	padding: 12px 16px;
	background: #fff4d6;
	border: 1px solid #e0b84a;
	font-size: 14px;
	line-height: 1.7;
}
.imispo-preview-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; }
.imispo-preview-nav a {
	display: block;
	padding: 6px 12px;
	border: 1px solid #275ca8;
	color: #275ca8;
	font-size: 14px;
}
.imispo-preview-nav a.is-current { background: #275ca8; color: #fff; }
.imispo-preview-h { margin-bottom: 0; }

@media screen and (max-width: 639px) {
	.imispo-cf7 .wpcf7-list-item,
	.imispo-cf7 .radio-side .wpcf7-list-item { font-size: 13px; }
	.imispo-cf7 input.imispo-tel,
	.imispo-cf7 input.imispo-datepicker { width: 100%; }
	.imispo-cf7 .wpcf7-spinner { right: -28px; }
}
