  @charset "utf-8";

/*----- common -----*/
h2{
	font-size:2.2rem;
	font-weight:500;
	letter-spacing:0.22px;
	line-height:3.2rem;
}
h2::before{
	content:attr(data-en);
	display:block;
	margin-left:-6px;
	font-family:var(--font-Syncopate);
	font-size:7.1rem;
	font-weight:bold;
	letter-spacing:0;
	line-height:6.6rem;
	text-transform:uppercase;
}
img{width:100%;}

.inview_txt{
	display:inline-block;
	position:relative;
}
.inview_txt::after{
	content:'';
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	background:#fff;
	transition:width 0.7s cubic-bezier(0.75, 0, 0.25, 1);
}
.inview_txt.active::after{width:0;}
.inview_slide{
	transform:translateX(-20px);
	opacity:0;
	transition:transform 0.3s, opacity 0.3s;
}
.inview_slide.active{
	transform:translateX(0);
	opacity:1;
}


/*----- mv -----*/
.mv_area{
	position:relative;
	max-width:1500px;
	padding:0 440px 40px 0;
	margin:0 auto 145px;
}
.mv_area::after{
	content:'';
	position:absolute;
	z-index:-1;
	bottom:-160px;
	right:0;
	width:477px;
	height:516px;
	background:url(/recruit/newgrads/img/index/bg_line_1.png) no-repeat center/cover;
}
.mv_copy{
	position:absolute;
	z-index:1;
	top:0;
	right:150px;
	bottom:0;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	justify-content:center;
	color:#fff;
	font-family:var(--font-NotoSerif);
	font-size:5.6rem;
	letter-spacing:0;
	line-height:8.4rem;
}
.mv_copy_txt{
	position:relative;
	padding:5px 0 11px 17px;
	margin-bottom:20px;
	border-bottom-right-radius:20px;
	overflow:hidden;
}
.mv_copy_txt::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	width:0%;
	height:100%;
	background:var(--color-green);
	transition:width 0.7s cubic-bezier(0.75, 0, 0.25, 1);
}
.is_view .mv_copy_txt::before{width:100%;}
.mv_copy_txt_in{
	display:block;
	width:0%;
	white-space:nowrap;
	overflow:hidden;
	transition:width 0.7s cubic-bezier(0.75, 0, 0.25, 1);
	transition-delay:0.3s;
}
.is_view .mv_copy_txt_in{width:100%;}
.mv_slide{
	width:100%;
	border-bottom-right-radius:100px;
	opacity:0;
	overflow:hidden;
}
.mv_slide.slick-initialized{opacity:1 !important;}

/*----- message -----*/
.message_area{
	position:relative;
	display:flex;
	max-width:1500px;
	padding-left:30px;
	margin:0 auto 45px;
}
.message_area::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:-165px;
	left:0;
	width:211px;
	height:280px;
	background:url(/recruit/newgrads/img/index/bg_line_2.png) no-repeat center/cover;
}
.message_box{
	flex-shrink:0;
	width:calc((100% - 1210px) / 2 + 695px);
	padding-right:10px;
	padding-left:calc((100% - 1210px) / 2);
}
.message_head{margin-bottom:45px;}
.message_head_txt{display:none;}
.message_txt{
	margin-bottom:35px;
	font-size:1.9rem;
	font-weight:500;
	letter-spacing:0.19px;
	line-height:3.6rem;
}
.message_txt .pc_none{display:none;}
.message_copy{
	margin:55px 0 155px;
	font-family:var(--font-NotoSerif);
	font-size:3.4rem;
	font-weight:500;
	letter-spacing:0;
	line-height:4.9rem;
}
.message_catch{margin-top:120px;}
.message_catch.inview{transition-delay:0.5s;}


