@charset "utf-8";
/* CSS Document */

html{font-size:62.5%;/*16px×62.5%=10px*/	
}
body{font-family: ryo-gothic-plusn, tbcgothic-std,sans-serif;
font-size:1.6rem;
font-style: normal;
font-weight: 200,300,400,500,700,800;
color: #1a1a1a;
font-feature-settings:"palt";
margin: 0;
}
img{max-width: 100%;
	height:auto;
}
a{
color: #1a1a1a;
text-decoration: none;
}
.text-center{
text-align:center;
}
ul{
list-style: none;
}
.img-sp{
display: block;
}
.img-sp.slick-box{
display:block
}
.img-pc{
display: none;
}
.img-pc.slick-box{
display: none;
}
.outer-feature-image.sp{
display: block;
}
.outer-feature-image.pc{
display: none;
}

/*--------------------------------------------------
*header
-----------------------------------*/
.header1{

margin: 0 auto;
}
.header2{
margin: 0 auto;
}

.recruiting-text{
position:absolute;
top:70%;
right: 15px;
width:172px;
}
.outer-greeting{
background-color:#20baec;
padding: 30px 25px;
}
.greeting-text{
font-size: 1.6rem;
font-weight: 200;
line-height: 1.75;
color: #1a1a1a;
margin-bottom: 30px;
}
/*--------------------------------------------------
*hero-image
-----------------------------------*/
.hero-image{
position: relative;

}
.hero-image2{
position: relative;
}
.top-underlayer{
margin: 0;
}
.hero-list img{
width: 100%;
}
/*--------------------------------------------------
*logo
-----------------------------------*/
.logo-header{
width: 100px;
position: absolute;
top:15px;
left:0;
right: 0;
margin: auto;

}
.logo{
-webkit-animation: spin 0.5s ease-in ;
    -moz-animation: spin 0.5s ease-in;
}

@-webkit-keyframes spin {
	0% {-webkit-transform: rotate(0deg); width: 0;}
	25%{-webkit-width: 25%;}
	50%{-webkit-width: 50%;}
	75%{-webkit-width: 75%;}
	100% {-webkit-transform: rotate(720deg);width: 100%;}
}
@-moz-keyframes spin {
	0% {-moz-transform: rotate(0deg);width: 0;}
	25%{-moz-width: 25%;}
	50%{-moz-width: 50%;}
	75%{-moz-width: 75%;}
	100% {-moz-transform: rotate(720deg);width: 100%;}
}
.logo-footer{
width: 29.46%;
margin: 0 auto;
}

/*--------------------------------------------------
*btn
-----------------------------------*/
.btn{
display: block;
position: absolute;
box-sizing: border-box;
top:85%;
right:15px;
width: 240px;
height: 40px;
background-color: #fffe00;
border-radius: 10px;
padding: 10px 0;
}
.btn.top{
top:81%;
}
.btn-guide.greeting{
margin-top: 20px;
}
.font-b{
font-weight: 700;
font-size: 1.6rem;
color: #404040;
}
.font-standard{
font-size: 1.5rem;
font-weight: 200;
color: #1a1a1a;	
}
.btn::after{
position: relative;
left:10px;
content:"\f101";
font-family: FontAwesome;
color: #1a1a1a;
font-size: 20px;
}
.btn.banner{
top:74%;
left: 50%;
transform: translate3d(-50%,0,0);
z-index: 110;
}
.btn-guide{
display: block;
width: 140px;
color: #1a1a1a;
font-size: 1.6rem;
background-color: #fffe00;
border-radius: 10px;
padding: 10px 0;
}
.btn-guide::after{
position: relative;
left:10px;
content:"\f105";
font-family: FontAwesome;
font-size: 2rem;
}
.btn-guide.second{
margin-left: 37.5px;
}
.btn-guide.timetable{
margin-left: 37.5px;
}

/*--------------------------------------------------
*navigation
-----------------------------------*/
.navToggle{ 
	display: block;
	-webkit-appearance:none;
    appearance:none;
    position: fixed;/*要素を固定*/
    top: 15px;
    right: 13px;
    z-index: 110;
    width: 42px;
    height: 51px;
    border:none;
    background-color: #fff; 
    overflow : hidden;
    border-radius: 4px;
	opacity: 0.7;
	cursor: pointer;
	text-align: center
}

.navToggle span {
    position: absolute;/*fixedを起点に位置を指定*/
    display: block;
    width: 30px;
    border-bottom: solid 3px #20baec;
   -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
}

