@charset "utf-8";
.mv{
	opacity:0;
	width:100%;
	height:100vh;
}
.mv.slick-initialized{opacity:1 !important;}

.mv img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

#mv{
	position:relative;
	overflow:hidden;
	height:calc(100vh - 80px);
}
#mv::after{
	content:'';
	display:block;
	width:516px;
	height:413px;
	background:url(/img/index/icon_n.svg) center no-repeat;
	position:absolute;
	right:0;
	bottom:0;
}
#mv .mv_img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	z-index:0;
}

.mv_area{
	max-width:1500px;
	width:100%;
	height:100%;
	margin:0 auto;
	display:flex;
	align-items:flex-start;
	flex-direction:column;
	justify-content:center;
	position:relative;
	z-index:1;
	padding:49px 131px 0;
}
.mv_txt{
	color:#fff;
	font-weight:bold;
	margin-top:23px;
}

.content_box{
	max-width:1500px;
	margin:auto;
	padding:0 60px;
}

/* product */
#product{
	background:#111;
	color:#fff;
	padding:123px 0 101px;
}
.content_h{
	display:flex;
	justify-content:space-between;
	border-bottom:1px solid #fff;
	padding-bottom:23px;
}
.content_h h2{
	font-size:1.6rem;
	font-weight:bold;
	margin-right:20px;
}
.content_h h2::before{
	content:attr(data-en);
	font-family:"Prompt", sans-serif;
	display:block;
	font-weight:600;
	font-size:7.4rem;
	line-height:1;
	position:relative;
	left:-7px;
}
.content_h p{
	width:60%;
	max-width:593px;
	padding-top:11px;
	font-size:1.4rem;
}
.product_content{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:60px;
	margin-top:73px;
}
.product_box h3{
	font-size:1.3rem;
	position:relative;
	margin-bottom:13px;
}
.product_box h3::before{
	content:attr(data-en);
	font-family: "Poppins", sans-serif;
	font-weight:bold;
	display:inline-block;
	margin-right:9px;
	letter-spacing:0.6px;
}
.product_box h3 span::before{content:'（';}
.product_box h3 span::after{content:'）';}
.product_list{
	border-top:1px solid #595959;
}
.product_link{
	color:#fff !important;
	text-decoration:none !important;
	display:block;
	position:relative;
	font-size:1.4rem;
	padding:16px 60px 18px 20px;
	border-bottom:1px solid #595959;
}
.product_link::after{
	content:'';
	width:18px;
	height:4px;
	background:url(/img/common/arrow_r_white.svg) center no-repeat;
	position:absolute;
	right:20px;
	top:calc(50% - 2px);
	transition:right .3s;
}
.product_link:hover::after{right:0;}
.product_link::before{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#fff;
	transition:width 0.3s;
}
.product_link:hover::before{width:100%;}

