@charset "utf-8";

/* parent */
.job-people .page_top::before{
	top:115px;
	left:-260px;
}
.job-people .page_top::after{
	top:-25px;
	right:-260px;
	bottom:auto;
}
.job-people .page_title{position:relative;}
.job-people .page_title::after{
	content:'';
	position:absolute;
	z-index:-1;
	right:0;
	bottom:-30px;
	left:62%;
	width:520px;
	height:520px;
	margin:auto;
	background:url(/recruit/img/common/bg_gradation_green.png) no-repeat center/cover;
}
.page_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:40px 35px;
	padding:0;
}
.page_list .interview_item{
	list-style:none;
	width:auto;
	margin:0;
}


/* child */
.interview_top{
	position:relative;
	max-width:1160px;
	padding:40px 30px;
	margin:0 auto 60px;
}
.interview_top::before, .interview_top::after{
	content:'';
	position:absolute;
	z-index:-1;
	width:520px;
	height:520px;
	background:no-repeat center/cover;
}
.interview_top::before{
	top:85px;
	right:calc(100% - 75px);
	background-image:url(/recruit/img/common/bg_gradation_blue.png);
}
.interview_top::after{
	top:50px;
	left:calc(100% - 200px);
	background-image:url(/recruit/img/common/bg_gradation_green.png);
}
.interview_top_info{
	display:flex;
	flex-direction:column;
	justify-content:center;
	position:absolute;
	z-index:5;
	top:0;
	bottom:0;
	left:30px;
}
.interview_top_title{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	position:relative;
	margin-bottom:20px;
}
.interview_top_title::before{
	content:attr(data-slug);
	display:block;
	margin:0 0 5px 35px;
	color:#E41F1F;
	font-family:var(--font_albert);
	line-height:1.9rem;
	text-transform:uppercase;
}
.interview_top_title::after{
	content:'';
	position:absolute;
	top:9px;
	left:0;
	width:25px;
	height:1px;
	background:#E41F1F;
}
.interview_top_title_txt{
	position:relative;
	padding:7px 15px 8px 20px;
	margin-top:5px;
	background:#fff;
	border-radius:5px;
	font-family:var(--font_serif);
	font-size:3.8rem;
	font-weight:500;
	letter-spacing:3.8px;
	line-height:5.5rem;
}
.interview_top_title_txt:first-child::before{
	content:'';
	position:absolute;
	top:-22px;
	left:0;
	width:5px;
	height:5px;
	background:#E41F1F;
	border-radius:50%;
}
.interview_top_info_in{
	margin:0;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.7rem;
}
.interview_top_info_in[data-job]::before{
	content:attr(data-job);
	display:inline-block;
	padding:2px 10px 3px;
	margin-bottom:15px;
	background:#fff;
	border:1px solid #E41F1F;
	border-radius:2px;
	color:#E41F1F;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
.interview_top_name{
	display:block;
	margin-bottom:5px;
	font-size:2rem;
	font-weight:500;
	letter-spacing:2px;
	line-height:2.9rem;
}
.interview_top_faculty{
	display:block;
	margin-top:12px;
	color:#757575;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}
.interview_top_pic{
	position:relative;
	padding-left:270px;
}
.interview_top_pic::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:-325px;
	left:0;
	width:520px;
	height:520px;
	background:url(/recruit/img/common/bg_gradation_red.png) no-repeat center/cover;
}
.interview_top_img{border-radius:10px;}

.child_interview .content_area{max-width:1160px;}
.content_box{
	position:relative;
	max-width:900px;
	margin:auto;
}
.content_box::before, .content_box::after{
	content:'';
	position:absolute;
	z-index:-1;
	width:520px;
	height:520px;
	background:no-repeat center/cover;
}
.content_box::before{
	top:0;
	right:calc(100% - 105px);
	background-image:url(/recruit/img/common/bg_gradation_red.png);
}
.content_box::after{
	top:18%;
	left:calc(100% - 140px);
	background-image:url(/recruit/img/common/bg_gradation_blue.png);
}
.content_box_in{
	position:relative;
	counter-reset:head;
}
.content_box_in::before, .content_box_in::after{
	content:'';
	position:absolute;
	z-index:-1;
	width:520px;
	height:520px;
	margin:auto;
	background:no-repeat center/cover;
}
.content_box_in::before{
	top:0;
	bottom:14%;
	right:calc(100% - 105px);
	background-image:url(/recruit/img/common/bg_gradation_green.png);
}
.content_box_in::after{
	top:21%;
	bottom:0;
	left:calc(100% - 140px);
	background-image:url(/recruit/img/common/bg_gradation_red.png);
}
.content_box_in > *:first-child{margin-top:0;}
.content_box_in h2{
	padding:0;
	margin:80px 0 30px;
	background:none;
}
.content_box_in h2[data-num]{counter-increment:head;}
.content_box_in h2[data-num]::before{
	content:'Q'counter(head)'. ';
	color:#E41F1F;
}
.content_box_in h2 + p{margin:0 0 20px;}
.content_box_in h2 + p strong{
	display:inline-block;
	font-family:var(--font_serif);
	font-size:2.6rem;
	font-weight:500;
	letter-spacing:2.6px;
	line-height:3.7rem;
}
.content_box_in img{width:100%;}

.img_txt{
	display:flex;
	gap:20px;
}
.img_txt div{width:100%;}
.img_txt div:first-child{
	flex-shrink:0;
	width:150px;
}
.message_box{
	position:relative;
	padding:35px 40px 40px;
	margin-top:80px;
	background:linear-gradient(270deg, #F4612A 0%, #BA0808 100%);
	border-radius:10px;
}
.message_box::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:-135px;
	right:calc(100% - 105px);
	width:520px;
	height:520px;
	background:url(/recruit/img/common/bg_gradation_blue.png) no-repeat center/cover;
}
.message_box h2{
	margin:0 0 25px !important;
	color:#fff;
	font-size:2.8rem;
	font-weight:normal;
	letter-spacing:2.8px;
	line-height:4rem;
	text-align:center;
}
.message_box h2::before{
	content:'MESSAGE';
	display:block;
	font-family:var(--font_albert);
	font-size:1.6rem;
	font-weight:500;
	letter-spacing:1.6px;
	line-height:1.9rem;
	opacity:0.5;
}
.message_box h3{
	padding:0;
	margin:0 0 12px;
	color:#fff;
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
}
.message_box h3::before{display:none;}
.message_box p{
	margin:0;
	color:#fff;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.7rem;
}
.message_box img{border-radius:50%;}
.offtime_box, .schedule_box{
	position:relative;
	padding:35px 40px 40px;
	margin-top:30px;
	background:url(/recruit/img/common/bg_gray.jpg) no-repeat center/cover;
	border-radius:10px;
}
.schedule_box::before{
	content:'';
	position:absolute;
	z-index:-1;
	bottom:0;
	left:calc(100% - 140px);
	width:520px;
	height:520px;
	background:url(/recruit/img/common/bg_gradation_green.png) no-repeat center/cover;
}
.offtime_box h2, .schedule_box h2{
	margin:0 0 25px !important;
	font-size:2.8rem;
	font-weight:normal;
	letter-spacing:2.8px;
	line-height:4rem;
	text-align:center;
}
.offtime_box h2::before, .schedule_box h2::before{
	display:block;
	color:#E41F1F;
	font-family:var(--font_albert);
	font-size:1.6rem;
	font-weight:500;
	letter-spacing:1.6px;
	line-height:1.9rem;
}
.offtime_box h2::before{content:'OFF TIME';}
.schedule_box h2::before{content:'SCHEDULE';}
.offtime_box p, .schedule_box p{
	margin:0;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.7rem;
}
.offtime_box .img_txt{gap:25px;}
.offtime_box .img_txt div:first-child{width:260px;}
.schedule_box_in{
	display:flex;
	align-items:flex-start;
	gap:40px;
	margin-top:30px;
}
.schedule_box_in ul{
	position:relative;
	width:50%;
	padding:5px 0 0;
	margin:0;
}
.schedule_box_in ul::before{
	content:'';
	position:absolute;
	top:0;
	left:70px;
	width:1px;
	height:100%;
	background:#ccc;
}
.schedule_box_in li{
	display:flex;
	align-items:flex-start;
	list-style:none;
}
.schedule_box_in li + li{margin-top:20px;}
.schedule_box_in li span{
	flex-shrink:0;
	position:relative;
	width:70px;
	padding-right:20px;
	margin:1px 25px 0 0;
	color:#E41F1F;
	font-family:var(--font_albert);
	font-weight:500;
	text-align:right;
}
.schedule_box_in li span::after{
	content:'';
	position:absolute;
	top:8px;
	right:-4px;
	width:7px;
	height:7px;
	background:#E41F1F;
	border-radius:50%;
}

.localnav{
	position:relative;
	padding-top:90px;
	margin-top:100px;
}
.localnav::before{
	content:'';
	position:absolute;
	z-index:-1;
	top:0;
	left:calc(50% - var(--vw_50));
	width:var(--vw_100);
	height:calc(100% + 120px);
	background:url(/recruit/img/common/bg_gray.jpg) no-repeat center/cover;
	border-radius:30px 30px 0 0;
}
.ln_head{
	position:relative;
	padding-bottom:30px;
	margin:0 0 30px;
	background:none;
	font-size:3.5rem;
	font-weight:normal;
	letter-spacing:3.5px;
	line-height:5rem;
}
.ln_head::before{
	content:attr(data-en);
	display:block;
	padding-left:25px;
	margin-bottom:5px;
	background:url(/recruit/img/common/icon_midashi.svg) no-repeat center left;
	color:#E30613;
	font-family:var(--font_albert);
	font-weight:500;
	font-size:1.6rem;
	letter-spacing:1.6px;
	line-height:1.9rem;
}
.ln_head::after{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:var(--vw_100);
	height:1px;
	background:#888;
	border-radius:30px 30px 0 0;
}
.ln_btn .link_btn{margin:auto;}


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

/* parent */
.page_list{gap:35px 30px;}
.interview_title{
	margin-bottom:8px;
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:3.3rem;
}

}


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

