@charset "UTF-8";
/* 見出し写真のグラデ（contact.css と同じ。common.css の .pageHead::after に移してよい） */
.pageHead::after { background: linear-gradient(to top, rgba(0, 59, 119, .82) 8.65%, rgba(14, 70, 126, .748) 20.79%, rgba(28, 80, 132, .676) 32.93%, rgba(43, 90, 139, .605) 45.06%, rgba(57, 101, 146, .533) 57.2%, rgba(99, 132, 166, .4) 67.9%, rgba(142, 164, 186, .267) 78.6%, rgba(184, 195, 206, .133) 89.3%, rgba(226, 226, 226, 0)); }
/* ===== セミナー一覧 ===== */
.seminar { padding: calc(176 / var(--screen-w) * 100vw) calc(255 / var(--screen-w) * 100vw) calc(145 / var(--screen-w) * 100vw); }
.semList { grid-template-columns: repeat(2, 1fr); gap: calc(103 / var(--screen-w) * 100vw) calc(64 / var(--screen-w) * 100vw); }
.semCard, .semCard-link { height: 100%; }
.semCard-link { display: flex; flex-direction: column; }
.semCard-img { position: relative; overflow: hidden; border-radius: calc(5 / var(--screen-w) * 100vw); }
.semCard-img img { width: 100%; aspect-ratio: 673 / 372; object-fit: cover; transition: transform .4s; }
.semCard-link:hover .semCard-img img { transform: scale(1.04); }
.semCard-status { position: absolute; top: 0; left: 0; min-width: calc(67 / var(--screen-w) * 100vw); padding: 0 calc(6 / var(--screen-w) * 100vw); background: #ab5a23; color: #fff; font-size: calc(18 / var(--fs-w) * 100vw); font-weight: 500; line-height: calc(32 / var(--screen-w) * 100vw); }
.semCard-status.-closed { background: #454545; }
.semCard-ttl { margin-top: calc(20 / var(--screen-w) * 100vw); padding-bottom: calc(16 / var(--screen-w) * 100vw); border-bottom: 1px solid #aeaeae; font-size: calc(22 / var(--fs-w) * 100vw); font-weight: 500; line-height: 1.773; transition: color .3s; }
.semCard-link:hover .semCard-ttl { color: var(--btn); }
.semCard-info { grid-template-columns: auto 1fr; column-gap: calc(26 / var(--screen-w) * 100vw); margin: calc(15 / var(--screen-w) * 100vw) 0 calc(16 / var(--screen-w) * 100vw); font-size: calc(16 / var(--fs-w) * 100vw); line-height: 2; }
.semCard-info dt { font-weight: 600; }
.semCard-info dd { font-weight: 500; }
.semCard-btn { display: grid; place-items: center; min-height: calc(59 / var(--screen-w) * 100vw); margin-top: auto; border-radius: calc(3 / var(--screen-w) * 100vw); background: var(--btn); color: #fff; font-size: calc(15 / var(--fs-w) * 100vw); font-weight: 600; line-height: 1.6; transition: background-color .3s; }
.semCard-link:hover .semCard-btn { background: var(--btnD); }
/* ページ送り（news.css の .pager と同じ形。Figma は数字が Bitter 18px） */
.pager { margin-top: calc(123 / var(--screen-w) * 100vw); }
.pager ul { justify-content: center; gap: calc(13 / var(--screen-w) * 100vw); padding-left: calc(13 / var(--screen-w) * 100vw); }
.pager a, .pager span { display: grid; place-items: center; width: calc(39 / var(--screen-w) * 100vw); height: calc(39 / var(--screen-w) * 100vw); border-radius: 50%; color: #414141; font-family: var(--en); font-size: calc(18 / var(--fs-w) * 100vw); line-height: 1; transition: .3s; }
.pager a:hover { background: #e7e7e7; }
.pager span { background: var(--blue); color: #fff; }
@media (max-width: 1080px) {
  .seminar { padding-right: calc(140 / var(--screen-w) * 100vw); padding-left: calc(140 / var(--screen-w) * 100vw); }
}
@media (max-width: 900px) {
  .seminar { padding: calc(40 / var(--screen-w) * 100vw) calc(20 / var(--screen-w) * 100vw) calc(80 / var(--screen-w) * 100vw); }
  .semList { gap: calc(48 / var(--screen-w) * 100vw) calc(20 / var(--screen-w) * 100vw); }
  .semCard-status { min-width: 0; padding: 0 calc(6 / var(--screen-w) * 100vw); font-size: calc(12 / var(--fs-w) * 100vw); line-height: calc(22 / var(--screen-w) * 100vw); }
  .semCard-ttl { margin-top: calc(12 / var(--screen-w) * 100vw); padding-bottom: calc(10 / var(--screen-w) * 100vw); font-size: calc(15 / var(--fs-w) * 100vw); line-height: 1.6; }
  .semCard-info { column-gap: calc(16 / var(--screen-w) * 100vw); margin: calc(10 / var(--screen-w) * 100vw) 0 calc(14 / var(--screen-w) * 100vw); font-size: calc(13 / var(--fs-w) * 100vw); line-height: 1.8; }
  .semCard-btn { min-height: calc(44 / var(--screen-w) * 100vw); font-size: calc(14 / var(--fs-w) * 100vw); }
  .pager { margin-top: calc(48 / var(--screen-w) * 100vw); }
  .pager ul { gap: calc(8 / var(--screen-w) * 100vw); padding: 0; }
  .pager a, .pager span { width: calc(36 / var(--screen-w) * 100vw); height: calc(36 / var(--screen-w) * 100vw); font-size: calc(15 / var(--fs-w) * 100vw); }
}
@media (max-width: 600px) {
  .semList { grid-template-columns: 1fr; gap: calc(40 / var(--screen-w) * 100vw); }
  .semCard-status { font-size: calc(13 / var(--fs-w) * 100vw); line-height: calc(24 / var(--screen-w) * 100vw); }
  .semCard-ttl { font-size: calc(16 / var(--fs-w) * 100vw); }
  .semCard-info { font-size: calc(14 / var(--fs-w) * 100vw); }
  .semCard-btn { min-height: calc(48 / var(--screen-w) * 100vw); }
}
