@charset "utf-8";
/* CSS Document */

/* ===== 横スクロール完全防止（差し替え用）===== */
*, *::before, *::after {
  box-sizing: border-box;
}

html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

/* 念のため主要ブロックを制御 */
.bkrec,
.content01,
.row,
.rec01 {
  width: 100%;
  max-width: 100%;
}

.bkrec{
	width: 100%;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 50px;
	padding-left: 0px;
	overflow: hidden;
}

.content01{
	max-width: 950px;
	margin: 10px auto;
	padding-top: 20px;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 20px;
	font-family: 'Arial', sans-serif;
	color: #333333;
	overflow: hidden;
}
.content01 p{
	font-size: 1.1em;
	line-height: 1.8em;
}
.content01 a{
	color: #0B7AFF;
	border: 1px solid #74B3FF;
	margin-right: 3px;
	padding-left: 5px;
	padding-right: 5px;
	background-color: #FFFFFF;
}
.content01 a:hover{
	background-color: #74B3FF;
	color: #FFFFFF;
}
.recld h2{
	font-size: 2em;
	color: #1F286F;
	text-align: center;
	line-height: 1.6em;
}
/*福利厚生*/
.benefit-item {
  display: flex;
  width: 100%;
  margin-bottom: 2px;
}

.benefit-title {
  width: 25%;
  background-color: #1F286F; /* ネイビー */
  color: #fff;
  padding: 20px;
  box-sizing: border-box;
  display: flex;
  align-items: center;     /* 上下センター */
  font-weight: 600;
}

.benefit-detail {
	width: 75%;
	background-color: #FFFFFF; /* 薄いグレー */
	color: #333;               /* ダーク系文字 */
	padding: 20px;
	box-sizing: border-box;
	display: flex;
	align-items: center;       /* 上下センター */
	line-height: 1.7;
}

/* 特別休暇制度だけ上余白を追加 */
.mt-extra {
	margin-top: 40px;
	margin-bottom: 50px;
}

/* スマホ用（横並び → 縦並び） */
@media (max-width: 768px) {
  .benefit-item {
    flex-direction: column;
  }

  .benefit-title,
  .benefit-detail {
    width: 100%;
  }
}
/**/
.table-wrap {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 100px;
}


.row {
	display: flex;
	background-color: #FFFFFF; /* 薄いグレー */
	margin-bottom: 12px; /* 隙間は白背景として間隔で表現 */
	padding: 18px 20px;
	border-radius: 6px;
}


.row .head {
	width: 28%;
	font-weight: 600;
	text-align: left; /* 見出しは左 */
	color: #1F286F;
}


.row .detail {
width: 72%;
text-align: center; /* 詳細はセンター */
color: #333;
}
.rec01 {
	max-width: 900px;
	margin: 10px auto;
	padding: 0 20px;
	font-family: 'Arial', sans-serif;
	background-color: #FFFFFF;
	color: #0050B0;
}
.rec01 h1 {
	position: relative;
	display: inline-block;
	margin-bottom: 2em;
	font-size: 2em;
	margin-top: 3em;
	color: #1F286F;
}
.rec01 h1:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 60px;
	height: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #0093FF;
	border-radius: 2px;
}
.rec-table {
	width: 90%;
	border-collapse: collapse;
	margin-left: auto;
	margin-right: auto;
}

.rec-table th,
.rec-table td {
	text-align: left;
	padding-top: 15px;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 15px;
	border-bottom: 1px solid #B3B3B3;
}

.rec-table th {
	width: 30%;
	font-weight: 500;
	color: #1F286F;
}

.rec-table td {
	width: 70%;
	color: #333;
}
.rec02{
	font-size: 1.3em;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #1F286F;
	text-align: center;
	border-bottom: 3px solid #9FBDE7;
	font-weight: bold;
}
.rec03{
	font-size: 1.1em;
	padding-top: 40px;
	padding-bottom: 40px;
	color: #000000;
	padding-left: 10px;
	padding-right: 10px;
	text-align: center;
}
/* レスポンシブ対応 */
@media screen and (max-width: 600px) {
	.rec01 {
  max-width: 100%;
  margin: 0px auto;
}
  .recld h2 {
	font-size: 1.4em;
	line-height: 1.5;
	text-align: left;
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 90%;
  }
.row {
flex-direction: column;
text-align: left;
}
.row .head {
width: 100%;
margin-bottom: 6px;
text-align: left;
}
.row .detail {
width: 100%;
text-align: left;
}
		

  p.ce01 {
	text-align: left !important;
  }
}