@charset "utf-8";
/* CSS Document */

/* =================================================================
 * 
 *  COURSE
 * 
 * ================================================================= */

/* mv
 * ====================== */

.mv {
  position: relative;
  padding-top: 74px;
  background-image: url(../img/course__mv-02.png);
  background-size: cover;
  background-position: center;
  height: 100vh;
}
@media screen and (min-width: 768px) {
  .mv {
    padding-top: 120px;
  }
}

.mv__title {
  position: absolute;
  height: fit-content;
  padding-top: 100px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 90%;
  max-width: 600px;
}
@media screen and (min-width: 768px) {
  .mv__title {
    width: clamp(700px, calc(334.6153846153846px + 32.05128205128205vw), 950px);
  }
}

.mv-discription {
  text-align: center;
  mix-blend-mode: color-burn;
}

/* スケジュール
 * ====================== */

.course {
  margin-bottom: 60px;
  padding-top: 120px;
  margin-top: -120px;
}

.course:last-of-type {
  margin-bottom: 0;
  padding-bottom: 120px;
  border-bottom: solid 1px var(--color-primary);
}

.course__title {
  width: 100vw;
  margin: 0 calc(50% - 50vw) 40px;
  padding: 40px 10px;
  background-color: var(--color-table);
  font-size: var(--fontSize-l);
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .course__title {
    padding: 40px;
  }
}

.course__title h2 {
  font-size: var(--fontSize-l);
}

.course__title-note {
  margin-bottom: 20px;
  font-size: var(--fontSize-m);
}

.course__title-price {
  font-weight: 700;
}

.course__requirement {
  font-size: var(--fontSize-m);
  margin-top: 20px;
}

.course__title span {
  font-size: var(--fontSize-s);
}

.course__title dl {
  margin-bottom: 10px;
}

.course__title dl div {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .course__title dl div {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 11em;
    margin-inline: auto;
  }
}

.course__title p {
  width: fit-content;
  margin-inline: auto;
  text-align: left;
}

.course__discription {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 40px;
  font-size: var(--fontSize-s);
}

.course__discription li {
  margin-bottom: 20px;
}

.course__discription h3 {
  margin-bottom: 10px;
  font-size: var(--fontSize-m);
}

.time-schedule {
  max-width: 800px;
  margin-inline: auto;
}

.time-schedule__title {
  margin-bottom: 5px;
  text-align: center;
  font-size: var(--fontSize-m);
}

.time-schedule__discription {
  margin-inline: auto;
  width: fit-content;
  margin-bottom: 40px;
}

.time-schedule .time {
  width: 90px;
  text-align: center;
  font-size: var(--fontSize-m);
}
@media screen and (min-width: 440px) {
  .time-schedule .time {
    width: 110px;
  }
}

.time-schedule .sch_box {
  margin-left: 40px;
  padding: 10px 0 10px 20px;
  border-left: solid 1px var(--color-primary);
}
@media screen and (min-width: 440px) {
  .time-schedule .sch_box {
    margin-left: 55px;
    padding: 20px 20px 20px 60px;
  }
}

.sch_title {
  margin-bottom: 20px;
  font-size: var(--fontSize-s);
}

.sch_list {
  margin-left: 10px;
}

.sch_list__item {
  margin-bottom: 10px;
  font-size: var(--fontSize-s);
}

.sch_list__item h5 {
  font-size: var(--fontSize-s);
}

.sch_list__note {
  margin-top: 10px;
}

.red-note {
  margin-bottom: 60px;
}

.red-note__title {
  font-size: var(--fontSize-m);
  margin-bottom: 20px;
}
