@charset "UTF-8";
/* CSS Document */


/* pagetitle
--------------------- */
#pagetitle.career .pht_bg {
	background: url("../img/pagetitle.jpg") no-repeat center / cover;
}
#pagetitle.ca .pht_bg {
	background: url("../img/ca/main.jpg") no-repeat 75% center / cover;
}
#pagetitle.ca02 .pht_bg {
	background: url("../img/ca02/main.jpg") no-repeat center / cover;
}
#pagetitle.ta .pht_bg {
	background: url("../img/ta/main.jpg") no-repeat 75% center / cover;
}
#pagetitle.ta02 .pht_bg {
	background: url("../img/ta02/main.jpg") no-repeat center / cover;
}
#pagetitle.ts .pht_bg {
	background: url("../img/ts/main.jpg") no-repeat 75% center / cover;
}
#pagetitle.ts02 .pht_bg {
	background: url("../img/ts02/main.jpg") no-repeat center / cover;
}
#pagetitle.ca:before,
#pagetitle.ca02:before,
#pagetitle.ta:before,
#pagetitle.ta02:before,
#pagetitle.ts:before ,
#pagetitle.ts02:before {
	background: #F2F2F2;
}
	#pagetitle .profile {
		padding: 40px 50px 30px 50px;
		background: #fff;
		position: absolute;
		bottom: 0;
		left: 0;
	}
		#pagetitle .profile .head {
			font-size: 1.6rem;
			line-height: 1;
			letter-spacing: 0.1em;
			margin-bottom: 10px;
		}

		#pagetitle .profile .catch {
			font-size: 2.6rem;
			line-height: 1.4em;
			margin-bottom: 15px;
		}

		#pagetitle .profile h1 {
			font-size: 5.2rem;
			line-height: 1;
		}

		#pagetitle .profile .join {
			font-size: 1.2rem;
			line-height: 1.6em;
			padding-left: 20px;
			padding-top: 12px;
		}

		#pagetitle .profile .annotation {
			font-size: 1.0rem;
			line-height: 1;
			letter-spacing: 0.06em;
			margin-top: 8px;
		}





	
	
