@charset "UTF-8";
.mt-0 {
  margin-top: 0px !important; }

.mt-5 {
  margin-top: 5px !important; }

.mt-10 {
  margin-top: 10px !important; }

.mt-15 {
  margin-top: 15px !important; }

.mt-20 {
  margin-top: 20px !important; }

.mt-25 {
  margin-top: 25px !important; }

.mt-30 {
  margin-top: 30px !important; }

.mt-35 {
  margin-top: 35px !important; }

.mt-40 {
  margin-top: 40px !important; }

.mt-45 {
  margin-top: 45px !important; }

.mt-50 {
  margin-top: 50px !important; }

.mt-55 {
  margin-top: 55px !important; }

.mt-60 {
  margin-top: 60px !important; }

.mt-65 {
  margin-top: 65px !important; }

.mt-70 {
  margin-top: 70px !important; }

.mt-75 {
  margin-top: 75px !important; }

.mt-80 {
  margin-top: 80px !important; }

.mt-85 {
  margin-top: 85px !important; }

.mt-90 {
  margin-top: 90px !important; }

.mt-95 {
  margin-top: 95px !important; }

.mt-100 {
  margin-top: 100px !important; }

.mb-0 {
  margin-bottom: 0px !important; }

.mb-5 {
  margin-bottom: 5px !important; }

.mb-10 {
  margin-bottom: 10px !important; }

