*{
    box-sizing: border-box;
}
    
html{
    scroll-behavior: smooth;
}
    
a {
    text-decoration: none;
    color: inherit;
}
    
body{
    margin: 0;
}
    
    
@media (min-width:1000px) and (max-width:1224px) {
  
    header{
      width: 100%;
      max-height: 120px;
      height: 10.71vw;
      position: fixed;
      top: 0;
      z-index: 100;
      background-color: white;
      border-bottom: solid 2px rgb(248, 179, 3);
    }
  
    .header-flex{
      display: flex;
      justify-content: space-between;
    }
  
    .header-left{
      max-height: 120px;
      height: 10.71vw;
    }
  
    .header-logo{
      max-height: 90px;
      height: 8.04vw;
      color: rgb(63, 105, 2);
      font-family: 'Kaisei HarunoUmi', serif;
      display: flex;
    }
  
    .header-name{
      display: inline-block;
      line-height:min(90px,8.04vw) ;
      max-height: 90px;
      height: 8.04vw;
      font-size: min(40px,3.57vw);
      margin-left: min(30px , 2.68vw);
      margin-right: min(7px,0.63vw);
    }
  
    .header-name p{
      display: inline;
      vertical-align: baseline;
    }
  
    .logo-image{
      line-height:min(90px,8.04vw) ;
      max-height: 90px;
      height: 8.04vw;
    }
  
    .logo-image img{
      max-height: 40px;
      height: 3.57vw;
      max-width: 40px;
      width: 3.57vw;
      vertical-align:middle;
    }
  
    .logo-image-sp{
      display: none;
    }
  
    .header-menu-left{
      margin-left: min(50px,4.46vw);
    }
  
    .header-menu-left li{
      list-style: none;
      float: left;
      padding-left: min(1.79vw,20px) ;
      padding-right:min(1.79vw,20px) ;
      border-left:solid 1.5px rgb(63, 105, 2) ;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-size: min(16px,1.43vw);
      position: relative;
    }
  
    .header-menu-left li:hover{
      color: rgb(248, 179, 3);
    }
  
    .header-menu-left li::after{
      content: "";
      position: absolute;
      left: 50%;
      bottom: -5px;
      transform: translateX(-50%);
      width: 0%;
      height: 4px;
      background-color: #00a764;
      transition: all 0.5s;
    }  
    
    .header-menu-left li:hover::after{
      width: 80%;
    }
  
    #top-list{
      border: none;
    }
  
    .header-menu-left ul{
      margin: 0;
      padding: 0;
    }
  
    .header-right{
      max-height: 120px;
      height: 10.71vw;
      margin-right: 2.44vw;   
    }
  
    .header-contact{
      display: flex;
      max-height: 90px;
      height: 8.04vw;
      padding-left: min(20px ,1.79vw);
      padding-top: min(10px,0.89vw);
    }
  
    .header-btn{
      font-size: min(18px,1.61vw);
      max-height: 52px;
      height: 4.64vw;
      line-height: min(52px,4.64vw);
      letter-spacing: 1.7;
    }
  
    .header-btn p {
      display: inline;
      vertical-align: middle;
    }

    .header-btn-mail:hover{
      color: rgb(248, 179, 3);
    }
  
    .header-mail{
      max-height: 52px;
      height: 4.64vw;
      line-height: min(52px,4.64vw);
      display: flex;
      margin-right: min(2.68vw,30px);
    }
  
    .header-tel{
      max-height: 68px;
      height: 6.07vw;
      display: flex;
    }
  
    .tel-info{
      font-size: min(14px,1.25vw);
      line-height: 0;
      
    }
  
    .menu-trigger{
      display: none;
    }
    
    #header-sp-modal{
      display: none;
    }
  
    .header-icon img{
      max-height: 30px;
      max-width: 30px;
      height: 2.68vw;
      width: 2.68vw;
      vertical-align: middle;
    }
  
    .header-icon{
      max-height: 52px;
      height: 4.64vw;
      line-height: min(4.64vw,52px);
      margin-right: min(1.79vw,20px);
    }
  
    .header-icon-sp{
      display: none;
    }
  
    .header-menu-right li{
      list-style: none;
      font-size: min(13px,1.16vw);
      float: left;
      padding-left: min(1.79vw,20px) ;
      padding-right:min(1.79vw,20px) ;
      border-left:solid 1.5px rgb(63, 105, 2) ;
    }

    .header-menu-right li:hover{
      color: #00a764;
    }
  
    #top-list-right{
      border: none;
    }
  
    .header-menu-right ul{
      margin: 0;
      padding: 0;
    }
  
    .fixed_btn{
      position: fixed;
      bottom: 80px; 
      right: -30px;
      padding: 0 20px 0 10px;
      z-index: 100;
      transform: rotate(90deg);
      background-color: rgb(252, 192, 39);
      height: 30px;
      line-height: 30px;
      color: white;
      border: solid 1px rgb(252, 192, 39);
    }
  
    .fixed_btn p{
      vertical-align: middle;
      display: inline;
      letter-spacing: 1px;
    }
  
    .fixed_btn span {
      display: inline-block;
      border: solid 1px white;
      width: 45px;
      vertical-align:15%;
      margin-right: 15px;
      
    }
  
    .fixed_btn:hover{
      opacity: 0.7;
      transition: 0.3s;
    }

    .top-wrapper{
      background-color: rgb(246, 248, 246);
      padding-top: min(15px,1.22vw);
      padding-bottom: 90px;
    }

    .top-banner{
      display: none;
    }

    .swiper{
      display: none;
    }

    .top-banner-sp{
      display: none;
    }
  
    .swiper-sp{
      display: none;
    }
  
    .top-banner-mid{
      width: 100%;
      height: auto;
      margin:0 auto;
      margin-top: min(8.57vw,105px);
      position: relative;

      overflow: hidden;
    }
  
    .swiper-mid {
      width: 100%;
      height: auto;
    }
  
    .swiper-mid img{
      width: 100%;
      height: 100%;
      
    }
  
    .swiper-mid .swiper-pagination-bullet{
      background-color: rgba(211, 254, 255,0.7);
      height: 15px;
      width: 15px;
      margin: 0 15px!important;
      
    }
  
    .top-banner-mid .swiper-button-prev{
      color: rgb(112, 135, 76);
      height: 40px;
      width: 40px;
      
    }
  
    .top-banner-mid .swiper-button-next{
      color: rgb(112, 135, 76);
    }

    .a{
      height: 410px;
      padding-top: min(40px,3.74vw);
    }
    
    .a-title{
      text-align: center;
      width: 320px;
      margin: 0 auto;
      font-size: 20px;
      height: 60px;
      line-height: 70px;
      margin-bottom: 10px;
      border-bottom: solid 3px rgb(248,179,3);
    }
    
    .a-title p{
      vertical-align: middle;
      display: inline;
      font-family: 'Kiwi Maru', serif;
    }
    
    .a-title img{
      width: 30px;
      height: 30px;
      vertical-align:text-top;
      display: inline-block;
    }
    
    .a-point{
      display: flex;
      justify-content: center;
    }
    
    .point{
      max-width: 270px;
      width: 25.23vw;
      border: solid 5px rgb(74, 114, 14);
      margin:20px 0;
      margin-left: min(40px,3.74vw);
      margin-right:  min(40px,3.74vw);
      max-height: 270px;
      height: 25.23vw;
      border-radius: 50%;
      text-align: center;
      color: rgb(50, 83, 1);
      font-family: 'Kosugi', sans-serif;
      
    }
    
    .point-big-1{
      font-size: 28px;
      text-align: center;
      letter-spacing: 10px;
      height: 60px;
      line-height: 60px;
      font-weight: bold;
    }
    
    .point-big-1 p{
      display: inline;
      padding: 0 8px;
      vertical-align: middle;
      border-bottom: dotted 5.5px rgb(248,179,3);
    }
    
    .point-big-2{
      font-size: 28px;
      text-align: center;
      letter-spacing: 4px;
      height: 60px;
      line-height: 60px;
      font-weight: bold;
    }
    
    .point-big-2 p{
      display: inline;
      vertical-align: middle;
      padding: 0 10px;
      border-bottom: dotted 5.5px rgb(248,179,3);
    }
    
    .point-big-3{
      font-size: 24px;
      text-align: center;
      height: 60px;
      line-height: 60px;
      font-weight: bold;
    }
    
    .point-big-3 p{
      display: inline;
      vertical-align: middle;
      padding: 0 5px;
      border-bottom: dotted 5.5px rgb(248,179,3);
    }
    
    .point-small{
      font-size: 19px;
      text-align: center;
      height: 40px;
      line-height: 40px;
      margin-top: 55px;
    }
    
    .point-small p{
      display: inline;
      vertical-align: middle;
    }
    
    .point-small-3{
      font-size: 17px;
      text-align: center;
      height: 40px;
      line-height: 40px;
      margin-top: 55px;
    }
    
    .point-small-3 p{
      display: inline;
      vertical-align: middle;
    }
    
    .point-detail{
      font-size: 15px;
      border: solid 1px rgb(248,179,3);
      border-radius: 5px;
      text-align: center;
      display: inline-block;
      line-height: 24px;
      padding:0 10px ;
      height: 24px;
      margin-top: 20px;
      background-color: rgb(252, 192, 39);
      color: whitesmoke;
      font-weight: bold;
      cursor: pointer;
    }
  
    .point-detail:hover{
      background-color: rgb(238, 171, 3);
    }
    
    .point-detail p{
      display: inline;
      vertical-align: middle;
    }
  
    .select-modal{
      display: none;
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 80%;
      min-width: 950px;
      height: 300px;
      background-color: white;
      border-radius: 5px;
      z-index: 11;
      padding: 2rem;
    
    }
  
    .overlay {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      background-color: rgba(191, 189, 189, 0.8);
      width: 100vw;
      height: 100vh;
      z-index: 10;
    }
  
    .select-close{
      display: block;
      position: relative;
      width: 30px;
      height: 30px;
      float: right;
      cursor: pointer;
    }
     
    .select-close::before, .select-close::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 3px; /* 棒の幅（太さ） */
      height: 27px; /* 棒の高さ */
      background: #333; /* バツ印の色 */
    }
     
    .select-close::before {
      transform: translate(-50%,-50%) rotate(45deg);
    }
     
    .select-close::after {
      transform: translate(-50%,-50%) rotate(-45deg);
    }
  
    .select-title{
      width: 80%;
      margin: 0 auto;
      color: black;
      font-size: 25px;
    }
  
    .select-contents{
      display: flex;
      justify-content: center;
      margin-top: 70px;
    }
  
    .select{
      width: 27%;
      min-width: 250px;
      height: 80px;
      border-radius: 10px;
      margin: 0 auto;
      font-size: 30px;
      text-align: center;
      line-height: 80px;
      font-family: 'Kiwi Maru', serif;
      color: black;
    }
  
    .select p{
      display: inline;
      vertical-align: top;
    }
    a.btn--yellow {
      width: 100%;
      height: 100%;
      background-color: lemonchiffon;
      border-bottom: 5px solid rgb(227, 221, 167);
      font-size: 30px;
    }
  
    a.btn--yellow:hover {
      margin-top: 3px;
      background: rgb(254, 250, 211);
      border-bottom: 2px solid rgb(227, 221, 167);
    }
  
    a.btn--green {
      width: 100%;
      height: 100%;
      background-color: rgb(213, 255, 205);
      border-bottom: 5px solid rgb(163, 206, 154);
      font-size: 30px;
    }
  
    a.btn--green:hover {
      margin-top: 3px;
      background: rgb(220, 253, 214);
      border-bottom: 2px solid rgb(163, 206, 154);
    }
  
    a.btn--blue {
      width: 100%;
      height: 100%;
      background-color: lightcyan;
      border-bottom: 5px solid rgb(169, 214, 214);
      font-size: 30px;
    }
  
    a.btn--blue:hover {
      margin-top: 3px;
      background: rgb(221, 252, 252);
      border-bottom: 2px solid rgb(169, 214, 214);
    }
  
    a.btn--shadow {
      -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
      box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
    }

    .reason{
      width: 100%;
      height: auto;
      margin-top: 120px;
      padding-top: 40px;
      
      margin-bottom: 150px;
    }
  
    .reason-title{
      font-size: 40px;
      width: 430px;
      height: 80px;
      color: white;
      border-radius: 3px;
      margin: 0 auto;
      letter-spacing: 2px;
      margin-bottom: 60px;
      text-align: center;
      line-height: 80px;
      font-family: 'Kiwi Maru', serif;
      background-color: rgb(161, 184, 126);
    }
  
    .reason-title p{
      display: inline;
      vertical-align: top;
      border-bottom: solid 3px rgb(248, 224, 167);
      padding-left: 7px;
      padding-right: 7px;
    }
  
    .reason-wrapper{
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      padding-bottom: 40px;
      background-color: rgb(161, 184, 126);
    }
  
    .reason-1,.reason-2,.reason-3,.reason-4 {
      width: 50%;
      max-height: 430px;
      height: 35.83vw;
      background-color: rgba(255, 255, 255, 0.6);
      display: flex;
      position: relative;
    }
  
    .reason-1{
      background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-1.png);
      background-size: cover;
    }
  
    .reason-2{
      background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-2.png);
      background-size: cover;
    }
  
    .reason-3{
      background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-3.png);
      background-size: cover;
    }
  
    .reason-4{
      background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-4.png);
      background-size: cover;
    }
  
    .reason-content-1 , .reason-content-2 , .reason-content-3 ,.reason-content-4{
      width: 50%;
      min-width: 300px;
      height: 160px;
      margin: 0 auto;
      background-color: rgba(255, 255, 255, 0.8);
      margin-top: 130px;
      cursor: pointer;
    }
  
    .reason-name{
      height: 30px;
      line-height: 30px;
      color: rgb(50, 83, 1);
      text-align: center;
      vertical-align: middle;
    }
  
    .name-1{
      height: 40px;
      line-height: 40px;
      margin-top: 20px;
      color: rgb(50, 83, 1);
      font-size: 20px;
      padding: 0 10px;
      text-align: center;
      width: 100%;
      
      display: inline-block;
    }
  
    .name-1 p{
      display: inline;
      vertical-align: middle;
      border-bottom: dotted 3px rgb(248, 179, 3);
      padding: 0 10px;
    }
  
    .name-4{
      height: 40px;
      line-height: 40px;
      border-bottom: dotted 3px rgb(248, 179, 3);
      color: rgb(50, 83, 1);
      font-size: 19px;
      padding: 0 5px;
      text-align: center;
      margin: 0 auto;
      margin-top: 20px;
      display: inline-block;
    }
  
    .name-4 p{
      display: inline;
      vertical-align: middle;
    }
  
    .name-2{
      height: 40px;
      line-height: 40px;
      border-bottom: dotted 6px rgb(248, 179, 3);
      color: rgb(50, 83, 1);
      font-size: 30px;
      display: inline-block;
      padding: 0 10px;
      text-align: center;
      margin: 0 auto;
      font-weight: bold;
      margin-top: 20px;
      letter-spacing: 4px;
    }
  
    .name-2 p{
      display: inline;
      vertical-align: middle;
    }
  
    .name-3{
      height: 40px;
      line-height: 40px;
      border-bottom: dotted 6px rgb(248, 179, 3);
      color: rgb(50, 83, 1);
      font-size: 27px;
      display: inline-block;
      padding: 0 10px;
      text-align: center;
      margin: 0 auto;
      font-weight: bold;
      margin-top: 20px;
    }
  
    .name-3 p{
      display: inline;
      vertical-align: middle;
    }
  
    .name-2{
      height: 40px;
      line-height: 40px;
      border-bottom: dotted 6px rgb(248, 179, 3);
      color: rgb(50, 83, 1);
      font-size: 30px;
      display: inline-block;
      padding: 0 10px;
      text-align: center;
      margin: 0 auto;
      font-weight: bold;
      margin-top: 20px;
    }
  
    .name-2 p{
      display: inline;
      vertical-align: middle;
    }
  
    .reason-name p{
      vertical-align: middle;
      
    }
  
    .reason-trigger{
      width: 100%;
      height:5px;
      text-align: end;
      color: white;
      position: relative;
    }
  
    .reason-trigger img{
      transform-origin: center 0 0;
      transform: rotate(45deg);
    }
  
    .reason-trigger-sp{
      display: none;
    }

    .reason-close-trigger{
      display: block;
      position: relative;
      width: 30px;
      height: 30px;
      float: right;
      cursor: pointer;
      margin-top: 20px;
      margin-right: 20px;
    }
     
    .reason-close-trigger::before, .reason-close-trigger::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 3px; /* 棒の幅（太さ） */
      height: 27px; /* 棒の高さ */
      background: #333; /* バツ印の色 */
    }
     
    .reason-close-trigger::before {
      transform: translate(-50%,-50%) rotate(45deg);
    }
     
    .reason-close-trigger::after {
      transform: translate(-50%,-50%) rotate(-45deg);
    }
  
    .tri-1{
      padding-right: 35px;
    }
  
    .tri-3{
      padding-right: 25px;
    }
  
  
    .reason-detail{
      position: absolute;
      top: 0;
      left: 0;
      display: none;
      width: 100%;
      height: 100%;
      background-color:rgba(255, 255, 255, 0.9) ;
    }
  
    .reason-detail-wrapper{
      width: 90%;
      height: 90%;
      margin: 0 auto;
      margin-top: 10px;
    }
  
    .reason-detail-title{
      font-size: min(1.6vw,22px);
      display: flex;
      font-family: 'Kosugi', sans-serif;
      color: rgb(50, 83, 1);
      font-weight: bold;
      height: 50px;
      line-height: 50px;
      display: inline;
      white-space: nowrap;
    }
  
    .reason-detail-title p{
      display: inline;
      vertical-align: top;
    }
  
    .reason-detail-content{
      display: flex;
      height: min(6vw,60px);
    }
  
    .reason-detail-content-a{
      font-size: 20px;
      margin-right: 15px;
      height: min(6vw,60px);
      line-height: min(3vw,30px);
      display: inline;
    }
  
    .reason-detail-content-a p{
      display: inline;
      vertical-align: middle;
    }
  
    .reason-detail-content-b{
      height: min(6vw,60px);
      line-height: min(3vw,30px);
      display: inline;
      font-size:min(1.2vw,16px);
    }
  
    .reason-detail-content-b p{
      display: inline;
      vertical-align: middle;
    }
  
    .lesson {
      width: 100%;
      height: 100px;
      display: flex;
      justify-content: end;
      margin-top: 100px;
      padding-right: 100px;
    }
  
    .lesson-title{
      font-size: 28px;
      font-family: 'Kiwi Maru', serif;
      text-align:center;
      width: 300px;
  
      
    }
  
    .lesson-title span{
      width: 20px;
      height: 25px;
      display: inline-block;
      margin-left: 40px;
      vertical-align: middle;
      clip-path: polygon(0 0,0% 100%,100% 50%);
      background-color: rgb(248, 179, 3);
    }
  
    .price{
      width: 100%;
      height: 1400px;
    }
  
    .price-title{
      width: 240px;
      height: 75px;
      border-bottom: solid 4px  rgb(248, 179, 3);
      font-family: 'Kiwi Maru', serif;
      font-size: min(50px,4.1vw);
      margin: 0 auto;
      margin-top: min(50px,4vw);
      margin-bottom: 30px;
      text-align: center;
    }
    
    .price-which{
      display: flex;
      justify-content: center;
    }
  
    *,
    *:before,
    *:after {
      -webkit-box-sizing: inherit;
      box-sizing: inherit;
    }
    
    html {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
    }
    
    .btn,
    a.btn,
    button.btn {
      
      font-family: 'Kiwi Maru', serif;
      line-height: 1.5;
      position: relative;
      display: inline-block;
      padding: 1rem 4rem;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      text-align: center;
      vertical-align: middle;
      text-decoration: none;
      letter-spacing: 0.1em;
      color: black;
      border-radius: 0.5rem;
    }
    
    a.btn-border-shadow {
      padding: calc(1.5rem - 12px) 3rem 1.5rem;
    
      background: #fff;
    }
    
    a.btn-border-shadow:before {
      position: absolute;
      top: -6px;
      left: -6px;
    
      width: 100%;
      height: 100%;
    
      content: "";
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
    
      border: 2px solid black;
      border-radius: 0.5rem;
    }
    
    a.btn-border-shadow:hover {
      padding: calc(1.5rem - 6px) 3rem;
    }
    
    a.btn-border-shadow:hover:before {
      top: 0;
      left: 0;
    }
    
    a.btn-border-shadow--color {
      border-radius: 0;
      background: rgb(252, 192, 39);
    }
    
    a.btn-border-shadow--color:before {
      border-radius: 0;
    }
  
    .price-select{
      width: 200px;
      font-size: 20px;
      text-align: center;
      margin-top: 20px;
    }
  
    .price-content{
      width: 100%;
      height: 1300px;
    }
  
    .price-name,.other-name{
      font-size: min(24px,1.96vw);
      letter-spacing: 3.5px;
      margin-top: min(30px,2.45vw);
      margin-left: min(80px,6vw);
      border-bottom: dotted 2px rgb(248, 179, 3);
      display: inline-block;
      padding-left: min(20px,1.63vw);
      padding-right: min(20px,1.63vw);
      height: 40px;
      line-height: 40px;
    }
  
    .price-name p{
      display: inline;
      vertical-align: middle;
    }
  
    .other-name p{
      display: inline;
      vertical-align: middle;
    }
  
    .price-menu{
      font-size: 19px;
      letter-spacing: 2px;
      margin:0 auto;
      width: 1000px;
    }
  
    .price-table table{
      color: black;
      margin: 0 auto;
      margin-bottom: 30px;
      border-collapse: collapse;
      white-space: nowrap;
      table-layout: fixed;
      max-width: 1000px;
      width: 95vw;
      border:solid 2px white;
      font-size: 17px;
    }
    
    .price-table td{
      border:solid 2px white;
      table-layout: fixed;
      text-align: center;
    }
    
    .price-table td:first-child{
      font-size: 20px;
      background-color: rgba(229, 251, 195,0.5) ;
    }
    
    .price-table tr:first-child {
      height: 80px;
      letter-spacing: 4px;
      color: white;
      line-height: 30px;
      background-color: rgb(161, 184, 126);
    }
  
    .price-table span{
      color: rgb(248, 179, 3);
    }
  
    .price-table tr:first-child p{
      display: inline;
      vertical-align: bottom;
    }
    
  
    .price-table tr {
      height: 100px;
      font-size: 20px;
      letter-spacing: 2px;
      
    }
  
    .table-mini {
      height:20px;
      background: rgb(161, 184, 126);
      font-size: 14px;
      line-height: 20px;
    }
  
    .table-mini p{
      display: inline;
      font-size: 14px;
      vertical-align: middle;
  
    }

    .lesson-price-line{
      max-width: 1000px;
      width: 95vw;
      margin: 0 auto;
      height: 10px;
      background-color: rgb(165, 191, 126);
      margin-top: 20px;
    }
  
    .text-price{
      margin-bottom: 50px;
    }
  
    .text-price table{
      color: black;
      margin: 0 auto;
      margin-bottom: 30px;
      border-collapse: collapse;
      white-space: nowrap;
      table-layout: fixed;
      max-width: 1000px;
      width: 95vw;
      border:solid 2px white;
      font-size: 17px;
    }
    
    .text-price td{
      border:solid 2px white;
      table-layout: fixed;
      text-align: center;
    }
    
    .text-price td:first-child{
      font-size: 20px;
      background-color: rgba(229, 251, 195,0.5) ;
    }
    
    .text-price tr:first-child {
      height: 80px;
      letter-spacing: 4px;
      color: white;
      line-height: 30px;
      background-color: rgb(161, 184, 126);
    }
  
    .text-price span{
      color: rgb(248, 179, 3);
    }
  
    .text-price tr:first-child p{
      display: inline;
      vertical-align: bottom;
    }
    
  
    .text-price tr {
      height: 100px;
      font-size: 20px;
      letter-spacing: 2px;
      
    }
    
    .lesson-price-detail{
      max-width: 970px;
      width: 95vw;
      margin: 0 auto;
      display: flex;
    }
  
    .lesson-price-detail-a{
      margin-right: 15px;
    }
  
    .lesson-price-detail-b span{
      color: rgb(238, 171, 3);
    }
  
    .ohter-price{
      display: flex;
      margin-bottom: 10px;
      width: 80vw;
      margin: 0 auto;
    }

    .ohter-price-flex{
      display: flex;
    }
  
    .other-detail{
      font-size: 20px;
      margin-left: 80px;
      margin-top: 30px;
      height: 40px;
      line-height: 40px;
  
    }
  
    .other-detail p{
      display: inline;
      vertical-align: middle;
    }


    .flow {
      margin-top: 70px;
      width: 100%;
      height: 830px;
      background-color: rgba(252, 192, 39,0.1);
      padding: 10px 0;
    }
  
    .flow-title{
      width: 350px;
      height: 75px;
      font-family: 'Kiwi Maru', serif;
      font-size: 40px;
      margin: 0 auto;
      margin-top: 50px;
      margin-bottom: 60px;
      text-align: center;
    }
  
    .flow-title p{
      display: inline;
      border-bottom: dotted 20px white;
      padding: 0 10px;
    }
  
    .flow-content{
      border: solid 1.5px rgb(248, 179, 3);
      border-radius: 7px;
      width: 60%;
      margin: 0 auto;
      height: 60px;
      text-align: center;
      line-height: 60px;
      font-size: 20px;
      background-color: white;
    }
  
    .flow-content p{
      display: inline;
      vertical-align: middle;
    }
  
    .flow-bitween{
      height: 45px;
      width: 50%;
      margin: 7px auto;
      position: relative;
    }
  
    .line{
      border-left: dashed 3px rgba(252, 192, 39,0.5);
      height: 30px;
  
    }
  
    .arrow{
      position: absolute;
      left: -13px;
      top: 20px;
      height: 30px;
      width: 30px;
      color: rgb(252, 192, 39);
      text-align: center;
    }
  
    .arrow i{
      font-size: 30px;
    }

    .line-or{
      color: rgb(255, 188, 20);
      font-size: 23px;
      height: 50px;
      line-height: 50px;
      margin:0 auto;
      width: 53%;
    }
  
    .line-or span {
      display: inline;
      vertical-align: middle;
    }

    .info{
      display: flex;
      justify-content: center;
      margin-top: 60px;
      height: auto;
      margin-bottom: min(60px,4.9vw);
    }
  
    .info-wrapper-flex{
      width: 55vw;
      padding-top: 50px;
    
    }
  
    .info-graph{
      width: 45vw;
      
    }
  
    .info-title{
      width: 300px;
      margin: 0 auto;
      font-size: 25px;
      font-family: 'Kiwi Maru', serif;
      text-align: center;
    }
  
    .info-title p{
      border-bottom: solid 1px rgb(248, 179, 3);
      display: inline;
      padding: 0 10px 0 10px;
    }
  
    .info-content table{
      width: 85%;
      margin: 0 auto;
      margin-top: 50px;
    }
    
    .info-content td:first-child{
      font-size: 18px;
      border-bottom: solid 1.5px rgb(74, 114, 14);
      width:150px ;
      padding-left: 0;
      text-align: center;
    }

    .info-content td br{
      display: none;
    }
  
    .info-content td span{
      display: block;
    }
    
    .info-content tr{
      height:85px;
    }
    
    .info-content td{
      border-bottom: solid 1.5px #a6a7a8;
      padding-left: 40px;
      white-space: nowrap;
    }
    
    .info-content tr:first-child{
      vertical-align: middle;
    }
  
    .info-contact{
      border: solid 1px #00a764;
      width: 300px;
      border-radius: 5px;
      text-align: center;
      margin: 70px 7.5% 40px auto;
      cursor: pointer;
    }
  
    .info-contact:hover{
      background-color:#00a764;
      color: white;
      transition: all .5s ;
    }
  
    .info-photo{
      width: 43vw;
      margin: 0 auto;
      height: auto;
    }
  
    .info-photo img{
      width: 100%;
      height: 100%;
    }
  
    .info-map{
      width: 43vw;
      max-height: 350px;
      height: 28.59vw;
      margin: 0 auto;
      margin-top: 15px;
    }
  
    .info-map iframe{
      width: 100%;
      height: 100%;
    }
  
    footer{
      height: 100px;
      width: 100%;
      background-color: rgb(50, 83, 1);
      position: relative;
    }
  
    .foot-first{
      display: flex;
      justify-content: center;
      margin: 0 auto;
      width: 380px;
    }
  
    .foot-title{
      font-size: 35px;
      color: white;
      text-align: center;
      margin: 0 auto;
      height: 85px;
      line-height: 85px;
    }
  
    .foot-title p{
      display: inline;
      vertical-align: middle;
     
      font-family: 'Kaisei HarunoUmi', serif;
    }
  
    .foot-logo {
      height: 85px;
      width: 35px;
      line-height: 85px;
    }
  
    .foot-logo img{
      width: 100%;
      height: 35px;
      display: inline;
      vertical-align: middle;
    }
  
    .foot-last{
      color: white;
      font-size: 14px;
      margin: 0 10px 0 auto;
      height: 15px;
      position: absolute;
      top: 60px;
      right: 50px;
    }
  

}