/* interview_list
--------------------- */
#interview_list {
	width: 100%;
	position: relative;
	padding-top: 50px;
	padding-bottom: 120px;
	background: #000;
	margin-bottom: 120px;
}
	#interview_list h2 {
		font-size: 4.0rem;
		text-align: center;
		color: #fff;
		margin-bottom: 50px;
		padding-top: 70px;
	}


	#interview_list .box {
		width: 32%;
		margin-right: 2%;
		margin-bottom: 2%;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
	#interview_list .box:nth-child(3n) {
		margin-right: 0;
	}
	#interview_list .box.om {
		background: url("../../img/people_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.sm {
		background: url("../../img/people_pht02.jpg") no-repeat center top / cover;
	}
	#interview_list .box.dj {
		background: url("../../img/people_pht03.jpg") no-repeat center top / cover;
	}
	#interview_list .box.hs {
		background: url("../../img/people_pht04.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ak {
		background: url("../../img/people_pht05.jpg") no-repeat center top / cover;
	}
	#interview_list .box.sa {
		background: url("../../img/people_pht06.jpg") no-repeat center top / cover;
	}
	#interview_list .box.nh {
		background: url("../../img/people_pht07.jpg") no-repeat center top / cover;
	}
	#interview_list .box.yn {
		background: url("../../img/people_pht08.jpg") no-repeat center top / cover;
	}
	#interview_list .box.hm {
		background: url("../../img/people_pht09.jpg") no-repeat center top / cover;
	}
	#interview_list .box.is {
		background: url("../../img/people_pht10.jpg") no-repeat center top  / cover;
	}
	#interview_list .box.ka {
		background: url("../../img/people_pht11.jpg") no-repeat center top  / cover;
	}
	/*#interview_list .box.nh:hover {
		background: url("../../img/people_pht07_hover.jpg") no-repeat center top / cover;
	}
	#interview_list .box.yn:hover {
		background: url("../../img/people_pht08_hover.jpg") no-repeat center top / cover;
	}
	#interview_list .box.hm:hover {
		background: url("../../img/people_pht09_hover.jpg") no-repeat center top / cover;
	}*/

	#interview_list .box.career01 {
		background: url("../../img/career_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.career02 {
		background: url("../../img/career_pht02.jpg") no-repeat center top / cover;
	}
	#interview_list .box.career03 {
		background: url("../../img/career_pht03.jpg") no-repeat center top / cover;
	}

	#interview_list .box.ca01 {
		background: url("../../img/ca_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ca02 {
		background: url("../../img/ca_pht02.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ta01 {
		background: url("../../img/ta_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ta02 {
		background: url("../../img/ta_pht02.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ts01 {
		background: url("../../img/ts_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ts02 {
		background: url("../../img/ts_pht02.jpg") no-repeat center top / cover;
	}
	#interview_list .box.sma {
		background: url("../../img/overseas_pht01.jpg") no-repeat center top / cover;
	}
	#interview_list .box.ndt {
		background: url("../../img/overseas_pht02.jpg") no-repeat center top / cover;
	}
		#interview_list .box a {
			display: block;
			height: 600px;
			position: relative;
		}
			#interview_list .box a .profile {
				width: 100%;
				color: #fff;
				background: rgba(0,0,0,0.15) url("../../common/img/btn_arrow.svg") no-repeat right 20px center;
				padding: 20px;
				position: absolute;
				bottom: 0;
				left: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#interview_list .box a:hover .profile {
				background: rgba(0,0,0,0.7) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
			}
				#interview_list .box a .profile .job {
					font-size: 1.4rem;
					line-height: 1.2em;
					letter-spacing: 0.1em;
					padding-bottom: 5px;
				}
					#interview_list .box a .profile .job .jp {
						font-size: 1.2rem;
					}

				#interview_list .box a .profile h3 {
					font-size: 3.0rem;
					font-weight: 500;
					line-height: 1;
					letter-spacing: 0.1em;
					padding-bottom: 10px;
				}
				#interview_list .box a .profile .join {
					font-size: 1.2rem;
					line-height: 1;
					letter-spacing: 0.1em;
				}




/* profile
--------------------- */
#profile {
	background: #F2F2F2;
	padding-left: 100px;
	padding-bottom: 120px;
}
	#profile .whitebox {
		background: #fff;
		padding: 50px 0;
	}
		#profile .whitebox .box {
			width: 50%;
			padding: 0 50px;
			border-right: solid 1px #ddd;
		}
		#profile .whitebox .box:nth-last-child(1) {
			border-right: none;
		}
			#profile .whitebox .box h2 {
				font-size: 2.2rem;
				line-height: 1;
				color: #C3002F;
				margin-bottom: 15px;
			}

			#profile .whitebox .box .txt {
				font-size: 1.4rem;
				line-height: 1.8em;
			}

			#profile .whitebox .box ul li {
				font-size: 1.4rem;
				line-height: 1.6em;
				letter-spacing: 0.1em;
				margin-bottom: 5px;
			}
			#profile .whitebox .box ul li:nth-last-child(1) {
				margin-bottom: 0;
			}




