@charset "utf-8";

/*
 * "Fredericka" is lisenced under the SIL Open Font License 1.1
 * http://fonts.googleapis.com
 * https://www.google.com/fonts/attribution
 * http://scripts.sil.org/OFL
 */

/* *****共通設定***** */

a {
  color: #3300ff;
}

a:hover {
  color: #669900;
}


#sec3 a:hover img {
  opacity: 0.5;
}



.btn-lesson {
  color: #fff;
  font-weight: 700;
  background-color: #ffc107 !important;
}

.btn-lesson:hover {
  color: #fff;
  border-color: #ff9933;
  background-color: #ff9933 !important;
}


.btn-contact {
  color: #fff;
  font-weight: 700;
  background-color: #abd038 !important;
}
.btn-contact:hover {
  color: #fff;
  border-color: #669900;
  background-color: #669900 !important;
}


/* *****緑の枠のお知らせ***** */

.info {
  background-color: #669900 !important;
  color: #fff;
}

.border-info {
  border-color: #abd038 !important;
}


#sec0 {
  background-color: #abd038 !important;
}

#sec0 .info2 {
  height:305px;
}

#sec0 .info2 span{
  padding:0 0 5px 0;
  margin: 5px;
  border-bottom: 1px dashed #ccc;
}






.bg-maincolor {
  background-color: #f0f8ff !important;
}


.text-shadow {
  text-shadow: 1px 1px 3px #000;
}

.font-patrick {
  font-family: 'Fredericka the Great', cursive;
}



/* ヘッダー(navbar) */
#nav01 {
  border-bottom: 5px solid #abd038;
}

#nav01 .logo {
  height:50px;
  width:auto;
}

#nav02 .nav-fill {
  width: 100%;
}

#nav02 .nav-item {
  border-left: 1px solid #cccccc;
}

#nav02 .last-list-md {
  border-right: 1px solid #cccccc;
}

#nav02  a:hover {
  color: #000;
}



.display01 {
  font-size:38px;
  letter-spacing: 0.25rem;
  color: #fff;
  font-weight: 700;
  margin-left: -25px;
}

.display02 {
  font-size: 20px;
  line-height: 1.3em;
  color: #fff;
  font-weight: 600;
  margin-bottom: 5px;
}

.display03 {
  font-size: 16px;
  color: #000;
  font-weight: 500;
  margin-bottom: 50px;
}


.sample-title{
  padding: 12px 20px;
  border-left: 6px solid #abd038;
  background: #f4f4f4;
}



  #sec2 {
  background-color: #efefef !important;
  }


  #sec2 h4 {
  font-size: 16px;
  }

  #sec2 .rounded-circle {
  height:auto;
  width: 100%;
  }


  #sec3 h5 {
line-height: 1.2em;
  font-size: 16px;
  }



/* お問合わせ　表 */

.tbl-contact {
  margin: 20px auto;
text-align : center;
}

.tbl-contact th {
  background: #c0d693;
  border: solid 1px #9c9c9c;
  color: #555;
  font-weight: 400;
  padding: 10px;
}
.tbl-contact td {
  background: #fff;
  border: solid 1px #9c9c9c;
  color: #555;
  padding: 10px;
}
 

@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }

  .tbl-contact {
    width: 90%;
  }

  .tbl-contact th,
  .tbl-contact td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }


}





/* フッターロゴ */
#footer-logo {
text-align : center;
  margin-top: 50px;
  margin-bottom: 20px;
}

.f-logo {
  height:50px;
}

#footer1{
text-align : center;
  margin-bottom: 10px;
  font-size: 12px;
}

#footer1 a {
  color: #3300ff;
text-decoration: underline;
}

#footer1 a:hover {
  color: #669900;
text-decoration: underline;
}



/* フッター */
#footer2 {
  color: #fff;
  background: #abd038;
}





/* *****トップページ***** */
.jumbotron {
  background-image: url("../img/top-image.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  height:330px;
  vertical-align: middle;
  margin-top: 30px;
}

/* *****下層ページ***** */
.breadcrumb-item + .breadcrumb-item:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: small;
  color: #fff;
}

#page .jumbotron {
  background: #f1efff url("../img/sub-image.jpg") no-repeat center center;
  background-size: cover;
  border-radius: initial;
  height:250px;
}





/* --------------------------------------------------

 レスポンシブ

--------------------------------------------------　*/

@media (max-width: 991.98px) {
  /* md タブレット・スマートフォン向け */

  #nav02 .nav-item {
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #dee2e6;
    letter-spacing: 0.25rem;
  }

#nav01 .logo {
  height:auto;
  width:350px;
}




.display01 {
  font-size:32px;
  letter-spacing: 0.05rem;
  line-height: 1.0em;
  margin-left: -25px;
}

.display02 {
  font-size: 16px;
  margin-top:40px;
  margin-bottom:10px;
}

.display03 {
  font-size: 16px;
  line-height: 1.2em;
  font-weight: 300;
  margin-bottom:30px;
}


.display-4 {
  font-size:40px;
}

  #sec2 .lecturer {
text-align : center;
  }

  #sec2 .rounded-circle {
  height:auto;
  width: 80%;
  }

  #sec3 h3 {
  text-align: center;
  }

  #sec3 h5 {
  text-align: center;
  }


.f-logo {
  height:40px;
}

#page .jumbotron {
  height:150px;
}




}

  @media (max-width: 575.98px) {
    /* xs スマートフォン向け */

    /* フッター */
    #footer-sns img {
      height: 29px;
      margin-right: 15px;
    }

#nav01 .logo {
  height:auto;
  width:270px;
}


/* *****トップページ***** */
.jumbotron {
  height:280px;
  text-align: center;
  margin-top: 30px;
  padding-top: 10px;
}


.display01 {
  font-size:24px;
  margin-left: 0px;

}

.display02 {
  font-size: 18px;
  line-height: 1.3em;
  margin-top: 70px;
}

.display03 {
  font-size: 13px;
  line-height: 1.2em;
  font-weight: 300;
  margin-bottom: 20px;
}


.display-4 {
  font-size: 36px;
}

  #sec2 .lecturer {
text-align : center;
  }

  #sec2 .rounded-circle {
  height:auto;
  width: 60%;
  }

  #sec3 h3 {
  text-align: center;
  }

  #sec3 h5 {
  text-align: center;
  }


.f-logo {
  height:40px;
}

}



/* スマホ用 */
@media screen and (max-width: 767px) {
	.fb-container {
		width: 100%;
		max-width: 500px;
	}
}
 
/* PC用 */
@media screen and (min-width: 768px) {
	.fb-container {
		width: 580px;
	}
}

