﻿@charset "UTF-8";



.c-content-lessonplan--type_lessonplan .c-content-lessonplan__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background-color: #f4f4f4; */
}

.c-content-lessonplan--type_lessonplan .c-content-lessonplan__bgW {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
}

.c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
    position: relative;
    z-index: 1
}

@media only screen and (max-width:47.9375em) {
.c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
    padding-top: 30px;
    padding-bottom: 30px;
}
}

@media print, screen and (min-width:48em) {
.c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
    padding-top: 20px;
    padding-bottom: 0px;
}
}


.c-content-lessonplan{
    position: relative;
    /* overflow: auto; */
    /* padding-bottom: 100px; */
    padding-top: 80px;
}

@media only screen and (max-width:47.9375em) {
.c-content-lessonplan{
    position: relative;
    /* overflow: auto; */
    /* padding-bottom: 100px; */
    padding-top: 0px;
}
}
.c-content-lessonplan__inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

@media only screen and (max-width:47.9375em) {
.c-content-lessonplan__inner {
    width: 100%;
    padding: 0px 4.68% 50px;
}
}

@media print, screen and (min-width:48em) {
.c-content-lessonplan__inner {
    position: relative;
    z-index: 1;
    width: 90.64%;
    padding-top: 54px;
    padding-bottom: 50px;
    margin-right: auto;
    margin-left: auto
}
}

@media print, screen and (min-width:61.25em) {
.c-content-lessonplan__inner {
    max-width: 1400px;
    padding-top: 75px;
    /* padding-bottom: 80px */
}
}

@media print, screen and (min-width:87.5em) {
.c-content-lessonplan__inner {
    padding-right: 0;
    padding-left: 0
}
}
.c-content-lessonplan__inner>:first-child {
    margin-top: 0
}


  .box_senior {
    position: relative;
    margin: 2em 0;
    padding: 0px 0px 7px;
    border: solid 1px #000000;
}
.box_senior .box-title {
    /* FONT-VARIANT: JIS83; */
    /* position: absolute; */
    display: inline-block;
    /* top: -2px; */
    /* left: -2px; */
    padding: 9px 10px;
    height: 40px;
    line-height: 25px;
    font-size: 16px;
    background: #000000;
    color: #ffffff;
    /* font-weight: bold; */
    width: 100%;
}
.box_senior p {
    margin: 0; 
    padding: 0;
}

  .box_senior_red {
    position: relative;
    margin: 2em 0;
    padding: 0px 0px 7px;
    border: solid 1px #FF0000;
}
.box_senior_red .box-title {
    /* FONT-VARIANT: JIS83; */
    /* position: absolute; */
    display: inline-block;
    /* top: -2px; */
    /* left: -2px; */
    padding: 9px 10px;
    height: 40px;
    line-height: 25px;
    font-size: 16px;
    background: #FF0000;
    color: #ffffff;
    /* font-weight: bold; */
    width: 100%;
}
.box_senior_red p {
    margin: 0; 
    padding: 0;
}


.waku_kaku_red_das{
margin:3px;
  padding: 1em; /*段落余白*/
  border: 1px dashed  #ff0000; /*枠線*/
  border-radius: 2px; /*角丸*/
}

.item_30 {
    border-radius: 5px;
    /* background: #edf; */
    padding: 10px;
    margin: 5px;
    text-align: center;
    border: 1px solid #eee;
  }


.item_40 {width: 100%;padding: 2%;}
.item_40 img{width: 100%;padding:3%;}

.item_50 {width: 100%;padding: 2%;}
.item_50 img{width: 50%;padding:3%;}



.item_60 {width: 98%;padding: 2%;}
.item_60 img{width: 100%;}
.item_60 .tTaisho {font-size:18px;margin-bottom:20px;font-weight:600;
}

.item_60 .kyu {font-size:16px;color:#000;
	font-weight:500;border:0px solid #ddd; padding:1%; margin:1%;background:#f0d174;
}

.item_100 {
    border-radius: 5px;
    /* background: #edf; */
    padding: 10px;
    margin: 5px;
    text-align: center;
  }