/* single */
.interview_top_title::before{
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.5rem;
}
.interview_top_title_txt{
	padding:6px 8px 7px 10px;
	font-size:2.6rem;
	font-weight:normal;
	letter-spacing:2.6px;
	line-height:3.7rem;
}
.interview_top_info_in{
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}
.interview_top_info_in[data-job]::before{
	padding:1px 7px 3px;
	margin-bottom:8px;
	font-size:1.2rem;
	letter-spacing:1.2px;
	line-height:1.7rem;
}
.interview_top_name{
	font-size:1.6rem;
	letter-spacing:1.6px;
	line-height:2.4rem;
}
.interview_top_faculty{
	font-size:1.2rem;
	letter-spacing:1.2px;
	line-height:1.7rem;
}
.interview_top_img{border-radius:5px;}

.content_box_in h2{margin:65px 0 20px;}
.content_box_in h2 + p{margin-bottom:15px;}
.content_box_in h2 + p strong{
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
}
.offtime_box, .schedule_box{margin-top:20px;}
.message_box h3{
	font-size:1.8rem;
	letter-spacing:1.8px;
}
.message_box p, .offtime_box p, .schedule_box p{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2.5rem;
}
.ln_head{
	font-size:2.6rem;
	letter-spacing:2.6px;
	line-height:3.7rem;
}
.ln_head::before{
	padding-left:20px;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.7rem;
}

}


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