/* career
--------------------- */
#career {
	background: #F2F2F2;
}
	#career .years {
		padding-left: 100px;
		padding-bottom: 120px;
		position: relative;
	}
	#career .years:before {
		content: "";
		width: 30px;
		height: 30px;
		background: #C3002F;
		border-radius: 50%;
		position: absolute;
		top: 0;
		left: 0;
	}
	#career .years:after {
		content: "";
		width: 3px;
		height: 100%;
		background: #C3002F;
		position: absolute;
		top: 0;
		left: 13.5px;
	}
		#career .years .head {
			font-size: 2.0rem;
			line-height: 1.4em;
			margin-bottom: 10px;
			position: relative;
		}
		#career .years .head:after {
			content: "";
			width: 35px;
			height: 1px;
			background: #ddd;
			position: absolute;
			top: 14px;
			left: -53px;
		}

		#career .years h2 {
			font-size: 3.0rem;
			line-height: 1.4em;
			margin-bottom: 25px;
		}

		#career .years .txt {
			font-size: 1.5rem;
			letter-spacing: 0.1em;
			line-height: 2em;
		}
			#career .years .txt .sub_txt {
				display: block;
				padding-top: 10px;
				font-size: 1.2rem;
				line-height: 1.6em;
			}

		#career .years .pht {
			width: 100%;
			height: 440px;
			margin-top: 40px;
			margin-bottom: 30px;
		}

		#career .years ul {
			margin-top: 40px;
			margin-bottom: 30px;
		}
			#career .years ul li {
				width: 49%;
			}
			#career .years ul.column3 li {
				width: 32%;
			}


		#career .years .flex-start .txt {
			width: 60%;
		}
		#career .years .flex-start .sub-pht {
			width: 36%;
		}




/* goal
--------------------- */
#goal {
	padding-top: 120px;
	position: relative;
}
	#goal .text {
		width: 60%;
		padding-right: 5%;
		padding-bottom: 140px;
	}
		#goal .text .title {
			margin-bottom: 35px;
		}
			#goal .text .title .en,
			#goal .text .title h2 {
				text-align: left;
			}

		#goal .text .txt {
			font-size: 1.5rem;
			line-height: 2em;
		}


	#goal .pht {
		width: 40%;
	}




/* good
--------------------- */
#good {
	padding-top: 120px;
	padding-bottom: 120px;
	background: #C3002F;
}
	#good .text {
	}
		#good .text .title .en,
		#good .text .title h2 {
			text-align: left;
			color: #fff;
		}

		#good .text .txt {
			font-size: 1.5rem;
			line-height: 2em;
			color: #fff;
		}





	
	
/* holiday
--------------------- */
#holiday {
	width: 100%;
	background: #F2F2F2;
	padding: 150px 0 0 0;
}
	#holiday .pht {
		width: 40%;
	}
	#holiday.om .pht {
		height: 600px;
	}
	#holiday.hs .pht {
		aspect-ratio: 1 / 1;
		height: 100%;
	}


	#holiday .text {
		width: 60%;
		padding-left: 5%;
		padding-bottom: 100px;
	}
		#holiday .text .title {
			margin-bottom: 35px;
		}
			#holiday .text .title .en,
			#holiday .text .title h2 {
				text-align: left;
			}
			#holiday .text .title h2 {
				line-height: 1.3em;
			}

		#holiday .text .txt {
			font-size: 1.5rem;
			line-height: 2em;
		}





	
	
/* backbtn
--------------------- */
.backbtn {
	width: 200px;
	margin: 0 auto;
}
	.backbtn a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 50px;
		background: #c3002e;
		font-size: 1.5rem;
		text-align: center;
		color: #fff;
	}
	.backbtn a:hover {
		opacity: 0.7;
	}





	
	
