.education:not(:has(+ #related)) .wrap {
  padding-bottom: 150px;
}
.education#roadmap .wrap {
  padding-top: 180px;
}
.education#roadmap .wrap .contents p {
  margin-bottom: 4em;
}
.education#roadmap .wrap .contents .img {
  padding: min(3vw, 60px) min(3.5vw, 70px);
  border: 5px solid var(--color_main);
  border-radius: 40px;
}
.education#roadmap .wrap .contents .img img {
  display: block;
}
.education .wrap .contents .contents_inner {
  display: grid;
}
.education .wrap .contents .ttl_bg {
  margin-bottom: 2.5em;
}
.education .wrap .contents h3 {
  font-size: 3.2rem;
  line-height: 1;
  color: var(--color_main);
  margin-bottom: 1em;
}
.education .wrap .contents p {
  font-size: 1.8rem;
}
.education .wrap .contents p.note {
  color: var(--color_gray2);
}
.education .wrap .contents .onboarding_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-column-gap: 1%;
  margin-top: 80px;
  margin-bottom: 20px;
}
.education .wrap .contents .onboarding_list li {
  display: grid;
  grid-template-rows: auto 1fr;
  grid-row-gap: 10px;
}
.education .wrap .contents .onboarding_list li h4 {
  font-size: min(1.7vw, 2.2rem);
  color: var(--color_white);
  background-color: var(--color_main);
  height: 3.6em;
  padding: 0 2.5em;
  display: grid;
  align-items: center;
  border-radius: 20px;
}
.education .wrap .contents .onboarding_list li dl {
  border: 1px solid var(--color_main);
  border-radius: 20px;
  padding: min(1.6vw, 30px);
}
.education .wrap .contents .onboarding_list li dl dt {
  font-size: min(1.5vw, 2rem);
  line-height: 1.5;
  color: var(--color_main);
  text-align: center;
  margin-bottom: 0.8em;
}
.education .wrap .contents .onboarding_list li dl dt span {
  font-size: 0.8em;
}
.education .wrap .contents .onboarding_list li dl dd {
  font-size: min(1.3vw, 1.5rem);
  line-height: 1.66;
}
.education .wrap .contents .onboarding_list li dl dd span {
  color: var(--color_main);
}
.education .wrap .contents .program_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 90px 4%;
}
.education .wrap .contents .program_list li img {
  border-radius: 20px;
}
.education .wrap .contents .program_list li h4 {
  font-size: min(1.6vw, 2.8rem);
  line-height: 1.5;
  text-align: center;
  color: var(--color_main);
  border-bottom: 1px solid var(--color_main);
  padding: 1em 0 0.5em;
  margin-bottom: 0.66em;
}
.education .wrap .contents .program_list li p {
  font-size: min(1.4vw, 1.8rem);
}
@media screen and (max-width: 1024px) {
  .education:not(:has(+ #related)) .wrap {
    padding-bottom: 120px;
  }
  .education#roadmap .wrap {
    padding-top: 120px;
  }
  .education#roadmap .wrap .contents .img {
    padding: 30px;
    border-radius: 30px;
  }
  .education#roadmap .wrap .contents .scrolltable {
    min-width: 1060px;
  }
  .education#roadmap .wrap .contents .scrollwrap {
    padding: 0 30px 20px;
    margin: 0 -30px;
  }
  .education .wrap .contents .onboarding_list {
    grid-template-columns: repeat(3, 1fr);
    grid-row-gap: 20px;
  }
  .education .wrap .contents .onboarding_list li h4 {
    font-size: 2rem;
    border-radius: 15px;
  }
  .education .wrap .contents .onboarding_list li dl {
    border-radius: 15px;
    padding: 30px;
  }
  .education .wrap .contents .onboarding_list li dl dt {
    font-size: 1.8rem;
  }
  .education .wrap .contents .onboarding_list li dl dd {
    font-size: 1.5rem;
  }
  .education .wrap .contents .program_list {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 60px 4%;
  }
  .education .wrap .contents .program_list li img {
    border-radius: 15px;
  }
  .education .wrap .contents .program_list li h4 {
    font-size: min(2.4vw, 2.8rem);
  }
  .education .wrap .contents .program_list li p {
    font-size: min(2vw, 1.8rem);
  }
}
@media screen and (max-width: 768px) {
  .education:not(:has(+ #related)) .wrap {
    padding-bottom: 100px;
  }
  .education#roadmap .wrap {
    padding-top: 90px;
  }
  .education#roadmap .wrap .contents p {
    margin-bottom: 3em;
  }
  .education#roadmap .wrap .contents .img {
    padding: 20px;
    border: 2px solid var(--color_main);
  }
  .education#roadmap .wrap .contents .scrollwrap {
    padding: 0 20px 20px;
    margin: 0 -20px;
  }
  .education .wrap .contents h3 {
    font-size: 2.2rem;
  }
  .education .wrap .contents p {
    font-size: 1.6rem;
  }
  .education .wrap .contents .onboarding_list {
    grid-template-columns: 1fr;
    margin-top: 50px;
    grid-column-gap: 20px;
  }
  .education .wrap .contents .onboarding_list li h4 {
    font-size: 2rem;
    text-align: center;
    height: 3.4em;
    border-radius: 10px;
  }
  .education .wrap .contents .onboarding_list li dl {
    border-radius: 10px;
    padding: 30px;
  }
  .education .wrap .contents .onboarding_list li dl dt {
    font-size: 2rem;
  }
  .education .wrap .contents .onboarding_list li dl dd {
    font-size: 1.4rem;
  }
  .education .wrap .contents .program_list {
    grid-template-columns: 1fr;
    grid-gap: 50px;
  }
  .education .wrap .contents .program_list li img {
    border-radius: 10px;
  }
  .education .wrap .contents .program_list li h4 {
    font-size: 2.2rem;
    padding: 1em 0 0.66em;
  }
  .education .wrap .contents .program_list li p {
    font-size: 1.6rem;
  }
}