@charset "UTF-8";
/*---------------------------------------------------------
	NEWS 
---------------------------------------------------------*/
@import url('_news_parts.css');

/*---------------------------------------------------------
	COMMON
---------------------------------------------------------*/
.section_content h3{
	line-height: var(--base-65);
	padding-left: var(--base-40)
}
@media screen and (max-width: 576px) {
	.section_content h3{
		padding-left: 0;
		margin-bottom: var(--base-16);
	}
}
/*---------------------------------------------------------
	MAIN SLIDER
---------------------------------------------------------*/
.slider_wrap{
	position: relative;
}
.main_slider_wrap .slider_wrap .slider_txt{
	position:absolute;
	top: min(31.5625vw, 404px);
	left: min(12.5vw, 160px);
}
.main_slider_wrap .slider_wrap .slider_catch{	
	position: relative;	
	font-size: min(4.84375vw, 62px);
	line-height: min(5.8125vw, 74.4px);
	font-weight:700;
	letter-spacing:0.05vw;
	margin-bottom: min(2.109375vw, 27px);
	z-index: 1;
}
.main_slider_wrap .slider_wrap .slider_cap{
	position: relative;	
	font-weight: 300;
	font-size: var(--base-18);
	line-height: min(1.6875vw, 21.6px);
	letter-spacing:0.08vw;
	z-index: 2;
}
.main_slider_wrap .slider_wrap .slider_logo{
	position:absolute;
	top: calc(min(19.375vw, 248px) * -1);
	left: calc(min(8.28125vw, 106px) * -1);
	width: min(63.671875vw, 815px);
	z-index: 0;
}
.main_slider_wrap .slider_wrap .slider_logo img{
	opacity: 0.3;
}
.slide-dots {
	margin: 0;
	padding: 0;
	text-align: center;
}
.slide-dots li {
	display: inline-block;
	margin: 0 var(--base-4);
}
.slide-dots li button {
	position: relative;
	text-indent: -9999px;
}
.slide-dots li button::before {
	background-color: var(--base-color-white);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	cursor: pointer;
	height: var(--base-4);
	/*width: min(4.921875vw, 63px);*/
	border-radius: var(--base-4);
	margin: auto;
	position: absolute;
	right: 0;
	left: 0;
	bottom: var(--base-45);
}
.slide-dots li.slick-active button::before {
	background-color: var(--base-color-green);
}
.main_slider button {
	background: none;
	border: none;
	outline: none;
	width: min(4.921875vw, 63px);
}
@media screen and (min-width: 1280px){
  .main_slider_wrap .slick-list{
    max-height: 896px;
    overflow: hidden;
  }
  .main_slider img.slider_img{
	width: 100%;
    position:relative;
    top: calc((100vw - 1280px)/2 * -1);
  }
}
@media screen and (max-width: 576px) {
	.main_slider_wrap .slider_wrap .slider_catch{
		left: calc(var(--base-50) * -1);
	}
	.main_slider_wrap .slider_wrap .slider_cap{
		left: calc(var(--base-50) * -1);
		font-size: var(--base-14);
		line-height: var(--base-18);
	}
}
/*---------------------------------------------------------
	SECTION SLIDER
---------------------------------------------------------*/
.section_slider_wrap{
	position: relative;
	margin-bottom: var(--base-100);
}
.section_slider_wrap .slider_wrap{
	margin: 5vw 4vw 4vw;
}
.section_slider .slick-center .slider_wrap{
	transform: scale(1.35);
}
.section_slider_wrap .slider_wrap .slider_img img{
	border-radius: 0.2vw;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}
.section_slider_wrap .slider_wrap .slider_txt{
	padding: min(2.109375vw, 27px) min(2.421875vw, 31px);
	background: var(--base-color-white);
	position: relative;
	top: -0.3vw;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}
.section_slider_wrap .section_slider .slick-center .slider_txt{
	width: 90%;
	margin:0 auto;
	top: -1.3vw;
}
.section_slider_wrap .slider_wrap .slider_ttl{
	font-size: var(--base-18);
	font-weight: 600;
	margin-bottom: var(--base-12);
}
.section_slider_wrap .slider_wrap .slider_sub_ttl{
	font-size: var(--base-12);
	color: var(--base-color-green);
}
.section_slider_wrap .slider_arrow_wrap{
	position: absolute;
	top:35%;
	left:50%;
}
.prev-arrow,
.next-arrow {
	display: block;
	width: 4vw;
	height: 4vw;
	background: var(--base-color-white);
	border-radius: 50%;
	transition: all .3s ease;
	cursor: pointer;
	position:absolute;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}