/* career_list
--------------------- */
#career_list {
	width: 100%;
	position: relative;
	padding-top: 120px;
	padding-bottom: 120px;
	background: #000;
	margin-bottom: 120px;
}
	#career_list h2 {
		font-size: 4.0rem;
		text-align: center;
		color: #fff;
		margin-bottom: 50px;
		padding-top: 70px;
	}


	#career_list .box {
		width: 32%;
		margin-right: 2%;
		margin-bottom: 2%;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
	#career_list .box:nth-child(3n) {
		margin-right: 0;
	}
	#career_list .box.ca {
		background: url("../img/ca/main.jpg") no-repeat left 80% top / cover;
	}
	#career_list .box.ca02 {
		background: url("../img/ca02/main.jpg") no-repeat center top / cover;
	}
	#career_list .box.ts {
		background: url("../img/ts/main.jpg") no-repeat left 80% top / cover;
	}
	#career_list .box.ts02 {
		background: url("../img/ts02/main.jpg") no-repeat center top / cover;
	}
	#career_list .box.ta {
		background: url("../img/ta/main.jpg") no-repeat left 80% top / cover;
	}
	#career_list .box.ta02 {
		background: url("../img/ta02/main.jpg") no-repeat center top / cover;
	}
		#career_list .box a {
			display: block;
			height: 600px;
			position: relative;
		}
			#career_list .box a .profile {
				width: 100%;
				color: #fff;
				background: rgba(0,0,0,0.15) url("../../common/img/btn_arrow.svg") no-repeat right 20px center;
				padding: 20px;
				position: absolute;
				bottom: 0;
				left: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#career_list .box a:hover .profile {
				background: rgba(0,0,0,0.7) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
			}
				#career_list .box a .profile .job {
					font-size: 1.4rem;
					line-height: 1.2em;
					letter-spacing: 0.1em;
					padding-bottom: 5px;
				}
					#career_list .box a .profile .job .jp {
						font-size: 1.2rem;
					}

				#career_list .box a .profile h3 {
					font-size: 2.0rem;
					font-weight: 500;
					line-height: 1.4em;
					letter-spacing: 0.1em;
					padding-bottom: 10px;
				}
				#career_list .box a .profile .join {
					font-size: 1.2rem;
					line-height: 1;
					letter-spacing: 0.1em;
				}




/* bnr-women
--------------------- */
.bnr-women {
    max-width: 750px;
    margin: 100px auto 0 auto;
}
	.bnr-women a {
		display: block;
	}
	.bnr-women a:hover {
		opacity: 0.7;
	}





/* 1400px */
@media screen and (max-width: 1400px) {




/* goal
--------------------- */
#goal .text {
	width: 50%;
}
#goal .pht {
	width: 50%;
}
	

	
	
/* career_list
--------------------- */
#career_list .box a {
	height: 500px;
}
	

	
	
/* interview_list
--------------------- */
#interview_list .box a {
	height: 500px;
}



}












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



	
	
/* pagetitle
--------------------- */
#pagetitle .profile {
	padding: 40px;
}
	#pagetitle .profile .head {
		font-size: 1.4rem;
	}

	#pagetitle .profile .catch {
		font-size: 2.0rem;
	}

	#pagetitle .profile h1 {
		font-size: 3.6rem;
	}

	#pagetitle .profile .join {
		font-size: 1.0rem;
		padding-top: 6px;
	}
	
	
	





	
	
/* interview_list
--------------------- */
#interview_list {
	padding-top: 0;
	padding-bottom: 70px;
	margin-bottom: 70px;
}
	#interview_list h2 {
		font-size: 3.0rem;
		margin-bottom: 30px;
		padding-top: 40px;
	}
	
	
	#interview_list .box a {
		height: 440px;
	}
		#interview_list .box a .profile .job {
			font-size: 1.2rem;
		}
			#interview_list .box a .profile .job .jp {
				font-size: 1.0rem;
			}
	
		#interview_list .box a .profile h3 {
			font-size: 2.6rem;
		}
		#interview_list .box a .profile .join {
			font-size: 1.0rem;
		}


	
	




/* profile
--------------------- */
#profile {
	padding-left: 5%;
	padding-bottom: 70px;
}
	#profile .whitebox {
		padding: 30px 0;
	}
		#profile .whitebox .box {
			padding: 0 30px;
		}
			#profile .whitebox .box h2 {
				font-size: 2.0rem;
			}

			#profile .whitebox .box .txt {
				font-size: 1.3rem;
			}

			#profile .whitebox .box ul li {
				font-size: 1.3rem;
			}