.product_icon_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:0;
	border-top:1px solid #595959;
}
.product_icon_item{border-bottom:1px solid #595959;position:relative;}
.product_icon_item:not(:nth-child(3n))::before{
	content:'';
	display:block;
	position:absolute;
	top:40px;
	right:0;
	width:1px;
	height:calc(100% - 80px);
	background:#595959;
}
.product_icon_link{
	display:flex;
	align-items:center;
	flex-direction:column;
	position:relative;
	font-size:1.4rem;
	height:157px;
	color:#fff !important;
	text-decoration:none !important;
	padding-top:29px;
}
.product_icon_link::before{
	content:'';
	display:block;
	position:absolute;
	top:5px;
	left:5px;
	width:calc(100% - 10px);
	height:calc(100% - 10px);
	background:rgba(255,255,255,0.2);
	transition:opacity 0.3s,visibility 0.3s;
	opacity:0;
	visibility:hidden;
}
.product_icon_link:hover::before{
	opacity:1;
	visibility:visible;
}
.product_icon_link *{position:relative;}
.product_icon_link p{
	display:inline-block;
	padding-right:27px;
	background:url(/img/common/arrow_r_white.svg) right center no-repeat;
	margin-top:6px;
}
.link_more{
	text-align:right;
	margin:27px 0 0;
}
.link_more a{
	display:inline-block;
	color:#fff !important;
	text-decoration:none !important;
	position:relative;
	font-size:1.4rem;
	padding-bottom:2px;
	border-bottom:1px solid #595959;
}
.link_more a::after{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#fff;
	transition:width 0.3s;
}
.link_more a:hover::after{width:100%;}

#technology .content_box{
	display:flex;
	justify-content:space-between;
	padding:0;
}
.tech_img{
	max-width:600px;
	width:43.923%;
	flex-shrink:0;
	position:relative;
	overflow:hidden;
}
.tech_img img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}
.tech_txt{
	width:56.07613%;
	padding:158px 60px 150px 96px;
}
.tech_txt h2{
	font-size:1.6rem;
	font-weight:bold;
	color:#2E67B6;
	position:relative;
	padding-bottom:20px;
	margin-bottom:22px;
}
.tech_txt h2::before{
	content:attr(data-en);
	font-family:"Prompt", sans-serif;
	display:block;
	font-size:7.4rem;
	line-height:1;
	position:relative;
	left:-1px;
	color:#111;
	font-weight:600;
}
.tech_txt h2::after{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#111;
	position:absolute;
	left:0;
	bottom:0;
}
.tech_txt p{font-size:1.4rem;}
.tech_list{
	counter-reset:tech-counter;
	margin:78px 0 30px;
	border-top:1px solid #ccc;
}
.tech_item{
	position:relative;
	counter-increment:tech-counter;
	padding-left:0;
}
.tech_link{
	color:#111 !important;
	text-decoration:none !important;
	display:block;
	position:relative;
	font-size:1.5rem;
	font-weight:500;
	border-bottom:1px solid #ccc;
}
.tech_link > span{
	display:block;
	position:relative;
	padding:22px 60px 21px 51px;
}
.tech_link > span::before{
	content:counter(tech-counter, decimal-leading-zero);
	display:block;
	color:#ccc;
	font-size:1.4rem;
	font-weight:300;
	line-height:1;
	font-family: "Poppins", sans-serif;
	position:absolute;
	left:20px;
	top:calc(50% - 0.7rem);
}
.tech_link::after{
	content:'';
	width:18px;
	height:4px;
	background:url(/img/common/arrow_r_black.svg) center no-repeat;
	position:absolute;
	right:20px;
	top:calc(50% - 2px);
	transition:right .3s;
}
.tech_link:hover::after{right:0;}
.tech_link::before{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#2E67B6;
	transition:width 0.3s;
}
.tech_link:hover::before{width:100%;}
#technology .link_more a{
	color:#111 !important;
	border-bottom:1px solid #ccc;
	transition:color .3s;
	font-weight:500;
}
#technology .link_more a::after{background:#2E67B6;}
#technology .link_more a:hover{color:#2E67B6 !important;}

@media screen and (min-width: 1501px) {
.tech_img{
	max-width:none;
	width:calc(43.923% + ((100vw - 1500px) / 2));
	margin-left:calc((1500px - 100vw) / 2);
}
}

/* company */
#company .content_box{
	display:flex;
	justify-content:space-between;
	padding:75px 60px 120px;
}
.company_h{flex:1;padding-right:40px;}
.company_h h2{
	font-size:1.6rem;
	font-weight:bold;
	color:#2E67B6;
	position:relative;
	padding-bottom:26px;
	margin-bottom:41px;
}
.company_h h2::before{
	content:attr(data-en);
	font-family:"Prompt", sans-serif;
	display:block;
	font-size:7.4rem;
	line-height:1;
	position:relative;
	left:-1px;
	color:#111;
	white-space:nowrap;
	font-weight:600;
}
.company_h h2::after{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#111;
	position:absolute;
	left:0;
	bottom:0;
}
.company_h p{font-size:1.4rem;}
.company_txt{width:49.788%;padding-top:9px;}
.company_list{
	display:grid;
	gap:7px 40px;
	grid-template-columns:1fr 1fr;
	margin-bottom:31px;
}
.company_link{
	color:#111 !important;
	text-decoration:none !important;
	display:block;
	position:relative;
	padding:15px 40px 16px 0;
	border-bottom:1px solid #ccc;
	font-weight:500;
	font-size:1.5rem;
}
.company_link::after{
	content:'';
	width:18px;
	height:4px;
	background:url(/img/common/arrow_r_black.svg) center no-repeat;
	position:absolute;
	right:20px;
	top:calc(50% - 2px);
	transition:right .3s;
}
.company_link:hover::after{right:0;}
.company_link::before{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#2E67B6;
	transition:width 0.3s;
}
.company_link:hover::before{width:100%;}
#company .link_more a{
	color:#111 !important;
	border-bottom:1px solid #ccc;
	transition:color .3s;
	font-weight:500;
}
#company .link_more a::after{background:#2E67B6;}
#company .link_more a:hover{color:#2E67B6 !important;}

