@charset "UTF-8";

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

Recruit Page CSS

for domain
coded by d-spica at 2018-07-05

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


@import url(default.css);
@import url(https://fonts.googleapis.com/css?family=Anton);
@import url(https://use.fontawesome.com/releases/v5.1.0/css/all.css);
@import url(base.css);


section {
	margin: 3rem 0;
	font-size: 0.75rem;
}

section > div {
	margin: 0 auto;
	padding: 0 1rem;
	max-width: 49rem;
}

section > div:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}

section h2 {
	margin-bottom: 1.2em;
	text-align: center;
	font-size: 1.8rem;
	color: #007F66;
}

section p {
	margin-bottom: 2em;
	line-height: 2;
}

section section {
	margin-bottom: 2rem;
	padding: 0;
}

section section h3 {
	margin-bottom: 0.5em;
	font-size: 1.4rem;
	color: #007F66;
}

section p.image-left {
	float: left;
	max-width: 46%;
	margin: 0 2em 2em 0;
}

section p.image-right {
	float: right;
	max-width: 46%;
	margin: 0 0 2em 2em;
}

section p.image-center {
	text-align: center;
}

section p.signature {
	text-align: center;
}

section p.signature img {
	display: block;
	margin: 0 auto 1em;
}

section p.signature em {
	display: block;
	font-size: 140%;
}

section p.eyecatch {
	background-position: 50% 50%;
	background-size: cover;
	padding-bottom: 20rem;
}

section a.nav-button {
	display: inline-block;
	margin: 1em 0;
	border: solid 1px #007F66;
	background: #FFF;
	padding: 0.5em 1.2em;
	text-align: center;
	line-height: 1.4;
	font-size: 0.7rem;
	color: #007F66;
}

section a.nav-button::after {
	content: '';
	display: inline-block;
	margin-left: 0.4em;
	width: 0;
	height: 0;
	border: solid 5px;
	border-color: transparent transparent transparent #007F66;
}


section p.continue {
	margin: 4em 0 0;
	text-align: center;
}

section p.continue::after {
	content: '';
	display: inline-block;
	border: solid #339985;
	border-width: 0 3px 3px 0;
	width: 2em;
	height: 2em;
	transform: rotate(45deg);
}


section ul.simple {
	margin-bottom: 2em;
	padding-left: 1.5em;
	list-style: disc;
	line-height: 1.6;
}

section .simple li {
	margin-bottom: 0.3em;
}

section ul.recent {
	margin: 0 auto;
	max-width: 28rem;
	line-height: 1.6;
}

section .recent li {
	margin-bottom: 1em;
}

section .recent li b {
	display: inline-block;
	margin-right: 1em;
	background: #666;
	padding: 0.1em 1em;
	width: 6em;
	text-align: center;
	font-size: 80%;
	color: #FFF;
}

section .recent li b.aoba {
	background: #007F66;
}

section .recent li b.great {
	background: #61312E;
}

section dl.faq {
	margin-bottom: 2em;
}

section .faq dt {
	margin-bottom: 0.5em;
	padding-left: 1.6em;
	text-indent: -1.6em;
	line-height: 1.6;
	font-size: 110%;
}

section .faq dt::before {
	content: 'Q.';
	margin-right: 0.3em;
	font-size: 120%;
	font-weight: 700;
	color: #007F66;
}

section .faq dd {
	line-height: 2;
}

section .faq dd p {
	margin-bottom: 1em;
}

section dl.data {
	overflow: hidden;
	line-height: 1.8;
}

section .data dt {
	margin-bottom: 0.5em;
	border-bottom: solid 1px #339985;
}

section .data dt:before {
	content: '';
	display: inline-block;
	margin-right: 0.4em;
	background: #339985;
	width: 0.8em;
	height: 0.8em;
}

section a.link {
	color: #0A9DDD;
}

section a.link[target]::after {
	content: '\f061';
	margin-left: 0.5em;
	font-family: "Font Awesome 5 Free";
	font-weight: 700;
	color: #0A9DDD;
}

section a.link[target]::after {
	content: '\f35d';
}


section.eyecatch {
	position: relative;
	margin: 0;
	background-position: 50% 50%;
	background-size: cover;
	font-size: 1.2rem;
}

section.eyecatch > div {
	margin: 0 auto;
	padding: 13rem 1rem 0;
	height: 17rem;
}

section.eyecatch .nav-category {
	width: 11em;
	font-size: 1.2rem;
}

section.eyecatch .nav-category li {
	margin-bottom: 0.3em;
}

section.eyecatch .nav-category li em {
	display: block;
	background: rgba(0,127,102,0.90);
	padding: 1em 0.6em;
	font-size: 170%;
	color: #FFF;
}

section.eyecatch .nav-category li em.lines {
	padding: 0.3em 0.6em;
}

section.eyecatch .nav-category li a {
	display: block;
	background: rgba(255,255,255,0.80);
	padding: 0.4em 1em;
	color: #007F66;
}

section.summary ul.nav-page {
	margin-bottom: 2rem;
	text-align: center;
	font-size: 0.9rem;
}

section.summary .nav-page li {
	display: inline-block;
	margin: 0 0.3em;
	width: 20%;
	vertical-align: bottom;
	text-align: left;
}

section.summary .nav-page li a,
section.summary .nav-page li em {
	display: block;
	border: solid 1px #339985;
	padding: 1.5em 15% 0;
	height: 6em;
	white-space: nowrap;
	line-height: 1.2;
	color: #339985;
}

section.summary .nav-page li em {
	border-top-width: 1em;
}

section.summary .nav-page li b {
	display: block;
	margin-bottom: 0.3em;
	font-size: 170%;
}

section.summary ul.nav-section {
	margin-top: 3rem;
	text-align: center;
	font-size: 0.9rem;
}

section.summary .nav-section li {
	display: inline-block;
	margin: 0 0.3em;
	width: 20%;
	vertical-align: top;
	text-align: left;
}

section.summary .nav-section li a {
	display: block;
	position: relative;
	border: solid #339985;
	border-width: 1px 1px 20px;
	padding: 1.5em 12% 0;
	height: 6em;
	line-height: 1.2;
	color: #339985;
}

section.summary .nav-section li b {
	display: block;
	margin-bottom: 0.3em;
	font-size: 170%;
}

section.summary .nav-section li a::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -13px;
	left: 50%;
	margin-left: -10px;
	border: solid #FFF;
	border-width: 0 2px 2px 0;
	width: 12px;
	height: 12px;
	transform: rotate(45deg);
}

