@charset "utf-8";

/* 領域
-------------------------*/
.container{
	position: relative;
}
.bgImg{
	width: 100%;
	height: 360px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: -999;
	overflow: hidden;
}
.page .bgImg{
	position: fixed;
}

article{
	background: #fff;
	padding: 35px 0 50px;
}
.single article, .archive article{
	width: 100%;
}
.page article{
	background: rgba(255,255,255,.85);
}
.single article{
	padding-top: 0;
	position: relative;
}

.article__inner{
	margin: 0 auto;
	box-sizing: border-box;
	overflow: hidden;
}
@media screen and (min-width: 660.1px) {
	.page article{
		box-shadow: 0 1px 5px #333;
		padding-top: 240px;
	}
	.article__inner{
		width: 70%;
		max-width: 700px;/* frontpageのsectioninnerと同じ */
	}
}
@media screen and (max-width: 660px) {
	.page article{ padding-top: 185px; }
	.article__inner{
		padding: 15px 10px 40px;
	}
}

/* parts
-------------------*/



/* FV
-------------------------*/
.mainHeading{ 
	height: 350px;
	padding-top: 200px;
	box-sizing: border-box;
}/* headerの高さ　スマホ90px,PC65px */
.single .mainHeading{
	padding-top: 160px;
}
.mainHeading h1{ color: #fff; }

.page .mainHeading h1, 
.single .mainHeading h2, 
.archive .mainHeading h1{
	font-size: 36px;
	font-family: "Hiragino Kaku Gothic ProN","Century Gothic","游ゴシック",sans-serif;
	letter-spacing: .2em;
	color: #fff;
}
.single .mainHeading h2, 
.archive .mainHeading h1{ 
	text-shadow: 0 0 3px #333;
}
.single h1{
	padding: 18px 15px 15px;
	font-size: 30px;
	box-sizing: border-box;
	background: #ddd;
	margin-bottom: 40px;
}
.single-job h1{ background: none;}
.page .mainHeading{
	position: relative;
}
.page .mainHeading h1{
	width: 420px;
	height: 420px;
	border-radius: 250px;
	background: #5693ce;
	position: absolute;
	top: 140px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 50;
	padding: 170px 50px 20px;
	box-sizing: border-box;
	overflow-wrap: break-word;
}
.page article p.sub, 
.page article p.sub::after{
	color: #ddd;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 60;
}
.page article p.sub{
	font-size: 24px;
	top: 210px;
}
.page article p.sub::after{
	content: "";
	width: 30px;
	height: 3px;
	border-radius: 1px;
	background: #ddd;
	bottom: -20px;/* p.subが起点 */
}
@media screen and (max-width: 660px) {
	.mainHeading{ height: 280px; }
	.page .mainHeading h1{
		width: 300px;
		height: 300px;
		padding: 130px 40px 15px;
	}
	.page .mainHeading h1, 
	.single .mainHeading h2, 
	.archive .mainHeading h1{
		font-size: 24px;
	}
	.page article p.sub{
		font-size: 20px;
	}
	.page article p.sub{
		top: 185px;
	}
}

/* 本文エリア
-------------------------*/
article h2:not(:first-child){
	margin-top: 45px;
}
.single .ymd{
	color: #fff;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: .05em;
	padding: 5px 10px 3px;
	background: #5693ce;
	margin-bottom: 35px;
	box-shadow: 0 1px 3px #333;
	position: absolute;
	top: -20px;
	left: 22%;
	z-index: 30;
}
.single .breadcrumbs{
	text-align: left;
	margin-bottom: 45px;
}
.single .breadcrumbs span{
	font-size: 10.5px;
	color: #8ca2be;
}
.single .breadcrumbs a:hover{opacity: 0.4;}

#privacy-policy article p, 
#privacy-policy article li{
	text-align: left;
	margin-bottom: 15px;
}

article figure{
	margin: 20px auto 25px;
}
article figure figcaption{
	font-size: 10.2px;
}
article p{
	margin-bottom: 1.2em;
}

.wp-block-group{
	padding-top: 85px;
	margin-top: -85px;
}/*アンカーのためのグループ*/
@media screen and (max-width: 660px) {
	.single .ymd{ left: 15px;}
}


/* archive 
--------------------------*/
.archive ul.archiveList{
	border: 4px solid #ddd;
	box-sizing: border-box;
	padding: 15px 25px 5px;
	margin-top: 30px;
}


.pagingNav.flex{
	justify-content: center;
	align-items: baseline;
}
.pagingNav .page-numbers:not(.prev):not(.next){
	width: 25px;
	height: 25px;
	display: inline-block;
	margin: 10px;
	padding: 5px;
	border-radius: 20px;
}
.pagingNav .page-numbers.prev, 
.pagingNav .page-numbers.next{
	margin: 5px;
}

.pagingNav .page-numbers:not(.prev):not(.next):not(.current):hover{
	background: #ddd;
	transition: .2s;
}
.pagingNav .page-numbers.current{
	background: #5693ce;
	color: #fff;
}


@media screen and (min-width: 660.1px) {
	.archiveList .ymd{
		width: 100px;
		margin-right: 30px;
	}
	.archiveList__heading{
		width: calc(100% - 130px);
		text-align: left;
	}
}

@media screen and (max-width: 660px) {
	.archive ul.archiveList{
		margin-top: 20px;
	}
	.archive__child--inner.flex{
		flex-wrap: wrap;
	}
	.archiveList .ymd, 
	.archiveList__heading{
		width: 100%;
	}
	.pagingNav .page-numbers:not(.prev):not(.next){
		width: 20px;
		height: 20px;
		margin: 6px;
	}
}

/* recruit
---------------------*/
.joblist{
	margin-top: 30px;
	justify-content: center;
	border: 4px solid #ddd;
}
.joblist > .wp-block-column{
	margin: 20px 15px 5px;
}
.joblist > .wp-block-column i{
	font-size: 4.8em;
	color: #777;
	transition: .2s;
	margin-top: 10px;
}
.joblist > .wp-block-column:hover i{
	color: #5693ce;
}

/* 求人個別記事
-------------------*/
.jobText p{
	text-align: left;
}
.jobText h4{
	margin: 25px auto 15px;
	background: #f4f7ff;
	padding: 11px 13px 5px 25px;
	color: #777;
	font-size: 16px;
	text-align: left;
	box-sizing: border-box;
	border-left: 8px solid #5693ce;
}
.statusStop{
	margin: 25px auto 15px;
	background: #ddd;
	padding: 11px 13px 5px;
	color: #e20b04;
	font-weight: bold;
	box-sizing: border-box;
}


h3#jobTable{ 
	padding-top: 60px; 
}







