@charset "UTF-8";

main {
margin-top:80px
}
@media screen and (max-width:767px) {
main {
margin-top:60px
}
}
main .main_visual_wrap {
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	background-image: url(../images/recruit/kv_img.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width:100%;
	height:500px;
display: flex;
align-items:center;
justify-content:center;
}
@media screen and (max-width:767px) {
main .main_visual_wrap {
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	background-image: url(../images/recruit/sp_kv_img.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width:100%;
	height:250px;
display: flex;
align-items:center;
justify-content:center;
}
}
main .main_visual_wrap:before {
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-color:rgba(0,0,0,0.3);
}

main .main_visual_wrap h2{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.5;
letter-spacing:0.15em;
color:#fff;
}
main .main_visual_wrap h2 small{
display:block;
font-weight: 700;
font-size: 14px;
line-height: 1.5;
letter-spacing:0.15em;
color:#fff;
}



main .intro_wrap {
	margin: 0 auto;
	padding: 80px 0 80px;
	position:relative;
	text-align:center;
	width:auto;
	background-color:#eaeae6;
}
@media screen and (max-width:767px) {
main .intro_wrap {
	padding: 40px 0 20px;
}
}
main .intro_wrap h2{
	margin: 0 auto 70px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
main .intro_wrap h2 em{
	margin: 0 auto 20px;
	padding: 0 0 3px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
border-bottom:2px solid #000;
display:inline-block;
}
main .intro_wrap h2 strong{
	margin: 0 auto 20px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
main .intro_wrap h2 small{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 600;
font-size: 14px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
@media screen and (max-width:767px) {
main .intro_wrap h2{
	margin: 0 auto 20px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
main .intro_wrap h2 em{
	margin: 0 auto 20px;
	padding: 0 0 3px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 19px;
line-height: 1.6;
letter-spacing:0.05em;
border-bottom:2px solid #000;
display:inline-block;
}
main .intro_wrap h2 strong{
	margin: 0 auto 15px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 18px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
main .intro_wrap h2 small{
	margin: 0 auto;
	padding: 0 20px 0;
	position:relative;
	text-align:justify;
font-weight: 600;
font-size: 13px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
}

main .intro_wrap h3{
	margin: 0 auto 30px;
	padding: 5px 0 15px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
	background-image: url(../images/recruit/h3_bg.svg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: auto;
}
@media screen and (max-width:767px) {
main .intro_wrap h3{
	margin: 0 auto 10px;
	padding: 5px 0 15px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 17px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
	background-image: url(../images/recruit/h3_bg.svg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 225px auto;
}
}

main .intro_block{
	margin: 0 auto 30px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:center;
}
@media screen and (max-width:767px) {
main .intro_block{
	margin: 0 auto 15px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
display: block;
}
}
.intro_block ul.intro_list{
	margin: 0 0;
	padding: 0 0 0 0;
	position:relative;
	text-align:justify;
}
.intro_block ul.intro_list li{
	margin: 0 0 20px;
	padding: 0 0 0 50px;
	position:relative;
	text-align:justify;
	background-image: url(../images/recruit/list_icon.svg);
	background-repeat: no-repeat;
	background-position: left top 50%;
	background-size: auto;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
}

.intro_block .p_img{
	margin: -70px 0 0 20px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}

@media screen and (max-width:767px) {
.intro_block ul.intro_list{
	margin: 0 20px;
	padding: 0 0 70px 0;
	position:relative;
	text-align:justify;
}
.intro_block ul.intro_list li{
	margin: 0 0 10px;
	padding: 0 0 0 50px;
	position:relative;
	text-align:justify;
	background-image: url(../images/recruit/list_icon.svg);
	background-repeat: no-repeat;
	background-position: left top 2px;
	background-size: 36px auto;
font-weight: 700;
font-size: 16px;
line-height: 1.6;
letter-spacing:0.05em;
}

.intro_block .p_img{
	position:absolute;
	bottom:0;
	right:10px;

}
.intro_block .p_img img{
	width:180px;
	height:auto;

}
}



main .recruit_info{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:center;
}

.recruit_info .recruit_box{
	margin: 0 30px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	width:440px;
	background-color:#fff;
}
.recruit_info .recruit_box h4{
	margin: 0 0;
	padding: 15px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 18px;
line-height: 18px;
letter-spacing:0.05em;
color:#fff;
background-color:#169444;
}

.recruit_info ul.employee_list{
	margin: 10px 30px 20px;
	padding: 0 0 0 0;
	position:relative;
	text-align:justify;
}
.recruit_info ul.employee_list li{
	margin: 0 0 ;
	padding: 12px 0;
	position:relative;
	text-align:justify;
	border-bottom:1px solid #169444;
display: flex;
align-items:center;
justify-content:flex-start;
}
.recruit_info ul.employee_list li:nth-last-child(1){
	border:none;
}

.recruit_info ul.employee_list li em{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 14px;
line-height: 1.6;
letter-spacing:0.05em;
width:100px;
}
.recruit_info ul.employee_list li span{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:justify;
font-weight: 500;
font-size: 14px;
line-height: 1.6;
letter-spacing:0.05em;
}

main .recruit_info div:nth-child(2) h4{
background-color:#f1be19;
}
main .recruit_info div:nth-child(2) ul.employee_list li{
border-bottom:1px solid #f1be19;
}
main .recruit_info div:nth-child(2) ul.employee_list li:nth-last-child(1){
	border:none;
}

@media screen and (max-width:767px) {
main .recruit_info{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
display: block;
}

.recruit_info .recruit_box{
	margin: 0 15px 25px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	width:auto;
	background-color:#fff;
}
.recruit_info .recruit_box h4{
	margin: 0 0;
	padding: 10px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 16px;
line-height: 16px;
letter-spacing:0.05em;
color:#fff;
background-color:#169444;
}

.recruit_info ul.employee_list{
	margin: 5px 15px 0;
	padding: 0 0 10px 0;
	position:relative;
	text-align:justify;
}
.recruit_info ul.employee_list li{
	margin: 0 0 ;
	padding: 10px 0;
	position:relative;
	text-align:justify;
	border-bottom:1px solid #169444;
display: flex;
align-items:center;
justify-content:flex-start;
}
.recruit_info ul.employee_list li:nth-last-child(1){
	border-bottom:0px solid #169444;
}

.recruit_info ul.employee_list li em{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 13px;
line-height: 1.6;
letter-spacing:0.05em;
width:100px;
}
.recruit_info ul.employee_list li span{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:justify;
font-weight: 500;
font-size: 13px;
line-height: 1.6;
letter-spacing:0.05em;
}

}

main .contact_wrap {
	margin: 0 auto;
	padding: 80px 0 80px;
	position:relative;
	text-align:center;
	width:auto;
	background-color:#deebc3;
}
@media screen and (max-width:767px) {
main .contact_wrap {
	padding: 40px 20px 40px;
	width:auto;
}
}

main .contact_wrap h2{
	margin: 0 auto 30px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
main .contact_wrap h2 em{
	margin: 0 auto 20px;
	padding: 0 0 3px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
border-bottom:2px solid #000;
display:inline-block;
}
main .contact_wrap h2 strong{
	margin: 0 auto 20px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 21px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
main .contact_wrap h2 small{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 600;
font-size: 14px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
@media screen and (max-width:767px) {
main .contact_wrap h2{
	margin: 0 auto 10px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
main .contact_wrap h2 em{
	margin: 0 auto 5px;
	padding: 0 0 3px 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 19px;
line-height: 1.6;
letter-spacing:0.05em;
border-bottom:2px solid #000;
display:inline-block;
}
main .contact_wrap h2 strong{
	margin: 0 auto 15px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
font-weight: 700;
font-size: 19px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
main .contact_wrap h2 small{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:justify;
font-weight: 600;
font-size: 13px;
line-height: 1.6;
letter-spacing:0.05em;
display:block;
}
}


table.table_form{
	width:600px;
	margin: 0 auto 25px;
	padding: 0 0 0 0;
	position: relative;
	border-collapse:separate;
	border-spacing:0;
	border-bottom:0px solid #444;
}
@media screen and (max-width:767px) {
table.table_form{
	width:auto;
	margin: 0 auto 15px;
	padding: 0 0 0 0;
	position: relative;
	border-collapse:separate;
	border-spacing:0;
	border-bottom:0px solid #444;
}
}

table.table_form tr{

}

table.table_form tr:nth-child(1){

}

table.table_form tr.tr_inline{
	text-align:justify;
}
table.table_form tr.tr_inline th{
	display:inline-block;
	padding: 15px 0;
}
table.table_form tr.tr_inline td{
	display:inline-block;
	padding: 15px 0 15px 30px;
}

@media screen and (max-width:767px) {
table.table_form tr.tr_inline th{
	display:block;
	padding: 15px 0;
}
table.table_form tr.tr_inline td{
	display:block;
	padding: 0 0 15px 0;
}
}


table.table_form th{
	margin: 0 0 0 0;
	padding: 15px 0 15px 0;
	font-size:14px;
	line-height: 1.8;
	font-weight:bold;
	color:#000;
	letter-spacing:0px;
	text-align:justify;
	width:auto;
	vertical-align:middle;
	display:block;
}

table.table_form th .submessage{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	font-size: 12px;
}

table.table_form th span{
	margin: 0 10px 0 0;
	padding: 2px 5px;
	font-size: 12px;
	font-weight:bold;
	line-height: 1.5;
	letter-spacing:0px;
	color:#fff;
	background-color:#fff;
}

table.table_form th span.require{
	margin: 0 10px 0 0;
	padding: 1px 7px;
	font-size: 12px;
	font-weight:bold;
	line-height: 12px;
	letter-spacing:0px;
	color:#fff;
	background-color:#169444;
}

table.table_form th span.any{
	margin: 0 10px 0 0;
	padding: 2px 7px;
	font-size: 12px;
	font-weight:bold;
	line-height: 1.5;
	letter-spacing:0px;
	color:#444;
	background-color:#dbdbda;
}

table.table_form th span.row_txt{

	font-size:14px;
	line-height: 1.5;
	font-weight:bold;
	color:#000;
	letter-spacing:0px;
	text-align:justify;
	display:inline-block;
	vertical-align:middle;
}


table.table_form td{
	margin: 0 0 0 0;
	padding: 0 0 15px 0;
	position: relative;
	font-size:14px;
	line-height: 1.8;
	font-weight:normal;
	color:#000;
	letter-spacing:0px;
	text-align:justify !important;
	vertical-align:middle;
	border-bottom:0px solid #ccc;
	width:auto;
	display:block;
}

table.table_form td span.address_search,
table.table_form td a.address_search{
	margin: 0 0 0 0;
	padding: 7px 7px;
	font-size: 12px;
	font-weight:bold;
	line-height: 1.5;
	letter-spacing:1px;
	color:#fff;
	background-color:#444;
	cursor: pointer;
}
table.table_form td a.address_search:hover{
	text-decoration:none;
	background-color:#777;
}

table.table_form select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin-right:2em;
	padding:10px;
	border:0px solid #ccc;
	font-size:14px;
	line-height:1.1;
	background:#f2f2f1;
	box-sizing: border-box;
	color:#000;
}
table.table_form div.kakomi select {
	margin-right:0;
}
table.table_form input {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding:10px;
	border:0px solid #ccc;
	font-size:14px;
	line-height:1.1;
	background:#fff;
	box-sizing: border-box;
	border-radius:5px;
}

table.table_form input:focus {
	outline: none;
}

table.table_form input.input_size1{
	margin:0 0 0 0;
	width:100%;
}

table.table_form input.input_size2{
	margin:0 0 0 0;
	width:100%;
}

table.table_form td.flex_kakomi{
display: flex;
align-items:stretch;
justify-content:space-between;
}
table.table_form td.flex_kakomi .kakomi{
	width:48%;
}

table.table_form td.flex_kakomi2{
display: flex;
align-items:stretch;
justify-content:flex-start;
}
table.table_form td.flex_kakomi2 .kakomi{
	width:30%;
}



table.table_form textarea{
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;

	margin:0 0 0 0;
	padding:5px;
	border:0px solid #ccc;
	font-size:14px;
	line-height:1.5;
	background:#fff;
	width:100%;
	border-radius:5px;
}

table.table_form textarea:focus {
	outline: none;
}
table.table_form td .td_radio input[type=radio]{
	display: none;
}
table.table_form td .td_radio input[type=radio]{
	display: none;
}
table.table_form td .td_radio label span{
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 3px 10px 3px 30px;
	position: relative;

}
table.table_form td .td_radio label span::before {
	background-color:#fff;
	border: 1px solid #bdb9b3;
	border-radius: 50%;
	content: '';
	display: block;
	height: 13px;
	left: 6px;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 13px;
}
table.table_form td .td_radio label span::after {
	background: #444;
	border-radius: 50%;
	content: '';
	display: block;
	height: 15px;
	left: 6px;
	margin-top: -8px;
	opacity: 0;
	position: absolute;
	top: 50%;
	width: 15px;
}
table.table_form td .td_radio label input[type=radio]:checked + span::after {
	opacity: 1;
}

table.table_form td .td_radio2 b{
	display: block;
	margin-bottom:8px;
}
table.table_form td .td_radio2 input[type=radio]{
	display: none;
}
table.table_form td .td_radio2 label span{
	display: inline-block;
	margin: 0 14px 16px 0;
	width: 110px;
	padding: 5px 0;
	text-align:center;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 5px;
}
table.table_form td .td_radio2.select_day label span{
	margin: 0 17px 16px 0;
	width: 150px;
}
table.table_form td .td_radio2 label input[type="radio"]:checked + span {
	background-color: #aaa;
	color: #ffffff;
}
table.table_form td .td_radio2 label span:hover {
	background-color: #f2f2f1;
}

table.table_form td.td_check input[type=checkbox] {
	display: none;
}
table.table_form td.td_check label span{
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 0 0 0 0;
	position: relative;
	min-width:130px;
}
table.table_form td.td_check label span::before {
	position: relative;
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	background:#fff;
	margin-right: 10px;
	border: 2px solid #777;
	box-sizing: border-box;
	border-radius: 50%;
	vertical-align: middle;
	margin-top:-3px;
}
table.table_form td.td_check label span::after {

	opacity: 0;
	position: absolute;
	left: 0px;
	top: 0px;
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	background:#169444;
	border: 0px solid #777;
	box-sizing: border-box;
	border-radius: 50%;
	vertical-align: middle;
}
table.table_form td.td_check label input[type=checkbox]:checked + span::after {
	opacity: 1;
}


.mwform-radio-field input[type=radio] {
	position: absolute;
	visibility: hidden;
	width: auto;
}
.mwform-radio-field span {
	margin:0px 30px 0 0;
	padding:0 0 0 0;
	position: relative;
	vertical-align: middle;
	cursor: pointer;
	display:inline-block;
}
.mwform-radio-field span::before {
	position: relative;
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	background:#fff;
	margin-right: 10px;
	border: 2px solid #777;
	box-sizing: border-box;
	border-radius: 50%;
	vertical-align: middle;
	margin-top:-3px;
}
.mwform-radio-field input[type=radio]:checked + span::before {

}
.mwform-radio-field input[type=radio]:checked + span::after {
	position: absolute;
	left: 0px;
	top: 0px;
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	background:#169444;
	border: 0px solid #777;
	box-sizing: border-box;
	border-radius: 50%;
	vertical-align: middle;
}





.caution_txt{
	margin: 0 auto 50px;
	padding: 0 0;
	text-align:justify;
	width:600px;
}

.caution_txt strong{
	font-weight:500;
	font-size: 14px;
}

.caution_txt p{
	margin: 5px 0 0 1em;
	padding: 0 0;
	font-size: 14px;
	font-weight:normal;
	line-height: 1.6;
	letter-spacing:0.05em;
	color:#444;
	text-align:justify;
	text-indent:-1em;
}

@media screen and (max-width:767px) {
.caution_txt{
	margin: 0 auto 20px;
	padding: 0 0;
	text-align:justify;
	width:auto;
}
}


.btn_form {
	text-align:center;
}

.btn_form .submit_btn{
	padding: 10px 50px;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing:1px;
	color:#fff;
	font-weight:bold;
	text-align:center;
	background-color:#666;
	border:2px solid #666;
	
	display:inline-block;

}

.btn_form .submit_btn:hover{
	cursor: pointer;
	color:#666;
	background-color:#eee;
}

.btn_form input {
	border:none;
}

.btn_form input:hover {

}