.mb-15 {
  margin-bottom: 15px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mb-35 {
  margin-bottom: 35px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.mb-45 {
  margin-bottom: 45px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mb-55 {
  margin-bottom: 55px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.mb-65 {
  margin-bottom: 65px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mb-75 {
  margin-bottom: 75px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.mb-85 {
  margin-bottom: 85px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.mb-95 {
  margin-bottom: 95px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

@media screen and (min-width: 768px) {
  .mt-sm-0 {
    margin-top: 0px !important; }
  .mt-sm-5 {
    margin-top: 5px !important; }
  .mt-sm-10 {
    margin-top: 10px !important; }
  .mt-sm-15 {
    margin-top: 15px !important; }
  .mt-sm-20 {
    margin-top: 20px !important; }
  .mt-sm-25 {
    margin-top: 25px !important; }
  .mt-sm-30 {
    margin-top: 30px !important; }
  .mt-sm-35 {
    margin-top: 35px !important; }
  .mt-sm-40 {
    margin-top: 40px !important; }
  .mt-sm-45 {
    margin-top: 45px !important; }
  .mt-sm-50 {
    margin-top: 50px !important; }
  .mt-sm-55 {
    margin-top: 55px !important; }
  .mt-sm-60 {
    margin-top: 60px !important; }
  .mt-sm-65 {
    margin-top: 65px !important; }
  .mt-sm-70 {
    margin-top: 70px !important; }
  .mt-sm-75 {
    margin-top: 75px !important; }
  .mt-sm-80 {
    margin-top: 80px !important; }
  .mt-sm-85 {
    margin-top: 85px !important; }
  .mt-sm-90 {
    margin-top: 90px !important; }
  .mt-sm-95 {
    margin-top: 95px !important; }
  .mt-sm-100 {
    margin-top: 100px !important; }
  .mb-sm-0 {
    margin-bottom: 0px !important; }
  .mb-sm-5 {
    margin-bottom: 5px !important; }
  .mb-sm-10 {
    margin-bottom: 10px !important; }
  .mb-sm-15 {
    margin-bottom: 15px !important; }
  .mb-sm-20 {
    margin-bottom: 20px !important; }
  .mb-sm-25 {
    margin-bottom: 25px !important; }
  .mb-sm-30 {
    margin-bottom: 30px !important; }
  .mb-sm-35 {
    margin-bottom: 35px !important; }
  .mb-sm-40 {
    margin-bottom: 40px !important; }
  .mb-sm-45 {
    margin-bottom: 45px !important; }
  .mb-sm-50 {
    margin-bottom: 50px !important; }
  .mb-sm-55 {
    margin-bottom: 55px !important; }
  .mb-sm-60 {
    margin-bottom: 60px !important; }
  .mb-sm-65 {
    margin-bottom: 65px !important; }
  .mb-sm-70 {
    margin-bottom: 70px !important; }
  .mb-sm-75 {
    margin-bottom: 75px !important; }
  .mb-sm-80 {
    margin-bottom: 80px !important; }
  .mb-sm-85 {
    margin-bottom: 85px !important; }
  .mb-sm-90 {
    margin-bottom: 90px !important; }
  .mb-sm-95 {
    margin-bottom: 95px !important; }
  .mb-sm-100 {
    margin-bottom: 100px !important; } }

body, html {
  scroll-behavior: smooth; }

ul, ol {
  list-style: none;
  padding-left: 0;
  margin-left: 0; }

* {
  box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  scroll-behavior: smooth; }

img {
  max-width: 100%;
  height: auto; }

@media screen and (min-width: 768px) {
  .only-sp {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .only-pc {
    display: none !important; } }

@media screen and (min-width: 768px) {
  .sp-on {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .pc-on {
    display: none !important; } }

body {
  color: #263238;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, "Yu Gothic", メイリオ, "ヒラギノ角ゴ ProN W3", sans-serif; }
  @media screen and (max-width: 767px) {
    body {
      font-size: 16px; } }
  @media screen and (min-width: 768px) {
    body {
      font-size: 18px;
      line-height: 1.75; } }

p {
  margin-top: 0; }

.l-new-course-header {
  display: block;
  height: 200px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    .l-new-course-header {
      height: 144px; } }

.l-new-course-header__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%; }

.l-new-course-header__logo {
  display: block; }
  @media screen and (min-width: 768px) {
    .l-new-course-header__logo {
      width: 290px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-header__logo {
      width: 200px;
      margin-bottom: 0; } }
  .l-new-course-header__logo > a {
    display: block; }
  .l-new-course-header__logo img {
    display: block; }

@media screen and (min-width: 768px) {
  .l-container {
    max-width: 1460px;
    padding-left: 30px;
    padding-right: 30px;
    margin-left: auto;
    margin-right: auto; } }

@media screen and (max-width: 767px) {
  .l-container {
    padding-left: 12px;
    padding-right: 12px; } }

.l-h1 {
  text-align: center; }
  @media screen and (min-width: 768px) {
    .l-h1 {
      margin-top: 0;
      margin-bottom: 48px;
      font-size: 32px;
      line-height: 1.625; } }
  @media screen and (max-width: 767px) {
    .l-h1 {
      font-size: 24px;
      line-height: 1.7;
      margin-top: 0;
      margin-bottom: 16px; } }

picture {
  display: block; }
  @media screen and (max-width: 767px) {
    picture {
      padding-left: 13px;
      padding-right: 13px; } }
  picture img {
    display: block; }

.l-h2 {
  text-align: center;
  margin-top: 0;
  margin-bottom: 60px; }

@media screen and (min-width: 768px) {
  .l-lead {
    margin-top: 74px;
    font-size: 18px;
    text-align: center;
    margin-bottom: 0; } }

@media screen and (max-width: 767px) {
  .l-lead {
    font-size: 14px;
    padding-left: 35px;
    padding-right: 35px;
    margin-top: 35px;
    font-feature-settings: "palt"; } }

.l-new-course-h2 {
  font-weight: bold;
  text-align: center;
  color: #263238;
  padding-bottom: 10px;
  border-bottom: 6px double #54c3f1; }
  @media screen and (min-width: 768px) {
    .l-new-course-h2 {
      font-size: clamp(29px, 2.375vw, 38px);
      margin-top: clamp(77px, 7.5vw, 120px);
      margin-bottom: clamp(38px, 3.75vw, 60px); } }
  @media screen and (max-width: 767px) {
    .l-new-course-h2 {
      font-size: 22px;
      margin-top: clamp(5px, 18.6666666667vw, 143.173333333px);
      margin-bottom: clamp(3px, 10.6666666667vw, 81.8133333333px); } }
  @media screen and (min-width: 768px) {
    .l-new-course-h2.l-new-course-h2--first {
      margin-top: clamp(51px, 5vw, 80px);
      margin-bottom: clamp(51px, 5vw, 80px); } }
  @media screen and (max-width: 767px) {
    .l-new-course-h2.l-new-course-h2--first {
      margin-top: clamp(4px, 16vw, 122.72px) !important;
      margin-bottom: clamp(2px, 8vw, 61.36px); } }

@media screen and (min-width: 768px) {
  .l-new-course-service {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 60px 32px; } }

@media screen and (max-width: 767px) {
  .l-new-course-service {
    margin-left: 24px;
    margin-right: 24px; } }

.l-new-course-service li {
  border-radius: 30px;
  background-color: #e9f5f7;
  list-style: none; }
  @media screen and (min-width: 768px) {
    .l-new-course-service li {
      padding: 35.5px 32px 45px 27px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-service li {
      padding: 32px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-service li + li {
      margin-top: 20px; } }
  .l-new-course-service li dl {
    margin: 0;
    padding: 0; }
  .l-new-course-service li dt {
    border-left: 10px solid #54c3f1;
    font-weight: bold; }
    @media screen and (min-width: 768px) {
      .l-new-course-service li dt {
        padding: 0 0 0 25px;
        font-size: 24px; } }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-service li dt {
        font-size: 24px;
        line-height: 1.3; } }
    @media screen and (max-width: 767px) {
      .l-new-course-service li dt {
        font-size: 20px;
        padding-left: 15px;
        padding-top: 0.2em;
        padding-bottom: 0.2em;
        font-feature-settings: "palt"; } }
  .l-new-course-service li dd {
    margin: 28px 0 0 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.7; }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-service li dd {
        font-size: 16px;
        line-height: 1.5; } }
    @media screen and (max-width: 767px) {
      .l-new-course-service li dd {
        margin-top: 14px;
        font-size: 16px;
        font-feature-settings: "palt"; } }

.l-new-course-figure + .l-block__title {
  margin-top: 60px; }
  @media screen and (max-width: 767px) {
    .l-new-course-figure + .l-block__title {
      margin-top: 30px; } }

.l-new-course-footer {
  display: block;
  height: 128px; }

.l-new-course-footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%; }

.l-new-course-footer__logo {
  display: block; }
  @media screen and (min-width: 768px) {
    .l-new-course-footer__logo {
      width: 160px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-footer__logo {
      width: 91px;
      margin-top: 0;
      margin-bottom: 0; } }

.l-new-course-footer {
  height: 230px; }
  @media screen and (max-width: 767px) {
    .l-new-course-footer {
      height: auto;
      padding-top: 22px;
      padding-bottom: 22px; } }
  .l-new-course-footer address {
    font-style: normal;
    font-size: 14px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .l-new-course-footer address {
        font-size: 10px; } }

.l-new-course-kv,
.l-new-course-anchors {
  margin-left: auto;
  margin-right: auto; }

.l-new-course-kv {
  background: url(../images/bg_kv.png) 50% 50%/cover no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  @media screen and (min-width: 768px) {
    .l-new-course-kv {
      height: 496px; } }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-kv {
      height: auto;
      padding-top: 50px;
      padding-bottom: 50px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-kv {
      padding-top: 40px;
      padding-bottom: 40px;
      height: auto;
      background: url(../images/bg_kv_sp.png) 50% 50%/cover no-repeat; } }
  .l-new-course-kv h1 {
    font-weight: bold;
    text-align: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center; }
    @media screen and (min-width: 768px) {
      .l-new-course-kv h1 {
        margin: 0 0 clamp(38px, 3.75vw, 60px);
        text-shadow: 3px 3px 4px rgba(69, 61, 61, 0.4);
        font-size: clamp(38px, 3.75vw, 60px); } }
    @media screen and (max-width: 767px) {
      .l-new-course-kv h1 {
        margin-top: 0;
        font-size: clamp(2px, 8.5333333333vw, 65.4506666667px);
        text-shadow: 3px 3px 4px rgba(69, 61, 61, 0.4); } }
    .l-new-course-kv h1 span {
      display: block;
      line-height: 1;
      padding-bottom: 0.2em;
      background: linear-gradient(transparent 60%, #8dc69d 60%); }
      @media screen and (max-width: 767px) {
        .l-new-course-kv h1 span {
          line-height: 1.5;
          padding-bottom: 0;
          text-decoration-color: #bed7a7; } }
      @media screen and (min-width: 768px) {
        .l-new-course-kv h1 span:first-child {
          padding-left: 1em;
          padding-right: 1em;
          text-decoration: none !important;
          margin-bottom: 32px; } }
      @media screen and (min-width: 768px) {
        .l-new-course-kv h1 span:last-child {
          margin-bottom: 0; } }
  .l-new-course-kv p {
    text-align: left;
    color: #fff;
    max-width: 1388px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 30px;
    padding-right: 30px;
    font-weight: bold;
    margin-bottom: 0; }
    @media screen and (min-width: 768px) {
      .l-new-course-kv p {
        font-size: clamp(16px, 1.5625vw, 25px);
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); } }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-kv p {
        font-size: 22px; } }
    @media screen and (max-width: 767px) {
      .l-new-course-kv p {
        font-size: clamp(1px, 5.3333333333vw, 40.9066666667px); } }

@media screen and (min-width: 768px) {
  .l-new-course-style-list {
    font-size: 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 0 clamp(20px, 2vw, 32px); } }

@media screen and (max-width: 767px) {
  .l-new-course-style-list {
    margin-left: 24px;
    margin-right: 24px; } }

@media screen and (max-width: 767px) {
  .l-new-course-style-list li + li {
    margin-top: 40px; } }

.l-new-course-style-list li p {
  font-size: 18px;
  margin-bottom: 50px; }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-style-list li p {
      font-size: 16px;
      margin-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-style-list li p {
      font-size: 16px;
      margin-bottom: 20px; } }

.l-new-course-style-list li h3 {
  margin: 0 0 40px;
  padding: clamp(19px, 1.8125vw, 29px) clamp(18px, 1.75vw, 28px) clamp(18px, 1.75vw, 28px);
  border-radius: 44.5px;
  background-color: #e9f5f7;
  font-size: 24px;
  font-weight: bold;
  color: #000;
  text-align: center;
  line-height: 1;
  position: relative; }
  @media screen and (max-width: 767px) {
    .l-new-course-style-list li h3 {
      font-size: 20px;
      text-align: center;
      margin-bottom: 20px;
      padding: 25px 24px; } }
  .l-new-course-style-list li h3 i {
    position: absolute;
    width: clamp(43px, 4.1875vw, 67px);
    height: clamp(43px, 4.1875vw, 67px);
    background-color: #54c3f1;
    left: clamp(10px, 1vw, 16px);
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Helvetica;
    font-size: clamp(12px, 1.125vw, 18px);
    font-weight: bold;
    text-align: center;
    color: #fff;
    font-style: normal;
    border-radius: 50%; }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-style-list li h3 i {
        width: 50px;
        height: 50px;
        transform: translateY(-100%);
        left: -15px; } }
    @media screen and (max-width: 767px) {
      .l-new-course-style-list li h3 i {
        width: 50px;
        height: 50px;
        font-size: 14px;
        padding: 0; } }

.l-new-course-box {
  border-radius: 30px;
  background-color: #e9f5f7; }
  @media screen and (min-width: 768px) {
    .l-new-course-box {
      max-width: 1392px;
      margin: 109px auto 120px;
      padding: clamp(51px, 5vw, 80px) clamp(54px, 5.25vw, 84px); } }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-box {
      max-width: 1392px;
      margin: 55px auto 60px;
      padding: 30px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-box {
      margin-top: 40px;
      padding: 34px 20px 20px;
      margin-left: 24px;
      margin-right: 24px; } }
  .l-new-course-box h3 {
    margin: 0;
    font-size: 32px;
    font-weight: bold;
    text-align: left;
    color: #263238; }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-box h3 {
        font-size: 28px !important; } }
    @media screen and (max-width: 767px) {
      .l-new-course-box h3 {
        font-size: 20px; } }
  .l-new-course-box p {
    margin: 30px 0 60px;
    font-size: 18px;
    text-align: left;
    color: #263238; }
    @media screen and (min-width: 768px) and (max-width: 1024px) {
      .l-new-course-box p {
        margin-bottom: 30px !important; } }
    @media screen and (max-width: 767px) {
      .l-new-course-box p {
        margin-top: 16px;
        font-size: 16px;
        line-height: 1.7;
        margin-bottom: 30px; } }

@media screen and (min-width: 768px) {
  .l-new-about-list {
    display: flex;
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 0;
    margin-top: 60px; } }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .l-new-about-list {
    margin-top: 30px; } }

@media screen and (min-width: 768px) {
  .l-new-about-list li {
    padding-left: 20px;
    padding-right: 20px; } }

@media screen and (max-width: 767px) {
  .l-new-about-list li + li {
    margin-top: 40px; } }

.l-new-about-list li figure {
  margin: 0; }
  .l-new-about-list li figure img {
    min-width: 100%; }

.l-new-about-list li figcaption {
  font-size: 24px;
  font-weight: bold;
  text-align: left;
  color: #263238;
  margin-bottom: 20px;
  line-height: 1; }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-about-list li figcaption {
      font-size: 20px; } }
  @media screen and (max-width: 767px) {
    .l-new-about-list li figcaption {
      font-size: 18px; } }

.l-new-point-list {
  position: relative;
  margin: 85px auto 0;
  padding: 40px;
  border-radius: 30px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  max-width: 784px; }
  @media screen and (max-width: 767px) {
    .l-new-point-list {
      margin-top: 63px;
      padding-left: 18px;
      padding-right: 18px;
      margin-bottom: 16px;
      padding-bottom: 32px; } }
  .l-new-point-list h4 {
    top: -25px;
    position: absolute;
    left: calc(50% - 120px);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 240px;
    height: 49px;
    margin: 0 auto 276px;
    padding: 13px 84px 12px 83px;
    color: #fff;
    background-color: #54c3f1;
    font-size: 24px; }
    @media screen and (max-width: 767px) {
      .l-new-point-list h4 {
        width: 128px !important;
        padding-left: 0;
        padding-right: 0;
        height: 30px;
        top: -15px;
        left: calc(50% - 64px);
        font-size: 18px; } }
  .l-new-point-list ul {
    margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .l-new-point-list ul {
        margin-top: 0; } }
    .l-new-point-list ul li {
      font-size: 24px;
      font-weight: bold; }
      @media screen and (min-width: 768px) and (max-width: 1024px) {
        .l-new-point-list ul li {
          font-size: 20px; } }
      @media screen and (max-width: 767px) {
        .l-new-point-list ul li {
          font-size: 16px;
          line-height: 1.5;
          display: flex;
          align-items: center; } }
      .l-new-point-list ul li + li {
        margin-top: 0.5em; }
        @media screen and (max-width: 767px) {
          .l-new-point-list ul li + li {
            margin-top: 0.625em; } }
      .l-new-point-list ul li:before {
        display: inline-block;
        content: "●";
        margin-right: 20px; }
        @media screen and (max-width: 767px) {
          .l-new-point-list ul li:before {
            margin-right: 10px; } }

.l-new-course-inner {
  max-width: 1328px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 767px) {
    .l-new-course-inner {
      padding-left: 24px;
      padding-right: 24px; } }

.l-new-course-lead {
  font-size: 24px;
  text-align: left;
  margin: 0 0 60px; }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-lead {
      font-size: 18px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-lead {
      font-size: 16px;
      text-align: left;
      color: #263238;
      margin-bottom: 36px; } }

.l-new-course-summary {
  font-size: 24px;
  text-align: left;
  margin-bottom: 0.5em;
  font-weight: bold; }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-summary {
      font-size: 18px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-summary {
      font-size: 16px;
      text-align: left;
      color: #263238;
      margin-bottom: 1em; } }

.l-new-course-transition {
  display: flex;
  align-items: center;
  justify-content: center; }
  @media screen and (min-width: 768px) {
    .l-new-course-transition {
      display: flex;
      align-items: center;
      justify-content: center; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition {
      margin-bottom: 50px; } }
  @media screen and (min-width: 768px) {
    .l-new-course-transition .l-new-course-transition-arrow {
      margin-left: 90px;
      margin-right: 90px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition .l-new-course-transition-arrow {
      width: 53px;
      height: 46px;
      margin-left: 18px;
      margin-right: 10px; } }
  .l-new-course-transition h3 {
    margin: 0 0 30px;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    color: #263238;
    line-height: 1; }
    @media screen and (max-width: 767px) {
      .l-new-course-transition h3 {
        font-size: 20px;
        margin-bottom: 15px; } }
  @media screen and (min-width: 768px) {
    .l-new-course-transition .l-new-course-transition-current {
      width: 400px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition .l-new-course-transition-current {
      width: 90px; } }
  .l-new-course-transition .l-new-course-transition-current ul li {
    width: 100%;
    height: 80px;
    margin: 0 0 2px;
    padding: 28px 28px;
    border: solid 1px #54c3f1;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #54c3f1;
    font-size: 24px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .l-new-course-transition .l-new-course-transition-current ul li {
        font-size: 18px;
        height: 50px;
        padding: 0; } }
  @media screen and (min-width: 768px) {
    .l-new-course-transition .l-new-course-transition-future {
      width: 400px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition .l-new-course-transition-future {
      flex-grow: 1; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition .l-new-course-transition-future h3 {
      margin-bottom: 34px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-transition .l-new-course-transition-future ul {
      margin: 0 0 30px; } }
  .l-new-course-transition .l-new-course-transition-future ul li {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border-radius: 20px;
    background-color: #54c3f1;
    font-size: 32px;
    text-align: center;
    color: #fff; }
    @media screen and (min-width: 768px) {
      .l-new-course-transition .l-new-course-transition-future ul li {
        width: 400px;
        height: 100px;
        padding: 28px 28px; } }
    @media screen and (max-width: 767px) {
      .l-new-course-transition .l-new-course-transition-future ul li {
        font-size: 20px;
        border-radius: 10px;
        height: 50px;
        flex-grow: 1; } }
    .l-new-course-transition .l-new-course-transition-future ul li + li {
      margin-top: 40px; }
      @media screen and (max-width: 767px) {
        .l-new-course-transition .l-new-course-transition-future ul li + li {
          margin-top: 20px; } }

.l-new-course-h3 {
  font-size: 32px;
  font-weight: bold;
  text-align: left;
  color: #000;
  border-left: 10px solid #54c3f1;
  padding-left: 25px; }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-h3 {
      font-size: 24px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-h3 {
      font-size: 20px;
      padding-left: 18px; } }

.l-new-course-notes {
  font-size: 16px; }
  @media screen and (max-width: 767px) {
    .l-new-course-notes {
      line-height: 1.75; } }

@media screen and (min-width: 768px) {
  .l-new-course-pl {
    padding-left: 37px; } }

@media screen and (max-width: 767px) {
  .l-new-course-pl {
    line-height: 1.875; } }

@media screen and (max-width: 767px) {
  .l-new-course-pl + .l-new-course-h3 {
    margin-top: 40px; } }

@media screen and (min-width: 768px) {
  .l-new-course-pictdesc {
    display: flex;
    align-items: center; } }

@media screen and (min-width: 768px) {
  .l-new-course-pictdesc .l-new-course-desc {
    font-size: 25px; } }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .l-new-course-pictdesc .l-new-course-desc {
    font-size: 18px; } }

.l-new-course-pictdesc .l-new-course-desc p {
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .l-new-course-pictdesc .l-new-course-desc p {
      line-height: 2; } }

@media screen and (min-width: 768px) {
  .l-new-course-pictdesc .l-new-course-pict {
    margin-left: 104px;
    min-width: 544px; } }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .l-new-course-pictdesc .l-new-course-pict {
    margin-left: 30px;
    min-width: calc(50% - 15px); } }

@media screen and (max-width: 767px) {
  .l-new-course-pictdesc .l-new-course-pict {
    margin-top: 30px; } }

.l-new-course-underline {
  text-decoration: underline;
  text-decoration-thickness: 0.4em;
  text-decoration-color: #E9F5F7;
  text-underline-offset: -0.1em;
  text-decoration-skip-ink: none;
  font-weight: bold; }

.l-new-course-renewal {
  background-color: #54C3F1;
  color: #FFFFFF; }
  @media screen and (min-width: 768px) {
    .l-new-course-renewal {
      font-size: 50px;
      padding-top: 70px;
      padding-bottom: 70px;
      font-weight: bold;
      margin-top: 180px;
      text-align: center; } }
  @media screen and (min-width: 768px) and (max-width: 1024px) {
    .l-new-course-renewal {
      font-size: 34px;
      padding-top: 60px;
      padding-bottom: 60px;
      margin-top: 100px; } }
  @media (min-width: 1024px) and (max-width: 1140px) {
    .l-new-course-renewal {
      font-size: 40px; } }
  @media screen and (max-width: 767px) {
    .l-new-course-renewal {
      margin-top: 120px;
      font-size: 24px;
      padding-top: 42px;
      padding-bottom: 42px; } }
  .l-new-course-renewal p {
    margin-bottom: 0; }
    @media screen and (min-width: 768px) {
      .l-new-course-renewal p {
        line-height: 1.5; } }
    @media screen and (max-width: 767px) {
      .l-new-course-renewal p {
        text-align: center;
        font-weight: bold; } }
    .l-new-course-renewal p small {
      display: block; }
      @media screen and (min-width: 768px) {
        .l-new-course-renewal p small {
          margin-top: 0.5em;
          font-size: 50%; } }
      @media screen and (max-width: 767px) {
        .l-new-course-renewal p small {
          font-size: inherit; } }

/* footer
----------------------------------------*/
.l-footer {
  background-color: #e9f5f7; }

.l-footer * {
  padding: 0;
  margin: 0; }

.l-footer .l-footer__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center; }

@media screen and (min-width: 768px) {
  .l-footer .l-footer__inner {
    width: 1200px;
    padding-top: 80px;
    padding-bottom: 30px;
    margin: auto; } }

@media screen and (max-width: 767px) {
  .l-footer .l-footer__inner {
    padding-top: 12.8vw;
    padding-bottom: 8vw; } }

.l-footer .logo-yamaha-music-foundation img {
  display: block; }

.l-footer .logo-yamaha-music-foundation {
  display: block;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

@media screen and (min-width: 768px) {
  .l-footer .logo-yamaha-music-foundation {
    width: 250px; } }

@media screen and (max-width: 767px) {
  .l-footer .logo-yamaha-music-foundation {
    margin-left: -5.0666666667vw;
    width: 50.6666666667vw; } }

.l-footer .logo-yamaha-music-foundation:focus-visible {
  opacity: 0.8; }

@media (hover: hover) and (pointer: fine) {
  .l-footer .logo-yamaha-music-foundation:hover {
    opacity: 0.8; } }

@media screen and (min-width: 768px) {
  .l-footer .c-sns-box {
    margin-top: 61px; } }

@media screen and (max-width: 767px) {
  .l-footer .c-sns-box {
    margin-top: 8.5333333333vw; } }

@media screen and (min-width: 768px) {
  .l-footer .c-sns-box + .c-sns-box {
    margin-top: 20px; } }

@media screen and (max-width: 767px) {
  .l-footer .c-sns-box + .c-sns-box {
    margin-top: 5.3333333333vw; } }

.l-footer .link-list {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }

@media screen and (min-width: 768px) {
  .l-footer .link-list {
    margin-top: 55px; } }

@media screen and (max-width: 767px) {
  .l-footer .link-list {
    margin-top: 13.3333333333vw; } }

.l-footer .link-list li {
  border-left: 1px solid rgba(112, 112, 112, 0.2); }

@media screen and (min-width: 768px) {
  .l-footer .link-list li {
    padding: 0 20px 3px;
    line-height: 1; } }

@media screen and (max-width: 767px) {
  .l-footer .link-list li {
    padding: 0 7.2vw; } }

.l-footer .link-list li:last-child {
  border-right: 1px solid rgba(112, 112, 112, 0.2); }

.l-footer .link-list li a {
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: inherit;
  letter-spacing: 0.03em; }

@media screen and (min-width: 768px) {
  .l-footer .link-list li a {
    font-size: 0.75rem;
    height: 21px; } }

@media screen and (max-width: 767px) {
  .l-footer .link-list li a {
    font-size: 12px;
    font-size: 3.2vw; } }

.l-footer .link-list li a:focus-visible {
  border-color: #707070; }

@media (hover: hover) and (pointer: fine) {
  .l-footer .link-list li a:hover {
    border-color: #707070; } }

.l-footer .copyright {
  color: #4b1e78;
  line-height: 1;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }

@media screen and (min-width: 768px) {
  .l-footer .copyright {
    margin-top: 30px;
    font-size: 0.6875rem; } }

@media screen and (max-width: 767px) {
  .l-footer .copyright {
    margin-top: 16.5333333333vw;
    font-size: 11px;
    font-size: 2.9333333333vw; } }

/* sns box
----------------------------------------*/
.c-sns-box {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff; }

@media screen and (min-width: 768px) {
  .c-sns-box {
    border-radius: 9999px;
    column-gap: 24px;
    padding: 14px 34px 13px;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16); } }

@media screen and (max-width: 767px) {
  .c-sns-box {
    width: 85.3333333333vw;
    border-radius: 5.3333333333vw;
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
    padding: 5.8666666667vw 0 6.4vw;
    box-shadow: 0px 0px 1.6vw rgba(0, 0, 0, 0.16); } }

.c-sns-box .c-sns-box__head {
  border-right: 1px solid rgba(112, 112, 112, 0.2); }

@media screen and (min-width: 768px) {
  .c-sns-box .c-sns-box__head {
    padding: 0 30px 0 9px; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__head {
    margin-left: -3.4666666667vw;
    margin-top: 3.2vw;
    margin-bottom: 3.2vw;
    padding-right: 4.8vw; } }

.c-sns-box .c-sns-box__head a {
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

.c-sns-box .c-sns-box__head a:focus-visible {
  opacity: 0.8; }

@media screen and (min-width: 768px) {
  .c-sns-box .c-sns-box__list img {
    display: block; }
  .c-sns-box .c-sns-box__list {
    height: 36px; }
  .c-sns-box .c-sns-box__list span {
    height: 36px; }
  .c-sns-box .c-sns-box__list a {
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; } }

@media (hover: hover) and (pointer: fine) {
  .c-sns-box .c-sns-box__head a:hover {
    opacity: 0.8; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__head + .c-sns-box__list {
    width: auto;
    transform: translateX(1.0666666667vw); } }

.c-sns-box .logo-yamaha-music-lesson {
  display: block; }

@media screen and (min-width: 768px) {
  .c-sns-box .logo-yamaha-music-lesson {
    width: 74px; } }

@media screen and (max-width: 767px) {
  .c-sns-box .logo-yamaha-music-lesson {
    width: 17.8666666667vw; } }

.c-sns-box .c-sns-box__list {
  display: flex;
  justify-content: center;
  align-items: center; }

@media screen and (min-width: 768px) {
  .c-sns-box .c-sns-box__list {
    column-gap: 24px; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__list {
    width: 100%;
    flex-wrap: wrap;
    column-gap: 8vw; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__list:last-child {
    column-gap: 4.2666666667vw; } }

.c-sns-box .c-sns-box__list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: inherit; }

@media screen and (min-width: 768px) {
  .c-sns-box .c-sns-box__list li a {
    font-size: 0.8125rem;
    column-gap: 4px; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__list li a {
    font-size: 11px;
    font-size: 2.9333333333vw;
    gap: 2.1333333333vw; } }

.c-sns-box .c-sns-box__list li a img {
  display: block; }

.c-sns-box ul {
  margin-top: 0;
  margin-bottom: 0; }

.c-sns-box .c-sns-box__list li a span {
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

@media screen and (min-width: 768px) {
  .c-sns-box .c-sns-box__list li a span {
    width: 36px; } }

@media screen and (max-width: 767px) {
  .c-sns-box .c-sns-box__list li a span {
    width: 9.0666666667vw;
    color: #000; } }

.c-sns-box .c-sns-box__list li a:focus-visible span {
  opacity: 0.7; }

@media (hover: hover) and (pointer: fine) {
  .c-sns-box .c-sns-box__list li a:hover span {
    opacity: 0.7; } }

/* ページトップボタン
----------------------------------------*/
/* pagetop button
----------------------------------------*/
.c-pagetop-btn {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background-color: #54c3f1;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

@media screen and (min-width: 768px) {
  .c-pagetop-btn {
    width: 70px;
    height: 70px;
    right: 0;
    top: -35px;
    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.16)); } }

@media screen and (max-width: 767px) {
  .c-pagetop-btn {
    width: 16vw;
    height: 16vw;
    right: 5.3333333333vw;
    top: -8vw;
    filter: drop-shadow(0px 0px 1.6vw rgba(0, 0, 0, 0.16)); } }

.c-pagetop-btn:focus-visible {
  background-color: #25b2ed; }

@media (hover: hover) and (pointer: fine) {
  .c-pagetop-btn:hover {
    background-color: #25b2ed; } }

.c-pagetop-btn span {
  display: block;
  line-height: 1;
  position: relative;
  top: -0.15em; }

@media screen and (min-width: 768px) {
  .c-pagetop-btn span {
    width: 20px;
    transform: translateY(3px); } }

@media screen and (max-width: 767px) {
  .c-pagetop-btn span {
    width: 4.5333333333vw;
    transform: translateY(0.5333333333vw); } }

.l-btn-start {
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 767px) {
    .l-btn-start {
      margin-bottom: 40px;
      margin-top: -10px; } }
  @media screen and (min-width: 768px) {
    .l-btn-start {
      justify-content: flex-start;
      margin-top: -30px; } }

.c-btn-01 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #54C3F1;
  background-color: #fff;
  border-radius: 30px;
  width: 280px;
  height: 44px;
  text-decoration: none;
  color: #000;
  font-size: 16px;
  transition: 0.4s ease-out;
  font-weight: bold; }
  .c-btn-01:hover, .c-btn-01:focus {
    background-color: #54C3F1;
    color: #fff; }
    .c-btn-01:hover:before, .c-btn-01:focus:before {
      border-color: transparent transparent transparent #fff; }
  .c-btn-01:before {
    transition: 0.4s ease-out;
    position: absolute;
    left: 18px;
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0px 7px 10px;
    border-color: transparent transparent transparent #54C3F1; }

.c-indent {
  text-indent: -1em;
  padding-left: 1em; }

@media screen and (max-width: 767px) {
  .l-new-course-ls {
    letter-spacing: -0.09em;
    margin-right: -1em; } }

.u-bg-grey {
  background-color: #f2f2f2; }

.u-bg-white {
  background-color: #fff; }

/*# sourceMappingURL=bootstrap.css.map */