:root {
  --course-theme-mathematics: #216bda;
  --course-theme-english: #ee5456;
  --course-theme-physics-chemistry: #27935d;
  --course-theme-national-language: #e48225;
}

/* コースごとのテーマ設定 */
.course-theme {
  --course-theme-color: var(--course-theme-mathematics);
  --course-theme-color-rgb: 33, 107, 218;
  --course-theme-light: #bed6fb;
  --course-theme-light-rgb: 190, 214, 251;
}

.course-theme--mathematics {
  --course-theme-color: var(--course-theme-mathematics);
  --course-theme-color-rgb: 33, 107, 218;
  --course-theme-light: #bed6fb;
  --course-theme-light-rgb: 190, 214, 251;
}

.course-theme--english {
  --course-theme-color: var(--course-theme-english);
  --course-theme-color-rgb: 238, 84, 86;
  --course-theme-light: #ffccd2;
  --course-theme-light-rgb: 255, 204, 210;
}

.course-theme--physics-chemistry {
  --course-theme-color: var(--course-theme-physics-chemistry);
  --course-theme-color-rgb: 39, 147, 93;
  --course-theme-light: #b2e7ce;
  --course-theme-light-rgb: 178, 231, 206;
}

.course-theme--national-language {
  --course-theme-color: var(--course-theme-national-language);
  --course-theme-color-rgb: 228, 130, 37;
  --course-theme-light: #ffcca7;
  --course-theme-light-rgb: 255, 204, 167;
}

.course-theme .about-message__lead {
  color: var(--course-theme-color);
}

.course-theme .message__copy {
  font-size: 1rem;
  line-height: 2;
}

.course-theme .section--blue-noise {
  background-color: var(--course-theme-light);
}

.course-theme .course {
  background-color: var(--course-theme-light);
}

.course-theme .course--transparent {
  background-color: transparent;
  background-image: none;
}

.course-theme .page-title .section-heading {
  color: var(--page-blue);
}

.course-theme .message__image-wrap::after {
  background-image:
    linear-gradient(0deg, var(--course-theme-light) 56.73%, rgba(var(--course-theme-light-rgb), 0) 100%),
    url(/system_panel/uploads/images/20260812231129447475.svg);
  background-repeat: no-repeat, repeat;
  background-size: 100% 100%, 90rem 45.875rem;
  background-blend-mode: multiply;
}

.course-theme .section-gradient--transparent-blue-noise {
  background-image:
    linear-gradient(180deg, rgba(var(--course-theme-light-rgb), 0) 0%, var(--course-theme-light) 100%),
    url(/system_panel/uploads/images/20260812231129447475.svg);
  background-repeat: no-repeat, repeat;
  background-size: 100% 100%, 90rem 45.875rem;
  background-blend-mode: multiply;
}

.course-theme .section-gradient--blue-transparent-noise {
  background-image:
    linear-gradient(180deg, var(--course-theme-light) 0%, rgba(var(--course-theme-light-rgb), 0) 100%),
    url(/system_panel/uploads/images/20260812231129447475.svg);
  background-repeat: no-repeat, repeat;
  background-size: 100% 100%, 90rem 45.875rem;
  background-blend-mode: multiply;
}

.section--blue-noise {
    background-color: #bed6fb;
    background-image: url(/system_panel/uploads/images/20260812231129447475.svg);
}

.course-theme .section-heading {
  color: var(--course-theme-color);
}

.course-theme .feature-card__number {
  color: var(--course-theme-color);
}

.course-theme .course-policy__title {
  color: var(--course-theme-color);
}

.course-theme .course-policy__heading::before {
  background-color: var(--course-theme-color);
}

.course-theme .course-curriculum__heading::before {
  background-color: var(--course-theme-color);
}

.course-theme .course-policy__qualification {
  border-color: var(--course-theme-color);
}

.course-theme .course-policy__text strong {
  text-decoration-color: rgba(var(--course-theme-color-rgb), 0.7);
}

.course-theme .flow--curriculum .flow__navigation-item.is-current .flow__navigation-number,
.course-theme .flow--curriculum .flow__navigation-item.is-complete .flow__navigation-number {
  background-color: var(--course-theme-color);
}

.course-theme .flow--curriculum .flow__navigation-number {
  border-color: var(--course-theme-color);
}

.course-theme .flow__navigation-item.is-complete + .flow__navigation-item::before {
  background-color: var(--course-theme-color);
}

.course-theme .flow-step__title {
  border-color: var(--course-theme-color);
  color: var(--course-theme-color);
}

.course-theme .flow-step--final .flow-step__title {
  background-color: var(--course-theme-color);
}

.course-theme .flow-step__title__fix {
  color: #fff;
  background-color: var(--course-theme-color);
}

.course-theme .course-curriculum-guide__lead {
  color: var(--course-theme-color);
}

.course-theme .course-curriculum-guide__title {
  border-bottom-color: var(--course-theme-color);
}

.course-theme .voice__heading {
  color: var(--course-theme-color);
}

.course-theme .voice-slider__pagination > *.is-active {
  background-color: var(--course-theme-color);
}
