/* Contact Form 7 のカスタムスタイル */
.contact-form-layout {
	max-width: 500px;
	margin: 0 auto;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
textarea {
	font-size: 16px !important;
}

/* フォーム内の各セクションの間隔 */
.form-section {
	margin-bottom: 40px;
}

/* 自動挿入された改行の余白を削除 */
.wpcf7-form br {
	display: none;
}

/* 段落下部の余白を調整 */
body .container .wpcf7-form p {
	margin-block-end: 8px;
}

/* チェックボックスの配置 */
.wpcf7-checkbox {
	display: grid;
	gap: 8px;
	padding: 0;
	font-size: 16px;
}

/* フォームの見出し */
.form-section h3 {
	font-size: 1.2em;
	margin-bottom: 10px;
	border-left: 4px solid #333;
	padding-left: 10px;
}

.section-desc {
	font-size: 14px;
	color: #666;
	line-height: 1.4;
}

/* 入力項目のグループ */
.form-group {
	margin-bottom: 20px;
}

.form-group label,
.label-style {
	font-size: 1rem;
	display: block;
	margin-bottom: 8px;
	line-height: 1.2;
}

/* 必須項目の印 */
.required {
	background: none;
	padding: 0;
	margin-left: 5px;
	vertical-align: middle;
	color: #ff4d4d;
	font-size: 10px;
}

.required::before {
	content: "※";
}

/* エラーメッセージの文字サイズ */
.wpcf7-not-valid-tip {
	font-size: 14px;
}

/* 選択肢リスト左側の余白を削除 */
.wpcf7-list-item {
	margin: 0;
}

.checkbox-terms-flex p {
	display: flex;
}

/* 送信ボタン */
.contact-form-layout .wpcf7-submit {
	display: block;
	padding: 15px 50px;
	margin: 0 auto;
	border: none;
	border-radius: 30px;
}

/* 1day レッスンの日付入力欄 */
.wpcf7-date {
	width: 40% !important;
}

@media screen and (max-width: 780px) {
	.wpcf7-date {
		width: 50% !important;
	}
}
