@charset "utf-8";

/* pagetitle：ページタイトル */
/* -------------------------------------------------- */
#pagetitle {
	width: 100%;
	height: 830px;
	background-image: url(../../img/recruit/ph1_pc.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	margin-bottom: 25px;
}

#pagetitleInner {
	padding: 90px 160px;
	background-color: rgba(0, 132, 189, 0.85);
	position: absolute;
	top: 200px;
	left: 9%;
	text-align: center;
}

#pagetitleLogo {
	width: 277px;
	height: 82px;
	margin: 0 auto 40px;
}

#pagetitleLogo img {
	width: 100%;
	height: auto;
}

#pagetitleHead {
	font-size: 4rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.100em;
	color: #fff;
	margin-bottom: 1em;
}

#pagetitleDriver {
	background-color: #fff;
	color: #0185bc;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.050em;
	padding: 20px 55px;
}

@media all and (max-width: 1699px) {
	#pagetitle {
		height: 690px;
		margin-bottom: 25px;
	}
	#pagetitleInner {
		padding: 75px 133px;
		top: 166px;
	}
	#pagetitleLogo {
		width: 230px;
		height: 68px;
		margin: 0 auto 33px;
	}
	#pagetitleHead {
		font-size: 3.3rem;
	}
	#pagetitleDriver {
		font-size: 2.2rem;
		padding: 17px 46px;
	}
}


/* what：どんな会社 */
/* -------------------------------------------------- */
#what {
	text-align: center;
}

#whatImg {
	width: 90%;
	margin: 0 auto;
	max-width: 1600px;
	margin-bottom: 45px;
}

#whatImg img {
	width: 100%;
	height: auto;
}

#whatTit {
	font-size: 3.4rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.100em;
	margin-bottom: 1em;
}

#whatTxt {
	font-size: 2.2rem;
	line-height: 1.818;
	letter-spacing: 0.100em;
	margin-bottom: 150px;
}

@media all and (max-width: 1699px) {
	#whatTit {
		font-size: 2.8rem;
	}
	#whatTxt {
		font-size: 1.8rem;
	}
}


/* greeting：あいさつ */
/* -------------------------------------------------- */
#greeting {
	width: 100%;
	margin-bottom: 150px;
}

#greetingImg {
	float: left;
	width: 50%;
	max-width: 960px;
}

#greetingImg img {
	width: 100%;
	height: auto;
}

#greetingBody {
	background-color: #0185bc;
	margin-left: 8.5%;
	margin-top: 80px;
	padding: 5% 8% 5% 45%;
	color: #fff;
}

#greetingBodyHead {
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.100em;
	margin-bottom: 2em;
}

#greetingBodyMain {
	font-size: 2.2rem;
	line-height: 1.364;
	letter-spacing: 0.100em;
	margin-bottom: 1.25em;

}

#greetingBodySig {
	font-size: 2.2rem;
	line-height: 1;
	letter-spacing: 0.100em;
	text-align: right;
}

@media all and (max-width: 1699px) {
	#greetingBodyHead {
		font-size: 2.5rem;
	}
	#greetingBodyMain {
		font-size: 1.8rem;
	
	}
	#greetingBodySig {
		font-size: 1.8rem;
	}
}


/* pr：アピールポイント */
/* -------------------------------------------------- */
#pr {
	width: 100%;
	padding: 0 9%;
	text-align: center;
}

#prTxt1 {
	font-size: 4.8rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.075em;
	margin-bottom: 0.5em;
}

#prTxt2 {
	font-size: 4rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.100em;
	margin-bottom: 1em;
}

#prTxt3 {
	font-size: 3.7rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.100em;
	margin-bottom: 2em;
}

#prList {
	width: 100%;
	max-width: 1600px;
	margin: 0 auto 60px;
}

#prList ul {
	letter-spacing: -.4em;
	margin-left: -2%;
	margin-right: -2%;
}

#prList ul li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin: 0 2%;
	width: calc(33.33% - 2%*2);
}

.prListHead {
	font-size: 3rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.000em;
	color: #0185bc;
	height: 130px;
	background-image: url(../../img/recruit/bg1_pc.png);
	background-position: center bottom 38px;
	background-repeat: no-repeat;
	background-size: contain;
}

