@charset "UTF-8";
/*busroute*/

/*共通設定*/
.footer-back-area {
 background: #FFF;
}
.fix-btn {
  top: 44%; }

/*タブレットからPC*/
@media (min-width: 1025px) and (max-width: 1300px) {
 
/*終わり*/ }

/*タブレット*/
@media (max-width: 1024px) {
 
/*終わり*/ }

/*スマホ*/
@media (max-width: 599px) {
 
/*終わり*/ }

/*スマホ SE*/
@media (max-width: 380px) {
 
/*終わり*/ }

/* PC画面サイズ用（1025px～1920px） */
@media (min-width: 1025px) {
 
/*終わり*/ }



/* ================================
   school/fitness Styles

   01 common
   02 fitness
   03 detail
   04 plan

   =================================== */


/*-------------------------------------------------------
01 common
--------------------------------------------------------- */

/* == common == */
:root {
  --fs16: 0.8vw;
  --fs17: 0.85vw;
  --fs18: 0.9vw;
  --fs20: 1.0vw;
  --fs23: 1.15vw;
  --fs26: 1.3vw;
  --fs28: 1.4vw;
  --fs30: 1.5vw;
  --fs34: 1.7vw;
  --fs40: 2.0vw;
  --cwht: #ffffff;
  --ctxt: #3e3a39;
  --cbdr: #808080;
  --cbk1: #f8f8f8;
  --cred: #e61e28;
  --cpur: #a54a96;
  --cpub: #9E005D;
  --rFlex: flex;
  --r28: 28%;
}
@media screen and (min-width:1301px) {
  :root {
    --fs16: 16px;
    --fs17: 17px;
    --fs18: 18px;
    --fs20: 20px;
    --fs23: 23px;
    --fs26: 26px;
    --fs28: 28px;
    --fs30: 30px;
    --fs34: 34px;
    --fs40: 40px;
  }
}
@media screen and (max-width:1300px) {
  :root {
    --fs16: 1.0vw;
    --fs17: 1.0vw;
    --fs18: 1.1vw;
    --fs20: 1.2vw;
    --fs23: 1.4vw;
    --fs26: 1.5vw;
    --fs28: 1.7vw;
    --fs30: 1.9vw;
    --fs34: 2.1vw;
    --fs40: 2.5vw;
  }
}
@media screen and (max-width:1024px) {
  :root {
    --fs16: 13px;
    --fs17: 14px;
    --fs18: 15px;
    --fs20: 16px;
    --fs23: 19px;
    --fs26: 21px;
    --fs28: 22px;
    --fs30: 23px;
    --fs34: 26px;
    --fs40: 30px;
    --rFlex: block;
    --r28: 100%;
  }
}
@media screen and (max-width:640px) {
  :root {
    --fs16: 12px;
    --fs17: 13px;
    --fs18: 14px;
    --fs20: 15px;
    --fs23: 16px;
    --fs26: 17px;
    --fs28: 20px;
    --fs30: 22px;
    --fs34: 24px;
    --fs40: 28px;
    --rFlex: block;
    --r28: 100%;
  }
}

section.parent {
	padding: 0;
	margin: 0;
}
section.parent section {
	max-width: 1300px;
	width: 100%;
	margin: 0 auto;
 padding: 7em 0 0em;
 letter-spacing: 0;
}
section.parent section a {
  transition: all .15s;
}
div.ctgpage img {
  width: 100%;
}
.resBR {
  display: none;
}
.resBRN {
  display: block;
}

@media screen and (max-width:1300px) {
	section.parent section {
  max-width: none;
		width: auto;
		margin: 0 20px;
	}
}
@media screen and (max-width:1024px) {
  section.parent section {
    font-size: 16px;
  }
  .resBR {
    display: block;
  }
  .resBRN {
    display: none;
  }
}
@media screen and (max-width:599px) {
}

/*-------------------------------------------------------
02 fitness
--------------------------------------------------------- */

section.parent section.busmap {
  padding-top: 4em;
  position: relative;
}
.busmap > hgroup {
  position: relative;
  margin: 0 auto 5em;
  width: 100%;
  max-width: 56em;
  text-align: center;
  font-size: var(--fs16);
}
.busmap > hgroup h2 {
  padding-bottom: .4em;
  margin-bottom: .4em;
  font-size: var(--fs40);
  font-weight: 700;
  border-bottom: 1px solid var(--ctxt);
}

