@charset "UTF-8";

/*-----------------------------------

	contact_tel_box

-----------------------------------*/
.contact_tel_box{
	display: inline-block;
	padding: 10px;
	margin-top: 15px;
	border: solid 1px #b3b3b3;
}

@media screen and (max-width: 640px) {

	.contact_tel_box p span{
		display: block;
	}
	.contact_tel_box p{
		margin-top: 0.5em;
	}

}

/*-----------------------------------

	form_block

-----------------------------------*/
#form_block form{
	background: #f1f8fd;
	padding: 10px 20px 40px;
	text-align: left;
}
#form_block form table {
	width: 100%;
}

/* require */
#form_block .require{
	color: red;
	padding-left: 3px;
}

#form_block form table tr:not(:last-child) th,#form_block form table tr:not(:last-child) td{
	border-bottom: dotted 1px #b3b3b3;
}
#form_block form table th{
	padding: 1em 0;
	padding-right: 1em;
	vertical-align: top;
}
#form_block form table th span{
	font-weight: normal;
}
#form_block form table td{
	padding: 18px 0;
}
#form_block form table textarea{
	width: 100%;
}

/*btn_area*/
#form_block .btn_area{
	width: 530px;
	margin: 20px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#form_block .btn_area input{
	color: #fff;
	text-align: center;
	display: block;
	padding: 15px 10px;
	width: 200px;
	font-size: 1.3em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	cursor: pointer;
	-webkit-appearance: none;
	border: none;
	margin: 15px auto;
}
#form_block .btn_area input:hover{
	opacity: 0.8;
}
#form_block .btn_area .submit_btn{
	-webkit-appearance: none;
	background: #295bc4;
}
#form_block .btn_area .reset_btn{
	-webkit-appearance: none;
	background: #615D5D;
}

#form_block .ssl_box{
	padding-top: 30px;
}


@media screen and (max-width: 640px) {

	#form_block form{
		padding: 20px 15px 25px;
	}
	#form_block form table th{
		display: block;
		padding: 0.5em 0 0.1em;
	}
	#form_block form table td{
		display: block;
		padding: 0.5em 0 1em;
	}
	#form_block form table tr:not(:last-child) th{
		border-bottom: none;
		padding: 0.5em 0 0.1em;
	}
	#form_block .btn_area {
		width: 100%;
		margin-top: 10px;
	}


	#form_block .sp_w100{
		width: 100%;
	}
	#form_block .btn_area input{
		display: block;
		margin: 0 auto 10px;
	}
	#form_block input,#form_block select{
		padding: 0.3em;
		width: 100%;
	}
	#form_block .box_width input {
		display: inline-block !important;
		width: 70px !important;
	}

}


@media screen and (max-width: 400px) {

	#form_block input{
		width: 100% !important;
	}

}

.error {
	color: crimson;
}

/*reCAPTCHA Enterprise バッジを非表示*/
.grecaptcha-badge {visibility: hidden;}
/*reCAPTCHA の案内を非表示*/
.if-js-enabled{visibility: hidden;}

.recaptcha{
	margin: 1em 0;
    text-align: center;
    font-size: 0.9rem;
    line-height: 1.6;
}
.recaptcha a{color: #295bc4;}


@media screen and (max-width: 640px) {
	.recaptcha{
		font-size: 0.8rem;
    	padding-top: 10px;
	}
}