.prListImg img {
	width: 100%;
	height: auto;
}

#prTxt4 {
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.375;
	letter-spacing: 0.050em;
	margin-bottom: 4.5em;
}

#prTxt5 {
	font-size: 4rem;
	font-weight: 300;
	line-height: 1.375;
	letter-spacing: 0.100em;
	background-image: url(../../img/recruit/bg2.png);
	background-position: center bottom 45px;
	background-repeat: no-repeat;
	background-size: 133px auto;
	padding-bottom: 145px;
}

#prPhoto {
	width: 90%;
	max-width: 1600px;
	margin: 0 auto 70px;
}

#prPhoto img {
	width: 100%;
	height: auto;
}

#prTxt7Wrap {
	background-image: url(../../img/recruit/bg3_pc.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
	padding-top: 10px;
}

#prTxt7 {
	font-size: 5rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.075em;
	margin-bottom: 0.5em;
}

#prTxt8 {
	font-size: 3.7rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.010em;
	margin-bottom: 150px;
}

@media all and (max-width: 1699px) {
	#prTxt2 {
		font-size: 3.3rem;
	}
	#prTxt3 {
		font-size: 3.1rem;
	}
	.prListHead {
		font-size: 2.5rem;
		height: 108px;
		background-position: center bottom 32px;
	}
	#prTxt4 {
		font-size: 2.7rem;
	}
	#prTxt5 {
		font-size: 3.3rem;
		background-position: center bottom 37px;
		background-size: 110px auto;
		padding-bottom: 120px;
	}
	#prPhoto {
		margin: 0 auto 58px;
	}
	#prTxt7Wrap {
		padding-top: 0;
	}
	#prTxt7 {
		font-size: 4.2rem;
	}
	#prTxt8 {
		font-size: 3.1rem;
		margin-bottom: 150px;
	}
}


/* voice：声 */
/* -------------------------------------------------- */
#voice {
	margin-bottom: 150px;
}

#voice ul li {
	position: relative;
	margin-bottom: 100px;
}

.voiceImg {
	float: left;
	width: 90%;
	position: relative;
	z-index: 1;
}
	.imgRight .voiceImg {
		float: right;
	}

.voiceImg img {
	width: 100%;
	height: auto;
}

.voiceBody {
	width: 810px;
	background-color: #0185bc;
	box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.2);
	position: absolute;
	top: 7.5vw;
	right: 4%;
}

#voice1 {
	z-index: 4;
}
#voice2 {
	z-index: 3;
}
#voice3 {
	z-index: 2;
}
.imgRight .voiceBody  {
	left: 4%;
}

.voiceBodyInner {
	display: table;
}

.voiceBodyNum {
	display: table-cell;
	width: 1.2em;
	height: 1.2em;
	text-align: center;
	vertical-align: middle;
	font-size: 25rem;
	font-weight: 100;
	line-height: 1;
	letter-spacing: -0.050em;
	color: rgba(255, 255, 255, 0.20);
}

.voiceBodyData {
	display: table-cell;
	vertical-align: middle;
}

.voiceBodyDataEn {
/*	font-family: 'Avenir Next', sans-serif;*/
	font-size: 2rem;
	font-weight: normal;
	line-height: 1;
	letter-spacing: 0.250em;
	color: #fff;
	margin-bottom: 1.25em;
}

.voiceBodyDataName {
	font-size: 4.2rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.230em;
	color: #fff;
	margin-bottom: 0.75em;
}

.voiceBodyDataYear {
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.100em;
	color: #fff;
}

.voiceBodyBtn {
	width: 264px;
	height: 80px;
	background-color: #00425e;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 80px;
	letter-spacing: 0.130em;
	color: #fff;
	text-align: center;
	margin: -80px 0 0 auto;
	background-image: url(../../img/common/arrow_white_down.png);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: 20px auto;
	cursor: pointer;
}

.voiceBodyBtn.open {
	background-image: url(../../img/common/arrow_white_up.png);
}

.voiceBodyComment {
/* 	display: none; */  /* 予め非表示にするとjscrollpaneが使えない  */ 
	background-color: #0177a9;
	overflow: hidden;
	padding: 36px 44px;
}

