.page-news {
    background: #fff;
}

.section--bg {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
    max-width: 100%;
}

/* info
----------------------------------------*/
.info {
    width: 98%;
    margin: 0 auto;
  }
  
  .info__item {
    border-top: 1px solid rgba(41, 41, 41, .1);
  }
  
  .info__item:last-child {
    border-bottom: 1px solid rgba(41, 41, 41, .1);
  }
  
  .info__link {
    display: block;
    position: relative;
    padding: 2rem .7rem 2rem .7rem;
    transition: color .3s ease-out;
    text-decoration: none;
    color: #000;
  }

  .info__link::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 15px;
    height: 1px;
    background-color: #000;
  }
  
  .info__link::after {
    content: "";
    display: block;
    position: absolute;
    top: 45%;
    right: 6px;
    left: auto;
    width: 1px;
    height: 15px;
    background-color: #000;
  }
  
  @media screen and (min-width: 992px),
  print {
    .info {
      margin: 5.7rem auto 0;
      width: 46rem;
    }
  
    .info__link {
      display: flex;
      position: relative;
      padding: 3rem 4rem 3rem .7rem;
    }
  
    .info__link:hover .info__date,
    .info__link:hover .info__txt {
      opacity: 0.7;
    }
  
    .info__date {
      min-width: 6.2rem;
      font-weight: 400;
      line-height: 1.2857142857;
      color: #949494;
      transition: color .3s ease-out;
    }
  
    .info__txt {
      margin-left: 2.6rem;
      font-weight: 500;
      line-height: 1.3846153846;
      transition: color .3s ease-out;
      font-feature-settings: "pcap" on;
    }
  }

  /* pagenation
------------------------------------------------------ */
.pagination {
  margin-top: 50px;
}
.pagination .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.pagination .page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-width: min((40 / 375) * 100vw, 40px);
  height: min((40 / 375) * 100vw, 40px);
  margin: 0 2px;
  padding: 0 0.5em;
  background: #a8191d;
  border-radius: 6px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  font-size: min((14 / 375) * 100vw, 14px);
}
.pagination .page-numbers.current {
  background: #000;
  color: #fff;
}
.pagination .page-numbers.dots {
  min-width: 0;
  padding: 0;
  background: none;
}
.pagination .page-numbers.prev {
  padding: 0 0.8em;
}
.pagination .page-numbers.prev::before {
  content: "";
  display: inline-block;
  width: 0.57em;
  height: 0.57em;
  border-top: 2px solid;
  border-left: 2px solid;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  vertical-align: middle;
}
.pagination .page-numbers.next {
  padding: 0 0.8em;
}
.pagination .page-numbers.next::after {
  content: "";
  display: inline-block;
  width: 0.57em;
  height: 0.57em;
  border-top: 2px solid;
  border-right: 2px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
}
@media screen and (min-width: 768px), print {
  .pagination {
    margin-top: 80px;
  }
  .pagination .page-numbers {
    min-width: 50px;
    height: 50px;
    margin: 0 5px;
    font-size: 18px;
  }
  .pagination .page-numbers.prev, .pagination .page-numbers.next {
    padding: 0 1.5em;
  }
}

/* カテゴリーの見た目 */
.news-categories { display: inline-block; margin: 0 8px 0 0; }
.news-category {
  display: inline-block;
  padding: 2px 8px;
  border: 1px solid #ccc;
  border-radius: 3px;
  font-size: 0.85rem;
  line-height: 1.6;
  margin-right: 6px;
}

/* タイトル欄全体をリンク化した時のレイアウト調整 */
.ec-newsRole__newsLink { display: block; color: inherit; text-decoration: none; }
.ec-newsRole__newsLink:hover .ec-newsRole__newsTitle { text-decoration: underline; }
/* 幅いっぱいクリック可能に */
.ec-newsRole__newsLink { width: 100%; }

/* 見出しのレイアウト調整 */
.ec-newsRole__newsHeading { display: flex; align-items: center; gap: 12px; }
.ec-newsRole__newsDate { flex: 0 0 auto; }
.ec-newsRole__newsColumn { flex: 1 1 auto; width: 100%; }

/* ページネーションの中央寄せ */
.pagination--center { justify-content: center; }
.pagination--center .nav-links { display: inline-block; }
/* nav-links を横並び中央配置 */
.pagination .nav-links { display: inline-flex; justify-content: center; align-items: center; }