@charset "utf-8";

:root {
  --viewport: 750;
  --font-family-oswald: 'Oswald', sans-serif;
  --font-family-notoSerif: 'Noto Serif JP', serif;
}
body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, Helvetica, Verdana, sans-serif, "ＭＳ Ｐゴシック", "MS PGothic";
}
.inner {
  margin: 0 calc(100vw / var(--viewport) * 30);
}
.flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: none !important;
}


/**header__index**/
.newba_index header {
  position: fixed;
  top: 0;
}
#breadcrumbs{
  padding: 3.333333vw 0;
  background: #fff;
}
/**mv**/
#mv {
  background: #16AAFA;
  position: fixed;
  top: 0;
  z-index: -1;
  /*background: url("../images/index/kv_sp.jpg");
  background-size: cover;*/
  width: 100%;
  height: 100vh;
}
#mv .photo {
  position: absolute;
  opacity: 0;
}
#mv .title {
  position: absolute;
  z-index: 1;
  opacity: 0;
}
#mv .photo.photo01 {
  animation-delay: .6s;
}
#mv .photo.photo02 {
  animation-delay: .6s;
}
#mv .photo.photo04 {
  animation-delay: .4s;
}
#mv .photo.photo05 {
  animation-delay: .6s;
}

/**case__container**/
.flex__case__container .flex__left, .flex__case__container .flex__right {
  width: 100%;
}
.flex__case__container .flex__left.flex {
  justify-content: center;
}
.case__container {
  margin: calc(100vw / var(--viewport) * 40) auto 0;
  padding: calc(100vw / var(--viewport) * 80) 0;
  background: rgba(0,83,139,.5);
  -webkit-backdrop-filter: blur(calc(100vw / var(--viewport) * 20));
  backdrop-filter: blur(calc(100vw / var(--viewport) * 20));
}
.case__container:first-of-type {
  margin-top: 100vh;
}
.case__title {
  font-size: .32rem;
  color: #fff;
  text-align: center;
}
.case__icon {
  width: 100%;
  margin: calc(100vw / var(--viewport) * 60) auto 0; 
  text-align: center;
}
.case__icon img {
  width: calc(100vw / var(--viewport) * 200);
}
.case__name {
  width: 100%;
  font-family: var(--font-family-oswald);
  font-size: .64rem;
  margin: calc(100vw / var(--viewport) * 60) auto 0; 
  color: #fff;
  letter-spacing: .05em;
  text-align: center;
}
.case__name span {
  font-family: initial;
  letter-spacing: initial;
  font-size: .32rem;
  display: block;
}
.newba_index .btn a {
  width: calc(100vw / var(--viewport) * 320);
  font-size: .24rem;
  margin: calc(100vw / var(--viewport) * 60) auto 0; 
  padding: calc(100vw / var(--viewport) * 20) 0; 
  color: #fff;
  background: #000;
  text-align: center;
  border-radius: calc(100vw / var(--viewport) * 80); 
  box-shadow: none;
}
.newba_index .btn a:after {
  right: 1px;
}
.case__table {
  width: 100%;
  margin: calc(100vw / var(--viewport) * 60) auto 0; 
  color: #fff;
}
.case__table tr {
  display: flex;
  align-items: center;
  font-size: .32rem;
  font-weight: normal;
  padding: calc(100vw / var(--viewport) * 25) 0;
  border-top: calc(100vw / var(--viewport) * 1) solid #fff;
}
.case__table tr:last-child {
  border-bottom: calc(100vw / var(--viewport) * 1) solid #fff;
}
.case__table th {
  width: 20%;
}
.case__table td {
  width: 80%;
}
.case__img {
  margin: calc(100vw / var(--viewport) * 60) auto 0; 
}

.sec02 {
  padding: calc(100vw / var(--viewport) * 60) 0;
}


/**人物ページ**/
.newba_person {
  background: #16AAFA;
}
.newba_person .btn {
  margin: calc(100vw / var(--viewport) * 80) auto 0; 
  text-align: center;
}