.voiceBodyCommentInner {
	height: 330px;
}

#voice .jspVerticalBar {
	width: 5px;
	right: 0;
}
#voice .jspTrack {
	background-color: #f4fbfd;
}
#voice .jspDrag {
	background: #bfbfbf;
}
#voice .ppSubhead {
	font-size: 1.5rem;
	line-height: 1.3333;
	letter-spacing: 0em;
	font-weight: bold;
}

.voiceBodyCommentQ {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.050em;
	color: #fff;
	margin-bottom: 1em;
	text-indent: -1em;
	padding-left: 1em;
	padding-right: 30px;
	text-align: justify;
	text-justify: inter-ideograph;
}

.voiceBodyCommentA {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.050em;
	color: #fff;
	text-indent: -1em;
	padding: 0 30px 1em 1em;
	margin-bottom: 1em;
	text-align: justify;
	text-justify: inter-ideograph;
	border-bottom: 1px #FFF dotted;
}

@media all and (max-width: 1699px) {
	.voiceBody {
		width: 672px;
	}
	.voiceBodyNum {
		font-size: 20.8rem;
	}
	.voiceBodyDataEn {
		font-size: 1.7rem;
	}
	.voiceBodyDataName {
		font-size: 3.5rem;
	}
	.voiceBodyDataYear {
		font-size: 1.8rem;
	}
	.voiceBodyBtn {
		width: 219px;
		height: 66px;
		font-size: 1.8rem;
		line-height: 66px;
		margin: -66px 0 0 auto;
		background-position: right 17px center;
		background-size: 17px auto;
	}
	.voiceBodyComment {
		padding: 30px 37px;
	}
	.voiceBodyCommentInner {
		height: 330px;
	}
	#voice .ppSubhead {
		font-size: 1.2rem;
	}
	.voiceBodyCommentQ {
		font-size: 2rem;
		padding-right: 25px;
		font-weight: bold;
	}
	.voiceBodyCommentA {
		font-size: 1.7rem;
		padding-right: 25px;
	}
}

@media all and (max-width: 1449px){
	.voiceBodyCommentInner {
		height: 330px;
	}
}


/* flow：流れ */
/* -------------------------------------------------- */
#flow {
	padding: 3%;
}

.flowBox {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 100px;
	border: solid 10px #98cce2;
	padding: 3% 4%;
}

.flowNum {
	font-family: 'Abel', "Noto Sans Japanese", sans-serif;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	color: #0185bc;
	text-align: center;
	margin-bottom: 1em;
}

.flowNum:after {
	display: block;
	content: "";
	width: 0.75em;
	height: 0.1em;
	background-color: #0185bc;
	margin-left: calc(50% - 0.75em/2);
	margin-top: 0.25em;
}

.flowTit {
	font-size: 4rem;
	font-weight: 300;
	line-height: 1;
	color: #0185bc;
	text-align: center;
	margin-bottom: 1em;
}

.flowTitSub {
	font-size: 2.6rem;
	line-height: 1;
	letter-spacing: 0.050em;
	background-color: #eeeeee;
	padding: 0.5em 0;
	text-align: center;
	margin: 1.25em 0;
}

.flowList li {
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.364;
	margin-bottom: 1.302vw;
	background-image: url(../../img/recruit/bg4.png);
	background-position: left top 0.5em;
	background-repeat: no-repeat;
	background-size: 1em auto;
	padding-left: 1.5em;
}

.flowList li:last-child {
	margin-bottom: 0;
}

#flow1, #flow2 {
	position: relative;
}

#flow1:after, #flow2:after {
	display: block;
	content: "";
	width: 63px;
	height: 63px;
	background-image: url(../../img/recruit/bg5.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 63px auto;
	position: absolute;
	bottom: -90px;
	left: calc(50% - 63px/2);
}

.flowListinList {
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.050em;
	margin: 0.75em 0 1.25em;
}

.flowBody {
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.364;
	letter-spacing: 0.050em;
}


/* numdata：数字で見る */
/* -------------------------------------------------- */
#numdata {
	padding: 3%;
}

#numdataImg {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 150px;
}