@media (max-width:1224px) and (min-width:877px) {

  .a{
    height: 410px;
    padding-top: min(40px,3.74vw);
  }
  
  .a-title{
    text-align: center;
    width: 320px;
    margin: 0 auto;
    font-size: 20px;
    height: 60px;
    line-height: 70px;
    margin-bottom: 10px;
    border-bottom: solid 3px rgb(248,179,3);
  }
  
  .a-title p{
    vertical-align: middle;
    display: inline;
    font-family: 'Kiwi Maru', serif;
  }
  
  .a-title img{
    width: 30px;
    height: 30px;
    vertical-align:text-top;
    display: inline-block;
  }
  
  .a-point{
    display: flex;
    justify-content: center;
  }
  
  .point{
    max-width: 270px;
    width: 25.23vw;
    min-width: 240px;
    border: solid 5px rgb(74, 114, 14);
    margin:20px 0;
    margin-left: min(40px,3.28vw);
    margin-right:  min(40px,3.28vw);
    max-height: 270px;
    height: 25.23vw;
    min-height: 240PX;
    border-radius: 50%;
    text-align: center;
    color: rgb(50, 83, 1);
    font-family: 'Kosugi', sans-serif;
    
  }
  
  .point-big-1{
    font-size: 28px;
    text-align: center;
    letter-spacing: 10px;
    height: 60px;
    line-height: 60px;
    font-weight: bold;
  }
  
  .point-big-1 p{
    display: inline;
    padding: 0 8px;
    vertical-align: middle;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-big-2{
    font-size: 28px;
    text-align: center;
    letter-spacing: 4px;
    height: 60px;
    line-height: 60px;
    font-weight: bold;
  }
  
  .point-big-2 p{
    display: inline;
    vertical-align: middle;
    padding: 0 10px;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-big-3{
    font-size: min(24px,2.3vw);
    text-align: center;
    height: 60px;
    line-height: 60px;
    font-weight: bold;
  }
  
  .point-big-3 p{
    display: inline;
    vertical-align: middle;
    padding: 0 5px;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-small{
    font-size: 19px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    margin-top: 55px;
  }
  
  .point-small p{
    display: inline;
    vertical-align: middle;
  }
  
  .point-small-3{
    font-size: 17px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    margin-top: 55px;
  }
  
  .point-small-3 p{
    display: inline;
    vertical-align: middle;
  }
  
  .point-detail{
    font-size: 15px;
    border: solid 1px rgb(248,179,3);
    border-radius: 5px;
    text-align: center;
    display: inline-block;
    line-height: 24px;
    padding:0 10px ;
    height: 24px;
    margin-top: 20px;
    background-color: rgb(252, 192, 39);
    color: whitesmoke;
    font-weight: bold;
    cursor: pointer;
  }

  .point-detail:hover{
    background-color: rgb(238, 171, 3);
  }
  
  .point-detail p{
    display: inline;
    vertical-align: middle;
  }

  .select-modal{
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    height: 300px;
    background-color: white;
    border-radius: 5px;
    z-index: 11;
    padding: 2rem;
  
  }

  .overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(191, 189, 189, 0.8);
    width: 100vw;
    height: 100vh;
    z-index: 10;
  }

  .select-close{
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    float: right;
    cursor: pointer;
  }
   
  .select-close::before, .select-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px; /* 棒の幅（太さ） */
    height: 27px; /* 棒の高さ */
    background: #333; /* バツ印の色 */
  }
   
  .select-close::before {
    transform: translate(-50%,-50%) rotate(45deg);
  }
   
  .select-close::after {
    transform: translate(-50%,-50%) rotate(-45deg);
  }

  .select-title{
    width: 80%;
    margin: 0 auto;
    color: black;
    font-size: 25px;
  }

  .select-contents{
    display: flex;
    justify-content: center;
    margin-top: 70px;
  }

  .select{
    width: 27%;
    height: 80px;
    border-radius: 10px;
    margin: 0 auto;
    font-size: 30px;
    text-align: center;
    line-height: 80px;
    font-family: 'Kiwi Maru', serif;
    color: black;
  }

  .select p{
    display: inline;
    vertical-align: top;
  }
  a.btn--yellow {
    width: 100%;
    height: 100%;
    background-color: lemonchiffon;
    border-bottom: 5px solid rgb(227, 221, 167);
    font-size: 30px;
  }

  a.btn--yellow:hover {
    margin-top: 3px;
    background: rgb(254, 250, 211);
    border-bottom: 2px solid rgb(227, 221, 167);
  }

  a.btn--green {
    width: 100%;
    height: 100%;
    background-color: rgb(213, 255, 205);
    border-bottom: 5px solid rgb(163, 206, 154);
    font-size: 30px;
  }

  a.btn--green:hover {
    margin-top: 3px;
    background: rgb(220, 253, 214);
    border-bottom: 2px solid rgb(163, 206, 154);
  }

  a.btn--blue {
    width: 100%;
    height: 100%;
    background-color: lightcyan;
    border-bottom: 5px solid rgb(169, 214, 214);
    font-size: 30px;
  }

  a.btn--blue:hover {
    margin-top: 3px;
    background: rgb(221, 252, 252);
    border-bottom: 2px solid rgb(169, 214, 214);
  }

  a.btn--shadow {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  }
}

@media (max-width:876px) and (min-width:771px) {

  .a{
    height: 350px;
    padding-top: 10px;
    background-color: rgb(74, 123, 1);
  }
  
  .a-title{
    display: none;
  }
  
  .a-point{
    width: 100%;
    height: 350px;
  }
  
  .point{
    width: 90%;
    border: solid 5px rgb(74, 123, 1);
    margin:10px auto;
    height: 100px;
    text-align: center;
    color: rgb(50, 83, 1);
    font-family: 'Kosugi', sans-serif;
    background-color: white;
    cursor: pointer;
  }

  .point:hover{
    background-color: rgb(224, 232, 226);
  }
  
  .point-big-1{
    font-size: 25px;
    text-align: center;
    letter-spacing: 10px;
    height: 40px;
    line-height: 40px;
    font-weight: bold;
  }
  
  .point-big-1 p{
    display: inline;
    padding: 0 8px;
    vertical-align: top;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-big-2{
    font-size: 25px;
    text-align: center;
    letter-spacing: 4px;
    height: 40px;
    line-height: 40px;
    font-weight: bold;
  }
  
  .point-big-2 p{
    display: inline;
    vertical-align: top;
    padding: 0 10px;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-big-3{
    font-size: 22px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    font-weight: bold;
  }
  
  .point-big-3 p{
    display: inline;
    vertical-align: middle;
    padding: 0 5px;
    border-bottom: dotted 5.5px rgb(248,179,3);
  }
  
  .point-small{
    font-size: 16px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    margin-top: 10px;
  }
  
  .point-small p{
    display: inline;
    vertical-align: middle;
  }
  
  .point-small-3{
    font-size: 15px;
    text-align: center;
    height: 40px;
    line-height: 40px;
  }
  
  .point-small-3 p{
    display: inline;
    vertical-align: middle;
  }
  
  .point-detail{
    display: none;
  }

  .select-modal{
    display: none;
    position: fixed;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70%;
    height: 450px;
    background-color: white;
    border-radius: 5px;
    z-index: 11;
    padding: 2rem;
  
  }

  .overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(191, 189, 189, 0.8);
    width: 100vw;
    height: 100vh;
    z-index: 10;
  }

  .select-close{
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    float: right;
    cursor: pointer;
  }
   
  .select-close::before, .select-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px; /* 棒の幅（太さ） */
    height: 27px; /* 棒の高さ */
    background: #333; /* バツ印の色 */
  }
   
  .select-close::before {
    transform: translate(-50%,-50%) rotate(45deg);
  }
   
  .select-close::after {
    transform: translate(-50%,-50%) rotate(-45deg);
  }

  .select-title{
    width: 90%;
    margin: 20px auto;
    color: black;
    font-size: 23px;
  }

  .select-contents{
    margin-top: 40px;
  }

  .select{
    width: 80%;
    height: 80px;
    border-radius: 10px;
    margin: 10px auto;
    font-size: 30px;
    text-align: center;
    line-height: 80px;
    font-family: 'Kiwi Maru', serif;
    color: black;
  }

  .select p{
    display: inline;
    vertical-align: top;
  }

  a.btn--yellow {
    width: 100%;
    height: 100%;
    background-color: lemonchiffon;
    border-bottom: 5px solid rgb(227, 221, 167);
    font-size: 30px;
  }

  a.btn--yellow:hover {
    margin-top: 3px;
    background: rgb(254, 250, 211);
    border-bottom: 2px solid rgb(227, 221, 167);
  }

  a.btn--green {
    width: 100%;
    height: 100%;
    background-color: rgb(213, 255, 205);
    border-bottom: 5px solid rgb(163, 206, 154);
    font-size: 30px;
  }

  a.btn--green:hover {
    margin-top: 3px;
    background: rgb(220, 253, 214);
    border-bottom: 2px solid rgb(163, 206, 154);
  }

  a.btn--blue {
    width: 100%;
    height: 100%;
    background-color: lightcyan;
    border-bottom: 5px solid rgb(169, 214, 214);
    font-size: 30px;
  }

  a.btn--blue:hover {
    margin-top: 3px;
    background: rgb(221, 252, 252);
    border-bottom: 2px solid rgb(169, 214, 214);
  }

  a.btn--shadow {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  }
}



@media (max-width:999px) and (min-width:771px) {

  header{
    width: 100%;
    height: 80px;
    position: fixed;
    top: 0;
    z-index: 100;
    background-color: rgb(74, 123, 1);
  }



  .header-flex{
    display: flex;
    justify-content: space-between;
  }

  .header-left{
    height: 80px;
    
  }

  .header-logo{
    height: 80px;
    color: white;
    font-family: 'Kaisei HarunoUmi', serif;
    display: flex;
  }

  .header-name{
    display: inline-block;
    line-height: 80px;
    height: 80px;
    font-size: 30px;
    margin-left: min(30px,3vw);
    margin-right: 7px;
  }

  .header-name p{
    display: inline;
    vertical-align: baseline;
  }

  .logo-image-sp{
    height: 80px;
    line-height: 75px;
  }

  .logo-image-sp img{
    height: 30px;
    width: 30px;
    vertical-align:middle;
  }

  .logo-image{
    display: none;
  }

  .header-menu-left{
    display: none;    
  }

  .header-right{
    height: 80px;
    margin-right: 10px;    
  }

  .header-contact{
    display: flex;
    height: 80px;
    padding-left: 20px;
    padding-top: 10px;
  }

  .header-btn{
    display: none;
  }

  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    
  }
  .menu-trigger {
    position: relative;
    top:-2px;
    width: 40px;
    height: 40px;
    background: none;
    appearance: none;
    cursor: pointer;  
    border:none;
    margin-top: 18px;
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 70%;
    height: 4px;
    border-radius: 2px;
    background-color: white;
    
  }
  .menu-trigger span:nth-of-type(1) {
    top: 1px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 11px;
  }
  .menu-trigger span:nth-of-type(3) {
    top: 21px;
  }
  
  .menu-trigger.active span:nth-of-type(1) {
      transform: translateY(10px) rotate(-45deg);
    }
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
          
    transform: translateY(-10px) rotate(45deg);
  }
  
  #header-sp-modal{
    display: none;
    position:fixed;
    top:0;
    right:0;
    bottom: 0;
    left:0;
    background-color: white;
    z-index: 100;
    margin-top: 80px;
    width:100%;
    height: 560px;
  }

  .header-icon-sp img{
    height: 30px;
    width: 30px;
    vertical-align: middle;
  }

  .header-icon-sp:hover{
    background-color: rgb(236, 236, 236);
  }

  .sp-modal-tr ul{
    margin: 0;
    padding: 0;
  }
  
  .sp-modal-tr li{
    font-size: 20px;
    font-weight: lighter;
    list-style:none;
    font-family: sans-serif;
    line-height: 60px;
    border-bottom:1px solid #dee7ec ;
    margin:0 40px;
    display: block;
    padding-left: 20px;
  }

  .sp-modal-tr span{
    position: relative;
  }

  .sp-modal-tr span:hover{
    color: rgb(248,179,3);
  }

  .sp-modal-tr span::after{
    content: "";
    position: absolute;
    left: 50%;
    bottom: -5px;
    transform: translateX(-50%);
    width: 0%;
    height: 2px;
    background-color: #00a764;
    transition: all 0.5s;
  }  
  
  .sp-modal-tr span:hover::after{
    width: 110%;
  }
  
  #sp-modal-tr-top{
    border-top: 1px solid #dee7ec  ;
    margin-top: 50px;
  }
  
  #header-sp-modal p {
    text-align: center;
    font-size:15px;
  }

  .sp-modal-td ul{
    margin: 0;
    padding: 0;
  }

  .sp-modal-td{
    margin: 0 auto;
    width: 600px;
  }

  .sp-modal-td li{
    width: 200px;
    font-size: 12px;
    list-style:none;
    font-family: sans-serif;
    line-height: 40px;
    border-left:1px solid #dee7ec ;
    border-right:1px solid #dee7ec ;
    text-align: center;
    float: left;
    justify-content: center;
    margin-top: 50px;
  }

  .sp-modal-td li:hover{
    color: rgb(248, 179, 3);
  }
  
  #sp-modal-td-top{
    border-right: none  ;    
  }

  .select-title-sp{
    font-size: 16px;
    margin-top: 30px;
  }

  .select-title-sp span{
    color: #d2dce2;
  }

  .select-contents-sp{
    display: flex;
    justify-content: center;
    margin-top: 20px;
  }

  .select-sp{
    width: 30%;
    height: 70px;
    border-radius: 10px;
    margin: 0 auto;
    font-size: 15px;
    text-align: center;
    line-height: 70px;
    font-family: 'Kiwi Maru', serif;
    color: black;
  }

  .select-sp p{
    display: inline;
    vertical-align: top;
  }

  *,
  *:before,
  *:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
  }
  
  html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  
  .btn,
  a.btn,
  button.btn {
    
    font-family: 'Kiwi Maru', serif;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 1rem 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: black;
    border-radius: 0.5rem;
  }

  a.btn--yellow-sp {
    width: 100%;
    height: 100%;
    background-color: lemonchiffon;
    border-bottom: 5px solid rgb(227, 221, 167);
    font-size: 20px;
    padding: 15px 15px;
  }

  a.btn--yellow-sp:hover {
    margin-top: 3px;
    background: rgb(254, 250, 211);
    border-bottom: 2px solid rgb(227, 221, 167);
  }

  a.btn--green-sp {
    width: 100%;
    height: 100%;
    background-color: rgb(213, 255, 205);
    border-bottom: 5px solid rgb(163, 206, 154);
    font-size: 20px;
    padding: 15px 15px
  }

  a.btn--green-sp:hover {
    margin-top: 3px;
    background: rgb(220, 253, 214);
    border-bottom: 2px solid rgb(163, 206, 154);
  }

  a.btn--blue-sp {
    width: 100%;
    height: 100%;
    background-color: lightcyan;
    border-bottom: 5px solid rgb(169, 214, 214);
    font-size: 20px;
    padding: 15px 15px
  }

  a.btn--blue-sp:hover {
    margin-top: 3px;
    background: rgb(221, 252, 252);
    border-bottom: 2px solid rgb(169, 214, 214);
  }

  a.btn--shadow {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  }

  .header-icon-sp{
    height: 40px;
    width: 40px;
    line-height: 40px;
    margin-right: 20px;
    background-color: white;
    border-radius: 20px;
    text-align: center;
    margin-top: 10px;
  }

  .header-icon{
    display: none;
  }

  .header-menu-right{
    display: none;
  }

  .fixed_btn{
      display: none;
  }

  .top-wrapper{
    width: 100%;
    height: 700px;
    margin-top: 80px;
  }

  .top-banner{
    display: none;
  }

  .swiper{
    display: none;
  }

  .top-banner-sp{
    display: none;
  }

  .swiper-sp{
    display: none;
  }

  .top-banner-mid{
    width: 100%;
    height: auto;
    margin:0 auto;
    position: relative;
    overflow: hidden;
  }

  .swiper-mid {
    width: 100%;
    height: auto;
  }

  .swiper-slide img{
    width: 100%;
    height: 100%;
    
  }

  .swiper-mid .swiper-pagination-bullet{
    background-color: rgba(211, 254, 255,0.7);
    height: 15px;
    width: 15px;
    margin: 0 15px!important;
    
  }

  .top-banner-mid .swiper-button-prev{
    color: rgb(112, 135, 76);
    height: 40px;
    width: 40px;
    
  }

  .top-banner-mid .swiper-button-next{
    color: rgb(112, 135, 76);
  }

  .reason{
    width: 100%;
    height: 100%;
    margin-bottom: 30px;
  }

  .reason-title{
    text-align: center;
    font-size: 26px;
    font-family: 'Kiwi Maru', serif;
    color: rgb(50, 83, 1);
    height: 30px;
    margin-top: 40px;
    line-height: 30px;
  }

  .reason-title p{
    display: inline;
    vertical-align: middle;
  }

  .reason-1,.reason-2,.reason-3 {
    margin-bottom: 25px;
  }


  .reason-content-1{
    background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-1.png);
    background-size: cover;
    width: 100%;
    height: 230px;
    padding-top: 75px;
    max-width: 570px;
    margin: 0 auto;
    margin-top: 40px;
  }

  .reason-content-2{
    background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-2.png);
    background-size: cover;
    width: 100%;
    height: 230px;
    padding-top: 75px;
    max-width: 570px;
    margin: 0 auto;
  }

  .reason-content-3{
    background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-3.png);
    background-size: cover;
    width: 100%;
    height: 230px;
    padding-top: 75px;
    max-width: 570px;
    margin: 0 auto;
  }

  .reason-content-4{
    background-image: url(http://110603c0e9d34d3f.main.jp/rensei-hp/rs-reason-4.png);
    background-size: cover;
    width: 100%;
    height: 230px;
    padding-top: 75px;
    max-width:570px ;
    margin: 0 auto;
  }

  .reason-trigger{
    display: none;
  }


  .reason-trigger-sp{
    width: 100%;
    height: 38px;
    color: white;
    background-color: rgb(74, 123, 1);
    text-align: center;
    padding-top: 7px;
    position: relative;
    max-width: 570px;
    margin: 0 auto;
  }
  
  .reason-trigger-sp.open span{
    transform-origin: center 0 0;
    transform: rotate(180deg);
    transition: rotate 1000;
    position: absolute;
    top: 25px;
    left: 48.54%;
  }

  .reason-detail{
    display: none;
    height: 350px;
    width: 100%;
    border: solid 1.5px rgb(74, 123, 1);
    max-width: 570px;
    margin: 0 auto;
  }

  .reason-detail-wrapper{
    width: 90%;
    height: 90%;
    margin: 0 auto;
    margin-top: 20px;
  }

  .reason-detail-title{
    font-size: 20px;
    display: flex;
    font-family: 'Kosugi', sans-serif;
    color: rgb(50, 83, 1);
    font-weight: bold;
    height: 50px;
    line-height: 50px;
    display: inline;
    white-space: nowrap;
  }

  .reason-detail-title p{
    display: inline;
    vertical-align: top;
  }

  .reason-detail-content{
    display: flex;
    height: min(6vw,60px);
  }

  .reason-detail-content-a{
    font-size: 20px;
    margin-right: 15px;
    height: min(6vw,60px);
    line-height: min(3vw,30px);
    display: inline;
  }

  .reason-detail-content-a p{
    display: inline;
    vertical-align: middle;
  }

  .reason-detail-content-b{
    height: min(6vw,60px);
    line-height: min(3vw,30px);
    display: inline;
    font-size:14px;
  }

  .reason-detail-content-b p{
    display: inline;
    vertical-align: middle;
  }

  .name-1,.name-2,.name-3,.name-4{
    
    font-size: 22px;
    height: 30px;
    color: white;
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }

  .name-1 p{
    display: inline;
    vertical-align: middle;
    background-color: rgb(74, 123, 1);
    padding: 0 15px;
  }

  .name-2 p{
    display: inline;
    vertical-align: middle;
    background-color: rgb(74, 123, 1);
    padding: 0 15px;
  }

  .name-3 p{
    display: inline;
    vertical-align: middle;
    background-color: rgb(74, 123, 1);
    padding: 0 15px;
  }

  .name-4 p{
    display: inline;
    vertical-align: middle;
    background-color: rgb(74, 123, 1);
    padding: 0 15px;
  }

  .price{
    width: 100%;
    height: auto;
  }

  .price-title{
    height: 48px;
    font-family: 'Kiwi Maru', serif;
    font-size: 30px;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    text-align: center;
  }

  .price-title p{
    display: inline;
    padding: 0 15px;
    border-bottom: solid 2px  rgb(248, 179, 3);
  }

  .price-content{
    width: 100%;
    height: auto;
  }

  .price-name,.other-name{
    font-size: 20px;
    letter-spacing: 3px;
    margin-top: 10px;
    margin-left: 20px;
    border-bottom: dotted 2px rgb(248, 179, 3);
    display: inline-block;
    padding:0 10px;
    height: 30px;
    line-height: 30px;
  }

  .price-name p{
    display: inline;
    vertical-align: middle;
  }

  .other-name p{
    display: inline;
    vertical-align: middle;
  }

  .price-table{
    
    margin-top: 10px;
    margin-bottom: 20px;
    width: 750px;
    margin:0 auto;
  }

  .price-table table{
    color: black;
    margin: 0 auto;
    border-collapse: collapse;
    white-space: nowrap;
    
    width: 750px;
    border:solid 2px white;
    font-size: 17px;
  }
  
  .price-table td{
    border:solid 2px white;
    text-align: center;
    width: 150px;
  }
  
  .price-table td:first-child{
    font-size: 16px;
    background-color: rgba(229, 251, 195,0.5) ;
    width: 150px;
    font-weight: bold;
  }
  
  .price-table tr:first-child {
    height: 80px;
    letter-spacing: 4px;
    color: white;
    line-height: 30px;
    background-color: rgb(161, 184, 126);
  }

  .lesson-price span{
    color: rgb(248, 179, 3);
  }

  .price-table tr:first-child p{
    display: inline;
    vertical-align: bottom;
  }
  

  .price-table tr {
    height: 80px;
    font-size: 20px;
    letter-spacing: 2px;
    
  }

  .table-mini {
    height:20px;
    background: rgb(161, 184, 126);
    font-size: 14px;
    line-height: 20px;
  }

  .table-mini p{
    display: inline;
    font-size: 14px;
    vertical-align: middle;

  }

  .text-price{
    margin-bottom: 10px;
  }

  .text-table{
    
    margin-top: 10px;
    margin-bottom: 20px;
    width: 750px;
    margin: 0 auto;
  }

  .text-table table{
    color: black;
    margin: 0 auto;
    border-collapse: collapse;
    white-space: nowrap;
    width: 750px;
    border:solid 2px white;
    font-size: 17px;
  }
  
  .text-table td{
    border:solid 2px white;
    width: 150px;
    text-align: center;
  }
  
  .text-table td:first-child{
    font-size: 16px;
    font-weight: bold;
    background-color: rgba(229, 251, 195,0.5) ;
  }
  
  .text-table tr:first-child {
    height: 80px;
    letter-spacing: 4px;
    color: white;
    line-height: 30px;
    background-color: rgb(161, 184, 126);
  }

  .text-table span{
    color: rgb(248, 179, 3);
  }

  .text-table tr:first-child p{
    display: inline;
    vertical-align: bottom;
  }
  

  .text-table tr {
    height: 80px;
    font-size: 20px;
    letter-spacing: 2px;
    
  }

  .lesson-price-detail{
    max-width: 80%;
    margin: 0 auto;
    display: flex;
    font-size: 15px;
  }

  .lesson-price-detail-a{
    margin-right: 15px;
  }

  .ohter-price{
    display: flex;
    margin-bottom: 20px;
    width: 90vw;
    margin: 0 auto;
  }

  .ohter-price-flex{
    display: flex;
  }

  .other-detail{
    font-size: 20px;
    margin-left: 80px;
    margin-top: 10px;
    height: 30px;
    line-height: 30px;
  }

  .other-detail p{
    display: inline;
    vertical-align: middle;
  }

  .lesson {
    width: 80%;
    min-width: 500px;
    height: 200px;
    margin: 0 auto;
    margin-top: 60px;
    
  }

  .lesson-title{
    font-size: 25px;
    font-family: 'Kiwi Maru', serif;
    text-align:center;
    width: 300px;
    margin: 0 auto;
    
  }

  .lesson-title span{
    width: 20px;
    height: 25px;
    display: inline-block;
    margin-left: 40px;
    vertical-align: middle;
    clip-path: polygon(0 0,0% 100%,100% 50%);
    transform: rotate(90deg);
    background-color: rgb(248, 179, 3);
  }

  .price-which{
    display: flex;
    justify-content: center;
  }

  a.btn-border-shadow {
    padding: calc(1.5rem - 12px) 3rem 1.5rem;
  
    background: #fff;
  }
  
  a.btn-border-shadow:before {
    position: absolute;
    top: -6px;
    left: -6px;
  
    width: 100%;
    height: 100%;
  
    content: "";
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  
    border: 2px solid black;
    border-radius: 0.5rem;
  }
  
  a.btn-border-shadow:hover {
    padding: calc(1.5rem - 6px) 3rem;
  }
  
  a.btn-border-shadow:hover:before {
    top: 0;
    left: 0;
  }
  
  a.btn-border-shadow--color {
    border-radius: 0;
    background: rgb(252, 192, 39);
    
  }
  
  a.btn-border-shadow--color:before {
    border-radius: 0;
  }

  .price-select{
    width: 150px;
    font-size: 16px;
    text-align: center;
    margin: 20px auto;
  }

  .flow {
    margin-top: 40px;
    width: 100%;
    height: 730px;
    background-color: rgba(254, 214, 114, 0.1);
    padding: 10px 0;
  }

  .flow-title{
    width: 350px;
    height: 75px;
    font-family: 'Kiwi Maru', serif;
    font-size: 25px;
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 35px;
    text-align: center;
  }

  .flow-title p{
    display: inline;
    border-bottom: dotted 5px white;
    padding: 0 10px;
  }

  .flow-content{
    border: solid 1.5px rgb(248, 179, 3);
    border-radius: 7px;
    width: 80%;
    margin: 0 auto;
    height: 60px;
    text-align: center;
    line-height: 60px;
    font-size: 20px;
    background-color: white;
  }

  .flow-content p{
    display: inline;
    vertical-align: middle;
  }

  .flow-bitween{
    height: 45px;
    width: 60%;
    margin: 7px auto;
    position: relative;
  }

  .line{
    border-left: dashed 3px rgba(252, 192, 39,0.5);
    height: 30px;

  }

  .arrow{
    position: absolute;
    left: -13px;
    top: 20px;
    height: 30px;
    width: 30px;
    color: rgb(252, 192, 39);
    text-align: center;
  }

  .arrow i{
    font-size: 30px;
  }

  .line-or{
    color: rgb(255, 188, 20);
    font-size: 23px;
    height: 50px;
    line-height: 50px;
    margin:0 auto;
    text-align: center;
  }

  .line-or span {
    display: inline;
    vertical-align: middle;
  }

  .info{
    margin-top: 30px;
    height: auto;
  }

  .info-title{
    width: 100%;
    font-size: 25px;
    font-family: 'Kiwi Maru', serif;
    text-align: center;
  }

  .info-title p{
    border-bottom: solid 1px rgb(248, 179, 3);
    display: inline;
    padding: 0 10px;
  }

  .info-content table{
    width: 85%;
    margin: 0 auto;
    margin-top: 50px;
  }
  
  .info-content td:first-child{
    font-size: 16px;
    border-bottom: solid 1.5px rgb(74, 114, 14);
    width:100px ;
    padding-left: 0;
    text-align: center;
  }
  
  .info-content tr{
    height:85px;
  }
  
  .info-content td{
    border-bottom: solid 1.5px #a6a7a8;
    padding-left: 40px;
  }

  .info-content td br{
    display: none;
  }
  
  .info-content tr:first-child{
    vertical-align: middle;
  }

  .info-contact{
    border: solid 1px #00a764;
    width: 300px;
    border-radius: 5px;
    text-align: center;
    margin: 70px 7.5% 40px auto;
    cursor: pointer;
  }

  .info-contact:hover{
    background-color:#00a764;
    color: white;
    transition: all .5s ;
  }

  .info-graph{
    display: flex;
    flex-direction: column-reverse;
  }

  .info-photo{
    width: 100%;
    height: 280px;
    background-color: rgb(74, 123, 1);
  }

  .info-photo-bg{
    width: 100%;
    max-width: 570px;
    height: 280px;
    margin: 0 auto;
  }

  .info-photo-bg img{
    width: 100%;
    height: 100%;
  }

  .graph-background{
    width: 100%;
    height: 25px;
    background-color: rgb(74, 123, 1);
  }

  .info-map{
    width: 100%;
    height: 280px;
    margin-bottom: 50px;
  }

  .info-map iframe{
    width: 100%;
    height: 100%;
  }

  footer{
    height: 65px;
    width: 100%;
    background-color: rgb(74, 123, 1);
    position: relative;
  }

  .foot-first{
    display: flex;
    margin-left:1.95vw;
  }

  .foot-title{
    font-size: 23px;
    color: white;
    height: 65px;
    line-height: 60px;
    margin-right: 10px;
  }

  .foot-title p{
    display: inline;
    vertical-align: middle;
   
    font-family: 'Kaisei HarunoUmi', serif;
  }

  .foot-logo {
    height: 65px;
    width: 25px;
    line-height: 60px;
  }

  .foot-logo img{
    width: 100%;
    height: 25px;
    display: inline;
    vertical-align: middle;
    margin-top: 4px;
  }

  .foot-last{
    color: white;
    font-size: 12px;
    
    height: 15px;
    position: absolute;
    top: 25px;
    right: 5px;
  }


  
}