.navToggle span:nth-child(1) {
    top: 9px;
}
 
.navToggle span:nth-child(2) {
    top: 18px;
}
 
.navToggle span:nth-child(3) {
    top: 27px;
}
 
.navToggle span:nth-child(4) {
    border: none;
    color: #20baec;
    font-size: 9px;
    font-weight: bold;
    top: 34px;
}
.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}
 
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}
nav.globalMenuPc{
display: none;
}
nav.globalMenuSp{
position: fixed;
top:0;
left:0;
z-index: 100;
width: 100%;
background-color: rgba(255,255,255,0.97);
transform: translateY(-100%);
transition: all 0.5s;
}
/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
    transform: translateY(0%);
}

.nav-list{
padding:50px 0 75px 30px ; 
margin: 0;
}
.nav-item{
margin-bottom: 25px;
list-style: none;
}
.nav-item>a{
color: #1a1a1a;
font-size: 1.8rem;
}
.sns{
font-size: 2.7rem;
}
/*--------------------------------------------------
*utility
-----------------------------------*/
.section-title1{
display: flex;
padding: 65px 0 30px 37.5px;	
}
.section-title2{
padding: 25px 0px 30px;
}
.section-title3{
padding: 50px 0px 40px 37.5px;
display: flex
}
.inner-title{
display: flex;
padding-left: 37.5px;
}
.page-title{
max-width: 240px;
margin: 0 auto 50px;
}
img.page-title{
margin: 0;
}
.section-title_circle{
width: 29vw;
height: 29.333%;
}
.section-title_text{
font-size: 2rem;
font-weight: 700;
padding:50px 0px 0px 10px;
margin: 0;
}
.section-title_text.spacing{
letter-spacing: 0.1em;
}
.section-intro{
margin: 0 37.5px 30px;
font-size:1.6rem;
line-height: 1.5;
font-weight: 300;
}
.intro-text{
font-size:1.6rem;
line-height: 1.5;
}
.section-banner{
position: relative;
padding: 0 15px;

}
.image-banner{
width: 690px;
position: relative;
z-index: 100;
}
.catch-copy{
width:80%;
position: absolute;
z-index: 110;
top:6%;
left:50%;
transform: translate3d(-50%,0,0);
}
.text-recruiting{
width: 80%;
position: absolute;
z-index: 110;
top:67%;
left:50%;
transform: translate3d(-50%,-60%,0);
}
/*--------------------------------------------------
*footer
-----------------------------------*/
#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 0;
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
  border: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #1a1a1a;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #1a1a1a;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

.footer{
padding-top: 75px;
}
.wrap{
display: flex;
justify-content: center
}
.footer-main{
padding: 40px 0  40px;
background-color: #20baec;
}
.footer-item.lesson{
margin-bottom: 34px;
}
.footer-item{
font-size: 1.6rem;
font-weight: 300;
margin-bottom:15px;
}
.footer-list:last-of-type{
margin-bottom:40px ;
}
.fa-envelope{
font-size:20px;
}
.fa-phone-square{
font-size: 24px;
}
.fa-instagram{
font-size:24px
}
.icon{
margin-right:10px;
}
.logo-footer{
margin-bottom: 30px;
}
.copy-rights{
font-size: 1.2rem;
}

/*--------------------------------------------------
*news
-----------------------------------*/

.outer-news{
margin: 0 20px;
border: solid  1px #20baec;

}
.news-list{
display: flex;
font-size: 1.6rem;
font-weight: 200;
line-height: 1.5;
}
.news-list:nth-child(even){
padding: 0 0 12.5px;
}
.news-list:nth-child(odd){
padding: 12.5px 0 0 ;
}
.nadeshiko-middle-bold{
font-weight: 600;
}
.news-list:first-of-type{
padding: 25px 0;
}
.news-list:last-of-type{
padding: 25px 0;
}
.news-title{
padding-left: 25px;
padding-right: 20px;
}
.color-NewsTitle{
color: #F74AEE;
}
.news-date{
padding-left: 20px;
}
.outer-underlayerNews{
background-image:url("../images/bgi-underlayernews.png");
border-image-repeat: repeat;
padding: 35px 30px ;	
}
.news-container{
margin-bottom: 35px;
}
.news-container:last-child{
margin-bottom: 0;
}
.underlayer-NewsDate{
margin-bottom: 25px;
padding: 10px;
background-color: #20baec;
width: 90px;
border-radius: 5px;
font-size: 1.6rem;
}
.underlayer-NewsTitle{
font-size: 1.7rem;
margin-bottom: 25px;
font-weight: bold;
}
.underlayer-NewsTitle2{
font-size:1.6rem;
margin-bottom: 10px;
font-weight: bold;
}