/**mv**/
.mv__bg {
  width: 100vw;
  height: calc(100vw / var(--viewport) * 1334);
  background-position: top left -50vw, top right -50vw !important;
  transition: all 0.3s 0s ease-out;
}
.mv__bg.active {
  background-position: top left, top right !important;
}
.arai .mv__bg {
  background: url("../images/arai/kv_before_sp.jpg"), url("../images/arai/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.endo .mv__bg {
  background: url("../images/endo/kv_before_sp.jpg"), url("../images/endo/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.nakayama .mv__bg {
  background: url("../images/nakayama/kv_before_sp.jpg"), url("../images/nakayama/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.satou2 .mv__bg {
  background: url("../images/satou2/kv_before_sp.jpg"), url("../images/satou2/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.satou .mv__bg {
  background: url("../images/satou/kv_before_sp.jpg"), url("../images/satou/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.ito .mv__bg {
  background: url("../images/ito/kv_before_sp.jpg"), url("../images/ito/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.iwaya .mv__bg {
  background: url("../images/iwaya/kv_before_sp.jpg"), url("../images/iwaya/kv_after_sp.jpg"), #a7c1d0;
  background-repeat: no-repeat, no-repeat;
  background-size: 50% auto;
}
.mv__bg h1 {
  display: block;
  width: calc(100vw / var(--viewport) * 269);
  margin: 0 auto;
  padding: calc(100vw / var(--viewport) * 327) 0 0;
}
.newba_person .flex__h1__container {
  color: #fff;
  font-family: var(--font-family-oswald);
  font-size: .32rem;
  font-weight: 500;
  text-align: center;
}
.newba_person .flex__h1__container .flex__left {
    margin: calc(100vw / var(--viewport) * 40) auto 0;
}
.newba_person .flex__h1__container .flex__left .name {
  display: block;
  font-size: .48rem;
}
.newba_person .flex__h1__container .flex__right {
    margin: calc(100vw / var(--viewport) * 40) auto 0;
}
.newba_person .flex__h1__container .flex__right img {
    width: calc(100vw / var(--viewport) * 160);
}
.scrolldown {
  font-size: .24rem;
    margin: calc(100vw / var(--viewport) * 35) auto 0;
  color: #fff;
  text-align: center;
}
.scrolldown__img {
  display: block;
  height: calc(100vw / var(--viewport) * 121);
  margin: calc(100vw / var(--viewport) * 10) auto 0;
  overflow: hidden;
  position: relative;
}
.scrolldown__img img{
  width: calc(100vw / var(--viewport) * 16);
  height: calc(100vw / var(--viewport) * 121);
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  animation: pathmove_sp 1s ease-in-out infinite;
}

.arai .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/arai/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.endo .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/endo/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.nakayama .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/nakayama/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.satou2 .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/satou2/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.satou .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/satou/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.ito .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/ito/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.iwaya .h2__container {
    width: 100vw;
    height: calc(100vw / var(--viewport) * 750);
    background: url("../images/iwaya/bg_intro_sp.jpg") no-repeat;
    background-size: cover;
}
.h2__container h2 {
  font-family: var(--font-family-notoSerif);
  font-size: .64rem;
  font-weight: normal;
  margin: 0 auto;
  padding: calc(100vw / var(--viewport) * 196) 0;
  color: #fff;
  text-align: center;
}
.endo .h2__container h2 {
  font-size: .48rem;
}
.nakayama .h2__container h2 {
  font-size: .52rem;
}
.h2__container h2 .h2__case {
  display: block;
  font-family: var(--font-family-oswald);
  font-size: .32rem;
  font-weight: bold;
  letter-spacing: .05em;
  margin: 0 auto calc(100vw / var(--viewport) * 60);
}
.h2__container h2 .h2__name {
  display: block;
  font-family: initial;
  font-size: .24rem;
  font-weight: bold;
  margin: calc(100vw / var(--viewport) * 60) auto 0;
}

.newba_person .flex__case__container {
  padding: calc(100vw / var(--viewport) * 80) 0 0;
  position: relative;
}
.newba_person .flex__case__container .flex__left.flex {
  justify-content: flex-start;
}
.newba_person .flex__case__container .flex__right {
  position: relative;
}
.newba_person .case__img {
  width: calc(100vw / var(--viewport) * 200);
  margin: 0 auto;
  position: absolute;
  top: calc(100vw / var(--viewport) * -430); 
  right: calc(100vw / var(--viewport) * 0); 
}
.newba_person .case__table {
  width: 78%;
  margin: 0;
}
.newba_person .case__table tr {
  font-weight: bold;
  padding: calc(100vw / var(--viewport) * 10) 0;
  border: none;
}
.newba_person .case__table tr:last-child {
  border-bottom: calc(100vw / var(--viewport) * 1) solid #fff;
}
.newba_person .case__table th {
  width: 20%;
  font-size: .20rem;
  padding: calc(100vw / var(--viewport) * 8) 0;
  color: #000;
  background: #fff;
  text-align: center;
  border-radius: calc(100vw / var(--viewport) * 8);
}
.newba_person .case__table td {
  font-size: .24rem;
  margin-left: 3%;
}
.newba_person .case__table tr:last-of-type td {
  font-size: .48rem;
  color: #FFFC52;
}

.section__ba__container h2 {
  margin: calc(100vw / var(--viewport) * 136) auto 0;
  text-align: center;
}
.section__ba__container h2 img {
  width: calc(100vw / var(--viewport) * 256);
}
.section__ba__container .img__ba {
  margin: calc(100vw / var(--viewport) * 80) auto 0;
}

/**tab__container**/
.tab__area {
  display: flex;
  align-items: flex-end;
  font-weight: bold;
  margin: calc(100vw / var(--viewport) * 80) auto 0; 
  padding: 0 calc(100vw / var(--viewport) * 40);
}
.tab {
  font-size: .2rem;
  width: calc(100vw / var(--viewport) * 150); 
  height: calc(100vw / var(--viewport) * 104); 
  margin-right: calc(100vw / var(--viewport) * 7);
  padding: calc(100vw / var(--viewport) * 20) 0 calc(100vw / var(--viewport) * 15);
  background: rgba(255,255,255,.5);
  text-align: center;
}
.tab:last-child {
  margin-right: 0;
}
.tab.active {
  width: calc(100vw / var(--viewport) * 200); 
  height: calc(100vw / var(--viewport) * 120); 
  padding: calc(100vw / var(--viewport) * 15) 0;
  background: #fff;
}
.tab__title {
  font-family: var(--font-family-oswald);
  font-size: .32rem;
  display: block;
  line-height: 1.25;
}
.tab.active .tab__title {
  font-size: .4rem;
}
.panel__area {
  background: #fff;
  padding: calc(100vw / var(--viewport) * 80) 0;
  box-sizing: border-box;
}
.panel {
  /*display: none;*/
  text-align: center;
  visibility: hidden;
  height: 0;
}
.panel.active {
  /*display: block;*/
  visibility: visible;
  height: auto;
}
.flex__tab__container {
  width: 100%;
  overflow: hidden;
}
.newba_person .flex__left, .newba_person .flex__right {
  width: 100%;
}
.newba_person .flex__tab__container .flex__left {
  padding: 0 calc(100vw / var(--viewport) * 90);
  position: relative;
}

/**swiper-ba**/
.newba_person .flex__tab__container .flex__right {
  margin: calc(100vw / var(--viewport) * 40) auto 0;
  padding: 0 calc(100vw / var(--viewport) * 90);
  position: relative;
}
.swiper-ba.swiper-container {
  width: 100%;
  overflow: hidden;
}
.swiper-ba.swiper-slide {
  width: 100% !important;
}
.swiper-ba.swiper-slide img {
  width: 100%;
}
.newba_person .flex__left .count, .newba_person .swiper-ba .swiper-slide .count {
  font-size: .24rem;
  position: absolute;
  left: 0;
  bottom: 0;
  color: #fff;
  background: rgba(0,0,0,.5);
  padding: calc(100vw / var(--viewport) * 10) calc(100vw / var(--viewport) * 20);
}
.newba_person .flex__left .count {
  left: calc(100vw / var(--viewport) * 90); 
}
.newba_person .flex__right .swiper-button-prev, .newba_person .flex__right .swiper-button-next {
  width: calc(100vw / var(--viewport) * 30); 
  height: calc(100vw / var(--viewport) * 60); 
}
.newba_person .flex__right .swiper-button-prev {
  left: calc(100vw / var(--viewport) * 40);
}
.newba_person .flex__right .swiper-button-next {
  right: calc(100vw / var(--viewport) * 40);
}

.progress__container {
  font-size: .32rem;
  color: #fff;
  margin-top: calc(100vw / var(--viewport) * 80);
  text-align: center; 
}
.progress__container img {
  margin-top: calc(100vw / var(--viewport) * 40);
}


#plan {
  margin: calc(100vw / var(--viewport) * 160) auto calc(100vw / var(--viewport) * 100);
}
#plan h2 {
  font-size: calc(100vw / var(--viewport) * 32); 
  color: #fff;
  text-align: center;
}
#plan h2 img {
  display: block;
  width: calc(100vw / var(--viewport) * 271); 
  margin: 0 auto calc(100vw / var(--viewport) * 40);  
  color: #fff;
  text-align: center;
}
#plan .font-oswald {
  font-family: var(--font-family-oswald);
}
#plan .inner {
  width: calc(100vw / var(--viewport) * 670);
  margin: 0 auto;
}
#plan .inner .box {
  background: #fff;
  padding: calc(100vw / var(--viewport) * 64) calc(100vw / var(--viewport) * 40) calc(100vw / var(--viewport) * 80);
  border-top: calc(100vw / var(--viewport) * 16) solid #20396F;
  margin-top: calc(100vw / var(--viewport) * 56);
}
#plan .inner .box.box01 {
  margin-top: 0;
}
#plan .inner .box .midashi {
  font-size: calc(100vw / var(--viewport) * 56);
  font-weight: bold;
  text-align: center;
  line-height: 1;
  margin-bottom: calc(100vw / var(--viewport) * 20);
}
#plan .inner .box.box02 .midashi {
  margin-bottom: calc(100vw / var(--viewport) * 40);
}
#plan .inner .box .midashi .sub {
  font-size: calc(100vw / var(--viewport) * 32);
  display: block;
  margin-bottom: calc(100vw / var(--viewport) * 20);
}
#plan .inner .box .midashi .small {
  font-size: calc(100vw / var(--viewport) * 32);
}
#plan .inner .box .course {
  font-weight: bold;
}
#plan .inner .box .title {
  font-size: calc(100vw / var(--viewport) * 24);
  line-height: calc(100vw / var(--viewport) * 56);
  text-align: center;
  background: #F6D287;
  margin-top: calc(100vw / var(--viewport) * 40);
  margin-bottom: calc(100vw / var(--viewport) * 20);
  position: relative;
}
#plan .inner .box .title .count {
  font-size: calc(100vw / var(--viewport) * 32);
  vertical-align: baseline;
}
#plan .inner .box .title .special {
  font-size: calc(100vw / var(--viewport) * 20);
  text-align: center;
  background: #fff;
  width: calc(100vw / var(--viewport) * 170);
  height: calc(100vw / var(--viewport) * 36);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: calc(100vw / var(--viewport) * 10);
}
#plan .inner .box .course .flex {
  white-space: nowrap;
  flex-wrap: nowrap;
  align-items: center;
}
#plan .inner .box .priceBox {
  margin-right: calc(100vw / var(--viewport) * 40);
}
#plan .inner .box .priceBox .total {
  font-size: calc(100vw / var(--viewport) * 24);
  letter-spacing: 0.2em;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 0 calc(100vw / var(--viewport) * 10) 0;
}
_::-webkit-full-page-media, _:future, :root #plan .inner .box .priceBox .total {
  margin-right: calc(100vw / var(--viewport) * -5);
}
#plan .inner .box .priceBox .price {
  color: #DB002A;
  font-size: calc(100vw / var(--viewport) * 98);
  line-height: 1;
  letter-spacing: -0.03em;
}
_::-webkit-full-page-media, _:future, :root #plan .inner .box .priceBox .price {
  letter-spacing: -0.05em;
}
#plan .inner .box .priceBox .yen {
  font-size: calc(100vw / var(--viewport) * 32);
}
_::-webkit-full-page-media, _:future, :root #plan .inner .box .priceBox .yen {
  margin-left: calc(100vw / var(--viewport) * -5);
}
#plan .inner .box .monthBox {
  font-size: calc(100vw / var(--viewport) * 24);
  display: flex;
  width: 33%;
  flex-wrap: wrap;
}
#plan .inner .box .monthBox .month {
  font-size: calc(100vw / var(--viewport) * 24);
  width: 100%;
}
#plan .inner .box .monthBox .price {
  font-size: calc(100vw / var(--viewport) * 56);
  line-height: 1;
}
#plan .inner .box .monthBox .price .yen {
  font-size: calc(100vw / var(--viewport) * 24);
}
#plan select{
  font-size: calc(100vw / var(--viewport) * 24);
  font-weight: bold;
  margin-top: calc(100vw / var(--viewport) * 20);
  border: calc(100vw / var(--viewport) * 2) solid #000;
  border-radius: calc(100vw / var(--viewport) * 8);
  text-align: center;
}
#plan .caption{
  font-weight: bold;
  margin-top: 1em;
  text-align: center;
}
#plan .caption span{
  font-size: .18rem;
}

