@charset "UTF-8";
html {font-size: 62.5%;}
h1, h2, h3, h4, h5, h6, p, a, li, ol, span, small, th, td, dd, dt, b, input{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
	color: #515151;
	line-height: 1.4em;
	letter-spacing: 0.05em;
}
img, picture{ height: auto; pointer-events: none;}
.showSP{display: none;}
.footer{ position: relative;}
.txtC{ text-align: center;}
a{ text-decoration: none; transition: opacity .3s ease-in-out;}
a:hover{ opacity: 0.8;}

body{ background-color: #000; }
body > .op-anm > p{
  opacity: 0;
  animation: op_anm 0.8s 0s ease-in-out reverse forwards;
}
body > .op-anm > p.sub{ margin-top: 12px; }
body > .op-anm > p.sub{ animation-delay: .3s;}
body  > .op-anm{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  width: 100%;
  height: 100vh;
  background-color: #000;
  overflow: hidden;
  position: fixed;
  top: 0;
  z-index: 90;
}
@keyframes op_anm{
  0%{ opacity: 1;}
  100%{ opacity: 0;}
}
.grecaptcha-badge { visibility: hidden; }
.g_recaptcha_txt{
  text-align: center;
  font-size: 1.2rem!important;
  margin-top: 3rem;
}
.g_recaptcha_txt > a{ text-decoration: underline; color:rgb(26, 115, 232);}
.mg01{ margin-top: 24px!important; }
ul.sns{
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
}
.sns > li{ margin: 0 6px; padding: 0;}
.sns > li > a{ width: 38px; height: 38px;}

.btns{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 40px;
}
.btns .btn{ margin: 0 8px;}
.btn{
  width: 290px;
  height: 67px;
  border: solid 1px #fff;
  overflow: hidden;
  position: relative;
  margin: 0 auto;
}
.btn a{
  transition:  all .3s ease-in-out;
  position: relative;
  z-index: 1;
}
.btn a:hover{ opacity: 1;}
.btn::after{
  content: '';
  background-color: #2e3139;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transform: scale(0);
  transform-origin: center;
  transition: all .3s cubic-bezier(.23,1,.58,1);
}
.btn > a{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  position: relative;
  z-index: 1;
}
.btn:hover::after{ transform: scale(1); opacity: 1;}

.btn.c01{ background-color: #77bec4;}
.btn.c02{ background-color: #ff738a;}
.btn.c03,
.btn.c04{ background-color: #fff; border: solid 1px #2e3139;}
.btn.c03 a,
.btn.c04  a{
  color: #2e3139;
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.2em;  
}
.btn.c03 a:hover,
.btn.c04 a:hover{ color: #fff;}

.btn.c04 > a.icon-arrow::before{
  background: url(../img/icon-arrow03.png) no-repeat center;
  background-size: 100%;
}
.btn.c05 > a{
  background-color: transparent;
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  border-color: #fff;  
}
.btn.c05 > a.icon-arrow::before{
  background: url(../img/icon-arrow04.png) no-repeat center;
  background-size: 100%;
}
.about .telBox{
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 1px #fff;
  padding: 8px 10px;
  margin-bottom: 48px;
}
.about .telBox > p{
  color: #fff;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0;
}
.about .telBox > a{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 4.8rem;
  font-weight: 800;
  letter-spacing: 0;
  margin-left: 0.2em;
  margin-right: 0.8em;
}
.about .studio{ margin-bottom: 80px;}
.about .studio:last-child{ margin-bottom: 0;}
.about .studio > .inbox{ padding-top: 0;}
.about .studio .titleBox{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.about .studio .titleBox > .box{
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  margin-bottom: 24px;
}
.about .studio .titleBox > .box > h3{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 4.4rem;
  font-weight: 800;
  line-height: 1em;
}
.about .studio .titleBox > .box > h3 > small{
  display: flex;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: 0;
  margin-bottom: 8px;
}
.about .studio .titleBox > .box > .address{
  background: url(../img/icon-zip02.png) no-repeat left center;
  background-size: 22px 38px;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin-left: 20px;
  padding-left: 24px;
}
.about .studio .titleBox > .btn{ width: 310px; margin: 0;}
.about .studio .titleBox > .btn > a{ justify-content: space-between; padding: 0 20px;}


/*-- header --*/
header.fixMenu .in_header,
.low_page header.fixMenu .in_header{
  padding-top: 10px;
  padding-bottom: 10px;
  box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
}
.top header.fixMenu{
  background-color: rgba(0, 0, 0, 0.8);
}
header.fixMenu .h_logo{ width: 200px; height: auto;}
header .h_logo img{ width: 100%; height: auto;}
header{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}
header .in_header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  transition: all .3s ease-in-out;
  padding: 20px 40px 20px 40px;
}
header .h_logo{
  width: 230px;
  height: auto;
  transition: all .3s ease-in-out;
}
header .nav_wrapBox{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header .menuicon{ margin-left: 20px; cursor: pointer;}
header nav.g_nav > ul.innter_nav{
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0;
  margin-right: 48px;
  position: relative;
}
header nav.g_nav > ul.innter_nav > li{
  padding: 16px 6px;
  margin: 0 6px;
}
header nav.g_nav > ul.innter_nav > li > a{
  display: block;
  text-align: center;
  overflow: hidden;
  height: 2em;
  opacity: 1;
}
header nav.g_nav > ul.innter_nav > li > a > span{
  color: #fff;
  display: block;
  transition: all .3s ease-in-out;
  text-align: center;
}
header nav.g_nav > ul.innter_nav > li > a > span:first-child{
  font-family: "Manrope", serif;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
header nav.g_nav > ul.innter_nav > li > a > span:last-child{
  display: block;
  font-size: 1.2rem;
  margin-top: 8px;
}
header nav.g_nav > ul.innter_nav > li > a:hover > span:first-child{ transform: translateY(-1.4em);}
header nav.g_nav > ul.innter_nav > li > a:hover > span:last-child{ transform: translateY(-2.6em);}


header .hover_nav{
  background: #fff;
  width: 100%;
  min-width: 720px;
  min-height: 275px;
  padding: 38px 46px;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 80;
  display: none;
}
header .hover_nav ul{
  list-style-type: none;
  padding-left: 0;
}
header .l-main{
  border-bottom: solid 1px #2e3139;
  padding-bottom: 18px;
  margin-bottom: 18px;
}
header .l-main > a{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
header .l-main > a::after{
  content: '';
  background: url(../img/icon_arrow.png) no-repeat center;
  background-size: contain;
  display: block;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
header .l-main .img{
  width: 100px;
  height: 73px;
  margin-right:  28px;
  overflow: hidden;
}
header .l-main .txt{
  font-family: "Manrope", serif;
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.8em;
  transition: all .3s ease-in-out;
}
header .l-main .txt > span{
  display: block;
  font-size: 1.4rem;
  transition: all .3s ease-in-out;
}
header .l-main:hover .txt,
header .l-main:hover .txt > span{ color: #77bec4;}
header .hover_nav_links{
  display: flex;
  justify-content: flex-start; 
  flex-flow: wrap;
}
header .hover_nav_links > li{
  width: 31%;
  border-bottom: solid 0.5px #2e3139;
  margin: 0 1%;
}
header .hover_nav_links > li > a{
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0;
  padding: 15px;
  transition: all .3s ease-in-out;
}
header .hover_nav_links > li > a:hover{ color: #77bec4;}
.show_menu_area{
  width: 100%;
  height: 100vh;
  overflow: scroll;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 90;
  transform: translateX(100%);
  transform-origin: right;
  transition: all .3s ease-in-out;
}
.show_menu_area::-webkit-scrollbar{ display: none;}
.show_menu_area.show{ transform: translateX(0);}
.show_menu_area.show .left_menu{ transform: translateX(0);}
.left_menu{  
  display: flex;
  justify-content: center;
  width: 100%;
  height: fit-content;
  transition: transform .3s ease-in-out;
}
.left_menu > .inbox{  
  width: 50%;
  min-height: 100vh;
  position: relative;
}
.left_menu_logo{ width: 230px;}
.left_menu_logo img{ width: 100%; height: auto;}
.left_menu > .r-box{
  background: #77bec4;
  padding: 20px 25px 25px 6%;
}
.left_menu > .r-box > .inbox-innter{
  display: flex;
  justify-content: space-between;
  flex-flow: wrap;
}
.left_menu > .r-box > .inbox-innter > .innter_box01{ width: 46%; margin-top: 56px;}
.left_menu > .r-box > .inbox-innter > .innter_box01 > p{
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0;
}
.left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt{
  font-family: "Manrope", sans-serif;
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  padding-right: 25px;
  border-bottom: solid 1px #fff;
  position: relative;
  margin-top: 0.3em;
  padding-bottom: 0.1em;
}
.left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt a{ font-family: inherit;}
.left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt::after{
  content: '';
  background: url(../img/icon-arrow01.png
  ) no-repeat center;
  background-size: 100%;
  display: block;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.left_menu > .r-box > .inbox-innter > .innter_box01 > ul.link-txt{ list-style: none; padding: 0;}
.left_menu > .r-box > .inbox-innter > .innter_box01 > ul.link-txt > li{ padding: 0.6em 1em;}
.left_menu > .r-box > .inbox-innter > .innter_box01 > ul.link-txt a{
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0;
}
.left_menu > .l-box > .studio-box{
  height: 50%;
  padding-left: 25px;
  padding-bottom: 25px;
  position: relative;
  overflow: hidden;
}
.left_menu > .l-box > .studio-box::after{
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: transform .3s ease-in-out;
}
.left_menu > .l-box > .studio-box > a{
  display: flex;
  justify-content: flex-start;
  align-items: end;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}
.left_menu .studio_01::after{
  background-image: url(../img/studio_img01.png);
  background-color: rgba(0, 0, 0, 0.5);
  background-blend-mode: darken;
  background-size: cover;
  background-repeat: no-repeat;
}
.left_menu .studio_02::after{
  background-image: url(../img/studio_img02.png);
  background-color: rgba(0, 0, 0, 0.5);
  background-blend-mode: darken;
  background-size: cover;
  background-repeat: no-repeat;
}
.left_menu .studio-box{ transition: all .3s ease-in-out; background-position: center;}
.left_menu .studio-box:hover::after{ transform: scale(1.1);}
.left_menu .sns{ margin-top: 56px;}
.left_menu .btn{ isolation: isolate;}
.left_menu .btn a{ transition: all .3s ease-in-out;}
.left_menu .btn.c01 a::before{ transition: all .3s ease-in-out;}
/*
.left_menu .btn.c02::after{ background-color: #fff;}
.left_menu .btn.c02:hover a{ color: #ff738a;}
.left_menu .btn.c01:hover a{ color: #77bec4;}
.left_menu .btn.c01::after{ background-color: #fff;}
.left_menu .btn.c01:hover a::before{
  background: url(../img/icon-contact_01.png) no-repeat center;
  background-size: 100%
}
*/

.address_txt,
.address_txt > span{
  color: #FFF;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0;
}
.address_txt > b{
  display: block;
  color: #FFF;
  font-family: "Manrope", serif;
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.6em;
}

.edit_content .wp-block-gallery.columns-4 > figure.wp-block-image{ max-width: 280px;}

/*-- footer --*/
footer{
  background-color: #2e3139;
  padding-bottom: 48px;
}
footer .logo{ width: 197px;}
footer ul.sns{ margin-top: 16px;}
footer ul.sns li{ margin-left: 16px; margin-right: 0;}
footer ul.sns li:first-child{ margin-left: 0;}
.footer_nav{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 950px;
  margin: 108px auto 0;
  padding: 0 20px;
}
.footer_nav .in_f-box{
  max-width: calc( 100% - 197px );
  width: 73%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: wrap;
  padding-left: 2rem;
}
.footer_nav .in_f-box > .f-nav{
  list-style-type: none;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 0;
  margin-top: 24px;
}
.footer_nav .in_f-box > .f-nav a{
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
}
footer .studio{ margin-bottom: 8px;}
footer .studio.mgr01{ margin-right: 2rem;}
footer .studio a{
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0;
  border-bottom: solid 1px #fff;
  margin-bottom: 0.4em;
}
footer .studio p{
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0;
}
.copyright{
  max-width: 1300px;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  text-align: center;
  border-top: solid 1px #999999;
  padding-top: 20px;  
  margin: 80px auto 0;
}
.cta{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 630px;
  background-image: url(../img/cta_bg.png);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 0 20px;
  animation: parallax linear both;
  animation-timeline: view();
}
@keyframes parallax {
  from { background-position: center 0; }
  to { background-position: center -200px; }
}
.cta-inbox{
  background: rgba(255, 255, 255, 0.85);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: wrap;
  width: 90%;
  max-width: 1085px;
  min-height: 368px;
  padding: 20px;
}
.cta-inbox .title{ text-align: center; width: 100%; margin-bottom: 24px;}
.cta-inbox .title > span{
  background: linear-gradient(180deg, transparent 70%, #77bec4 70%);
  width: 100%;
  color: #2e3139;
  font-weight: bold;
  font-size: 5.8rem;
  letter-spacing: 0.075em;
  padding-left: 20px;
}
.cta-inbox .fs01{
  width: 100%;
  color: #2e3139;
  font-size: 1.8rem;
  letter-spacing: 0;
  text-align: center;
}
.cta-inbox .flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 48px;
}
.cta-inbox .flex > div{ margin: 0 0px 0 15px;}
.cta-inbox .flex > div:first-child{ border-left: none; margin: 0; padding: 0;}
.cta-inbox .tel a{
  display: block;
  color: #231815;
  font-family: "Manrope", serif;
  font-size: 3.6rem;
  font-weight: 800;
  letter-spacing: 0;
}
.cta-inbox .tel p small{
  color: #231815;
  font-size: 1.3rem;
  padding-left: 3.6rem;
}

/*-- top --*/
.flex{ display: flex;}
.articleList{
  list-style: none;
  padding: 0;
  margin: 0;
}
.articleList > li{
  border-bottom: solid 1px #f1f1f1;
  padding: 20px 25px;
}
.articleList > li > a{
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.articleList > li .img{
  width: 72px;
  height: 72px;
  overflow: hidden;
  margin-right: 4%;
}
.articleList > li .txt{
  width: calc( 100% - 72px - 4%);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: wrap;
}
.articleList .title{
  width: 100%;
  color: #231815;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  margin-top: 8px;
}
.articleList .date{
  color: #788288;
  font-family: "Manrope", serif;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  margin-right: 1em;
}
.articleList .cat{
  display: inline-block;
  min-width: 98px;
  background-color: #999;
  color: #fff;
  font-size: 1.6rem;
  padding: 0 4px 2px;
  text-align: center;
}
.articleList .cat.c_blog{ background-color: #ff738a;}
.articleList .cat.c_new{ background-color: #459bd6;}
.title01{
  /*
  color: #2e3139;
  font-family: "Manrope", serif;
  font-size: 6.4rem;
  font-weight: 800;
  letter-spacing: 0;
  */
}
.title01.anm_txt > span{
  color: #2e3139;
  font-family: "Manrope", serif;
  font-size: 6.4rem;
  font-weight: 800;
  letter-spacing: 0;
  opacity: 0;
}
.title01 > small{
  display: block;
  color: #77bec4;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0;
  opacity: 0;
}
.culture .title01 > small{ color: #e2bfbd;}
.title01.t-c01,
.title01.t-c01 > span{ color: #fff;}
.title01.t-c01 > small{ color: #fff;}
.title02{
  text-align: center;
  margin-bottom: 50px;
}
.title02 > span{
  color: #fff;
  font-family: "Manrope", serif;
  font-size: 4.4rem;  
  font-weight: 800;
  letter-spacing: 0.05em;
  opacity: 0;
}
.title01.c01 > span{ color: #fff;}
.title01.c01 > small{ color: #fff;}

.title_under_txt{ font-size: 1.6rem; letter-spacing: 0; line-height: 1.8em;}
.title_under_txt.utx-c01{ color: #fff;}

#top_info{ background-color: #f1f1f1;}
#top_info > div{
  max-width: 1340px;
  padding: 60px 20px 160px;
  margin: 0 auto;
}
#top_info .flex{ justify-content: space-between;}
#top_info .flex .r_box{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: column;
}
#top_info .flex .l_box{ width: 60%;}
#top_info .articleList{ background-color: #fff;}
#top_gallary{ background-color: #f1f1f1; padding: 104px 20px 60px;}
#top_gallary > .inbox{ max-width: 1300px; margin: 0 auto;}
#top_gallary .flex{ justify-content: space-between; align-items: center;}
.insta_box{ margin-top: 30px;}

#top_instructor{ background-color: #2e3139; padding: 104px 0;}
#top_instructor .inbox{ max-width: 1300px; margin: 0 auto;}
#top_instructor .title01{ margin-bottom: 42px;}
#top_instructor .btn > a{ margin: 0 auto;}
#top_instructor .btn:hover::after{ background-color: #77bec4;}
#top_instructor .btn:hover a{ color: #2e3139;}
#top_instructor .btn:hover .icon-arrow::before{
  background: url(../img/icon-arrow05.png) no-repeat center;
  background-size: 100%;
}
#top_instructor .instructorList{ margin: 50px 0;}
.instructorList .photo{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  width: 100%;
  aspect-ratio: 275 / 368;
  overflow: hidden;
}
.instructorList .photo > img{
  max-width: none;
  width: auto;
  height: 100%;
}
.instructorList a{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.instructorList .cat{
  font-family: "Manrope", serif;
  font-size: 1.2rem;
  font-weight: 800;
  writing-mode: vertical-rl;
}
.c_culture_school{ color: #e0b9b6;}
.c_dance_school{ color: #77bec4;}
.instructorList .name{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  text-align: center;
  margin-top: 8px;
  padding-right: 1em;
}
.instructorList .slick-next,
.instructorList .slick-prev{
  width: 50px;
  height: 29px;
}
.instructorList .slick-next{ right: 105px; top: -35px;}
.instructorList .slick-prev{ left: auto; right: 160px; top: -35px;}
.instructorList .slick-arrow::before{
  content: '';
  background: url( ../img/icon-slide.png) no-repeat center;
  background-size: contain;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1;
}
.instructorList .slick-next::before{ transform: rotateZ(180deg);}

.slider_school .genre_box{
  position: relative;
  width: fit-content;
  margin: 0 8px 40px 0;
}
.slider_school .genre_box .genre_name{  
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  position: absolute;
  bottom: 10px;
  left: 14px;
}
.slider_school .genre_box .num{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1em;
  opacity: 0.6;
  position: absolute;
  bottom: 3px;
  right: 8px;
}
.slider_school img{ width: 100%; height: auto;}
.slider_school{ margin-top: -30px;}
.slider_school .slide_inner{
  overflow: hidden;
  padding-top: 40px;
}
.slider_school .slick-list{
  position: relative;
  width: calc(100% + (120vw - 100%) / 2);
}
.slider_school .slick-prev,
.slider_school .slick-next{
  width: 50px;
  height: 29px;
  top: 3px;
  right: 50px;
  left: auto;
  transform: none;
}
.slider_school .slick-prev{ right: 104px; }
.slider_school .slick-prev:before,
.slider_school .slick-next:before{
  content: '';
  background: url(../img/icon-slider.png) no-repeat center;
  background-size: contain;
  display: block;
  height: 100%;
}
.slider_school .slick-prev:before{ transform: rotateZ(180deg);}

#top_culter{ background-color: #e2bfbd;}
#top_dance{ background-color: #77bec4;}
#top_culter .title02,
#top_dance .title02{ margin-bottom: 0px;}
#top_culter .btn, #top_dance .btn{ margin-top: 80px;}
#top_culter .btn > a, #top_dance .btn > a{ margin: 0 auto; }
.top .program-box{ position: relative;}
.top_dan_img, .top_cul_img{  position: absolute; bottom: -11px;}
.top_dan_img{ left: 20px; max-width: 332px; width: 22vw;}
.top .slider_photo{ margin-top: 48px;}
.top .slider_photo .slick-slide{
  padding: 0 4px;
  aspect-ratio: 4 / 3;
}
.top .slider_photo .slick-slide > img{ width: 100%; height: auto;}
#top_about{
  background-color: #f1f1f1;
  padding: 80px 0 130px;
}
#top_about .sec_content{
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}
#top_about .sec_content > .rbox,
#top_about .sec_content > .lbox{ width: 50%;}
#top_about .sec_content > .rbox{ background: linear-gradient( 90deg, transparent 90% , #77bec4 90%);}
#top_about .sec_content > .lbox{
  background-color: #77bec4;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  min-height: 900px;
  padding: 160px 20px 280px;
}
#top_about .sec_content > .rbox .title01{ margin-bottom: 32px; padding-left: 6.6vw;}
#top_about .main_txt{
  color: #fff;
  font-size: 3.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.6em;
  text-align: center;
  margin-bottom: 1em;
}
#top_about .fs01{
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.8em;
  text-align: center;
  margin-bottom: 2em;
}
#top_about .sub_txt{
  color: #fff;
  font-size: 2.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.8em;
  text-align: center;
  margin-bottom: 2em;
}
#top_about .sub_txt > b{
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  text-align: center;
}

#pickup{
  background-color: #2e3139;
  padding:  56px 20px;
}
#pickup .inbox{
  max-width: 1340px;
  margin: 0 auto;
}
#pickup .title01.anm_txt > span{
  color: #fff;
  font-size: 4rem;
  line-height: 1.2em;
}
#pickup .flex{
  justify-content: space-between;
  align-items: center;
}
#pickup .flex > h2{
  margin-right: 3%;
}
#pickup .flex > ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc( 100% - 3% - 25%);
}
#pickup .flex > ul > li{ width: 32%; max-height: 180px; height: 12vw; overflow: hidden;}
#pickup .flex > ul > li img{ height: auto;}

/*-- fv --*/
.top .fv{ position: relative;}
.fv_txtBox{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  height: 100vh;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3;
  margin: auto 0;
}
.fv_txtBox > p.sub{ margin-top: 12px;}
.wrap_slideBox{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
}
.wrap_slideBox::before{
  content: '';
  background: linear-gradient( 180deg, rgba(0, 0, 0, 0.6), transparent );
  display: block;
  width: 100%;
  height: 13%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.wrap_slideBox > .in_slide{ width: 50%; position: relative; height: inherit;}
.wrap_slideBox > .in_slide .slick-slider{ height: inherit;}
.wrap_slideBox > .in_slide .slick-track,
.wrap_slideBox > .in_slide .slick-list{ height: inherit;}
.wrap_slideBox > .in_slide .dec{ height: inherit;}
.wrap_slideBox > .in_slide.slide_dance .slick-slide{
  height: 100vh;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(1){ background: url(../img/top_slider/top_slide_l_01.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(2){ background: url(../img/top_slider/top_slide_l_02.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(3){ background: url(../img/top_slider/top_slide_l_03.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(4){ background: url(../img/top_slider/top_slide_l_04.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(5){ background: url(../img/top_slider/top_slide_l_05.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(1){ background: url(../img/top_slider/top_slide_r_01.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(2){ background: url(../img/top_slider/top_slide_r_02.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(3){ background: url(../img/top_slider/top_slide_r_03.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(4){ background: url(../img/top_slider/top_slide_r_04.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(5){ background: url(../img/top_slider/top_slide_r_05.jpg) no-repeat center center / cover;}
.wrap_slideBox > .in_slide picture{ height: inherit;}
.wrap_slideBox > .in_slide img{ width: 100%;}
.fv_btn{
  background-color: #6f6e6f;
  width: 332px;
  height: 58px;
  position: absolute;
  z-index: 3;
  bottom: 55px;
}
.fv_btn a{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  padding: 8px;
}
.fv_btn a::after{
  content: '';
  background: url(../img/icon-arrow04.png) no-repeat center;
  background-size: contain;
  display: block;
  width: 40px;
  height: 8px;
  margin-left: 1.6em;
}
.slide_dance .fv_btn{ right: 0; border-radius: 50px 0 0 50px; background-color: #77bec4;}
.slide_culture .fv_btn{ left: 0; border-radius: 0 50px 50px 0; background-color: #dfb6b4;}
.fv_btn a::after{ transition: all .3s ease-in-out;}
.fv_btn a:hover::after{ transform: translateX(20px);}

.top .slide_content .dec::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #000;
	animation: photohide .8s forwards;
	z-index: 1;
}
.top .slide_content .dec::before {
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #000;
	z-index: 1;
}
.top .slide_content .slick-slide .dec::before {
	width: 0;
	transition: .8s;
	transition-delay: 1.6s;
}
.top .slide_content .slick-current .dec::after {
	animation: photoshow .8s forwards;
	animation-delay: .8s;
}
.top .slide_content.slick-initialized .slick-slide {
	transition-delay: .8s !important;
	transition-duration: 0s !important;
}
@keyframes photoshow {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(101%);
	}
}
@keyframes photohide {
	0% {
		transform: translateX(-101%);
	}
	100% {
		transform: translateX(0);
	}
}

/*--- icons ---*/
.icon-zip::before{
  content: '';
  background: url(../img/icon-zip.png) no-repeat center;
  background-size: 100%;
  background-position: center 2px;
  display: inline-block;
  width: 9px;
  height: 16px;
  margin-right: 6px;
}
.icon-contact::before{
  content: '';
  background: url(../img/icon-contact.png) no-repeat center;
  background-size: 100%;
  display: inline-block;
  width: 29px;
  height: 30px;
  margin-right: 1em;
}
.icon-arrow::before{
  content: '';
  background: url(../img/icon-arrow02.png) no-repeat center;
  background-size: 100%;  
  display: inline-block;
  width: 40px;
  height: 8px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 14px;
  margin:  auto;
}
.menuicon img{ cursor: pointer;}
.menuicon img{ transition: opacity .3s ease;}
.menuicon img:hover{ opacity: 0.6;}
.show_menu_area .menuicon{
  position: fixed;
  top: 35px;
  right: 40px;
  z-index: 99;
}
.icon-tel::before{
  content: '';
  background: url(../img/icon-tel.png) no-repeat center;
  background-size: 100%;
  background-position: center 0;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 6px;
  vertical-align: -4px;
}
.school-box{ padding: 120px 0;}
.school-box .btn{ margin-top: 20px;}
.school-box .title01{ margin-bottom: 20px;}
.school-box .catchcopy > span{
  display: inline-block;
  /*font-size: 3.6rem;*/
  font-size: 2vw;
  letter-spacing: 0;
  margin-top: 15px;
  color: #fff;
  padding: 0 8px;
}
.school-box .catchcopy.bg01 > span{ background-color: #2c9dac;}
.school-box .catchcopy.bg02 > span{ background-color: #cea1a3;}
.school-box .title_under_txt{ margin-top: 38px;}
.school-box .flex{
  justify-content: space-between;
  align-items: flex-start;
  width: calc(93% + 20px);
  margin-left: auto;
  padding-left: 20px;
}
.school-box .flex .r_box{
  display: flex;
  justify-content: space-between;
  flex-flow: column;
  width: 45%;
}
.school-box .flex .l_box{ width: 50%; position: relative;}
.school-box .flex .l_box > img.school_photo{ width: 100%; height: auto;}
.school-box .kurukuru{
  position: absolute;
  bottom: -57px;
  left: -65px;
  z-index: 1;
  animation: kurukuru 20s linear infinite;
}
@keyframes kurukuru {
  0%{ transform: rotateZ(0); }
  100%{ transform: rotateZ(360deg); }
}
.program-box{ margin-top: 198px;}

/*-- animation ---*/
.loop{
  align-items: center;
  display: flex;
  height: auto;  
  overflow:hidden;
  width: 100%;
  white-space:nowrap;
}
.loop ul {
  list-style: none;
  animation: flowing 100s linear infinite;
  font-size: 20px;
  transform:translateX(100%);
  margin: 0;
  padding: 0;
}
.loop ul li{
  display: inline-block;
  padding-right: 10px;
}
.loop ul img{ width: auto; max-width: none; height: 180px;}
@keyframes flowing {
  0% { transform:translateX(0); }
  100% { transform:translateX(-100%); }
}

.content{ padding-top: 98px;}
.low .fv{ position: relative;}
.normal .fv{ background-color: #77bec4;}
.normal.culture .fv{ background-color: #e2bfbd;}
.normal .fv .titleBox{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 220px;
  padding: 53px 0 35px;
}
.normal .fv .main-title{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 5.3rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-align: center;
}
.normal .fv .main-title > span{
  display: block;
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 1.8em;
  text-align: center;
}
.normal .fv .fv_img{ position: relative;}
.normal .fv .fv_img img{ width: 100%; height: auto;}
.normal .fv .fv_img > .icon_cv{
  width: 164px;
  height: 164px;
  position: absolute;
  right: 20px;
  bottom: 10px;
}
.follow_icons{
  background-color: #fff;
  position: fixed;
  bottom: 20px;
  left: 0;
  z-index: 20;
  border: solid 1px #fff;
}

.low_page header{ background-color: #fff;}
.low_page header nav.g_nav > ul.innter_nav > li > a > span{ color: #2e3139;}

.low .pankuzu{
  background: linear-gradient( 90deg, #2e3139 40%, transparent 40%);
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.low .pankuzu .width{
  max-width: 1150px;
  margin: 0 auto;
}
.low .pankuzu ul{
  width: fit-content;
  min-width: 410px;
  background-color: #2e3139;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  list-style: none;
  padding: 8px 0;
  margin: 0;
}
.low .pankuzu ul > li{ margin-right: 2em;}
.low .pankuzu ul > li::after{
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 4px 0px 4px 8px;
  margin-left: 2em;
}
.low .pankuzu ul > li > a,
.low .pankuzu ul > li > span{
  color: #fff;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0;
}
.low .pankuzu ul > li:last-child::after{ display: none;}
.low .pankuzu ul > li:last-child > span{ position: relative;}
.low .pankuzu ul > li:last-child > span::after{
  content: '';
  display: block;
  background-color: #77bec4;
  width: 100%;
  height: 3px;
  position: absolute;
  bottom: -9px;
  left: 0;
}
.low.dance .pankuzu ul > li:last-child > span::after{ background-color: #77bec4;}
.low.culture .pankuzu ul > li:last-child > span::after{ background-color: #e2bfbd;}
.links{
  background-color: #2e3139;
  padding: 64px 20px;
}
.links div.width{
  max-width: 1150px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.links div.btn{
  width: 50%;
  margin: 0 20px;
  border: solid 1px #fff;
}
.links .btn > a{ width: 100%;}

/*-- instructor --*/
.culture_school .fv{ background-color: #e2bfbd;}
.dance_school .fv{ background-color: #77bec4;}
.instructor_main{
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1190px;
  margin: 0 auto;
  padding: 60px 20px 70px;
}
.instructor_main .img{
  max-width: 456px;
  width: 39%;
}
.instructor_main .img > img{ height: auto;}
.instructor_main .txt{
  max-width: 626px;
  width: 54%;
}
.instructor_main .genre{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.8em;
}
.instructor_main .t_box{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 48px;
}
.instructor_main .t_01{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-weight: 800;
  font-size: 5rem;
  letter-spacing: 0.05em;
}
.instructor_main .t_box > a{ margin-left: 40px;}
.instructor_main .t_02{
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1em;
  border-left: solid 3px #fff;
  padding-left: 0.5em;
  margin-bottom: 1em;
}
.instructor_main .profile_txt{
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8em;
  letter-spacing: 0;
  word-break: break-all;
}
.instructor_main .btn{ margin-top: 20%;}
.instructor .edit_content{
  background-color: #f1f1f1;
  padding: 60px 20px;
}
.instructor .edit_content > .inbox{
  max-width: 1150px;
  margin: 0 auto;
}
.instructor .edit_content h2{
  color: #2e3139;
  font-size: 2.1rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1em;
  border-left: solid 3px #fff;
  padding-left: 0.3em;
  margin-bottom: 20px;
}
.instructor.dance_school .edit_content h2{ border-left-color: #77bec4;}
.instructor.culture_school .edit_content h2{ border-left-color: #e2bfbd;}
.instructor .edit_content p{
  color: #2e3139;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8em;
  letter-spacing: 0;
  word-break: break-all;
}
.instructor .edit_content .lesson_lists{ justify-content: space-between;}
.instructor .edit_content .lesson_lists > figure{
  margin-top: 2%!important;
  max-width: 560px;
  width: 49%!important;
  flex-grow: unset;
}
.instructor .edit_content .lesson_lists > figure:first-child,
.instructor .edit_content .lesson_lists > figure:nth-child(2){ margin-top: 0!important;}
.instructor .edit_content .movie_box > .wp-block-group__inner-container{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.instructor .edit_content .movie_box > .wp-block-group__inner-container figure{ width: 48%;}
.instructor .edit_content .movie_box > .wp-block-group__inner-container iframe{
  aspect-ratio: 16 / 9;
  width: 100%;
  height: 100%;
}
.instructor .edit_content .wp-element-caption{
  text-align: center;
  font-size: 1.4rem;
  font-weight: 400px;
}
.instructor_main .btn > a{ letter-spacing: 0;}

ul.instructor_list{
  list-style: none;
  display: flex;
  justify-content: flex-start;
  flex-flow: wrap;
  padding: 0;
}
ul.instructor_list > li{
  width: 19%;
  margin: 0 0.5% 56px;
}
ul.instructor_list > li > a .img > img{ transition: transform .3s ease-in-out;}
ul.instructor_list > li > a:hover .img > img{ transform: scale(1.1);}
ul.instructor_list .img{
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 242 / 324;
  overflow: hidden;
  margin-bottom: 2px;
}
ul.instructor_list .img > img{
  max-width: none;
  height: 100%;
}
ul.instructor_list .txt > .title{  
  font-family: "Manrope", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  padding-left: 0.4em;
}

/*-- tab --*/
.tab{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
  padding: 0;
}
.tab > li.active {
  color: #77bec4;
  background-color: #2e3139;
}
.culture .tab > li.active{ color: #e2bfbd;}
.tab > li#tab_culture.active{ color: #e2bfbd;}
.tab > li {
  background: #d9d9da;
  width: calc(100% / 3 - 0.5%);
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: #6f6e6f;
  font-family: "Manrope", sans-serif;
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-align: center;
  border: solid 1px #d9d9da;
  border-bottom: none;
  padding: 13px 0;
  transition: all .3s ease-in-out;
}
.tab-content.active {
  opacity: 1;
  display: block;
}
.tab-content {
  opacity: 0;
  display: none;
  animation: show01 .6s ease-in-out forwards;
}

/*-- news & blog --*/
.bg_w{ background-color: #fff;}
.bg_02{ background: #f1f1f1;}
.bg_03{ background-color: #77bec4;}
.bg_04{ background-color: #e0b9b6;}
.flexBox{ display: flex; justify-content: space-between; align-items: flex-start;}
.low .wrap > .width{
  max-width: 1150px;
  margin: 0 auto;
  padding: 90px 20px;
}
.low .inbox{
  max-width: 1150px;
  margin: 0 auto;
}
.info .leftBox{
  width: 30%;
  background-color: #f1f1f1;
  padding: 15px; 
}
.info .rightBox{ width: 65%;}

.info .localnav p.link-t{
  background-color: #77bec4;
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 3px 15px;
}
.info .localnav ul{
  list-style: none;
  padding: 0;
  margin: 0 0 64px;
}
.info .localnav ul > li{
  border-bottom: solid 1px #5e5d5c;
  padding: 20px 30px;
}
.info .localnav ul > li a{
  display: block;
  color: #231815;
  font-size: 1.8rem;
  font-weight: 400;
}
.info .localnav ul > li a::before{
  content: '▶';
  color: #77bec4;
  font-size: 1.4rem;
  padding-right: 0.4em;
}
ul.kiji-list{
  list-style: none;
  display: flex;
  justify-content: flex-start;
  flex-flow: wrap;
  padding: 0;
  margin: 0;
}
ul.kiji-list > li{
  width: 30%;
  margin-bottom: 40px;
  padding: 0 1%;
}
ul.kiji-list .txt{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-flow: wrap;
  margin-top: 20px;
}
ul.kiji-list .img{
  background-color: #efefef;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 202px;
  height: 202px;
  overflow: hidden;
}
ul.kiji-list .img > img{ height: 100%; width: auto;}
ul.kiji-list .txt > .date{
  color: #788288;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1em;
}
ul.kiji-list .txt > .cat{
  display: inline-block;
  background-color: #bbb;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  padding: 0 8px;
  margin-left: 10px;
}
ul.kiji-list .txt > .cat.c_news{}
ul.kiji-list .txt > .cat.c_blog{}
ul.kiji-list .txt > .cat.c_new{ background-color: #4584ff;}
ul.kiji-list .txt > .title{
  width: 100%;
  color: #231815;
  font-size: 1.6rem;
  letter-spacing: 0;
}
.pagination-list{
  width: 100%;
  justify-content: center;
  align-items: center;
}
.pagination-list > span,
.pagination-list > a{
  font-size: 1.4rem;
  padding: 0 8px;
}
.pagination-list > span{ font-weight: bold; font-size: 1.8rem;}

/*-- school dance --*/
ul.genre_list{
  list-style: none;
  display: flex;
  justify-content: center;
  flex-flow: wrap;
  padding: 0;
  margin: 0;
}
ul.genre_list > li{
  width: calc(100% / 5);
  aspect-ratio: 1 / 1;
  position: relative;
  overflow: hidden;
}
.culture ul.genre_list > li{
  width: calc( 100% / 3);
  aspect-ratio: 500 / 300;
}
ul.genre_list > li > .img{height: 100%; position: relative;}
ul.genre_list > li > .img > img{ height: 100%; width: 100%;}
ul.genre_list > li > .img::after{
  content: '';
  background: linear-gradient( 180deg, transparent, #000);
  display: block;
  width: 100%;
  height: 40%;
  position: absolute;
  bottom: 0;
  left: 0;
}
ul.genre_list > li > .txt{
  background: linear-gradient( 180deg, transparent, #000);
  width: 100%;
  height: 100%;
  position: absolute;
  top: calc( 100% - 25px - 84px);
  left: 0;
  z-index: 1;
  padding: 25px 4%;
  transition: all .3s ease-in-out;
}
ul.genre_list > li > .txt .flexBox{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
ul.genre_list > li > .txt .num{
  order: 2;
  width: 1.2em;
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 6.6rem;
  opacity: 0.6;
  letter-spacing: 0;
  line-height: 1em;
}
ul.genre_list > li > .txt .genre_name{
  order: 1;
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  font-weight: 800;
}
ul.genre_list > li > .txt .intro{
  width: 100%;  
  margin-top: 10px;
}
ul.genre_list > li > .txt .intro p{
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.8em;
}
ul.genre_list > li:hover .txt{ top: 0;}
.school .mg01{ margin-bottom: 48px;}
.school .inbox{
  max-width: 1340px;
  padding: 90px 20px 50px;
}
.school .fs_intro{
  color: #2e3139;
  font-size: 1.6rem;
  line-height: 1.8em;
}
ul.icon_intro{
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: wrap;
  padding: 0;
  margin-bottom: 8px;
}
ul.icon_intro > li{
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 3.4rem;
  margin-right: 24px;
}
ul.icon_intro img{
  display: inline-block;
  vertical-align: middle;
  font-weight: 400;
  margin-right: 8px;
}
.school .title03{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 2em;
  text-align: center;
  margin-bottom: 28px;
}
.school.dance .title03{ background-color: #77bec4;}
.school.culture .title03{ background-color: #e2bfbd;}
.school .title03 > .num{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  margin-right: 0.5em;
}
.classBox .fs01 p{
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.8em;
}
.class_wrap{
  display: flex;
  justify-content: space-between;
  flex-flow: wrap;
  margin-top: 48px;
}
.class_wrap > .class_inbox{
  width: 48%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: column;
  margin-bottom: 64px;
}
.school.dance .class_inbox .title{ border-bottom-color: #77bec4;}
.school.culture .class_inbox .title{ border-bottom-color: #e2bfbd;}
.class_inbox .title{
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 1px #000;
  padding-bottom: 4px;
  margin-bottom: 16px;
}
.class_inbox .title > .flexBox{
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.class_inbox .title .g{
  font-family: "Manrope", sans-serif;
  font-size: 2.6rem;
  font-weight: 800;
  line-height: 2em;
  letter-spacing: 0;
}
.class_inbox .title .icons{
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 0 0 0 12px;
  padding: 0;
}
.class_inbox .title .icons > li{ margin: 0 4px;}
.class_inbox .title .studio{
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 2em;
}
.class_inbox .title .studio > img{
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
}
.school .class_inbox .detail{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.school .class_inbox .detail > .img{
  width: 30%;
  aspect-ratio: 190 / 260;
  overflow: hidden;
}
.school .class_inbox .detail > .img > img{ height: auto; max-width: none;}
.school .class_inbox .detail > .txt{ width: 66%;}
.school .class_inbox .detail .name{
  font-family: "Manrope", sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  letter-spacing: 0;
}
.school .class_inbox .detail .name > span{
  font-family: "Manrope", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0;
  padding-right: 8px;
}
.school.dance .class_inbox .detail .name > span{ color: #77bec4;}
.school.culture .class_inbox .detail .name > span{ color: #e0b9b6;}
.school .class_inbox .detail .date{
  font-family: "Manrope", sans-serif;
  font-size: 2.3rem;
  font-weight: 800;
  letter-spacing: 0;
  margin-bottom: 16px;
}
.school .class_inbox .detail .date > span{
  font-size: 2.4rem;
  font-weight: 400;
  padding-right: 8px;
}
.school .class_inbox .detail .edit p{
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8em;
}
.school .class_inbox .movielink{
  width: 100%;
  height: 53px;
  margin-top: 28px;
}
.school .class_inbox .movielink > a{
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  color: #2e3139;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 2.2rem;
  letter-spacing: 0.2em;
  border: solid 1px #2e3139;
}
.school .class_inbox .movielink > a::after{
  content: '';
  background: url(../img/icon_movie.png) no-repeat center;
  background-size: contain;
  display: block;
  width: 16px;
  height: 16px;
  margin-left: 8px;
}
.culture.school .class_inbox .movielink > a::after{
  background: url(../img/icon_movie02.png) no-repeat center;
  background-size: contain;
}
.attension{
  color: #e61e51;
  font-size: 1.4rem;
  line-height: 1.8em;
  letter-spacing: 0;
  margin-top: 1em;
}
.class.flexBox{ justify-content: flex-start;}
.class_select{
  width: 400px;
  margin-left: 50px;
  margin-top: 20px;
  position: relative;
}
.active_select{
  background-color: #2e3139;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 55px;
  color: #fff;
  font-size: 1.6rem;
  padding: 8px 10px;
}
.active_select > span{ color: #77bec4; margin-left: 1em;}
.culture .active_select > span{ color: #e2bfbd;}
.genre_select{
  display: none;
  width: 100%;
  background-color: rgba(52, 65, 76, 0.8);
  padding: 0 10px 10px;
  position: absolute;
}
.genre_select > div{
  background-color: rgba(72, 87, 97, 0.8);
}
.genre_select > div > a{
  display: block;
  width: 100%;
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 1.8rem;
  font-weight: 800;
  transition: color .3s ease-in-out;
  padding: 12px 12px 6px;
}
.dance .genre_select > div > a:hover{ color: #77bec4; opacity: 1;}
.culture .genre_select > div > a:hover{ color: #e2bfbd; opacity: 1;}
.lesson_sch .tab > li{ width: calc(( 100% - 1%) / 2 );}
.setumei{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: wrap;
  margin-top: 88px;
}
.setumei > img{ width: 49.5%; margin-bottom: 1%; height: auto;}
.featureBox{ margin-top: 48px;;}
.featureBox ul.flexBox{
  flex-flow: wrap;
  align-items: normal;
  list-style: none;
  padding: 0;
  margin: 0;
}
.featureBox .flexBox > li{
  position: relative;
  display: flex;
  justify-content: center;
  width: 49%;
  background-color: #fff;
  padding: 25px;
  margin-bottom: 2%;
}
.featureBox .flexBox > li .t_box{ width: 90px;}
.featureBox .flexBox > li .min-title{
  color: #2e3139;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0;
  position: absolute;
  top: 34px;
  left: 137px;
}
.featureBox .flexBox > li .num{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;  
  font-family: "Manrope", sans-serif;
  font-size: 5.3rem;
  font-weight: 800;
  line-height: 1.2em;
  padding-right: 16px;
}
.featureBox .flexBox > li .num > small{
  display: block;
  font-size: 1.7rem;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.dance .featureBox .flexBox > li .num,
.dance .featureBox .flexBox > li .num > small{ color: #77bec4;}
.culture .featureBox .flexBox > li .num,
.culture .featureBox .flexBox > li .num > small{ color: #e0b9b6;}
.featureBox .flexBox > li .txt{
  width: calc( 100% - 90px);
  border-left: solid 1px #2e3139;
  padding-left: 25px;
  padding-top: 48px;
}
.featureBox .flexBox > li .txt > p{
  color: #2e3139;
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.8em;
}
.school .twoColumn.flexBox > section{ width: 49%; margin-top: 56px;}
table.priceBox{
  width: 100%;
  margin-top: 48px;
  border-collapse: collapse;
}
table.priceBox > thead{
  background-color: #2e3139;
}
table.priceBox > thead th{
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0;
  text-align: left;
  padding: 8px 25px;
  border: solid 1px #2e3139;
}
table.priceBox > thead th > span{
  color: #fff;
  font-size: 1.4rem;
  float: right;
  margin-top: 0.4em;
}
table.priceBox > tbody td.fs01{ font-size: 1.8rem; font-weight: normal;}
table.priceBox > tbody td.fs01 > small{ font-size: 1.4rem; font-weight: normal;}
table.priceBox > tbody{ background-color: #fff;}
table.priceBox > tbody th{
  width: 40%;
  background-color: #e0f0f1;
  font-size: 1.8rem;
  border: solid 1px #2e3139;
  padding: 16px 10px;
}
.culture .priceBox > tbody th{ background-color: #f8efef;}
table.priceBox > tbody th > small{ font-size: 1.4rem;}
table.priceBox > tbody td{
  width: 60%;
  text-align: center;
  font-family: "Manrope", sans-serif;
  font-weight: 800;
  font-size: 3.8rem;
  border: solid 1px #2e3139;
  padding: 16px 10px;
}
table.priceBox > tbody td.fc01,
table.priceBox > tbody td.fc01 > span.en{ color: #e61d39;}
table.priceBox > tbody td > span.en{
  font-size: 3.2rem;
  font-weight: 800;
}
table.priceBox > tbody td > span.nen{
  font-size: 1.8rem;
  vertical-align: middle;
  letter-spacing: 0.3em;
  padding-left: 0.3em;
}
table.priceBox.box-t01 > tbody th{ width: 40%; min-width: 190px;}
table.priceBox.box-t01 > tbody td{ width: 60%;}
table.priceBox.box-t01 > tbody td > .t_flex{ display: flex; justify-content: center;}
table.priceBox.box-t01 > tbody td > .t_flex small{ text-align: left;}
table.priceBox.box-t01 > tbody .txt{
  font-size: 1.4rem;
  font-weight: 400;
  text-align: center;
}
ul.kome{
  list-style: none;
  padding: 0 0 0 1em;
  margin: 16px 0 0;
}
ul.kome > li{
  font-size: 1.6rem;
  line-height: 2em;
  letter-spacing: 0;
}
ul.kome.c01 > li{ color: #fff;}
ul.kome > li::before{  content: '※';}
.faqBox{ margin-top: 48px;}
.faqBox ul{
  list-style: none;
  padding: 0;
  margin: 0;
}
.faqBox ul > li{
  background-color: #fff;
  border: solid 1px #2e3139;
  padding: 14px 15px 0;
  margin-bottom: 10px;
}
.faqBox ul > li .q{
  font-size: 1.6rem;
  line-height: 2em;
  padding: 0 30px 0 1em;
  margin-bottom: 14px;
  position: relative;
}
.faqBox ul > li .q::after{
  content: '';
  background: url(../img/icon-faq.png) no-repeat center;
  background-size: contain;
  display: block;
  width: 19px;
  height: 19px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 5px;
  margin: auto;
  transform: rotateZ(0);
  transition: transform .3s ease-in-out;
}
.culture .faqBox ul > li .q::after{
  background: url(../img/icon-faq02.png) no-repeat center;
  background-size: contain;
}
.faqBox ul > li .a{
  display: none;
  font-size: 1.6rem;
  line-height: 1.8em;
  border-top: solid 1px #2e3139;
  padding: 14px 1em 8px;
}
.faqBox ul > li.active .q::after{ transform: rotateZ(45deg);}
.pagelinks{
  width: 200px;
  background-color: #fff;
  border: solid 1px #2e3139;
  border-radius: 5px;
  position: fixed;
  bottom: 20px;
  right: 10px;
  z-index: 10;
}
.pagelinks > ul{
  list-style: none;
  padding: 16px;
  margin: 0;
}
.pagelinks > ul > li{ border-bottom: solid 1px #77bec4; }
.culture .pagelinks > ul > li{ border-bottom-color: #e2bfbd;}
.pagelinks > ul > li:last-child{ border-bottom: none;}
.pagelinks > ul > li > a{
  display: block;
  font-size: 1.4rem;
  padding: 12px 16px;
  position: relative;
}
.pagelinks > ul > li.current > a{ color: #77bec4;}
.culture .pagelinks > ul > li.current > a{ color: #e2bfbd;}
.pagelinks > ul > li.current > a::before{
  content: '';
  display: block;
  background-color: #77bec4;
  width: 7px;
  height: 2em;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -16px;
  margin: auto 0;
}
.culture .pagelinks > ul > li.current > a::before{ background-color: #e2bfbd;}
.culter_tags_list{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: wrap;
  margin-top: 12px;
}
.culter_tags_list > li{
  background-color: #fff;
  min-width: 88px;
  font-size: 1.4rem;
  text-align: center;
  border: solid 1px #2e3139;
  border-radius: 20px;
  letter-spacing: 0;
  padding: 3px 8px;
  margin: 4px 2px 0;
}
.culter_tag01 li:nth-child(1){ color: #fff; background-color: #e7a5a3;}
.culter_tag02 li:nth-child(2){ color: #fff; background-color: #f2977f;}
.culter_tag03 li:nth-child(3){ color: #fff; background-color: #78bae7;}
.culter_tag04 li:nth-child(4){ color: #fff; background-color: #456cb4;}

/*-- about --*/
.about .inbox{
  max-width: 1340px;
  padding: 90px 20px 0;
}
.about .title01{ margin-bottom: 48px;}
.about .title01 + p.fs01{
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 400;
  line-height: 1.8em;
}
.about_school{
  justify-items: center;
  align-items: normal;
  margin-top: 48px;
}
.about_school > .school_inbox{
  background-color: #fff;
  width: 50%;
}
.school_inbox .t_box{ background-color: #c7c8c8; padding: 25px 10px;}
.school_inbox.dance .t_box{ background-color: #77bec4;}
.school_inbox.culture .t_box{ background-color: #e2bfbd;}
.school_inbox .title03{
  font-family: "Manrope", sans-serif;
  color: #fff;
  font-size: 4.3rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-align: center;
}
.school_inbox .title03 + p{
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0;
  text-align: center;
}
.school_inbox .hoverBox{
  overflow: hidden;
  position: relative;
  min-height: 564px;
}
.school_inbox.dance .hoverBox{
  background: url(../img/school_inbox_dance.jpg) no-repeat center top;
  background-size: cover;
}
.school_inbox.culture .hoverBox{
  background: url(../img/school_inbox_culture.jpg) no-repeat center top;
  background-size: cover;
}
.school_inbox ul.catBox{
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 55px 5%;
  transition: opacity .3s ease-in-out;
}
.school_inbox ul.catBox > li{
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-size: 2.5rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.6em;
}
.school_inbox .hoverBox > .hover_contents{
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-flow: column;
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  height: 100%;
  padding: 55px 5% 12%;
  transition: top .3s ease-in-out;
}
.school_inbox .hoverBox > .hover_contents p{
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.8em;
}
.school_inbox .hoverBox > .hover_contents .btn{ margin-top: 12%;}
.school_inbox .hoverBox:hover .hover_contents{ top: 0;}
.school_inbox .hoverBox:hover ul.catBox{ opacity: 0;}
.about .featureBox .flexBox{ flex-flow: column;}
.about .featureBox .flexBox li{ width: 100%;}
.about .flow_and_company{ padding-bottom: 150px;}
.about .flow_and_company.flexBox > section{ width: 49%;}
.about .featureBox .flexBox > li{ padding-right: 18px;}
.about .flow .featureBox li{ position: relative;}
.about .flow .featureBox li::after{
  content: '';
  display: block;
  width:0;
  height:0;
  border-style:solid;
  border-width: 23px 21px 0 21px;
  border-color: #000 transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1;
  margin:  0 auto;
}
.about .flow .featureBox li:last-child::after{ display: none;}
.link01{
  background-color: #ff738a;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  border: solid 1px #fff;
  padding: 8px 20px;
  float: right;
  margin-top: 16px;
  transition: all .3s ease-in-out;
}
.link01:hover{
  background-color: #fff;
  border-color: #ff738a;
  color: #ff738a;
}
.company_info{
  background-color: #fff;
  padding: 25px;
}
.company_info dl{
  display: flex;
  justify-content: flex-start;
  flex-flow: wrap;
}
.company_info dl > dt,
.company_info dl > dd{
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 400;
  border-bottom: solid 1px #969797;
  padding: 10px;
  margin-bottom: 8px;
}
.company_info dl > dt{ width: 30%; padding-left: 8%;}
.company_info dl > dd{ width: 70%;}
.company_info .message{ margin-top: 15px;}
.company_info .message > .img{ width: 40%; max-width: 240px;}
.company_info .message > .img > img{ height: auto;}
.company_info .message > .txt{
  width: calc( 100% - 40%);
  padding-left: 1.8em;
}
.company_info .message > .txt p{
  font-size: 1.4rem;
  font-weight: 400;
  text-align: justify;
  letter-spacing: 0;
  line-height: 1.8em;
}
.company_info .message > .txt p.name{ text-align: right; margin-top: 2em;}

/*-- about us --*/
.strengethsBox{ margin-bottom: 106px;}
.strengethsBox.reverse{ flex-flow: row-reverse;}
.strengethsBox.reverse > .txt{ padding-left: 0; padding-right: 3%;}
.strengethsBox.flexBox > .img{
  width: 48%;
}
.strengethsBox.flexBox > .txt{
  width: 52%;
  padding-left: 3%;
}
.strengethsBox.flexBox > .txt > p{
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.8em;
}
.strengethsBox.flexBox .title04{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 2.4rem;
}
.strengethsBox.flexBox .title04 > .num{
  color: #77bec4;
  font-family: "Manrope", sans-serif;
  font-size: 8.6rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1em;
}
.strengethsBox.flexBox .title04 > .text{
  color: #2e3139;
  font-size: 2.3rem;
  letter-spacing: 0;
  padding-left: 0.8em;
}
.pointBox{
  background-color: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border: solid 1px #2e3139;
  padding: 10px 15px;
  margin-top: 30px;
}
.pointBox > p{
  width: 90px;
  color: #77bec4;
  font-family: "Manrope", sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0;
}
.pointBox > ul{
  list-style: none;
  margin: 0;
  padding: 0;
  width: calc( 100% - 90px);
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.pointBox > ul > li{
  font-size: 1.4rem;
  letter-spacing: 0;
  margin-right: 20px;
}
.pointBox > ul > li:last-child{ margin-right: 0;}
.pointBox > ul > li::before{
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  border: solid 1px #77bec4;
  border-radius: 10px;
  margin-right: 0.6em;
}
.about .movieBox{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.about .movieBox > div{ width: 48%;}
.about .movieBox iframe{
  width: 100%;
  aspect-ratio: 16 / 9;
}
.about .movieBox p{
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  text-align: center;
  margin-top: 0.8em
}
.about #about02{ padding-bottom: 140px; padding-top: 80px;}
.about #about03 .inbox{
  max-width: 1300px;
  margin: 0 auto;
}
.about .slider{ margin-top: 36px;}
.about .slider .slick-slide{
  padding: 0 4px;
  aspect-ratio: 4 / 3;
}
.about .slider .slick-slide > img{ width: 100%; height: auto;}
.about .mapBox{
  display: flex;
  justify-content: center;
}
.about .mapBox > div{ width: 50%; overflow: hidden; aspect-ratio: 630 / 432;}
/*-- form --*/
.form .wrap{
  padding: 65px 20px 100px;
}
.form .inbox{
  background-color: #fff;
  max-width: 1540px;
  padding: 55px 4% 110px;
}
.form .inbox p{
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.8em;
}
.form .telbox{
  background-color: #77bec4;
  max-width: 680px;
  text-align: center;
  margin: 1.6rem auto 75px;
  padding: 20px;
}
.form .telbox > p{
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 2em;
}
.form .telbox > div > a{
  color: #fff;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  line-height: 1.2em;
}
.form .telbox > div > span{
  color: #fff;
  font-size: 1.5rem;
  letter-spacing: 0;
  vertical-align: super;
  padding-left: 0.5em;
}
.form-content dl{
  display: flex;
  justify-content: flex-start;
  flex-flow: wrap;
}
.form-content dl > dt{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 25%;
  font-size: 1.6rem;
  letter-spacing: 0;
  padding-right: 20px;
  border-bottom: solid 1px #f1f1f1;
  padding-bottom: 20px;
  margin-bottom: 35px;
  padding-top: 4px;
}
.form-content dl > dt span.req{
  display: inline-block;
  background-color: #e61c3f;
  width: 40px;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  border-radius: 5px;
  margin-left: 1rem;
  padding: 6px 3px;
}
.form-content dl > dd{
  width: calc( 100% - 25% );
  font-size: 1.6rem;
  letter-spacing: 0;
  border-bottom: solid 1px #f1f1f1;
  padding-bottom: 20px;
  margin-bottom: 35px;
}
.form-content dl > dd:last-child,
.form-content dl > dt:nth-last-child(2){ border-bottom: none;}
.form-content form{ margin-top: 65px;}
.form-content form input[type="text"],
.form-content form input[type="tel"],
.form-content form input[type="email"],
.form-content form select,
.form-content form textarea{
  background-color: #f1f1f1;
  width: 100%;
  padding: 8px 10px;
  border: none;
}
.form-content form input[type="date"]{
  background-color: #f1f1f1;
  width: 140px;
  padding: 8px 10px;
  border: none;
}
.form-content .btn,
.form-content .wpcf7cp-btns button{
  width: 300px;
  height: 55px;
  border: solid 1px #000;
  margin: 0 auto;
}
.form-content .btn input[type="submit"]{
  background-color: transparent;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  border: none;
  transition: all .3s ease-in-out;
}
.form-content .wpcf7cp-btns button{
  background-color: #fff;
  text-align: center;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
}
.form-content .wpcf7cp-btns button.wpcf7cp-cfm-submit-btn{ background-color: #2e3139; color: #fff;}
.form-content .btn:hover input[type="submit"],
.form-content .wpcf7cp-btns button:hover{ color: #fff; position: relative; z-index: 1;}
.form .btnBox{
  display: flex;
  justify-content: center;
  align-items: center;
}
.form .btnBox > div.btn{ margin: 20px 20px 10px;}
.form .btnBox > div.btn{ width: 310px;}

/*-- form flow --*/
.form .flow{
  display: flex;
  justify-content: center;
  align-items: center;
}
.form .flow > div{
  width: 79px;
  height: 79px;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-flow: column;
  background-color: #fff;
  border: solid 2px #bbbcbc;
  border-radius: 100px;
  color: #bbbcbc;
  font-size: 1.3rem;
  text-align: center;
  margin-right: 80px;
  position: relative;
}
.form .flow > div:last-child{ margin-right: 0;}
.form .flow > div::after{
  content: '';
  background-color: #bbbcbc;
  width: 90px;
  height: 2px;
  position: absolute;
  left: 77px;
}
.form .flow > div:last-child::after{ display: none;}
.form .flow > div > b{
  color: #bbbcbc;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}
.input_contact.form .flow > div:nth-child(1),
.confirm.form .flow > div:nth-child(1),
.confirm.form .flow > div:nth-child(2),
.complete_contact.form .flow > div:nth-child(1),
.complete_contact.form .flow > div:nth-child(2),
.complete_contact.form .flow > div:nth-child(3){
  background-color: #77bec4;
  border: solid 2px #77bec4;
  color: #fff;
}
.input_contact.form .flow > div:nth-child(1) > b,
.confirm.form .flow > div:nth-child(2) > b,
.complete_contact.form .flow > div:nth-child(1) > b,
.complete_contact.form .flow > div:nth-child(2) > b,
.complete_contact.form .flow > div:nth-child(3) > b{ color: #fff;}

.confirm.form .flow > div:nth-child(1)::after,
.complete_contact.form .flow > div:nth-child(1)::after,
.complete_contact.form .flow > div:nth-child(2)::after{ background-color: #77bec4;}

.complete_contact.form .flow{ margin-bottom: 40px;}

.form form .radio_lesson_box > p{
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 1.8em;
  margin-bottom: 0.4em;
}
.form .radio_lesson_box .wpcf7-radio{
  display: block;
  margin-bottom: 20px;
}

/*-- contact form 7 --*/
.form-content table{ width: 100%;}
.form-content table td,
.form-content table th{
  text-align: left;
  padding-bottom: 20px;
  border-bottom: solid 1px #f1f1f1;
  padding-top: 35px;
}
.form-content table tr:last-child > td,
.form-content table tr:last-child > th{ border-bottom: none;}
.form-content table th{ width: 25%; padding-right: 10px;}
.form-content table td{ width: calc( 100% - 25%);}
.form-content .wpcf7cp-btns{ text-align: center;}
div#wpcf7cpcnf{ position: static; padding-top: 30px;}
.wpcf7cp-form-hide{ position: absolute;}
.wpcf7-not-valid-tip{ color: #dc3232!important; font-size: 1.4rem; font-weight: bold;}
.wpcf7-response-output{ font-size: 1.6rem;}
.form-content .wpcf7cp-btns > button{ margin: 0 4px 10px;}
.form-content .wpcf7cp-btns > button:hover{ color: #231815!important; opacity: 0.8;}
.form-content .wpcf7cp-btns > button.wpcf7cp-cfm-submit-btn:hover{ color: #fff!important;}
.wpcf7-list-item{ margin: 0 1em 1em 0;}

.showSP{ display: none;}

.single .titleBox{
  border-bottom: solid 5px #2c9dac;
  padding: 0 0 8px;
  margin-bottom: 16px;
}
.single .titleBox > .flexBox{
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 8px;
}
.single .titleBox .title{
  font-size: 2.6rem;
  font-weight: bold;
}
.single .titleBox .cat{
  background-color: #788288;
  color: #fff;
  font-size: 1.4rem;
  margin-left: 8px;
  padding: 2px 4px;
}
.single .titleBox .date{
  color: #788288;
  font-size: 1.4rem;
  font-weight: bold;
}
.single .post_data{ margin-top: 16px;}
.post_data h2,
.post_data h3,
.post_data h4,
.post_data h5{ font-weight: bold; margin: 32px 0 16px; padding: 0 8px 8px;}
.post_data h2{ font-size: 2rem; border-bottom: solid 2px #77bec4; border-left: solid 6px #77bec4; padding-left: 12px;}
.post_data h3{ font-size: 1.8rem; border-bottom: solid 2px #77bec4;}
.post_data h4{ font-size: 1.6rem; border-bottom: dotted 2px #77bec4;}
.post_data p{ font-size: 1.6rem; margin-bottom: 1em; line-height: 1.8em;}
.post_data ul,
.post_data ol{ font-size: 1.6rem;}

.info.normal .fv,
.contact.normal .fv,
.trayal.normal .fv{ height: 300px;}


@media screen and ( max-width: 1300px) {
  .about .telBox > p{ font-size: 1.6rem;}
  .about .telBox > a{ font-size: 4rem;}
  header .in_header{ padding: 20px 2%}
  header nav.g_nav > ul.innter_nav > li{ margin: 0;}
  header nav.g_nav > ul.innter_nav{ margin-right: 24px;}
  .nav_wrapBox ul.sns{ width: 100px;}
  .nav_wrapBox .g_nav{ width: calc( 100% - 100px - 24px - 50px);}
  header .menuicon{ margin-left: 10px; width: 50px;}
  .featureBox .flexBox > li .txt{ padding-top: 6vw;}
  .btn > a{ font-size: 1.6rem;}
}
@media screen and ( max-width: 1100px) {
  .cta-inbox .tel a{ font-size: 2.8rem;}
  .cta-inbox .flex > div.btn{ width: 220px;}
  .cta-inbox .flex > div.btn a{ font-size: 1.6rem;}
  ul.genre_list > li > .txt .intro p{ font-size: 1.1vw;}
  .btns .btn > a{ font-size: 1.6vw;}
  .featureBox .flexBox > li .txt{ padding-top: 8vw;}
}
@media screen and ( max-width: 901px) {
  .content{ padding-top: 55px;}
  .show_menu_area .menuicon{ top: 8px; right: 20px;}
  ul.genre_list > li > .txt .intro p{ font-size: 1rem;}
  .showSP{ display: block;}
  .cta-inbox .flex > div.btn{ width: 290px; margin-top: 20px; margin-left: 0;}
  .cta-inbox .flex > div.btn a{ font-size: 2rem;}
  .normal .fv .main-title{ font-size: 7vw;}
  .normal .fv .titleBox{ min-height: 120px; padding: 25px 0 36px;}
  .normal .fv .main-title > span{ font-size: 4vw;}
  .normal .fv .fv_img > .icon_cv{ width: 30%; max-width: 164px; height: auto; bottom: 8px; right: 8px;}
  .follow_icons{ bottom: 8px; max-width: 97px; width: 15vw;}
  .follow_icons img{ height: auto;}
  .links{ padding: 20px;}
  .links div.width{ flex-flow: column;}
  .links div.btn{ width: 100%;}
  .links div.btn:first-child{ margin-bottom: 20px;}
  .low .wrap > .width{ padding-top: 36px;}
  .pagelinks{ display: none;}
  .title01.anm_txt > span{ font-size: 7.6vw;}
  .title01 > small{ font-size: 1.2rem;}
  ul.kiji-list > li{ width: 100%;}
  .school .title03{ font-size: 4vw;}
  .school .title03 > .num{ font-size: 1.2rem;}
  .class_inbox .title .g{ font-size: 5vw;}
  .class_wrap > .class_inbox{ width: 100%;}
  .school .class_inbox .detail{ flex-flow: column; align-items: center;}
  .school .class_inbox .detail > .img{
    width: 100%;
    aspect-ratio: unset;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .school .class_inbox .detail > .img > img{
    width: 49%;
    height: auto;
    text-align: center;
    margin-bottom: 24px;
  }
  .school .class_inbox .detail > .img > .txt{
    width: 48%;
  }
  .school .class_inbox .detail > .txt{ width: 100%;}
  .school .tab-content{ width: 100%; overflow: scroll;}
  .school .tab-content > img{ width: auto; max-width: 100%;}
  .setumei{ margin-top: 24px; flex-flow: column;}
  .setumei > img{ width: 100%; margin-bottom: 16px;}
  .setumei > img:last-child{ margin-bottom: 0;}
  .featureBox ul.flexBox{ flex-flow: column;}
  .featureBox .flexBox > li{ width: 100%; flex-flow: column;}
  .featureBox .flexBox > li .num{
    width: fit-content;
    padding-right: 0;
    font-size: 6vw;
    align-items: flex-start;
  }
  .featureBox .flexBox > li .num > small{
    width: 100%;
    text-align: center;
    font-size: 2vw;
  }
  .featureBox .flexBox > li .txt{ width: 100%; padding-left: 0; padding-top: 16px; border-left: none; border-top: solid 1px #2e3139; margin-top: 12px;}
  .twoColumn.flexBox{ flex-flow: column;}
  .school .twoColumn.flexBox > section{ width: 100%;}
  .faqBox{ margin-top: 24px;}
  .faqBox ul > li .q{ padding: 0;}
  .faqBox ul > li .q::after{ right: -8px;}

  .cta{ background-image: url(../img/cta_bg_sp.jpg);}
  
  /*-- about --*/
  .about_school{ flex-flow: column;}
  .about_school > .school_inbox{ width: 100%;}
  .strengethsBox{ margin-bottom: 48px;}
  .strengethsBox.flexBox{ flex-flow: column;}
  .strengethsBox.flexBox > .img{ width: 100%;}
  .strengethsBox.flexBox > .img img{ width: 100%;}
  .strengethsBox.flexBox > .txt{ width: 100%; padding-left: 0; margin-top: 16px;}
  .strengethsBox.flexBox .title04{ margin-bottom: 16px;}
  .strengethsBox.flexBox .title04 > .num{ font-size: 9vw;}
  .strengethsBox.flexBox .title04 > .text{ font-size: 3.4vw;}
  .pointBox{ flex-flow: column; justify-content: center; align-items: flex-start; text-align: center;}
  .pointBox > p{ text-align: left;}
  .pointBox > ul{ width: 100%;}
  .pointBox > ul > li{ margin-top: 8px;}
  .about .movieBox{ flex-flow: column;}
  .about .movieBox > div{ width: 100%; margin-bottom: 16px;}
  .about #about02{ padding-bottom: 48px;}
  .about .inbox{ padding-top: 36px;}
  .about .title01{ margin-bottom: 24px;}
  .about .telBox{ flex-flow: column;}
  .about .studio .titleBox{ flex-flow: column;}
  .about .studio .titleBox > .box{ flex-flow: column; align-items: flex-start;}
  .about .studio .titleBox > .box > .address{ margin-left: 0; font-size: 1.6rem; background-size: 15px auto; margin-top: 16px;}
  .about .mapBox{ flex-flow: column; margin-top: 24px;}
  .about .mapBox > div{ width: 100%;}
  .about .mapBox > div.gmap{ height: 300px;}
  .about .mapBox > div > img{ width: 100%;}
  .about .flow_and_company{ flex-flow: column;}
  .about .flow_and_company.flexBox > section{ width: 100%; margin-top: 24px;}
  .about .flow_and_company.flexBox > section:first-child{ margin-top: 0;}
  .school_inbox ul.catBox > li{ font-size: 1.8rem;}
  .school_inbox ul.catBox{ padding: 25px 5%;}
  .school_inbox .hoverBox{ min-height: 400px;}
  .school_inbox .hoverBox > .hover_contents{ padding: 25px 5%;}
  .link01{ float: none; display: block; width: 300px;}
  .featureBox{ margin-top: 24px;}
  .about .flow_and_company{ padding-bottom: 36px;}
  .company_info dl{ flex-flow: column;}
  .company_info dl > dt{ width: 100%; border: none; padding: 0;}
  .company_info dl > dd{ width: 100%; padding: 0 0 16px;}
  .company_info .message{ flex-flow: column; align-items: center;}
  .company_info .message > .img{ width: 100%; max-width: none; margin-bottom: 1em;}
  .company_info .message > .img img{ margin: 0 auto; display: block; width: 100%;}
  .company_info .message > .txt{ width: 100%; padding-left: 0;}
  .about .gmap > iframe{ margin-top: -200px;}

  /*-- instructor --*/
  .tab{ margin-bottom: 20px;}
  .tab > li{ font-size: 1.8rem;}
  ul.instructor_list > li{ width: 48%; padding-left: 0; margin: 0 1% 6%;}
  ul.instructor_list .txt > .title{ padding-left: 0; font-size: 3vw; text-align: center;}
  .class.flexBox{ flex-flow: column; }
  .active_select{ height: 60px; padding: 8px;}
  .genre_select > div > a{ font-size: 1.6rem;}
  .class_select{ margin: 24px 0 0; width: 100%;}
  .school .mg01{ margin-bottom: 24px; margin-top: 0!important;}
  .instructor_main{ flex-flow: column; padding-top: 36px;}
  .instructor_main .txt{ width: 100%; order: 2; max-width: 100%;}
  .instructor_main .img{ width: 100%; order: 1; margin-bottom: 24px;}
  .instructor_main .t_01{ font-size: 6vw;}
  .instructor_main .t_box{ margin-bottom: 24px;}
  .instructor_main .genre{ font-size: 4vw;}
  .instructor_main .btn{ position: static; width: 100%; margin-top: 10%;}

  /*-- school --*/
  .school .inbox{ padding-top: 36px; padding-bottom: 24px;}  
  ul.genre_list > li,
  .culture ul.genre_list > li{ width: 50%;}
  ul.genre_list > li > .txt .genre_name{ font-size: 4vw;}
  ul.genre_list > li > .txt .num{ font-size: 7vw;}
  ul.genre_list > li > .txt,
  ul.genre_list > li:hover .txt{ top: calc( 100% - 25px - 9vw); }
  ul.genre_list > li > .txt,
  ul.genre_list > li:hover .txt{ top: calc( 100% - 25px - 9vw); }
  ul.genre_list > li.beautypervis > .txt{ top: calc( 100% - 25px - 15vw);}
  .sp_scroll{ overflow: scroll;}
  ul.kome > li{ font-size: 1.4rem;}
  table.priceBox > thead th{ padding: 8px; font-size: 1.4rem;}
  table.priceBox > thead th > span{ font-size: 1rem;}
  table.priceBox.box-t01 > tbody td > .t_flex{ flex-flow: column; align-items: center; }
  table.priceBox.box-t01 > tbody td > .t_flex small{ font-size: 1.4rem; margin-top: 8px;}
  table.priceBox > tbody td{ font-size: 2.8rem;}
  table.priceBox > tbody td > span.en{ font-size: 2.4rem;}
  table.priceBox > tbody td > span.nen{ font-size: 1.6rem;}
  ul.icon_intro{ margin-top: 0; margin-bottom: 24px;}
  ul.icon_intro > li{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 8px;
    line-height: 1.6em;
    font-size: 3vw;
  }
  ul.icon_intro > li:first-child{ margin-top: 0;}
  ul.icon_intro img{ width: 25px;}
  .featureBox .flexBox > li .t_box{
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .featureBox .flexBox > li .min-title{
    position: static;
    padding-left: 2rem;
    font-size: 3.6vw;
  }
  table.priceBox{ margin-top: 36px;}
  table.priceBox > tbody th{ font-size: 1.6rem;}

  /*-- archive --*/
  .archive .wrap > .flexBox{ flex-flow: column;}
  .info .leftBox{ width: 100%; margin-bottom: 24px;}
  .info .rightBox{ width: 100%;}
  .info .localnav ul{ display: none;}
  .localnav{ display: flex; justify-content: space-between; align-items: flex-start;}
  .localnav .sp_class_drop{ width: 49%;}
  .info .localnav p.link-t{ font-size: 2rem;}
  .info .localnav p.link-t::after{ content: '▼'; padding-left: 0.4em;}
  .info .localnav ul{ margin-bottom: 0;}
  .info .localnav ul > li{ padding: 8px 8px;}
  .info .localnav ul > li a{ font-size: 1.4rem;}

  /*-- single --*/
  .single .wrap > .flexBox{ flex-flow: column;}
  .single .titleBox .title{ font-size: 2.2rem;}
  .post_data h2{ font-size: 1.8rem;}
  .post_data h3, .post_data h4{ font-size: 1.6rem;}
  .post_data p,
  .post_data ul,
  .post_data ol{ font-size: 1.4rem;}

  /*-- form --*/
  .low .pankuzu ul{ min-width: 250px; flex-flow: wrap;}
  .form .telbox > div > a{ font-size: 10vw;}
  .form .telbox > div > span{ display: block;}
  .form .flow > div{ width: 55px; height: 55px; margin-right: 50px;}
  .form .flow > div > b{ font-size: 1rem;}
  .form-content dl{ flex-flow: column;}
  .form-content dl > dt{ width: 100%; margin-bottom: 0; border: none; justify-content: flex-start; align-items: center; padding-bottom: 14px;}
  .form-content dl > dd{ width: 100%; margin-bottom: 10px; padding-bottom: 15px;}
  .form-content dl > dt > span.req{ margin-left: 1em; font-size: 1rem;}
  .form .flow > div::after{ left: 50px; width: 55px;}
  .form-content table tr,
  .form-content table th,
  .form-content table td{ width: 100%; display: block; padding: 0;}
  .form-content table th{ border: none;}
  .form-content table td{ padding: 8px 0 16px;}
  .form-content .btn, .form-content .wpcf7cp-btns button{ width: 90%;}
  .form .btnBox{ flex-flow: column;}
  .form .btnBox > div.btn{ width: 90%;}
  .form .btnBox > div.btn a{ font-size: 1.4rem;}
  .form .btnBox > div.btn a.icon-arrow::before{ right: 10px;}
  .btns .btn > a{ font-size: 1.8rem;}

  /*-- header --*/
  header .in_header{ padding: 8px 10px;}
  header nav.g_nav{ display: none;}
  header .nav_wrapBox > ul.sns{ display: none;}
  header .h_logo,
  header.fixMenu .h_logo{ width: 180px;}
  .left_menu > .inbox{ width: 100%; padding-bottom: 100px;}
  .left_menu > .inbox.l-box{ display: none;}
  .left_menu > .r-box > .inbox-innter{ flex-flow: column;}
  .left_menu > .r-box > .inbox-innter > .innter_box01{ width: 100%; margin-top: 30px; position: relative;}
  .btns{ flex-flow: column;}
  .btns > div.btn:nth-child(2){ margin-top: 15px;}
  .left_menu_logo{ width: 180px; margin-left: -7px; margin-top: -10px;}
  header .menuicon{ width: 38px;}
  .left_menu .sns{
    width: 120px;
    position: absolute;
    bottom: -200%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .sns > li{ margin: 0 10px;}
  .sns > li > a{ display: block;}
  .sns > li > a img{ width: 100%;}
  .left_menu > .r-box > .inbox-innter > .innter_box01 > ul.link-txt{ display: none;}
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt{ padding-right: 70px;}
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt > a{ display: block;}
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt::after{ display: none; }
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt > span{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 70px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;    
    padding-right: 10px;
  }
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt > span img{ transition: transform .3s ease-in-out;}
  .left_menu > .r-box > .inbox-innter > .innter_box01 > p.m-txt > span.active img{ transform: rotate(45deg);}
  .wrap_slideBox > .in_slide img{
    aspect-ratio: auto 906 / 824;
    max-width: none;
  }

  .follow_icons{ display: none;}
  .follow_nav{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    max-width: 820px;
    height: 11vw;
    max-height: 100px;
    background-color: #fff;
    position: fixed;
    bottom: 8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 80;
    border: solid 1.3px #2e3139;
    border-radius: 50px;
    padding: 0.9vw;
  }
  .follow_nav > a.follow_tel{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    padding-top: 2px;
  }
  .follow_nav > a.follow_tel > img{
    max-width: 298px;
    width: 33vw;
  }
  .follow_nav > a.follow_trial{
    background-color: #77bec4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    height: 100%;
    color: #fff;
    font-size: 3.2vw;
    font-weight: 400;
    border-radius: 50px;
  }

  /*-- footer --*/
  .footer_nav{ flex-flow: column; justify-content: center; align-items: center; margin-top: 56px;}
  footer ul.sns{ justify-content: center;}
  .footer_nav .in_f-box > .f-nav{ display: none;}
  .footer_nav .in_f-box{ padding-left: 0; width: 90%; max-width: none;}
  footer .studio.mgr01{ margin-right: 0;}
  footer .studio{  margin-top: 24px;}
  .cta-inbox{ padding-top: 48px; padding-bottom: 48px; width: 100%;}
  .cta-inbox > div{ width: 100%;}
  .cta-inbox .flex{ flex-flow: column;}
  .cta-inbox .title > span{ font-size: 7vw;}
  .cta-inbox .fs01{ font-size: 3vw; line-height: 1.8em;}
  .cta-inbox .flex{ margin-top: 2.4rem;}
  .cta-inbox .flex > fon div{ margin: 16px 0 0; width: 90%;}
  .cta-inbox .tel a{ font-size: 3rem; vertical-align: top; text-align: center;}
  .cta-inbox .tel p small{ padding-left: 0; text-align: center; display: block;}
  .school .class_inbox .movielink > a{ font-size: 1.8rem;}

  ul.kiji-list .img{ width: 100%;}

  footer .loop{ margin-top: 45px;}

  .btn > a{ font-size: 1.8rem;}
  .icon-tel::before{ width: 24px; height: 24px;}

  /*-- top --*/
  .noneSP{ display: none;}

  .top .fv{ height: 100vh}
  .wrap_slideBox{ flex-flow: column;}
  .wrap_slideBox > .in_slide.slide_dance .slick-slide{ height: inherit;}
  .wrap_slideBox > .in_slide{ width: 100%; height: 50vh; overflow: hidden;} 
  .wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(1){ background: url(../img/top_slider/top_slide_l_01_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(2){ background: url(../img/top_slider/top_slide_l_02_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(3){ background: url(../img/top_slider/top_slide_l_03_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(4){ background: url(../img/top_slider/top_slide_l_04_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_dance .slick-slide:nth-child(5){ background: url(../img/top_slider/top_slide_l_05_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(1){ background: url(../img/top_slider/top_slide_r_01_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(2){ background: url(../img/top_slider/top_slide_r_02_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(3){ background: url(../img/top_slider/top_slide_r_03_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(4){ background: url(../img/top_slider/top_slide_r_04_sp.jpg) no-repeat top center / cover;}
  .wrap_slideBox > .in_slide.slide_culture .slick-slide:nth-child(5){ background: url(../img/top_slider/top_slide_r_05_sp.jpg) no-repeat top center / cover;}
  .fv_txtBox p:first-child img,
  body > .op-anm > p:first-child img{ max-width: 367px; width: 60%; margin: 0 auto;}
  .fv_txtBox p:nth-child(2) img,
  body > .op-anm > p.sub img{ max-width: 520px; width: 90%; margin-left: auto; margin-right: auto;}

  body > .op-anm > p:first-child,
  .fv_txtBox > p:first-child{ width: 70%; max-width: 281px;}
  .fv_txtBox > p.sub,
  body > .op-anm > p.sub{ width: 70%; max-width: 393px;}

  .slide_dance .fv_btn,
  .slide_culture .fv_btn{ display: none;}
  #pickup .flex{ flex-flow: column;}
  #pickup .title01{ margin-bottom: 32px;}
  #pickup .title01 > span.showSP{ display: inline;}
  .sp_slide img{ width: 100%;}
  .sp_slide .slick-prev,
  .sp_slide .slick-next{
    width: 5vw;
    height: 5vw;
    max-width: 52px;
    max-height: 52px;
    min-width: 32px;
    min-height: 32px;
  }
  .sp_slide .slick-prev{ left: -16%;}
  .sp_slide .slick-next{ right: -16%;}
  .sp_slide .slick-prev:before,
  .sp_slide .slick-next:before{
    content: '';
    display: block;
    background: url(../img/icon-arrow07.png) no-repeat center;
    background-size: contain;
    width: 100%;
    height: 100%;
  }
  .sp_slide .slick-next:before{ transform: rotateZ(-180deg);}
  .loop ul img{ height: 20vw; max-height: 120px; max-width: none;}
  .loop ul{ animation-duration: 60s;}
  #top_about{ padding-top: 8vw; padding-bottom: 16%;}
  #top_about .sec_content{ flex-flow: column; margin-top: 6vw;}
  #top_about .sec_content > .rbox{ background: linear-gradient( 180deg, transparent 40% , #77bec4 40%); width: 100%;}
  #top_about .sec_content > .lbox{ width: 100%; padding: 8vw 20px 20vw; min-height: auto;}
  #top_about .main_txt{ font-size: 5vw;}
  #top_about .fs01{ font-size: 3vw;}
  #top_about .sub_txt{ font-size: 5vw;}
  #top_about .sub_txt > b{ font-size: 5.4vw;}
  .top .slider_photo{ margin-top: 6%;}
  .school .fs_intro{ font-size: 3vw;}
  .school-box{ padding: 9vw 0 12vw;}
  .school-box .flex{ flex-flow: column; width: 100%; padding: 0; position: relative;}
  .school-box .catchcopy{ margin-top: 75vw;}
  .school-box .flex .r_box{ width: 100%; padding: 0 20px;}
  .school-box .flex .l_box{ width: calc( 100% - 20px); position: absolute; right: 0; top: 20vw;}
  .school-box .kurukuru{ max-width: 175px; max-height: 175px; width: 19vw; height: 19vw; bottom: -6vw; left: -10vw;}
  .top_dan_img, .top_cul_img{ display: none;}
  .slider_school .genre_box .genre_name{ font-size: 4vw; left: 10px;}
  .school-box .catchcopy > span{ font-size: 5vw; margin-top: 0.4em;}
  .school-box .title_under_txt{ margin-top: 1em; font-size: 3vw;}
  .school-box .flex .r_box .btn{ display: none;}
  .program-box{ margin-top: 10vw;}
  .slider_school .slick-prev, .slider_school .slick-next{ height: 5vw; width: 9.7vw;}
  .slider_school .slick-prev, .slider_school .slick-next{ right: 20px;}
  .slider_school .slick-prev{ right: calc( 20px + 55px);}
  .slider_school .slide_inner{ padding-top: 8vw;}
  .slider_school{ margin-top: -6vw;}
  #top_culter .btn, #top_dance .btn{ margin-top: 5vw;}
  .top .program-box{ padding: 0 20px;}

  .title02{ text-align: left;}
  .title02 > span{ font-size: 5.7vw;}
  #pickup .title01.anm_txt > span{ font-size: 7vw;}

  #top_instructor{ padding: 16vw 0;}
  #top_instructor .inbox{ padding: 0 20px;}
  #top_instructor .instructorList{ margin-top: 70px;}
  .instructorList .slick-next{ right: 15px;}
  .instructorList .slick-prev{ right: 70px;}
  .instructorList .name{ font-size: 1.4rem;}
  .instructorList.slider .slick-list{ padding: 0 6vw 0 0!important;}

  #top_info .flex{ padding-bottom: 9vw;}
  #top_info .flex{ flex-flow: column;}
  #top_info .flex .r_box .btn{ display: none;}
  #top_info .flex .btn.showSP{ margin-top: 32px;}
  #top_info .flex .l_box{ width: 100%; margin-top: 5vw;}
  .articleList > li{ padding: 10px;}

  .title_under_txt{ font-size: 3vw;}
  .classBox .fs01 p{ font-size: 3vw;}
  .school .class_inbox .detail .edit p{ font-size: 3vw;}
  .school .class_inbox .detail .edit p span{ font-size: 3vw;}
  .featureBox .flexBox > li .txt > p{ font-size: 3vw;}
  ul.kome.c01 > li{ font-size: 3vw;}
  .faqBox ul > li .q,
  .faqBox ul > li .a{ font-size: 3vw;}
  .culter_tags_list > li{ font-size: 3vw;}
  .about .title01 + p.fs01{ font-size: 3vw;}
  .strengethsBox.flexBox > .txt > p{ font-size: 3vw;}
  .about .movieBox p{ font-size: 3vw;}
  .company_info dl > dt, .company_info dl > dd{ font-size: 3vw;}
  .instructor_main .profile_txt{ font-size: 3vw;}
  .instructor .edit_content p{ font-size: 3vw;}
  .instructor .edit_content .wp-element-caption{ font-size: 3vw;}
  ul.kiji-list .txt > .cat{ font-size: 1.4rem;}
  .form .inbox p{ font-size: 1.6rem; text-align: left;}
  .form-content dl > dt,
  .form-content dl > dd{ font-size: 1.4rem;}
  .attension{ font-size: 3vw;}
  

  

  .mg01{ margin-top: 40px!important;}

}
@media screen and ( max-width: 600px) {
  .cta-inbox .tel a{font-size: 7vw; }
  .icon-tel::before{ width: 6vw; height: 6vw;}
  .school .tab-content > img{ max-width: none; width: 167%;}
  .tab > li{ font-size: 3.6vw;}
  .instructor .is-layout-flex.columns-2{ flex-flow: column;}
  .instructor .edit_content .lesson_lists > figure{ width: 100%!important;}
  .instructor .edit_content .lesson_lists > figure:nth-child(2){ margin-top: 2%!important;}
  .instructor .edit_content .movie_box > .wp-block-group__inner-container{ flex-flow: column;}
  .instructor .edit_content .movie_box > .wp-block-group__inner-container figure{ width: 100%; margin-bottom: 16px;}
  .school_inbox .title03{ font-size: 5vw;}
  .school_inbox .title03 + p{ font-size: 3vw;}
  .about .studio .titleBox > .box > h3{ font-size: 8vw;}
  .about .studio .titleBox > .box > h3 > small{ font-size: 1.6rem;}
  .about .telBox > a{ font-size: 9vw;}
  .about .telBox > p{ font-size: 3.6vw; text-align: center;}
  .about .studio .btn{ width: 100%;}
  .pointBox > ul > li{ font-size: 2.4vw; margin-right: 10px;}
  .school .class_inbox .detail .name > span{ display: block;}
  .school .class_inbox .detail .date > span{ font-size: 1.8rem;}
  .school .class_inbox .detail .date{ font-size: 1.6rem; margin-top: 0.6em;}

  .edit_content .wp-block-gallery.columns-4 > figure.wp-block-image{ max-width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px)/2);}
  

  /*-- top --*/
  .articleList .cat{ font-size: 1.2rem; min-width: 70px;}
  .articleList .date{ font-size: 1.2rem;}
  .slider_school .slick-prev{ right: calc( 20px + 9vw);}
  .cta-inbox .flex > div.btn{ width: 100%;}


  /*-- menu --*/
  header .menuicon{ width: 40px;}

}
@media screen and ( max-width: 450px) {
  .wrap_slideBox > .in_slide img{
    height: 50vh;
    width: auto;
    max-width: none;
  }
  table.priceBox > tbody th{ font-size: 1.4rem;}
  table.priceBox > tbody th > small{ font-size: 1rem;}
  table.priceBox.box-t01 > tbody th{ min-width: auto;}
  table.priceBox.box-t01 > tbody td{ padding-left: 8px; padding-right: 8px;}
  table.priceBox.box-t01 > tbody .txt{ font-size: 1.2rem;}
  .follow_nav{ min-height: auto; height: 13vw;}
  .link01{ width: 100%; font-size: 3.8vw;}
  .active_select{ font-size: 1.4rem;}
  .articleList .title{ font-size: 4vw;}

  .featureBox .flexBox > li .num{ font-size: 2.6rem; width: 34px; align-items: center;}
  .featureBox .flexBox > li .num > small{ font-size: 1rem;}
  .about .studio .titleBox > .box > .address{ font-size: 4vw;}
  .info .localnav p.link-t{ font-size: 4vw;}

  .post_data p, .post_data ul, .post_data ol{ font-size: 3vw;}
  .form .inbox p{ font-size: 3vw;}
  .school .class_inbox .detail .name > span{ font-size: 4vw;}
  .school .class_inbox .detail .name{ font-size: 8vw;}
}