section.summary ul.nav-section2 {
	margin-top: 3rem;
	text-align: center;
	font-size: 0.6rem;
}

section.summary .nav-section2 li {
	display: inline-block;
	margin: 0 0.3em;
	width: 20%;
	vertical-align: top;
	text-align: left;
}

section.summary .nav-section2 li a {
	display: block;
	position: relative;
	background: #F2F2F2;
	border-bottom: solid 20px #339985;
	padding: 0 7% 0.5em;
	line-height: 1.4;
}

section.summary .nav-section2 li img {
	display: block;
	margin: 0 -8% 0.5em;
	max-width: none;
	width: 116%;
}

section.summary .nav-section2 li em {
	font-size: 170%;
}

section.summary .nav-section2 li a::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -13px;
	left: 50%;
	margin-left: -10px;
	border: solid #FFF;
	border-width: 0 2px 2px 0;
	width: 12px;
	height: 12px;
	transform: rotate(45deg);
}


section.simple header {
	margin-bottom: 2rem;
	background-position: 50% 50%;
	background-size: cover;
	padding: 14.5rem 1rem 2rem;
	text-align: center;
}

section.simple header h2 {
	display: inline-block;
	margin-bottom: 0;
	background: rgba(255,255,255,0.8);
	padding: 0.6em 1em;
}

section.data > div {
	max-width: 36rem;
}

section.data h2 {
	margin-bottom: 0.3em;
	text-align: left;
}

section.data dl {
	border-top: solid 1px #339985;
	line-height: 1.6;
}

section.data dt {
	padding: 1em;
}

section.data dt:before {
	content: '';
	display: inline-block;
	margin-right: 0.4em;
	background: #339985;
	width: 0.8em;
	height: 0.8em;
}

section.data dd {
	margin-top: -3.6em;
	border-bottom: solid 1px #339985;
	padding: 1em 1em 1em 10em;
}

section.data dd p {
	margin-bottom: 0;
	line-height: 1.6;
}

section.job {
	border-top: solid 1.2em rgba(0,127,102,0.7);
}

section.job header {
	position: relative;
	margin-bottom: 2rem;
	background-position: 50% 50%;
	background-size: cover;
	padding: 14.5rem 1rem 2rem;
	text-align: center;
}

section.job h2 {
	display: inline-block;
	margin-bottom: 0;
	background: rgba(255,255,255,0.8);
	padding: 0.6em 1em;
}

section.job .name {
	position: absolute;
	top: 0;
	right: 50%;
	margin-right: -23rem;
	background: #FFF;
	padding: 1em 1.5em;
	line-height: 1.4;
	text-align: left;
	font-size: 0.7rem;
}
	
section.job .name em {
	font-size: 200%;
}

section.job p.image-left {
	max-width: 60%;
	margin-left: -5%;
}

section.job p.image-right {
	max-width: 60%;
	margin-right: -5%;
}

section.job p.image-left ~ dl.faq {
	margin-left: 59%;
}