.cmt__h2 .imgBox {
  position: relative;
}
.cmt__h2 .imgBox svg {
  width: calc(100vw / var(--viewport) * 724);
  position: absolute;
  top: calc(100vw / var(--viewport) * 180);
  right: calc(100vw / var(--viewport) * -11);
}
.cmt__container {
  font-size: calc(100vw / var(--viewport) * 28); 
  margin: calc(100vw / var(--viewport) * 80) calc(100vw / var(--viewport) * 30) calc(100vw / var(--viewport) * 80);
  color: #fff;
}
.cmt__container h3, .cmt__container h4{
  margin: calc(100vw / var(--viewport) * 40) auto 0;
}
.cmt__container h3:first-of-type{
  margin-top: 0;
}

@media screen and (max-width:767px) {
  #mv .photo {
    filter: drop-shadow(0 8.67vw 4vw #0090f7);
  }
  #mv.yoko .title {
    width: 51.2vw;
    position: absolute;
    top: 64.8vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    opacity: 1;
  }
  #mv.yoko .photo.photo01 {
    width: 48vw;
    top: 22vw;
    left: -13vw;
  }
  #mv.yoko .photo.photo02 {
    width: 59vw;
    top: -24.8vw;
    left: 11vw;
  }
  #mv.yoko .photo.photo03 {
    width: 96vw;
    top: -10.5vw;
    right: -45.6vw;
  }
  #mv.yoko .photo.photo04 {
    width: 96vw;
    top: 105vw;
    left: -28vw;
  }
  #mv.yoko .photo.photo05 {
    width: 60.7vw;
    top: 100.4vw;
    right: -23.4vw;
  }
  #mv.tate .title {
    width: 23.4vh;
    position: absolute;
    top: 30vh;
    left: 11.2vh;
    opacity: 1;
  }
  #mv.tate .photo.photo01 {
    width: 22vh;
    top: 10vh;
    left: -6vh;
  }
  #mv.tate .photo.photo02 {
    width: 27vh;
    top: -11.5vh;
    left: 5.2vh;
  }
  #mv.tate .photo.photo03 {
    width: 44vh;
    top: -5vh;
    left: 23vh;
  }
  #mv.tate .photo.photo04 {
    width: 48vh;
    top: 48vh;
    left: -12.6vh;
  }
  #mv.tate .photo.photo05 {
    width: 28vh;
    top: 46vh;
    left: 28.4vh;
  }
}

