/* ハイライト */
.highlight-text {
  background: linear-gradient(
    transparent 65%, 
    rgba(0, 110, 123, 0.3)65% 90%, 
    transparent 90%
  );
  background-size: 0% 100%;
  background-repeat: no-repeat;

  /* ← 開始を1秒遅らせる */
  transition: background-size 1.5s ease-out 0.5s;
}

.highlight-text.active {
  background-size: 100% 100%;
}


/*お知らせ一覧*/
section#news {
    margin-top: 15px;
}

#news .news-wrapper {

  max-height: 200px; /* 高さは任意で調整 */

  overflow-y: auto;

}



#news ul {

  margin: 0;

  padding: 0;

}



#news ul li {

  font-size: 16px;
	
  border-bottom: 1px solid #ccc;

  list-style: none;

  display: flex;

  align-items: center;

  padding: 15px 0; /* 上下の余白のみ */

}



/* 最初のliにborder-topを追加 */

#news ul li:first-child {

  border-top: 1px solid #ccc;

}



#news ul li .news-date {

  font-weight: 600; /* 日時だけ太く */

  margin-left: 15px; /* 日時の前に余白 */

  margin-right: 30px; /* 日時とタイトルの間に余白 */

  min-width: 80px;

}

					

/* 最初の記事の上だけ余白を40pxに調整 */

.job-post:first-child {

  margin-top: 40px;

}



/* 最後の記事の下だけ余白を40pxに調整 */

.job-post:last-child {

  margin-bottom: 40px;

}

					

.job-title::before {

  content: "［";

}



.job-title::after {

  content: "］";

}

					

.job-post {

  margin-top: 60px;    /* 記事上の余白（すべての記事） */

  margin-bottom: 60px; /* 記事下の余白（すべての記事） */

}

					

.job-title {

  text-align: center;

  font-weight: normal !important;

  font-size: 16px;

}

					

.job-post table {

  width: 100%;

  max-width: 640px;

  margin-left: auto;

  margin-right: auto;

  border-collapse: collapse;

}

					

.jobdesc-field-block {

  border: none !important;

  border-collapse: collapse;

  width: 100%;           /* 横いっぱいに広げる */

  table-layout: auto;    /* thの内容幅に合わせる */

  background: none !important;

  box-shadow: none !important;

}



.jobdesc-field-block th,

.jobdesc-field-block td {

  border: 1px solid #ccc;

  padding: 15px 20px;  /* 上下15px、左右20px */

  vertical-align: top;

}



.jobdesc-field-block th {

  white-space: nowrap;   /* 折り返さず最小幅で */

  width: 1%;             /* 内容に合わせるため1%指定 */

}



.jobdesc-field-block td {

  width: auto;           /* 残り幅を全て使う */

  word-wrap: break-word; /* 長文折り返し */

}

					

/* 一番左の列（最初のthとtd）の左ボーダーを消す */

.jobdesc-field-block th:first-child,

.jobdesc-field-block td:first-child {

  border-left: none;

}



/* 一番右の列（最後のthとtd）の右ボーダーを消す */

.jobdesc-field-block th:last-child,

.jobdesc-field-block td:last-child {

  border-right: none;

}

					

/* 一番上の行の上ボーダーを消す */

.jobdesc-field-block tr:first-child th,

.jobdesc-field-block tr:first-child td {

  border-top: none;

}



/* 一番下の行の下ボーダーを消す */

.jobdesc-field-block tr:last-child th,

.jobdesc-field-block tr:last-child td {

  border-bottom: none;

}



@media screen and (max-width:640px) { 
section#news {
    margin-bottom: 40px;
}