/* recruit */
#recruit{
	background:#111;
	color:#fff;
}
#recruit .content_box{
	position:relative;
	display:flex;
	justify-content:flex-end;
	min-height:500px;
}
.recruit_box{
	width:60%;
	max-width:620px;
	position:relative;
	padding:117px 0 120px;
}
.recruit_box h2{
	font-size:1.6rem;
	font-weight:bold;
	position:relative;
	padding-bottom:23px;
	margin-bottom:43px;
}
.recruit_box h2::before{
	content:attr(data-en);
	font-family:"Prompt", sans-serif;
	display:block;
	font-size:7.4rem;
	line-height:1;
	position:relative;
	left:-4px;
	white-space:nowrap;
	font-weight:600;
	margin-bottom:3px;
}
.recruit_box h2::after{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#fff;
	position:absolute;
	left:0;
	bottom:0;
}
.recruit_box p{font-size:1.4rem;line-height:2.2;}

.recruit_box::before{
	content:'';
	display:block;
	width:676px;
	height:440px;
	position:absolute;
	left:-710px;
	bottom:0;
	background:url(/img/index/pic_recruit.png) center no-repeat;
	background-size:676px 440px;
}
.recruit_img{
	display:none;
	position:absolute;
	left:-93px;
	bottom:0;
}
.recruit_img img{
	width:auto;
	max-height:440px;
}
#recruit .link_more{
	position:absolute;
	right:60px;
	bottom:58px;
}


/* news */
#news .content_box{
	display:flex;
	justify-content:space-between;
	padding:115px 60px 147px;
}
.news_h{padding-right:40px;}
.news_h h2{
	font-size:1.6rem;
	font-weight:bold;
	color:#2E67B6;
	position:relative;
	padding-bottom:23px;
	margin-bottom:71px;
}
.news_h h2::before{
	content:attr(data-en);
	font-family:"Prompt", sans-serif;
	display:block;
	font-size:7.4rem;
	line-height:1;
	position:relative;
	left:-1px;
	color:#111;
	white-space:nowrap;
	font-weight:600;
	margin-bottom:3px;
	letter-spacing:-1.4px;
}
.news_h h2::after{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#111;
	position:absolute;
	left:0;
	bottom:0;
}

