.txt_red {
  color: #f00;
}

#u_layer .school_line {
    background: url(../img/school_headlinebg.jpg) no-repeat center center !important;
    background-size: cover !important;
}

#u_layer .school_line_green {
    background: url(../img/school_headlinebg_green.jpg) no-repeat center center !important;
    background-size: cover !important;
}

#u_layer .school_line div h2 {
    position: absolute !important;
    top: 30%;
    color: #FFF;
    font-size: 210% !important;
    padding-left: 50px;
    letter-spacing: 4px;
    line-height: 120%;
}

#page-school-template-instructor_title{
   position: absolute !important;
    top: 30%;
    color: #FFF;
    font-size: 210% !important;
    padding-left: 50px;
    letter-spacing: 4px;
    line-height: 120%;
    display: block;
    font-size: 1.5em;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

#page-school-template-instructor_title::before{
    position: absolute;
    top: -120%;
    left: -90px;
    display: inline-block;
    height: 200px;
    width: 200px;
    background: url(../img/school_icon01.png) no-repeat center;
    background-size: contain;
    content: '';
}

#u_layer .school_line div h2::before {
    position: absolute;
    top: -105%;
    left: -80px;
    display: inline-block;
    height: 200px;
    width: 200px;
    background: url(../img/school_icon01.png) no-repeat center;
    background-size: contain;
    content: '';
}

.single_text {
    margin-top: 30px;
}

.single_heading {
    padding-bottom: 15px;
    margin-top: 7px;
    border-bottom: 1px solid #626262;
    font-size: 18px;
    border-top: 2px solid #626262;
    font-weight: bold;
}
.single_heading .single_heading_inner{
    padding-top: 15px;
    border-top: 1px solid #626262;
    display: block;
    margin-top: 7px;
}

.single_text .text p {
  margin: 25px 0;
  font-size: 12px;
}

.instructor_content01_box ul {
    margin-top: 10px;
    font-size: 12px;
    color: #999;
}

.instructor_content01_box .inst_name {
    color: #000;
}

.instructor_content01_box .inst_name_M {
    font-size: 18px;
    margin-top: 5px;
    margin-right: 10px;
}

.instructor_content01_box .inst_name_S {
    margin-left: 5px;
}

.instructor_content02 {
    padding-top: 30px;
    margin-top: 10px;
    border-top: 1px solid #e5e5e5;
}

.instructor_content02_li {
    margin-bottom: 30px;
}

.instructor_content02_box01 {
    width: 100%;
    display: table;
    background: #fbfbfb;
    border: 2px solid #eee;
}

.instructor_content02_box01 .content02_box01_img {
    float: right;
    width: 55%;
    display: table-cell;
}



.instructor_content02_item01 {
    padding: 15px 0 15px 30px;
    color: #999;
}

.instructor_content02_item01 .inst_icon {
    margin-top: 15px;
}

.instructor_content02_item01 .inst_icon_item {
    float: left;
    width: 35px;
    margin-right: 10px
}

.instructor_content02_item01 ul {
    line-height: 1.8;
}

.instructor_content02_item01 .inst_name_title {
    font-weight: bold;
    color: #000;
}

.instructor_content02_item01 .inst_name {
    margin-bottom: 30px;
}

.instructor_content02_item01 .inst_name_L {
    font-size: 20px;
    color: #000;
    margin-right: 10px;
    font-weight: bold;
}

.instructor_content02_item01 .inst_name_S {
    margin-left: 5px;
}

.instructor_content02_box02 {
    padding: 30px;
    border: 2px solid #eee;
}

.instructor_content02_item02 {
    margin-bottom: 30px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.8;
}

.instructor_content02_item03 {
    display: table;
    color: #999;
    margin-bottom: 30px;
}

.instructor_content02_item03 .content02_item03_left {
    display: table-cell;
    width: 50%;
}

.instructor_content02_item03 .content02_item03_right {
    display: table-cell;
    width: 50%;
    padding-left: 30px;
    border-left: 2px solid #eee;
}