/*----- news -----*/
.news_area{
	position:relative;
	max-width:1500px;
	padding:0 20px;
	margin:0 auto 145px;
}
.news_area::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:-160px;
	left:0;
	width:382px;
	height:474px;
	background:url(/recruit/newgrads/img/index/bg_line_3.png) no-repeat center/cover;
}
.news_box{
	position:relative;
	max-width:1180px;
	margin:auto;
	border-bottom-right-radius:20px;
}
.news_box::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	width:0;
	height:100%;
	background:var(--color-lightgreen);
	transition:width 0.5s cubic-bezier(0.75, 0, 0.25, 1);
}
.news_box.active::before{width:100%;}
.news_box_in{
	display:flex;
	align-items:flex-start;
	padding:23px 30px 21px;
	background:var(--color-green);
	opacity:0;
	transition:opacity 0.3s;
	transition-delay:0.7s;
}
.active .news_box_in{opacity:1;}
.news_head{
	flex-shrink:0;
	width:210px;
	margin-top:1px;
}
.news_head::before{display:none;}
.news_head_link{
	position:relative;
	display:inline-block;
	padding-left:35px;
	color:#fff !important;
	font-family:var(--font-Syncopate);
	font-size:2.6rem;
	font-weight:bold;
	letter-spacing:0;
	line-height:3.2rem;
	text-decoration:none !important;
	transition:color 0.3s;
}
.news_head_link:hover{color:var(--color-lightgreen) !important;}
.news_head_link::before, .news_head_link::after{
	content:'';
	position:absolute;
	top:0;
	bottom:2px;
	left:0;
	width:28px;
	height:28px;
	margin:auto;
	transition:opacity 0.3s;
}
.news_head_link::before{background:url(/recruit/newgrads/img/common/arrow_maru_r_clear.svg) no-repeat center/cover;}
.news_head_link:hover::before{opacity:0;}
.news_head_link::after{
	background:url(/recruit/newgrads/img/common/arrow_maru_r_lightgreen.svg) no-repeat center/cover;
	opacity:0;
}
.news_head_link:hover::after{opacity:1;}
.news_list{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}
.news_date{
	flex-shrink:0;
	width:90px;
	margin-top:4px;
	color:#fff;
	font-size:1.2rem;
	font-weight:500;
	letter-spacing:0.96px;
	line-height:1.7rem;
}
.news_title{
	width:calc(100% - 90px);
	margin-bottom:8px;
	letter-spacing:0.16px;
	line-height:2.4rem;
}
.news_link{
	display:inline-block;
	padding-left:18px;
	background:url(/recruit/newgrads/img/common/arrow_r_white.svg) no-repeat top 8px left 3px;
	color:#fff !important;
	text-decoration:none !important;
}
.news_link:hover{text-decoration:underline !important;}
.news_none{
	margin-top:4px;
	color:#fff;
	letter-spacing:0.16px;
	line-height:2.4rem;
}

/*----- bg -----*/
.bg_area{background:url(/recruit/newgrads/img/index/bg.png) no-repeat bottom center/cover;}
.bg_box{
	max-width:1220px;
	padding:0 20px 195px;
	margin:auto;
}

.column_2_list{
	display:grid;
	grid-template-columns:repeat(auto-fit, calc((100% - 40px) / 2));
	grid-gap:60px 40px;
}
.column_2_link{
	display:block;
	color:#333 !important;
	text-decoration:none !important;
}
.column_2_thumb{
	margin-bottom:12px;
	border-bottom-right-radius:30px;
	overflow:hidden;
}
.column_2_img{transition:transform 0.3s;}
a:hover .column_2_img{transform:scale(1.05);}
.column_2_title{
	position:relative;
	padding-left:35px;
	font-size:1.8rem;
	font-weight:500;
	letter-spacing:0.18px;
	line-height:3.2rem;
	transition:color 0.3s;
}
a:hover .column_2_title{color:var(--color-green);}
.column_2_title::before, .column_2_title::after{
	content:'';
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:28px;
	height:28px;
	margin:auto;
	transition:opacity 0.3s;
}
.column_2_title::before{background:url(/recruit/newgrads/img/common/arrow_maru_r_white.svg) no-repeat center/cover;}
a:hover .column_2_title::before{opacity:0;}
.column_2_title::after{
	background:url(/recruit/newgrads/img/common/arrow_maru_r_green.svg) no-repeat center/cover;
	opacity:0;
}
a:hover .column_2_title::after{opacity:1;}

