@charset "utf-8";

/*===========================================================

eyecatch

============================================================= */
#eyecatch {
	position:relative;
}

#eyecatch .catch_img {
	width:100%;
	height:100%;
	text-align:center;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
}

#eyecatch .catch_img img {
	max-width:80%;
	max-height:70%;
	height:auto;
	width:auto;
	position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.slick-dotted.slick-slider {
	margin-bottom:0;
}

#slider .slick-slide img.spc {
	width:100%;
	height:100vh;
	min-height:600px;
}

#slider .slide1 {
	background:url(../img/slide1.jpg) center no-repeat;
	background-size:cover;
}

#slider .slide2 {
	background:url(../img/slide2.jpg) center no-repeat;
	background-size:cover;
}

#slider .slide3 {
	background:url(../img/slide3.jpg) center no-repeat;
	background-size:cover;
}

.slick-dots {
	width:100%;
	height:8px;
	text-align: center;
	position:absolute;
	left:0;
	right:0;
	bottom:60px;
	z-index:20;
}

.slick-dots li {
	width:8px;
	height:8px;
	overflow:hidden;
	position:relative;
}

.slick-dots li button {
	width:8px;
	height:8px;
	padding:0;
	position:absolute;
	top:0;
	left:0;
}
.slick-dots li button:before {
	content:'';
	border-radius:99px;
	padding:0;
	width:8px;
	height:8px;
	background:#fff;
	border:1px solid #707070;
	opacity:1;
}
.slick-dots .slick-active button:before {
	background:#E83416;
}

#eyecatch .scroll_box {
	width:100%;
	padding-bottom:20px;
	position:absolute;
	text-align:center;
	bottom:0;
	left:0;
	z-index:10;
}
#eyecatch .scroll_box a {
	color:#606060;
	letter-spacing:2px;
	font-size:1.4rem;
}

#eyecatch .scroll_box:after {
	display:block;
	content:'';
	width:1px;
	height:40px;
	position:absolute;
	bottom:-20px;
	left:50%;
	background:#606060;
}

@media screen and (max-width:640px){
	#slider .slick-slide img.spc {
		height:70vh;
		min-height:auto;
	}
}

/*===========================================================

content

============================================================= */
#content {
	margin-top:20px;
	background:url(../img/content_bg.jpg) left top repeat;
}

#content .config {
	width:94%;
	max-width:1200px;
	margin:0 auto;
}

@media screen and (max-width:560px){
	#content {
		background:none;
	}
	#content .config {
		width:100%;
	}
}

/* aboutus */
#content .aboutus {
	width:100%;
	background:url(../img/aboutus_bg.jpg) center no-repeat;
	background-size:cover;
}

#content .aboutus .text_wrap {
	width:86%;
	max-width:582px;
	margin:0 auto;
	padding:130px 0;
	position:relative;
	background:rgba(5,48,91,0.5);
	text-align:center;
}

#content .aboutus .text_wrap p {
	color:#fff;
	margin-bottom:2em;
}

#content .aboutus .text_wrap:after {
	display:block;
	content:'';
	width:1px;
	height:110px;
	position:absolute;
	top:0;
	left:50%;
	background:#fff;
}

#content .aboutus .text_wrap:before {
	display:block;
	content:'';
	width:1px;
	height:110px;
	position:absolute;
	bottom:0;
	left:50%;
	background:#fff;
}

@media screen and (max-width:560px){
	#content .aboutus .text_wrap {
		padding:80px 0;
	}
	#content .aboutus .text_wrap:after,
	#content .aboutus .text_wrap:before {
		height:70px;
	}
	#content .aboutus .text_wrap p {
		font-size:1.4rem;
	}
	#content .aboutus a {
		font-size:1.4rem;
	}
}

@media screen and (max-width:440px){
	#content .aboutus .text_wrap p,
	#content .aboutus a {
		font-size:1.2rem;
	}
}

