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


.pc{
    display: none;
}

body{
    background: url(image/mainback.png);
    margin: 0;
    padding: 0;
    color: #4f4034;
    min-width: 100%;
}

a{
    color: #000;
    text-decoration: none;
}

header{
    width: 100%;
    margin: auto;
}

header .logo{
    margin: 15px 0;
    width: 40%;
    padding-right: 3%;
}

main{
    position: relative;
    text-align: center;
    align-items: center;
    display: flex;
    justify-content: center; 
}

main img{
    position: relative;
    width: 100%;
    text-align: center;
    align-items: center;
    display: flex;
    justify-content: center; 
    margin-top: -100px;
}

#mainslide{
    width: 100%;
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -10;
    text-align: center;
}

#mainslide div img{
    display: inline-block;
    width: 95%;
    height: 480px;
    object-fit: cover;
    -webkit-mask-image: url('image/sp_mainimage_mask.png');
    mask-image: url('image/sp_mainimage_mask.png');
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
    -webkit-mask-position: top center;
    mask-position: top center;
    -webkit-mask-size:cover;
    mask-size: cover;
}


header .logo,header menu,header menu li{
    display: inline-block;
    vertical-align: middle;
}

header menu li{
    display: none;
}

header menu li:last-of-type{
    border-right: dotted 2px #bcbcbc;
}

header menu li a{
    display: block;
    padding: 10px 20px;
}

header menu li a:hover{
    background: rgba(184,213,93,0.2);
    border-radius: 10px;
}

header menu li a img{
    display: block;
    margin: auto;
}

main{
    height: 550px;
    width: 100%;
    background: url(image/sp_mainv.png) no-repeat center;
    background-size: contain;
    padding-top: 20px;
    margin-bottom: 80px;
}


.btn {
    display: block;
    width:45px;
    height: 45px;
    position: absolute;
    top:5px;
    right:10px;
    cursor: pointer;
    z-index: 200;
}

.peke {
    background-position: -35px 0;
}
.drawr {
    display: none;
    background-color:rgba(0,0,0,0.6);
    position: fixed;
    top: 0;
    right:0;
    width:70%;
    padding:80px 0 20px 0;
    z-index: 100;
}

#menu {
    padding: 0;
}
    
#menu li {
    list-style: none;
    width:260px;
}
   
#menu li a {
    color:#fff;
    display: block;
    padding: 15px;
}
    
      
   button {
    display: block;
    background: none;
    border: none;
    padding: 0;
    width: 35px;
    color: #83B132;
    letter-spacing: 0.1em;
    cursor: pointer;
    position: fixed;
    top: 5px;
    right: 15px;
    z-index: 100;
    text-align: center;
    outline: none;
       background: #83B132;
  }
    
  /*   ハンバーガーボタン   */
  button span.bar {
    display: block;
    height: 3px;
    background-color: #fff;
    margin: 9px auto;
    transition: all 0.2s;
    transform-origin: 0 0;
  }

  button .close {
    letter-spacing: 0.08em;
    display: none;
  }
  button .menu {
    display: none !important;
  }

    
  /*  メニューアクティブ  */
  button.active span.bar {
    width: 35px;
    background-color: #fff;
  }
  button.active .bar1 {
    transform: rotate(45deg);
  }
  button.active .bar2 {
    opacity: 0;
  }
  button.active .bar3 {
    transform: rotate(-45deg);
      margin-left: -3px !important;
  }
  button.active .menu {
    display: none !important;
  }
  button.active .close {
    display: none !important;

  }
    
button.active  {
    display: none !important;

  }

    
    

.news {
    width: 100%;
    margin: 0 auto 200px auto;
    position: relative;
    padding: 0 10px;
    box-sizing: border-box;
}
    
.news a {
    display: block;
    padding: 10px 0;
    position: relative;
}


.news .all::before {
  content: '';
  width: 20px;
  height: 20px;
  background: #84b132;
  border-radius: 50%;
  position: absolute;
  top: 48%;
  right: 20px;
  margin-top: -9px;
    z-index: 1;
}
    
.news .all::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 27px;
  margin-top: -4px;
  transform: rotate(45deg);
    z-index: 2;
}

.news .all{
    width: 60%;
    text-align: center;
    padding: 15px 25px 15px 0;
    border-radius: 30px;
    font-size: 16px;
    border: 3px solid #84b132 !important;
    margin: 50px auto 0 auto;
    position: relative;
    background: #fff;
    cursor: pointer;
    color: #84b132;
    font-weight: bold;
    letter-spacing: 3px;
    box-sizing: border-box;
}

