@charset "UTF-8";
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
picture,
figcaption {
  display: block;
}

img {
  border: none;
  vertical-align: bottom;
}

@media screen and (max-width: 1023px) and (min-width: 640px) {
  html {
    font-size: calc(16 / 1024 * 100vw);
  }
}
@media screen and (max-width: 639px) {
  html {
    font-size: calc(16 / 640 * 100vw);
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
}

a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: inherit;
}
@media (hover: hover) {
  a:hover {
    cursor: pointer;
  }
}

img,
a,
span {
  display: inline-block;
}

video,
img,
svg {
  width: 100%;
  height: 100%;
}

button {
  font: inherit;
  color: inherit;
  background: transparent;
  background: none;
  border: none;
}

input,
textarea,
select {
  font: inherit;
}

@media (min-width: 640px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.section__wrap {
  width: 100%;
  max-width: 64rem;
  margin: 0 auto 0;
}

.fixed__btn {
  position: sticky;
  z-index: 99;
  top: 0rem;
  left: 0rem;
  width: 100%;
  height: auto;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (any-hover: hover) {
  .fixed__btn:hover::before {
    opacity: 0.3;
  }
}
.fixed__btn::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #ffffff;
  z-index: 1;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.fixed__btn img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-animated__fadeIn {
  translate: 0 20px;
  opacity: 0;
}
.c-animated__fadeIn.js-show {
  translate: 0;
  opacity: 1;
}

.fv {
  margin: -0.0625rem 0 0;
  padding: 0.625rem 0 0;
  background: url(/assets/img/fv/fv-bg.jpg) no-repeat center top/cover;
  overflow: hidden;
  height: 54.125rem;
}
@media screen and (max-width: 639px) {
  .fv {
    padding: 1.25rem 0 0;
    background: url(/assets/img/fv/fv-bg-sp.png) no-repeat center top/cover;
    height: 63.375rem;
  }
}

.fv__top-tit1 {
  width: 52.5625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__top-tit1 {
    width: 39.125rem;
  }
}
.fv__top-tit1 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__top-body {
  position: relative;
}
.fv__top-body::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 10.625rem;
  right: 11.25rem;
  mix-blend-mode: screen;
  background: url(/assets/img/fv/fv-img2.png) no-repeat center center/contain;
  width: 22.125rem;
  height: 12.75rem;
}
@media screen and (max-width: 639px) {
  .fv__top-body::before {
    top: 22.875rem;
    right: -1.875rem;
    mix-blend-mode: screen;
    background: url(/assets/img/fv/fv-img2-sp.png) no-repeat center center/contain;
    width: 16.4375rem;
    height: 9.5rem;
  }
}

.fv__top-tit2 {
  margin: -0.625rem 0 0;
  width: 48.5625rem;
  height: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 639px) {
  .fv__top-tit2 {
    margin: -0.625rem 0 0 0.875rem;
    width: 37.9375rem;
  }
}
.fv__top-tit2 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__top-img1 {
  content: "";
  position: absolute;
  top: -3.75rem;
  right: 0rem;
  width: 19.5625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__top-img1 {
    top: 6.25rem;
    right: 0rem;
    width: 13.6875rem;
  }
}
.fv__top-img1 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__bottom {
  margin: -1.875rem 0 0 0.625rem;
  position: relative;
}
@media screen and (max-width: 639px) {
  .fv__bottom {
    margin: -0.1875rem 0 0 0;
  }
}

.fv__bottom-text-cont {
  position: relative;
  padding: 0 0.625rem 0;
}
.fv__bottom-text-cont::before {
  content: "";
  position: absolute;
  top: -1.5rem;
  left: 31.25rem;
  mix-blend-mode: screen;
  background: url(/assets/img/fv/fv-arrow.png) no-repeat center center/contain;
  width: 4.25rem;
  height: 7.125rem;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-cont::before {
    top: -1rem;
    left: 24.375rem;
    width: 3.375rem;
    height: 5.3125rem;
  }
}

.fv__bottom-text-txt1 {
  font-size: 2.9375rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.0021276596em;
  color: #F7F011;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt1 {
    font-size: 2.375rem;
    font-weight: 700;
    line-height: 1.1842105263;
    letter-spacing: 0.0026315789em;
  }
}
.fv__bottom-text-txt1 .big {
  font-size: 4.3125rem;
  font-weight: 800;
  line-height: 0.1449275362;
  letter-spacing: -0.0289855072em;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt1 .big {
    font-size: 3.375rem;
    font-weight: 800;
    line-height: 1.2037037037;
    letter-spacing: -0.037037037em;
  }
}
.fv__bottom-text-txt1 .big2 {
  font-size: 4.3125rem;
  font-weight: 800;
  line-height: 0.1449275362;
  letter-spacing: -0.1449275362em;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt1 .big2 {
    font-size: 3.375rem;
    font-weight: 800;
    line-height: 1.2037037037;
    letter-spacing: -0.1851851852em;
  }
}
.fv__bottom-text-txt1 .middle {
  font-size: 3.6875rem;
  font-weight: 800;
  line-height: normal;
  letter-spacing: 0.0169491525em;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt1 .middle {
    font-size: 2.875rem;
    font-weight: 800;
    line-height: 1.1956521739;
    letter-spacing: 0.0217391304em;
  }
}
.fv__bottom-text-txt1 .small {
  font-size: 2.3125rem;
  font-weight: 800;
  line-height: 1.1891891892;
  letter-spacing: 0.027027027em;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt1 .small {
    font-size: 1.8125rem;
    font-weight: 800;
    line-height: 1.2068965517;
    letter-spacing: 0.0344827586em;
  }
}