.instructor_content02_item03 .content02_item03_title {
    color: #000;
    font-weight: bold;
    margin-bottom: 5px;
}

.instructor_content02_item03 li, .instructor_content02_item03 p {
    line-height: 1.8;
}

.instructor_content02_item04 {
    background: #f0f0f0;
}

.instructor_content02_item04 ul {
    padding: 20px;
    overflow: hidden;
}

.instructor_content02_item04 li {
    width: 22%;
    margin-right: 4%;
    float: left;
}

.instructor_content02_item04 li:last-child {
    margin-right: 0;
}

.team_name_L, .genre_name_L, .school_name_L, .inst_name_title {
    letter-spacing: 2px;
}

.school_teacher_box {
    overflow: hidden;
    border: 1px solid #DDD;
    padding-bottom: 20px;
    position: relative;
}

.instructor_content02_item04 {
    background: #f0f0f0;
    padding: 15px;
}

.instructor_content02_item04 li iframe {
    width: 100%;
    margin-right: 2%;
    float: left;
    height: 100px;
}

.ttl_music {
    background: url("../img/about_titlebg01.png") no-repeat center top;
    background-size: 80% 80%;
    text-align: center;
    font-size: 230%;
    letter-spacing: 0.1em;
    position: relative;
    margin-bottom: 55px;

}

.ttl_music_h1 {
    background: url("../img/about_titlebg01.png") no-repeat center top;
    background-size: 80% 80%;
    text-align: center;
    font-size: 230%;
    letter-spacing: 0.1em;
    position: relative;
}

.school_image_box h2 {
    padding-bottom: 30px;
}

.school_image_box h1 {
    padding-bottom: 22px;
}

