*{
    box-sizing: border-box;
  }
    
  html{
    scroll-behavior: smooth;
  }
    
  a {
    text-decoration: none;
    color: inherit;
  }
    
  body{
    margin: 0;
  }
    
    
  @media(min-width: 1225px){
  
    header{
        width: 100%;
        height: 120px;
        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{
        height: 120px;
        
      }
    
      .header-logo{
        height: 90px;
        color: rgb(63, 105, 2);
        font-family: 'Kaisei HarunoUmi', serif;
        display: flex;
      }
    
      .header-name{
        display: inline-block;
        line-height: 90px;
        height: 90px;
        font-size: 40px;
        margin-left: 30px;
        margin-right: 7px;
      }
    
      .header-name p{
        display: inline;
        vertical-align: baseline;
      }
    
      .logo-image{
        height: 90px;
        line-height: 90px;
      }
    
      .logo-image img{
        height: 40px;
        width: 40px;
        vertical-align:middle;
      }
    
      .logo-image-sp{
        display: none;
      }
    
      .header-menu-left{
        margin-left: 50px;
      }
    
      .header-menu-left li{
        list-style: none;
        float: left;
        padding: 0 20px;
        border-left:solid 1.5px rgb(63, 105, 2) ;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        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{
        height: 120px;
        margin-right: min(30px,2.44vw);    
      }
    
      .header-contact{
        display: flex;
        height: 90px;
        padding-left: 20px;
        padding-top: 10px;
      }
    
      .header-btn{
        font-size: 18px;
        height: 52px;
        line-height: 52px;
        letter-spacing: 1.7;
      }
    
      .header-btn p {
        display: inline;
        vertical-align: middle;
      }
    
      .header-btn-mail:hover{
        color: rgb(248, 179, 3);
      }
    
      .header-mail{
        height: 52px;
        line-height: 52px;
        display: flex;
        margin-right: 30px;
      }
    
      .header-tel{
        height: 68px;
        display: flex;
      }
    
      .tel-info{
        font-size: 14px;
        line-height: 0;
        
      }
    
      .menu-trigger{
        display: none;
      }
      
      #header-sp-modal{
        display: none;
      }
    
      .header-icon img{
        height: 30px;
        width: 30px;
        vertical-align: middle;
      }
    
      .header-icon{
        height: 52px;
        line-height: 52px;
        margin-right: 20px;
      }
    
      .header-icon-sp{
        display: none;
      }
    
      .header-menu-right li{
        list-style: none;
        font-size: 13px;
        float: left;
        padding: 0 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-cp{
        padding-top: 15px;
    }
    
    .top-banner-cp{
        max-width: 1280px;
        width: 100%;
        max-height: 356px;
        height: auto;
        margin:0 auto;
        margin-top: 105px;
    }

    .top-banner-cp img{
        width: 100%;
        height: 100%;
    }

    .top-banner-cp-mid{
        display: none;
    }

    .top-banner-cp-sp{
        display: none;
    }

    .campeign{
        width: 100%;
        height: auto;
    }

    .camp-flex{
        display: flex;
        justify-content: center;
        margin: 0 auto;
    }

    .camp-big{
        display: flex;
    }

    .camp-big-1{
        display: flex;
    }

    .camp-content-1{
        width: 600px;
        margin: 0 25px;
        height: 100px;
        border-top: solid 3px rgb(248, 232, 3);
        border-bottom: solid 3px rgb(248, 232, 3);
        margin-top: 70px;
        display: flex;
        background-color: rgb(255, 251, 221);
        padding-top: 5px;
        text-align: center;
    }

    .camp-logo{
        width: 80px;
        height: 80px;
        margin-left:50px;
        margin-top: 3px;
    }

    .camp-logo img {
        height: 100%;
        width: 100%;
    }

    .camp-2{
        height: 80px;
        background-color: rgb(255, 251, 221);
        font-size: 21px;
        text-align: center;
        letter-spacing: 7px;
        display: flex;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        margin-left: 80px;
    }   

    .camp-2-a  {
        margin-top: 10px;
        height: 30px;
        line-height: 30px;
        margin-left: 40px;
    }

    .camp-2-a p{
        display: inline;
        vertical-align: middle;
    }

    .camp-2-b  {
        margin-bottom: 10px;
        height: 30px;
        line-height: 30px;
        letter-spacing: 4px;
    }

    .camp-2-b p{
        display: inline;
        vertical-align: middle;
    }

    .camp-2-c{
        height: 0;
        width: 0;
        border-top: 15px solid transparent;
        border-bottom: 15px solid transparent;
        border-left:25px solid rgb(248, 179, 3);
        margin-left: 20px;
        margin-top: 45px;
        
    }

    .camp-2 img{
        width: 90px;
        height: 90px;
        margin-left: 10px;
    }

    .camp-content{
        width: 700px;
        margin: 0 auto;
        height: 120px;
        border-top: solid 3px rgb(248, 232, 3);
        border-bottom: solid 3px rgb(248, 232, 3);
        margin-top: 50px;
        display: flex;
        background-color: rgb(255, 251, 221);
        padding-top: 10px;
    }

    .camp-logo-1{
        width: 100px;
        height: 100px;
        margin: 0 40px;
    }

    .camp-logo-1 img {
        height: 100%;
        width: 100%;
    }

    .camp-1{
        height: 95px;
        background-color: rgb(255, 251, 221);
    }

    .camp-1-a{
        font-size: 16px;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        height: 25px;
        line-height: 25px;
    }

    .camp-1-a p{
        display: inline;
        vertical-align: middle;
    }

    .camp-1-a br{
        display: none;
    }

    .camp-1-b{
        
        font-size: 38px;
        text-align: center;
        letter-spacing: 7px;
        font-weight: bold;
        height: 70px;
        line-height: 70px;
    }

    .camp-1-b p{
        display: inline;
        vertical-align: top;
    }

    .camp-lesson{
        width: 100%;
       
    }

    .camp-price-flex {
        display: flex;
        flex-wrap: wrap;
    }

    .camp-lesson{
        width: 98%;
        margin: 0 auto;
        margin-top: 80px;
    }

    .lesson-content{
        width: 450px;
        margin: 20px auto;
        height: 150px;
        text-align: center;
    }

    .price-arrow{
        height: 0;
        width: 0;
        border-top: 15px solid transparent;
        border-bottom: 15px solid transparent;
        border-left:25px solid rgb(253, 212, 107);
        margin-left: 20px;
        margin-top: 60px;
    }

    .price-color{
        border-radius: 10px;
        border: solid 6px rgb(179, 255, 255);
        position: relative;
    }

    .price-a{
        position: absolute;
        top: 0;
        left: 30px;
        font-size: 24px;
        font-family: 'Kiwi Maru', serif;
        letter-spacing: 4px;
        height: 60px;
        line-height: 60px;
        transform: translateY(-60%);
        background-color: white;
        padding: 0 20px;
    }

    .price-a p{
        display: inline;
        vertical-align: top;
    }

    .price-b{
        margin-left: 20px;
        margin-top: 40px;
        font-size: 21px;
        border-bottom: solid 2px rgb(253, 212, 107);
        height: 35px;
        padding: 0 15px;
    }

    .price-c{
        font-family: 'Rampart One', cursive;
        font-size: 50px;
        color: rgb(248, 158, 3);
        height: 80px;
        line-height: 80px;
        margin-left: 20px;
        margin-top: 20px;
    }

    .price-c p{
        display: inline;
        vertical-align: middle;
    }


    





    .info{
        display: flex;
        justify-content: center;
        margin-top: 60px;
        height: 720px;
        margin-bottom: 60px;
      }
    
      .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 tr{
        height:85px;
      }
      
      .info-content td{
        border-bottom: solid 1.5px #a6a7a8;
        padding-left: 40px;
      }
    
      .info-content td br{
        display: none;
      }
    
      .info-content td span{
        display: block;
      }
    
      
      .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: 350px;
      }
    
      .info-photo img{
        width: 100%;
        height: 100%;
      }
    
      .info-map{
        width: 43vw;
        height: 350px;
        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 (min-width:1000px) and (max-width:1224px) {


    .top-wrapper-cp{
        padding-top: min(15px,1.22vw);
        width: 100%;
        background-color: none;
    }
    
    .top-banner-cp{
        
        width: 100%;
        height: auto;
        margin:0 auto;
        margin-top: min(8.57vw,105px);
    }

    .top-banner-cp img{
        height: 100%;
        width: 100%;
    }

    .top-banner-cp-mid{
        display: none;
    }

    .top-banner-cp-sp{
        display: none;
    }

    .campeign{
        width: 100%;
        height: auto;
    }

    .camp-flex{
        display: flex;
        justify-content: center;
        margin: 0 auto;
    }

    .camp-big{
        display: flex;
    }

    .camp-big-1{
        display: flex;
    }

    .camp-content-1{
        max-width: 600px;
        width: 45%;
        margin: 0 25px;
        height: 100px;
        border-top: solid 3px rgb(248, 232, 3);
        border-bottom: solid 3px rgb(248, 232, 3);
        margin-top: 70px;
        display: flex;
        background-color: rgb(255, 251, 221);
        padding-top: 5px;
        text-align: center;
    }

    .camp-logo{
        width: 80px;
        height: 80px;
        margin-left:50px;
        margin-top: 3px;
    }

    .camp-logo img {
        height: 100%;
        width: 100%;
    }

    .camp-2{
        height: 80px;
        background-color: rgb(255, 251, 221);
        font-size: min(21px,1.9vw);
        width: 270px;
        text-align: center;
        letter-spacing: 7px;
        display: flex;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        margin-left: max(4vw,40px);
    }   

    .camp-2-a  {
        margin-top: 10px;
        height: 30px;
        line-height: 30px;
        
    }

    .camp-2-a p{
        display: inline;
        vertical-align: middle;
    }

    .camp-2-b  {
        margin-bottom: 10px;
        height: 30px;
        line-height: 30px;
        letter-spacing: 4px;
    }

    .camp-2-b p{
        display: inline;
        vertical-align: middle;
    }

    .camp-2-c{
        height: 0;
        width: 0;
        border-top: 15px solid transparent;
        border-bottom: 15px solid transparent;
        border-left:25px solid rgb(248, 179, 3);
        margin-left: 20px;
        margin-top: 45px;
        
    }

    .camp-2 img{
        width: 90px;
        height: 90px;
        margin-left: 10px;
    }

    .camp-content{
        width: 700px;
        margin: 0 auto;
        height: 120px;
        border-top: solid 3px rgb(248, 232, 3);
        border-bottom: solid 3px rgb(248, 232, 3);
        margin-top: 50px;
        display: flex;
        background-color: rgb(255, 251, 221);
        padding-top: 10px;
    }

    .camp-logo-1{
        width: 100px;
        height: 100px;
        margin: 0 40px;
    }

    .camp-logo-1 img {
        height: 100%;
        width: 100%;
    }

    .camp-1{
        height: 95px;
        background-color: rgb(255, 251, 221);
    }

    .camp-1-a{
        font-size: 16px;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        height: 25px;
        line-height: 25px;
    }

    .camp-1-a p{
        display: inline;
        vertical-align: middle;
    }

    .camp-1-a br{
        display: none;
    }

    .camp-1-b{
        
        font-size: 38px;
        text-align: center;
        letter-spacing: 7px;
        font-weight: bold;
        height: 70px;
        line-height: 70px;
    }

    .camp-1-b p{
        display: inline;
        vertical-align: top;
    }

    .camp-lesson{
        width: 100%;
       
    }

    .camp-price-flex {
        display: flex;
        flex-wrap: wrap;
    }

    .camp-lesson{
        width: 98%;
        margin: 0 auto;
        margin-top: 80px;
    }

    .lesson-content{
        width: 450px;
        margin: 20px auto;
        height: 150px;
        text-align: center;
    }

    .price-arrow{
        height: 0;
        width: 0;
        border-top: 15px solid transparent;
        border-bottom: 15px solid transparent;
        border-left:25px solid rgb(253, 212, 107);
        margin-left: 20px;
        margin-top: 60px;
    }

    .price-color{
        border-radius: 10px;
        border: solid 6px rgb(179, 255, 255);
        position: relative;
    }

    .price-a{
        position: absolute;
        top: 0;
        left: 30px;
        font-size: 24px;
        font-family: 'Kiwi Maru', serif;
        letter-spacing: 4px;
        height: 60px;
        line-height: 60px;
        transform: translateY(-60%);
        background-color: white;
        padding: 0 20px;
    }

    .price-a p{
        display: inline;
        vertical-align: top;
    }

    .price-b{
        margin-left: 20px;
        margin-top: 40px;
        font-size: 21px;
        border-bottom: solid 2px rgb(253, 212, 107);
        height: 35px;
        padding: 0 15px;
    }

    .price-c{
        font-family: 'Rampart One', cursive;
        font-size: 50px;
        color: rgb(248, 158, 3);
        height: 80px;
        line-height: 80px;
        margin-left: 20px;
        margin-top: 20px;
    }

    .price-c p{
        display: inline;
        vertical-align: middle;
    }

}
