/* ---------------------------------------------------------------
start Contact CSS
--------------------------------------------------------------- */

.bg_pagettl.contact {
	height: 246px;
	color: #fff;
	background-image: url(../img/contact/bg_pagettl.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.bg_contact {
	margin: 0;
	padding: 75px 0;
	background-color: #F2F1EA;
}

.col_contact {
	width: 94%;
	max-width: 780px;
	margin: 0 auto;
	padding: 0;
}

.lead_contact {
	margin: 0 0 52px;
	padding: 0;
	text-align: center;
}

ul.flow_contact {
	max-width: 550px;
	margin: 0 auto 40px;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: center;
}

ul.flow_contact li {
	width: calc( ( 100% - 16px )/3 );
	height: 44px;
	margin: 0 8px 0 0;
	padding: 13px 0 0;
	font-size: 14px;
	line-height: 1.4;
	text-align: center;
	background-color: #D3D3D3;
	box-sizing: border-box;
	position: relative;
	z-index: 0;
}

ul.flow_contact li.current {
	color: #fff;
	background-color: #009280;
}

ul.flow_contact li:last-child {
	margin-right: 0;
}

ul.flow_contact li:before {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 9px #F2F1EA;
	border-top: solid 22px rgba(242,241,234,0);
	border-bottom: solid 22px rgba(242,241,234,0);
	position: absolute;
	top: 0;
	left: 0;
}

ul.flow_contact li:after {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 9px rgba(242,241,234,0);
	border-top: solid 22px rgba(242,241,234,1);
	border-bottom: solid 22px rgba(242,241,234,1);
	position: absolute;
	top: 0;
	right: 0;
}

ul.flow_contact li:first-child:before,
ul.flow_contact li:last-child:after {
	content: none;
}

.notice_contact {
	margin: 0 0 80px;
	padding: 0;
	text-align: center;
}

.col_contact .require { color: #FF2600; }

.cont_form_contact {
	margin: 0 0 30px;
	padding: 0;
	border-top: dotted 2px #BFBFBF;
}

.cont_form_contact dl {
	width: 100%;
	margin: 0;
	padding: 18px 15px 18px 8px;
	border-bottom: dotted 2px #ccc;
	box-sizing: border-box;
	display: flex;
}

.cont_form_contact dl dt {
	width: 180px;
	margin: 0;
	padding: 0;
}

.cont_form_contact dl dd {
	width: calc( 100% - 180px );
	margin: 0;
	padding: 0 0 0 28px;
	box-sizing: border-box;
}

.cont_form_contact dl dd.address {
	padding-left: 0;
}

.cont_form_contact dl dd .postcode {
	width: 100%;
	margin: 0 0 8px;
	padding: 0 0 0 2px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

.cont_form_contact dl dd input[type="text"] {
	width: 100%;
	max-width: 520px;
	margin: 0;
	padding: 6px;
	font-size: 15px;
	line-height: 1.4;
	background-color: #fff;
	border: solid 1px #ccc;
	box-sizing: border-box;
	display: inline-block;
}

.cont_form_contact dl dd .postcode input[type="text"] {
	width: calc( 100% - 38px );
	max-width: 200px;
	margin: 0 0 0 10px;
}

.cont_form_contact dl dd.address .cont_address {
	padding-left: 28px;
}

.cont_form_contact dl dd textarea {
	width: 100%;
	max-width: 520px;
	height: 9em;
	margin: 0;
	padding: 6px;
	font-size: 15px;
	line-height: 1.4;
	background-color: #fff;
	border: solid 1px #ccc;
	box-sizing: border-box;
}

.notice_privacy_contact {
	margin: 0 0 50px;
	padding: 0;
	font-size: 14px;
	text-align: center;
}

.cont_privacy_contact {
	width: 100%;
	max-height: 14em;
	margin: 0 0 20px;
	padding: 15px 20px;
	line-height: 1.6;
	background-color: #fff;
	border: solid 1px #ccc;
	box-sizing: border-box;
	overflow: auto;
}

.cont_privacy_contact dl {
	width: 100%;
	margin: 0 0 25px;
	padding: 0;
}

.cont_privacy_contact dl:last-child {
	margin-bottom: 0;
}

.cont_privacy_contact dl dt {
	margin: 0 0 5px;
	padding: 0;
	font-weight: 600;
}

.cont_privacy_contact dl dd {
	margin: 0;
	padding: 0;
	font-size: 14px;
}

.cont_privacy_contact dl dd ul {
	margin: 15px 10px;
	padding: 0 0 0 17px;
	list-style: disc;
}

.cont_privacy_contact dl dd ul li {
	margin: 0 0 2px;
	padding: 0;
}

.cont_form_privacy_contact {
	margin: 0 0 40px;
	padding: 0;
	text-align: center;
}

.btnarea {
	margin: 0;
	padding: 0;
	text-align: center;
}

.btnarea input[type="submit"] {
	width: 260px;
	height: 60px;
	margin: 10px;
	padding: 0;
	color: #fff;
	font-size: 16px;
	background-color: #F19423;
	border: none;
	cursor: pointer;
}


/* --------------- error --------------- */

.notice_error {
	margin: 15px 0 0;
	padding: 0;
	color: #e60012;
}

.cont_form_contact dl dd .error {
	color: #e60012;
	display: inline-block;
}

.cont_form_privacy_contact span.error {
	color: #e60012;
	display: block;
}



/* --------------- confirm --------------- */

.mw_wp_form_confirm .cont_form_contact dl dd.address { padding-left: 28px; }
.mw_wp_form_confirm .cont_form_contact dl dd.address .cont_address { padding-left: 0; }
.col_contact .mw_wp_form_confirm .conf_none { display: none; }
.btnarea input[name="submitBack"] { background-color: #aaa; }

.col_contact .mw_wp_form_confirm .cont_form_privacy_contact:before {
	content: "\02714";
	margin: 0 3px 0 0;
	padding: 0;
	display: inline-block;
}


/* --------------- thanks --------------- */

a.btn_totop_contact {
	max-width: 320px;
	margin: 0 auto;
	padding: 14px 5px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background-color: #F19423;
	box-sizing: border-box;
	display: block;
	position: relative;
	z-index: 0;
}

a.btn_totop_contact:before {
	content: "";
	width: 6px;
	height: 6px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc( 50% - 4px );
	right: 20px;
}




/* ---------------------------------------------------------------
	start max 1033px
--------------------------------------------------------------- */

@media screen and ( max-width: 1033px ) {



}

/* ---------------------------------------------------------------
	end max 1033px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
	start max 850px
--------------------------------------------------------------- */

@media screen and ( max-width: 850px ) {



}

/* ---------------------------------------------------------------
	end max 850px
--------------------------------------------------------------- */
/* ---------------------------------------------------------------
	start min 701px
--------------------------------------------------------------- */

@media print,screen and ( min-width: 701px ) {
	
	.btnarea input[type="submit"] { transition: background .3s; }
	.btnarea input[type="submit"]:hover { background-color: #DD7300; }
	
/* --------------- confirm --------------- */
	
	.btnarea input[name="submitBack"]:hover { background-color: #888; }
	
	
/* --------------- thanks --------------- */
	
	a.btn_totop_contact { transition: background .3s; }
	a.btn_totop_contact:hover { background-color: #ff8c00; }
	
}

/* ---------------------------------------------------------------
	end min 701px
--------------------------------------------------------------- */
/* ---------------------------------------------------------------
	start max 700px
--------------------------------------------------------------- */

@media print,screen and ( max-width: 700px ) {

	.bg_pagettl.contact {
		height: 43vw;
		max-height: 246px;
		background-image: url(../img/contact/sp/bg_pagettl.jpg);
		background-repeat: no-repeat;
	}
	
	.cont_form_contact dl dt {
		width: 140px;
	}
	
	.cont_form_contact dl dd {
		width: calc( 100% - 140px );
	}


/* --------------- error --------------- */
	
	.notice_contact.error {
		max-width: 560px;
		margin: 0 auto 50px;
		text-align: left;
	}
	
	
/* --------------- confirm --------------- */
	
	.notice_contact.confirm {
		max-width: 560px;
		margin: 0 auto 50px;
		text-align: left;
	}
	
	
/* --------------- thanks --------------- */
	
	.notice_contact.thanks {
		max-width: 560px;
		margin: 0 auto 50px;
		text-align: left;
	}
	
	

}

/* ---------------------------------------------------------------
	end max 700px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
	start max 550px
--------------------------------------------------------------- */

@media screen and ( max-width: 550px ) {
	
	.cont_form_contact dl {
		padding: 14px 10px;
		display: block;
	}
	
	.cont_form_contact dl dt {
		width: 100%;
		margin: 0 0 3px;
		padding: 0;
	}
	
	.cont_form_contact dl dd {
		width: 100%;
		padding: 0;
	}
	
	
/* --------------- confirm --------------- */
	
	.mw_wp_form_confirm .cont_form_contact dl dd.address { padding-left: 0; }
	
	
}

/* ---------------------------------------------------------------
	end max 550px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
	start max 450px
--------------------------------------------------------------- */

@media screen and ( max-width: 450px ) {
	
	.bg_contact {
		padding: 40px 0;
	}
	
	.lead_contact {
		margin: 0 0 30px;
	}
	
	ul.flow_contact li {
		width: calc( ( 100% - 4px )/3 );
		height: 44px;
		margin: 0 2px 0 0;
	}


}

/* ---------------------------------------------------------------
	end max 450px
--------------------------------------------------------------- */
