@charset "UTF-8";

/** ================================================

Screen Size

================================================ */

/** ================================================

Responsive Settings

================================================ */

/** ================================================

Assets Path Settings

================================================ */

/** ================================================

Color Settings

================================================ */

/** ================================================

Easing Settings

================================================ */

/** ================================================

Font Settings

================================================ */

/** ================================================

Depth

================================================ */

/** ================================================

Object Size

================================================ */

/** ================================================

Modal Settings

================================================ */

/** ================================================

	Assets Functions

================================================ */

/** ================================================

	Rem

================================================ */

/** ================================================

	View Port Size

================================================ */

/** ================================================

Responsive

================================================ */

.sca-m-csp-hero {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.sca-m-csp-hero__image {
  position: relative;
  width: 100%;
}

.sca-m-csp-hero__image img {
  width: 100%;
  height: auto;
}

.sca-m-csp-hero__content {
  position: absolute;
  top: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.sca-m-csp-hero__title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.sca-m-csp-hero__title-tagline {
  display: block;
  color: #f5ce0f;
  font-size: 2.03125vw;
  font-weight: 700;
  line-height: calc(36 / 26);
  text-align: center;
}

.sca-m-csp-hero__title-logo {
  display: block;
  width: 26.015625vw;
  -webkit-margin-before: 1.5625vw;
  margin-block-start: 1.5625vw;
  text-align: center;
}

.sca-m-csp-hero__title-logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.sca-m-csp-hero__title-course {
  display: block;
  color: #fff;
  font-size: 2.8125vw;
  font-weight: 700;
  line-height: 1;
  -webkit-margin-before: 1.953125vw;
  margin-block-start: 1.953125vw;
  text-align: center;
}

.sca-m-csp-hero__description {
  display: block;
  color: #fff;
  font-size: 1.25vw;
  font-weight: 700;
  line-height: calc(28.8 / 16);
  -webkit-margin-before: 3.90625vw;
  margin-block-start: 3.90625vw;
  text-align: center;
}

.sca-m-csp-hero__obj-1 {
  position: absolute;
  top: 5.859375vw;
  left: -4.296875vw;
  width: 14.84375vw;
}

.sca-m-csp-hero__obj-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 18.515625vw;
}

.sca-m-csp-what {
  position: relative;
  background-color: #E2E2E2;
}

.sca-m-csp-what__inner {
  position: relative;
  z-index: 1;
}

.sca-m-csp-what__movie {
  width: 100%;
  height: auto;
}

.sca-m-csp-what__movie iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.sca-m-csp-what__content {
  width: 81.25vw;
  padding-bottom: 6.25vw;
  font-size: 1.25vw;
  font-weight: 400;
  line-height: calc(28.8 / 16);
  margin-inline: auto;
}

.sca-m-csp-what__content > p + p {
  -webkit-margin-before: 1.5em;
  margin-block-start: 1.5em;
}

.sca-m-csp-what__obj-1 {
  position: absolute;
  top: 4.6875vw;
  right: 0;
  width: 26.328125vw;
}

.sca-m-csp-what__obj-2 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 35.703125vw;
}

.sca-m-csp-what__obj-1,
.sca-m-csp-what__obj-2 {
  pointer-events: none;
}

.sca-m-csp-outline {
  position: relative;
  width: 81.25vw;
  background-color: #000;
  color: #fff;
  margin-inline: auto;
  padding-block: 6.25vw;
  padding-inline: 4.6875vw;
}

.sca-m-csp-outline__image {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  inset: 0;
  pointer-events: none;
}

.sca-m-csp-outline__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.sca-m-csp-outline__content {
  position: relative;
  z-index: 1;
  font-size: 1.25vw;
  line-height: calc(25 / 14);
}

.sca-m-csp-outline__figure {
  width: 51.875vw;
  -webkit-margin-before: 4.6875vw;
  margin-block-start: 4.6875vw;
  margin-inline: auto;
}

.sca-m-csp-outline__figure img {
  width: 100%;
  height: auto;
}

.sca-m-csp-outline__figure figcaption {
  font-size: 1.09375vw;
  font-weight: 700;
  line-height: 1.5;
  -webkit-margin-before: 1.5625vw;
  margin-block-start: 1.5625vw;
  text-align: center;
}

.sca-m-csp-course-list {
  display: -ms-flexbox;
  display: flex;
  width: 81.25vw;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.5625vw;
  margin-inline: auto;
}

.sca-m-csp-course-list li a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  height: 11.71875vw;
  -ms-flex-align: stretch;
  align-items: stretch;
  background-color: #415261;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.sca-m-csp-course-list li a:hover {
  background-color: #55636F;
}