.price{
 height: auto;
 background: #FFF;
 margin: 0vh 0 0 0;
}
.price {
  padding: 3.6458333333vw 0 2.9166666667vw;
  /*text-align: center;*/
}
.price-container {
  width: 72.5vw;
  margin: 0 auto;
}
.price-title {
  text-align: center;
}
.price h3 {
  display: inline-block;
  width: 41.6666666667vw;
  margin: 0 auto;
  padding: 0.9375vw 0;
  color: #fff;
  font-size: 1.4583333333vw;
  text-align: center;
  border-radius: 100vw;
  z-index: 2;
}
.price p.lesson{
 display: block;
 margin: 3vh auto;
 text-align: center;
}
.price__contents {
  margin-top: -2.0833333333vw;
  margin-bottom: 10vh;
  padding: 4.5833333333vw 2vw 3.5416666667vw;
  border: solid 2px #e61e28;
  border-radius: 2vw;
  font-size:var(--fs18);
 
}
.price__contents iframe {
    display: block;
    max-width: 850px;
    width: 100%;
    min-height: 1050px;
    margin: 0 auto !important;
}

.price.join dl {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 1em;
  padding-bottom: 0em;
  /*margin-bottom: 1.5em;*/
}
.price.join dl dt {
  color: #E61E28;
  font-size: var(--fs18);
  letter-spacing: .05em;
  font-weight: 600;
}
.price.join dl dd {
  font-weight: 600;
  font-size: var(--fs18);
  letter-spacing: .05em;
}
.price.join dl dd:nth-of-type(1)::after {
  content: '／';
  margin-left: 1em;
}
.price.join h3{
  background-color: #E61E28;}
.price__contents.join,
.price__contents.kaigohoken{
  background-color: #FFF;
  text-align: center;}

@media screen and (min-width:1025px) {
.price__contents.join,
.price__contents.kaigohoken {
  border: solid 2px #E61E28;
  /*background-color: #f8f8f8;*/}
}
.price.swimming h3{
  background-color: #5CC2CF;}
@media screen and (min-width:1025px) {
.price__contents.swimming {
  border: solid 2px #5CC2CF;
  /*background-color: #f0fafa;*/}
}
.price.gymnastics h3{
  background-color: #E95513;}
@media screen and (min-width:1025px) {
.price__contents.gymnastics {
  border: solid 2px #E95513;
  /*background-color: #FFFAE0;*/}
}
.price.soccer h3{
  background-color: #009844;}
@media screen and (min-width:1025px) {
.price__contents.soccer {
  border: solid 2px #009844;
  /*background-color: #F0FAF0;*/}
}
.price.fitness h3{
  background-color: #A54A96;}
@media screen and (min-width:1025px) {
.price__contents.fitness {
  border: solid 2px #A54A96;
  /*background-color: #f8f8f8;*/}
}

@media screen and (max-width:1500px) {
}
@media screen and (max-width:1024px) {

 .price p.lesson{
  font-size: var(--fs18);
  font-weight: 600;
 }
 .price.join dl {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: 0 5em;
   padding-bottom: .5em;
   margin-bottom: .5em;
        width: 50%;
        margin: auto;
 }
 .price.join dl dt {
   color: #E61E28;
  font-size: var(--fs18);
   letter-spacing: .05em;
   font-weight: 600;
 }
 .price.join dl dd {
   font-weight: 600;
  font-size: var(--fs18);
   letter-spacing: .05em;
 }
 .price.join dl dd:nth-of-type(1)::after {
   display: block;
   content: '';
 }

  .club-subtitle {
    padding: 8.3333333333vw 0;
  }
  .price-container {
    width: 100%;
  }
  .price h3 {
    width: 91vw;
    padding: 3.75vw 0;
    font-size: 4.5833333333vw;
  }
  .price__contents {
    padding: 0;
    border: none;;
  }

  .price__contents.swimming
  .price__contents.gymnastics
  .price__contents.soccer
  .price__contents.fitness {
    border: 0px;
    outline: none;
    border: 0;
    background-color:#FFF;} 
 
  .price__contents.join {
    width: 97%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -7.2916666667vw;
    padding: 16.6666666667vw 0 8vw;
    border-top: none;
    border: solid 2px #e61e28;
    border-radius: 4vw;
  } 
  .price__contents.join.heiyou{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -7.2916666667vw;
    padding: 0;
    border: 0;
    border-top: 0;
  }
  .price__contents.kaigohoken {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -7.2916666667vw;
    padding: 16.6666666667vw 0 0vw;
    border-top: none;
  } 
 
  .price__contents iframe#if_swimming{
      min-height: 1300px;
  }
  .price__contents iframe#if_gymnastics{
      min-height: 1300px;
  }
  .price__contents iframe#if_soccer{
      min-height: 1000px;
  }
  .price__contents iframe#if_fitness{
      min-height: 1300px;
  }

}
@media screen and (max-width:599px) {
}
@media screen and (max-width:599px) {

}