/* parent */
.job-people .page_top::before{
	top:80px;
	left:-160px;
}
.job-people .page_top::after{
	top:80px;
	right:-150px;
}
.job-people .page_title::after{
	bottom:-10px;
	width:300px;
	height:300px;
}
.page_list{gap:30px 20px;}
.interview_link{padding:12px 12px 15px;}
.interview_thumb{margin-bottom:10px;}
.interview_title{
	margin-bottom:8px;
	font-size:1.6rem;
	font-weight:normal;
	letter-spacing:1.6px;
	line-height:2.5rem;
}
.interview_info{
	background-position-y:bottom 4px;
	font-size:1.1rem;
	letter-spacing:1.1px;
	line-height:1.6rem;
}
.interview_name{
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}

/* single */
.interview_top{
	padding:30px;
	margin-bottom:50px;
}
.interview_top::before, .interview_top::after, .interview_top_pic::before{
	width:300px;
	height:300px;
}
.interview_top::before{
	top:60px;
	right:calc(100% - 110px);
}
.interview_top::after{
	top:60px;
	left:calc(100% - 145px);
}
.interview_top_title{margin-bottom:10px;}
.interview_top_title::after{top:7px;}
.interview_top_title_txt:first-child::before{top:-20px;}
.interview_top_pic{padding-left:200px;}
.interview_top_pic::before{
	top:-200px;
	left:13%;
}