.sca-m-csp-course-list li a i {
  position: absolute;
  top: 50%;
  right: 3.125vw;
  font-size: 1.7142857143vw;
  transform: translateY(-50%);
}

.sca-m-csp-course-list__icon {
  display: -ms-flexbox;
  display: flex;
  width: 15.625vw;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 2.34375vw;
  border-right: 0.390625vw solid var(--color-course);
  background-color: #f5f5f5;
}

.sca-m-csp-course-list__icon img {
  width: auto;
  height: 8.125vw;
}

.sca-m-csp-course-list__label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1;
  flex: 1;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3.125vw 3.90625vw;
  gap: 0.4em;
}

.sca-m-csp-course-list__en {
  color: var(--color-course);
  font-family: "Raleway", "游ゴシック体", YuGothic, "Original Yu Gothic", "Yu Gothic Medium", sans-serif;
  font-size: 2.34375vw;
  font-weight: 700;
  line-height: 1;
}

.sca-m-csp-course-list__ja {
  font-family: "Raleway", "游ゴシック体", YuGothic, "Original Yu Gothic", "Yu Gothic Medium", sans-serif;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.5;
}

.sca-m-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.5625vw;
  reading-flow: flex-visual;
}

.sca-m-heading__ja {
  -ms-flex-order: 2;
  order: 2;
  font-size: 2.5vw;
  font-weight: 700;
  line-height: calc(48 / 32);
  text-align: center;
}

.sca-m-heading__en {
  -ms-flex-order: 1;
  order: 1;
  color: #DC4405;
  font-family: "Raleway", "游ゴシック体", YuGothic, "Original Yu Gothic", "Yu Gothic Medium", sans-serif;
  font-size: 1.5625vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: calc(20 / 20);
  text-align: center;
}

.sca-m-heading-small {
  font-size: 1.5625vw;
  font-weight: 700;
  line-height: 1.5;
  margin-block: 3.125vw;
  text-align: center;
}

.sca-m-section-header {
  width: 81.25vw;
  margin-inline: auto;
  padding-block: 6.25vw;
}

.sca-m-section-header--compact {
  padding-bottom: 3.125vw;
}

.sca-m-section-header__description {
  color: #000;
  font-size: 1.25vw;
  font-weight: 400;
  line-height: calc(28.8 / 16);
  -webkit-margin-before: 3.125vw;
  margin-block-start: 3.125vw;
}

.sca-m-section-header__description > p + p {
  -webkit-margin-before: 1.5em;
  margin-block-start: 1.5em;
}

.sca-m-btn {
  position: relative;
  display: block;
  font-weight: 700;
  text-decoration: none !important;
  transition-duration: 250ms;
  transition-property: color;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}

.sca-m-btn--large {
  font-size: 1.1428571429vw;
}

.sca-m-btn__in {
  position: relative;
  display: block;
}

.sca-m-btn__txt {
  position: relative;
  display: block;
  font-weight: 700;
  text-align: center;
}

.sca-m-btn__txt--lefted {
  text-align: left;
}

.sca-m-btn__txt__en,
.sca-m-btn__txt__jp {
  display: block;
}

.sca-m-btn__txt__en {
  font-family: "Roboto", "游ゴシック体", YuGothic, "Original Yu Gothic", "Yu Gothic Medium", sans-serif;
  font-weight: 400;
}

.sca-m-btn__txt__main,
.sca-m-btn__txt__sub {
  display: block;
}

.sca-m-btn__txt__sub {
  margin-top: 0.5714285714vw;
}

.sca-m-btn__arrow {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.5em;
  font-weight: 400 !important;
  line-height: 1;
}

.sca-m-btn--lower-link .sca-m-btn__txt__en {
  font-size: 1.7142857143vw;
}

.sca-m-btn--lower-link .sca-m-btn__txt__jp {
  font-size: 1.1428571429vw;
}

.sca-m-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 0;
  height: 100%;
  content: "";
  transition-duration: 250ms;
  transition-property: width;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}

.sca-m-btn--white {
  border: 2px solid #ffffff;
  background-color: #ffffff;
  color: #0E2335 !important;
}

.sca-m-btn--white::before {
  background-color: #0E2335;
}

.sca-m-btn--white:hover {
  color: #ffffff !important;
}

.sca-m-btn--white:hover::before {
  width: 100%;
}

.sca-m-btn--gray {
  border: 2px solid #3C454C;
  background-color: #3C454C;
  color: #ffffff !important;
}

.sca-m-btn--gray::before {
  background-color: #ffffff;
}

