@charset "UTF-8";
/*　基本
---------------------------------*/
body {
  font-family: "Zen Maru Gothic", serif;
  color: var(--color-n);
  font-weight: 400;
}
a {
  color: var(--color-n);
}
/* ヘッダー
---------------------------------*/
heder h1{border-bottom:solid var(--color-ge) 1px;}
@media only screen and (max-width: 680px) {
  heder h1 img {
      height: 3rem;
	  width: auto;
  }
}
/* トップ
---------------------------------*/
.red{
color: var(--color-r);
}
.pink{
	color:var(--color-p);
}
.orange{
	color:var(--color-o);
}
.green{
	color:var(--color-m);
}
.blue{
	color:var(--color-ab);
}
.basepd{padding-top: 1.5rem;
padding-left: 1.5rem;
padding-right: 1.5rem;}
#topTxt{padding-top:3.5rem;}
#topTxt h3{
	font-size: 2.2rem;
	line-height: 1.3;
}
#topTxt h3 span{
	font-size: 3rem;
}
#topTxt ul{
	display: flex;
	justify-content: center;
	margin: 1.5rem 0;
}
#topTxt li{
	list-style: none;
	margin: 0 0.5rem;
}
#topTxt li img{
	width: 100%;

}
/* スクール
---------------------------------*/
#school h4 {
  text-align: center;
  margin: 5rem 0 1.2rem;
  ;
}
#school h4 img {
  width: 30rem;
}
/*イメージと文章*/
.imgTxt > div h5 {
  font-size: 2.3rem;
  line-height: normal;
  margin-bottom: 1rem;
  line-height: 1.2
}
.imgTxt > div p {
  text-align: justify;
  text-justify: inter-ideograph;
}
@media only screen and (min-width: 680.1px) {
  .imgTxt {
    display: flex;
  }
  .imgTxt > div:first-child {
    width: 47%;
  }
  .imgTxt > div:last-child {
    width: 53%;
    padding-left: 1.2rem;
  }
}
@media only screen and (max-width: 680px) {
  .imgTxt > div img {
    display: block;
    margin: 0 auto;
  }
  .imgTxt > div h5 {
    padding-top: 0.9rem;
    margin-bottom: 0.8rem;
  }
}
/*schedule*/
.schedule {
  margin: 2.8rem 0.4rem;
}
.schedule h6 {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1;
  margin-bottom: 1rem;
	font-weight: 600;
}
.schoolBox {
  border-bottom: dotted 1px var(--color-gc);
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
.schedule table th {
  font-weight: 500;
  color: var(--color-w);
  padding: 0.5rem;
}
.schedule table td {
  padding: 0.5rem 1rem;
}
.schedule table {
    width: 100%;
  }
@media only screen and (min-width: 680.1px) {
	.schedule h6 span {
  font-size: 0.88rem;
}
  .schedule {
    width: 37rem;
    margin-left: auto;
    margin-right: auto;
  }
	.schedule table th,.schedule table td {
		font-size: 0.94rem;
}
}
@media only screen and (max-width: 680px) {
	.schedule h6 span {
  font-size: 0.94rem;
}
}
/*ボタン*/
.contact {
  text-align: center;
}
.contact.big img{max-width:none;width:100%;}
@media only screen and (min-width: 680.1px) {
	.contact {
  padding: 0 2rem;
	}
	.contact img{max-width:26rem; }
}
@media only screen and (max-width: 680px) {
	.contact {
  padding: 0 1.5rem;
	}
}
/*表下の注意書き*/
.schedule ol {
	margin-top: 0.5rem;
	margin-left: 1rem;
}
.schedule ol>li {
	list-style-type: none;
	line-height: 1.3;
	padding-bottom:0.2rem;
	font-size: 0.8rem;
}
.schedule ol>li::before {
	content: "※";
	display:inline-block;
	margin-left:-1rem;
	width: 1rem;
}

/*カラー*/
#swimming .imgTxt > div h5 {
  color: var(--color-a);
}
#swimming .schedule h6 {
  color: var(--color-a);
}
#swimming .schedule table th {
  background: var(--color-a);
}
#swimming .schedule table td {
  background: var(--color-ad);
}
#swimming .schedule table td.cell2nd {
  background: var(--color-as);
}
#tennis .imgTxt > div h5 {
  color: var(--color-m);
}
#tennis .schedule h6 {
  color: var(--color-m);
}
#tennis .schedule table th {
  background: var(--color-m);
}
#tennis .schedule table td {
  background: var(--color-ml);
}
#tennis .schedule table td.cell2nd {
  background: var(--color-ms);
}
#tanoshika .imgTxt > div h5 {
  color: var(--color-o);
}
#tanoshika .schedule h6 {
  color: var(--color-o);
}
#tanoshika .schedule table th {
  background: var(--color-o);
}
#tanoshika .schedule table td {
  background: var(--color-ol);
}
#tanoshika .schedule table td.cell2nd {
  background: var(--color-os);
}
#dance .imgTxt > div h5 {
  color: var(--color-pde);
}
#dance .schedule h6 {
  color: var(--color-pde);
}
#dance .schedule table th {
  background: var(--color-pde);
}
#dance .schedule table td {
  background: var(--color-pl);
}
#dance .schedule table td.cell2nd {
  background: var(--color-ps);
}
#ballet .imgTxt > div h5 {
  color: var(--color-pfd);
}
#ballet .schedule h6 {
  color: var(--color-pfd);
}
#ballet .schedule table th {
  background: var(--color-pfd);
}
#ballet .schedule table td {
  background: var(--color-pla);
}
#ballet .schedule table td.cell2nd {
  background: var(--color-ps);
}
/*admission
---------------------------------*/
#admission{padding-top: 3rem;
padding-bottom: 2rem;}
.admission{
padding-left: 1.9rem;
padding-right: 1.9rem;
	text-align: center;
}
/*point
---------------------------------*/
#point {
  padding: 5rem 1rem 4rem;
}
#point h4 {
  text-align: center;
  margin-bottom: 4rem;
}
#pointBox {
  display: flex;
  flex-wrap: wrap;
}
#pointBox p {
  text-align: center;
}
#pointBox p img {
  width: 85%;
  max-width: 230px;
}
#pointBox dt {
  line-height: 1.35;
  margin-top: 0.5em;
  margin-bottom: 0.3em;
  text-align: center;
  font-weight: 500;
  color: var(--color-a);
}
@media screen and (min-width: 680.1px) {
  #point h4 img {
    width: 89%;
  }
  #pointBox > div {
    width: 33.333%;
    padding: 0 1.5vw;
    margin-bottom: 4vw;
  }
  #pointBox dt {
    font-size: 1.2rem;
  }
  #pointBox dd {
    font-size: 0.88rem;
  }
}
@media screen and (max-width: 680px) {
  #point h4 img {
    width: 100%;
  }
  #pointBox > div {
    width: 50%;
    padding: 0 1em;
    margin-bottom: 2.5rem;
  }
  #pointBox > div dt {
    font-size: 1.25rem;
  }
}
/*mamaVoice
---------------------------------*/
#mamaVoice {
  background: var(--color-yl);
  padding: 0 0 4rem;
}
#mamaVoice h4 {
  text-align: center;
}
#mamaVoice h4 img {
  margin-top: -2.9rem;
  width: 88%;
}
#mamaVoice h5 {
  font-size: 1.3rem;
  line-height: normal;
  color: var(--color-a);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 0.5rem;
  padding-top: 0.5rem;
}
#mamaVoice h5 strong {
  font-size: 1.6rem;
}
.mamaName {
  font-size: 1.13rem !important;
  line-height: 1.25;
  color: var(--color-a);
  font-weight: 500;
	padding-bottom: 0.4rem;
}
.mamaBox > div {
  display: flex;
  background: var(--color-w);
  border-radius: 0.8rem;
  box-shadow: 2px 2px 5px rgba(221, 221, 177);
}
.mamaBox > div > div:first-child {
  width: 5rem;
}
.mamaBox > div > div:last-child {
  width: calc(100% - 5rem);
}
.mamaBox > div > div p {
  padding-left: 0.6rem;
}
@media screen and (min-width: 680.1px) {
  .mamaBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 1.4rem 0.5rem;
  }
  .mamaBox > div {
    width: calc(50% - 0.5rem);
    padding: 1.2rem 1.2rem;
    margin-bottom: 1rem;
  }
  .mamaBox > div > div p {
    font-size: 0.88rem;
	 line-height: 1.4;
  }
}
@media screen and (max-width: 680px) {
  #mamaVoice h4 img {
    margin-top: -3vw;
  }
  .mamaBox {
    padding: 0 1.2rem 0.6rem;
  }
  .mamaBox > div {
    width: 100%;
    padding: 1.2rem 1.4rem;
    margin-bottom: 1rem;
  }
  .mamaBox > div > div p {
    font-size: 0.94rem;
  }
}
/*faq 
---------------------------------*/
#faq {
  background: repeating-linear-gradient(90deg, rgba(51, 204, 255, 0.4), rgba(51, 204, 255, 0.4) 9px, rgba(255, 255, 255, 1) 0, rgba(255, 255, 255, 1) 20px);
}
.faq {
  background-color: var(--color-w);
  border-radius: 40px;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  padding: 10px 30px 20px;
}
.faq h3 {
  display: block;
  margin-top: -40px;
}
.faq dl {
  margin-top: 40px;
  text-align: left;
}
.faq dl dt, .faq dl dd {
  position: relative;
  padding-left: 40px;
  text-align: justify;
  text-justify: inter-ideograph;
}
.faq dl dt::before, .faq dl dd::before {
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
}
.faq dl dt {
  font-weight: bold;
  border-bottom: 1px solid var(--color-gc);
  margin-bottom: 7px;
  padding-bottom: 7px;
  font-size: 22px;
}
.faq dl dd {
  margin-bottom: 35px;
  font-size: 22px;
}
.faq dl dt::before, .faq dl dd::before {
  font-size: 20px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  color: var(--color-w);
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
}
.faq dl dt::before {
  content: 'Q';
  background: var(--color-r);
}
.faq dl dd::before {
  content: 'A';
  background: var(--color-al);
}
#faq {
  padding-bottom: 70px;
  padding-top: 80px;
}
@media only screen and (max-width: 680px) {
  #faq {
    padding-bottom: 10vw;
    padding-top: 14vw;
  }
  .faq h3 {
    margin-top: -5vw;
  }
  .faq h3 img {
    width: 25vw;
  }
  .faq {
    padding: 10px 3.5vw 2vw;
  }
  .faq dl dt, .faq dl dd {
    padding-left: 6.8vw;
  }
  .faq dl dt {
    font-size: 3.4vw;
  }
  .faq dl dd {
    margin-bottom: 5vw;
    font-size: 3.4vw;
  }
  .faq dl dt::before, .faq dl dd::before {
    font-size: 3.2vw;
    width: 5.8vw;
    height: 5.8vw;
    line-height: 5.8vw;
  }
}
/*入会申込み方法
---------------------------------*/
.step {
  padding: 2.5rem 1.8rem 3.5rem;
  background-color: var(--color-ge);
}
/* form
---------------------------------*/
.trial {
  background-color: var(--color-ad);
}
.btn [type=submit], input[type=text], input[type=email], input[type=tel], input[type=datetime-local], textarea, select {
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
/*facility
---------------------------------*/
.facilityFoot__logo img {
  width: 6rem;
}
/*トップへ戻るボタン
---------------------------------*/
#to_top a {
  background-color: var(--color-a);
}
/* フロートボタン
---------------------------------*/
.Bnr .Bnr__img ul li.tel a {
  background: var(--color-ge);
	 font-family: "Zen Maru Gothic", serif;
}
.Bnr .Bnr__img ul li.mail a {
  background: var(--color-ab);
	 font-family: "Zen Maru Gothic", serif;
}