@charset "utf-8";
/*================================
ここから全サイズ適用
================================*/





#mfp_hidden {
	display: none;
}
div#mfp_loading {
	display: none;
}
div#mfp_loading_screen {
	display: none;
}
div#mfp_overlay_background {
	display: none;
}
div#mfp_overlay {
	display: none;
}

#mailformpro {
	padding: 0 !important;
}
/*必須項目*/
.must {
	padding: 0.6rem 0.8rem;
	background: linear-gradient(#e99393,#bf5b5b);
	border-radius: 2px;
	font-size: 1.2rem;
	text-align: center;
	line-height: 1;
	color: #fff;
}
.mfp_small {
	font-size: 0.9em;
	vertical-align: baseline;
}
.mfp_comment {
	color: #0069b1;
	vertical-align: baseline;
}
/*入力欄全体
--------------------------------*/
.mailform {
	/*flex設定*/
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: row wrap;
	/*その他*/
	border-top: 1px solid #dadada;
}
/*質問箇所（左エリア）
--------------------------------*/
.mfp_dt {
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
	gap: 3rem;
	width: 32rem;
	padding: 20px 20px;
	background: #fff;
	border-bottom: 1px solid #dadada;
	font-size: 1.4rem;
}
.mfp_dt:nth-of-type(odd) {
	background: #fdfaf8;
}
/*入力箇所（右エリア）
--------------------------------*/
.mfp_dd {
	width: calc(100% - 32rem);
	padding: 20px 20px;
	background: #fff;
	font-size: 1.4rem;
	text-align: left;
	border-bottom: 1px solid #cdddf2;
}
.mfp_dd:nth-of-type(odd) {
	background: #fdfaf8;
}
/*エラーメッセージ
--------------------------------*/
.mfp_err {
	clear: both;
	display: none;
	text-align: left;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 17px;
	color: #F00;
	font-size: 12px;
	line-height: 1.5em !important;
	background-image: url(img/mfp_error.gif);
	background-repeat: no-repeat;
	background-position: 0px 3px;
}
/*mfp_box
--------------------------------*/
.mfp_box01 {
	padding: 10px 10px;
	background: #fff;
	border: solid 1px #dadada;
	border-radius: 2px;
}
/*入力ボックス
--------------------------------*/
.mfp_dd input {
	padding: 3px 8px;
	border: solid 1px #dadada;
	border-radius: 2px;
	vertical-align: middle;
}
.mfp_dd label {
	/*display: block;*/
}
/*チェックボックス
--------------------------------*/
.mfp_dd .mfp_check {
	margin: 0 4px 0 0;
	vertical-align: baseline;
}
.mfp_check-group {
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
	flex-flow: row wrap;
	gap: 4px 1rem;
}
.mfp_check-group .mfp_label {
	width: calc(100%/2 - 1rem/2);
}
/*チェックボックス(その他)
--------------------------------*/
.sub_input {
	text-align: left;
}
/*テキストエリア
--------------------------------*/
.mfp_dd textarea {
	width: 100% !important;
	height: 145px !important;
	padding: 3px 8px;
	border: solid 1px #CCC;
	border-radius: 3px;
	line-height: 1.5;
}
/*グループ
--------------------------------*/
.mfp_group {
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
	flex-flow: row wrap;
	gap: 4px 1rem;
}
/*ラジオボタン
--------------------------------*/
.mfp_dd label {
	display: inline-block;
	padding: 4px 10px;
	background: #fff;
	border: solid 1px #dadada;
	border-radius: 2px;
	font-size: 1.4rem;
}
.mfp_dd .mfp_radio {
	margin: 0;
	vertical-align: baseline;
}
/*セレクトボタン
--------------------------------*/
.mfp_dd .mfp_select {
	padding: 3px 8px;
	background: #fff;
	border: solid 1px #dadada;
	border-radius: 2px;
}
/*当院への通院状況
--------------------------------*/
.mfp_dd input.mfp_name {
	width: 160px;
}
/*当院への通院状況
--------------------------------*/
.visit-status {}
.visit-status li {}
/*ご予約希望日時
--------------------------------*/
.rsvchoice {
	display: flow-root;
}
.rsvchoice .date {
	float: left;
	margin-right: 30px;
}
.rsvchoice .time {
	float: left;
}
.rsvchoice select {
	border: solid 1px #CCC;
	border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;
	vertical-align: text-bottom;
}
/*送信ボタン
--------------------------------*/
.mfp_buttons {
	text-align: center;
}
.mfp_buttons button {
	transition: ease-in-out 0.1s;
	display: inline-block;
	cursor: pointer;
	min-width: 160px;
	padding: 1rem 3rem;
	background: linear-gradient(#f1f1f1,#aeaeae);
	border: solid 1px #dadada;
	border-radius: 2px;
	font-weight: 600;
	line-height: 1.4;
}
.mfp_buttons button:hover {
	opacity: 0.8;
}
.mfp_buttons button:first-child {
	margin-right: 20px;
}


/*--------------------------------
確認画面
--------------------------------*/
#mfp_phase_confirm {}
#mfp_phase_confirm h4 {
	margin-bottom: 20px;
	text-align: center;
}
/*確認画面タイトル(入力内容をご確認ください)
--------------------------------*/
.confirm_title {
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: bold;
	color: #1974bc;
	text-align: center;
}
/*入力欄全体
--------------------------------*/
#mfp_confirm_table {
	margin: 0 auto 40px;
	max-width: 600px;
	width: 100%;
	border-top: 1px solid #dadada;
}
#mfp_confirm_table tr:nth-child(odd) {
	background: #fdfaf8;
}
/*質問箇所（左エリア）
--------------------------------*/
#mfp_confirm_table th {
	width: 40%;
	border-bottom: 1px solid #dadada;
	padding: 10px 20px;
	font-size: 1.4rem;
	text-align: left;
	color: #7f0707;
}
/*入力箇所（右エリア）
--------------------------------*/
#mfp_confirm_table td {
	border-bottom: 1px solid #dadada;
	padding: 10px 20px;
	font-size: 1.4rem;
	text-align: left;
}
/*送信ボタン
--------------------------------*/
.mfp_buttons {}
.mfp_buttons .mfp_dt {}
.mfp_buttons button {}