.sca-m-btn--gray:hover {
  color: #3C454C !important;
}

.sca-m-btn--gray:hover::before {
  width: 100%;
}

.sca-m-btn--place-red {
  border: 2px solid #E31C22;
  background-color: #E31C22;
  color: #ffffff !important;
}

.sca-m-btn--place-red::before {
  background-color: #ffffff;
}

.sca-m-btn--place-red:hover {
  color: #E31C22 !important;
}

.sca-m-btn--place-red:hover::before {
  width: 100%;
}

.sca-m-btn--blue {
  border: 2px solid #314B82;
  background-color: #314B82;
  color: #ffffff !important;
}

.sca-m-btn--blue::before {
  background-color: #ffffff;
}

.sca-m-btn--blue:hover {
  color: #314B82 !important;
}

.sca-m-btn--blue:hover::before {
  width: 100%;
}

.sca-m-btn--red {
  border: 2px solid #DC4405;
  background-color: #DC4405;
  color: #ffffff !important;
}

.sca-m-btn--red::before {
  background-color: #ffffff;
}

.sca-m-btn--red:hover {
  color: #DC4405 !important;
}

.sca-m-btn--red:hover::before {
  width: 100%;
}

.sca-m-about {
  margin-right: auto;
  margin-left: auto;
}

.sca-m-about__logo {
  margin-right: auto;
  margin-left: auto;
}

.sca-m-about__lead {
  font-weight: 500;
  line-height: 1.6;
}

.sca-m-about__links {
  background-color: #E9E9E5;
}

.sca-m-about__links__sns ul {
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -ms-flex-align: center;
  align-items: center;
}

.sca-m-about__links__sns ul li {
  line-height: 1;
}

.sca-m-about__links__sns ul a {
  color: #0E2335;
}

.sca-p-csp__section {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  gap: 6.25vw;
}