/* aboutjobs */
#content .aboutjobs {
	margin-top:12px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	-moz-justify-content:space-between;
	-ms-justify-content:space-between;
	justify-content:space-between;
}

#content .aboutjobs > * {
	width:calc( (100% - 16px) / 3);
	min-height:260px;
	margin-top:8px;
}

#content .aboutjobs .sp_only {
	display:none;
}

#content .aboutjobs .list_more {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction:column;
	-moz-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-align-items:center;
	-moz-align-items:center;
	-ms-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
	background:#87C2D9;
}

#content .aboutjobs .list_more * {
	color:#fff;
	
}

#content .aboutjobs .list_more .en {
	font-size:1.2rem;
	letter-spacing:2px;
}

#content .aboutjobs .list_more h4 {
	font-size:2.4rem;
	font-weight:bold;
	margin-bottom:15px;
}

#content .aboutjobs .list_more p {
	font-size:1.4rem;
}

#content .aboutjobs .list_more .btn_type1 {
	width:200px;
	max-width:90%;
	margin-top:10%;
}

#content .aboutjobs .list_more .btn_type1 a {
	display:block;
	line-height:1;
	text-align:center;
	padding:0.5em 0;
	font-size:1.4rem;
}

#content .liner {
	position:relative;
	overflow:hidden;
	cursor:pointer;
}

#content .liner .line_r,
#content .liner .line_l {
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:1;
}

#content .liner .line_l:after {
	display:block;
	content:'';
	width:100px;
	height:8px;
	background:#87C2D9;
	position:absolute;
	top:0;
	left:0;
	transition: 0.5s;
}

#content .liner .line_l:before {
	display:block;
	content:'';
	width:8px;
	height:100px;
	background:#87C2D9;
	position:absolute;
	top:0;
	left:0;
	transition: 0.5s;
}

#content .liner:hover .line_l:after {
	width:100%;
}

#content .liner:hover .line_l:before {
	height:100%;
}

#content .liner .line_r:after {
	display:block;
	content:'';
	width:100px;
	height:8px;
	background:#87C2D9;
	position:absolute;
	bottom:0;
	right:0;
	transition: 0.5s;
}

#content .liner .line_r:before {
	display:block;
	content:'';
	width:8px;
	height:100px;
	background:#87C2D9;
	position:absolute;
	bottom:0;
	right:0;
	transition: 0.5s;
}

#content .liner:hover .line_r:after {
	width:100%;
}

#content .liner:hover .line_r:before {
	height:100%;
}

#content .liner .off {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:1.5em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-flex-direction:column;
	-moz-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-justify-content:flex-end;
	-moz-justify-content:flex-end;
	-ms-justify-content:flex-end;
	justify-content:flex-end;
	-webkit-align-items:flex-end;
	-moz-align-items:flex-end;
	-ms-align-items:flex-end;
	align-items:flex-end;
	transition: 0.3s;
	overflow:hidden;
}

#content .liner:hover .off {
	top:-100%;
}

#content .liner .off h4 {
	font-size:2.6rem;
	text-align:right;
	line-height:1.2;
	margin-bottom:10px;
	color:#fff;
	font-weight:500;
}

#content .liner .off .label {
	color:#fff;
	display:inline-block;
	line-height:1;
	padding:0.4em 3em;
	border:1px solid #fff;
	font-size:1.4rem;
}


#content .liner .on {
	position:absolute;
	top:100%;
	left:0;
	width:100%;
	height:100%;
	padding:1.5em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-flex-direction:column;
	-moz-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
	-webkit-align-items:center;
	-moz-align-items:center;
	-ms-align-items:center;
	align-items:center;
	background:rgba(5,48,91,0.75);
	transition: 0.3s;
}

#content .liner:hover .on {
	top:0;
}

#content .liner .on * {
	color:#fff;
}

#content .liner .on h4 {
	font-size:2.4rem;
	line-height:1.2;
	margin-bottom:10px;
	text-align:center;
	font-weight:500;
}