.news .all:hover{
    border: 3px solid #84b132;
    background: #84b132;
    color: #fff;
}

.news ol,.infoA ol{
    background: rgba(255,255,255,0.5);
    height: 430px;
    padding: 10px;
    box-sizing: border-box;
    list-style: none;
}

.news li,.infoA li{
    border-bottom: dotted 2px #bcbcbc;
    padding: 15px 5px;
}

.news li a:hover,.infoA li a:hover{
    text-decoration: underline;
}


.news li span,.infoA span{
    border-radius: 15px;
    padding: 5px 0;
    background: #333;
    color: #fff;
    width: 130px;
    display: inline-block;
    text-align: center;
    font-size: 14px;
    margin: 0 15px;
}

.news li .info,.infoA li .info{
    background: #84b132;
}

.news li .dayori,.infoA li .dayori{
    background: #e88316;
}

.news .chara{
    position: absolute;
    width: 95%;
    bottom: -90px;
    z-index: -1;
}



.intro{
    background: url(image/top_introback.png) top center;
    background-size: cover;
    position: relative;
    margin: 150px 0 0 0;
    padding: 110px 0 50px 0;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}

.intro article{
    width: 100%;
    margin: auto;
}

.intro .flag{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    min-width: 100%;
    width: 100%;
}

.intro h2{
    margin: 0 0 65px 0;
}

.intro a{
    display: inline-block;
    width: 49%;
    transform: translateY(2%);
	transition: opacity .3s, transform .3s cubic-bezier(0.2, 0.1, 0.5, 1);
}
    
.intro a img{
    width: 100%;
}

.intro a:hover {
    opacity: 0.8;
    transform: translateY(0%);
}



footer{
    background: url(image/footer_bot.png) no-repeat center bottom;
    padding: 50px 0 170px 0;
}

footer article{
    width: 100%;
    margin: auto;
}

footer ol{
    margin: 0;
    padding: 0;
    vertical-align: top;
    list-style: none;
    width: 100%;
}

footer li{
    position: relative;
}

footer li a{
    display: block;
    padding: 8px 10px 8px 20px;
}

footer li::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 7px;
    height: 7px;
    border-top: 2px solid #7fb157;
    border-right: 2px solid #7fb157;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

footer li a:hover{
    text-decoration: underline;
}


footer ol:first-of-type,footer ol:nth-of-type(2){
    width: 43%;
    display: inline-block;
    padding: 0 3%;
    line-height: 2;
}

footer ol br{
    display: none;
}
    
footer ol img{
    display: block;
    margin: 10px auto 5px auto;
}

footer .tel{
    display: block;
}

footer ol:nth-of-type(3),footer ol:last-of-type{
    padding: 10px 20px;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
}

footer .copy{
    display: block;
    text-align: center;
    font-size: 14px;
}





.con_title{
    background: #f7f1e2;
    height: 150px;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 29px;
    display: block;
    padding: 35px 0;
    box-sizing: border-box;
}

.con_title img{
    display: block;
    margin: auto;
    width: 30px;
    margin-bottom: 5px;
}

.pankuzu{
    width: 100%;
    margin: 0 auto 60px auto;
    padding: 15px;
    line-height: 1;
    box-sizing: border-box;
}

.pankuzu .house{
    padding: 5px 0px 5px 25px;
    background: url(image/house.png) no-repeat left center;
}

.wrap{
    width: 100%;
    margin: auto;
    padding: 20px 0;
}


h3{
    position: relative;
    font-size: 34px;
    padding: 25px 0;
    margin-bottom: 50px;
    text-align: center;
}

h3::after{
    content: "";
    height: 9px;
    width: 87px;
    background: url(image/h3line.png) no-repeat center;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
}

.subtitle{
    text-align: center;
    font-size: 20px;
    padding-bottom: 50px;
    font-weight: bold;
}

.mezasu{
    background: url(image/about_1back.png) no-repeat top center;
    text-align: center;
    padding: 55px;
    height: 300px;
}

.mezasu h3{
    margin: 0;
    padding-top: 10px;
}

.mezasu p{
    font-size: 20px;
    line-height: 2;
}

.kodomozo{
    text-align: center;
    background: url(image/kodomozo.png);
    padding: 5px 0 20px 0;
}

.kodomozo article{
    width: 95%;
    text-align: left;
    margin: 50px auto;
    border: #84b132 solid 3px;
    border-radius: 5px;
    background: #fff;
    padding: 15px;
    position: relative;
    box-sizing: border-box;
}

.kodomozo h3{
    z-index: 1;
}

.kodomozo article img:first-of-type{
    position: absolute;
    width: 100%;
    top: -140px;
}

