
/*その他ページヘッダー
---------------------------------------------------------------------------*/
.recruit_header{
	background-image: url(../img/recruit_header_bg.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right top !important;
	margin-bottom: 0px!important;
	z-index: 1000;
	height: 170px;
}

.recruit_header div{
	border-bottom: 1px solid #190066 !important;
	padding-bottom: 0px !important;
	overflow: hidden;
	z-index: 100;
	width: 65%;
}

.contents_spacer {
	padding: 0 0 7.0em 0 !important;
}

.inner_spacer {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 !important;
}

.mainimg_rec{
	margin: 0 0 5.5em 0 !important;
	padding: 0 !important;
	position: relative;
}

.mainimg_rec.rec_other{
	margin: 0 !important;
}

.recruit_pankuzu{
	margin: 2em 1.0em 2.5em 1.0em !important;
	padding: 0 !important;
	font-size: 0.88rem;
}

.mainimg_rec img{
	position: relative;
	width: 100%;
	display: block;
	z-index: 1;
	height: auto;
	margin: 0 !important;
	padding: 0 !important;
}



.mainimg_rec div{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(253,253,253,0.77);
	z-index: 10;
	/*min-height: 125px;*/
	margin: 0 !important;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 !important;
}

.mainimg_rec span{
	max-width: 1440px;
	margin: 1em auto !important;
	color: #021523;
	font-size: clamp(16px, 3.3vw, 40px) !important;
	white-space: nowrap;
	/*font-size: 14px !important;*/
	font-weight: 600;
	text-align: center;
	line-height: 100% !important;
	height: auto;
	padding: 0 !important;
}

.rec_btn{
	width: 99%;
	display: flex;
	justify-content: space-between;
	margin: 2em auto 6.5em auto;
}


.rec_btn a{
display: flex;
justify-content: flex-start;
align-items: center;
background:
url("../img/arrow_wh.svg") no-repeat right 1.5em center / 13px 10px,
linear-gradient(to bottom, rgba(12,133,60,1.00), rgba(3,81,27,1.00));
border-radius: 5px;
min-height: 88px;
width: 32%;
color: #fff !important;
text-decoration: none !important;
}



.rec_btn a:hover{
text-decoration: none !important;
background:
url("../img/arrow_wh.svg") no-repeat right 1.5em center / 13px 10px,
linear-gradient(to bottom, rgba(12,133,60,0.7), rgba(3,81,27,0.7));
	transition: 1.0s !important;
}

.rec_btn img{
	width: 70px;
	height: 70px;
	margin: 0.5em 1.5em 0.5em 1em;
	opacity: 0.5;
}

div.rec_btn a:hover span{
	text-decoration: none !important;
}




div.rec_btn a span{
	font-size: 1.5rem !important;
	font-weight: 600 !important;
	color: #fff;
	text-decoration: none !important;
	text-shadow: 0 1px 3px rgba(0,0,0,0.5);
}

a.list_go{
	clear: both !important;
	display: block !important;
}

a.list_go span{
	margin: 1.5em 0 5.5em 0;
	padding-right: 0.8em;
	position: relative;
	cursor: pointer;
	color: #0066cc;
	display: block;
	float: right;
	clear: both;
}




a:hover.list_go span{
	text-decoration: underline !important;
}




/* ---------------------------------
   お知らせ
--------------------------------- */
.rec_list_01{
	list-style: none;
	margin: 0;
	padding: 0;
}

.rec_list_01 li{
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #dcdcdc;
}

.rec_list_01 li a{
	display: flex;
	align-items: center !important;
	gap: 1.2em;
	text-decoration: none;
	padding: 1.1em 1.1em;
	color: #0066cc !important;
} 

.rec_list_01 li a:hover{
	background-color: rgba(0,0,0,0.1) !important;
}

.rec_list_01 li a span:first-child{
	white-space: nowrap;
	line-height: 1.5;
		margin: 0;
	padding: 0;
}



.rec_list_01 li a p{
	margin: 0;
	padding: 0;
	line-height: 1.5;
}

.rec_list_01 li a .rec_new,.rec_list_02 li a .rec_new{
display: inline-block;
margin: 0 0 0 0 !important;
padding: 0.5em 0.5em 0.4em 0.5em !important;
background-color: #b20000;
color: #fff;
line-height: 1 !important;
border-radius: 3px;
text-transform: none !important;
font-size: 0.70rem !important;
letter-spacing: 0.05em;
	position: relative;
	top: -3px;
	font-weight: 400 !important;
}


/* ---------------------------------
   社員レポート一覧
--------------------------------- */
.rec_list_02 {
	list-style: none;
	margin: 0;
	padding: 1em 0 0 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.rec_list_02.list02_new {
	padding: 5.5em 0 0 0;
}

.rec_list_02 li {
	padding: 0 !important;
	margin: 0 0 1.5em 0 !important;
}

.rec_list_02 li a {
	display: block;
	text-decoration: none;
	color: inherit;
	padding: 0 !important;
	margin: 0 !important;
}

.rec_list_02 a:hover{
	background-color: rgba(255,255,255,1.00) !important;
}

.rec_list_02 img {
	transition: filter 0.3s ease;
	opacity: 1.0 !important;
}

.rec_list_02 a:hover img {
	/*filter: brightness(1.25) saturate(1.1);*/
		filter: brightness(1.15);
}

.rec_list_02 li a:hover div p{
	opacity: 1.0 !important;
}

.rec_list_02 img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
	margin-bottom: 10px;
	border: 1px solid rgba(0,0,0,0.1);
}


.rec_list_02 li a:hover h4{
	text-decoration: underline !important;
}

.rec_list_02 li a:hover div{
	opacity: 1.0 !important;
}

.rec_list_02 h4{
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.6;
	font-size: 1.35rem;
	font-weight: 600;
}

/* タイトル（青文字） */
.rec_list_02 h4,
.rec_list_02 li > a > p:first-of-type {
	color: #0066cc;
	margin-bottom: 8px;
}

/* NEWバッジ */
.rec_new {
	color: #fff;
	background: #e60012;
	padding: 2px 6px;
	margin-left: 6px;
	vertical-align: middle;
}

/* 下の情報（年＋部署） */
.rec_list_02 li div {
	margin-top: 6px;
	color: #555;
}

.rec_list_02 li div p {
	margin: 0 0 0.5em 0 !important;
	padding: 0 !important;
}

/* 余白調整（画像とテキストの間） */
.rec_list_02 li a > p {
	margin-bottom: 8px;
}

/* ------------------------------
   キャリア採用・障碍者採用
------------------------------ */
.rec_career{
	margin: 2.5em 0 0 0 !important;
	padding: 0 0 1.2em 1.0em !important;
	border-bottom: 1px solid #e5e5e5;
	color: #555;
/*	font-size: 0.95rem;*/
	line-height: 1.8;
}



.rec_career a{
	text-decoration: none;
	margin-left: 2.5em;
	word-break: break-all;
}

p.rec_career a:hover{
	text-decoration: underline !important;
}

/* ---------------------------------
   その他ページ
--------------------------------- */
.report_list_area {
	position: relative;
	padding: 2.0em 1.5em;
/*	background: url("img/report_bg.jpg") no-repeat right top;
	background-size: auto;
	background-image: url("../img/repo_h2.jpg");
	background-repeat: no-repeat;
	background-position: top 2.5em right;
	background-size: 40%;*/
}

.report_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.report_list li {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 30px;
	padding: 2.0em 1em;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}

.report_date {
	white-space: nowrap;
}

.report_body p {
	margin: 0 0 1em 0 !important;
	padding: 0 !important;
}

.report_head {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 20px;
	align-items: center;
	margin-bottom: 15px;
}

.report_head.news_recruit{
	display: grid;
	grid-template-columns: 100% 1fr;
	gap: 20px;
	align-items: center;
	margin-bottom: 15px;
}

.report_head a{
	font-size: 1.25rem !important;
	font-weight: 600 !important;
}

.report_head a:hover{
	background-color: #fff !important;
}

.report_year {
	display: block;
	background: #B1DAF5;
	color: #333;
	text-align: center;
	padding: 8px 10px !important;
	margin: 0 !important;
	border-radius: 3px;
	font-size: 0.96rem;
	line-height: 100% !important;
}

.report_item{
	margin-bottom: 2.5em;
}

.report_dept {
font-weight: 400 !important;
	/*background-color: #c4e8d2;*/
	padding: 18px 25px !important;
	margin-bottom: 0em !important;
	font-size: 1.0rem !important;
	line-height: 100% !important;
	border-bottom: 1px dotted #190066;
}


.report_dept::before {
content: "■";
margin-right: 1em;
	margin-left: 0.5em;
	color: #b20000;
}



/* ---------------------------------
   レポート詳細
--------------------------------- */
.report_detail_area {
	padding: 2em 1.5em 4em;
/*	background-image: url("../img/repo_h2.jpg");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 40%;*/
}

.report_detail_date {
	margin-bottom: 1em;
}

.report_detail_main {
	display: block;
}

.report_detail_photo {
	float: left;
	width: 36%;
	margin: 0 0 1em 0;
	padding: 0 2.5em 0 0 !important;
	background-color: #fff !important;
}

.report_detail_photo img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid rgba(0,0,0,0.2);
	padding: 0.3em;
	box-sizing: border-box;
	background: #fff;
}