.underlayer-Match{
font-size:1.6rem;
margin-bottom: 10px;
font-weight: bold;
	margin-top: 10px;
text-decoration: underline;
}
.underlayer-NewsTitle-result{
font-size:1.6rem;
margin-top: 10px;
font-weight: bold;
margin-left: 20px;
}
.news-listing{
font-size: 1.6rem;
font-weight: bold;
}
.underlayer-NewsText{
font-size:1.5rem;
line-height: 1.5;
font-weight: 200;
}
.underlayer-NewsText:first-of-type{
margin-bottom: 20px;
}
hr{
margin: 0 0 25px 0;
}
.news-insta{
margin-top: 20px;
}
.img-news-200705{
text-align: center;
}
.img-news200705-2{
paddong-top: 20px;
}
.img-news-200921{
text-align: center;
}
.img-news-210403{
text-align: center;
margin: 20px 0 40px;
}
.img-news-210410{
text-align: center;
margin: 20px 0 40px;
}
.news-icon{
text-align: center;
}
.news-girl-icon{
max-width: 120px;
}
.news-komorebi{
max-width: 260px;
text-align: center;
		
}
.img-news-210602{
text-align: center;
margin: 30px 0;
}
.img-news-210612{
text-align: center;
margin: 40px 0 40px;
}

/*--------------------------------------------------
*policy
-----------------------------------*/
.unit-policy:nth-of-type(even){
padding-left: 25px;
background-color: #20baec;
margin-left: 37.5px;
padding-right: 25px
}
.unit-policy:nth-of-type(odd){
padding-right: 25px;
background-color: #79cde8;
margin-right: 37.5px;
padding-left: 25px
}
.policy-title{
padding: 25px 0;
font-size:2rem;
font-weight:600;
}
.title-number{
font-size:30px;
color:#fffe00;
font-family: tbcgothic-std;
font-weight: 800;
text-stroke: 1px #1a1a1a;
-webkit-text-stroke: 1px #404040;
margin-right:10px;
}
.title-number.section{
margin: 0;
}
.policy-text{
font-size: 1.6rem;
line-height: 1.5;
font-weight: 200;
margin-bottom: 40px;
padding-bottom: 25px;
}

/*--------------------------------------------------
*feature
-----------------------------------*/
.feature-outer{
padding: 25px 0;
background-color: #20baec;
}
.feature-outer:last-of-type{
background-color: #79cde8;
}
.outer-feature-image.sp{
display: flex;
padding-left: 60px;
}
.outer-feature-image:last-of-type{
padding-left:25px ;
}
.feature-image{
width: 54%;
height: 54%;
margin-bottom: 20px;
}
.feature-voice{
width:  34.13%;
height: 34.13%;
margin-top: 50px;
}
.feature-voice:last-of-type{
margin-top: 20px;
}
.feature-title{
font-size:1.9rem;
font-weight: 300;
margin-bottom: 20px;	
}
.text-bold{
font-weight: 800;
font-size: 2.4rem
}
.feature-text{
font-size:1.6rem;
line-height: 1.5;
padding: 0 37.5px;
}
.text-pink{
color: #ff58c6;
}

/*--------------------------------------------------
*coach
-----------------------------------*/

.img-coach{
text-align: center;
}
.image-coach{
margin-bottom: 20px;
border: solid 2px #20baec;
max-width: 200px;
}
.wrap-coach{
padding: 0 60px;
margin: 0 auto 40px;
}
.wrap-coach:last-of-type{
margin-bottom: 0;
}
.coach-name{
font-size: 1.6rem;
text-align: center;
margin-bottom: 10px;
}
.coach-text{
line-height: 1.5;
}

/*--------------------------------------------------
*team
-----------------------------------*/
.img-team{
	margin-top: 30px;}
.a-team{
padding: 50px 37.5px;
background-color: #20baec;
margin: 0;
}
.b-team{
padding: 50px 37.5px;
background-color: #79cde8;
margin: 0;
}
.c-team{
padding: 50px 37.5px;
background-color: #20baec;
margin: 0;
}
.team-name{
font-size:1.8rem;
margin-bottom: 25px;
font-weight:bold;
}
.team-about{
font-size:1.6rem;
font-weight: 200;
margin-bottom: 20px;
line-height: 1.5;
margin: 0 auto 20px;
}
.btn-guide.practice{
margin: 30px 0 0 37.5px;
}
/*--------------------------------------------------
*TimeTable
-----------------------------------*/