/* career
--------------------- */
#career .years {
	padding-left: 70px;
	padding-bottom: 70px;
}
	#career .years .head {
		padding-top: 2px;
		font-size: 1.7rem;
	}
	#career .years .head:after {
		width: 23px;
		top: 14px;
		left: -33px;
	}

	#career .years h2 {
		font-size: 2.3rem;
		line-height: 1.4em;
		margin-bottom: 20px;
	}

	#career .years .txt {
		font-size: 1.4rem;
	}

	#career .years .pht {
		height: 350px;
		margin-top: 30px;
		margin-bottom: 20px;
	}

	#career .years ul {
		margin-top: 30px;
		margin-bottom: 20px;
	}


		#career .years .flex-start .txt {
			width: 56%;
		}
		#career .years .flex-start .sub-pht {
			width: 40%;
		}




/* goal
--------------------- */
#goal {
	padding-top: 70px;
	margin-bottom: 70px;
}
#goal:before {
	height: 70px;
}
	#goal .text {
		padding-bottom: 140px;
	}
		#goal .text .title {
			margin-bottom: 20px;
		}

		#goal .text .txt {
			font-size: 1.4rem;
		}




/* good
--------------------- */
#good {
	padding-top: 70px;
	padding-bottom: 70px;
}
	#good .text .title {
		margin-bottom: 20px;
	}

	#good .text .txt {
		font-size: 1.4rem;
	}





	
	
/* holiday
--------------------- */
#holiday {
	padding: 70px 0 0 0;
}
	#holiday.om .pht {
		height: 350px;
	}
	
	#holiday .text {
		padding-bottom: 80px;
	}
		#holiday .text .title {
			margin-bottom: 20px;
		}

		#holiday .text .txt {
			font-size: 1.4rem;
		}


	
	
/* career_list
--------------------- */
#career_list {
	padding-top: 70px;
	padding-bottom: 70px;
	margin-bottom: 70px;
}
	#career_list h2 {
		font-size: 3.0rem;
		margin-bottom: 30px;
		padding-top: 40px;
	}
	
	
	#career_list .box a {
		height: 440px;
	}
		#career_list .box a .profile .job {
			font-size: 1.2rem;
		}
			#career_list .box a .profile .job .jp {
				font-size: 1.0rem;
			}
	
		#career_list .box a .profile h3 {
			font-size: 2.0rem;
		}
		#career_list .box a .profile .join {
			font-size: 1.0rem;
		}





}

	







/* max 768px */
@media screen and (max-width: 768px) {



	
	
/* pagetitle
--------------------- */
#pagetitle.career .pht_bg {
	background: url("../img/pagetitle_sp.jpg") no-repeat center / cover;
}
#pagetitle.ca02 .pht_bg {
	background: url("../img/ca02/main.jpg") no-repeat left 35% center / cover;
}
	#pagetitle .profile {
		padding: 30px 5%;
	}
		#pagetitle .profile .head {
			font-size: 1.3rem;
		}

		#pagetitle .profile .catch {
			font-size: 1.6rem;
			margin-bottom: 10px;
		}

		#pagetitle .profile h1 {
			font-size: 3.6rem;
		}

		#pagetitle .profile .join {
			font-size: 1.0rem;
			padding-top: 6px;
		}
		#pagetitle.ca02 .profile .join {
			line-height: 1.2em;
			letter-spacing: 0.2em;
			margin-bottom: 4px;
		}
	
	
	





	
	
/* interview_list
--------------------- */
#interview_list {
	padding-top: 20px;
}
#interview_list .inner {
	display: block;
}
#interview_list h2 {
	font-size: 3.0rem;
	margin-bottom: 20px;
	padding-top: 40px;
}

#interview_list .box {
	width: 100%;
	margin-right: 0;
	margin-bottom: 10px;
}
	#interview_list .box a {
		width: 100%;
		height: 100%;
		aspect-ratio: 1 / 1;
	}
		#interview_list .box a .profile {
			background: rgba(0,0,0,0.5) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
			padding: 12px;
		}
		#interview_list .box a:hover .profile {
			background: rgba(0,0,0,0.5) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
		}
			#interview_list .box a .profile .job {
				font-size: 1.2rem;
			}
			#interview_list .box a .profile h3 {
				padding-bottom: 5px;
			}