.item_100_L {
    border-radius: 5px;
    /* background: #edf; */
    padding: 10px;
    margin: 5px;
    text-align: left;
  }


.item2 {
    border-radius: 5px;
    /* background: #edf; */
    padding:15px 10px 10px;
    margin: 20px 5px;
    text-align: center;
    border: 1px solid #ddd;
    position:relative;
  }

.item p,
  .item2 p{/* text-align:left; *//* font-size:13px; *//* font-weight:600; *//* line-height: 1.7; *//* padding: 2%; */}
  .item2_pic{background:#000;color:#fff;padding:3px;position:absolute;top: -15px;} 
  .item2_picA{background:#ffb03f;color:#000;padding:3px;position:absolute;top: -15px;}   
/*   .item2 p span{background:#000; color:#fff; padding:5px;} */

	.tokucho {
		font-size: 16px;
		font-weight:600;
		color: #e38b09;
		text-align: left;
	}

	.tokucho:before {
		font-size: 16px;
		font-family: 'FontAwesome';
		content: "\f2dc";
		font-weight: normal;
		margin: 0 5px;
		height: 20px;
		line-height: 20px;
		color: #e38b09;
	}
	.tokucho_txt {
		font-size: 16px;
		font-weight: 400;
		text-align: left;
	}
	  

@media (min-width: 768px){
  .box_senior {
/*     position: relative;
    margin: 2em 0;
    padding: 0px 0px 7px;
    border: solid 1px #000000; */
}
.box_senior .box-title {
    display: inline-block;
    padding: 9px 10px;
    height: 40px;
    line-height: 25px;
    font-size: 18px;
    background: #000000;
    color: #ffffff;
    width: 100%;
}
.box_senior p {
    margin: 0; 
    padding: 0;
}

  .box_senior_red {
/*     position: relative;
    margin: 2em 0;
    padding: 0px 0px 7px;
    border: solid 1px #000000; */
}
.box_senior_red .box-title {
    display: inline-block;
    padding: 9px 10px;
    height: 40px;
    line-height: 25px;
    font-size: 18px;
    background: #f01414;
    color: #ffffff;
    width: 100%;
}
.box_senior_red p {
    margin: 0; 
    padding: 0;
}
	
.flexbox {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  /* max-width: 1200px; */
  justify-content: center; /* 子要素をflexboxにより中央に配置する */
  /* align-items: center; */  /* 子要素をflexboxにより中央に配置する */
  /* margin-bottom: 100px; */
  }
.waku_kaku_red_das{
margin:3px;
  padding: 1em; /*段落余白*/
  border: 1px dashed  #ff0000; /*枠線*/
  border-radius: 2px; /*角丸*/
}
.item_30 {width: 32%;padding: 2%;}

.item_40 {width: 50%;padding: 2%;}
.item_40 img{width: 100%;padding:3%;}

.item_50 {width: 45%;padding: 2%;}
.item_50 img{width: 30%;padding:3%;float: left;}


.item_60 {width: 50%;padding: 2%;}
.item_60 img{width: 100%;}
.item_60 .tTaisho {font-size:18px;margin-bottom:20px;font-weight:600;
}

.item_60 .kyu {font-size:16px;color:#000;
	font-weight:500;border:0px solid #ddd; padding:1%; margin:1%;background:#f0d174;
}

.item_100 {width: 100%;padding: 2%;}

.item_100_L {width: 100%;padding: 2%;}

}


  


@media (min-width: 767px){
.item_30 {
		width: 31%;
		padding: 1%;
	}


}




.video{
    position:relative;
    width: 100%;
    padding-top:56.25%;
    margin-bottom: 10px;
  }
  .video iframe{
    position:absolute;
    top:0;
    right:0;
    width:100%;
    height:100%;
  }



.line-solid{border-bottom:1px solid #ddd;font-size: 16px;/* font-weight: 600; */}
.txtColor_red{color:#d00e00;font-weight:600;font-size:20px;}


.title_sub {
  position: relative;
  padding: 0.6em;
  background: #000000;
  margin-bottom:30px;
  color: #fff;
  font-size: 23px;
}

.title_sub:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #000000;
  width: 0;
  height: 0;
}




.tx_c{text-align:center}
.tx_l{text-align:left}
.bg_red{background: #f01414;}
.bg_red:after{border-top: 15px solid #ff0000;}



table.group {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	table-layout: fixed;
	}
  
  table.group tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35em;
  }
  table.group th,
  table.group td {
	padding: 1em 10px 1em 1em;
	border-right: 1px solid #bbb;
  }
  table.group th {
	font-size: .85em;
  }
  table.group thead tr{
	background-color: #eee;
  }
  .txt{
	 text-align: left;
	 font-size: .85em;
  }
  .price{
	 text-align: right;
  }
  @media screen and (max-width: 600px) {
    table.group {
	  border: 0;
	  width:100%
	}
	table.group th{
	  background-color: #eee;
	  display: block;
	  border-right: none;
	}
	table.group thead {
	  border: none;
	  clip: rect(0 0 0 0);
	  height: 1px;
	  margin: -1px;
	  overflow: hidden;
	  padding: 0;
	  position: absolute;
	  width: 1px;
	}
	
	table.group tr {
	  display: block;
	  margin-bottom: .625em;
	}
	
	table.group td {
	  border-bottom: 1px solid #bbb;
	  display: block;
	  font-size: .8em;
	  text-align: right;
	  position: relative;
	  padding: .625em .625em .625em 12em;
	  border-right: none;
	}
	
	table.group td::before {
	  content: attr(data-label);
	  font-weight: bold;
	  position: absolute;
	  left: 10px;
	}
	
	table.group td:last-child {
	  border-bottom: 0;
	
	}



  table.group.info01 td.r1 {
    width: 100%;
    text-align: left;
    /* border-right: #999 1px solid;
     background: #447791;*/
	}

	table.group.info01 td.r2 {
		width: 100%;
		text-align: left;
	  /*  border-left: 1px #999 solid;*/
	}




	
  }






.about_yoyaku{
      padding:10px;
      margin-top: 50px;
   }

   .about_yoyaku ol {
      counter-reset:number;
      list-style-type: none!important; 
      padding: 0.3em 0.8em;
      border: solid 2px #212121;
    }
    .about_yoyaku ol li {
      border-bottom: dashed 1px #000000;
      position: relative;
      padding: 0.5em 1em 0.5em 40px;
      line-height: 1.5em;
    }
    .about_yoyaku ol li:before{
      position: absolute;
      content: "● ";
      display:inline-block;
/*       background: #ffb107; */
      color: ffb107;
        font-weight:bold;
      font-size: 15px;
      border-radius: 50%;
      left: 8px;
      width: 25px;
      height: 25px;
      line-height: 25px;
      text-align: center;

      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
    }
    .about_yoyaku ol li:last-of-type {
      border-bottom: none; 
    }


    .boxFlexible {
      position: relative;
      margin: 5em 0 0;
      padding: 1em 1em;
      border: solid 2px #000000;
  }
  .boxFlexible .box-title {
      position: absolute;
      display: inline-block;
      top: -37px;
      left: -2px;
      padding: 0 9px;
      height: 35px;
      line-height: 35px;
      vertical-align: middle;
      font-size: 16px;
      background: #000;
      color: #fff;
      font-weight: 500;
      border-radius: 5px 5px 0 0;
  }
  .boxFlexible p {
      margin: 0;
      padding: 0;
      font-size: 16px;
  }

  .right_up_border {
    background-image: linear-gradient(45deg, /*角度*/
   transparent 49%,
   #d7d6d0 50%, /*斜線の色*/
   #d7d6d0 51%, /*斜線の色*/
   transparent 51%, 
   transparent);
  
  }

  /* グループレッスン リンクボタン */
.link-btn {
  display: inline-block;
  background-color: #000;
  color: #fff;
  padding: 10px 20px;
  text-decoration: none;
  margin-top: 10px;
  border-radius: 0;
}
.link-btn:hover {
  opacity: 0.85;
}
  
  