.prev-arrow {
	top: 0;
	left: -22.5vw;
	transform: translateX(-50%) rotate(180deg);
}
.next-arrow {
	top: 0;
	left: 22.5vw;
	transform: translateX(-50%);
}
.prev-arrow::before,
.next-arrow::before{
	position:absolute;
	content: "";
	width:0.9vw;
	height:0.9vw;
	border-right: 0.15vw solid var(--base-color-green);
	border-top: 0.15vw solid var(--base-color-green);
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	transform:rotate(45deg);
}
.section_slider .slide-dots li button::before {
	background-color: #90a5b4;
}
.section_slider .slide-dots li.slick-active button::before {
	background-color: var(--base-color-white);	
}
.section_slider .slide-dots li button::before {
	bottom: 1vw;
}
.section_slider_wrap .section_slider button {
	background: none;
	border: none;
	outline: none;
	width: 5vw;
}
@media screen and (max-width: 576px) {
	.section_slider_wrap .slider_wrap{
		margin: 0 var(--base-40) 4vw;
	}
	.prev-arrow,
	.next-arrow {
		width: 8vw;
		height: 8vw;
	}
	.prev-arrow {
		left: -45vw;
	}
	.next-arrow {
		left: 45vw;
	}
	.prev-arrow::before,
	.next-arrow::before{
		width: 1.9vw;
		height: 1.9vw;
	}
}
/*---------------------------------------------------------
	SERVICE
---------------------------------------------------------*/
#service.section_inner{
	padding-top: var(--base-40);
}
/*---------------------------------------------------------
	ABOUT
---------------------------------------------------------*/
#about.section_inner{
	min-height: min(56.25vw, 720px);
} 
.section_content .section_sub_img{
	padding-top: var(--base-40);
}
.about_link_wrap{
	margin: var(--base-110) 0 0 var(--base-40);
	width: 50%;
}
.about_link_wrap .col{
	margin-bottom: var(--base-30);
}
a.about_link{
	position: relative;
	display: block;
	font-size: var(--base-18);
	font-weight: 600;
	line-height: var(--base-40);
	height: var(--base-40);
}
a.about_link::before {
	background: var(--base-color-green);
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	margin: auto;
	transform-origin: left top;
	transform: scale(0, 1);
	transition: transform .3s;
}
a.about_link::after {
	position: absolute;
	right: 10px;
	display: inline-block;
	width: min(0.546875vw, 7px);
	height: 100%;
	content: "";
	background: url('../img/common/icon-arw-g.svg') no-repeat center right;
	background-size: contain;
}
a.about_link:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
@media screen and (max-width: 768px) {
	.section_content .section_sub_img{
		top: auto;
		bottom: 0;
	}
}
@media screen and (max-width: 576px) {
	.about_link_wrap{
		margin: var(--base-30) 0 0;
	}
	.about_link_wrap .col{
		margin-bottom: var(--base-20);
	}
}
/*---------------------------------------------------------
	IR / RECRUIT
---------------------------------------------------------*/
.bg_gray .section_ttl h1,
.bg_gray .section_ttl h2{
	color: var(--base-color-white);
}
.bg_gray .section_ttl h1{
	font-size: min(4.6875vw,60px)
}
a.section_btn{
	position: relative;
	display: block;
	border-radius: var(--base-20);
	background: var(--base-color-black);
}
a.section_btn img{
	width: 100%;
	border-radius: var(--base-20);
	-webkit-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
	opacity: 0.8;
}
a.section_btn:hover img{
	opacity: 1;
}
a.section_btn .section_ttl{
	position: absolute;
	top: var(--base-30);
	left: var(--base-35);
}
a.section_btn::after{
	position: absolute;
	content: "";
	width: var(--base-60);
	height:	var(--base-60);
	border-radius: 50%;
	right: var(--base-30);
	bottom: var(--base-30);
}
#ir a.section_btn::after{
	background: var(--base-color-white) url('../img/common/icon-arw-r-g.svg') no-repeat center center;
	background-size: var(--base-20) min(1.328125vw, 17px);
}
#recruit a.section_btn::after{
	background: var(--base-color-white) url('../img/common/icon-blank-g.svg') no-repeat center center;
	background-size: min(1.328125vw, 17px);
}
@media screen and (max-width: 576px) {
	.bg_gray .section_content{
		padding-bottom: 0;
	}
	a.section_btn:first-of-type{
		margin-bottom: var(--base-30);
	}
	a.about_link::after {
		width: 7px;
	}
	#ir a.section_btn::after{
		background-size: 15px 11px;
	}
	.bg_gray .section_ttl h1{
		font-size: var(--base-50);
	}
	#recruit a.section_btn::after{
		background-size: 15px;		
	}
}