@charset "UTF-8";
/* CSS Document */


.contactheader{
	background: #E3E2D0;
	display: flex;
	justify-content: center;
	align-items: center
}

.contactheader h1{
	color: #656565
}

.contactheader h1 span{
	display: block;
	font-size: 3rem;
	padding-bottom: 20px
}


#page_contact{
	margin: 0 auto;
	width: 90%;
	max-width: 1000px;
}


#form_wrap{
	padding: 5%;
}

.message{
	margin-bottom: 5%
}

.message p{
	margin-bottom: 1em
}

.message dl{
	background: #f8e6e6;
	padding: 1.5em
}

.message dl dt{
	font-weight: bold;
	color: red;
	margin-bottom: 1em;
	font-size: 1.1em
}

#contact_form{
	background: #fff;
	border-radius: 10px;
	position: relative;
	padding: 6%;
	margin: 0 auto;
	max-width: 900px;
}


#contact_form .privacy{
	background: #eee;
	text-align: center;
	padding: 1em;
}


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

@media print, screen and (min-width: 768px) {}	

@media print, screen and (min-width: 1024px) {
	.contactheader{height: 30vh}
	
	.contactheader h1 span{font-size: 4rem}
	.message{
		text-align: center
	}
}	



.contact_wrap{
	width: min(90%, 900px);
	margin: 0 auto;
	padding: 8% 0
}

.contact_form{
	position: relative;
	margin: 0 auto;
	padding: 0 0 10%
}

body#confirm .contact_form{
	padding: 0 5% 10%
}

/* ------------------------------
 fomr_header
------------------------------ */


ul.contact_flow{
	display: flex;
	flex-wrap:wrap;
	justify-content: center;
	margin:0 auto;
	width: 98%;
	max-width: 1000px
	}


ul.contact_flow li{
	font-weight: bold;
	background: #eee;
	text-align: center;
	line-height: 1em;
	flex: 1;
	padding: 1.2em 1em;}

ul.contact_flow li:not(:last-child){
	margin-right: 5px
}

ul.contact_flow li:last-child {margin-right: 0;}	

ul.contact_flow li span{
	text-align: center;
	padding-right: 1em
}

ul.contact_flow li{}


body.contact ul.contact_flow li:nth-child(1),
body.recruit ul.contact_flow li:nth-child(1),
body.complete ul.contact_flow li:nth-child(2){
  background: #fff000;
  position: relative;
  color: #000
}






/* ------------------------------
 フォーム本体
------------------------------ */

#co_contact h2{
	position: relative;
	font-size: 1.7em;
	margin-bottom:1.5em;
	letter-spacing: .1em;
	color: #209f75
}

dl.mailform{margin-bottom: 2em}



dl.mailform dt {
	font-weight:bold;
	align-items: center;
	position: relative;
	display: flex;
	margin-bottom: .8em;
}

dl.mailform dt span{
	display: block;
}

dl.mailform dd .addr{
	display: block;
	margin-top: 5px;
}


dl.mailform dd p {
	font-size: .8em;
}

.tag{
	font-size: .6em;
	color: red;
	padding: 0 0 0 5px;
}

.privacy{}

.radio_btn td{
margin-top: 10px;
}
.radio_btn input[type=radio].radio_btn_item{
display: none;
}
.radio_btn label {
display: inline-block;
}
.radio_btn .radio_btn_item + span {
padding-left: 30px;
display: inline-block;
position: relative;
line-height: 1em
}
.radio_btn .radio_btn_item + span::after,
.radio_btn .radio_btn_item + span::before {
border-radius: 50%;
content: '';
display: block;
position: absolute;
}
.radio_btn .radio_btn_item + span::before {
border: 1px solid #AAAAAA;
left: 0;
top: 0;
height: 20px;
width: 20px;
}
.radio_btn .radio_btn_item + span::after{
background: var(--color-main);
left: 6px;
opacity: 0;
top: 6px;
height: 10px;
width: 10px;
}
.radio_btn .radio_btn_item:checked + span::after {
opacity: 1;
}


.mw_wp_form .horizontal-item + .horizontal-item{margin: 0 !important}
.mwform-radio-field label{margin: 7px !important}
.mwform-checkbox-field-text{font-weight: bold}
.mwform-radio-field{line-height: 1.8em}


@media screen and (max-width: 768px) {
	dl.mailform {margin-bottom: 2em}

	dl.mailform dt{
		margin-bottom: .5em
	}
	dl.mailform dd{}
	
	
	.mwform-radio-field{
		display: block
	}
}


ul.imgfile{}

ul.imgfile li{margin-bottom: 1em}	

