@charset "shift-jis";

/* 採用メッセージ
============================ */
.JS body {background-color: #fff;}
body {
	background: #fff;
	overflow: hidden;
}
#recruit.second .ctsArea {
	background: #fff;
}
figure { margin: 0; }

/* ビジュアルエリア
------------------------------------------------- */
#recruit.message .ttlArea .wrap.mgn {
	padding-bottom: 40px;
	position: relative;
	z-index: 10;
}

/* キャッチコピー */
#recruit.message h2.copy {
	font-size: 22px;
	line-height: 1.5;
	margin: 50px 0 30px;
}
#recruit.message .name {
	font-size: 18px;
}
#recruit.message .name span {
	font-size: 13px;
	display: block;
	}
	@media screen and (min-width:768px) {
	#recruit.message h2.copy {
		font-size: 30px;
		margin: 52px 0 30px;
	}
	#recruit.message .name {
		font-size: 23px;
	}
	#recruit.message .name span {
		font-size: 15px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit.message h2.copy {
		font-size: 38px;
		line-height: 1.6;
		margin: 70px 0 30px;
	}
	#recruit.message .name {
		font-size: 23px;
	}
	#recruit.message .name span {
		font-size: 15px;
	}
}

/* ビジュアル */
#recruit.message .ttlArea figure {
	margin: 40px 0 0;
	}
	@media screen and (min-width:768px) {
	#recruit.message .ttlArea figure {
		margin: 54px 0 0;
	}
}

/* 見出し
------------------------------------------------- */
#recruit .message h3 {
	font-size: 20px;
	font-family: 'Noto Serif JP', "游明朝", YuMincho, serif;
	margin: 0 0 24px;
}
#recruit .message h3 span {
	display: block;
	font-style: italic;
	position: relative;
	font-size: 44px;
	letter-spacing: 0.1em;
	margin-bottom: 8px;
}
#recruit .message h3 span::before {
	display: block;
	position: absolute;
	content: "";
	width: calc(100% - 1.8em);
	height: 1px;
	background: #555;
	top: 0.85em;
	right: 0;
}
#recruit .message .sec04 h3 span {
	letter-spacing: normal;
}
#recruit .message .sec04 h3 span::before {
	width: calc(100% - 4.7em);
	}
	@media screen and (min-width:768px) {
	#recruit .message h3 {
		font-size: 25px;
		margin: 0 0 36px;
	}
	#recruit .message h3 span {
		font-size: 60px;
		letter-spacing: 0.1em;
		margin-bottom: 8px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message h3 {
		font-size: 28px;
		margin: 0 0 36px;
	}
	#recruit .message h3 span {
		font-size: 70px;
	}
}

/* テキスト
------------------------------------------------- */
#recruit .message div[class*="sec"] p {
	margin-top: 1em;
}
#recruit .message div[class*="sec"] p:first-of-type {
	margin-top: 0;
}

/* セクション間の余白調整
------------------------------------------------- */
#recruit .message .wrap.sec02,
#recruit .message .wrap.sec04,
#recruit .message .wrap.mgn.sec01,
#recruit .message .wrap.mgn.sec03 {
	padding: 0 40px 30px;
	}
	@media screen and (min-width:768px) {
	#recruit .message .wrap.mgn.sec01,
	#recruit .message .wrap.sec02,
	#recruit .message .wrap.mgn.sec03,
	#recruit .message .wrap.sec04 {
		padding: 0 54px 50px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message .wrap.sec02,
	#recruit .message .wrap.sec04 {
		padding: 0 0 50px;
	}
	#recruit .message .wrap.mgn.sec01,
	#recruit .message .wrap.mgn.sec03 {
		padding: 0 54px 50px;
	}
}

/* 01
------------------------------------------------- */
#recruit .message .sec01 .inner {
	position: relative;
	}
	@media screen and (min-width:768px) {
	#recruit .message .sec01 .inner {
		width: 85%;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message .sec01 .inner {
		width: 78%;
	}
}

/* 02
------------------------------------------------- */
#recruit .message .sec02 .col2 {
	position: relative;
	z-index: 10;
}
#recruit .message .sec02 .col2 figure {
	width: 80%;
	margin-top: 24px;
	}
	@media screen and (min-width:768px) {
	#recruit .message .sec02 .col2 figure {
		width: 55%;
		margin-top: 36px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message .sec02 .col2 {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}
	#recruit .message .sec02 .col2 .txt {
		flex-basis: 57%;
		padding-bottom: 100px;
	}
	#recruit .message .sec02 .col2 figure {
		flex-basis: 36%;
		order: -1;
	}
}