.btn-timetable{
	margin-top: 40px;
}
.timetable-container:nth-of-type(3){
margin-bottom: 40px;
	}

.timetable-container{
background-color: #20baec;
padding: 30px 0;
}
.timetable-container:nth-child(2){
background-color: #79cde8;
padding: 30px 0;
}
.timetable-container:nth-child(3){
background-color:#20baec;
margin-bottom: 30px;
}
.timetable-title{
font-size:1.7rem;
margin: 0 0 25px  37.5px;
}
.weekday-container{
font-size: 1.6rem;
display: flex;
margin-bottom: 30px;

}
.weekend-container{
font-size: 1.6rem;
display: flex;
margin-bottom: 25px;
}
.weekday-title{
width: 50px;
height: 30px;
margin: 0 25px 0 40px;
line-height: 2;
background-color: #ffffff;
text-align: center;
border-radius: 5px;	
}
.time-detail{
line-height: 1.8;
}
.weekend-title{
width: 50px;
height: 30px;
margin: 0 25px 0 40px;
line-height: 2;
background-color: #fffe00;
text-align: center;
border-radius: 5px;	
}
.timetable-comment{
font-size:1.6rem;
margin-left: 50px;
}
/*--------------------------------------------------
*Place
-----------------------------------*/
.place-container{
display: flex;
margin-left: 20px

}
.text-regular{
font-size:1.7rem;
font-weight: 500;
}
.place-text{
font-size: 1.4rem;
line-height: 1.8;
margin-bottom: 25px;
}
.place-comment{
font-size: 1.5rem;	
padding: 0 20px;
font-weight: 200;
}
.place-day{
font-size:1.7rem;
font-weight: 600;
width: 52px;
height: 52px;
border-radius: 50%;	
border: solid 1px #1a1a1a;
line-height: 55px;
text-align: center;
margin-right: 15px;
}
.place-day.weekend{
background-color: #fffe00;
border: none;
}
.outer-map{
padding: 0 30px;

}

.access-map{
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
margin-bottom: 50px;
border: solid 2px #20baec;

}
.access-map:last-of-type{
margin-bottom: 25px;
}
.access-map iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
/*--------------------------------------------------
*Price
-----------------------------------*/
.price-container{
padding: 30px 0px;
background-color: #79cde8;
border-radius: 5px;
margin: 0 25px 105px;
}
.price{
text-align: center;
font-size: 1.6rem;
font-weight: 300;
margin-bottom: 25px;
border-bottom: solid #fffe00 2px;
}
.text-stroke{
margin-left: 5px;
font-size: 1.9rem;
font-weight: 600;
text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}
.comment-item_price{
font-size: 1.5rem;
line-height: 1.5;	
}
.price-comment{
padding-left: 12px;
}
.comment-number{
margin-right: 8px;
}

/*--------------------------------------------------
*contact
-----------------------------------*/
.tel-container{
text-align: center;
margin: 0 20px 60px;
border: solid 1px #bbbbbb;
padding: 10px;
}
.tel-text-sp{
font-size:1.5rem;
line-height: 2.5;
}
.tel-text-pc{
display: none;
}

.btn-tel{
  position: relative;
  display: block;
  border-radius: 50px;
  color: #1a1a1a;
  font-weight: bold;
  text-align: center;
  background: #fffe00;
  padding: 5px 0;
  margin: auto;
  max-width: 220px;
}