#content .liner .on .label {
	display:block;
	width:80%;
	text-align:center;
	font-size:1.2rem;
	line-height:1;
	padding:0.4em 1em;
	border:1px solid #fff;
}

#content .liner .on p {
	font-size:1.2rem;
	margin-top:10px;
}

#content .liner .on .link {
	position:absolute;
	bottom:1.5em;
	left:0;
	right:0;
	text-align:center;
}

#content .liner .on .link a {
	font-size:1.4rem;
}

#content .job1 {
	background:url(../img/job1_bg.jpg) center no-repeat;
	background-size:cover;
}

#content .job2 {
	background:url(../img/job2_bg.jpg) center no-repeat;
	background-size:cover;
}

#content .job3 {
	background:url(../img/job3_bg.jpg) center no-repeat;
	background-size:cover;
}

#content .job4 {
	background:url(../img/job4_bg.jpg) center no-repeat;
	background-size:cover;
}

#content .job5 {
	background:url(../img/job5_bg.jpg) center no-repeat;
	background-size:cover;
}

@media screen and (max-width:1100px){
	#content .aboutjobs > * {
		width:calc( (100% - 8px) / 2);
	}
}

@media screen and (max-width:768px){
	#content .aboutjobs {
		margin-top:60px;
	}
	#content .aboutjobs .list_more {
		padding:2em 0;
	}
	#content .aboutjobs > * {
		width:100%;
		min-height:auto;
		margin-top:10px;
	}
	#content .aboutjobs .list_more .btn_type1 {
		display:none;
	}
	#content .liner .line_r {
		display:none;
	}
	
	#content .liner .line_l:after,
	#content .liner:hover .line_l:after {
		width:80px;
		height:6px;
	}
	
	#content .liner .line_l:before,
	#content .liner:hover .line_l:before {
		height:80px;
		width:6px;
	}
	#content .liner .off {
		position:static;
		display:block;
		text-align:right;
		height:auto;
		padding:2em 1.5em;
	}
	#content .liner .on {
		position:static;
		width:100%;
		height:auto;
		padding:0.5em 1em;
		-webkit-justify-content:space-between;
		-moz-justify-content:space-between;
		-ms-justify-content:space-between;
		justify-content:space-between;
		-webkit-flex-direction:row;
		-moz-flex-direction:row;
		-ms-flex-direction:row;
		flex-direction:row;
	}
	
	#content .liner .on h4 {
		display:none;
	}
	
	#content .liner .on p {
		margin:0;
	}
	
	#content .liner .on .label {
		display:none;
	}
	#content .liner .on .link {
		position:static;
		display:inline-block;
	}
	
	#content .liner .on .link a {
		font-size:1.2rem;
	}
	
	#content .aboutjobs .sp_only{
		display:block;
		background:#87C2D9;
		text-align:center;
		padding:1em 0;
	}
	
	#content .aboutjobs .sp_only .btn_type1 a{
		width:80%;
		max-width:200px;
		padding:0.4em 0;
	}
}

@media screen and (max-width:560px){
	#content .liner .off {
		padding:1.5em;
	}
}

@media screen and (max-width:440px){
	#content .liner .off h4 {
		font-size:2rem;
		font-weight:bold;
	}
	#content .liner .off .label {
		font-size:1.2rem;
	}
	#content .liner .on {
		display:block;
		padding:0.5em;
	}
	#content .liner .on .link {
		display:block;
		text-align:right;
	}
	#content .liner .on .link a {
		font-weight:bold;
	}
}


/* voice */
#content .voice {
	margin-top:20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	-moz-justify-content:space-between;
	-ms-justify-content:space-between;
	justify-content:space-between;
}

#content .voice > * {
	width:calc( (100% - 16px) / 3);
	min-height:260px;
}

#content .voice .sp_only {
	display:none;
}

#content .voice .list_more {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction:column;
	-moz-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-align-items:center;
	-moz-align-items:center;
	-ms-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
	background:#5B89B9;
	order:2;
}