/* 03
------------------------------------------------- */
#recruit .message .sec03 h3,
#recruit .message .sec03 .columns {
	position: relative;
	z-index: 10;
}
@media screen and (min-width:768px) {
	#recruit .message .sec03 .columns {
		column-count: 2;
		column-gap: 2.5em;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message .sec03 .columns {
		column-count: 2;
		column-gap: 4em;
	}
}

/* 04
------------------------------------------------- */
#recruit .message .sec04 {
	margin-bottom: 75px;
}
#recruit .message .sec04 .inner {
	padding-bottom: 24px;
	border-bottom: 1px solid #555;
	position: relative;
	z-index: 10;
}
#recruit .message .sec04 figure {
		margin: 0 0 24px;
	}
	@media screen and (min-width:768px) {
	#recruit .message .sec04 {
		margin-bottom: 100px;
	}
	#recruit .message .sec04 .inner {
		width: 90%;
		margin-left: auto;
		padding-bottom: 36px;
	}
	#recruit .message .sec04 figure {
		margin: 0 0 36px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit .message .sec04 .inner {
		width: 80%;
	}
}

/* 背景の平行四辺形
------------------------------------------------- */
#recruit.message {
	background: transparent!important;
}
#recruit.message .ttlArea,
#recruit .message .wrap.mgn.sec01,
#recruit .message .wrap.sec02,
#recruit .message .sec03,
#recruit .message .wrap.sec04 {
	position: relative;
}
#recruit.message .ttlArea::before,
#recruit .message .wrap.mgn.sec01::before,
#recruit .message .wrap.sec02::before,
#recruit .message .sec03::before,
#recruit .message .wrap.sec04::before {
	transform: skewX(-45deg);
	content: "";
	position: absolute;
	background: #f6f6f6;
	z-index: 0;
}
#recruit.message .ttlArea::before {
	top: -43px;
	right: 5%;
	width: 54%;
	height: 35%;
}
#recruit .message .wrap.mgn.sec01::before {
	top: -164px;
	left: -5%;
	width: 62%;
	height: 260px;
}
#recruit .message .wrap.sec02::before {
	top: 0;
	left: -5%;
	width: 70%;
	height: 270px;
}
#recruit .message .sec03::before {
	top: -54px;
	right: -6%;
	width: 65%;
	height: 250px;
}
#recruit .message .wrap.sec04::before {
	bottom: -75px;
	right: -4%;
	width: 70%;
	height: 240px;
	}
	@media screen and (min-width:768px) {
	#recruit.message .ttlArea::before {
		top: -42px;
		right: 6%;
		width: 45%;
		height: 31%;
	}
	#recruit .message .wrap.mgn.sec01::before {
		top: -192px;
		left: -3%;
		width: 60%;
		height: 360px;
	}
	#recruit .message .wrap.sec02::before {
		top: 0;
		left: -8%;
		width: 70%;
		height: 400px;
	}
	#recruit .message .sec03::before {
		top: -54px;
		right: -6%;
		width: 70%;
		height: 400px;
	}
	#recruit .message .wrap.sec04::before {
		bottom: -100px;
		right: 0%;
		width: 60%;
		height: 470px;
	}
	}
	@media screen and (min-width:1305px) {
	#recruit.message .ttlArea::before {
		top: -42px;
		right: 6%;
		width: 40%;
		height: 29%;
	}
	#recruit .message .wrap.mgn.sec01::before {
		top: -220px;
		left: -12%;
		width: 50%;
		height: 500px;
	}
	#recruit .message .wrap.sec02::before {
		top: 145px;
		left: -8%;
		width: 70%;
		height: 580px;
	}
	#recruit .message .sec03::before {
		display: none;
	}
	#recruit .message .wrap.sec04::before {
		bottom: -100px;
		right: -12%;
		width: 70%;
		height: 470px;
	}
}

/* for appear
------------------------------------------------- */
.ttlArea h2, .ttlArea p, .ttlArea figure, 
.ctsArea h3, .ctsArea p, .ctsArea figure {
	opacity: 0;
	position: relative;
	top: 30px;
}