.school_image_box h2::before,
.school_teacher_content h2::before,
.school_access_content h2::before,
.insta_area h2::before {
    content: '';
    display: block;
    background: url(../img/scedule_titleimg01.png) no-repeat center top;
    background-size: contain;
    width: 250px;
    height: 35px;
    position: absolute;
    left: 50%;
    top: -70%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.school_image_box h1::before,
.school_teacher_content h2::before,
.school_access_content h2::before,
.insta_area h2::before {
    content: '';
    display: block;
    background: url(../img/scedule_titleimg01.png) no-repeat center top;
    background-size: contain;
    width: 250px;
    height: 35px;
    position: absolute;
    left: 50%;
    top: -70%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.school_image_box h2::after {
    /*content: '';*/
    display: block;
    background: url("../img/school_readtext01.png") no-repeat center top;
    background-size: contain;
    width: 180px;
    height: 15px;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: -50%;
}

.school_image_box h1::after {
    /*content: '';*/
    display: block;
    background: url("../img/school_readtext01.png") no-repeat center top;
    background-size: contain;
    width: 180px;
    height: 15px;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: -50%;
}


.sb_LineLR {
    max-width: 40%;
    text-align: center;
    margin: 0 auto 24px;
    color: #aaa;
    font-weight: 600;
}


.LineLR {
    position: relative;
    text-align: center;
    letter-spacing: 0.4em;
}

.LineLR span {
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 2.5em;
    padding: 0 2em;
    background-color: #fff;
    text-align: left;
}

.LineLR::before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #aaa;
}










.moriguchi_image_box h2::after {
    background: url("../img/school_readtext01_moriguchi.png") no-repeat center top;
    background-size: contain;
}

.mino_image_box h2::after {
    background: url("../img/school_readtext01_mino.png") no-repeat center top;
    background-size: contain;
}

.saitonishi_image_box h2::after {
    background: url("../img/school_readtext01_saitonishi.png") no-repeat center top;
    background-size: contain;
}

.ishiyama_image_box h2::after {
    background: url("../img/school_readtext01_ishiyama.png") no-repeat center top;
    background-size: contain;
}

.omihachiman_image_box h2::after {
    background: url("../img/school_readtext01_omihachiman.png") no-repeat center top;
    background-size: contain;
}

.moriyama_image_box h2::after {
    background: url("../img/school_readtext01_moriyama.png") no-repeat center top;
    background-size: contain;
}

.minamikusatsu_image_box h2::after {
    background: url("../img/school_readtext01_minamikusatsu.png") no-repeat center top;
    background-size: contain;
}

.school_teacher_content h2 {
    padding-bottom: 30px;
}

.school_teacher_content h2::after {
    content: '';
    display: block;
    background: url("../img/school_readtext02.png") no-repeat center top;
    background-size: contain;
    width: 180px;
    height: 15px;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: -50%;
}

.school_access_content h2::after {
    content: '';
    display: block;
    background: url("../img/school_readtext03.png") no-repeat center top;
    background-size: contain;
    width: 180px;
    height: 15px;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: -70%;
}

.school_image_box {
  padding: 60px 0 50px;
}

.school_image_box .mySwiper05 .swiper-slide {
    text-align: center;
}
.school_image_box .mySwiper05Thumb {
    margin-top: 35px;
}
.school_image_box .mySwiper05Thumb .swiper-wrapper {
    justify-content: center;
    -webkit-justify-content: center;
    transform: initial !important;
    transition-duration: initial !important;
}

.school_image_box .mySwiper05Thumb .swiper-slide {
    text-align: center;
    width: 10% !important;
    cursor: pointer;
}

.shool_image_box_txt p {
  padding: 30px 0;
  font-size: 12px;
}

.shool_image_box_txt ul {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}

.shool_image_box_txt ul li {
    width: 38%;
}

.shool_image_box_txt ul li a {
    display: block;
    padding: 15px;
    font-size: 14px;
    border-radius: 15px;
    text-align: center;
    max-width: 300px;
    width: 100%;
    margin:0 auto;
}

.shool_image_box_txt ul li:first-child a {
    background: #027ebf;
    color: #FFF;

    border: 1px solid #FFF;
}

.shool_image_box_txt ul li:first-child a:hover {
    background: #FFF;
    border: 1px solid #027ebf;
    color: #027ebf;
    text-decoration: none;
}

.shool_image_box_txt ul li:last-child a {
  border: 2px solid #41B7EF;
  color: #027ebf;
}

.shool_image_box_txt ul li:last-child a:hover {
  background: #41B7EF;
  color: #fff;
    text-decoration: none;
}




.school_teacher_content {
    padding: 130px 0 60px;
    border-top: 1px solid #DDD;
    margin-top: 70px;
}

.school_teacher_content .swiper-slide > a,
.school_access_content > a {
    background: #027ebf;
    color: #FFF;
    margin: auto;
    border: 1px solid #FFF;
    display: block;
    padding: 20px;
    font-size: 14px;
    border-radius: 15px;
    text-align: center;
    max-width: 350px;
}

.school_access_content > a {
  margin-top: 25px;
}
.school_access_content > a::after,
.shool_image_box_txt ul li:first-child a::after {
    display: inline-block;
    margin-left: 10px;
    width: 15px;
    height: 15px;
    background: url(../img/school_icon02.png) no-repeat center;
    background-size: contain;
    content: "";
}
.school_teacher_content .swiper-slide > a:hover,
.school_access_content > a:hover {
    background: #FFF;
    border: 1px solid #027ebf;
    color: #027ebf;
    text-decoration: none;
}

.school_access_box {
    margin-bottom: 35px;
}

.school_access_box, .school_access_box table {
    width: 100%;
}

.school_access_box table tr th {
    background: #f3fbff;
    padding: 30px;
    border: 1px solid #333;
    text-align: left;
    font-size: 15px;
    font-weight: bold;
}

.school_access_box table tr td {
   padding: 30px;
   border: 1px solid #333;
   font-size: 15px;
}

.school_access_content {
    padding: 80px 0 50px;
    border-bottom: 1px solid #DDD;
}

.school_access_content p {
    padding-bottom: 40px;
    text-align: center;
}

.school_access_content div iframe {
    width: 100%;
}

#page-school-template-instructor_h1{
    padding-bottom : 30px;
}

.n_price {
    padding: 0 10px;
}

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


#page-school-template-instructor_h1{
    padding-bottom : 15px;
}