section.voice {
	border-top: solid 1.2em rgba(0,127,102,0.7);
}

section.voice header {
	position: relative;
	margin-bottom: 2rem;
	background-size: cover;
	padding: 0 1rem 21rem;
}

section.voice header.left {
	background-position: 70% 50%;
}

section.voice header.right {
	background-position: 30% 50%;
}

section.voice h2 {
	position: absolute;
	top: 8.5rem;
	margin-bottom: 0.5em;
}

section.voice .left h2 {
	left: 50%;
	margin-left: -23rem;
	text-align: left;
}

section.voice .right h2 {
	right: 50%;
	margin-right: -23rem;
	text-align: right;
}

section.voice .name {
	position: absolute;
	top: 0;
	background: #FFF;
	padding: 1em 1.5em;
	line-height: 1.4;
	font-size: 0.9rem;
}

section.voice .left .name {
	left: 50%;
	margin-left: -23rem;
}

section.voice .right .name {
	right: 50%;
	margin-right: -23rem;
}

section.voice .name em {
	font-size: 150%;
}

section.voice .nav-movie {
	position: absolute;
	top: 17rem;
}

section.voice .left .nav-movie {
	left: 50%;
	margin-left: -23rem;
}

section.voice .right .nav-movie {
	right: 50%;
	margin-right: -23rem;
}

section.voice .nav-movie a {
	display: inline-block;
	border: solid 1px #007F66;
	background: url(../img/mk-movie.png) no-repeat 1em 50%;
	background-size: 1.9em auto;
	padding: 0.5em 1em 0.5em 3.2em;
	color: #007F66;
}
	
section.voice p.image-left {
	max-width: none;
	width: 48%;
	margin: 0 4% 4em 0;
}

section.voice p.image-right {
	max-width: none;
	width: 48%;
	margin: 0 0 2em 4%;
}

section.voice p.image-left ~ dl.faq {
	margin-left: 52%;
}

section.voice .movie {
	display: none;
}

#movie01 iframe,
#movie02 iframe,
#movie03 iframe,
#movie04 iframe {
	max-width: 100%;
}



section.message {
	background: #F2F2F2;
	padding: 2em 1rem;
}

section.message > div {
	overflow: hidden;
}

section.message p {
	float: left;
	margin-right: 2em;
	margin-bottom: 0;
	width: 7.5rem;
}

section.message dt {
	margin-bottom: 0.5em;
	line-height: 1.6;
	font-size: 110%;
	color: #007F66;
}

section.message dd {
	overflow: hidden;
	line-height: 1.8;
}


section.contact {
	overflow: hidden;
	background: #F2F2F2;
	padding: 1.5rem 0;
}

section.contact .logo {
	display: inline-block;
	margin-bottom: 0;
	margin-right: 1rem;
	width: 7.5rem;
	vertical-align: middle;
}

section.contact dl {
	display: inline-block;
	vertical-align: middle;
}

section.contact dt {
	margin-bottom: 0.5em;
	font-size: 110%;
	color: #007F66;
}

section.contact .tel {
	font-size: 240%;
	color: #007F66;
}

section.contact .tel::before {
	content: '\f098';
	margin-right: 0.4em;
	font-family : "Font Awesome 5 Free";
	font-weight: 700;
}



section.search {
	padding-top: 3rem;
	border-top: solid 1px rgba(0,127,102,0.7);
}

section.search#s01 {
	border-top: solid 1.2em rgba(0,127,102,0.7);
}

section.search h2 {
	font-size: 1.2rem;
}

section.search h2 b {
	display: block;
	font-size: 150%;
}

section.search ul {
	margin: 0 -1%;
	text-align: center;
}

section.search li {
	display: inline-block;
	position: relative;
	margin: 0 0.5% 1.5em;
	width: 13em;
	vertical-align: top;
	text-align: left;
	font-size: 120%;
}

section.search li em {
	display: block;
	position: relative;
	border: solid #339985;
	border-width: 1px 26px 1px 1px;
	padding: 1.2em 0.8em;
	white-space: nowrap;
	line-height: 1.2;
	color: #339985;
}

section.search li em::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: -20px;
	margin-top: -5px;
	border: solid #FFF;
	border-width: 2px 0 0 2px;
	width: 12px;
	height: 12px;
	transform: rotate(45deg);
}

section.search li em.close::after {
	margin-top: -10px;
	border-width: 0 2px 2px 0;
}

section.search li ul {
	position: absolute;
	top: 3.6em;
	left: 0;
	z-index: 1;
	margin: 0;
	border: solid 1px #339985;
	background: #FFF;
	width: 99%;
}

section.search li li {
	margin: 0;
	font-size: 100%;
}

section.search li li a {
	display: block;
	position: relative;
	padding: 0.6em 0.8em;
	white-space: nowrap;
	line-height: 1.2;
	color: #339985;
}