.kodomozo article img:nth-of-type(2){
    display: none;
}
.kodomozo article img:nth-of-type(3){
    position: absolute;
    right: 0;
    bottom: -50px;
}

.kodomozo article img:last-of-type{
    display: none;
}

.kodomozo article ol{
    list-style: none;
}

.kodomozo article li{
    line-height: 3;
    font-size: 18px;
    position: relative;
    z-index: 1;
}

.kodomozo article li::before{
    content: "";
    width: 20px;
    height: 20px;
    background: url(image/menu_about.png) no-repeat;
    background-size: cover;
    left: -31px;
    top: 13px;
    position: absolute;
}

.wrap{
    width: 100%;
    margin: auto;
}

.gaiyo article{
    display:block;
}
    
.gaiyo article img{
    position:absolute;
    width: 100%;
    opacity: 0.2;
    margin-top: -50px;
}

.gaiyo ol{
    display: block;
    vertical-align: top;
    width: 90%;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    box-sizing: border-box;
    border-top: 2px dotted #bcbcbc;
}

.gaiyo ol li {
    padding: 17px 10px;
    border-bottom: 2px dotted #bcbcbc;
    position: relative;
}

.gaiyo ol li span{
    display: inline-block;
    vertical-align: middle;
    width: 130px;
    position: relative;
    top: 0;
    bottom: 0;
}

.gaiyo ol li div{
    display: inline-block;
    vertical-align: middle;
    width: 60%;
}








.hoshin,.qa{
    background: #fff;
    padding: 30px 40px;
    box-sizing: border-box;
    position: relative;
    line-height: 2.8;
}

.hoshin::before,.qa::before{
    content:"";
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    border: 5px solid #e6eed7;
}

.hoshin h4{
    color: #84b132;
    font-size: 24px;
    padding-left: 40px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    background: url(image/menu_about.png) no-repeat left 5px center;
    line-height: 1.5;
    border-bottom: solid 1px #84b132;
}

.hoshin i{
    margin: 0 10px 0 30px;
}

.hoshin i::before{
    content: "●";
    width: 50px;
    font-style: normal;
    color: #84b132;
}














.oneday {
    border: none;
    text-align: left;
    width: 780px;
    border-spacing: 10px 0;
}

.oneday th,.oneday .onaka {
    text-align: center;
    vertical-align: middle;
}

.oneday th {
    padding: 10px;
    color: #fff;
    width: 25%;
    padding: 20px;
    border-radius: 10px;
}

.oneday tr:nth-of-type(2) td{
    padding: 30px;
}

.oneday td {
    text-align: left;
    border: none;
    vertical-align: top;
    padding: 20px;
    position: relative;
}

.oneday .oneo{
    background: #df7373;
}

.oneday .twoo{
    background: #236093;
}

.oneday .threeo{
    background: #e88316;
}

.oneday .fouro{
    background: #0f7c40;
}

.oneday .oneoc{
    background: #f7efef;
}

.oneday .twooc{
    background: #e1edf8;
}

.oneday .threeoc{
    background: #faf0e5;
}

.oneday .fouroc{
    background: #e8f1ec;
}

.oneday .oneocb{
    border-bottom: 3px dotted #df7373;
    border-width: 4px;
}

.oneday .twoocb{
    border-bottom: 3px dotted #236093;
    border-width: 4px;
}

.oneday .threeocb{
    border-bottom: 3px dotted #e88316;
    border-width: 4px;
}

.oneday .twooct{
    border-bottom: 3px dotted #236093;
    border-width: 4px;
}

.oneday .twooct::before{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    border-top: 3px dotted #236093;
    border-width: 4px;
    margin-top: -68px;
}

.oneday .twooct::after{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    border-top: 3px dotted #236093;
    border-width: 4px;
    margin-top: -72px;
}

.oneday .threeoct{
    border-bottom: 3px dotted #e88316;
    border-width: 4px;
}

.oneday .threeoct::before{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    border-top: 3px dotted #e88316;
    border-width: 4px;
    margin-top: -68px;
}

.oneday .threeoct::after{
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    border-top: 3px dotted #e88316;
    border-width: 4px;
    margin-top: -72px;
}

.oneday .fourocb{
    border-bottom: 3px dotted #0f7c40;
    border-width: 4px;
}

.bspace td{
    padding: 0 !important;
    margin: 0 !important;
}

.timelist{
    position: absolute;
    padding: 10px 20px;
}

.timeback {
    margin-left: -10px;
    padding: 25px 0;
    position: relative;
}
    
    .oneover{
    margin-left: 15%;
    overflow-x: scroll;
    }

