/*
 * base css 
 * pc width 1000px fixed
 */

@media (max-width: 599px) {
} /* end -599 */

@media (min-width: 600px) and (max-width:959px) {
} /* end 600-959 */

@media (min-width: 960px) {
} /* 960- */

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

@media (min-width: 768px) {
} 

/* ---------------------------------------- common */

#visual {
	background: url(../images/recruit/recruit_1450x440.jpg) no-repeat center center; 
	background-size: cover;
}

main p { color: #666; }

.linkbt a {
	display: inline-block;
	color: #fff;
	background: #7ab157;
	line-height: 1.2;
	font-size: clamp(2rem, 2vw + 0.75rem, 2.4rem);
	padding: 0.6em 1.3em 0.5em;
	border-radius: 100px;
}

/* ---------------------------------------- intro */

#intro { 
	text-align: center;
	margin: 0 0 4em;
}
#intro h3 {
	color: #dd9933;
	font-size: clamp(2rem, 2vw + 0.75rem, 2.4rem);
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 1em;
}
#intro h3 + p { margin: 0 0 2em; }

/* ---------------------------------------- detailbox */

.detailbox + .detailbox { margin: 2em 0 0; }
.detailbox .inner {
	border: 1px solid #ddd;
}
.detailbox .inside + .inside { margin: 3em 0 0; }
.detailbox h3 {
	color: #71ad46;
	line-height: 1.4;
	font-size: clamp(2rem, 2vw + 0.75rem, 2.4rem);
	font-weight: bold;
	text-align: center;
	margin: 0 0 1.5em;
}
.detailbox h4 {
	font-weight: bold;
	font-size: clamp(1.8rem, 2vw + 0.75rem, 2rem);
	line-height: 1.4;
	margin: 0 0 1em;
}
.detailbox h4 + p {
	font-size: clamp(1.4rem, 2vw + 0.5rem, 1.6rem);
}
#requirements {
	text-align: center;
}
#requirements .linkbt p + p { margin: 1em 0 0; }
#recruit_enquiry h4 { text-decoration: underline; }
.detailbox .telbox {
	background: var(--green-color);
	text-align: center;
	font-size: clamp(1.8rem, 2vw + 0.5rem, 2.8rem);
	padding: 10px;
	margin: 1em 0 0;
}
.detailbox .telbox p {
	color: #fff !important;
	line-height: 1.2;
}
.detailbox .telbox .telnum {
	display: inline-block;
	font-size: clamp(2.8rem, 2vw + 1.5rem, 4rem);
	margin: 0 0 10px;
}

@media (max-width: 767px) {
	.detailbox .inner { padding: 2em 1em; }
	.detailbox .img-right > figure { 
		text-align: center;
		margin: 1.5em 0 0; 
	}
}

@media (min-width: 768px) {
	.detailbox .inner { padding: 3em; }
	.detailbox .flexed {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.detailbox .flexed > * { width: 48%; }
	.detailbox .telbox .telnum { pointer-events: none; }
} 

/* ---------------------------------------- contact */

#contact { margin: 2em 0 3em; }

/* table */
#contact table { 
	color: #666;
	margin:0 0 24px 0; 
	width:100% !important; 
}
#contact td, #contact th { 
	border:1px solid #bbb; 
	padding:10px 15px; 
	line-height:2.4; 
	background:#fff; 
}
#contact th { 
	background:#ddd; 
	font-weight:normal !important; 
}

@media (max-width: 767px) {
	#contact table {
		border-top:1px solid #bbb; 
		border-right:1px solid #bbb; 
		border-left:1px solid #bbb; 
	}
	#contact td, #contact th { 
		display: block;
		border: none;
		border-bottom:1px solid #bbb; 
	}
}

#contact input[type="text"], 
#contact input[type="email"], 
#contact textarea,
#contact input[type="text"], 
#contact input[type="email"], 
#contact textarea {
	width: 100%;
	border: 1px #999 solid;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#contact .mwform-zip-field input[type="text"],
#contact .mwform-tel-field input[type="text"] {
	width: 15%;
}

#form-submits { 
	text-align:center; 
	margin: 30px auto 0 !important;
}

#form-submits input {
    display: inline-block;
    width: 225px;
    height: 48px;
	color: #fff;
    background-color: #333333;
    cursor: pointer;
    border: none !important;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    outline: none;
    -webkit-transition: all .3s;
    transition: all .3s;
}