@charset "utf-8";

.news__container {
  margin-top: 51px;
  position: relative;
  padding-bottom: 150px;
}

.news__container .webgene-pagination ul {
  bottom: 44px;
}

.news__item {
  width: 100%;
  padding-block: 30px;
  border-bottom: 1px solid #e5e5e5;
}

.news__item-link {
  display: flex;
  flex-direction: column-reverse;
  gap: 40px;
}

@media screen and (min-width: 768px) {
  .news__item-link {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 59px;
  }
}

.news__item-time {
  font-size: clamp(14px, 1.18vw, 16px);
  font-weight: 500;
  letter-spacing: calc(50 / 1000 * 1em);
  line-height: 1.2;
}

.news__item-title {
  margin-top: 23px;
  font-size: clamp(14px, 1.18vw, 16px);
  font-weight: 400;
  line-height: calc(30 / 16);
}

.news__item-image {
  aspect-ratio: 270/160;
  width: 100%;
  height: auto;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .news__item-image {
    width: clamp(100px, 19.77vw, 270px);
  }
}

.news__item-image img {
  aspect-ratio: 270/160;
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}

.news__item-link:hover .news__item-image img {
  transform: scale(1.1);
}

/* ============================
詳細ページ
============================= */

.news__detail-container {
  margin-top: 82px;
  background: var(--color-accent);
  width: 100%;
  padding: 67px 15px 60px;
}

@media screen and (min-width: 768px) {
  .news__detail-container {
    padding: 67px 40px 60px;
  }
}

.news__detail-container-inner {
  max-width: 1200px;
  margin-inline: auto;
  background: #fff;
  padding: 70px 8.33% 49px 8.33%;
}

.detail__title {
  font-size: clamp(20px, 1.91vw, 26px);
  font-weight: 700;
  line-height: 1.2;
  padding-bottom: 18px;
  border-bottom: 3px solid var(--color-base);
}

.c-date__wrap {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-top: 23px;
}

.news__item-time {
  font-size: clamp(14px, 1.18vw, 16px);
  font-weight: 500;
  letter-spacing: calc(50 / 1000 * 1em);
  line-height: calc(23 / 16);
}

.news__item-tag {
  font-size: clamp(12px, 1.03vw, 14px);
  padding: 7px 14px 8px;
  border-radius: 3px;
  font-weight: 700;
  line-height: 1.2;
  background: #fff;
  border: 1px solid var(--color-base);
}

.news__detail-container-inner .detail__body {
  max-width: 800px;
  width: 100%;
  margin-inline: auto;
  padding-bottom: 56px;
  border-bottom: 1px solid #e5e5e5;
}
