@charset "UTF-8";

/* 特別講義・外部連携一覧。年度を淡い面、各記録を白い面として整理する。 */

.special-lecture-page .lecture-list-section .subpage-section-inner {
  max-width: 1060px;
}

.special-lecture-page .lecture-list-section .subpage-section-heading {
  margin-bottom: 24px;
  padding-bottom: 0;
  border: 0;
}

.special-lecture-page .lecture-year-nav-sticky {
  gap: 8px;
  margin-bottom: 18px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
}

.special-lecture-page .lecture-year-nav-sticky a {
  min-height: 42px;
  padding: 8px 14px;
  color: #365b76;
  background: #e7f0f6;
  border: 0;
  border-radius: 0;
  font-size: 12px;
}

.special-lecture-page .lecture-year-nav-sticky a:hover,
.special-lecture-page .lecture-year-nav-sticky a:focus-visible {
  color: var(--navy-950);
  background: #d6e8f3;
}

.special-lecture-page .lecture-year-nav-sticky a:focus-visible {
  outline: 3px solid rgba(31, 111, 164, .4);
  outline-offset: 2px;
}

.special-lecture-page .lecture-year-groups {
  gap: 18px;
}

.special-lecture-page .lecture-year {
  padding: 26px 28px 28px;
  background: #dcebf5;
  border: 0;
  border-radius: 0;
}

.special-lecture-page .lecture-year:nth-child(even) {
  background: #eaf2f7;
}

.special-lecture-page .lecture-year .list-section-heading {
  margin-bottom: 16px;
  padding: 0;
  border: 0;
}

.special-lecture-page .lecture-year .list-section-heading h2 {
  color: var(--navy-950);
  font-size: 24px;
  line-height: 1.45;
}

.special-lecture-page .lecture-year .editorial-list {
  display: grid;
  gap: 10px;
  border: 0;
}

.special-lecture-page .lecture-list-section .editorial-row,
.special-lecture-page .lecture-list-section .editorial-row:first-child {
  grid-template-columns: 118px minmax(0, 1fr);
  gap: 20px;
  padding: 17px 19px 18px;
  background: #fff;
  border: 0;
  border-radius: 0;
}

.special-lecture-page .lecture-list-section .row-meta {
  gap: 6px;
  padding-top: 1px;
}

.special-lecture-page .lecture-list-section .row-meta time {
  color: #48657b;
  font-size: 11px;
}

.special-lecture-page .lecture-list-section .row-meta .news-category {
  padding: 3px 7px;
  border: 0;
  border-radius: 2px;
  font-size: 10px;
}

.special-lecture-page .lecture-list-section .row-copy small {
  font-size: 11px;
}

.special-lecture-page .lecture-list-section .row-copy h3 {
  margin: 2px 0 5px;
  font-size: 17px;
  line-height: 1.55;
}

.special-lecture-page .lecture-list-section .row-copy p {
  color: #536b7d;
  font-size: 13px;
  line-height: 1.75;
}

.special-lecture-page .lecture-entry-links {
  gap: 7px;
  margin-top: 10px;
}

.special-lecture-page .lecture-entry-link {
  min-height: 30px;
  padding: 5px 9px;
  background: #edf4f8;
  border: 0;
  border-radius: 2px;
  font-size: 10.5px;
}

.special-lecture-page .lecture-entry-link:hover,
.special-lecture-page .lecture-entry-link:focus-visible {
  color: var(--navy-950);
  background: #dcebf5;
  border: 0;
}

.special-lecture-page .lecture-entry-link:focus-visible {
  outline: 3px solid rgba(31, 111, 164, .35);
  outline-offset: 2px;
}

@media (max-width: 920px) {
  .special-lecture-page .lecture-year {
    padding: 24px 24px 26px;
  }
}

@media (max-width: 640px) {
  .special-lecture-page .lecture-list-section .subpage-section-heading {
    margin-bottom: 18px;
  }

  .special-lecture-page .lecture-year-nav-sticky {
    gap: 5px;
    margin-bottom: 14px;
  }

  .special-lecture-page .lecture-year-nav-sticky a {
    min-height: 39px;
    padding: 7px 6px;
    font-size: 11px;
  }

  .special-lecture-page .lecture-year-groups {
    gap: 12px;
  }

  .special-lecture-page .lecture-year {
    padding: 20px 16px 17px;
  }

  .special-lecture-page .lecture-year .list-section-heading {
    margin-bottom: 12px;
  }

  .special-lecture-page .lecture-year .list-section-heading h2 {
    font-size: 21px;
  }

  .special-lecture-page .lecture-year .editorial-list {
    gap: 8px;
  }

  .special-lecture-page .lecture-list-section .editorial-row,
  .special-lecture-page .lecture-list-section .editorial-row:first-child {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 16px 15px 17px;
  }

  .special-lecture-page .lecture-list-section .row-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
    padding-top: 0;
  }

  .special-lecture-page .lecture-list-section .row-copy h3 {
    font-size: 16px;
  }

  .special-lecture-page .lecture-list-section .row-copy p {
    font-size: 12.5px;
  }
}