#numdataImg img {
	width: 100%;
	height: auto;
}


/* recflow：採用まで */
/* -------------------------------------------------- */
#recflow {
	padding: 3%;
}

#recflowInner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 150px;
}

#recflow ul {
	letter-spacing: -.4em;
	background-image: url(../../img/recruit/bg_flow_pc.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 350px;
}

#recflow ul li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 33.33%;
	padding: 30px;
	padding-bottom: 0;
}

.recflowNum {
	font-family: 'Abel', "Noto Sans Japanese", sans-serif;
	font-size: 2.4rem;
	font-weight: normal;
	line-height: 1;
	letter-spacing: -0.005em;
	color: #0185bc;
	border: solid 3px #b0d8e9;
	height: 72px;
	width: 72px;
	border-radius: 72px;
	text-align: center;
	padding-top: 10px;
	margin: 0 auto 15px;
}

.recflowNum span {
	font-size: 1.8rem;
}

.recflowHead {
	font-size: 2.4rem;
	line-height: 1;
	letter-spacing: 0.050em;
	color: #0185bc;
	text-align: center;
	margin-bottom: 0.5em;
}

.recflowImg {
	height: 85px;
	display: table;
	width: 100%;
	text-align: center;
	margin-bottom: 16px;
}

.recflowImgInner {
	display: table-cell;
	vertical-align: middle;
}

.recflowL .recflowImg img {
	width: 93px;
	height: auto;
}
.recflowC .recflowImg img {
	width: 65px;
	height: auto;
}
.recflowR .recflowImg img {
	width: 55px;
	height: auto;
}

.recflowBody {
	font-size: 1.6rem;
	line-height: 1.375;
}


/* 募集要項 */
/* -------------------------------------------------- */
#comdata {
	width: 100%;
	max-width: 1030px;
	padding: 0 15px;
	margin: 0 auto 64px;
}

#comdata table {
	width: 100%;
	border-top: solid 1px #626262;
}

#comdata table tr {
	border-bottom: solid 1px #c9c9c9;
}

#comdata table tr:last-child {
	border-bottom: solid 1px #626262;
}

#comdata table th {
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.050em;
	vertical-align: middle;
	white-space: nowrap;
	text-align: right;
	padding-right: 1.5em;
	width: 18%;
}

#comdata table td {
	font-size: 2.2rem;
	line-height: 1.364;
	letter-spacing: 0.050em;
	padding: 0.5em 0;
}

.tdInner {
	border-left: solid 1px #c9c9c9;
	padding:0.5em 0 0.5em 1em;
}

.comdataAddressWrap {
	display: table;
}

.comdataAddressWrap.mb {
	margin-bottom: 1em;
}


/* エントリーする */
/* -------------------------------------------------- */
#entry {
	text-align: center;
	margin-bottom: 158px;
}

#entryBtn {
	margin: 0 auto;
}

#entryBtn a {
	display: inline-block;
	padding: 1.25em 7em;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.130em;
	color: #fff;
	background-color: #f39700;
	border: solid 2px #f39700;
	background-image: url(../../img/common/arrow_white_right.png);
	background-position: right 25px center;
	background-repeat: no-repeat;
	background-size: 17px auto;
	margin-bottom: 40px;
	transition: 0.3s ease-in-out;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		-o-transition: 0.3s ease-in-out;
}
#entryBtn a:hover {
	background-image: url(../../img/common/arrow_orange_right.png);
	color: #f39700;
	background-color: #fff;
}

#entryTxt1 {
	font-size: 2.4rem;
	line-height: 1;
	margin-bottom: 1em;
}

#entryTel {
	font-size: 6.4rem;
	font-weight: 100;
	line-height: 1;
	letter-spacing: 0.025em;
	color: #0185bc;
	vertical-align: top;
}

#entryTel a {
	color: #0185bc;
}

#entryTel:before {
	display: inline-block;
	content: "";
	width: 1.1em;
	height: 1em;
	background-image: url(../../img/common/fig_tel.png);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 0.9em auto;
	vertical-align: top;
	vertical-align: middle;
	margin-bottom: 0.2em;
}

#entryTxt2 {
	font-size: 2em;
	line-height: 1;
}