.fv__bottom-text-txt2 {
  font-size: 3.5rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.0714285714em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .fv__bottom-text-txt2 {
    font-size: 3.0625rem;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.0408163265em;
  }
}

.fv__bottom-img-img1 {
  content: "";
  position: absolute;
  top: -2.5rem;
  right: 12.875rem;
  width: 14.75rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__bottom-img-img1 {
    top: 18.75rem;
    right: 18.75rem;
    width: 18.9375rem;
  }
}
.fv__bottom-img-img1 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__bottom-img-img2 {
  content: "";
  position: absolute;
  top: -5rem;
  right: 0.625rem;
  width: 12.125rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__bottom-img-img2 {
    top: 19rem;
    right: 4.375rem;
    width: 13.125rem;
  }
}
.fv__bottom-img-img2 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__band {
  content: "";
  position: absolute;
  bottom: -3.75rem;
  right: 1.25rem;
  width: 34.625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__band {
    bottom: -9rem;
    right: 1.25rem;
    width: 34.5rem;
  }
}
.fv__band img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__caution {
  content: "";
  position: absolute;
  bottom: 5.625rem;
  right: 0.375rem;
  width: 13.125rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .fv__caution {
    display: none;
  }
}
.fv__caution img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply1 {
  position: relative;
  background: url(/assets/img/apply/apply1-bg.png) no-repeat center top/contain;
  overflow: hidden;
}
.apply1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50%;
  background: url(/assets/img/apply/apply1-deco.png) no-repeat center top/contain;
  width: 21rem;
  height: 3.4375rem;
}
@media screen and (max-width: 639px) {
  .apply1::before {
    background: url(/assets/img/apply/apply1-deco-sp.png) no-repeat center top/contain;
    width: 21.0625rem;
    height: 3.5rem;
  }
}

.apply1__btn-bg {
  display: block;
  margin: 5.9375rem auto 3.5rem;
  width: 45.5rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .apply1__btn-bg {
    margin: 4.375rem auto 3.5rem;
    width: 38.125rem;
  }
}
.apply1__btn-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply1__btn {
  position: absolute;
  top: 30.625rem;
  left: 50%;
  translate: -50%;
}
@media screen and (max-width: 639px) {
  .apply1__btn {
    top: 32.5rem;
  }
}

.apply1__btn-link {
  position: relative;
  width: 39.125rem;
  height: auto;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 639px) {
  .apply1__btn-link {
    width: 36.25rem;
  }
}
.apply1__btn-link img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.apply1__btn-link::before {
  content: "";
  position: absolute;
  background-color: #ffffff;
  border-radius: 3.125rem;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (any-hover: hover) {
  .apply1__btn-link:hover::before {
    opacity: 0.3;
  }
}

.about {
  position: relative;
  padding: 0 0 5rem;
  background: url(/assets/img/about/about-bg.png) no-repeat center 6.25rem/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .about {
    background: url(/assets/img/about/about-bg-sp.png) no-repeat center 10.625rem/cover;
  }
}

.about__head {
  position: absolute;
  text-align: center;
  width: 100%;
  height: 17.4375rem;
}
.about__head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(/assets/img/about/about-head-bg.png) no-repeat center top/cover;
  width: 100%;
  height: 17.4375rem;
}
@media screen and (max-width: 639px) {
  .about__head::before {
    background: url(/assets/img/about/about-head-bg-sp.png) no-repeat center top/cover;
    width: 100%;
  }
}
.about__head::after {
  content: "";
  position: absolute;
  top: 4.125rem;
  left: 10.75rem;
  background: url(/assets/img/about/about-head-deco.png) no-repeat center top/cover;
  width: 4.375rem;
  height: 7.6875rem;
}
@media screen and (max-width: 639px) {
  .about__head::after {
    top: 1.25rem;
    left: 30rem;
    background: url(/assets/img/about/about-head-deco-sp.png) no-repeat center top/cover;
    width: 7.6875rem;
    height: 3.6875rem;
  }
}

.about__head-tit1 {
  position: relative;
  margin: 1rem 0 0;
  font-size: 3.0625rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.0204081633em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .about__head-tit1 {
    margin: 1.25rem 0 0 1.25rem;
    font-size: 2.75rem;
    font-weight: 700;
    line-height: 1.1363636364;
    letter-spacing: -0.0227272727em;
    text-align: left;
  }
}

.about__head-tit2 {
  position: relative;
  font-size: 4.4375rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.014084507em;
  color: #F7F011;
}
@media screen and (max-width: 639px) {
  .about__head-tit2 {
    margin: 0.625rem 0 0 0.625rem;
    font-size: 4.75rem;
    font-weight: 700;
    line-height: 1.1578947368;
    letter-spacing: -0.0526315789em;
    text-align: left;
  }
}

.about__head-tit3 {
  position: relative;
  font-size: 3.3125rem;
  font-weight: 800;
  line-height: 1.3396226415;
  letter-spacing: -0.0188679245em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .about__head-tit3 {
    margin: 0.375rem 0 0;
  }
}

.about__inner {
  margin: 18.125rem 0 0;
}

.about__top-bg {
  display: block;
  margin: 0 auto 0;
  width: 45.25rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .about__top-bg {
    width: 37.8125rem;
  }
}
.about__top-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about__top-txt-list {
  position: absolute;
  top: 31.875rem;
  left: 15.625rem;
}
@media screen and (max-width: 639px) {
  .about__top-txt-list {
    top: 30rem;
    left: 3.75rem;
  }
}

.about__top-txt-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1.875rem;
     -moz-column-gap: 1.875rem;
          column-gap: 1.875rem;
  list-style: none;
}

@media screen and (max-width: 639px) {
  .about__top-txt-item:nth-child(n+2) {
    margin: 2.5rem 0 0;
  }
}