.n_price {
    padding: 0 0px;
}

#page-school-template-instructor_title {
    position: relative !important;
    color: #FFF;
    font-size: 130% !important;
    top: 0;
}

 #page-school-template-instructor_title::before {
    position: absolute;
    height: 91px;
    width: 182px;
    top: -28px;
    left: -73px;
  }


  #u_layer .school_line {
    background: url(../img/schedule_headlinebg_sp.png) repeat center center !important;
    background-size: contain !important;
    height: auto;
    border-bottom: none;
    padding: 10px 5%;
    position: relative !important;
  }

  #u_layer .school_line_green {
    background: url(../img/schedule_headlinebg_green_sp.jpg) repeat center center !important;
    background-size: contain !important;
  }




  .shool_image_box_txt ul li {
      width: 100%;
      margin-bottom: 15px;
  }

  .ttl_music {
      font-size: 180%;
      margin-bottom: 35px;
      background-size: contain;
    }

    .school_image_box h2 {
      padding-bottom: 15px;
  }

  .school_teacher_content {
      padding: 100px 0 50px;
      margin-top: 50px;
  }

  .school_teacher_content h2 {
      padding-bottom: 20px;
  }

  .instructor_content01_li .img_hover {
      position: relative;
      overflow: hidden;
      display: block;
      opacity: 1;
  }

  .instructor_content01_li a {
      border: 2px solid #eee;
      display: block;
      cursor: pointer;
  }

  .img_hover .instructor_li_img {
      opacity: 0;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
  }

  .img_hover a:hover .instructor_li_img {
      opacity: 1;
      cursor: pointer;
  }

  .school_teacher_content .swiper-slide > a, .school_access_content > a {
    padding: 10px;
    margin: 10px auto;
  }

  .instructor_content01_box {
    padding: 0 10px;
  }

  .school_access_box table tr th {
    width: 40%;
  }

  .school_access_box table tr th,
  .school_access_box table tr td {
    padding: 15px;
  }

}


.shool_image_box_txt2 p {
    padding: 30px 0;
    font-size: 12px;
}

.shool_image_box_txt2 ul {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.shool_image_box_txt2 ul li {
    width: 38%;
}

.shool_image_box_txt2 ul li a {
    display: block;
    padding: 15px;
    font-size: 14px;
    border-radius: 15px;
    text-align: center;
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
}

.shool_image_box_txt2 ul li:first-child a {
    background: #027ebf;
    color: #FFF;

    border: 1px solid #FFF;
}

.shool_image_box_txt2 ul li:first-child a:hover {
    background: #FFF;
    border: 1px solid #027ebf;
    color: #027ebf;
    text-decoration: none;
}

.shool_image_box_txt2 ul li:last-child a {
    border: 2px solid #55bd40;
    color: #55bd40;
}

.shool_image_box_txt2 ul li:last-child a:hover {
    background: #55bd40;
    color: #fff;
    text-decoration: none;
}

.school_access_content>a::after,
.shool_image_box_txt2 ul li:first-child a::after {
    display: inline-block;
    margin-left: 10px;
    width: 15px;
    height: 15px;
    background: url(../img/school_icon02.png) no-repeat center;
    background-size: contain;
    content: "";
}


.single_heading .single_heading_inner2 {
    padding-top: 15px;
    border-top: 1px solid #626262;
    display: block;
    margin-top: 7px;
    text-align: center;

}

.text_emphasis {
    font-size: 18px;
    font-weight: 600;
}


.flex_customer {
    display: flex;
    justify-content: space-between;
    margin: 20px auto;
}

.flex_customer>p {
    width: 60%;
}

.customer_text {
    margin-left: 20px;
    width: 120%;
}

.customer_name {
    font-size: 16px;
    font-weight: 600;
}



.text_center {
    text-align: center;
}

.mb20 {
    margin-bottom: 20px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb80 {
    margin-bottom: 80px;
}

.mt40 {
    margin-top: 40px;
}

.ttl_kakukou1 {
    font-size: 24px;
    line-height: 90%;
    text-align: center;
    letter-spacing: 2px;
}


@media screen and (max-width: 767px) {
.ttl_kakukou1 {
    font-size: 20px;
}
.shool_image_box_txt2 ul li {
    width: 100%;
    margin-bottom: 15px;
}

.flex_customer {
    display: flex;
    justify-content: center;
    margin: 20px auto;
    flex-direction: row;
    flex-wrap: wrap;
}

.flex_customer>p {
    width: 90%;
}

.customer_text{
    margin: 20px;
}

.customer_name{
    margin-bottom: 8px;
}

.school_image_box h1 {
    padding-bottom: 12px;
}
.sb_LineLR {
    max-width: 60%;
}

}

#school-specific-banners {
	display: flex;
	gap: 1px;
}
#school-specific-banners.area-margin {
	margin: 16px 0 16px 0;           
}
#school-specific-banners .flex-item {
	flex: 1;                   
}
#school-specific-banners .banner_img {
	width: 100%;                 
	height: auto;               
}
@media screen and (max-width: 767px) {
	#school-specific-banners {
		flex-direction: column;         
	}
}