.btn-tel::after{
  content: "";
  background: url(img/telephone.svg) no-repeat center;
  background-size: contain;
  width: 24px;
  height: 24px;
  position: absolute;
  top: calc(50% - 12px);
  left: 15px;
}
.tel-text span{
font-size: 18px;
}
.line-outer{
text-align: center;
}
.outer-formtitle{
background-color: #20baec;
text-align: center;
line-height: 1.5;
padding: 20px 0;
margin-bottom: 50px;
}
.outer-formtitle.second{
background-color:#79cde8; 
}
.font-24{
font-size: 2.4rem;
font-weight: 500;
}
.form-title{
font-size: 2rem;
font-weight: 500;
}
.logo-line{
width: 30vw;
margin-bottom: 40px;
}
.line-btn{
margin-bottom: 25px;
}
.line-btn>a:hover{
opacity:inherit;
border: none;
}
.text-maintenance{
padding: 0 20px 50px;
font-size: 1.8rem;
font-weight: 600;
line-height: 1.5;
}
.text-maintenance::before{
font-family: FontAwesome;
font-size: 2rem;
content: "\f071";
color: #fffe00;
}
.text-maintenance::after{
font-family: FontAwesome;
font-size: 2rem;
content: "\f071";
color: #fffe00;
}
.btn-contact{
color: #1a1a1a;
width: 215px;
font-size: 1.6rem;
font-weight: 500;
background-color: #fffe00;
border: none;
border-radius: 5px;
padding: 10px 20px;
line-height: 1.2;
}
.btn-contact::after{
position: relative;
left:10px;
content:"\f105";
font-family: FontAwesome;
font-size: 2rem;
}
.btn-contact.form{
width: 150px;
}
.line-text{
text-align: left;
padding: 0	30px;
font-size: 1.5rem;
line-height: 1.5;
margin-bottom: 50px;
}
button[type="submit"] {
cursor: pointer;
}
button[type="submit"]:hover {
opacity: 0.65;
border: solid 1px #1a1a1a;
}
.form-group{
margin-bottom: 30px;
font-size:1.5rem;
}
.form-label{
line-height:2.2;
margin:0 10px 0 20px;
width: 95px;	
}
.input-field{
width: 210px;
}

.form-parts{
display: flex;
margin: 0 20px 20px 0;
}

form{
font-size: 1.6rem;
font-weight: 200;
}
.form-group_title{
font-weight: 300;
padding: 10px 0 10px 20px ;
margin: 0 15px 30px;
border-bottom: solid #79cde8 2px;
border-top: solid #79cde8 2px; 
}
.text-red{
color: #fa4f4f;
margin-left: 20px;
}
.comment-item_contact{
padding: 0 15px;
line-height: 1.5;
}
input[type="text"],input[type="email"],input[type="tel"],textarea,select{
border:solid #898989 1px;
padding: 5px;
line-height: 1.5;
min-width: 185px;
}
.selector{
margin-bottom: 50px;
}
.textarea{
text-align: center;
margin-bottom: 50px;
}
textarea{
padding: 5px;
line-height: 1.5;
margin: 0;
}

.outer-contact_detail{
padding: 0 15px;
	text-align: center;
}

.selector{
margin-left: 20px;
margin-bottom: 30px;
}
.btn-tel::after{
position: relative;
left:10px;
content:"\f105";
font-family: FontAwesome;
color: #1a1a1a;
font-size: 20px;
}







