@charset "UTF-8";

/* 特集一覧：タイトルと紹介文 */
.feature-list-content {
  flex-direction: column;
  align-items: stretch;
}

.feature-list .c-post-list-title {
  font-size: inherit;
}

/* 特集ページ：ページタイトル */
.feature-pagetitle {
  --pagetitle-char-img: url("../../img/img-character-man-01.svg");
  /* 96px(320px幅) → 130px(1024px幅) */
  --pagetitle-char-width: clamp(6rem, 5.034rem + 4.83vw, 8.125rem);
  --pagetitle-char-aspect-ratio: 76 / 85;
  --pagetitle-message-gap: 1rem;
}

.feature-pagetitle .c-pagetitle-container {
  position: relative;
  flex-direction: column;
  align-items: stretch;
}

.feature-pagetitle .c-pagetitle-header {
  gap: 0.5rem;
  margin-bottom: 0;
}

.feature-pagetitle .c-pagetitle-heading {
  font-size: var(--font-size-21-51-fluid);
  line-height: var(--line-height-base);
  overflow-wrap: anywhere;
}

.feature-pagetitle .c-pagetitle-body {
  margin-left: auto;
}

.feature-pagetitle .c-pagetitle-message {
  align-items: flex-end;
}

.feature-pagetitle .c-fukidashi {
  margin-right: 5rem;
}

.feature-pagetitle .c-pagetitle-img {
  transform: scaleX(-1);
}

@media screen and (min-width: 1024px) {
  .feature-pagetitle .c-pagetitle-container {
    padding-bottom: 7.5rem;
  }

  .feature-pagetitle .c-pagetitle-desc {
    padding-right: 20rem;
  }

  .feature-pagetitle .c-pagetitle-body {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

/* 特集ページ：授業の方針 */
.curriculum-policy .c-sectiontitle-heading,
.curriculum-initiatives .c-sectiontitle-heading,
.curriculum-tour .c-sectiontitle-heading {
  line-height: var(--line-height-sm);
  overflow-wrap: anywhere;
}

.curriculum-policy-text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6);
}

.curriculum-policy-comments {
  display: flex;
  flex-direction: column;
  /* 320px幅 → 1024px幅 */
  gap: clamp(1.5rem, 1.2727rem + 1.1364vw, 2rem);
  padding-block: clamp(2.5rem, 1.3636rem + 5.6819vw, 5rem);
  max-width: 57.75rem;
}

/* 特集ページ：取り組み紹介 */
.curriculum-initiatives-card {
  padding-block: 2rem;
  /* 400px幅で1rem → 1024px幅で2.5rem */
  padding-inline: clamp(1rem, 0.0385rem + 3.8462vw, 2.5rem);
}

.curriculum-initiatives .c-media-content-body {
  min-width: 0;
  gap: var(--spacing-10);
}

.curriculum-initiatives .c-media-content-text {
  gap: var(--spacing-4);
}

.curriculum-initiatives h3 {
  font-size: var(--font-size-22-32-fluid);
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.curriculum-initiatives .c-media-content-media {
  width: min(100%, 22.0625rem);
}

.curriculum-initiatives .c-media-content-media img {
  display: block;
}

.curriculum-passport {
  gap: 1rem;
}

.curriculum-passport-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10);
}

.curriculum-passport-info {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4);
}

.curriculum-passport-info .c-detail-list {
  flex-direction: row;
  align-items: center;
  margin-top: 0;
}

.curriculum-passport-info .c-detail-list-term {
  width: clamp(6.5rem, 25%, 10.625rem);
}

@media screen and (min-width: 1024px) {
  .curriculum-initiatives-card {
    padding-block: 3.5rem;
  }
}

/* 特集ページ：見学案内 */
.curriculum-tour-connector {
  font-size: var(--font-size-16-18-fluid);
}

.curriculum-tour {
  background-color: var(--color-accent-secondary);
}

.curriculum-tour-content {
  min-width: 0;
  gap: var(--spacing-10);
}

.curriculum-tour-image {
  width: clamp(9rem, 5.7898rem + 13.696vw, 16.0625rem);
}

.curriculum-tour-image img {
  display: block;
  transform: scaleX(-1);
}

.curriculum-tour .c-btn {
  --btn-bg-color: var(--color-white);
  --btn-text-color: var(--color-black);
  --btn-icon-base-bg-color: var(--color-base);
  --btn-icon-color: var(--color-main);
}