.content_box::before, .content_box::after, .content_box_in::before, .content_box_in::after{
	width:300px;
	height:300px;
}
.content_box::before, .content_box_in::before{right:calc(100% - 80px);}
.content_box::after, .content_box_in::after{left:calc(100% - 80px);}
.img_txt div:first-child{width:130px;}
.offtime_box .img_txt div:first-child{width:200px;}
.message_box, .offtime_box, .schedule_box{padding:30px}
.message_box::before, .schedule_box::before{
	width:300px;
	height:300px;
}
.message_box::before{
	top:-50px;
	right:calc(100% - 80px);
}
.schedule_box::before{left:calc(100% - 80px);}
.message_box h2, .offtime_box h2, .schedule_box h2{
	font-size:2.5rem;
	letter-spacing:2.5px;
	line-height:3.6rem;
}
.message_box h2::before, .offtime_box h2::before, .schedule_box h2::before{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:1.6rem;
}
.schedule_box_in{gap:20px;}

.localnav{
	padding-top:60px;
	margin-top:90px;
}
.localnav::before{border-radius:20px 20px 0 0;}

}


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

/* parent */
.job-people .page_top::before{
	top:95px;
	left:-135px;
}
.job-people .page_top::after{
	top:60px;
	left:-155px;
}
.job-people .page_title::after{
	bottom:5px;
	left:58%;
	width:260px;
	height:260px;
}
.page_list{
	grid-template-columns:1fr 1fr;
	gap:20px 15px;
}
.interview_title{
	font-size:2rem;
	letter-spacing:2px;
	line-height:3.3rem;
}
.interview_info{
	background-position-y:bottom 5px;
	font-size:1.2rem;
	letter-spacing:1.2px;
	line-height:1.7rem;
}
.interview_name{
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
}

/* single */
.interview_top{
	display:flex;
	flex-direction:column-reverse;
	padding:30px 20px;
	margin-bottom:40px;
}
.interview_top::before, .interview_top::after, .interview_top_pic::before{
	width:260px;
	height:260px;
}
.interview_top::before{
	top:auto;
	right:calc(100% - 105px);
	bottom:40px;
}
.interview_top::after{
	top:60px;
	left:calc(100% - 125px);
}
.interview_top_info{position:static;}
.interview_top_title{margin-bottom:12px;}
.interview_top_title::after{top:7px;}
.interview_top_title_txt:first-child::before{top:-20px;}
.interview_top_pic{
	padding:0;
	margin-bottom:20px;
}
.interview_top_pic::before{
	top:-160px;
	left:-40px;
}
.interview_top_img{
	min-height:220px;
	object-fit:cover;
}

.content_box::before, .content_box::after, .content_box_in::before, .content_box_in::after{
	width:260px;
	height:260px;
}
.content_box::before{right:calc(100% - 85px);}
.content_box::after{
	top:19%;
	left:calc(100% - 85px);
}
.content_box_in::before{
	bottom:20%;
	right:calc(100% - 85px);
}
.content_box_in::after{
	top:19%;
	left:calc(100% - 85px);
}
.img_txt div:first-child{width:140px;}
.message_box, .offtime_box, .schedule_box{padding:30px 20px 25px;}
.message_box{margin-top:70px;}
.message_box::before, .schedule_box::before{
	width:260px;
	height:260px;
}
.message_box::before{
	top:calc(100% + 15px);
	right:calc(100% - 85px);
}
.schedule_box::before{left:calc(100% - 85px);}
.message_box h2, .offtime_box h2, .schedule_box h2{
	margin-bottom:20px !important;
	font-size:2.3rem;
	letter-spacing:2.3px;
	line-height:3.3rem;
}
.message_box h2::before, .offtime_box h2::before, .schedule_box h2::before{
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.5rem;
}
.schedule_box_in{
	display:block;
	margin-top:25px;
}
.schedule_box_in ul{
	width:auto;
	padding:0;
	margin-bottom:-5px;
}
.schedule_box_in ul + ul{
	padding-top:15px;
	margin-bottom:10px;
}
.schedule_box_in ul::before{left:65px;}
.schedule_box_in li + li{margin-top:15px;}
.schedule_box_in li span{
	width:65px;
	margin-top:2px;
}

.localnav{
	padding-top:40px;
	margin-top:80px;
}
.localnav::before{border-radius:10px 10px 0 0;}
.ln_head{margin-bottom:20px;}

}


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

/* single */
.offtime_box .img_txt{display:block;}
.offtime_box .img_txt div:first-child{
	max-width:400px;
	width:auto;
	margin:0 auto 15px;
}

}

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

/* parent */
.page_list{
	display:block;
	max-width:310px;
	margin:auto;
}
.page_list .interview_item{margin-bottom:20px;}

}


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

/* single */
.message_box .img_txt{display:block;}
.message_box .img_txt div:first-child{margin:0 auto 15px;}

}