.news-item {
  border-bottom: 2px solid #ccc;
  text-align: left;
}

.current-news .news-item:last-child {
  border-bottom: none;
}

.news-title, .news-content  {
  padding: 1.5em;
}

.news-title {
  transition: all .3s;
  position: relative;
  padding-right: 3em;
}

.news-title::after {
  content: "";
  display: block;
  position: absolute;
  width: 1em;
  aspect-ratio: 1;
  background-image: var(--icon);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: translateY(-50%) rotate(180deg);
  transition: all .3s;
  top: 50%;
  right: 1em;
}

.news-title:is(.is-active, :hover, :focus) {
  background-color: rgba(243, 152, 0, .3);
  outline: 4px solid rgba(243, 152, 0, .5);
}

.news-title:is(.is-active)::after {
  transform: translateY(-50%);
}

.news-link {
  background-color: #F39800;
  color: #fff;
  margin: 2em auto 0;
  padding: 1em;
  display: block;
  width: fit-content;
}

.customer-voices {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em; 
}

.customer-voice {
  border: 1px solid #ccc;
  border-radius: .4em;
  padding: .5em 1em 1em;
}

.customer-voice h3 {
  font-size: 1.3em;
  margin-bottom: .3em;
}

.kpi {
  text-align: left;
}

.kpi-year {
  font-size: 2em;
  font-weight: bold;
}

.kpi:has(+ .kpi) {
  margin-bottom: 2em;
}

.kpi-item {
  padding-left: 1.5em;
}

.kpi-item-title::before {
  content: "・";
  margin-left: -1.5em;
  margin-right: .5em;
}

.news-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  padding-top: 1em;
  padding-bottom: 4em;
}

.news-pagination .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid #F39800;
  transition: all .3s;
  text-align: center;
}

.news-pagination .page-numbers:is(.current, :hover, :focus-visible) {
  background-color: #F39800;
  color: #fff;
}
@media screen and (max-width: 750px) {
  .customer-voices {
    grid-template-columns: 1fr;
  }

  .news-title, .news-content  {
    padding: 1em;
  }

  .news-title {
    padding-right: 2em;
  }

  .news-title::after {
    right: .5em;
  }

  .news-title ._date {
    display: block;
  }
}

.p-hokenka-service__ttl {
  display: flex;
  justify-content: center;
  align-items: baseline;
  flex-wrap: wrap;
}

.p-hokenka-service__ttl .c-ttl3 {
  margin-bottom: 0;
}