@media print, screen and (min-width: 769px) {
	dl.mailform{
		display: flex;
		flex-wrap:wrap;
	}
	
	dl.mailform dt{
		width: 20%;
	}
	dl.mailform dd{text-align: left;
		width: 80%;
		padding: 0 0 0 1em
	}
	
	
}	




.submit{margin: 3em auto 2em;
	text-align: center
}



#re_mail{
	font-size: 1.6em;font-weight: bold;
	color: #ff4500}

#re_mail:before{
	content: "アドレス確認";
	font-size: .4em;
	padding-right: 1.5em;
	color: #666
}

.privacy_box dl dt{
	color: #0070d2;
	font-size: 1.1rem;
	margin-bottom: .6em
}


.privacy_box .privacy{
	margin-bottom: 10%
}

.privacy_box a{
	text-decoration: underline
}

iframe{border: solid 1px #ccc !important;
	width: 100%;
	height: 300px;
	margin: .5em 0 1em !important;
}

body#confirm .privacy_box dl{
	display: none
}




/* ------------------------------
 complete
------------------------------ */

#contact_thanks{
	margin: 0 auto 8%}
	
	
.thanks_title{
	text-align: center;
	padding: 6% 5%;
	margin-bottom: 1.5em;
	background: #f0f4ff
}

.thanks_title h2{
	margin-bottom: .8em;
	font-size: 2.2rem;
}

.thanks_title h3{font-size: 1.8rem}





/****************************************

          Form

*****************************************/

input[type="text"],
input[type="tel"],
input[type="password"],
input[type="email"],
input[type="search"],
textarea {
	padding: .6em .8em;
	outline: none;
	border-radius: 6px;
	background: #EDF8F0;
	color: #222;
	border: none;
	box-shadow:2px 2px 5px rgba(0, 0, 0, 0.1) inset;
}


select {
	padding: .5em .8em;
	outline: none;
	border-radius: 6px;
	background: #EDF8F0;
	color: #222;
	border: none;
	border: solid 2px #ccc
}

	
	
#comment input[type="text"],
#comment textarea {display: block;}


	
textarea {overflow: auto;}


input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	background-color: #FEFFE8;
	color: #444;
}

.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	margin: 1em auto 0;
	display: block;
	width: 100%;
	padding: .8em 4em;
	border-radius: 50px;
	color: #000;
	text-decoration: none;
	font-weight: bold;
	font-size: 18px;
	letter-spacing:.2em;
	line-height: normal;
	cursor: pointer;
	background-color: #fff;
	border: solid 2px #66ad7f;
	-webkit-appearance: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background-color: #66ad7f;
	border: solid 2px #66ad7f;
	color: #fff;
}

.button:active,
button:active,
input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active {
	position: relative;
	top:1px;
}

@media only screen and (max-width: 670px) {
	.contact_form input[type="txet"],textarea{padding: .4em .5em;}
	.contact_form input.rwdi,textarea.rwdi{width:100% !important;padding: .8em;font-size: 1.1em}
	
}
@media screen and (min-width: 671px) {
	input[type="text"],
	input[type="tel"],
	input[type="password"],
	input[type="email"],
	input[type="search"],
	textarea{
		padding: .8em 1em;
		font-size: 1.1em
	}
	select{
		padding: .6em 3em .6em 1em;
		font-size: 1.1em
	}


	.contact_form input,textarea{}
	.contact_form input.rwdi,textarea.rwdi{width:100%;padding: .8em;}
	.button,
	button,
	input[type="submit"],
	input[type="reset"],
	input[type="button"] {max-width: 400px;}
}





/* ------------------------------
 .checkbox
------------------------------ */

.checkbox .mwform-checkbox-field{
	box-shadow: 1px 1px 3px #ccc;
	position: relative;
	border-radius: 7px;
	padding: .6em 1em;
	display: block;
}


input[type=checkbox].checkbox__item{
  display: none;
}

.checkbox label {
  display: block;
}

.checkbox__item + span {
  position: relative;
  color: #444
}

.checkbox .mwform-checkbox-field:hover{
	background: #eee
}

/* 各パーツを作成 */

.checkbox__item + span::before{
	font-family: icomoon;
	content: "\ea53";
	padding-right: 8px
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.checkbox__item:checked + span::before {
  font-family: icomoon;
  content: "\ea52";
  padding-right: 8px
}

.checkbox__item:checked + span::after {
  opacity: 1;
}


@media screen and (max-width: 767px) {
	.mw_wp_form .horizontal-item + .horizontal-item {margin-left: 0px;}
	.checkbox .mwform-checkbox-field{margin: 7px 0 0;}
}	

@media print, screen and (min-width: 768px) {
	.checkbox{
		display: flex
	}
}	

@media print, screen and (min-width: 1024px) {}	