#content .voice .list_more * {
	color:#fff;
	
}

#content .voice .list_more .en {
	font-size:1.2rem;
	letter-spacing:2px;
}

#content .voice .list_more h4 {
	font-size:2.4rem;
	font-weight:bold;
	margin-bottom:10px;
}

#content .voice .list_more p {
	font-size:1.4rem;
	text-align:center;
}

#content .voice .list_more .btn_type1 {
	width:200px;
	max-width:90%;
	margin-top:20px;
}

#content .voice .list_more .btn_type1 a {
	display:block;
	line-height:1;
	text-align:center;
	padding:0.5em 0;
	font-size:1.4rem;
}

#content .voice .single {
	position:relative;
	cursor:pointer;
}

#content .voice .single:hover {
	opacity:0.8;
}

#content .voice .single a {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	width:100%;
	background:rgba(5,48,91,0.6);
	color:#fff;
	line-height:1.4;
	font-size:1.4rem;
	padding:0.5em 0;
	text-align:center;
}

#content .voice .voice1 {
	background:url(../img/voice1_bg.jpg) top center no-repeat;
	background-size:cover;
	order:3;
}

#content .voice .voice2 {
	background:url(../img/voice2_bg.jpg) top center no-repeat;
	background-size:cover;
	order:1;
}

#content .voice .sp_only {
	display:none;
}

@media screen and (max-width:830px){
	#content .voice .list_more {
		width:40%;
	}
	#content .voice .single {
		width:calc( (60% - 16px) / 2);
	}
}

@media screen and (max-width:768px){
	#content .voice .list_more {
		width:100%;
		order:1;
		min-height:auto;
		padding:2em 0;
	}
	#content .voice .list_more .btn_type1 {
		display:none;
	}
	#content .voice {
		margin-top:60px;
	}
	#content .voice .single {
		width:calc( (100% - 8px) / 2);
		margin-top:8px;
	}
	#content .voice .sp_only {
		display:block;
		width:100%;
		margin-top:8px;
		background:#5B89B9;
		text-align:center;
		padding:1em 0;
		order:4;
		min-height:auto;
	}
	
	#content .voice .sp_only .btn_type1 a{
		width:80%;
		max-width:200px;
		padding:0.4em 0;
	}
}


/* other_cnt */
#content .other_cnt {
	margin-top:70px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}

#content .other_cnt > * {
	width:calc( (100% - 16px) / 3);
	min-height:260px;
}

#content .other_cnt > * {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-direction:column;
	-moz-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	-webkit-align-items:center;
	-moz-align-items:center;
	-ms-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}

#content .other_cnt > * + * {
	margin-left:8px;
}

#content .other_cnt > * * {
	color:#fff;
	
}

#content .other_cnt > * .en {
	font-size:1.2rem;
	letter-spacing:2px;
}

#content .other_cnt > * h4 {
	font-size:2.4rem;
	font-weight:bold;
	margin-bottom:10px;
}

#content .other_cnt > * p {
	font-size:1.4rem;
	text-align:center;
}

#content .other_cnt > * .btn_type1 {
	width:200px;
	max-width:90%;
	margin-top:20px;
}

#content .other_cnt > * a {
	display:block;
	line-height:1;
	text-align:center;
	padding:0.5em 0;
	font-size:1.4rem;
}

#content .other_cnt .culture {
	background:#93CE8F;
}

#content .other_cnt .joblist {
	background:#83C6BE;
}

@media screen and (max-width:1100px){
	#content .other_cnt > * {
		width:45%;
	}
}

@media screen and (max-width:768px){
	#content .other_cnt > * {
		width:calc( (100% - 8px) / 2);
	}
}

@media screen and (max-width:680px){
	#content .other_cnt > * {
		width:100%;
		min-height:auto;
		padding:2em 0;
		margin-left:0;
	}
	#content .other_cnt > * + * {
		margin-top:10px;
	}
}