@media screen and (min-width:750px){
a{
transition: all 0.2s;
}
a:hover{
opacity: 0.7;
border: solid 1px #1a1a1a;
}	
.img-pc{
display: block;	
width: 100%;
}
.img-sp{
display: none;
}
.img-pc.slick-box{
display: block;
	}
	.img-sp.slick-box{
display: none;
	}
.tel-text-sp{
display: none;
	}
.tel-text-pc{
display: block;
font-size:1.5rem;
line-height: 2.5;
}
 a[href^="tel:"]{
pointer-events: none;
  }

/*--------------------------------------------------
*nav
-----------------------------------*/
.navToggle{
display: none;
}
nav.globalMenuSp{
display: none;
}
.outer-globalMenu{
position: relative;
height: 60px;	
width: 100%;
padding: 0;
}
	
nav.globalMenuPc{
text-align: justify;
top:0px;
display: block;	
background-color: #f2f2f2;
box-sizing: border-box;
}
.globalMenuPc{
justify-content: space-between;

	}
.globalMenuPc.fixed{
position: fixed;
top:0;
	}
.nav-list{
display: flex;
align-items: center;
padding: 0 ;
margin: 0;
width: 100%;
justify-content: space-around;
}
.nav-item{
margin: 0;
}
.nav-item__link{
margin-left: 20px;
margin-bottom: 0;
	}
.nav-item>a{
display: block;
line-height:60px;
font-size: 1.5rem;
padding: 0;
margin: 0;
}	
.nav-item.current>a{
padding: 0 4px;		
border-bottom: solid 4px #fffe00;
}
.nav-item>a:hover{
border: none;
opacity: 0.7;
border-bottom: solid 5px #fffe00;
}
.bgc-yellow>a{
background-color: #fffe00;
padding: 0 5px;
}
.nav-item.bgc-yellow>a:hover{
border-bottom: none;
border: solid 1px #1a1a1a;
	}
.nav-item__sns{
font-size: 3rem;
margin-left: 50px;
}	
.nav-item__logo{
width: 65px
}
.outer-globalMenu.is-fixed {
position: fixed;
top: 0;
left: 0;
z-index: 120;
width: 100%;
}
.nav-logo{
display: block;
}
.nav-item__logo>a:hover{
border: none;
animation: rotate-anime 1s linear infinite;
}
@keyframes rotate-anime {
  0%  {transform: rotate(0);}
  100%  {transform: rotate(360deg);}
	}
/*--------------------------------------------------
*logo
-----------------------------------*/	
.logo-header{
width: 150px;
top:6%;
}
	.logo-header.contact{
top:13%
	}
.logo{
-webkit-animation: spin 0.5s linear ;
    -moz-animation: spin 0.5s linear;
transform: scale(1.2) ;
	
}

@-webkit-keyframes spin {
	0% {-webkit-transform: rotate(0deg);}
	100% {-webkit-transform: rotate(720deg);}
}
@-moz-keyframes spin {
	0% {-moz-transform: rotate(0deg);}
	100% {-moz-transform: rotate(360deg);}
}
/*--------------------------------------------------
*header
-----------------------------------*/	
.header1{
margin: 60px auto 0px;
}
.header2{
margin:60px auto 0px;
}
	.header3{
margin: 60px auto 0px
	}
.outer-greeting{
padding: 50px 125px;
}	
.greeting-text{
max-width: 1000px;
font-size:1.8rem;
font-weight: 300;
margin: 0 auto;
line-height: 2;
}	
.recruiting-text{
width: 345px;	
top:74%;
right: 15px;
	}
.btn{
width: 410px;
height: 70px;
top:87%;
right: 15px;

}
.btn::after{
font-size:3rem;
}
.btn.top{
top:84%;
	}
.font-b{
font-size:2.8rem;
}
.font-standard{
font-size: 2.2rem;
line-height: 60px;
}
/*--------------------------------------------------
*section
-----------------------------------*/	
.section-title_circle{
width: 200px;
height: 200px;
	}	
.section-title1{
padding: 80px 100px 60px ;
margin: 0 auto;
width: 900px;
	}	
.section-title2{
padding: 60px 0px 70px;
	}
	.section-title3{
padding: 100px 100px 80px;
width: 900px;
margin: 0 auto;
	}
.section-title_text{
font-size:3.6rem;
font-weight: 600;
padding:118px 0px 50px 50px;
width: 400px;
letter-spacing: 0.3em
}	
.section-title_text.spacing{
letter-spacing: 0.5em;
	}
.title-number{
font-size: 6rem;
margin-right: 20px;
	}
img.page-title{
max-width: 420px;
margin-bottom: 70px;
}
.page-title{
max-width: 420px;
margin: 0 auto;
	}
.inner-title{
padding: 0  100px;
margin: 0 auto;
width: 900px;
}
	
/*--------------------------------------------------
*news
-----------------------------------*/	
.news-title a:hover{
border: none;
}
.news-title{
padding-left: 60px;
font-size: 1.8rem;
}
.outer-news{
max-width: 900px;
margin: 0 auto;
}
.news-list:nth-child(even){
padding: 0 0 25px;
}
.news-list:nth-child(odd){
padding: 25px 0 0 ;
}
.news-list:first-of-type{
padding: 50px 0;
	}
.news-list:last-of-type{
padding: 50px 0;
}
.news-date{
padding-left: 70px;
font-size: 1.8rem;
}
.outer-underlayerNews{
padding: 0 120px;
background-image: none;
max-width: 900px;
margin: 0 auto;
}
.news-bgimg{
padding: 50px;
background-image: url(../images/bgi-underlayernews.png);
}
.news-girl-icon{
min-width: 300px;
}

.img-news-210602{
text-align: center;
margin: 25px 0;
max-width: 60%;
}
.img-news-210612{
margin: 50px 0 50px;
text-align: center;
	}

/*--------------------------------------------------
*policy
-----------------------------------*/	
.unit-policy{
display: flex
}
.unit-policy:nth-of-type(odd){
margin: 0  50px 50px 0;
padding: 20px 50px;
}
.unit-policy:nth-of-type(even){
margin: 0 0 50px 50px;
padding: 20px 50px;
}
.policy-text{
margin: 0;
min-width: 400px;
padding: 40px 0;
}
.policy-title{
min-width: 350px;
font-size: 3.2rem;
margin-right: 60px;
}
	
/*--------------------------------------------------
*btn
-----------------------------------*/	
.btn-guide{
width: 180px;
height: 55px;
box-sizing: border-box;
margin-left: 125px;
line-height: 35px;
font-weight: 500;
}
.btn-guide.greeting{
margin-left: 0;
margin-top: 50px;
}
	.btn-guide.second{
margin-left: 125px;
}
	
/*--------------------------------------------------
*feature
-----------------------------------*/
.sp{
display: none;
}

.outer-feature-image.pc{
display: flex;

}

.feature-outer{
padding: 40px 0;
margin: 0 auto;
}
.feature-container{
max-width: 900px;
margin: 0 auto;
}
.feature-image{
width: 320px;
margin: 0 40px 0 0;
}
	
.outer-feature-image:last-of-type{
padding: 0 100px;
max-width: 900px;
margin: 0 auto;
}
.outer-feature_text{
min-width: 400px;
text-align: right;
	}
	.outer-feature_text.bus{
text-align: left;
	}
.feature-voice{
width: 35%;
height: auto;
margin-bottom: 40px;

	}
.feature-voice-2nd{
width: 40%;
margin-bottom: 40px;
margin-right: -30px;
}
	

.text-bold {
font-weight: 700;
font-size: 4.5rem;
}
.feature-title {
font-size: 3.6rem;
font-weight: 300;
margin-bottom: 40px;
letter-spacing: 0.3em;
}
.feature-text {
font-size: 1.8rem;
line-height: 2;
margin: 0 auto;
text-align: left;	
}
	
/*--------------------------------------------------
*contact
-----------------------------------*/		
.wrap-banner{
max-width: 1000px;
margin:auto;
}
.section-intro{
margin-bottom: 40px;
text-align: center;
font-size:1.8rem;
}
.section-intro.contact{
padding: 0 100px;
max-width: 900px;
text-align: left;
line-height: 2;
margin: 0 auto 40px;
}
.intro-text {
font-size: 1.8rem;
line-height: 2;
}
.section-banner{
padding: 0 160px; 
	}
.image-banner {
width: 100%;
}
.catch-copy{
width: 58%;
	}	
.text-recruiting{
width: 58%;
	}
.tel-container{
width: 400px;
margin: 0 auto 80px;
padding: 15px;
}
.tel-text{
font-size: 1.6rem;
line-height: 2;
}
.fontW600{
font-weight: 600;
}
.br-form{
display: none
}
.outer-formtitle{
padding: 30px 0;
margin-bottom: 80px;
}
.form-title{
font-size: 2.4rem;
letter-spacing: 0.1em;
}
.font-24{
font-size: 3.2rem;
font-weight: 600;			
}
.logo-line{
width: 16vw;
margin-bottom: 50px;
}
.line-btn{
margin-bottom: 40px;;
	}
.line-text{
max-width: 500px;
margin: 0 auto 100px;
line-height: 1.8;	}
.btn-contact{
width: 250px;
line-height: 1.5;
}
.outer-formtitle.second{
margin-bottom: 60px;
}	
.text-maintenance{
max-width: 700px;
margin: 0 auto;
	}
.form-group{
font-size: 1.8rem;
letter-spacing: 0.1em
	}
.form-container{
max-width: 800px;
margin: auto;
}
.form-group_title{
padding: 20px 0 20px 40px;
margin: 0 0 30px 0;
}
.form-label{
margin: 0 50px 0 40px;
	}
input[type="text"], input[type="email"], input[type="tel"]{
width: 300px;
line-height: 1.6;	}
select{
width: 250px;
line-height: 1.6;
}
textarea{
width: 400px;
line-height: 1.6;
}
.form-parts{
margin: 0 0 30px 0;
}
.form-label{
width: 140px;
}
.form-label.mail{
font-size:1.8rem;
letter-spacing: normal;
box-sizing: inherit;
}
.comment-item_contact{
padding: 0 40px;
}
.selector{
margin: 0 0 40px 0;
}
.btn-contact.form{
width: 250px;
}
.outer-contact_detail{
padding: 0 80px;
text-align: center;	}
.textarea{
padding: 0;
margin-bottom: 80px;
}
	
/*--------------------------------------------------
*footer
-----------------------------------*/
.footer{
padding-top: 100px;
}
.footer-list{
display: flex;
justify-content: space-around;
padding: 0 125px;
}
.logo-footer{
text-align: center;
width: 100%;
}
.img-footer{
width: 150px;
}
.footer-item{
margin: auto;
	}
	.footer-item.tel{
margin-left: 30px;
	}
.footer-item>a:hover{
border: none;
}	

.footer-item.lesson{
margin-bottom:0;
	}	
	
/*--------------------------------------------------
*coach
-----------------------------------*/	
.wrap-coach{
display: flex;
padding: 0px 125px ;
margin: 0 auto;	
max-width: 900px;
margin-bottom: 50px;
}
.wrap-name{
margin-left: 40px;
font-size: 1.8rem;
line-height: 2;
}	
.coach-name{
padding-top: 60px;
margin-bottom: 30px;
text-align: inherit;
font-size: 1.8rem;
line-height: 2;
}
.image-coach{
display: block;
margin-bottom: 0;
max-width: 220px;
}
	
/*--------------------------------------------------
*class
-----------------------------------*/	
.a-team{
padding:50px 100px 80px;

}	
.b-team{
padding:150px 100px 80px;

}
.c-team{
padding:100px 100px;
display: flex;	
}	
.box-team{
max-width: 900px;

margin: auto;
}	
.container-team_about{
margin-right: 50px;
}	
.team-about{
line-height: 2;
}	
.team-name{
margin: 40px 0;
}
.img-team{
max-width: 500px;
	margin-top: 80px;
	display: block;
  margin-left: auto;
  margin-right: auto;
}	
.btn-guide.practice{
margin: 40px 0 0 100px;
}
	
/*--------------------------------------------------
*news
-----------------------------------*/
.underlayer-NewsDate{
margin-bottom: 40px;
width: 100px;
font-size: 1.7rem
}
.news-container{
margin-bottom: 54px;
}
.underlayer-NewsTitle{
margin-bottom: 40px;
font-size: 1.8rem;
font-weight: 600;
}
.outer-newsFlex{
display: flex
}	
.img-news1{
max-width: 350px;
}	
.underlayer-NewsText{
font-size: 1.6rem;
margin-right: 40px;
}
	
	
/*--------------------------------------------------
*TimeTable
-----------------------------------*/	
.timetable-container{
max-width: 900px;
margin: auto;
padding: 45px 0
	}	
	.days-container{
display: flex;
padding: 0 70px;
margin-bottom: 40px;
	}
.weekday-container{
margin: 0 40px 0px;
	}
	.weekend-container{
margin: 0;
	}
.timetable-title{
margin: 0 0 40px;
padding: 0 70px;
letter-spacing: 0.4em;
	}
	.slash{
padding: 0 15px;
	}
	
.timetable-comment{
text-align: center;
font-size: 1.7rem;
margin-left: 0;
	}
	.timetable-container:nth-of-type(3){
margin-bottom: 40px;
	}
	.btn-timetable{
max-width: 900px;
    margin: auto;
    padding: 45px 0;
	}
	
/*--------------------------------------------------
*Place
-----------------------------------*/
.place-container{
margin: 0 auto 10px;
max-width: 800px;
}
.outer-map{
max-width: 800px;
margin: auto;
}
.br-place{
display: none;
}
.access-map{
border: solid 4px #20baec;
}
.access-map:last-of-type{
margin-bottom: 40px;
}
.place-day{
width: 65px;
height: 65px;
font-size:2.2rem;
line-height: 65px;
margin-right: 40px;
}
.place-text{
font-size: 1.6rem;
margin-bottom: 0;
line-height: 90px;		
}
.place-comment{
font-size: 1.6rem;
padding: 0;
}
.text-regular{
font-size: 2rem;
margin-right: 20px;
font-weight: 600;
}
.comment-outer{
max-width: 800px;
margin: auto;
}	
/*--------------------------------------------------
*Price
-----------------------------------*/	
	.price-container{
max-width: 800px;
    margin: 0 auto 150px;
    padding: 45px 0 ;
	}
.price{
font-size:1.8rem;
margin: 0 0 50px;
letter-spacing: 0.15em;
	}
	.text-stroke{
font-size: 2.8rem;
margin-left: 15px;
	}
	.comment-number{
margin-right: 10px;
	}
.price-comment{
padding: 0 60px ;
max-width: 700px;
margin: 0 auto;
	}
	.comment-item_price{
font-size: 1.6rem;
line-height: 2;
	}