.column_3_list{
	display:grid;
	grid-template-columns:repeat(auto-fit, calc((100% - 120px) / 4));
	grid-gap:40px;
	align-items:start;
}
.column_3_item{
	position:relative;
	border-bottom-right-radius:20px;
	overflow:hidden;
}
.column_3_item::before{
	content:'';
	position:absolute;
	top:0;
	right:0;
	left:auto;
	width:0;
	height:100%;
	background:var(--color-lightgreen);
	transition:width 0.3s;
}
.column_3_item.exe::before{
	right:auto;
	left:0;
	width:100%;
}
.column_3_item:nth-child(2){margin-top:80px;}
.column_3_item:nth-child(3){margin-top:160px;}
.column_3_item:nth-child(4){margin-top:240px;}
.column_3_item:nth-child(4n+5){margin-top:-240px;}
.column_3_item:nth-child(4n+6){margin-top:-160px;}
.column_3_item:nth-child(4n+7){margin-top:-80px;}
.column_3_link{
	position:relative;
	display:block;
	color:#fff !important;
	text-decoration:none !important;
	opacity:0;
	transition:opacity 0.3s;
	transition-delay:0.5s;
}
.active .column_3_link{opacity:1;}
.column_3_link::before, .column_3_link::after{
	content:'';
	position:absolute;
	z-index:1;
	right:15px;
	bottom:15px;
	width:28px;
	height:28px;
	margin:auto;
	transition:opacity 0.3s;
}
.column_3_link::before{background:url(/recruit/newgrads/img/common/arrow_maru_r_clear.svg) no-repeat center/cover;}
.column_3_link:hover::before{opacity:0;}
.column_3_link::after{
	background:url(/recruit/newgrads/img/common/arrow_maru_r_green.svg) no-repeat center/cover;
	opacity:0;
}
.column_3_link:hover::after{opacity:1;}
.column_3_img{
	transform:scale(1.05);
	transition:transform 0.3s;
}
.active .column_3_img{transform:scale(1);}
.exe .column_3_img{transition-delay:0.5s;}
a:hover .column_3_img{transform:scale(1.05);}
.column_3_title{
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	padding:100px 20px 20px;
	background:linear-gradient(180deg, rgba(0,0,0,0) 0%, #000 100%);
	font-size:1.8rem;
	font-weight:500;
	letter-spacing:0.18px;
	line-height:2.6rem;
	transition:color 0.3s;
}
a:hover .column_3_title{color:var(--color-lightgreen);}
.column_3_title::before{
	content:attr(data-en);
	display:block;
	margin-bottom:2px;
	font-family:var(--font-Syncopate);
	font-size:2.8rem;
	font-weight:bold;
	line-height:3rem;
}

.company_area{margin-bottom:145px;}
.company_head, .person_head, .environment_head{margin-bottom:40px;}
.person_area{
	position:relative;
	z-index:1;
	padding-bottom:145px;
	background:url(/recruit/newgrads/img/index/bg_dot_2.png) no-repeat bottom 50px center/100%;
}
.person_area::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:65px;
	right:0;
	width:675px;
	height:226px;
	background:url(/recruit/newgrads/img/index/bg_dot_1.png) no-repeat center/cover;
}
.person_head{width:400px;}