.timeback span{
    display: block;
    background: #84b132;
    color: #fff;
    text-align: center;
    padding: 0 8px;
    border-radius: 1500px;
}

.timeback .time1{
    margin-top: 40px;
}

.timeback .time2{
    margin-top: 30px;
}

.timeback .time3{
    margin-top: 270px;
}

.timeback .time4{
    margin-top: 290px;
}

.timeback .time5{
    margin-top: 80px;
}

.timeback .time6{
    margin-top: 55px;
}

.timeback .time7{
    margin-top: 40px;
}

.timeback .time8{
    margin-top: 40px;
}

.timeback .time9{
    margin-top: 25px;
}

.arrow{
    background: #cce4a1;
    width: 7px;
    position: absolute;
    margin: auto;
    top: 15px;
    bottom: 55px;
    left: 0;
    right: 0;
    z-index: -1;
}

.arrow:after{
display: block;
content: "";
position: absolute;
right: -12px;
margin: auto;
bottom: -5px;
margin: 0;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 13px solid #cce4a1;
}


.chui{
    line-height: 2;
    margin: 50px 30px;
}






.year article{
    display: inline-block;
    width: 100%;
    vertical-align: top;
}

.year article>div{
    border: 4px solid #ece4d2;
    padding: 10px 25px;
    margin: 15px;
    border-radius: 50px;
}

.year article .month{
    display: inline-block;
    vertical-align: middle;
    width: 38%;
    font-size: 24px;
    text-align: right;
    padding-right: 20px;
    height: 100px;
}

.year article .month span{
    font-size: 48px;
    font-weight: bold;
    padding-right: 5px;
    line-height: 2.1;
}

.year article ol{
    display: inline-block;
    vertical-align: middle;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 2;
}


.year article li::before{
    content: "●";
    padding-right: 10px;
}

.year .one{
    background: url(image/m1.png) no-repeat left 45px center;
}

.year .one span{
    color: #00345b;
}

.year .one li::before{
    color: #00345b;
}

.year .two{
    background: url(image/m2.png) no-repeat left 45px center;
}

.year .two span{
    color: #d00009;
}

.year .two li::before{
    color: #d00009;
}

.year .three{
    background: url(image/m3.png) no-repeat left 45px center;
}

.year .three span{
    color: #e98508;
}

.year .three li::before{
    color: #e98508;
}

.year .four{
    background: url(image/m4.png) no-repeat left 45px center;
}

.year .four span{
    color: #de7678;
}

.year .four li::before{
    color: #de7678;
}

.year .five{
    background: url(image/m5.png) no-repeat left 45px center;
}

.year .five span{
    color: #23649c;
}

.year .five li::before{
    color: #23649c;

}

.year .six{
    background: url(image/m6.png) no-repeat left 45px center;
}

.year .six span{
    color: #8bb33a;
}

.year .six li::before{
    color: #8bb33a;
}

.year .seven{
    background: url(image/m7.png) no-repeat left 45px center;
}

.year .seven span{
    color: #2c89a0;
}

.year .seven li::before{
    color: #2c89a0;
}

.year .eight{
    background: url(image/m8.png) no-repeat left 45px center;
}

.year .eight span{
    color: #0c7a38;
}

.year .eight li::before{
    color: #0c7a38;
}

.year .nine{
    background: url(image/m9.png) no-repeat left 45px center;
}

.year .nine span{
    color: #a57138;
}

.year .nine li::before{
    color: #a57138;
}

.year .ten{
    background: url(image/m10.png) no-repeat left 45px center;
}

.year .ten span{
    color: #de7678;
}

.year .ten li::before{
    color: #de7678;
}

.year .eleven{
    background: url(image/m11.png) no-repeat left 45px center;
}

.year .eleven span{
    color: #512a00;
}

.year .eleven li::before{
    color: #512a00;
}

.year .twelve{
    background: url(image/m12.png) no-repeat left 45px center;
}

.year .twelve span{
    color: #0c7a38;
}

.year .twelve li::before{
    color: #0c7a38;
}





.okangae {
}

.okangae h3{
    margin-top: 0;
}

.okangae h4{
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: #84b132 solid 1px;
    line-height: 2;
    font-size: 26px;
}

.okangae h4::before{
    content: "";
    border-left: #84b132 solid 5px;
    border-radius: 5px;
    margin-right: 15px;
}

.okangae article{
    background: #fff;
    padding: 30px;
    margin: 0 10px 25px 10px;
    box-sizing: border-box;
}

.okangae p {
    line-height: 2;
    margin: 0;
}