.report_dept {
	margin: 0 0 1em 0;
	font-weight: bold;
}

.report_text,
.report_detail_body p {
	margin: 0 0 2em 0 !important;
	padding: 0 !important;
}

.report_detail_body {
	clear: both;
}

.report_detail_nav {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 4em;
	background-color: #fff;
}

.report_detail_nav a {
	position: relative;
	padding: 0 1em;
	text-decoration: none;
}

.report_detail_nav a:hover {
	text-decoration: underline !important;
}

/* 左側：前のレポート */
.report_detail_nav a:first-child::before {
	content: "‹";
	margin-right: 0.5em;
}

/* 右側：次のレポート */
.report_detail_nav a:last-child::after {
	content: "›";
	margin-left: 0.5em;
}

/* 中央の区切り線 */
.report_detail_nav a:first-child::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 1em;
	background: #999;
}

.pager{
	width:100% !important;
	font-size:1.0em;
	text-align:center !important;
	margin:0 auto;
	padding:5.5em 0 0 0;
	clear:both !important;

}

.pager p{
	display:inline-block;
}

.pager span{
	width:5.0em !important;
	display:inline;
}

/* ---------------------------------
   レポートページ下部のナビゲーション
--------------------------------- */

.rec_list_02 .pager.reportnavi {
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.5em;
	width: 100% !important;
	padding: 3em 0;
	margin: 3em 0 0 0;
	box-sizing: border-box;
}

