@charset "UTF-8";

/* =====================
  news
===================== */
.n-news-list__item {
  border-bottom: var(--border) var(--color-list-border);
  &:first-child {
    border-top: var(--border) var(--color-list-border);
  }
}
.n-news-list__link {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  gap: 8rem 12rem;
  padding: 20rem 8rem;
}
.n-news-list__date {
  color: #7f888b;
  font-size: 13rem;
}
.n-news-list__category {
  color: var(--color-white);
  font-size: 11rem;
  font-weight: var(--bold);
  line-height: 1.4;
  letter-spacing: -0.02em;
  text-align: center;
  padding: 3rem 8rem;
  background-color: var(--color-primary);
  width: 96rem;
  display: inline-block;
}
.n-news-list__text {
  grid-column: 1 / 3;
  grid-row: 2 / 3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: underline;
  text-underline-offset: 4rem;
  transition: opacity 0.3s ease;
  font-size: 14rem;
}
.is-external {
  .n-news-list__text {
    display: grid;
    grid-template-columns: max-content auto;
    align-items: center;
    column-gap: 6rem;
    &::after {
      content: '';
      display: inline-block;
      background: url(/assets/img/common/icon-blank.svg) no-repeat center / contain;
      width: 16rem;
      height: 16rem;
    }
  }
}

/* =====================
  detail
===================== */
.n-news-content__headline {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-auto-rows: auto;
  gap: 16rem;
  margin-bottom: 24rem;
}
.n-news-content__date {
  font-size: 14rem;
  color: #7f888b;
}
.n-news-content__category {
  display: inline-block;
  width: fit-content;
  min-width: 96rem;
  text-align: center;
  font-size: 11rem;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: var(--color-white);
  background-color: var(--color-primary);
  padding: 3rem 8rem;
}
.n-news-content__title {
  grid-column: 1 / 3;
  grid-row: 2 / 3;
  font-size: 24rem;
  font-weight: var(--bold);
  line-height: 1.6;
  letter-spacing: -0.03em;
}
.n-news-content__body {
  padding-bottom: 56rem;
}
.n-news-content__text {
  + .n-news-content__text {
    margin-top: 16rem;
  }
}

.n-news-content__thumbnail {
  width:100%;
  height:auto;
  margin-bottom: 40rem;
}