.lesson_schedule_row {
    display: flex;
    gap: 20px;
}
@media screen and (max-width: 767px) {
    .lesson_schedule_row {
        flex-direction: column;
    }
}

.navi_buttons {
    display: grid;
    grid-template-columns: 300px 300px;
    place-content: center;
    gap: 20px 10px;
    margin: 0 auto;
}
.navi_button {
    border-radius: 15px;
    padding: 15px 0;
    text-align: center;
    background: #027ebf;
    color: #FFF;
    border: 2px solid #fff;
}
.navi_button:hover {
    background: #FFF;
    color: #027ebf;
    text-decoration: none;
    border: 2px solid #027ebf;
}
.navi_button.navi_button--green {
    background: #FFF;
    color: #55bd40;
    border: 2px solid #55bd40;
}
.navi_button.navi_button--green:hover {
    background: #55bd40;
    color: #fff;
}
.navi_button.navi_button--orange {
    background: #EE8800;
    color: #fff;
}
.navi_button.navi_button--orange:hover {
    background: #fff;
    color: #EE8800;
    border: 2px solid #EE8800;
}
.navi_button.navi_button--disabled {
    background: #FFF;
    color: #aaaaaa;
    border: 2px solid #aaaaaa;
}
.navi_button.navi_button--external::after {
    display: inline-block;
    margin-left: 10px;
    width: 15px;
    height: 15px;
    background: url(../img/school_icon02.png) no-repeat center;
    background-size: contain;
    content: "";
}

@media screen and (max-width: 767px) {
    .navi_buttons {
        grid-template-columns: 300px;
    }
}

.price_back_button {
    display: block;
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    border-radius: 15px;
    background: #027ebf;
    color: #fff;
    font-size: 18px;
    text-align: center;
    font-weight: bold;
}
.price_back_button:hover {
    text-decoration: none;
    opacity: .7;
}
/*251007*/
.insta_area {padding: 80px 0 50px;}
.insta_area .sb_instagram_header{display: none;}
.insta_area h2{padding-bottom: 30px;}
.insta_area h2::after {
    content: '';
    display: block;
    background: url(../img/insta_readtext01.png) no-repeat center top;
    background-size: contain;
    width: 180px;
    height: 15px;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: -70%;
}
.insta_area #sbi_load{display: none;}
.school_btn_new{
    margin-top:10px;
    background: #027ebf;
    color: #FFF;
    margin: auto;
    border: 1px solid #FFF;
    display: block;
    padding: 20px;
    font-size: 14px;
    border-radius: 15px;
    text-align: center;
    max-width: 350px;
}
.insta_area .school_btn_new::after{
    display: inline-block;
    margin-left: 10px;
    width: 15px;
    height: 15px;
    background: url(../img/school_icon02.png) no-repeat center;
    background-size: contain;
    content: "";
}
@media screen and (max-width: 767px) {
    .school_btn_new{
        padding: 15px 0;
        margin: 10px auto;
    }
}