.okangae dl{
    padding-left: 0px;
    box-sizing: border-box;
}

.okangae dh{
  display: inline-block;
  background: #84b132;
  padding: 15px;
  width: 65%;
  color: #fff;
  margin: 3px;
  border-radius: 5px;
  box-sizing: border-box;
    vertical-align: top;
}

.okangae dt{
  display: inline-block;
  background: #ebf2e7;
  padding: 15px;
  width: 30%;
  border-radius: 5px;
  box-sizing: border-box;
    vertical-align: top;
}

.wpcf7 {
    width: 100%;
    margin: auto;
}

.wpcf7 table{
    width: 100%;
}

.wpcf7 .chui{
    padding: 50px 0;
    text-align: center;
}

.wpcf7 th{
    width: 100%;
    text-align: left;
    padding:15px;
    position: relative;
    display: block;
    box-sizing: border-box;
}

.wpcf7 th span{
    background: #d1000b;
    position: absolute;
    right: 3%;
    top: 25%;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 12px;
    
}

.wpcf7 td{
    width: 100%;
    padding: 15px;
    display: block;
    box-sizing: border-box;
}

.wpcf7 td .wpcf7-text{
    width: 100%;
    padding: 15px;
    background: #ecf2e2;
    border-radius: 5px;
    border: none;
    font-size: 16px;
    box-sizing: border-box;
}

.wpcf7 td .wpcf7-number{
    padding: 15px 0 15px 15px;
    border-radius: 5px;
    border: none;
    font-size: 16px;
}

.wpcf7 td .wpcf7-textarea{
    width: 100%;
    background: #ecf2e2;
    padding: 15px;
    border-radius: 5px;
    border: none;
    font-size: 16px;
}

.wpcf7 td .wpcf7-list-item{
    width: 100%;
    padding: 15px 25px 15px 0;
    border-radius: 5px;
    border: none;
    font-size: 16px;
}

.wpcf7 td .wpcf7-date{
    width: 19%;
    text-align: center;
    padding: 15px 25px 15px 0;
    border-radius: 5px;
    font-size: 16px;
    border: 1px solid #b1b1b1;
    margin: 0 0 0 5px;
}


.wpcf7 .submit{
    width: 45%;
    margin: 30px auto;
    text-align: center;
    position: relative;
}


.wpcf7 .submit::before {
  content: '';
  width: 20px;
  height: 20px;
  background: #84b132;
  border-radius: 50%;
  position: absolute;
  top: 48%;
  right: 20px;
  margin-top: -9px;
    z-index: 1;
}
    
.wpcf7 .submit::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 27px;
  margin-top: -4px;
  transform: rotate(45deg);
    z-index: 2;
}

.wpcf7 .wpcf7-submit{
    width: 100%;
    text-align: center;
    padding: 15px 25px 15px 0;
    border-radius: 30px;
    font-size: 16px;
    border: 3px solid #84b132;
    margin: 0 0 0 5px;
    position: relative;
    background: #fff;
    cursor: pointer;
    color: #84b132;
    font-weight: bold;
    letter-spacing: 10px;
}

.wpcf7 .wpcf7-submit:hover{
    border: 3px solid #84b132;
    background: #84b132;
    color: #fff;
}


.wpcf7 .kibou,.wpcf7 .kibou2,.wpcf7 .kibou3{
    display: block;
    margin: 10px 0 15px 0;
}








.faq-contents {
    border-top: 1px solid #dddddd;
    padding: 5px;
    margin: 0;
}

.faq-contents:last-of-type {
    border-bottom: 1px solid #dddddd;
}

.faq-contents dt {
    position: relative;
    padding: 14px 35px 14px 35px;
    margin: 0;
    background: url(image/Q.png) 5px 12px no-repeat;
    background-size: 18px;
}

.faq-contents dd {
    padding: 3px 10px 14px 35px;
    background: url(image/A.png) 5px 0 no-repeat;
    background-size: 18px;
    margin: 0;
}

.faq-contents .symbol {
    position: absolute;
    top: 50%;
    right: 24px;
    width: 15px;
    height: 15px;
    margin-top: -7px;
}

.faq-contents .symbol:after,
.faq-contents .symbol:before {
    display: block;
    position: absolute;
    top: 7px;
    left: 0;
    width: 15px;
    height: 1px;
    background: #000;
    content: "";
    transition: all .7s ease;
}

.faq-contents .symbol:after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.faq-contents .active .symbol:after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}

.faq-contents .active .symbol:before {
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.faq-contents h3 {
    padding: 0;
    margin: 0;
    margin-bottom: 10px;
    font-size: 12pt;

}


    
    

}