section.search li li a::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -5px;
	border: solid #339985;
	border-width: 2px 2px 0 0;
	width: 6px;
	height: 6px;
	transform: rotate(45deg);
}

section.search form p {
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	max-width: 23rem;
	border: solid 1px #339985;
	line-height: 1;
	font-size: 120%;
}

section.search form [type="text"] {
	border: none;
	outline: none;
	padding: 0.8em;
	width: 80%;
}

section.search form [type="submit"] {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin-top: -1.7em;
	border: none;
	border-radius: 0;
	background: #339985 url(../img/mk-search.png) no-repeat 50% 50%;
	background-size: 2em auto;
	width: 3.15em;
	height: 3.4em;
	color: #FFF;
}




@media all and (max-width:1520px) {
	

	
}

@media all and (max-width:1020px) {
	
	section p.eyecatch {
		padding-bottom: 36%;
	}

	section.summary .nav-section2 li {
		margin: 0 0.2em;
	}

	section.simple header {
		padding: 26% 1rem 4%;
	}

	section.job header {
		padding: 26% 1rem 4%;
	}

	section.job .name {
		right: 1rem;
		margin-right: 0;
	}

	section.job p.image-left {
		margin-left: -1rem;
	}

	section.job p.image-right {
		margin-right: -1rem;
	}

	section.job p.image-left ~ dl.faq {
		margin-left: 62%;
	}

	section.voice h2 {
		text-shadow: -2px -2px 2px #FFF, 2px 2px 2px #FFF, -2px 2px 2px #FFF, 2px -2px 2px #FFF;
	}
	
	section.voice .left h2,
	section.voice .left .name,
	section.voice .left .nav-movie {
		left: 1rem;
		margin-left: 0;
	}

	section.voice .right h2,
	section.voice .right .name,
	section.voice .right .nav-movie {
		right: 1rem;
		margin-right: 0;
	}


}


@media all and (max-width:800px) {

	section h2 {
		font-size: 1.5rem;
	}
	
	section.eyecatch > div {
		padding-top: 7rem;
		height: 16rem;
	}

	section.summary .nav-section li {
		margin-bottom: 0.5em;
		width: 40%;
	}

	section.job p.image-left {
		max-width: 40%;
	}

	section.job p.image-right {
		max-width: 40%;
	}
	
	section.job p.image-left ~ dl.faq {
		margin-left: 42%;
	}

	section.voice header {
		padding-bottom: 19rem;
	}

	section.voice .nav-movie {
		top: 15.5rem;
	}


}


@media all and (max-width:580px) {
	

	section h2 {
		font-size: 1.2rem;
	}
	
	section p.image-left,
	section p.image-right {
		float: none;
		max-width: 100%;
		margin: 0 0 2em;
		text-align: center;
	}

	section.eyecatch > div {
		height: 12rem;
	}

	section.eyecatch .nav-category {
		font-size: 0.9rem;
	}

	section.summary .nav-page li {
		margin-bottom: 0.5em;
		width: 40%;
	}

	section.summary .nav-page li em,
	section.summary .nav-page li a {
		padding-top: 1em;
	}

	section.summary .nav-section2 li {
		margin-bottom: 0.5em;
		width: 40%;
	}

	section.data dd {
		margin-top: -1.5em;
		padding-left: 2em;
	}

	section.simple header {
		padding: 7.5rem 1rem 1rem;
	}

	section.job header {
		padding: 7.5rem 1rem 1rem;
	}

	section.job p.image-left {
		max-width: 100%;
		margin-left: 0;
	}

	section.job p.image-right {
		max-width: 100%;
		margin-right: 0%;
	}

	section.job p.image-left ~ dl.faq {
		margin-left: 0;
	}

	section.voice header {
		padding-bottom: 17.5rem;
	}

	section.voice h2 {
		top: 9.5rem;
		font-size: 0.9rem;
	}

	section.voice .name {
		font-size: 0.6rem;
	}

	section.voice .nav-movie {
		top: 14.5rem;
		font-size: 0.6rem;
	}

	section.voice .nav-movie a {
		background-color: rgba(255,255,255,0.8);
	}
	
	section.voice p.image-left,
	section.voice p.image-right {
		margin: 0 0 2em;
		max-width: 100%;
		width: auto;
		text-align: center;
	}

	section.voice p.image-left img,
	section.voice p.image-right img {
		width: 340px;
	}

	section.voice p.image-left ~ dl.faq {
		margin-left: 0;
	}

	section.message p {
		float: none;
		margin-right: 0;
		margin-bottom: 1em;
	}

	section.contact .logo {
		display: block;
		margin-bottom: 1em;
	}

	section.contact dl {
		display: block;
	}


	

}