.news_tab li{margin-bottom:10px;}
.news_tab li a{
	display:inline-block;
	padding:0 0 0 12px;
	font-size:1.3rem;
	font-weight:500;
	color:#333;
	text-decoration:none;
	transition:color .3s;
	position:relative;
	cursor:pointer;
}
.news_tab li.active a{color:#2E67B6;}
.news_tab li a:hover{color:#2E67B6;}
.news_tab li a::before{
	content:'';
	display:block;
	width:4px;
	height:4px;
	border-radius:50%;
	background:#ccc;
	position:absolute;
	left:2px;
	top:calc(50% - 2px);
	transition:background .3s;
}
.news_tab li.active a::before{background:#2E67B6;}
.news_tab li a::before:hover{background:#2E67B6;}

.news_content{width:74.1573%;padding-top:132px;flex-shrink:0;}
.news_list{border-top:1px solid #ccc;margin-bottom:30px;}
.news_link{
	color:#111 !important;
	text-decoration:none !important;
	display:flex;
	position:relative;
	padding:23px 60px 24px 20px;
	border-bottom:1px solid #ccc;
}
.news_link::after{
	content:'';
	width:18px;
	height:4px;
	background:url(/img/common/arrow_r_black.svg) center no-repeat;
	position:absolute;
	right:20px;
	top:calc(50% - 2px);
	transition:right .3s;
}
.news_link:hover::after{right:0;}
.news_link::before{
	content:'';
	display:block;
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#2E67B6;
	transition:width 0.3s;
}
.news_link:hover::before{width:100%;}
.news_info{
	display:flex;
	flex-shrink:0;
	align-items:center;
	justify-content:space-between;
	width:240px;
	font-size:1.2rem;
	line-height:1.7rem;
	padding-right:30px;
}
.news_category{
	width:110px;
	padding:1px 8px 2px;
	margin-top:3px;
	color:#fff;
	background:#2E67B6;
	text-align:center;
}
.news_title{
	font-size:1.5rem;
	font-weight:500;
	line-height:1.4;
}


#news .link_more a{
	color:#111 !important;
	border-bottom:1px solid #ccc;
	transition:color .3s;
	font-weight:500;
}
#news .link_more a::after{background:#2E67B6;}
#news .link_more a:hover{color:#2E67B6 !important;}

@media screen and (max-width: 1200px) {
.content_box{padding:0 30px;}
.tech_txt{padding:150px 30px 150px 30px;}
.product_content{gap:30px;}
.product_icon_link{text-align:center;font-size:1.3rem;}
.product_icon_link p{display:inline;padding:0;background:none;line-height:1.7rem;}
.product_icon_link p::after{
	display:block;
	content:url(/img/common/arrow_r_white.svg);
}
#company .content_box{padding:75px 30px 120px;}
#news .content_box{padding:115px 30px 147px;}

}
@media screen and (max-width: 1023px) {
#technology .content_box{display:block;}
.tech_img{max-width:none;width:auto;height:350px;}
.tech_txt{width:auto;}
.recruit_box{width:50%;}
#recruit .link_more{right:30px;}
}

@media screen and (max-width: 900px) {
#company .content_box{display:block;}
.company_h{padding:0 0 40px;}
.company_txt{width:auto;}
.news_link{display:block;}
.news_info{padding:0 0 15px;}
}


@media screen and (max-width: 767px) {
.mv{height:100svh;}
#mv::after{background-size:auto 260px;width:326px;height:260px;background-position:right bottom;}
#mv{height:calc(100svh - 58px);}
.mv_area{
	align-items:flex-start;
	flex-direction:column;
	justify-content:flex-start;
	padding:90px 30px 0;
}
.mv_area::after{
	width:400px;
	height:260px;
	background-size:400px 260px;
	right:-110px;
	bottom:0;
}
.mv_txt_img{max-width:290px;}
.mv_txt{
	font-size:1.2rem;
	margin-top:12px;
}

.content_box{padding:0 30px;}

/* product */
#product{padding:76px 0 78px;}
.content_h{
	display:block;
	padding-bottom:42px;
}
.content_h h2{font-size:1.3rem;}
.content_h h2::before{
	font-weight:600;
	font-size:4.2rem;
	left:-2px;
}
.content_h p{
	width:auto;
	max-width:none;
	padding-top:0;
	font-size:1.3rem;
	line-height:3rem;
	margin:30px 0 0;
}
.product_content{
	display:block;
	gap:0;
	margin-top:0;
}
.product_box{margin-top:52px;}
.product_box h3{
	font-size:1.2rem;
	margin-bottom:11px;
}
.product_box h3::before{
	margin-right:9px;
	letter-spacing:0;
	font-size:1.3rem;
}
.product_link{
	font-size:1.3rem;
	padding:13px 40px 13px 15px;
}
.product_link::after{
	right:0;
	top:calc(50% - 2px);
	transition:right .3s;
}

.product_icon_list{grid-template-columns:1fr 1fr;}
.product_icon_item:not(:nth-child(3n))::before{display:none;}
.product_icon_item:not(:nth-child(2n))::before{
	content:'';
	display:block;
	position:absolute;
	top:30px;
	right:0;
	width:1px;
	height:calc(100% - 60px);
	background:#595959;
}
.product_icon_link{
	font-size:1.3rem;
	height:140px;
	padding-top:20px;
}
.product_icon_link p{
	display:inline-block;
	padding-right:27px;
	background:url(/img/common/arrow_r_white.svg) right center no-repeat;
	margin-top:6px;
}
.tech_txt .link_more{margin:21px 0 0;}
.product_icon_link p::after{display:none;}
.link_more a{font-size:1.3rem;}


#technology .content_box{display:block;}
.tech_img{max-width:none;width:auto;height:375px;}
.tech_txt{
	width:auto;
	padding:76px 30px 83px;
}
.tech_txt h2{
	font-size:1.3rem;
	padding-bottom:15px;
	margin-bottom:40px;
}
.tech_txt h2::before{
	font-size:4.2rem;
}
.tech_txt h2::after{width:30px;}
.tech_txt p{font-size:1.3rem;line-height:3rem;}
.tech_list{margin:40px 0 0;}
.tech_link{
	font-size:1.4rem;
	font-weight:500;
	border-bottom:1px solid #ccc;
}
.tech_link > span{
	padding:17px 40px 17px 25px;
}
.tech_link > span::before{
	font-size:1.3rem;
	left:0;
	top:calc(50% - 0.65rem);
}
.tech_link::after{right:0;}

/* company */
#company .content_box{
	display:block;
	padding:76px 30px 83px;
}
.company_h{padding-right:0;}
.company_h h2{
	font-size:1.3rem;
	padding-bottom:15px;
	margin-bottom:41px;
}
.company_h h2::before{font-size:4.2rem;}
.company_h h2::after{width:30px;}
.company_h p{font-size:1.3rem;line-height:3rem;}
.company_txt{width:auto;padding-top:0;}
.company_list{
	gap:7px 20px;
	margin:40px 0 16px;
}
.company_link{
	padding:18px 40px 18px 0;
	font-size:1.4rem;
}
.company_link::after{right:0;}
.company_txt .link_more{margin-top:18px;}

/* recruit */
#recruit .content_box{
	display:block;
	padding:62px 30px 133px;
}
.recruit_box{max-width:none;width:auto;padding:0;}
.recruit_box h2{
	font-size:1.3rem;
	padding-bottom:14px;
	margin-bottom:40px;
}
.recruit_box h2::before{font-size:4.2rem;left:-2px;margin-bottom:0;}
.recruit_box h2::after{width:30px;}
.recruit_box p{font-size:1.3rem;line-height:3rem;}
.recruit_img{
	display:block;
	position:relative;
	left:-83px;
	bottom:auto;
	margin:46px 0 23px;
	width:440px;
}
.recruit_img img{max-height:260px;}
#recruit .link_more{right:30px;bottom:82px;}


/* news */
#news .content_box{
	display:block;
	padding:76px 30px 80px;
}
.news_h{padding-right:0;}
.news_h h2{
	font-size:1.3rem;
	padding-bottom:15px;
	margin-bottom:50px;
}
.news_h h2::before{font-size:4.2rem;margin-bottom:0;}
.news_h h2::after{width:30px;}
.news_tab{
	display:flex;
	flex-wrap:wrap;
	border-left:1px solid #ccc;
	border-top:1px solid #ccc;
}
.news_tab li{
	margin:0;
	width:calc(100% / 3);
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
}
.news_tab li a{
	display:block;
	padding:6px 2px;
	font-size:1.3rem;
	font-weight:500;
	color:#333;
	text-align:center;
}
.news_tab li.active a{color: #fff !important;;background:#2E67B6;}
.news_tab li a:hover{color: #fff !important;;background:#2E67B6;}
.news_tab li a::before{display:none;}

.news_content{width:auto;padding-top:30px;}
.news_list{margin-bottom:0;}
.news_link{
	display:block;
	padding:16px 40px 18px 0;
}
.news_link::after{right:0;}
.news_info{
	width:auto;
	padding-right:0;
	justify-content:flex-start;
	margin-bottom:10px;
	padding:0;
}
.news_day{width:100px;}
.news_category{margin-top:3px;}
.news_title{
	font-size:1.4rem;
	line-height:2rem;
}
.news_content .link_more{margin-top:19px;}


}

@media screen and (max-width: 599px) {
.company_list{display:block;}
.company_item:first-child{border-top:1px solid #ccc;}
}