@charset "UTF-8";

#index_top {
	position:relative;
	width:100vw;
	height:100vh;
	font-weight:600;
	min-height:500px;
	overflow:hidden;
	text-shadow:0 0 3px #000;
	z-index:-1;
}

#index_top > img {
	width: 100%;
	height:100%;
	object-fit:cover;
	object-position:bottom center;
	position:absolute;
	left:0;
	top:0;
}

#index_top > div {
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	padding:30px 16px;
	color:#fff;
}

#index_top > div > div {
	width:100%;
	max-width:1024px;
	margin:auto;
}

#index_title {
	font-size:38px;
	line-height:1.5em;
	margin-bottom:20px;
}

#index_title + p {
	margin-top:20px;
	font-size:24px;
	line-height:1.5em;
}

#index_title + p + div {
	margin-top:20px;
}

#index_title + p + div > p + p {
	margin-top:12px;
}

#company {
	background-color:#f4f2ee;
}

#vacation {
	background-color:#e8ebe2;
}

#recruit {
	background-image:url(images/recruit.jpg);
	background-size:cover;
}

#recruit > div {
	backdrop-filter:brightness(50%);
	-webkit-backdrop-filter:brightness(50%);
}

#recruit h2, #recruit p {
	color:#fff;
}

#recruit > div > div > div {
	width:50%;
	margin:-120px 0 0 45%;
	background-color:rgba( 255,255,255,0.7 );
	padding:30px;
	color:#000;
}

#recruit h3 + p {
	color:#000;
	font-size:38px;
	line-height:1.3em;
	margin-bottom:20px;
	font-weight:600;
}

#recruit > div > div > div a:link, #recruit > div > div > div a:visited {
	width:150px;
	line-height:2.8em;
	background-color:#c46a2d;
	color:#fff;
	text-align:center;
	display:block;
	margin:30px auto 0 auto;
	border:2px solid #fff;
	border-radius:1.4em;
}

.index_content {
	padding-bottom:80px;
}

.index_content > div {
	width:100%;
	max-width:1056px;
	padding:20px 16px;
	margin:auto;
	text-align:left;
}

.index_content > div > h2 {
	font-size:22px;
	line-height:1.6em;
	color:#1f3a5f;
	margin-top:50px;
}

.index_content > div > h2 + p {
	font-size:68px;
	line-height:1.5em;
	margin-bottom:50px;
}

div.index_list {
	position:relative;
}

div.index_list > img {
	width:60%;
	position:relative;
	z-index:1;
}

div.index_list > div {
	width:55%;
	background-color:#fff;
	position:absolute;
	right:0;
	top:50%;
	padding:40px;
	transform: translateY( -50% );
	z-index:10;
}

div.index_content > div > div:nth-of-type( 2n+2 ) > img {
	margin-left:40%;
}

div.index_content > div > div:nth-of-type( 2n+2 ) > div {
	left:0;
	right:auto;
}

div.index_list + div.index_list {
	margin-top:60px;
}

.index_list h3 > p:nth-of-type(2) {
	font-size:32px;
	font-weight:600;
	line-height:1.6em;
	margin-bottom:20px;
}

.index_list h3 + div > a:link, .index_list h3 + div > a:visited {
	display:block;
	margin:30px auto 0 auto;
	width:130px;
	background-color:#1f3a5f;
	border:2px solid #1f3a5f;
	color:#fff;
	line-height:40px;
	border-radius:20px;
	text-align:center;
}

.index_list h3 + div > a:hover, .index_list h3 + div > a:active {
	background-color:#fff;
	color:#1f3a5f;
}

.index_list h3 + div > a.index_btn2:link, .index_list h3 + div > a.index_btn2:visited {
	color:#000;
	border:2px solid #e8ebe2;
	background-color:#fff;
}

.index_list h3 + div > a.index_btn2:hover, .index_list h3 + div > a.index_btn2:active {
	background-color:#1f3a5f;
	border:2px solid #1f3a5f;
	color:#fff;
}

#index_about {
	display:flex;
	align-items:center;
}

#index_about > div:first-of-type {
	width:40%;
}

#index_about > div:last-of-type {
	width:60%;
}

#index_about iframe {
	width: 100%;
	height:350px;
}

#index_about dl {
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}

#index_about dl > dt {
	width:25%;
}

#index_about dl > dd {
	width:75%;
}

#inquiry {
	background-color:#d4e0e3;
}

#inquiry h2, #inquiry h2 + p {
	text-align:center;
}

#index_form {
	max-width:640px;
	padding:50px 60px;
	margin:auto;
	background-color:#fff;
}

#index_form dt {
	font-family:'Zen Kaku Gothic New';
	padding-bottom:4px;
}

#index_form dt:nth-of-type( n+2 ) {
	margin-top:27px;
}

#index_form input[type="text"], #index_form textarea {
	padding:8px 8px;
	font-size:15px;
	line-height:1.5em;
}

#index_form a:link, #index_form a:visited {
	margin:36px auto 0 auto;
	display:block;
	width:180px;
	background-color:#000;
	color:#fff;
	text-align:center;
	line-height:40px;
	font-family:'Zen Kaku Gothic New';
	font-size:15px;
	border:1px solid #000;
}

#index_form a:hover, #index_form a:active {
	background-color:#d4e0e3;
	color:#000;
}

.index_hissu {
	color:#f00;
}

#index_form + p {
	text-align:center;
	margin-top:12px;
}

@media screen and ( max-width:650px ) {
	.index_content > div > h2 {
		font-size:20px;
		line-height:1.6em;
		margin-top:30px;
	}

	.index_content > div > h2 + p {
		font-size:28px;
		line-height:1.5em;
		margin-bottom:20px;
	}
	div.index_list > img {
		width:100%;
	}
	div.index_list > div {
		width:100%;
		position:relative;
		top:0;
		padding:20px;
		transform: translateY(0);
	}
	.index_content {
		padding-bottom:40px;
	}
	div.index_content > div > div:nth-of-type( 2n+2 ) > img {
		margin-left:0;
	}
	div.index_list + div.index_list {
		margin-top:30px;
	}
	.index_list h3 > p:nth-of-type(2) {
		font-size:24px;
	}
	#index_form {
		padding:50px 20px;
	}
	#index_form + p {
		text-align:left;
	}
	#index_about {
		display:block;
	}

	#index_about > div:first-of-type {
		width:100%;
	}

	#index_about > div:last-of-type {
		margin-top:16px;
		width:100%;
	}
	#recruit > div > div > div {
		width:100%;
		margin:20px 0 0 0;
	}
	#recruit h3 + p {
		font-size:28px;
	}
}