.about__top-txt-item-check {
  width: 2.25rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .about__top-txt-item-check {
    width: 1.8125rem;
    -ms-flex-item-align: start;
        align-self: flex-start;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.about__top-txt-item-check img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about__top-txt-item-txt {
  font-size: 1.6875rem;
  font-weight: 600;
  line-height: 2.2962962963;
  letter-spacing: -0.037037037em;
  color: #D30528;
  text-shadow: 1px 2px 10px #ffffff;
}
@media screen and (max-width: 639px) {
  .about__top-txt-item-txt {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.0333333333em;
  }
}

.about__bottom {
  position: relative;
  margin: 4.375rem 0 0;
}
@media screen and (max-width: 639px) {
  .about__bottom {
    margin: 9.375rem 0 0;
  }
}

.about__bottom-bg {
  display: block;
  margin: 0 auto 0;
  width: 47.625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .about__bottom-bg {
    width: 37.3125rem;
  }
}
.about__bottom-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about__bottom-txt-list {
  position: absolute;
  top: 12.5rem;
  left: 15rem;
}
@media screen and (max-width: 639px) {
  .about__bottom-txt-list {
    top: 10rem;
    left: 3.4375rem;
  }
}

.about__bottom-txt-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1.25rem;
     -moz-column-gap: 1.25rem;
          column-gap: 1.25rem;
  list-style: none;
}
@media screen and (max-width: 639px) {
  .about__bottom-txt-item {
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
}

.about__bottom-txt-item:nth-child(n+2) {
  margin: 1.875rem 0 0;
}
@media screen and (max-width: 639px) {
  .about__bottom-txt-item:nth-child(n+2) {
    margin: 1.8125rem 0 0;
  }
}

.about__bottom-txt-item-cross {
  width: 1.5625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .about__bottom-txt-item-cross {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}
.about__bottom-txt-item-cross img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.about__bottom-txt-item-txt {
  font-size: 1.6875rem;
  font-weight: 600;
  line-height: 1.1111111111;
  letter-spacing: 0.037037037em;
  color: #00183B;
  text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, 0px 2px 0 #fff, 0 -2px 0 #fff, -2px 0 0 #fff, 2px 0 0 #fff;
}
@media screen and (max-width: 639px) {
  .about__bottom-txt-item-txt {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.1666666667;
    letter-spacing: 0.0033333333em;
  }
}

.what {
  background-color: #F0F6F7;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .what {
    margin: -0.625rem 0 0;
  }
}

.what__top {
  width: 100%;
  height: auto;
}
.what__top img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.what__main {
  position: relative;
}

.what__img {
  margin: 1.25rem auto 0;
  display: block;
  width: 61.3125rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .what__img {
    width: 38.8125rem;
  }
}
.what__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.what__txt-wrap {
  position: absolute;
  top: 21.25rem;
  left: 14.375rem;
}
@media screen and (max-width: 639px) {
  .what__txt-wrap {
    top: 21.5rem;
    left: 3.75rem;
  }
}

.what__txt1 {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.05em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .what__txt1 {
    padding-inline: 1.375rem;
    width: 32.625rem;
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.2857142857;
    letter-spacing: 0.0014285714em;
  }
}
.what__txt1 .red {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.05em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .what__txt1 .red {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2857142857;
    letter-spacing: 0.0014285714em;
  }
}

.what__txt2 {
  margin: 1.875rem 0 0;
  padding-inline: 0.625rem;
  font-size: 1.4375rem;
  font-weight: 600;
  line-height: 1.3043478261;
  letter-spacing: -0.0434782609em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .what__txt2 {
    margin: 1.875rem 0 0 5.25rem;
    text-indent: -6rem;
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.3666666667;
    letter-spacing: -0.0333333333em;
  }
}

.what__txt3 {
  margin: 0 0 0 5rem;
  padding-inline: 0.625rem;
  text-indent: -5rem;
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.04em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .what__txt3 {
    margin: 0.625rem 0 0 5.25rem;
    text-indent: -6rem;
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.3666666667;
    letter-spacing: -0.0333333333em;
  }
}

.what__txt4 {
  margin: 2.5rem 0 0;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.05em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .what__txt4 {
    padding-inline: 0.5625rem;
    width: 32.625rem;
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.6071428571;
    letter-spacing: -0.0357142857em;
  }
}
.what__txt4 .red {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.05em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .what__txt4 .red {
    display: inline;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.0021428571em;
  }
}

.training {
  position: relative;
  padding: 6.25rem 0 3.75rem;
  overflow: hidden;
  background: url(/assets/img/training/training-bg.jpg) no-repeat center/cover;
}
.training::before {
  content: "";
  position: absolute;
  top: -0.125rem;
  left: 0;
  background-color: #F0F6F7;
  width: 100%;
  height: 7.5rem;
  -webkit-clip-path: polygon(52% 70%, 0 0, 100% 0);
          clip-path: polygon(52% 70%, 0 0, 100% 0);
}
@media screen and (max-width: 639px) {
  .training::before {
    top: -0.0625rem;
    height: 4.375rem;
    -webkit-clip-path: polygon(50% 70%, 0 0, 100% 0);
            clip-path: polygon(50% 70%, 0 0, 100% 0);
  }
}

.training__head-img {
  width: 100%;
  height: auto;
}
.training__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.training__list {
  margin: 0.625rem 0 0;
}

.training__list-item {
  list-style: none;
}

.training__list-item-img {
  margin: 0 auto 0;
  display: block;
  width: 60.625rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .training__list-item-img {
    width: 38.5rem;
  }
}
.training__list-item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.experience {
  padding: 0 0 6.25rem;
  position: relative;
  background: url(/assets/img/experience/experience-bg.png) no-repeat center center/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .experience {
    margin: -0.25rem 0 0;
    background: url(/assets/img/experience/experience-bg-sp.png) no-repeat center right/cover;
  }
}

.experience__head-img {
  width: 64rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .experience__head-img {
    width: 40rem;
  }
}
.experience__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.experience__top-img {
  margin: 3.75rem auto 0;
  display: block;
  width: 46.5rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .experience__top-img {
    margin: 1.875rem auto 0;
    width: 34.9375rem;
  }
}
.experience__top-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.experience__dash {
  margin: 3.125rem auto 0;
  width: 45.25rem;
  border: 1px solid transparent;
  -o-border-image: repeating-linear-gradient(to right, #090249 0, #090249 10px, transparent 10px, transparent 20px);
     border-image: repeating-linear-gradient(to right, #090249 0, #090249 10px, transparent 10px, transparent 20px);
  border-image-slice: 1;
}
@media screen and (max-width: 639px) {
  .experience__dash {
    width: 36.9375rem;
  }
}

.experience__bottom {
  margin: 3.125rem auto 0;
  width: 45.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 639px) {
  .experience__bottom {
    width: 35rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.experience__bottom-left {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .experience__bottom-left {
    width: 100%;
  }
}

.experience__bottom-left-tit {
  padding: 0.6875rem 0 1rem;
  text-align: center;
  background-color: #BAD6F7;
  border: 0.0625rem solid #000;
  font-size: 2.125rem;
  font-weight: 600;
  line-height: 1.1176470588;
  letter-spacing: 0.0002941176em;
  color: #000;
}
@media screen and (max-width: 639px) {
  .experience__bottom-left-tit {
    font-size: 2.1875rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.0002857143em;
    border: 0.1875rem solid #000;
  }
}

.experience__bottom-left-txt-wrap {
  padding: 1.625rem 0 1.8125rem;
  height: 16.4375rem;
  background-color: #ffffff;
  border-right: 0.0625rem solid #000;
  border-bottom: 0.0625rem solid #000;
  border-left: 0.0625rem solid #000;
}
@media screen and (max-width: 639px) {
  .experience__bottom-left-txt-wrap {
    height: 14.5625rem;
    border-right: 0.1875rem solid #000;
    border-bottom: 0rem solid #000;
    border-left: 0.1875rem solid #000;
  }
}

.experience__bottom-left-txt {
  padding: 0 1.25rem 0;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.0714285714;
  letter-spacing: 0.0003571429em;
  color: #000;
}
.experience__bottom-left-txt.second {
  margin: 1.875rem 0 0;
}
@media screen and (max-width: 639px) {
  .experience__bottom-left-txt {
    padding: 0 1.875rem 0;
    font-size: 1.9375rem;
    font-weight: 400;
    line-height: 1.1935483871;
    letter-spacing: 0.0003225806em;
  }
}

.experience__bottom-right {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right {
    width: 100%;
  }
}

.experience__bottom-right-tit {
  padding: 0.6875rem 0 1rem;
  text-align: center;
  background-color: #BAD6F7;
  border-top: 0.0625rem solid #000;
  border-right: 0.0625rem solid #000;
  border-bottom: 0.0625rem solid #000;
  font-size: 2.125rem;
  font-weight: 600;
  line-height: 1.1176470588;
  letter-spacing: 0.0002941176em;
  color: #000;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-tit {
    font-size: 2.1875rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.0002857143em;
    border-top: 0.125rem solid #000;
    border-right: 0.1875rem solid #000;
    border-bottom: 0.125rem solid #000;
    border-left: 0.1875rem solid #000;
  }
}

.experience__bottom-right-list {
  padding: 2.25rem 0.625rem 1.8125rem 2.3125rem;
  height: 16.4375rem;
  background-color: #ffffff;
  border-right: 0.0625rem solid #000;
  border-bottom: 0.0625rem solid #000;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-list {
    height: 13.9375rem;
    padding: 2.25rem 0rem 1.8125rem 6.25rem;
    border-left: 0.1875rem solid #000;
    border-right: 0.1875rem solid #000;
    border-bottom: 0.1875rem solid #000;
  }
}

.experience__bottom-right-item {
  position: relative;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.0714285714;
  letter-spacing: 0.0003571429em;
  color: #000;
  list-style: none;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-item {
    font-size: 1.9375rem;
    font-weight: 400;
    line-height: 1.1935483871;
    letter-spacing: 0.0003225806em;
  }
}
.experience__bottom-right-item::before {
  content: "■";
  position: absolute;
  display: block;
  top: 0.375rem;
  left: -1.5rem;
  width: 1rem;
  height: 1rem;
  background: #000;
  content: "";
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-item::before {
    top: 0.5rem;
  }
}

.experience__bottom-right-item:nth-child(2) {
  margin: 1.875rem 0 0;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-item:nth-child(2) {
    margin: 0rem 0 0;
  }
}

.experience__bottom-right-item-wrap {
  margin: 1.875rem 0 0;
}
@media screen and (max-width: 639px) {
  .experience__bottom-right-item-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 5.625rem;
       -moz-column-gap: 5.625rem;
            column-gap: 5.625rem;
  }
}

.skill {
  padding: 0 0 12.5rem;
  position: relative;
  z-index: 2;
  background: url(/assets/img/skill/skill-bg.png) no-repeat center center/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .skill {
    background: url(/assets/img/skill/skill-bg-sp.png) no-repeat center center/cover;
  }
}

.skill__head-img {
  width: 64rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .skill__head-img {
    width: 40rem;
  }
}
.skill__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.skill__cont {
  margin: -2.5rem auto 0;
  padding: 5rem 0 3.75rem;
  width: 100%;
  max-width: 45.625rem;
  background-color: #FFFEF5;
}
@media screen and (max-width: 639px) {
  .skill__cont {
    padding: 5rem 0 1.875rem;
    max-width: 38.0625rem;
  }
}

.skill__list {
  padding: 0 4.5625rem 0;
}
@media screen and (max-width: 639px) {
  .skill__list {
    padding: 0 0.75rem 0;
  }
}

.skill__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
}
@media screen and (max-width: 639px) {
  .skill__item {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.skill__item:nth-child(n+2) {
  margin: 1.25rem 0 0;
}

.skill__item:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.skill__item-txt-wrap {
  width: 50%;
  height: 9.9375rem;
  background: url(/assets/img/skill/skill-item-bg.png) no-repeat center center/cover;
}
@media screen and (max-width: 639px) {
  .skill__item-txt-wrap {
    width: 60%;
    height: 9.375rem;
  }
}

.skill__item-txt {
  padding: 2.75rem 0 0rem;
  text-align: center;
  font-size: 1.3125rem;
  font-weight: 600;
  line-height: 1.3333333333;
  letter-spacing: -0.0476190476em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .skill__item-txt {
    padding: 1rem 0 0rem;
    font-size: 2.0625rem;
    font-weight: 600;
    line-height: 1.1818181818;
    letter-spacing: -0.0303030303em;
  }
}
@media screen and (max-width: 639px) {
  .skill__item-txt.margin {
    padding: 2.5rem 0 0rem;
  }
}
.skill__item-txt .red {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: -0.0476190476em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .skill__item-txt .red {
    font-size: 2.0625rem;
    font-weight: 600;
    line-height: 1.1818181818;
    letter-spacing: -0.0303030303em;
  }
}

.skill__item-img {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .skill__item-img {
    width: 40%;
  }
}

.skill__arrow {
  margin: 0.625rem auto 0;
  width: 13rem;
  height: auto;
}
.skill__arrow img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.skill__bottom {
  position: relative;
  margin: 3.125rem 0 0;
}
@media screen and (max-width: 639px) {
  .skill__bottom {
    margin: 1.875rem 0 0;
  }
}

.skill__bottom-deco {
  position: absolute;
  top: -2.5rem;
  left: 28.125rem;
  width: 14.375rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .skill__bottom-deco {
    top: -1.25rem;
    left: 1.25rem;
  }
}
.skill__bottom-deco img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.skill__bottom-head {
  padding: 0 5rem 0;
}
@media screen and (max-width: 639px) {
  .skill__bottom-head {
    padding: 0 1.875rem 0;
  }
}

.skill__bottom-head-subtit {
  display: inline-block;
  font-size: 2.4375rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.0256410256em;
  color: #090249;
  position: relative;
  rotate: -2deg;
}
@media screen and (max-width: 639px) {
  .skill__bottom-head-subtit {
    margin: 0 0 0 2.5rem;
    rotate: 0deg;
  }
}
.skill__bottom-head-subtit::before {
  content: "";
  position: absolute;
  top: 1.25rem;
  left: -3.125rem;
  width: 3.4375rem;
  height: 0.1875rem;
  background-color: #090249;
  rotate: 70deg;
}
.skill__bottom-head-subtit::after {
  content: "";
  position: absolute;
  top: 1.25rem;
  right: -3.125rem;
  width: 3.4375rem;
  height: 0.1875rem;
  background-color: #090249;
  rotate: -70deg;
}

.skill__bottom-head-tit {
  margin: 1.25rem 0 0 2.5rem;
  font-size: 3.625rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.0172413793em;
  color: #090249;
}
.skill__bottom-head-tit .small {
  font-size: 3.1875rem;
  font-weight: 700;
  line-height: 1.137254902;
  letter-spacing: -0.0196078431em;
}

.skill__bottom-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 1.875rem 0;
}
@media screen and (max-width: 639px) {
  .skill__bottom-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0 1.25rem 0;
  }
}

.skill__bottom-left {
  margin: 0.625rem auto 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 14.5rem;
  height: auto;
}
.skill__bottom-left img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.skill__bottom-right {
  margin: 1.875rem 0 0;
}

.skill__bottom-right-txt1 {
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.3846153846;
  letter-spacing: -0.0384615385em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .skill__bottom-right-txt1 {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.0333333333em;
  }
}
.skill__bottom-right-txt1 .red {
  display: inline;
  color: #E50516;
}

.skill__bottom-right-txt2 {
  margin: 2.5rem 0 0;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.3846153846;
  letter-spacing: -0.0384615385em;
  color: #E50516;
}
@media screen and (max-width: 639px) {
  .skill__bottom-right-txt2 {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.0333333333em;
  }
}

.apply2 {
  position: relative;
  z-index: 1;
  margin: -12.5rem 0 0;
  padding: 5.625rem 0 0;
  background: url(/assets/img/apply2/apply2-bg.png) no-repeat center top/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .apply2 {
    background: url(/assets/img/apply2/apply2-bg-sp.png) no-repeat center top/cover;
  }
}

.apply2__btn-bg {
  display: block;
  margin: 5.9375rem auto 3.5rem;
  width: 45.5rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .apply2__btn-bg {
    margin: 4.375rem auto 3.5rem;
    width: 38.125rem;
  }
}
.apply2__btn-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply2__btn {
  position: absolute;
  top: 36.25rem;
  left: 50%;
  translate: -50%;
}
@media screen and (max-width: 639px) {
  .apply2__btn {
    top: 38.125rem;
  }
}

.apply2__btn-link {
  position: relative;
  width: 39.125rem;
  height: auto;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 639px) {
  .apply2__btn-link {
    width: 36.25rem;
  }
}
.apply2__btn-link img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.apply2__btn-link::before {
  content: "";
  position: absolute;
  background-color: #ffffff;
  border-radius: 3.125rem;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (any-hover: hover) {
  .apply2__btn-link:hover::before {
    opacity: 0.3;
  }
}

.student {
  padding: 0 0 6.25rem;
  position: relative;
  background: url(/assets/img/student/student-bg.png) no-repeat center center/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .student {
    background: url(/assets/img/student/student-bg-sp.png) no-repeat center center/cover;
  }
}

.student__head-img {
  width: 64rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .student__head-img {
    width: 40rem;
  }
}
.student__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.student__cont {
  margin: 2.375rem auto 0;
  padding: 3.1875rem 0 3.8125rem;
  width: 100%;
  max-width: 45.625rem;
  background: url(/assets/img/student/student-cont-bg.png) no-repeat center bottom/cover;
}

.student__list {
  margin: 0 auto 0;
  width: 100%;
  max-width: 39.6875rem;
}

.student__item {
  padding-block: 0.9375rem;
  border-top: 0.0625rem solid #451700;
}

.student__item:last-child {
  padding-block: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 0.0625rem solid #451700;
  border-bottom: 0.0625rem solid #451700;
}

.student__item-wrap {
  position: relative;
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
  background: url(/assets/img/student/student-item-bg.png) no-repeat right bottom/cover;
}
@media screen and (max-width: 639px) {
  .student__item-wrap {
    padding: 1.5rem 2.5rem 3.125rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: url(/assets/img/student/student-item-bg-sp.png) no-repeat right bottom/cover;
  }
}

.student__item:nth-child(2) .student__item-wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  background: url(/assets/img/student/student-item-bg2.png) no-repeat left bottom/cover;
}
@media screen and (max-width: 639px) {
  .student__item:nth-child(2) .student__item-wrap {
    padding: 1.5rem 2.5rem 5.625rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: url(/assets/img/student/student-item-bg-sp.png) no-repeat left bottom/cover;
  }
}

.student__item:nth-child(3) .student__item-wrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 639px) {
  .student__item:nth-child(3) .student__item-wrap {
    padding: 1.5rem 2.5rem 4.375rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 639px) {
  .student__item-left {
    margin: 0.625rem 0 0;
  }
}

.student__item-left-tit {
  position: relative;
  padding-left: 1.25rem;
  font-size: 1.5625rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.04em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .student__item-left-tit {
    font-size: 1.9375rem;
    font-weight: 600;
    line-height: 1.1935483871;
    letter-spacing: -0.0322580645em;
  }
}
.student__item-left-tit.long::before {
  content: "";
  position: absolute;
  top: 1rem;
}
.student__item-left-tit::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: 0.625rem;
  height: 1.625rem;
  background-color: #D30528;
}

.student__item-head-txt {
  margin: 0.625rem 0 0;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.05em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .student__item-head-txt {
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.3928571429;
    letter-spacing: -0.0357142857em;
  }
}

.student__item-right-img {
  width: 9.125rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .student__item-right-img {
    margin: 0 auto 0;
    width: 15.1875rem;
  }
}
.student__item-right-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.student__item-right-txt {
  position: absolute;
  bottom: 1.25rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.2222222222;
  letter-spacing: -0.0055555556em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .student__item-right-txt {
    bottom: 2.25rem;
    right: 3.75rem;
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -0.0035714286em;
  }
}

.student__item:nth-child(3) .student__item-right-txt {
  right: 2.25rem;
}
@media screen and (max-width: 639px) {
  .student__item:nth-child(3) .student__item-right-txt {
    right: 3.75rem;
  }
}

.instructor {
  padding: 0 0 6.25rem;
  position: relative;
  background: url(/assets/img/instructor/instructor-bg.png) no-repeat center center/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .instructor {
    padding: 0 1.25rem 6.25rem;
  }
}

.instructor__head-img {
  width: 64rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .instructor__head-img {
    margin-left: -1.25rem;
    width: 40rem;
  }
}
.instructor__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.instructor__cont {
  margin: 5.5rem auto 0;
  padding: 4.4375rem 0 3.75rem;
  width: 100%;
  max-width: 45rem;
  background: url(/assets/img/instructor/instructor-item-bg.png) no-repeat center center/cover;
}
@media screen and (max-width: 639px) {
  .instructor__cont {
    padding: 4.4375rem 0 5rem;
  }
}

.instructor__box {
  margin: 0 auto 0;
  width: 100%;
  max-width: 39.5rem;
}

.instructor__top {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1.0625rem;
     -moz-column-gap: 1.0625rem;
          column-gap: 1.0625rem;
}
@media screen and (max-width: 639px) {
  .instructor__top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.instructor__top::before {
  content: "";
  position: absolute;
  top: -2.375rem;
  right: 0;
  background: url(/assets/img/instructor/instructor-deco.png) no-repeat center center/cover;
  width: 23.625rem;
  height: 2.5625rem;
}
@media screen and (max-width: 639px) {
  .instructor__top::before {
    top: 28.4375rem;
    right: 1.25rem;
    width: 36.0625rem;
    height: 2.9375rem;
    background: url(/assets/img/instructor/instructor-deco-sp.png) no-repeat center center/cover;
  }
}

.instructor__left-img {
  width: 15.4375rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .instructor__left-img {
    margin: 0 auto 0;
    width: 25.3125rem;
  }
}
.instructor__left-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.instructor__left-body {
  margin: 0.25rem 0 0;
  padding: 0.75rem 0.75rem 1rem;
  background-color: #090249;
  text-align: center;
}
@media screen and (max-width: 639px) {
  .instructor__left-body {
    margin: 0.625rem auto 0;
    width: 32.1875rem;
  }
}

.instructor__left-txt1 {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.1666666667;
  letter-spacing: 0.0004166667em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .instructor__left-txt1 {
    display: none;
  }
}

.instructor__left-txt2 {
  margin: 0.625rem 0 0;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: -0.00625em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .instructor__left-txt2 {
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.1785714286;
    letter-spacing: -0.0035714286em;
  }
}

.instructor__left-txt3 {
  margin: 0.625rem 0 0;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.375;
  letter-spacing: -0.00625em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .instructor__left-txt3 {
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.1785714286;
    letter-spacing: -0.0035714286em;
  }
}

.instructor__right {
  margin: 1.625rem 0 0;
}
@media screen and (max-width: 639px) {
  .instructor__right {
    margin: 7.125rem 0 0;
    padding: 0 3rem 0;
  }
}

.instructor__right-txt1 {
  font-size: 1.1875rem;
  font-weight: 400;
  line-height: 1.4736842105;
  letter-spacing: -0.0052631579em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .instructor__right-txt1 {
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.4285714286;
    letter-spacing: -0.0035714286em;
  }
}

.instructor__right-txt2 {
  margin: 1.625rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -0.028em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .instructor__right-txt2 {
    padding: 0 3.125rem 0;
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2142857143;
    letter-spacing: -0.0035714286em;
  }
}

.instructor__right-txt3 {
  margin: 0.625rem 0 0;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.3333333333;
  letter-spacing: -0.0466666667em;
  color: #D30528;
}

.instructor__mid {
  margin: 2.75rem 0 0;
}
@media screen and (max-width: 639px) {
  .instructor__mid {
    margin: 2.375rem 0 0;
    padding: 0 1.25rem 0;
  }
}

.instructor__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
}
@media screen and (max-width: 639px) {
  .instructor__item {
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.instructor__item:nth-child(n+2) {
  margin: 1.25rem 0 0;
}
@media screen and (max-width: 639px) {
  .instructor__item:nth-child(n+2) {
    margin: 1.875rem 0 0;
  }
}

@media screen and (max-width: 639px) {
  .instructor__item:nth-child(7) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media screen and (max-width: 639px) {
  .instructor__item:nth-child(7) .instructor__item-txt {
    margin: 0.625rem 0 0;
    width: 100%;
  }
}

@media screen and (max-width: 639px) {
  .instructor__item:nth-child(8) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media screen and (max-width: 639px) {
  .instructor__item:nth-child(8) .instructor__item-txt {
    margin: 0.625rem 0 0;
    width: 100%;
  }
}

.instructor__item-date {
  padding: 0 0.875rem 0;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.6842105263;
  letter-spacing: -0.0294736842em;
  color: #ffffff;
  background-color: #090249;
  border-radius: 100vmax;
}
@media screen and (max-width: 639px) {
  .instructor__item-date {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0.125rem 1rem 0.375rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    font-size: 1.9375rem;
    font-weight: 600;
    line-height: 1.2258064516;
    letter-spacing: -0.0180645161em;
  }
}
.instructor__item-date .small {
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.4117647059;
  letter-spacing: -0.0329411765em;
}
@media screen and (max-width: 639px) {
  .instructor__item-date .small {
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2142857143;
    letter-spacing: -0.02em;
  }
}
.instructor__item-date.second {
  text-align: center;
  width: 8.75rem;
}
@media screen and (max-width: 639px) {
  .instructor__item-date.second {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.instructor__item-txt {
  width: 29.5625rem;
  font-size: 1.1875rem;
  font-weight: 400;
  line-height: 1.2631578947;
  letter-spacing: -0.0821052632em;
  color: #090249;
}
@media screen and (max-width: 639px) {
  .instructor__item-txt {
    width: 100%;
    font-size: 1.625rem;
    font-weight: 400;
    line-height: 1.3846153846;
    letter-spacing: -0.0846153846em;
  }
}
.instructor__item-txt .strong {
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.2631578947;
  letter-spacing: -0.0294736842em;
}
@media screen and (max-width: 639px) {
  .instructor__item-txt .strong {
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.052em;
  }
}

.instructor__mid-txt {
  margin: 1.25rem 0 0;
  font-size: 1.3125rem;
  font-weight: 600;
  line-height: 1.1428571429;
  letter-spacing: -0.0266666667em;
  color: #090249;
  text-align: center;
}
@media screen and (max-width: 639px) {
  .instructor__mid-txt {
    margin: 2.5rem 0 0;
    padding: 0 1.25rem 0;
    font-size: 2.0625rem;
    font-weight: 600;
    line-height: 1.2727272727;
    letter-spacing: -0.0472727273em;
    text-align: left;
  }
}

.instructor__video {
  margin: 4rem auto 0;
  width: 39.8125rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .instructor__video {
    width: 33.3125rem;
    height: 17.0625rem;
  }
}
.instructor__video iframe {
  width: 39.8125rem;
}
@media screen and (max-width: 639px) {
  .instructor__video iframe {
    width: 33.3125rem;
    height: 17.0625rem;
  }
}

.qa {
  position: relative;
  z-index: 2;
  padding: 0 0 12.5rem;
  background: url(/assets/img/qa/qa-bg.png) no-repeat center center/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .qa {
    background: url(/assets/img/qa/qa-bg-sp.png) no-repeat center bottom/cover;
  }
}

.qa__head-img {
  width: 64rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .qa__head-img {
    width: 40rem;
  }
}
.qa__head-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.qa__inner {
  position: relative;
  padding: 0 1.25rem 0;
}

.qa__cont {
  margin: 5.5rem auto 0;
  padding: 2.4375rem 0 2.625rem;
  width: 100%;
  max-width: 45.3125rem;
  background: url(/assets/img/qa/qa-item-bg-sp.png) no-repeat left bottom/cover;
}
@media screen and (max-width: 639px) {
  .qa__cont {
    margin: -1.25rem auto 0;
    background: none;
  }
}

.qa__cont-box {
  position: absolute;
  width: 3.375rem;
  height: 3.375rem;
}
@media screen and (max-width: 639px) {
  .qa__cont-box {
    display: none;
  }
}
.qa__cont-box.left-top {
  top: -1.125rem;
  left: 7.625rem;
  background-color: #BAD6F7;
}
.qa__cont-box.left-bottom {
  bottom: -1.125rem;
  left: 7.625rem;
  background-color: #F7E3D0;
}
.qa__cont-box.right-top {
  top: -1.125rem;
  right: 7.625rem;
  background-color: #F7E3D0;
}
.qa__cont-box.right-bottom {
  bottom: -1.125rem;
  right: 7.625rem;
  background-color: #BAD6F7;
}

.qa__list {
  margin: 0 auto 0;
  width: 100%;
  max-width: 40.625rem;
}
@media screen and (max-width: 639px) {
  .qa__list {
    max-width: 36.125rem;
  }
}

.qa__item {
  padding: 1.375rem 2.5rem 1.25rem;
  list-style: none;
  background-color: #EDF7FC;
}

.qa__item:nth-child(even) {
  background-color: #F7E3D0;
}

.qa__item:nth-child(n+2) {
  margin: 1.25rem 0 0;
}
@media screen and (max-width: 639px) {
  .qa__item:nth-child(n+2) {
    margin: 2.5rem 0 0;
  }
}

.qa__item-q {
  padding: 0.25rem 0 0.625rem 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.25rem;
     -moz-column-gap: 0.25rem;
          column-gap: 0.25rem;
  background-color: #090249;
}
@media screen and (max-width: 639px) {
  .qa__item-q {
    padding: 1.25rem 0 1.25rem 0.625rem 0.625rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
}

.qa__item-q-head {
  font-size: 2.0625rem;
  font-weight: 600;
  line-height: 1.4545454545;
  letter-spacing: -0.003030303em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .qa__item-q-head {
    font-size: 3.6875rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.0016949153em;
  }
}

.qa__item-q-txt {
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 2;
  letter-spacing: -0.0545454545em;
  color: #ffffff;
}
@media screen and (max-width: 639px) {
  .qa__item-q-txt {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: -0.04em;
  }
}

.qa__item-a {
  padding: 0 1.25rem 0;
  margin: 1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.25rem;
     -moz-column-gap: 0.25rem;
          column-gap: 0.25rem;
}
@media screen and (max-width: 639px) {
  .qa__item-a {
    padding: 0 1.25rem 0 1.5rem;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
}

.qa__item-head {
  font-size: 2.0625rem;
  font-weight: 600;
  line-height: 1.2121212121;
  letter-spacing: -0.003030303em;
  color: #D30528;
}
@media screen and (max-width: 639px) {
  .qa__item-head {
    font-size: 3.6875rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.0016949153em;
  }
}

.qa__item-a-txt {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.55;
  letter-spacing: -0.05em;
  color: #D30528;
  text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, 0px 2px 0 #fff, 0 -2px 0 #fff, -2px 0 0 #fff, 2px 0 0 #fff;
}
@media screen and (max-width: 639px) {
  .qa__item-a-txt {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: -0.04em;
  }
}

.apply3 {
  position: relative;
  z-index: 1;
  margin: -12.5rem 0 0;
  padding: 5.625rem 0 0;
  background: url(/assets/img/apply3/apply3-bg.png) no-repeat center top/cover;
  overflow: hidden;
}
@media screen and (max-width: 639px) {
  .apply3 {
    background: url(/assets/img/apply3/apply3-bg-sp.png) no-repeat center top/cover;
  }
}

.apply3__btn-bg {
  display: block;
  margin: 5.9375rem auto 3.5rem;
  width: 45.5rem;
  height: auto;
}
@media screen and (max-width: 639px) {
  .apply3__btn-bg {
    margin: 5rem auto 3.5rem;
    width: 38.125rem;
  }
}
.apply3__btn-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.apply3__btn {
  position: absolute;
  top: 36.25rem;
  left: 50%;
  translate: -50%;
}
@media screen and (max-width: 639px) {
  .apply3__btn {
    top: 38.75rem;
  }
}

.apply3__btn-link {
  position: relative;
  width: 39.125rem;
  height: auto;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 639px) {
  .apply3__btn-link {
    width: 36.25rem;
  }
}
.apply3__btn-link img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.apply3__btn-link::before {
  content: "";
  position: absolute;
  background-color: #ffffff;
  border-radius: 3.125rem;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media (any-hover: hover) {
  .apply3__btn-link:hover::before {
    opacity: 0.3;
  }
}

.footer {
  position: relative;
  padding-block: 2.625rem;
  background-color: #090249;
  overflow: hidden;
}

.footer__inner {
  margin: 0 auto 0;
  width: 100%;
  max-width: 34.375rem;
}

.footer__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.footer__box-link {
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.1818181818;
  letter-spacing: -0.0090909091em;
  color: #ffffff;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
@media screen and (max-width: 639px) {
  .footer__box-link {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.0071428571em;
  }
}
@media (any-hover: hover) {
  .footer__box-link:hover {
    opacity: 0.7;
  }
}

@media (min-width: 640px) {
  .u-sp {
    display: none !important;
  }
}
@media screen and (max-width: 639px) {
  .u-pc {
    display: none !important;
  }
}
.u-pointer__none {
  pointer-events: none !important;
}
@media screen and (max-width: 639px) {
  .u-pointer__none--sp {
    pointer-events: none !important;
  }
}
@media (min-width: 640px) {
  .u-pointer__none--pc {
    pointer-events: none !important;
  }
}