/*================================
TABLET縦 834px～0px
================================*/
@media (max-width: 834px) {

	/*質問箇所（左エリア）
	--------------------------------*/
	.mfp_dt {
		width: 100%;
		padding: 10px 20px;
		border-bottom: none;
	}
	/*入力箇所（右エリア）
	--------------------------------*/
	.mfp_dd {
		width: 100%;
		padding: 10px 20px;
	}
	/*チェックボックス
	--------------------------------*/
	.checkbox-list li {
		width: calc(100%/2);
	}
	
}


/*================================
SP表示 667px～0px
================================*/
@media (max-width: 667px) {


	/*チェックボックス
	--------------------------------*/
	.mfp_dd .mfp_check {}
	.mfp_check-group {}
	.mfp_check-group .mfp_label {
		width: 100%;
	}
	/*ご予約希望日時
	--------------------------------*/
	.rsvchoice_text {
		display: inline-block;
		text-align: right;
	}
	.rsvchoice .date {
		float: none;
		margin-right: 0;
	}
	.rsvchoice .time {
		float: none;
	}
	/*送信ボタン
	--------------------------------*/
	.mfp_buttons button {
		/*
		display: block;
		width: 100%;
		*/
	}
	.mfp_buttons button:first-child {
		margin-right: 0;
		margin-bottom: 10px;
	}
	

	/*--------------------------------
	確認画面
	--------------------------------*/
	#mfp_phase_confirm {}
	/*確認画面タイトル(入力内容をご確認ください)
	--------------------------------*/
	.confirm_title {}
	/*入力欄全体
	--------------------------------*/
	#mfp_confirm_table {
		max-width: 100%;
	}
	/*質問箇所（左エリア）
	--------------------------------*/
	#mfp_confirm_table th {
		display: block;
		width: 100%;
		padding: 10px 20px 5px;
		border-bottom: none;
	}
	/*入力箇所（右エリア）
	--------------------------------*/
	#mfp_confirm_table td {
		display: block;
		width: 100%;
		padding: 5px 20px 10px;
	}
	/*送信ボタン
	--------------------------------*/
	#mfp_phase_confirm .mfp_buttons {}
	.mfp_buttons {}
	.mfp_buttons .mfp_dt {}
	.mfp_buttons button {
		width: 60%;
	}

}