/*----- recruit -----*/
.recruit_area{
	position:relative;
	max-width:1500px;
	margin:auto;
}
.recruit_area::after{
	content:'';
	position:absolute;
	z-index:-1;
	bottom:0;
	right:0;
	width:593px;
	height:474px;
	background:url(/recruit/newgrads/img/index/bg_line_4.png) no-repeat center/cover;
}
.recruit_box{
	max-width:1220px;
	padding:0 20px 145px;
	margin:-50px auto 0;
}
.recruit_head{margin-bottom:40px;}
.recruit_list{
	display:flex;
	flex-wrap:wrap;
}
.recruit_item{margin-right:50px;}
.recruit_item:last-child{margin-right:0;}
.recruit_link{
	position:relative;
	display:block;
	padding-left:35px;
	color:#333 !important;
	font-size:1.8rem;
	font-weight:500;
	letter-spacing:0.18px;
	line-height:3.2rem;
	text-decoration:none !important;
	transition:color 0.3s;
}
.recruit_link:hover{color:var(--color-green) !important;}
.recruit_link::before, .recruit_link::after{
	content:'';
	position:absolute;
	top:2px;
	bottom:0;
	left:0;
	width:28px;
	height:28px;
	margin:auto;
	transition:opacity 0.3s;
}
.recruit_link::before{background:url(/recruit/newgrads/img/common/arrow_maru_r_white.svg) no-repeat center/cover;}
.recruit_link:hover::before{opacity:0;}
.recruit_link::after{
	background:url(/recruit/newgrads/img/common/arrow_maru_r_green.svg) no-repeat center/cover;
	opacity:0;
}
.recruit_link:hover::after{opacity:1;}


@media screen and (max-width:1024px){

/*----- mv -----*/
.mv_copy_txt{border-bottom-right-radius:10px;}

/*----- bg -----*/
.bg_box{padding-bottom:0;}
.column_2_thumb{border-bottom-right-radius:20px;}
.column_3_title{
	font-size:1rem;
	letter-spacing:0.1px;
}

/*----- recruit -----*/
.recruit_list{justify-content:space-between;}

}


@media screen and (min-width:1025px) and (max-width:1220px){

/*----- common -----*/
h2{
	font-size:2rem;
	letter-spacing:0.2px;
	line-height:2.9rem;
}
h2::before{
	margin-left:-3px;
	font-size:5.7rem;
	line-height:5.2rem;
}

/*----- mv -----*/
.mv_area{
	padding-right:330px;
	margin-bottom:120px;
}
.mv_area::after{
	bottom:-130px;
	width:365px;
	height:395px;
}
.mv_copy{
	right:120px;
	font-size:4.6rem;
	line-height:6.9rem;
}
.mv_copy_txt{
	padding:3px 0 8px 15px;
	margin-bottom:15px;
}
.mv_slide{border-bottom-right-radius:80px;}

/*----- message -----*/
.message_area{margin-bottom:100px;}
.message_area::before{
	top:-140px;
	width:160px;
	height:213px;
}
.message_head{margin-bottom:35px;}
.message_txt{
	margin-bottom:30px;
	font-size:1.7rem;
	letter-spacing:1.7px;
	line-height:2.9rem;
}
.message_copy{
	margin:40px 0 60px;
	font-size:3.1rem;
	line-height:4.5rem;
}

/*----- news -----*/
.news_area{margin-bottom:120px;}
.news_area::before{
	top:-120px;
	width:280px;
	height:349px;
}

/*----- bg -----*/
.bg_box{padding-bottom:160px;}
.column_2_list{
	grid-template-columns:repeat(auto-fit, calc((100% - 30px) / 2));
	grid-gap:50px 30px;
}
.column_3_list{
	grid-gap:20px;
	grid-template-columns:repeat(auto-fit, calc((100% - 60px) / 4));
}
.column_3_title::before{
	font-size:2.4rem;
	line-height:2.6rem;
}
.column_3_title{font-size:1.4rem;}
.company_area{margin-bottom:120px;}
.person_area::before{
	width:550px;
	height:184px;
}
.person_head{width:330px;}

/*----- recruit -----*/
.recruit_area::after{
	width:450px;
	height:360px;
}

}