@media screen and (min-width: 601px) {
  .sca-m-btn {
    padding: 1vw 1.4285714286vw;
    font-size: 1vw;
  }

  .sca-m-btn__txt__jp {
    margin-top: 0.5714285714vw;
  }

  .sca-m-btn__arrow {
    font-size: 1.4285714286vw;
  }

  .sca-m-btn--course-link {
    padding: 1.9285714286vw 1.4285714286vw;
  }

  .sca-m-btn--course-link .sca-m-btn__txt__en {
    font-size: 1.1428571429vw;
  }

  .sca-m-btn--place-link {
    padding: 1.7857142857vw 1.4285714286vw;
  }

  .sca-m-btn--place-link .sca-m-btn__txt__main,
  .sca-m-btn--place-link .sca-m-btn__txt__sub {
    font-size: 1.1428571429vw;
    line-height: 1.3;
  }

  .sca-m-about {
    width: 68.5714285714vw;
    padding: 5.7142857143vw 0 0.7142857143vw;
  }

  .sca-m-about__logo {
    width: 16.8571428571vw;
  }

  .sca-m-about__lead {
    font-size: 1.2857142857vw;
  }

  .sca-m-about__links {
    padding: 1.4285714286vw;
  }

  .sca-m-about__links__in {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .sca-m-about__links__web {
    width: 52.1739130435%;
  }

  .sca-m-about__links__sns {
    margin-right: 1.4285714286vw;
    font-size: 2.2857142857vw;
  }

  .sca-m-about__links__sns ul {
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

  .sca-m-about__links__sns ul li + li {
    margin-left: 3.5714285714vw;
  }
}

@media screen and (max-width: 600px) {
  .sca-m-csp-hero {
    aspect-ratio: 375/436;
  }

  .sca-m-csp-hero__image {
    aspect-ratio: 375/436;
  }

  .sca-m-csp-hero__image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .sca-m-csp-hero__title-tagline {
    font-size: 4vw;
  }

  .sca-m-csp-hero__title-logo {
    width: 49.8666666667vw;
    font-size: 12.8vw;
    line-height: 1;
    -webkit-margin-before: 5.3333333333vw;
    margin-block-start: 5.3333333333vw;
  }

  .sca-m-csp-hero__title-course {
    font-size: 4.8vw;
    -webkit-margin-before: 2.6666666667vw;
    margin-block-start: 2.6666666667vw;
  }

  .sca-m-csp-hero__description {
    font-size: 3.7333333333vw;
    -webkit-margin-before: 8vw;
    margin-block-start: 8vw;
    padding-inline: 4vw;
    text-align: left;
  }

  .sca-m-csp-hero__obj-1 {
    top: 5.8666666667vw;
    left: -12.5333333333vw;
    width: 25.0666666667vw;
  }

  .sca-m-csp-hero__obj-2 {
    width: 20.5333333333vw;
  }

  .sca-m-csp-what__content {
    width: 92vw;
    padding-bottom: 10.6666666667vw;
    font-size: 3.7333333333vw;
  }

  .sca-m-csp-what__obj-1 {
    top: 16vw;
    width: 45.3333333333vw;
  }

  .sca-m-csp-what__obj-2 {
    width: 68.2666666667vw;
  }

  .sca-m-csp-outline {
    width: 92vw;
    padding: 16vw 4vw;
  }

  .sca-m-csp-outline__content {
    font-size: 3.7333333333vw;
  }

  .sca-m-csp-outline__figure {
    width: 83.7333333333vw;
    -webkit-margin-before: 10.6666666667vw;
    margin-block-start: 10.6666666667vw;
  }

  .sca-m-csp-outline__figure figcaption {
    font-size: 2.9333333333vw;
    letter-spacing: -0.01em;
    -webkit-margin-before: 4vw;
    margin-block-start: 4vw;
  }

  .sca-m-csp-course-list {
    width: 92vw;
    gap: 4vw;
  }

  .sca-m-csp-course-list li a {
    height: 33.6vw;
  }

  .sca-m-csp-course-list li a i {
    top: auto;
    right: 4vw;
    bottom: 2.6666666667vw;
    font-size: 5.3333333333vw;
    transform: none;
  }

  .sca-m-csp-course-list__icon {
    width: 39.4666666667vw;
    padding-left: 4vw;
    border-right: 1.3333333333vw solid var(--color-course);
  }

  .sca-m-csp-course-list__icon img {
    height: 22.4vw;
  }

  .sca-m-csp-course-list__label {
    padding: 5.3333333333vw;
  }

  .sca-m-csp-course-list__en {
    font-size: 4.8vw;
  }

  .sca-m-csp-course-list__ja {
    font-size: 3.7333333333vw;
  }

  .sca-m-heading {
    gap: 2.1333333333vw;
  }

  .sca-m-heading__ja {
    font-size: 5.3333333333vw;
  }

  .sca-m-heading__en {
    font-size: 4vw;
  }

  .sca-m-heading-small {
    font-size: 4.2666666667vw;
    margin-block: 5.3333333333vw;
  }

  .sca-m-section-header {
    width: 92vw;
    padding-block: 10.6666666667vw 10.6666666667vw;
  }

  .sca-m-section-header--compact {
    padding-bottom: 8vw;
  }

  .sca-m-section-header__description {
    font-size: 3.7333333333vw;
    -webkit-margin-before: 5.3333333333vw;
    margin-block-start: 5.3333333333vw;
  }

  .sca-m-btn {
    padding: 3.3816425121vw 4.8309178744vw;
    font-size: 3.1400966184vw;
  }

  .sca-m-btn__txt__jp {
    margin-top: 0.9661835749vw;
  }

  .sca-m-btn__arrow {
    font-size: 4.8309178744vw;
  }

  .sca-m-btn--lower-link {
    padding: 4.347826087vw 4.8309178744vw;
  }

  .sca-m-btn--lower-link .sca-m-btn__txt {
    text-align: left;
  }

  .sca-m-btn--lower-link .sca-m-btn__txt__en {
    font-size: 3.6231884058vw;
  }

  .sca-m-btn--lower-link .sca-m-btn__txt__jp {
    font-size: 3.1400966184vw;
  }

  .sca-m-btn--course-link {
    padding: 4.347826087vw 4.8309178744vw;
  }

  .sca-m-btn--course-link .sca-m-btn__txt__en {
    font-size: 3.8647342995vw;
  }

  .sca-m-btn--place-link {
    padding: 2.4154589372vw 4.8309178744vw;
  }

  .sca-m-btn--place-link .sca-m-btn__txt {
    text-align: left;
  }

  .sca-m-about {
    padding-right: 3.6231884058vw;
    padding-left: 3.6231884058vw;
    padding-top: 7.2463768116vw;
  }

  .sca-m-about__logo {
    width: 31.884057971vw;
  }

  .sca-m-about__lead {
    font-size: 3.1400966184vw;
  }

  .sca-m-about__links {
    padding: 3.6231884058vw 3.6231884058vw 7.2463768116vw;
  }

  .sca-m-about__links__sns {
    margin-top: 7.2463768116vw;
    font-size: 7.729468599vw;
  }

  .sca-m-about__links__sns ul {
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .sca-p-csp__section {
    gap: 5.3333333333vw;
  }
}