@charset "UTF-8";
/* CSS Document */
/***********************
	採用情報 基本
***********************/
/** コンテンツ幅 **/
body.page.page-id-165 #page_contents .post_content {
    width: 100% !important;
    margin: 0 auto;
}
body.page.page-id-165 #page_contents {
	padding-bottom: 0 !important;
	padding-left: 0;
	padding-right: 0;
}
body.page.page-id-165 .wp-block-columns.is-layout-flex{
	gap: 0 !important;
}
body.page.page-id-165 .wp-block-columns.is-layout-flex figure{
	padding: 0 !important;
}
/** 見出し **/
.recruit_header{
	margin-bottom: 60px;
}
.recruit_header_catch{
	margin-bottom: 0 !important;
	display: block;
	font-size: 52px;
}
.recruit_header_desc{
	text-align: center;
	font-size: 16px;
	color: #000;
	margin-bottom: 0 !important;
	font-weight: bold !important;
	display: block;
}
/* モバイル（〜520px） */
@media screen and (max-width: 520px) {
	.recruit_header_catch{
		font-size: 44px;
	}
}
/***********************
	採用情報
***********************/
.interview_staff{
	margin-bottom: 32px;
}
/** イメージエリア **/
.recruit_image_area{
	margin-bottom: 80px !important;
}
/*** スタッフ写真 ***/
.staff_name{
	margin-top: 32px;
	margin-bottom: 16px;
}
.staff_name h3{
	font-size: 18px !important;
	font-weight: bold !important;
}
.staff_lead{
	max-width: 600px;
	line-height: 1.7 !important;
}
/*** Q&A ***/
.qa_item{
	padding: 36px 0 !important;
	border-bottom: 1px solid #ddd;
}
.qa_item:last-child{
	border-bottom: 0;
}
.qa_item_q{
  display: flex;
  align-items: center;   /* 縦中央 */
  justify-content: flex-start; /* 左から右（デフォルト） */
	margin-bottom: 12px !important;
}
.qa_item_a{
	margin-bottom: 0 !important;
}
.qa_item_q dt{
	background-color: #0051B2;
	color: #fff !important;
	padding: 12px;
	margin-right: 20px;
	width: 50px;
	height: 50px;
	line-height: 1 !important;
	text-align: center;
	display: flex;
	align-items: center; /* 縦方向の中央 */
	justify-content: center; /* 左から右（デフォルト） */
}
.qa_item_q dd{
	color: #0051B2;
	font-weight: bold !important;
	font-size: 20px;
	line-height: 1.4 !important;
}
/* モバイル（〜520px） */
@media screen and (max-width: 520px) {
	.qa_item_q dd{
		font-size: 18px !important;
	}
	.qa_item{
    	padding: 20px 0 !important;
	}
}

/*** 1日の流れ ***/
.work_oneday{
	margin-top: 40px;
	background-color: #E8F8FA;
	padding: 60px;
}
.work_oneday_title{
	text-align: center;
	font-weight: bold !important;
}
.timeline{
  margin: 0 auto;
  padding: 24px 16px;
}

.timeline__title{
  margin: 0 0 16px;
  font-size: 24px;
}
.timeline__list{
  list-style: none;
  padding: 0;
  margin: 0 auto !important;
  position: relative;
}

.timeline__item{
	display: flex;
	position: relative;
	margin: auto !important;
	column-gap: 12px;
}
/* 時間 */
.timeline__time{
	text-align: right !important;
	font-variant-numeric: tabular-nums;
	font-weight: bold !important;
	font-size: 20px !important;
	width: 15%;
	margin-right: 20px;
	margin-top: 10px !important;
}

/* 内容カードっぽくしたい場合（任意） */
.timeline__content{
	width: 100%;
	padding: 12px 20px 20px;
	background: #fff;
	position: relative;
}
.timeline__content h4{
	margin: 0 0 4px !important;
	color: #0051B2 !important;
	font-size: 20px !important;
	font-weight: bold !important;
}
.timeline__content p{
  margin: 0 !important;
  line-height: 1.7;
}
/* 縦ライン */
.timeline__content_wrap{
	width: 80%;
	position: relative;
	padding-bottom: 24px;
}
.timeline__content_wrap::before{
  content:"";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -26px;           /* time列の右側に線 */
  width: 2px;
  background: #ccc;
}
.timeline__content_wrap::after{
	content:"";
	position: absolute;
	top: 24px;
	left: -30px;   
	width: 10px;
	height: 10px;
	border-radius: 10px;
	background: #ccc;
	z-index: 1; 
}
/* タブレット（〜800px） */
@media screen and (max-width: 800px) {
	.work_oneday{
		padding: 40px;
	}
}
/* モバイル（〜520px） */
@media screen and (max-width: 520px) {
	.work_oneday{
		margin-top: 0;
		padding: 24px 16px;
	}
  .timeline__list::before{
    left: 18px;
  }
  .timeline__item{
    grid-template-columns: 24px 1fr;  /* dot | content */
    grid-template-rows: auto auto;    /* time | content */
    column-gap: 12px;
  }
  .timeline__time{
	  font-size: 18px !important;
 	margin-bottom: 4px;
  }
  .timeline__dot{
    grid-row: 1 / span 2;
    margin: 2px auto 0;
  }
	.timeline__content h4{
		font-size: 18px !important;
	}
}
/* 募集要項 */
.job_item{
	padding: 24px 8px;
	border-top: 1px solid #ccc;
}
.job_name{
	display: flex;
	align-items: flex-start;;   /* 縦中央 */
	justify-content: flex-start; /* 左から右（デフォルト） */
	gap: 16px
}
.job_name dt{
	width: 25%;
}
.job_name dd{
	width: 75%;
}
/*** ボタン **/
.job .link_button{
	margin-top: 52px;
	text-align: center;
}
/* ポイント */
.point_section{
	margin: 80px 0;
}
.point_item_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 24px;
}
.point_item{
	border: solid 2px #0051B2;
	border-radius: 10px;
	width: 30%;
	padding: 32px 24px;
}
.point_lead{
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	color: #0051B2;
}
.point_fig{
	width: 70px;
	height: 70px;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	margin: auto;
	margin-bottom: 16px;
}
/** ポイントアイコン **/
.point_fig_01{
	background-image: url("../img/icon/rec_icon_01.svg");
}
.point_fig_02{
	background-image: url("../img/icon/rec_icon_02.svg");
}
.point_fig_03{
	background-image: url("../img/icon/rec_icon_03.svg");
}
.point_fig_04{
	background-image: url("../img/icon/rec_icon_04.svg");
}
.point_fig_05{
	background-image: url("../img/icon/rec_icon_05.svg");
}
.point_fig_06{
	background-image: url("../img/icon/rec_icon_06.svg");
}
/* モバイル（〜520px） */
@media screen and (max-width: 520px) {
	.point_item{
		width: 48%;
		padding: 16px;
	}
	.point_item_wrap{
		gap: 12px;
	}
	.point_fig{
		width: 60px;
		height: 60px;
	}
	.point_lead{
		font-size: 16px;
	}
}

/* 採用エントリー */
.recruit_entry{
	padding: 80px 20px;
	background-image: linear-gradient(180deg, rgba(0, 81, 178, 1), rgba(1, 50, 109, 1));
}
.recruit_entry .wpcf7{
	margin: auto !important;
	max-width: 760px;
}
/* モバイル（〜520px） */
@media screen and (max-width: 520px) {
	.job_name{
		display: block;
	}
	.job_name dt{
		width: 100%;
		margin-bottom: 12px;
		font-size: 18px;
	}
	.job_name dd{
		width: 100%;
	}
}