/* profile
--------------------- */
#profile {
	padding-left: 0;
	padding-bottom: 70px;
}
	#profile .whitebox {
		display: block;
		padding: 0 5%;
	}
		#profile .whitebox .box {
			width: 100%;
			padding: 30px 0;
			border-right: none;
			border-bottom: solid 1px #ddd;
		}
		#profile .whitebox .box:nth-last-child(1) {
			border-bottom: none;
		}
	
			#profile .whitebox .box h2 {
				font-size: 1.8rem;
				margin-bottom: 10px;
			}

			#profile .whitebox .box .txt,
			#profile .whitebox .box ul li {
				font-size: 1.2rem;
				letter-spacing: 0.1em;
			}




/* career
--------------------- */
#career .years {
	padding-left: 60px;
}
#career .years:before {
	width: 22px;
	height: 22px;
}
#career .years:after {
	width: 2px;
	left: 10.5px;
}
	#career .years .head {
		padding-top: 0;
		font-size: 1.6rem;
	}
	#career .years .head:after {
		content: "";
		width: 20px;
		height: 1px;
		background: #ddd;
		position: absolute;
		top: 10px;
		left: -30px;
	}

	#career .years h2 {
		font-size: 2.2rem;
		text-align: left;
	}
		#career .years h2 br {
			display: none;
		}

	#career .years .txt {
		line-height: 1.8em;
	}
		#career .years .txt .sub_txt {
			font-size: 1.0rem;
		}

	#career .years .pht {
		height: 240px;
		margin-top: 30px;
		margin-bottom: 20px;
	}

	#career .years ul {
		display: block;
		margin-top: 30px;
		margin-bottom: 20px;
	}
		#career .years ul li {
			width: 100%;
			margin-bottom: 10px;
		}
		#career .years ul li:nth-last-child(1) {
			margin-bottom: 0;
		}
		#career .years ul.column3 li {
			width: 100%;
		}


	#career .years .flex-start {
		display: block;
	}
		#career .years .flex-start .txt {
			width: 100%;
			margin-bottom: 20px;
		}
		#career .years .flex-start .sub-pht {
			width: 100%;
		}




/* goal
--------------------- */
#goal:before {
	content: "";
	width: 100%;
	height: 120px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
}
#goal .inner {
	display: block;
}
	#goal .text {
		width: 100%;
		padding-right: 0;
		padding-bottom: 40px;
	}


	#goal .pht {
		width: 100%;
		height: 240px;
	}





	
	
/* holiday
--------------------- */
#holiday {
	padding: 80px 0 0 0;
}
#holiday .inner {
	display: block;
}
	#holiday .pht {
		width: 100%;
		height: 240px;
	}
	#holiday.om .pht {
		height: 450px;
	}
	
	#holiday .text {
		width: 100%;
		padding: 0;
		margin-bottom: 30px;
	}
		#holiday .text h2 {
			font-size: 2.0rem;
		}
	
	
	





	
	
/* career_list
--------------------- */
#career_list {
	padding-top: 60px;
}
#career_list .inner {
	display: block;
}
#career_list h2 {
	font-size: 3.0rem;
	margin-bottom: 20px;
	padding-top: 40px;
}

#career_list .box {
	width: 100%;
	margin-right: 0;
	margin-bottom: 10px;
}
	#career_list .box a {
		width: 100%;
		height: 100%;
		aspect-ratio: 1 / 1;
	}
		#career_list .box a .profile {
			background: rgba(0,0,0,0.5) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
			padding: 12px;
		}
		#career_list .box a:hover .profile {
			background: rgba(0,0,0,0.5) url("../../common/img/btn_arrow.svg") no-repeat right 15px center;
		}
			#career_list .box a .profile .job {
				font-size: 1.2rem;
			}
			#career_list .box a .profile h3 {
				padding-bottom: 5px;
			}




/* bnr-women
--------------------- */
.bnr-women {
    max-width: 750px;
    margin: 60px 6% 0 6%;
}


	


}