@media screen and (min-width: 768px) {
  :root {
    --viewport: 1456;
  }
  .subMenu .inner {
      max-width: 1224px;
  }
  #breadcrumbs{
      padding: 20px 0;
  }
  #mv {
    /*background: url("../images/index/kv_pc.jpg");
    background-size: cover;*/
  }
  #mv .photo {
    filter: drop-shadow(0 60px 30px #0090f7);
  }
  #mv.yoko .title {
    width: calc(100vw / var(--viewport) * 272);
    top: 19vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    opacity: 1;
  }
  #mv.yoko .photo.photo01 {
    width: calc(100vw / var(--viewport) * 286);
    top: 11vw;
    left: -5vw;
  }
  #mv.yoko .photo.photo02 {
    width: calc(100vw / var(--viewport) * 329);
    top: 0;
    left: 18vw;
  }
  #mv.yoko .photo.photo03 {
    width: calc(100vw / var(--viewport) * 576);
    top: -5.5vw;
    left: 56.2vw;
  }
  #mv.yoko .photo.photo04 {
    width: calc(100vw / var(--viewport) * 575);
    top: 26.5vw;
    left: 8vw;
  }
  #mv.yoko .photo.photo05 {
    width: calc(100vw / var(--viewport) * 345);
    top: 33.5vw;
    left: 71.2vw;
  }
  #mv.tate .title {
    width: calc(100vh / var(--viewport) * 406);
    top: 29vh;
    left: 61vh;
    opacity: 1;
  }
  #mv.tate .photo.photo01 {
    width: calc(100vh / var(--viewport) * 430);
    top: 17vh;
    left: -7.6vh;
  }
  #mv.tate .photo.photo02 {
    width: calc(100vh / var(--viewport) * 500);
    top: 0vh;
    left: 27.5vh;
  }
  #mv.tate .photo.photo03 {
    width: calc(100vh / var(--viewport) * 870);
    top: -8vh;
    left: 85.4vh;
  }
  #mv.tate .photo.photo04 {
    width: calc(100vh / var(--viewport) * 874);
    top: 40vh;
    left: 12vh;
  }
  #mv.tate .photo.photo05 {
    width: calc(100vh / var(--viewport) * 521);
    top: 50.8vh;
    left: 108.2vh;
  }

  .inner {
    margin: 0 auto;
  }

  /**case__container**/
  .flex__case__container {
      width: 750px;
    margin: 48px auto 0;
  }
  .flex__case__container .flex__left, .flex__case__container .flex__right {
    width: 375px;
  }
  .case__container {
    margin: 60px auto 0;
    padding: 60px 0;
      -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
  }
  .parallax_02 {
    margin-top: 100vw;
  }
  .case__title {
    font-size: 28px;
  }
  .case__icon {
    margin: 0;
  }
  .case__icon img {
    width: 200px;
  }
  .case__name {
    font-size: 32px;
    margin: 30px auto 0;  
  }
  .case__name span {
    font-size: 16px;
  }
  .newba_index .btn a {
    width: 225px;
    font-size: 14px;
    margin: 30px auto 0; 
    padding: 15px 0; 
    border-radius: 40px; 
  }
  .newba_index .btn a:after {
    right: 24px;
  }
  .case__table {
    width: 100%;
    margin: 0;
  }
  .case__table tr {
    font-size: 16px;
    padding: 16px 0;
    border-top: 1px solid #fff;
  }
  .case__table tr:last-child {
    border-bottom: 1px solid #fff;
  }
  .case__table th {
    width: 20%;
  }
  .case__table td {
    width: 80%;
  }
  .case__img {
    margin: 40px auto 0; 
  }
    
  .sec02 {
    padding: 60px;
  }

    
  /**人物ページ**/
  .newba_person .btn {
    margin: 40px; 
  }

  /**mv**/
  .mv__bg {
    width: 100%;
    /*max-height: calc(100vw / 2560 * 1440);*/
    transition: all 0.5s 0s ease-out;
  }
  .arai .mv__bg {
    background: url("../images/arai/kv_before_pc.jpg"), url("../images/arai/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .endo .mv__bg {
    background: url("../images/endo/kv_before_pc.jpg"), url("../images/endo/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .nakayama .mv__bg {
    background: url("../images/nakayama/kv_before_pc.jpg"), url("../images/nakayama/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .satou2 .mv__bg {
    background: url("../images/satou2/kv_before_pc.jpg"), url("../images/satou2/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .satou .mv__bg {
    background: url("../images/satou/kv_before_pc.jpg"), url("../images/satou/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .ito .mv__bg {
    background: url("../images/ito/kv_before_pc.jpg"), url("../images/ito/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .iwaya .mv__bg {
    background: url("../images/iwaya/kv_before_pc.jpg"), url("../images/iwaya/kv_after_pc.jpg"), #a7c1d0;
    background-repeat: no-repeat, no-repeat;
    background-size: 50% auto;
  }
  .mv__bg h1 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 300px;
    padding: calc(100vw / 2560 * 272) 0 0;
  }
  .mv__bg h1 img {
    width: 250px;
  }
  @media screen and (max-width:1296px) {
    .mv__bg {
      background-position: top left -650px, top right -650px !important;
    }
    .mv__bg h1 {
      padding-top: 137px;
    }
  }
  .newba_person .flex__h1__container {
    font-size: 20px;
    width: 300px;
    margin: 40px auto 0;
  }
  .newba_person .flex__h1__container .flex__left {
    width: 200px;
      margin: 0 auto;
  }
  .newba_person .flex__h1__container .flex__left .name {
    font-size: 30px;
  }
  .newba_person .flex__h1__container .flex__right {
      width: 100px;
      margin: 0 auto;
  }
  .newba_person .flex__h1__container .flex__right img {
      width: 100px;
  }
  .scrolldown {
    font-size: 12px;
      margin: 28px auto 0;
  }
  .scrolldown__img {
      margin: 10px auto 0;
      height: 60px;
  }
  .mv__bg h1 .scrolldown__img img{
    width: 8px;
    height: 60px;
    animation: pathmove_pc 1s ease-in-out infinite;
  }


  .arai .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/arai/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .endo .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/endo/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .nakayama .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/nakayama/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .satou2 .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/satou2/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .satou .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/satou/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .ito .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/ito/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .iwaya .h2__container {
      width: 100%;
      height: auto;
      background: url("../images/iwaya/bg_intro_pc.jpg") no-repeat;
      background-size: cover;
  }
  .h2__container h2, .endo .h2__container h2, .nakayama .h2__container h2 {
    font-size: 48px;
    padding: 108px 0;
  }
  .h2__container h2 .h2__case {
    font-size: 24px;
    margin: 0 auto 20px;
  }
  .h2__container h2 .h2__name {
    font-size: 16px;
    margin: 20px auto 0;
  }

  .newba_person .flex__case__container {
      width: 620px;
    margin: 0 auto;
    padding: 60px 0 0 0;
  }
  .newba_person .flex__case__container .flex__left, .newba_person .flex__case__container .flex__right {
      width: 100%;
  }
  .newba_person .case__img {
    width: 146px;
    position: absolute;
    top: -288px; 
    right: 0; 
  }
  .newba_person .case__table {
    width: 82%;
  }
  .newba_person .case__table tr {
    padding: 5px 0;
  }
  .newba_person .case__table tr:first-child {
    padding: 0 0 5px 0;
  }
  .newba_person .case__table tr:last-child {
    border-bottom: 1px solid #fff;
  }
  .newba_person .case__table th {
    font-size: 18px;
    padding: 4px 0;
    border-radius: 5px;
  }
  .newba_person .case__table td {
    font-size: 20px;
    margin-left: 12px;
  }
  .newba_person .case__table tr:last-of-type td {
    font-size: 36px;
  }

  .section__ba__container h2 {
    margin: 160px auto 0;
  }
  .section__ba__container h2 img {
    width: 763px;
  }
  .section__ba__container .img__ba {
    margin: 56px auto 0;
    text-align: center;
  }

  /**tab__container**/
  .tab__area {
    display: flex;
    align-items: flex-end;
    width: 530px;
    margin: 70px auto 0;
    padding: 0;
  }
  .tab {
    font-size: 12px;
    width: 120px; 
    height: 60px; 
    margin-right: 4px;
    padding: 12px 0;
    cursor: pointer;
  }
  .tab:hover {
    opacity: .8;
  }
  .tab.active {
    width: 160px; 
    height: 70px; 
    padding: 15px 0;
    opacity: 1;
  }
  .tab.active:hover {
    opacity: 1;
  }
  .tab__title {
    font-size: 18px;
  }
  .tab.active .tab__title {
    font-size: 24px;
  }
  .panel__area {
    padding: 40px 0;
  }
  .newba_person .flex__tab__container {
      width: 900px;
    margin: 0 auto;
  }
  .newba_person .flex__right {
    margin: 0;
    padding: 0;
  }
    
  /**swiper-ba**/
  .newba_person .flex__tab__container .flex__left {
    width: 450px;
    padding: 0;
  }
  .newba_person .flex__tab__container .flex__right {
    width: 450px;
    margin: 0;
    padding: 0;
  }
  .newba_person .flex__left .count, .newba_person .swiper-ba .swiper-slide .count {
    font-size: 16px;
    padding: 10px 20px; 
  }
  .newba_person .flex__left .count{
      left: 0;
  }
  .newba_person .flex__right .swiper-button-prev, .newba_person .flex__right .swiper-button-next {
    width: 20px; 
    height: 40px; 
  }
  .newba_person .flex__right .swiper-button-prev {
    left: 10px;
  }
  .newba_person .flex__right .swiper-button-next {
    right: 10px;
  }

  .progress__container {
    font-size: 20px;
    margin-top: 60px; 
  }
  .progress__container img {
    margin-top: 20px;
  }


  #plan {
    margin: 80px auto;
  }
  #plan h2 {
    font-size: 20px; 
  }
  #plan h2 img {
    width: 250px;
    margin: 0 auto 40px;
  }
  #plan .inner {
    width: 800px;
  }
  #plan .inner .box {
    padding: 40px 70px;
    border-top: 6px solid #20396F;
    margin-top: 40px;
  }
  #plan .inner .box .midashi {
    font-size: 28px;
    margin-bottom: 30px;
  }
  #plan .inner .box .pc_flex {
    text-align: center;
  }
  #plan .inner .box .midashi .sub {
    font-size: 16px;
    margin-bottom: 20px;
  }
  #plan .inner .box .midashi .small {
    font-size: 16px;
  }
  #plan .inner .box .pc_flex img {
    width: 295px;
  }
  #plan .inner .box .flex__course {
    display: flex;
    justify-content: space-between;
    margin: 45px auto 0;
    width: 640px;
  }
  #plan .inner .box .course {
    width: 295px;
    text-align: left;
  }
  #plan .inner .box .course .flex {
    flex-wrap: wrap;
  }
  #plan .inner .box .title {
    font-size: 12px;
    line-height: 24px;
    margin-top: 20px;
    margin-bottom: 8px;
  }
  #plan .inner .box .title:nth-child(1) {
    margin-top: 0;
  }
  #plan .inner .box .title .count {
    font-size: 20px;
  }
  #plan .inner .box .priceBox {
    width: 100%;
    margin-right: 0;
    text-align: center;
  }
  #plan .inner .box .priceBox .total {
    font-size: 16px;
    margin: 0 0 10px 0;
  }
  #plan .inner .box .priceBox .price {
    font-size: 80px;
    font-weight: 500;
  }
  #plan .inner .box .priceBox .yen {
    font-size: 20px;
  }
  #plan .inner .box .monthBox {
    width: 100%;
    align-items: flex-end;
    justify-content: center;
    margin-top: 12px;
  }
  #plan .inner .box .monthBox .month {
    font-size: 16px;
    width: auto;
  }
  #plan .inner .box .monthBox .price {
    font-size: 40px;
  }
  #plan .inner .box .monthBox .price .yen {
    font-size: 20px;
  }
  #plan .inner .box .title .special {
    font-size: 10px;
    width: 85px;
    height: 18px;
    right: 5px;
  }
  #plan .inner .box .modalButton, #plan .inner .box .ttl_aco {
    font-size: 14px;
    height: 40px;
    padding-right: 32px;
    margin-top: 40px;
  }
  #plan .inner .box .modalButton:after, #plan .inner .box .ttl_aco:after {
    font-size: 12px;
    right: 256px;
  }
  #plan .inner .box.box02 .midashi {
    margin-bottom: 30px;
  }
  #plan .inner .box.box03 .midashi {
    margin-bottom: 15px;
  }
  #plan .inner .box.box03 .midashi .small {
    font-size: 20px;
  } 
  #plan select{
    width: 100px;
    height: 21px;
    font-size: 12px;
    border: 1px solid #000;
    border-radius: 4px;
    margin: 0 0 0 8px;
  }
  #plan .caption {
    margin-top: 40px;
  }
  #plan .caption span{
    font-size: 12px;
  }

  .cmt__h2 .imgBox svg {
    width: 39vw;
    min-width: 503px;
    top: 58%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    padding-left: 3vw;
    box-sizing: content-box;
  }
  .cmt__container {
    font-size: 20px; 
    margin: 60px auto 80px;
  }
  .cmt__container h3, .cmt__container h4{
    margin: 20px auto 0;
  }
}

.zoomin.is-animated {
  animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes zoomIn {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes pathmove_sp{
  0%{
    top: calc(100vw / var(--viewport) * -121);
  }
  100%{
    top: calc(100vw / var(--viewport) * 121);
  }
}

@keyframes pathmove_pc{
  0%{
    top: -60px;
  }
  100%{
    top: 60px;
  }
}

[data-animate="fadeInUp"] {
  opacity: 0;
}