@charset "utf-8";

/*====================================================================================================

	Style Info: お問い合わせ

====================================================================================================*/

.policy {
	background:url(image/box-bg.gif) repeat-y left top;
	border-top:1px solid #b4b4b4;
	border-bottom:1px solid #b4b4b4;
	}


@media screen and (max-width: 750px) {
	.policy {
		background: transparent;
		border-left:1px solid #b4b4b4;
		border-right:1px solid #b4b4b4;
	}
}



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

	フォーム

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

.fm form input,
.fm form select { padding:5px; }
.fm form textarea { width:97.5%; padding:5px; }

@media screen and (max-width: 750px) {
	.fm form input,
	.fm form select { padding:15px; }
	.fm form textarea { width:100%; padding:15px; box-sizing: border-box;}
}


.fm form td textarea,
.fm form td input,
.fm form td select {
	border-top:1px solid #b4b4b4;
	border-left:1px solid #b4b4b4;
	border-right:1px solid #d7d7d7;
	border-bottom:1px solid #d7d7d7;
	background-color:#f0f0f0;
	}

@media screen and (max-width: 750px) {
	.fm form td textarea,
	.fm form td input,
	.fm form td select { background-color:#fff;}
}


.fm td input:focus,
.fm form td textarea:focus {
	background-color:#fff;
	border-color:#323232;
	}

.ip_ss { width:100px; }
.ip_s { width:150px; }
.ip_m { width:250px; }
.ip_l { width:97.5%; }

@media screen and (max-width: 750px) {
	.ip_s { width:100%; box-sizing: border-box;}
	.ip_m { width:100%; box-sizing: border-box;}
	.ip_l { width:100%; box-sizing: border-box;}
}

.fm .error input, 
.fm .error textarea,
.fm .error select {
	border-color:#ce737a;
	background-color:#fff;
	}

@media screen and (max-width: 750px) {
	.fm .error input, 
	.fm .error textarea,
	.fm .error select {
		margin-bottom: 15px;
		}
}


.fm .error label {
	color:#000;
	font-weight:normal;
	}
.fm .error label:hover { color:#967234; }

.fm .error {
	margin:0 !important;
	padding:5px 0 2px 0 !important;
	clear:both;
	}

@media screen and (max-width: 750px) {
	.pd-s40{padding:50px 0 0;	}	
}
/*-------------------------------------------------------------------

	入力画面

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

.fm table {
	width:100%;
	border-spacing:0;
	border-collapse:collapse;
	}

@media screen and (max-width: 750px) {
	.fm table tr{
		display: flex;
		flex-wrap: wrap;
		}	
}

.fm th {
	padding:10px 0;
	width:5%;
	white-space:nowrap;
	vertical-align:top;
	font-size:15px;
	text-align:right;
	}

@media screen and (max-width: 750px) {
	.fm th {
		font-size:26px;
		display: block;
		box-sizing: border-box;
		background-color: #ebebeb;
		padding:15px;
		line-height: 1.2;
		text-align: left;
		position: relative;
	}
	
	.fm th:nth-child(1){width: calc(100% - 80px);}
	.fm th:nth-child(2){width: 80px;}
}



.fm td { padding:10px 0; vertical-align:top; }

@media screen and (max-width: 750px) {
	.fm td{
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 15px 0;
		line-height: 1.2;
	}
}


.fm th .ic-required {
	margin:2px 20px 2px 15px;
	}


@media screen and (max-width: 750px) {
	.fm th .ic-required {
	    margin: 0;
		position: absolute;
		right: 15px;
		top:15px;
		margin-top: -2px;
	}
}

#form-host-submit{margin: auto;}

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

	確認画面

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

.fm2 table {
	width:100%;
	border-collapse:collapse;
	}


@media screen and (max-width: 750px) {
	.fm2 table tr{
		display: flex;
		flex-wrap: wrap;
		}	
}



.fm2 th,
.fm2 td {
	border:1px solid #b4b4b4;
	padding:15px;
	}

.fm2 th {
	width:20%;
	white-space:nowrap;
	vertical-align:top;
	text-align:left;
	background-color:#f0f0f0;
	}

@media screen and (max-width: 750px) {
	.fm2 th {
		display: block;
		box-sizing: border-box;
		background-color: #ebebeb;
		padding:15px;
		line-height: 1.2;
		text-align: left;
		width: 100%;
	}
}




.fm2 td {
	background-color:#fff;
	}

@media screen and (max-width: 750px) {
	.fm2 td{
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 15px;
		line-height: 1.2;
		border-top:none;
		border-bottom: none;
		min-height: 58px;
	}
	
	.fm2 tr:last-child td{
		border-bottom:1px solid #b4b4b4;
	}
}



.fm2 ul { margin-left:16px; }

.bt-back {
	width:210px;
	height:45px;
	background:url(image/bt-back_off.gif) no-repeat left top;
	border:none;
	overflow:hidden;
	cursor:pointer;
	text-indent:-9999px;
	text-align:left;
	display:inline-block;
	/display:inline;
	/zoom:1;
	margin:0 10px;
	}
.bt-back:hover {
	background:url(image/bt-back_on.gif) no-repeat left top;
	}


@media screen and (max-width: 750px) {
	.bt-back {
		width:300px;
		height:55px;
		background:url("image/sp-bt-back_off.jpg") no-repeat left top;
		}
	.bt-back:hover {
		background:url(image/sp-bt-back_on.jpg) no-repeat left top;
		}
}




.bt-send {
	width:230px;
	height:45px;
	background:url(image/bt-send_off.gif) no-repeat left top;
	border:none;
	overflow:hidden;
	cursor:pointer;
	text-indent:-9999px;
	text-align:left;
	display:inline-block;
	/display:inline;
	/zoom:1;
	margin:0 10px;
	}
.bt-send:hover {
	background:url(image/bt-send_on.gif) no-repeat left top;
	}


@media screen and (max-width: 750px) {
	.bt-send {
		width:300px;
		height:55px;
		background:url("image/sp-bt-send_off.jpg") no-repeat left top;
		}
	.bt-send:hover {
		background:url(image/sp-bt-send_on.jpg) no-repeat left top;
		}
}


/**/
.submit-button{text-align: center;margin-top: 15px;}
.submit-button button{cursor:pointer;border: none;background: none;margin-left: 15px;margin-right: 15px;}
.fm2 .submit-button{margin-top: 50px;}

.mailform-alart {
	background-color: #e3fff2;
	border: 1px solid #bae4d1;
	box-sizing: border-box;
	border-radius: 5px;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 15px;
	padding-bottom: 15px !important;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.mailform-alart.error {
	background-color: #ffffff;
	border: 2px solid #ff5353;
	color: #ff5353;
	font-weight: bold;
}

.mailform-setup-alart {
	background-color: #ffffff;
	border: 1px solid #ff5353;
	box-sizing: border-box;
	border-radius: 5px;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 15px;
	padding-bottom: 15px !important;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
	color: #ff5353;
}



.mailform-alart span,
.mailform-alart.error span,
.mailform-setup-alart span{display: inline-block;}


.mailform-setup-alart strong {
	display: block;
	text-align: center;
	margin-bottom: 10px;
	font-size: 20px;
}


@media screen and (max-width: 750px) {
.mailform-setup-alart strong {
		font-size: 28px;
	}
}

.mailform-setup-alart p {
	margin: 0;
	padding: 0;
}

.sentok {
	font-size: 32px;
	text-align: center;
	color: #ff6b6b;
	line-height: 1.4;
}
.sentok span{display: inline-block;}

.mailform-massage{margin-top:30px;}