/* ==========================================================
   メディア・講演実績 (/media/)
   ========================================================== */

.page-media {
  background-color: var(--color-white);
}

.p-media {
  padding-block: clamp(48px, 6vw, 72px) clamp(48px, 7vw, 88px);
}

.p-media__inner {
  max-width: 1080px;
}

.p-media__section + .p-media__section {
  margin-top: clamp(44px, 6vw, 74px);
}

.p-media__head {
  margin-bottom: clamp(20px, 3vw, 30px);
}

.p-media__label {
  margin: 0 0 4px;
  font-family: var(--font-family);
  font-size: clamp(var(--fs-fv-catch), 6vw, var(--fs-fluid-50));
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-top-green-main);
}

.p-media__title {
  margin: 0;
  font-size: var(--fs-top-news-title);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.06em;
  color: var(--color-top-section-title);
}

.p-media-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid #e7ece5;
  max-width: 900px;
  margin-inline: auto;
}

.p-media-list__item {
  border-bottom: 1px solid #e7ece5;
}

.p-media-list__link {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  align-items: start;
  padding: 13px 40px;
  text-decoration: none;
  color: inherit;
  transition: background-color var(--transition);
}

.p-media-list__meta {
  display: flex;
  align-items: center;
  gap: 16px;
}

.p-media-list__link:hover {
  background-color: rgb(0 91 47 / 0.04);
}

.p-media-list__date {
  font-size: var(--fs-fluid-14);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #8c929f;
  font-variant-numeric: tabular-nums;
}

.p-media-list__cat {
  font-size: var(--fs-fluid-14);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #6f7480;
}

.p-media-list__text {
  font-size: var(--fs-body);
  font-weight: 500;
  line-height: 1.6;
  color: var(--color-text);
}

.p-media-seminar {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 34px);
  max-width: 900px;
  margin-inline: auto;
}

.p-media-seminar__col {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid #e7ece5;
}

.p-media-seminar__item {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  padding: 11px 40px;
  border-bottom: 1px solid #e7ece5;
}

.p-media-seminar__date {
  font-size: var(--fs-fluid-14);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #8c929f;
  font-variant-numeric: tabular-nums;
}

.p-media-seminar__text {
  font-size: var(--fs-body);
  font-weight: 500;
  line-height: 1.55;
  color: var(--color-text);
}

@media (max-width: 1023px) {
  .p-media-seminar {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (max-width: 767px) {
  .p-media-list__meta {
    gap: 12px;
  }

  .p-media-seminar__item {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}