@media screen and (min-width:768px) and (max-width:1024px){

/*----- common -----*/
h2{
	font-size:1.8rem;
	letter-spacing:0.18px;
	line-height:2.6rem;
}
h2::before{
	margin:0 0 5px;
	font-size:4.3rem;
	line-height:4rem;
}

/*----- mv -----*/
.mv_area{
	padding:0 225px 5px 0;
	margin-bottom:95px;
}
.mv_area::after{
	bottom:-110px;
	width:244px;
	height:264px;
}
.mv_copy{
	right:90px;
	font-size:3.5rem;
	line-height:5.2rem;
}
.mv_copy_txt{
	padding:2px 0 6px 12px;
	margin-bottom:6px;
}
.mv_slide{border-bottom-right-radius:50px;}

/*----- message -----*/
.message_area::before{
	top:-80px;
	width:108px;
	height:144px;
}
.message_head{margin-bottom:25px;}
.message_box{
	position:relative;
	flex-shrink:1;
	width:calc(100% - 400px);
}
.message_txt{
	margin-bottom:25px;
	font-size:1.6rem;
	letter-spacing:0;
	line-height:2.6rem;
}
.message_copy{
	width:450px;
	margin:30px 0 50px;
	font-size:2.8rem;
	line-height:4.1rem;
}
.message_catch{
	flex-shrink:0;
	width:400px;
	margin-top:75px;
}

/*----- news -----*/
.news_area{margin-bottom:100px;}
.news_area::before{
	top:-85px;
	width:195px;
	height:242px;
}
.news_none{margin-top:3px;}

/*----- bg -----*/
.column_2_list{
	grid-template-columns:repeat(auto-fit, calc((100% - 20px) / 2));
	grid-gap:40px 20px;
}
.column_3_list{
	grid-gap:20px;
	grid-template-columns:repeat(auto-fit, calc((100% - 60px) / 4));
}
/* .column_3_item:nth-child(2){margin-top:60px;}
.column_3_item:nth-child(3){margin-top:120px;}
.column_3_item:nth-child(3n+4){margin-top:-120px;}
.column_3_item:nth-child(3n+5){margin-top:-60px;} */
.column_3_title{
	padding-top:60px;
	line-height:1.5rem;
}
.column_3_title::before{
	width:180px;
	margin-bottom:0;
	font-size:2.2rem;
	line-height:2.5rem;
}
.company_area{margin-bottom:100px;}
.person_area{
	padding-bottom:100px;
	background-position:bottom 40px center;
}
.person_area::before{
	width:419px;
	height:140px;
}
.person_head{width:250px;}

/*----- recruit -----*/
.recruit_area::after{
	width:303px;
	height:242px;
}
.recruit_box{
	padding-bottom:80px;
	margin-top:100px;
}
.recruit_head{margin-bottom:35px;}
.recruit_item{
	width:calc((100% - 20px) / 2);
	margin:0 0 20px;
}

}

@media screen and (min-width:768px) and (max-width:1023px){

.column_3_list{
	grid-gap:20px;
	grid-template-columns:repeat(auto-fit, calc((100% - 20px) / 2));
}
.column_3_item:nth-child(2){margin-top:60px;}
.column_3_item:nth-child(3){margin-top:-60px;}
.column_3_item:nth-child(3n+4){margin-top:0;}
}

@media screen and (min-width:768px) and (max-width:960px){

/*----- message -----*/
.message_box{width:calc(100% - 340px);}
.message_txt .pc_none{display:block;}
.message_txt .pc_only{display:none;}
.message_catch{width:340px;}

}