.rec_list_02 .pager.reportnavi p {
	margin: 0 !important;
	padding: 0 !important;
	display: inline-block;
}

.rec_list_02 .pager.reportnavi span {
	width: auto !important;
}


/* ---------------------------------
   スマホ
--------------------------------- */
@media (max-width: 768px) {

.mainimg_rec{
	margin: 0 0 2.5em 0 !important;
}
	
/* ---------------------------------
   その他ページ
--------------------------------- */
.report_list_area {
		padding: 1.5em 1em;
		background-size: 70%;
	}

	.report_list li {
		display: block;
		padding: 1.5em 0;
	}

	.report_date {
		margin-bottom: 0.5em;
	}

	.report_head {
		display: block;
		margin-bottom: 0.8em;
	}

	.report_year {
		display: inline-block;
		margin-bottom: 1.0em !important;
	}

	.report_head a {
		display: block;
		font-size: 1.1rem !important;
	}
	
	
	
.recruit_header{
	background-image: url(../img/recruit_header_bg.png);
	background-repeat: no-repeat;
	background-size: 40% auto;
	background-position: right center!important;
	margin-bottom: 0px!important;
	z-index: 1000;
	height: 170px;

}
	
div.rec_btn a span{
	font-size: 1.1rem !important;
	font-weight: 400 !important;
}
	
	
	.mainimg_rec span{
		width: 100%;          /* ← 固定幅を解除 */
		line-height: 1 !important;
		padding: 0  !important;
		text-align: center;
		margin: 0.85em auto !important;
	}

	.mainimg_rec div{
		min-height: auto;     /* ← 高さ固定を解除 */
		padding: 1em 0;       /* ← 余白で高さ確保 */
	}
	
.mainimg_rec{
	display: block !important;
	padding-top: 64px !important;
}

.mainimg_rec img{
	display: block !important;
}
	
	
	.rec_btn{
		width: 99%;
		display: flex;
		flex-direction: column;
		margin: 2em auto 6.5em auto;
	}

	.rec_btn a{
		width: 100%;
		margin-bottom: 1em;
	}

	.rec_list_01 li a{
		flex-wrap: wrap;
		gap: 0.3em 0.8em;
		padding: 0.8em 0.8em;
	}

	.rec_list_01 li a p{
		width: 100%;
	}


/* ここから社員レポート一覧 */
	


	.rec_list_02 {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px 12px;
		padding: 0 0.5em !important;
	}
	
	.rec_list_02 h4{
	font-size: 1.15rem;
}
	.rec_list_02 div p{
	font-size: 0.88rem;
}
/* ---------------------------------
   レポート詳細
--------------------------------- */
.report_detail_area {
		padding: 1.5em 1em 3em;
		background-size: 70%;
	}

	.report_detail_photo {
		float: none;
		width: 100%;
		margin: 0 0 1.5em 0;
	}

	.report_text,
	.report_detail_body p {
		margin-bottom: 1.5em !important;
	}

	.report_detail_body {
		clear: none;
	}

	.report_detail_nav {
		margin-top: 3em;
		gap: 0.8em;
	}
	
.report_dept {
	padding: 18px 10px !important;
}


.report_dept::before {
	margin-left: 0.20em;
}
	
	.sins_tit_spacer{/*新卒採用情報タイトルの上　余白調整*/
		margin-top: 0 !important;
	}
	
/* ------------------------------
   キャリア採用・障碍者採用
------------------------------ */
.rec_career a{
	display: block;
	clear: both;
	margin: 0 !important;
	padding: 0 !important;
}

}