@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
/*===============================================
●PCレイアウト設定 
===============================================*/
@media screen and  (min-width: 651px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.main {
position: relative;
height: 100vh;
overflow: hidden;
}
.main .mainimage{
position: absolute;
top:0;
width: 100%
}
.main .mainimage ul{
margin: 0;
padding: 0;
}
.slide-items {
  width: 100%;
  height: 100%;

}
.slide-items li{
display: block;
overflow: hidden
}
.slide-items img {
  width: 100%;
  margin: 0;
  object-fit: cover;
  }
.slick-arrow:before{
	content:""!important;
}

.main img{
width: 100%
}
.index{
font-family: 'Noto Serif JP';
}
.index .container{
/*background-color: #FFF;
background-image: url("../images/index/bg_container.png");
*/
}
.index .box_news{
width: 1000px;
max-width: 90%;
margin: 0 auto;
padding-top: 100px
}
.index .box_news .subtitle_news{
padding-bottom: 30px;
font-family: 'Noto Serif JP';
font-size: clamp(1.6rem ,2.0vw, 3.5rem);
font-weight: 600;
color:#CC4779;
}
.index .flex_news{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .flex_news a{
display: block;
width: 45%;
border-bottom:#CC4779 1px dotted;
margin-bottom: 15px;
color: #666;
font-size: 1.5rem;
line-height: 130%
}
.index .flex_news a:hover{
color:#CC4779;
}
.index .flex_news a .date{
font-size: 1.2rem
}
.index .box1{

}
.index .box1 .flex_lead{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px;
padding-bottom: 20px
}
.index .box1 .flex_lead .inner_left{
width: 38%;
padding-top: 80px
}
.index .box1 .flex_lead .inner_left img{
width: 90%;
}
.index .box1 .flex_lead .inner_right{
width: 53%;
padding-left: 2%;
padding-right: 5%;
font-weight: 500;
padding-top: 100px;
color: #B14B0F;
font-size: clamp(0.9rem, 1.3vw, 2.0rem)!important;
}
.index .box1 .catch{
width: 70%;
padding-bottom: 50px;
font-family: 'Noto Serif JP';
font-size: clamp(1.6rem ,2.0vw, 3.5rem);
font-weight: 600;
color:#CC4779;
}
.index .box1 .flex_lead .inner_right .box_bunner{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box1 .flex_lead .inner_right .box_bunner img{
display: block;
width: 49%;
margin-bottom: 15px;
border-radius: 20px
}
.index .box1 .flex_lead .inner_right .bt{
padding-top: 50px;
}
.index .box1 .flex_lead .inner_right .bt a{
display: block;
width: 500px;
max-width: 90%;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box1 .flex_lead .inner_right .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box1 .flex_lead .inner_right .bt a:hover{
background-color: #A23344
}
.index .box2 .flex_box3 .inner_right{
width: 23%;
padding-left: 4%;
padding-right: 21%;
}
/* スクロールで出現 */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateY(40px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


.fadeRight{
animation-name:fadeRightAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateY(-40px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}

.index .box2{
padding-left: 12%;
padding-top: 200px;
padding-bottom: 100px;
/*
background-image: url("../images/index/bg_box1.png");
background-color: #FFF
*/
}
.index .box2 .photo{
padding-bottom: 100px;
}
.index .box2 .photo img{
width: 100%
}
.index .box2 .flex_box3{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box2 .flex_box3 .inner_left{
width: 50%;
font-size: clamp(0.9rem, 1.1vw, 1.7rem)!important;
line-height: 220%!important;
letter-spacing: 0.1em!important
}
.index .box2 .flex_box3 .inner_left .subtitle_box3{
width: 330px;
padding-bottom: 50px;
font-family: 'Noto Serif JP';
font-size: clamp(1.6rem ,2.0vw, 3.5rem);
font-weight: 600;
color:#CC4779;
}
.index .box2 .flex_box3 .inner_left .bt{
padding-top: 50px;
}
.index .box2 .flex_box3 .inner_left .bt a{
display: block;
width: 350px;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box2 .flex_box3 .inner_left .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box2 .flex_box3 .inner_left .bt a:hover{
background-color: #A23344
}
.index .box2 .flex_box3 .inner_right{
width: 23%;
padding-left: 4%;
padding-right: 21%;
}
.index .box2 .flex_box3 .inner_right img{
width: 90%;
}
.index .box4{
padding: 100px 0;
/*
background-image: url("../images/index/bg_box4.png")

*/
}
.index .box4 .flex_box4{
width: 1800px;
max-width: 95%;
margin: 0 auto 0 0;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box4 .flex_box4 .inner_left{
width: 58%;
}
.index .box4 .flex_box4 .inner_left img{
width: 100%;
margin: 0 auto;
display: block;
border-radius: 0 100px 100px 0
}
.index .box4 .flex_box4 .inner_right{
padding-left: 4%;
padding-right: 4%;
padding-top: 100px;
width: 30%;
font-size: clamp(0.9rem, 1.1vw, 1.8rem)!important;
line-height: 180%!important;
background-color: rgba(255,255,255,0.7);
border-radius: 20px;
color: #B14B0F
}
.index .box4 .flex_box4 .inner_right .subtitle_box4{
width: 392px;
max-width: 90%;
padding-bottom: 50px;
font-family: 'Noto Serif JP';
font-size: clamp(1.6rem ,2.0vw, 3.5rem);
font-weight: 600;
color:#CC4779;
}
.index .box4 .flex_box4 .inner_right .box_fee{
margin-top: 40px;
border:#CC4779 1px solid;
color:#CC4779;
padding: 2%;
font-weight: 500
}
.index .box4 .flex_box4 .inner_right .box_fee table{
width: 100%;
}
.index .box4 .flex_box4 .inner_right .box_fee td:nth-child(1){
width: 30%;
border-bottom: #CC4779 1px dotted;
}
.index .box4 .flex_box4 .inner_right .box_fee td:nth-child(2){
width: 70%;
border-bottom: #CC4779 1px dotted;
text-align: right
}
.index .box4 .flex_box4 .inner_right .bt a{
display: block;
width: 350px;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box4 .flex_box4 .inner_right .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box4 .flex_box4 .inner_right .bt a:hover{
background-color: #A23344
}
.index .box5{
padding-left: 12%;
padding-top: 100px;
padding-bottom: 100px;
/*
background-image: url("../images/index/bg_box5.png");
background-repeat: no-repeat;
background-color: #ede1d9
*/
}
.index .box5 .photo{
padding-bottom: 100px;
}
.index .box5 .photo img{
width: 100%;
border-radius: 100px 0 0 100px;
display: inline-block
}
.index .box5 .flex_box5{
display: flex;
flex-wrap: wrap;
justify-content: space-between;

}
.index .box5 .flex_box5 .inner_left{
width:60%;
font-size: clamp(0.9rem, 1.1vw, 1.8rem)!important;
line-height: 220%!important;
letter-spacing: 0.1em!important;
color: #B14B0F
}
.index .box5 .flex_box5 .inner_left .subtitle_box5{
width: 559px;
max-width: 100%;
padding-bottom: 50px;
font-family: 'Noto Serif JP';
font-size: clamp(1.6rem ,2.0vw, 3.5rem);
font-weight: 600;
color:#CC4779;
}

.index .box5 .flex_box5 .inner_left .bt{
padding-top: 50px;
}
.index .box5 .flex_box5 .inner_left .bt a{
display: block;
width: 500px;
max-width: 90%;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box5 .flex_box5 .inner_left .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box5 .flex_box5 .inner_left .bt a:hover{
background-color: #A23344
}
.index .box5 .flex_box5 .inner_right{
width: 37%;
padding-left: 3%;
padding-top: 70px;
}
.index .box5 .flex_box5 .inner_right img{
width: 70%;
}
/*コンセプト--------------------------------------------------------------------------*/
.concept{
font-family: 'Noto Serif JP';
padding: 100px 0;
}
.concept .subtitle{
color:#CD8587;
text-align: center;
padding: 50px 0 3px 0;
border-bottom:#CD8587 1px solid;
margin-bottom: 30px;
font-size: 2.5rem;
font-weight: 600;
width: 800px;
max-width: 90%;
margin: 0 auto
}
.concept .box_about{
color: #CC4779;
padding: 50px 0;
line-height: 180%;
font-size: 1.8rem;
font-weight: 600;
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.concept .box_merit{
width: 1300px;
max-width: 90%;
margin: 0 auto;
padding: 100px 0
}
.concept .box_merit .flex_merit1{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-right: 20%;
padding-top: 50px;
}
.concept .box_merit .flex_merit2{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-left: 20%;
padding-top: 50px;
}
.concept .box_merit .photo{
width: 30%;
}
.concept .box_merit .photo img{
width: 100%
}
.concept .box_merit .com{
width: 60%;
background-color: rgba(255,255,255,0.5);
padding: 5% 2% 2% 2%;
border-radius: 40px;
border-bottom: #CCC 2px solid;
border-right: #CCC 2px solid;
border-top: #FFF 2px solid;
border-left: #FFF 2px solid;
}
.concept .subtitle_merit {
  color: #FFF;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  display: inline-block;/*おまじない*/
  line-height: 1.3;/*行高*/
  background:#CB787A;
  vertical-align: middle;
  border-radius: 25px 0px 0px 25px;/*左側の角を丸く*/
  font-size: 2.0rem;
  font-weight: 600;
  display: block;
  margin-bottom: 30px
}

.concept .subtitle_merit:before {
  content: '●';
  color: white;
  margin-right: 8px;
}
.concept .box_merit .com .bt_trial a{
width: 80%
}
.concept .box1{
width: 1300px;
max-width: 90%;
padding-bottom: 50px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px
}
.concept .box1 .com{
width: 59%;
color: #AA184A;
background-color: rgba(255,255,255,0.7);
padding: 3%

}
.concept .box1 .photo{
width: 33%;
border-radius: 10px;
overflow: hidden
}
.concept .box1 .photo img{
width: 100%;
}
.concept .studio{
width: 1500px;
max-width: 100%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden
}
.concept .studio img{
 width: 100%;
}
/*インストラクター--------------------------------------------------------------------------*/
.instructer{
font-family: 'Noto Serif JP';
background-image: url("../images/instructer/bg_kanako.png");
}
.instructer .kanako{
width: 1200px;
max-width: 90%;
margin: 0 auto;
padding-top: 50px;
}
.instructer .kanako .name{
font-size: 2.0vw;
font-family: 'Noto Serif JP';
font-weight: 500;
color:#CC4779;
padding-bottom: 5px;
border-bottom: #CC4779 2px solid
}
.instructer .kanako .name .jpname{
font-size: 1.6rem
}
.instructer .kanako .flex_kanako{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px;
padding-bottom: 50px
}
.instructer .kanako .flex_kanako .com{
width: 65%;
font-size: 1.5rem;
line-height: 160%
}
.instructer .kanako .flex_kanako .com .movie{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding-top: 20px
}
.instructer .kanako .flex_kanako .com .movie .inner{
width: 60%;
background-color: #000;
padding: 1%;
}
.instructer .kanako .flex_kanako .com .movie .video{
width: 100%
}
.instructer .kanako .flex_kanako .photo{
width: 30%;
}
.instructer .kanako .flex_kanako .photo img{
width: 100%;
}
.instructer .kanako .flex_kanako .left{
width: 35%;
position: relative;
}
.instructer .kanako .flex_kanako .left .text1{
position: absolute;
font-size: 3.5vw;
font-weight: 600;
color:#999;
top:20%;
left: 50%;
transform: translateX(-50%);
font-family: 'Noto Serif JP';
}
.instructer .kanako .flex_kanako .right{
width: 63%;
}
.instructer .kanako .flex_kanako .right table{
width: 100%;
border-collapse: collapse
}
.instructer .kanako .flex_kanako .right td{
border-bottom:#CC4779 1px dotted;
padding-bottom: 3px;
padding-top: 20px;
font-size: 1.4rem;
line-height: 160%;
vertical-align: top
}
.instructer .kanako .flex_kanako .right td:nth-child(1){
width: 20%;
}
.instructer .kanako .flex_kanako .right td:nth-child(2){
width: 80%;
}
.instructer .kanako .flex_kanako .right .box_media{
border: #CC4779 1px solid;
padding: 2%;
}
.instructer .kanako .flex_kanako .right .text_media{
color:  #CC4779;
font-size: 1.4rem;
font-weight: 600;
display: inline-block;
padding-right: 2%;
padding-bottom: 10px;
}
.instructer .box_instructer{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.instructer .box_instructer .name_instructer{
font-size: 1.6vw;
font-family: 'Noto Serif JP';
font-weight: 500;
color:#CC4779;
padding-bottom: 5px;
border-bottom: #CC4779 2px solid;
margin-bottom: 15px
}
.instructer .box_instructer .inner{
width: 45%;
border: #CC4779 1px solid;
 border-top-right-radius: 30px;
 border-top-left-radius: 5px;
 border-bottom-left-radius: 30px;
 border-bottom-right-radius: 5px;
margin-bottom: 20px;
font-size: 1.3rem;
padding: 2%;
background: linear-gradient(#FFF, #FCF0F9);
}
.instructer .box_instructer .flex_instructer{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.instructer .box_instructer .inner .photo{
width: 30%;
}
.instructerr .box_instructer .inner .photo img{
width: 100%;
border-radius: 5px;
display: block
}
.instructer .box_instructer .inner .com{
width: 65%;
font-size: 1.3rem;
line-height: 150%
}

.instructer .box_instructer .inner .thumb{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 3px 0
}
.instructer .box_instructer .inner .thumb a{
display: block;
width: 30%;
padding-top: 30%;
position: relative;
overflow: hidden
}
.instructer .box_instructer .inner .thumb a img{
display: block;
width: 100%;
position: absolute;
top:10%;
}
.bt_trial{
padding: 50px 0;
text-align: center;
font-size: 2.0rem;
color:#CC4779;
}
.bt_trial a{
display: block;
width: 650px;
margin: 20px auto;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.bt_trial a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.bt_trial a:hover{
background-color: #A23344
}
/*レッスンクラス--------------------------------------------------------------------------*/
.fee{
font-family: 'Noto Serif JP';
}
.fee .subtitle{
color: #CC4779;
text-align: center;
padding: 50px 0;
line-height: 180%;
font-size: 2.5rem;
font-weight: 600
}
.fee .subtitle2{
color:#CD8587;
text-align: center;
padding: 50px 0 3px 0;
border-bottom:#CD8587 1px solid;
margin-bottom: 30px;
font-size: 2.5rem;
font-weight: 600;
width: 800px;
max-width: 90%;
margin: 0 auto
}
.fee .box1{
padding-bottom: 50px;
}
.fee .box_class{
/*
background-image: url("../images/fee/bg_main.png");
*/
padding: 100px 0
}
.fee .flex_class{
width: 1200px;
max-width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 100px auto;
}
.fee .flex_class::after{
  content:"";
  display: block;
  width:30%;
}
.fee .flex_class .inner{
width: 31%;
box-sizing: border-box;
border-radius: 10px;
margin-bottom: 30px;
background-color: rgba(255,255,255,0.8)
}
.fee .flex_class .inner .classname{
text-align: center;
font-size: 1.8rem;
font-weight: 600;
padding: 5px 0
}
.fee .flex_class .inner .com{
padding: 3%;
line-height: 150%
}
.fee .flex_class .inner .photo{
padding: 5%;
}
.fee .flex_class .inner .photo img{
width: 100%
}
.fee .flex_class .bigi1{
border: #F9E2BB 3px solid;
}
.fee .flex_class .bigi1 .classname{
background-color: #F9E2BB;
color: #EF832F
}
.fee .flex_class .bigi2{
border: #D6EFA6 3px solid;
}
.fee .flex_class .bigi2 .classname{
background-color:#D6EFA6;
color:#517038
}
.fee .flex_class .bigi3{
border: #C1F0F4 3px solid;
}
.fee .flex_class .bigi3 .classname{
background-color:#C1F0F4;
color:#2C8590
}
.fee .flex_class .bas1{
border: #FCDBDC 3px solid;
}
.fee .flex_class .bas1 .classname{
background-color:#FCDBDC;
color:#D04D4F
}
.fee .flex_class .bas2{
border: #C1E1F8 3px solid;
}
.fee .flex_class .bas2 .classname{
background-color:#C1E1F8;
color:#195BA0
}
.fee .flex_class .mid{
border: #F8F8D6 3px solid;
}
.fee .flex_class .mid .classname{
background-color:#F8F8D6;
color:#94A41B
}
.fee .flex_class .hi{
border: #F7DDF8 3px solid;
}
.fee .flex_class .hi .classname{
background-color:#F7DDF8;
color:#B44EAA
}
.fee .flex_class .foc{
border:#E8DED8 3px solid;
}
.fee .flex_class .foc .classname{
background-color:#E8DED8;
color:#86664B
}
.fee .main_fee img{
display: block;
width: 900px;
max-width: 100%;
margin: 0 auto
}

.fee .bt_class a{
display: block;
width: 650px;
border: #CC4779 1px solid;
padding: 7px 0;
text-align: center;
color: #CC4779;
font-size: 1.6rem;
font-weight: 600;
transition: 0.5s;
margin: 30px auto
}
.fee .bt_class a:hover{
background-color: #CC4779;
color: #FFF
}
.fee .flex_bunner{
width: 900px;
max-width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 50px auto
}
.fee .flex_bunner img{
display: block;
width: 27%
}
.fee .box_fee1{
background-color:#FDF4F9;
padding: 100px 0 100px 0
}
.fee .text-fee{
width: 1000px;
max-width: 90%;
margin: 30px auto 50px auto;
line-height: 200%;
font-size: 2.0rem;
background-color: rgba(255,255,255,0.5);
padding: 2%;
border-radius: 20px;
color:#C7272A;
font-weight: 500;
border-top: #FFF 2px solid;
border-left: #FFF 2px solid;
border-bottom: #999 2px solid;
border-right: #999 2px solid;
box-shadow: 0px 0px 20px -8px rgba(8,109,207,0.9);
font-family: 'Noto Sans JP';
}
.fee .box_fee2{
width: 1100px;
max-width: 86%;
margin: 0 auto;
padding: 2%;
border: #CC4779 3px solid;
box-sizing: border-box;
}
.fee .box_fee1 table{
width: 100%;
border-collapse: collapse
}
.fee .box_fee1 td{
padding-bottom:3px;
border-bottom: #CC4779 1px dotted;
padding-top: 25px
}
.fee .box_fee1 td:nth-child(1){
color: #CC4779;
font-size: 1.8rem;
font-weight: 600;
width: 60%
}
.fee .box_fee1 td:nth-child(1) .text1{
color: #333;
font-size: 1.5rem;
font-weight: 400
}
.fee .box_fee1 td:nth-child(2){
text-align: right;
font-size: 2.2rem;
font-weight: 600
}
.fee .box_fee1 .text_fee{
line-height: 140%;
padding-top: 40px;
font-weight: 500
}
.fee .box_fee1 .box_video{
padding-top: 50px;

overflow: hidden;
position: relative
}

.fee .box_fee1 .box_video #video {
    /*縦横幅指定*/
    width: 100%;
    min-width: 100%;
	background-color:#FDF4F9;
}
.fee .box_fee1 .box_video .filter{
background-image: url("../images/index/ami.png");
position: absolute;
width: 100%;

}

.fee .box_event {
padding-botoom: 50px 0;
margin: 0;
background-image: url("../images/index/bg_box1.png")
}
.fee .box_event .photo_event img{
width: 100%
}
.fee .box_event .yutube{
padding-top: 40px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1200px;
max-width: 90%;
margin: 0 auto
}
.fee .box_event .yutube::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.fee .box_event .yutube::after{
  content:"";
  display: block;
  width:23%;
}
.fee .box_event .yutube .inner{
width: 23%;
margin-bottom: 35px;
}
.fee .box_event .yutube .inner iframe{
width: 100%!important;
height: auto!important;
margin-bottom: 25px;
}
.fee .box_event .yutube .inner .mvtitle{
padding: 3px 0;
text-align: center;
font-weight: 500;
color: #CC4779;
margin-top: -25px
}
.fee .box_event .yutube .inner .com{
font-size: 1.3rem;
line-height: 140%
}
/*スケジュールカレンダー--------------------------------------------------------------------------*/
.schedule{
font-family: 'Noto Serif JP';
}
.schedule .box_schedule{
width: 800px;
max-width: 90%;
margin: 100px auto
}
.schedule .box_schedule img{
width: 100%
}
.schedule .box_schedule embed{
width: 100%;
height: 135vh
}
/*Q&A--------------------------------------------------------------------------*/
.faq{
font-family: 'Noto Serif JP';
}
.faq .subtitle {
  border-bottom: #f1a986 solid 3px;
  position: relative;
    font-size: 2.0rem;
  font-weight: 600;
  color: #000;
  padding-bottom: 5px;
  margin-bottom: 30px
}

.faq .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #a2055a;
  bottom: -3px;
  width: 30%;
}
.faq .box_faq{
width: 1100px;
max-width: 90%;
margin: 100px auto
}
/*アコーディオン全体*/
.faq .accordion-area{
    list-style: none;
    width: 96%;
   margin-bottom:100px;
}

.faq .accordion-area li{
    margin: 10px 0;
}

.faq .accordion-area section {
  border: 1px solid #CC4779;
  margin: 10px 0;
}

/*アコーディオンタイトル*/
.faq .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1.6rem;
    font-weight: normal;
    padding: 1% 1% 1% 50px;
    transition: all .5s ease;
	color: #CC4779
}

/*アイコンの＋と×*/
.faq .title::before,
.faq .title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #CC4779;
    
}
.faq .title::before{
    top:48%;
    left: 15px;
    transform: rotate(0deg);
    
}
.faq .title::after{    
    top:48%;
    left: 15px;
    transform: rotate(90deg);

}

/*　closeというクラスがついたら形状変化　*/

.faq .title.close::before{
  transform: rotate(45deg);
}

.faq .title.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.faq .box {
display: none;/*はじめは非表示*/
background:#FAECF1;
margin:0 2% 2% 2%;
padding: 1%;
font-size: 1.4rem
}
.faq .box a{
color: #C7206C;
font-size: 1.6rem;
font-weight: 600;
text-decoration: underline
}

/*体験レッスン--------------------------------------------------------------------------*/
.trial{
font-family: 'Noto Serif JP';
}
.trial .box1{
/*
background-image: url(../images/trial/bg_box1.png);
*/
padding: 100px 0
}
.trial .flex_box1{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.trial .flex_box1 .left{
width: 47%;
padding-right: 3%;
color: #C7206C;
font-size:1.8rem;
font-weight: 500
}
.trial .flex_box1 .left .text1{
background-color: #FFF;
border: #C7206C 2px solid;
padding: 5px 5px 5px 15px;
font-size: 2.0rem;
border-radius: 20px;
margin-bottom: 20px;
}
.trial .flex_box1 .right{
width: 48%;
}
.trial .flex_box1 .right img{
width: 100%;
}
.trial .box3{
padding: 100px 0
}
.trial .box3 .flex_box3{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.trial .box3 .flex_box3 .left{
width: 25%;
text-align: center;
color: #C7206C;
font-family: 'Noto Serif JP';
font-size:2.5rem;
padding-top: 5vw;
font-weight: bold;
line-height: 200%
}
.trial .box3 .flex_box3 .right{
width: 72%;
}
.trial .box3 dl{
width: 900px;
max-width: 90%;
position: relative;
padding: 1.5%;
margin: 2em 0;
margin: 0 auto 40px auto;
background:#FBEEF8;
font-weight: 500;
}
.trial .box3 dl:after {
position: absolute;
content: '';
top: 100%;
left: 30px;
border: 15px solid transparent;
border-top: 15px solid #F9DFFC;;
width: 0;
height: 0;
}
.trial .box3 dt{
background-color:  #FFF;
border-radius: 20px;
color: #C7206C;
font-size: 2.0rem;
font-weight: 600;
padding: 5px 5px 5px 15px;
margin-bottom: 20px
}
.trial .box3 dd{
font-size: clamp(1.3rem ,1.0vw, 1.8rem);
}
.trial .box3 dd .text2{
background-color:#FFF;
padding: 3%;
color: #C7206C;
font-weight: 600
}
.trial .taikenform{
width: 1000px;
max-width: 90%;
margin: 50px auto;
}
.trial .taikenform .subtitle{
font-size: 2.5rem;
font-weight: 600;
text-align: center;
color: #C7206C;
padding-bottom: 3px;
border-bottom: #C7206C 1px solid;
margin-bottom: 30px;
}
.trial .taikenform .box4{
font-size: 1.8rem;
font-weight: 500;
}
.trial .taikenform .box4 li{
display: none
}
/*お問い合わせ-----------------------------------------*/
.contact{
font-family: 'Noto Serif JP';
width: 1000px;
max-width: 90%;
margin: 0 auto;
padding: 100px 0;
}

.contact .box1{
width: 1000px;
max-width: 90%;
margin: 0 auto;
padding: 50px 0 100px 0
}
.contact .box1 .text_red{
color: #C00
}
.contact .box_form{
width: 1000px;
max-width: 90%;
padding-top: 20px;
padding-bottom: 100px;
border-top:#97215e 1px solid;
margin: 0 auto
}
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
}
.contact table td{
	border-bottom:#97215e 1px solid;
	padding:1%;
	padding-bottom: 20px;
	padding-top: 20px;
}
.contact table td:nth-child(1){
width: 25%;
}
.contact table td .flex_komoku{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.contact table td .flex_komoku .left{
width: 60%
}
.contact table td .flex_komoku .right{
width: 40%;
box-sizing: border-box;
border: #C00 1px solid;
text-align: center;
color: #C00;
border-radius: 3px
}
.contact table textarea {
width: 80%;
height: 10em;
	border:none;
	background-color: #f4f4f4;
}
.contact table label{
	display:block;
}
.contact table input[type="text"]{
	width:50%;
	background-color: #f4f4f4;
	height: 35px;
	border: none
}
.contact table .num input[type="text"]{
	width:10%;
}
.contact table input[type="email"]{
	width:50%;
	border:#CCC 1px solid;
}
.contact .check{
padding-top: 20px;
text-align: center
}
.contact .check a{
color: #97215e;
text-decoration: underline
}
.contact input[type="submit"]{
	width:400px;
	text-align:center;
	font-size:1.8rem;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
display: block;
background-color: #9C1846;
color: #FFF;
text-align: center;
font-weight: 600;
border-radius: 30px;
padding: 15px 0;
transition: 0.8s;
border: none
}
.contact input[type="submit"]:hover{
background-color: #c8084c
}
.contact .box2{
padding: 30px 0;
text-align: center;
}
/*お知らせ-----------------------------------------*/
.news{
font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
font-weight: 500
}
.news .pagetitle{
position: relative;
width: 1600px;
max-width: 85%;
margin: 0 auto 50px auto
}
.news .pagetitle img{
width: 100%;
}
.news .pagetitle .text_title{
position: absolute;
width: 9%;
top:50%;
left: 50%;
transform: translateY(-20%) translateX(-50%)
}
.news .pagetitle .text_title img{
width: 100%
}
.news .flex_news{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 100px 0 200px 0;
width: 1300px;
max-width: 90%;
margin: 0 auto;
}
.news .flex_news .article{
width: 73%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-right: #9C1846 1px solid;
padding-right: 2%;
}
.news .flex_news .aside{
width: 21%;
padding-left: 1%
}
.news .article::before{
  content:"";
  display: block;
  width:22%;
  order:1;
}
.news .article::after{
  content:"";
  display: block;
  width:22%;
}
.news .article a{
width: 22%;
display: block;
box-sizing: border-box;
transition: 0.5s
}
.news .article a:hover{
color: #9C1846
}
.news .article a{
width: 22%;
display: block;
box-sizing: border-box;
}
.news .article a .photo{
position: relative;
width: 100%;
padding-top: 70%;
overflow: hidden
}
.news .article a .photo img{
width: 100%;
display: block;
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%)
}
.news .article a .date{
font-size: 1.2rem
}
.news .article a .cat{
display: inline-block;
border: #9C1846 1px solid;
border-radius: 20px;
text-align: center;
color: #9C1846;
padding: 0.3% 10%;
margin-right: 2%;
font-size: 1.5rem;
font-weight: 600;
}
.news .article a .com{
padding-top: 3px;
font-size: 1.4rem;
font-weight: 600
}
.news .flex_news .aside .title_cat{
font-size: 2.0rem;
font-weight: bold;
padding-bottom: 2px;
border-bottom: #666 4px double;
color: #666;
margin-bottom: 25px
}
.news .flex_news .aside li{
list-style: none
}
.news .flex_news .aside a{
display: block;
color: #9C1846;
font-size: 1.6rem;
font-weight: 600;
border-bottom: #9C1846 1px dotted;
margin-bottom: 15px;
transition: 0.8s;
padding: 1%;
padding-bottom: 2px;
}
.news .flex_news .aside a:hover{
background-color: #f4f4f4
}
.news .termname{
font-size: 2.0rem;
color: #666;
border-bottom: solid 3px #666;
width: 1300px;
max-width: 90%;
margin: 0 auto;
position: relative;
font-weight: 600;
letter-spacing: 0.1em
}

.news .termname:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #9C1846;
  bottom: -3px;
  width: 20%;
}
.news .kiji{
width: 100%
}
.news .kijititle{
font-size: 2.0rem;
color: #666;
border-bottom: solid 3px #666;
position: relative;
font-weight: 600;
letter-spacing: 0.1em;
margin-bottom: 80px
}

.news .kijititle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #9C1846;
  bottom: -3px;
  width: 20%;
}
.news .kiji img{
max-width: 80%;
display: block;
margin: 10px auto;
padding: 1%;
border: 1px #666 solid
}
.news .bt_news{
width: 1300px;
max-width: 90%;
margin: 0 auto 50px auto;
}
.news .bt_news a{
width: 220px;
display: block;
color: #FFF;
background-color: #9C1846;
text-align: center;
font-size: 1.6rem;
font-weight: 600;
padding: 5px 0;
border-radius: 20px;
}
/*個人情報-----------------------------------------*/
.privacy{
font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
font-weight: 500;
padding: 2%;
width: 1000px;
max-width: 85%;
margin: 100px  auto;
border: #666 1px solid;
}
.privacy .box1{
padding-bottom: 50px
}
.privacy ul{
 padding: 20px 0;
 margin-bottom: 40px;
}
.privacy li{
  border-bottom: #666 1px dotted;
  display: block;
  margin-bottom: 25px;
}
.privacy ol {
background-color: #f4f4f4;
padding: 2%;
font-weight: 600;
margin-top: -20px
}
.pager {
 font-size: 14px
 }
.pager a{
 background-color: #EEE;
 color: #666;
 padding: 3px 15px;
 font-size: 14px
}

.pager{
width: 650px;
padding: 40px 0;
font-size: 1.5rem;
color: #333;
margin: 0 auto
}
.pager a{
display: inline-block;
background-color: transparent ;
color: #333;
font-size: 1.6rem!important;
padding: 4px 10px!important;
border: #036 1px solid
}
.pager .prev{
padding: 4px 30px!important;
background-color: #333;
color: #FFF
}
.pager .next{
padding: 4px 30px!important;
background-color: #333;
color: #FFF
}
.case .pager .dots{
display: inline-block;
padding-right: 6px
}
.pager .current{
display: inline-block;
padding-right: 6px;
font-size: 1.5rem;
font-weight: 600
}
.pager table{
width: 600px;
margin: 0 auto
}
.pager td a{
border: none;
font-size: 2.0rem;
font-weight: 600;
text-decoration: underline;
display: inline-block;
background-color: #F4F4F4;
padding: 4px 15px;
text-align: center
}
.pager td:nth-child(2){
text-align: right;
width: 50%
}
}
/*===============================================
●スマホれいあうと設定 画面の横幅が650px以下
===============================================*/
@media screen and  (max-width: 650px){
.main {
position: relative;
padding-top: 70px;
width: 100%;
overflow: hidden;
}
.main .mainimage div{
margin: 0;
padding: 0;
display: block
}
.slide-items {
  width: 100%;
  height: 100%;
pointer-events: none;
}
.slide-items img {
  width: 100%;
  object-fit: cover;
  }
.slick-arrow:before{
	content:""!important;
}
.main .catch{
position: absolute;
top:130px;
left: 50%;
transform: translateX(-50%);
width: 70%;
}
.main ul{
display: block;
margin: 0;
padding: 0;
width: 90%;
margin-left: 5%
}
.slide-items {
  width: 100%;
  height: 100%;
}

.slide-items img {
  width: 100%;
  }
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.index .container{
/*
background-image: url("../images/index/bg_container.png");
*/
}
.index{
font-family: 'Noto Serif JP';
}
.index .box_news{
width:90%;
margin: 0 auto;
padding-top: 80px
}
.index .box_news .subtitle_news{
padding-bottom: 40px;
font-weight: 600;
color:#CC4779;
font-family: 'Noto Serif JP';
font-size: 2.5rem;
}
.index .flex_news{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.index .flex_news a{
display: block;
border-bottom:#CC4779 1px dotted;
margin-bottom: 15px;
color: #666;
font-size: 1.3rem;
line-height: 130%;
width: 100%
}
.index .flex_news a .date{
font-size: 1.1rem
}
.index .box1{

}

.index .box1 .flex_lead{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box1 .flex_lead .inner_left{
width: 80%;
padding-top: 30px;
margin: 0 auto;
}
.index .box1 .flex_lead .inner_left img{
width: 100%;
}
.index .box1 .flex_lead .inner_right{
width: 90%;
margin: 0 auto;
font-weight: 400!important;
font-style: normal;
padding-top: 50px
}
.index .box1 .catch{
width: 100%;
padding-top: 20px;
padding-bottom: 40px;
font-size: 2.5rem;
font-weight: 600;
color:#CC4779;
font-family: 'Noto Serif JP';
}
.index .box1 .flex_lead .inner_right .box_bunner{
width: 100%;
}
.index .box1 .flex_lead .inner_right .box_bunner img{
display: block;
margin-bottom: 20px;
border-radius: 20px
}
.index .box1 .flex_lead .inner_right .bt{
padding-top: 30px;
}
.index .box1 .flex_lead .inner_right .bt a{
display: block;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box1 .flex_lead .inner_right .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
/* スクロールで出現 */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateY(50px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


.fadeRight{
animation-name:fadeRightAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateY(-50px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}
.index .box2{
padding-bottom: 100px;
/*
background-image: url("../images/index/bg_box1.png");
*/
background-color: #FFF
}
.index .box2 .photo{
padding: 3% 2% 30px 2%;

}
.index .box2 .photo img{
width: 100%
}
.index .box2 .flex_box3{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
flex-direction: column-reverse
}
.index .box2 .flex_box3 .inner_left{
width: 85%;
padding: 0 0 0 10%;

font-weight: 400!important;
}
.index .box2 .flex_box3 .inner_left .subtitle_box3{
width: 70%;
padding-bottom: 30px;
font-size: 14.0vw;
font-weight: 600;
color:#CC4779;
font-family: 'Noto Serif JP';
}

.index .box2 .flex_box3 .inner_left .bt{
padding-top: 30px;
}
.index .box2 .flex_box3 .inner_left .bt a{
display: block;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box2 .flex_box3 .inner_left .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box2 .flex_box3 .inner_right{
width: 40%;
padding-left: 25%;
padding-right: 25%;
padding-bottom: 60px
}
.index .box2 .flex_box3 .inner_right img{
width: 100%;
}
.index .box4{
background-size: auto;
padding: 50px 0 100px 0;
/*
background-image: url("../images/index/bg_box4-sp.png")
*/
}
.index .box4 .flex_box4{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box4 .flex_box4 .inner_left{
padding-left: 25%;
font-weight: 300
}
.index .box4 .flex_box4 .inner_left img{
width: 100%;
}
.index .box4 .flex_box4 .inner_right{
padding-left: 10%;
width: 82%;
font-weight: 400!important;
background-color: rgba(255,255,255,0.8);
padding: 10% 3%;
margin-left: 5%;
margin-top: -70px
}
.index .box4 .flex_box4 .inner_right .photo{
width: 60%;
padding-left: 20%
}
.index .box4 .flex_box4 .inner_right .photo img{
width: 100%;
}
.index .box4 .flex_box4 .inner_right .subtitle_box4{
width: 392px;
max-width: 90%;
padding-bottom: 30px;
font-weight: 600;
color:#CC4779;
font-family: 'Noto Serif JP';
padding-left: 10%;
font-size: 2.5rem;
}
.index .box4 .flex_box4 .inner_right .box_fee{
padding-top: 40px
}
.index .box4 .flex_box4 .inner_right .box_fee table{
width: 100%;
color: #CC4779;
font-weight: 500
}
.index .box4 .flex_box4 .inner_right .box_fee td:nth-child(1){
width: 60%;
border-bottom: #CC4779 1px dotted;
}
.index .box4 .flex_box4 .inner_right .box_fee td:nth-child(2){
width: 40%;
border-bottom: #CC4779 1px dotted;
text-align: right
}
.index .box4 .flex_box4 .inner_right .bt{
padding-top: 30px;
}
.index .box4 .flex_box4 .inner_right .bt a{
display: block;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box4 .flex_box4 .inner_right .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}

.index .box5{
/*
background-image: url("../images/index/bg_box5.png");
*/
background-size: auto;
padding-bottom: 80px
}
.index .box5 .photo{
padding: 2% 2% 30px 2%;
}
.index .box5 .photo img{
width: 100%
}
.index .box5 .flex_box5{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
flex-direction: column-reverse
}
.index .box5 .flex_box5 .inner_left{
width: 82%;
padding: 0 0 0 10%;
font-weight: 400!important;
}
.index .box5 .flex_box5 .inner_left .subtitle_box5{
width: 80%;
padding-bottom: 30px;
font-weight: 600;
color:#CC4779;
font-family: 'Noto Serif JP';
font-size: 2.5rem;
}
.index .box5 .flex_box5 .inner_left .subtitle_box5 img{
width: 100%;
}
.index .box5 .flex_box5 .inner_left .bt{
padding-top: 50px;
}
.index .box5 .flex_box5 .inner_left .bt a{
display: block;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.index .box5 .flex_box5 .inner_left .bt a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.index .box5 .flex_box5 .inner_right{
width: 80%;
margin: 0 auto;
padding-bottom: 30px
}
.index .box5 .flex_box5 .inner_right img{
width: 100%;
}
/*コンセプト--------------------------------------------------------------------------*/
.concept{
font-family: 'Noto Serif JP';
padding: 50px 0;
}
.concept .subtitle{
color:#CD8587;
text-align: center;
padding: ３0px 0 3px 0;
border-bottom:#CD8587 1px solid;
margin-bottom: 30px;
font-size: 2.0rem;
font-weight: 600;
width: 800px;
max-width: 90%;
margin: 0 auto
}
.concept .box_about{
color: #CC4779;
padding: 50px 0;
line-height: 180%;
font-size: 1.8rem;
font-weight: 600;
width: 90%;
margin: 0 auto 50px auto
}
.concept .box_merit{
width: 90%;
margin: 0 auto;
}
.concept .box_merit .flex_merit1{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 25px 0 50px 0;
}
.concept .box_merit .flex_merit2{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 25px 0 25px 0;
}
.concept .box_merit .photo{
width: 80%;
margin: 0 auto 20px auto
}
.concept .box_merit .photo img{
width: 100%
}
.concept .box_merit .com{
background-color: rgba(255,255,255,0.5);
padding: 4%;
border-radius: 40px;
border-bottom: #CCC 2px solid;
border-right: #CCC 2px solid;
border-top: #FFF 2px solid;
border-left: #FFF 2px solid;
}
.concept .subtitle_merit {
  color: #FFF;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  display: inline-block;/*おまじない*/
  line-height: 1.3;/*行高*/
  background:#CB787A;
  vertical-align: middle;
  border-radius: 25px 25px 25px 25px;/*左側の角を丸く*/
  font-size: 1.6rem;
  font-weight: 600;
  display: block;
  margin-bottom: 30px;
  text-align: center
}
.concept .box_merit .com .bt_trial a{
width: 80%
}
.concept .box1{
width: 1300px;
max-width: 90%;
padding-bottom: 50px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px
}
.concept .box1{
width: 90%;
padding-bottom: 50px;
margin: 0 auto;
}
.concept .box1 .com{
color: #AA184A;
background-color: rgba(255,255,255,0.7);
padding: 3%;
margin-bottom: 30px
}
.concept .box1 .photo{
width: 80%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden
}
.concept .box1 .photo img{
width: 100%;
}
.concept .studio{
width: 1500px;
max-width: 100%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden
}
.concept .studio img{
 width: 100%;
}
/*インストラクター--------------------------------------------------------------------------*/
.instructer{
font-family: 'Noto Serif JP';
background-image: url("../images/instructer/bg_kanako.png");
}
.instructer .kanako{
width: 90%;
margin: 0 auto;
padding-top: 50px;
}
.instructer .kanako .name{
font-size: 3.5rem;
font-family: 'Noto Serif JP';
font-weight: 500;
color:#CC4779;
padding-bottom: 5px;
border-bottom: #CC4779 2px solid
}
.instructer .kanako .name .jpname{
font-size: 1.8rem
}
.instructer .kanako .flex_kanako{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding-top: 20px;
padding-bottom: 50px
}
.instructer .kanako .flex_kanako .com{
width: 100%;
font-size: 1.5rem;
line-height: 160%;
padding: 25px 0
}
.instructer .kanako .flex_kanako .com .movie{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.instructer .kanako .flex_kanako .com .movie .inner{
width: 90%;
background-color: #000;
padding: 5%;
margin-bottom: 15px
}
.instructer .kanako .flex_kanako .com .movie .video{
width: 100%
}
.instructer .kanako .flex_kanako .photo{
width: 80%;
padding: 0 10% 20px 10%
}
.instructer .kanako .flex_kanako .photo img{
width: 100%;
}
.instructer .kanako .flex_kanako .left{
width: 100%;
text-align: 100%
}
.instructer .kanako .flex_kanako .left .text1{
font-size: 2.8rem;
font-weight: 600;
color:#999;
font-family: 'Noto Serif JP';
text-align: center
}
.instructer .kanako .flex_kanako .right{
width: 100%;
}
.instructer .kanako .flex_kanako .right table{
width: 100%;
border-collapse: collapse;
}
.instructer .kanako .flex_kanako .right td{
display: block;
font-size: 1.4rem;
line-height: 160%;
width: 100%;
}
.instructer .kanako .flex_kanako .right td:nth-child(1){
font-weight: 600;
padding-top: 20px
}
.instructer .kanako .flex_kanako .right td:nth-child(2){
border-bottom:#CC4779 1px dotted;
padding-bottom: 3px;
vertical-align: top
}

.instructer .kanako .flex_kanako .right .box_media{
border: #CC4779 1px solid;
padding: 2%;
margin-top: 20px
}
.instructer .kanako .flex_kanako .right .text_media{
color:  #CC4779;
font-size: 1.4rem;
font-weight: 600;
display: inline-block;
padding-right: 2%;
padding-bottom: 10px;
}
.instructer .box_instructer{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.instructer .box_instructer .name_instructer{
font-size: 1.8rem;
font-family: 'Noto Serif JP';
font-weight: 500;
color:#CC4779;
padding-bottom: 5px;
border-bottom: #CC4779 2px solid;
margin-bottom: 15px
}
.instructer .box_instructer .inner{
width: 100%;
border: #CC4779 1px solid;
 border-top-right-radius: 30px;
 border-top-left-radius: 5px;
 border-bottom-left-radius: 30px;
 border-bottom-right-radius: 5px;
margin-bottom: 20px;
font-size: 1.3rem;
padding: 2%;
background: linear-gradient(#FFF, #FCF0F9);
}
.instructer .box_instructer .flex_instructer{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.instructer .box_instructer .inner .photo{
width: 80%;
margin: 0 auto
}
.instructerr .box_instructer .inner .photo img{
width: 100%;
border-radius: 5px;
display: block
}
.instructer .box_instructer .inner .com{
padding-top: 30px;
font-size: 1.4rem;
line-height: 150%;
word-break: break-all;
padding: 30px 4% 4% 4%
}

.instructer .box_instructer .inner .thumb{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 3px 0
}
.instructer .box_instructer .inner .thumb a{
display: block;
width: 30%;
padding-top: 30%;
position: relative;
overflow: hidden
}
.instructer .box_instructer .inner .thumb a img{
display: block;
width: 100%;
position: absolute;
top:10%;
}
.bt_trial{
padding: 50px 0;
text-align: center;
font-size: 1.6rem;
color:#CC4779;
}
.bt_trial a{
display: block;
width: 90%;
margin: 20px auto;
background-color: #CC4779;
color: #FFF;
font-weight: 600;
text-align: center;
padding: 7px 0;
border-radius: 25px;
transition: 0.8s;
position: relative;
}
.bt_trial a:after {
 font-family: FontAwesome;
  content: '\f061'; /* アイコンのunicode */
  position:absolute;
  right: 6px;
  top:8px;
}
.bt_trial a:hover{
background-color: #A23344
}
/*レッスンクラス--------------------------------------------------------------------------*/
.fee{
font-family: 'Noto Serif JP';
}

.fee .box1{
padding-bottom: 50px;
}
.fee .subtitle{
color: #CC4779;
padding: 50px 0;
line-height: 180%;
font-size: 1.8rem;
font-weight: 600;
width: 85%;
margin: 0 auto
}
.fee .subtitle2{
color:#CD8587;
text-align: center;
padding: 50px 0 3px 0;
border-bottom:#CD8587 1px solid;
margin-bottom: 30px;
font-size: 2.5rem;
font-weight: 600;
width: 90%;
margin: 0 auto
}
.fee .box_class{
/*
background-image: url("../images/fee/bg_main.png");
*/
padding: 50px 0
}
.fee .flex_class{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content:center;
margin: 50px auto 0 auto
}
.fee .flex_class::after{
  content:"";
  display: block;
  width:30%;
}
.fee .flex_class .inner{
width: 90%;
box-sizing: border-box;
border-radius: 10px;
margin-bottom: 30px;
background-color: rgba(255,255,255,0.8)
}
.fee .flex_class .inner .classname{
text-align: center;
font-size: 1.8rem;
font-weight: 600;
padding: 5px 0
}
.fee .flex_class .inner .com{
padding: 3%;
line-height: 150%
}
.fee .flex_class .inner .photo{
padding: 5%;
}
.fee .flex_class .inner .photo img{
width: 100%
}
.fee .flex_class .bigi1{
border: #F9E2BB 3px solid;
}
.fee .flex_class .bigi1 .classname{
background-color: #F9E2BB;
color: #EF832F
}
.fee .flex_class .bigi2{
border: #D6EFA6 3px solid;
}
.fee .flex_class .bigi2 .classname{
background-color:#D6EFA6;
color:#517038
}
.fee .flex_class .bigi3{
border: #C1F0F4 3px solid;
}
.fee .flex_class .bigi3 .classname{
background-color:#C1F0F4;
color:#2C8590
}
.fee .flex_class .bas1{
border: #FCDBDC 3px solid;
}
.fee .flex_class .bas1 .classname{
background-color:#FCDBDC;
color:#D04D4F
}
.fee .flex_class .bas2{
border: #C1E1F8 3px solid;
}
.fee .flex_class .bas2 .classname{
background-color:#C1E1F8;
color:#195BA0
}
.fee .flex_class .mid{
border: #F8F8D6 3px solid;
}
.fee .flex_class .mid .classname{
background-color:#F8F8D6;
color:#94A41B
}
.fee .flex_class .hi{
border: #F7DDF8 3px solid;
}
.fee .flex_class .hi .classname{
background-color:#F7DDF8;
color:#B44EAA
}
.fee .flex_class .foc{
border:#E8DED8 3px solid;
}
.fee .flex_class .foc .classname{
background-color:#E8DED8;
color:#86664B
}
.fee .main_fee img{
display: block;
width: 900px;
max-width: 100%;
margin: 0 auto
}

.fee .bt_class a{
display: block;
width: 650px;
border: #CC4779 1px solid;
padding: 7px 0;
text-align: center;
color: #CC4779;
font-size: 1.6rem;
font-weight: 600;
transition: 0.5s;
margin: 30px auto
}
.fee .bt_class a:hover{
background-color: #CC4779;
color: #FFF
}
.schedule{
font-family: 'Noto Serif JP';
}
.schedule .box_schedule{
width: 90%;
margin: 50px auto
}
.schedule .box_schedule img{
width: 100%
}
.schedule .box_schedule embed{
width: 100%;
height: 110vh
}
.fee .flex_bunner{
width: 900px;
max-width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 50px auto
}
.fee .flex_bunner img{
display: block;
width: 33%
}
.fee .box_fee1{
background-color:#FDF4F9;
padding: 50px 0 0 0
}
.fee .text-fee{
width: 80%;
margin: 0 auto 40px auto;
background-color: rgba(255,255,255, 0.7);
padding: 2%
}
.fee .box_fee2{
width: 90%;
margin: 0 auto;
padding: 4%;
border: #CC4779 3px solid;
box-sizing: border-box;
}
.fee .box_fee2 table{
width: 100%;
border-collapse: collapse
}
.fee .box_fee2 td{
padding-bottom:3px;
border-bottom: #CC4779 1px dotted;
display: block
}
.fee .box_fee2 td:nth-child(1){
color: #CC4779 ;
font-size: 1.8rem;
font-weight: 600;
padding-top: 25px;
}
.fee .box_fee2 td:nth-child(2){
border-bottom:#CC4779 1px solid;
font-size: 1.8rem;
font-weight: 600
}

.fee .text-fee{
width: 85%;
margin: 30px auto 50px auto;
line-height: 200%;
font-size: 1.8rem;
background-color: rgba(255,255,255,0.5);
padding: 4%;
border-radius: 20px;
color:#C7272A!important;
font-weight: 500;
border-top: #FFF 2px solid;
border-left: #FFF 2px solid;
border-bottom: #999 2px solid;
border-right: #999 2px solid;
box-shadow: 0px 0px 20px -8px rgba(8,109,207,0.9);
font-family: 'Noto Sans JP';
}
.fee .box_fee1 .box_video{
padding-top: 50px;

overflow: hidden;
position: relative
}

.fee .box_fee1 .box_video #video {
    /*縦横幅指定*/
    width: 100%;
    min-width: 100%;
	background-color:#FDF4F9;
}
.fee .box_fee1 .box_video .filter{
background-image: url("../images/index/ami.png");
position: absolute;
width: 100%;

}

.fee .box_event {
padding-botoom: 50px 0;
margin: 50px 0 0 0;
background-image: url("../images/index/bg_box1.png")
}
.fee .box_event .photo_event img{
width: 100%
}
.fee .box_event .yutube{
padding-top: 20px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 90%;
margin: 0 auto
}

.fee .box_event .yutube .inner{
width: 48%;
margin-bottom: 35px;
}
.fee .box_event .yutube .inner iframe{
width: 100%!important;
height: auto!important;
margin-bottom: 25px;
}
.fee .box_event .yutube .inner .mvtitle{
padding: 3px 0;
text-align: center;
font-weight: 500;
color: #CC4779;
margin-top: -25px
}
.fee .box_event .yutube .inner .com{
font-size: 1.3rem;
line-height: 140%
}


/*Q&A--------------------------------------------------------------------------*/
.faq{
font-family: 'Noto Serif JP';
}
.faq .subtitle{
color:#CD8587;
text-align: center;
padding: ３0px 0 3px 0;
border-bottom:#CD8587 1px solid;
margin-bottom: 30px;
font-size: 2.0rem;
font-weight: 600;
width: 800px;
max-width: 90%;
margin: 50px auto 20px auto
}
.faq .box_faq{
width: 90%;
margin: 50px auto
}
/*アコーディオン全体*/
.faq .accordion-area{
    list-style: none;
    width: 96%;
}

.faq .accordion-area li{
    margin: 10px 0;
}

.faq .accordion-area section {
  border: 1px solid #CC4779;
  margin: 10px 0;
}

/*アコーディオンタイトル*/
.faq .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1.6rem;
    font-weight: 500;
    padding: 3% 3% 3% 50px;
    transition: all .5s ease;
	color: #CC4779;
	line-height: 150%
}

/*アイコンの＋と×*/
.faq .title::before,
.faq .title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #CC4779;
    
}
.faq .title::before{
    top:48%;
    left: 15px;
    transform: rotate(0deg);
    
}
.faq .title::after{    
    top:48%;
    left: 15px;
    transform: rotate(90deg);

}

/*　closeというクラスがついたら形状変化　*/

.faq .title.close::before{
  transform: rotate(45deg);
}

.faq .title.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.faq .box {
display: none;/*はじめは非表示*/
background:#FAECF1;
margin:0 2% 2% 2%;
padding: 3%;
font-size: 1.4rem
}
.faq .box a{
color: #C7206C;
font-size: 1.6rem;
font-weight: 600;
text-decoration: underline
}

/*体験レッスン--------------------------------------------------------------------------*/
.trial{
font-family: 'Noto Serif JP';
}
.trial .box1{
/*
background-image: url(../images/trial/bg_box1.png);
*/
padding: 50px 0
}
.trial .flex_box1{
width:  90%;
margin: 0 auto
}
.trial .flex_box1 .left{
padding-right: 3%;
color: #C7206C;
font-size:1.8rem;
font-weight: 500;
margin-bottom: 20px
}
.trial .flex_box1 .left .text1{
background-color: #FFF;
border: #C7206C 2px solid;
padding: 5px 5px 5px 15px;
font-size: 1.6rem;
border-radius: 20px;
margin-bottom: 20px;
}
.trial .flex_box1 .right{
padding-top: 50px
}
.trial .flex_box1 .right img{
width: 100%;
}
.trial .box3{
padding: 50px 0
}
.trial .box3 .flex_box3{
width: 90%;
margin: 0 auto;
}
.trial .box3 .flex_box3 .left{
text-align: center;
color: #C7206C;
font-family: 'Noto Serif JP';
font-size:2.3rem;
padding-top: 5vw;
font-weight: bold;
margin-bottom: 50px;

}
.trial .box3 .flex_box3 .right{
}
.trial .box3 dl{
width: 900px;
max-width: 90%;
position: relative;
padding: 1.5%;
margin: 2em 0;
margin: 0 auto 40px auto;
background:#FBEEF8;
font-weight: 500;
}
.trial .box3 dl:after {
position: absolute;
content: '';
top: 100%;
left: 30px;
border: 15px solid transparent;
border-top: 15px solid #F9DFFC;;
width: 0;
height: 0;
}
.trial .box3 dt{
background-color:  #FFF;
border-radius: 20px;
color: #C7206C;
font-size: 1.6rem;
font-weight: 600;
padding: 5px 5px 5px 15px;
margin-bottom: 20px
}
.trial .box3 dd{
font-size: clamp(1.3rem ,1.0vw, 1.8rem);
}
.trial .box3 dd .text2{
background-color:#FFF;
padding: 3%;
color: #C7206C;
font-weight: 600
}
.trial .taikenform .subtitle{
font-size: 2.0rem;
font-weight: 600;
text-align: center;
color: #C7206C;
padding-bottom: 3px;
border-bottom: #C7206C 1px solid;
margin-bottom: 30px;
}
.trial .taikenform .box4{
font-size: 1.6rem;
font-weight: 500;
width: 90%;
margin: 0 auto
}
/*お問い合わせ-----------------------------------------*/
.contact{
font-family: 'Noto Serif JP';
width: 90%;
margin: 0 auto;
padding: 100px 0 50px 0;
}

.contact .pagetitle{
position: relative;
width: 90%;
margin: 80px auto 50px auto
}
.contact .pagetitle img{
width: 100%;
}
.contact .pagetitle .text_title{
position: absolute;
text-align: center;
top:50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
width: 52%!important;
}
.contact .pagetitle .text_title img{
width: 100%
}
.contact .box1{
width: 85%;
margin: 0 auto;
padding: 0  0 80px 0;
}
.contact .box1 .text_red{
color: #C00
}
.contact .box_form{
width: 90%;
padding-top: 20px;
padding-bottom: 100px;
border-top:#97215e 1px solid;
margin: 0 auto;
font-weight: 600
}
	
.contact input{ 
font-size:16px; 
} 
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
	font-weight: 600
}
.contact table td{
	padding:1%;
	display: block
}
.contact table td:nth-child(1){
width: 60%;
padding-top: 20px;
}
.contact table td:nth-child(2){
width: 100%;
padding-bottom: 20px;
border-bottom:#97215e 1px solid;
}
.contact table td .flex_komoku{
width: 90%
}
.contact table td .flex_komoku .left{
display: inline-block;
padding-right: 5%
}
.contact table td .flex_komoku .right{
display: inline-block;
box-sizing: border-box;
border: #C00 1px solid;
text-align: center;
color: #C00;
border-radius: 3px;
padding: 0 4%
}
.contact table textarea {
width: 90%;
height: 10em;
	border:none;
	background-color: #f4f4f4;
}
.contact table label{
	display:block;
}
.contact table input[type="text"]{
	width:90%;
	background-color: #f4f4f4;
	height: 25px;
	border: none
}
.contact table .num input[type="text"]{
	width:10%;
}
.contact table input[type="email"]{
	width:90%;
	border:#CCC 1px solid;
	background-color: #f4f4f4;
	height: 25px;
}
.contact .check{
padding-top: 20px;
text-align: center
}
.contact .check a{
color: #97215e;
text-decoration: underline
}
.contact input[type="submit"]{
	width:80%;
	text-align:center;
	font-size:1.6rem;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
display: block;
background-color: #9C1846;
color: #FFF;
text-align: center;
font-weight: 600;
border-radius: 25px;
padding: 10px 0;
transition: 0.8s;

}
.contact input[type="submit"]:hover{
background-color: #c8084c
}
.contact .box2{
padding: 30px 0;
text-align: center;
}
/*お知らせ-----------------------------------------*/
.news{
font-family: "yu-gothic-pr6n", sans-serif;
font-weight: 500;
font-style: normal;
}
.news .pagetitle{
position: relative;
width: 90%;
margin: 80px auto 50px auto
}
.news .pagetitle img{
width: 100%;
}
.news .pagetitle .text_title{
position: absolute;
text-align: center;
top:50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
width: 22%!important;
}
.news .pagetitle .text_title img{
width: 100%
}
.news .flex_news{
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 0 0 50px 0;
max-width: 90%;
margin: 0 auto;
}
.news .flex_news .article{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom: #9C1846 1px solid;
padding-bottom: 20px;
margin-bottom: 50px
}
.news .flex_news .aside{
width: 80%;
}

.news .article a{
width: 48%;
display: block;
box-sizing: border-box;
margin-bottom: 25px
}
.news .article a .photo{
position: relative;
width: 100%;
padding-top: 70%;
overflow: hidden
}
.news .article a .photo img{
width: 100%;
display: block;
position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%)
}
.news .article a .date{
font-size: 1.2rem
}
.news .article a .cat{
display: inline-block;
border: #9C1846 1px solid;
border-radius: 20px;
text-align: center;
color: #9C1846;
padding: 0.2% 2%;
margin-right: 2%;
font-size: 1.2rem;
font-weight: 600;
}
.news .article a .com{
padding-top: 3px;
font-size: 1.4rem;
font-weight: 600;
line-height: 140%
}
.news .flex_news .aside .title_cat{
font-size: 2.0rem;
font-weight: bold;
padding-bottom: 2px;
border-bottom: #666 4px double;
color: #666;
margin-bottom: 25px
}
.news .flex_news .aside li{
list-style: none
}
.news .flex_news .aside a{
display: block;
color: #9C1846;
font-size: 1.6rem;
font-weight: 600;
border-bottom: #9C1846 1px dotted;
margin-bottom: 15px;
transition: 0.8s;
padding: 1%;
padding-bottom: 2px;
}
.news .flex_news .aside a:hover{
background-color: #f4f4f4
}
.news .termname{
font-size: 2.0rem;
color: #666;
border-bottom: solid 3px #666;
width: 1300px;
max-width: 90%;
margin: 0 auto 30px auto;
position: relative;
font-weight: 600;
letter-spacing: 0.1em
}

.news .termname:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #9C1846;
  bottom: -3px;
  width: 20%;
}
.news .kiji{
width: 100%
}
.news .kijititle{
font-size: 2.0rem;
color: #666;
border-bottom: solid 3px #666;
position: relative;
font-weight: 600;
letter-spacing: 0.1em;
margin-bottom: 30px
}

.news .kijititle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #9C1846;
  bottom: -3px;
  width: 20%;
}
.news .kiji img{
max-width: 80%;
display: block;
margin: 10px auto;
padding: 1%;
border: 1px #666 solid
}
.news .bt_news{
width: 1300px;
max-width: 90%;
margin: 0 auto 50px auto;
}
.news .bt_news a{
width: 220px;
display: block;
color: #FFF;
background-color: #9C1846;
text-align: center;
font-size: 1.6rem;
font-weight: 600;
padding: 5px 0;
border-radius: 20px;
}
/*個人情報-----------------------------------------*/
.privacy{
font-family: '游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif';
font-weight: 500;
padding: 2%;
width: 90%;
margin: 100px  auto;
border: #666 1px solid;
}
.privacy .box1{
padding-bottom: 50px
}
.privacy ul{
 padding: 20px 0;
 margin-bottom: 40px;
}
.privacy li{
  border-bottom: #666 1px dotted;
  display: block;
  margin-bottom: 25px;
}
.privacy ol {
background-color: #f4f4f4;
padding: 2%;
font-weight: 600;
margin-top: -20px
}

.pager{
width: 80%;
padding-top: 40px;
font-size: 1.5rem;
color: #333;
margin: 0 auto
}
.pager a{
display: inline-block;
background-color: transparent ;
color: #333;
font-size: 1.6rem!important;
padding: 4px 10px!important;
border: #036 1px solid;
margin-bottom: 20px
}
.pager .prev{
padding: 4px 30px!important;
background-color: #333;
color: #FFF
}
.pager .next{
padding: 4px 30px!important;
background-color: #333;
color: #FFF
}
.pager .dots{
display: inline-block;
padding-right: 6px
}
.pager .current{
display: inline-block;
padding-right: 6px;
font-size: 1.5rem;
font-weight: 600
}
}