@media screen and (max-width:767px){

/*----- common -----*/
h2{
	font-size:1.6rem;
	letter-spacing:0.16px;
	line-height:2.4rem;
}
h2::before{
	margin:0 0 -1px;
	font-size:3.3rem;
	line-height:3.2rem;
}

/*----- mv -----*/
.mv_area{
	padding:0 0 190px;
	margin-bottom:75px;
}
.mv_area::after{
	bottom:-60px;
	width:210px;
	height:228px;
}
.mv_copy{
	top:auto;
	right:auto;
	bottom:0;
	left:20px;
	font-size:3.2rem;
	line-height:4.8rem;
}
.mv_copy_txt{
	padding:4px 0 8px 9px;
	margin-bottom:12px;
}
.mv_slide{border-bottom-right-radius:30px;}

/*----- message -----*/
.message_area{
	display:block;
	padding:0 20px;
}
.message_area::before{display:none;}
.message_box{
	width:auto;
	padding:0;
}
.message_head{margin-bottom:25px;}
.message_txt{
	margin-bottom:25px;
	font-size:1.4rem;
	letter-spacing:0.14px;
	line-height:2.8rem;
}
.message_txt .pc_only{display:none;}
.message_copy{
	margin:0 0 110px;
	font-size:2.2rem;
	line-height:3rem;
	white-space:nowrap;
}
.message_catch{display:none;}

/*----- news -----*/
.news_area{margin-bottom:65px;}
.news_area::before{
	top:-80px;
	width:150px;
	height:186px;
}
.news_box_in{
	display:block;
	padding:25px 20px 15px;
}
.news_head{
	width:auto;
	margin:0 0 20px;
}
.news_list{display:block;}
.news_date{
	width:auto;
	margin:0 0 5px;
}
.news_title{
	width:auto;
	margin-bottom:20px;
	font-size:1.5rem;
	letter-spacing:0.15px;
	line-height:2.1rem;
}
.news_link{
	padding-left:13px;
	background-position:top 6px left 2px;
}
.news_none{margin:0 0 10px;}

/*----- bg -----*/
.column_2_list{
	grid-template-columns:repeat(auto-fit, calc((100% - 15px) / 2));
	grid-gap:30px 15px;
}
.column_2_thumb{margin-bottom:10px;}
.column_2_title{
	padding-left:25px;
	font-size:1.6rem;
	letter-spacing:0.16px;
	line-height:2.4rem;
}
.column_2_title::before, .column_2_title::after{
	width:18px;
	height:18px;
}
.column_3_list{
	grid-template-columns:repeat(auto-fit, calc((100% - 15px) / 2));
	grid-gap:15px;
}
.column_3_item:nth-child(2){margin-top:40px;}
.column_3_item:nth-child(3){margin-top:-40px;}
.column_3_item:nth-child(4){margin-top:0;}
.column_3_item:nth-child(4n+5){margin-top:-120px;}
.column_3_item:nth-child(4n+6){margin-top:-80px;}
.column_3_item:nth-child(4n+7){margin-top:-40px;}

/* .column_3_item:nth-child(2){margin-top:40px;}
.column_3_item:nth-child(3){margin-top:80px;}
.column_3_item:nth-child(3n+4){margin-top:-80px;}
.column_3_item:nth-child(3n+5){margin-top:-40px;} */
.column_3_link::before, .column_3_link::after{
	right:10px;
	bottom:8px;
	width:18px;
	height:18px;
}
.column_3_title{
	padding:40px 8px 12px;
	line-height:1.2rem;
}
.column_3_title::before{
	margin-bottom:4px;
	font-size:1.8rem;
	line-height:1.8rem;
}
.company_area{margin-bottom:65px;}
.person_area{
	padding-bottom:85px;
	background-position:bottom 8px center;
}
.person_area::before{
	top:80px;
	width:192px;
	height:64px;
}
.person_head{width:190px;}

/*----- recruit -----*/
.recruit_area::after{
	width:238px;
	height:190px;
}
.recruit_box{
	padding-bottom:85px;
	margin-top:65px;
}
.recruit_head{margin-bottom:30px;}
.recruit_item{
	width:calc((100% - 15px) / 2);
	margin:0 0 12px;
}
.recruit_link{
	padding-left:25px;
	font-size:1.6rem;
	letter-spacing:0.16px;
	line-height:2.4rem;
}
.recruit_link::before, .recruit_link::after{
	width:18px;
	height:18px;
}

}


@media screen and (max-width:600px){

/*----- message -----*/
.message_txt .pc_none{display:block;}

/*----- bg -----*/
.company_head, .person_head, .environment_head{margin-bottom:30px;}
.column_2_list{display:block;}
.column_2_item{margin-bottom:30px;}
.column_3_list{grid-template-columns:repeat(auto-fit, calc((100% - 15px) / 2));}
.column_3_item{margin-top:0 !important;}
.column_3_item:nth-child(2){margin-top:80px !important;}
.column_3_item:nth-child(2n+3){margin-top:-80px !important;}

/*----- recruit -----*/
.recruit_list{display:block;}
.recruit_item{width:auto;}

}