@charset "UTF-8";

html, body {
  max-width: 100%;
  overflow-x: hidden;
}
/* --------------------------------------------------------------------- */
/* font */
/* --------------------------------------------------------------------- */

.ff_type1{
	font-family: "ab-kirigirisu", sans-serif;
	font-weight: 400;
	font-style: normal;
	}

.fw_type1{
	font-weight: 400;
}

.fw_type2{
	font-weight: 500;
}

.fw_type3{
	font-weight: 900;
}

.fw_typeB{
	font-weight: bold;
}

.fc_type_1{
	color: #000000;
}

.fc_type_2{
	color: #1f1f1f;
}

.ls_type1{
	letter-spacing: 4px;
}

.ls_type2{
	letter-spacing: 8px;
}

/* --------------------------------------------------------------------- */
/* style */
/* --------------------------------------------------------------------- */

/* align */

.tx_left{
	text-align: left;
}

.tx_right{
	text-align: right;
}

.tx_center{
	text-align: center;
}

/*SPのみ*/
@media(min-width:751px){
    .sp{
        display: none !important;
    }
}
/*PCのみ*/
@media(max-width:750px){
    .pc{
        display: none !important;
    }
}

/* --------------------------------------------------------------------- */
/* ふわっとstyle */
/* --------------------------------------------------------------------- */

.fade-in {
    opacity: 0;
    transform: translateY(30px); /* 初期位置を少し下に */
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.active {
    opacity: 1;
    transform: translateY(0);
}

/* --------------------------------------------------------------------- */
/*ページトップのボタン*/
/* --------------------------------------------------------------------- */
#page-top a {
  bottom: 10px;
  color: #fff;
  padding: 20px;
  position: fixed;
  right: 15px;
}

#page-top {
  bottom: 0;
  position: fixed;
  right: 0;
}

#page-top a {
  border-radius: 50%;
  height: 70px;
  padding: 0;
  text-align: center;
  transition: opacity .5s;
  width: 70px;
}

/* マウスオーバーでぽよぽよする */
.anim-pt.poyopoyo :hover {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.85);
  }
}

#page-top a:hover {
  opacity: 0.8;
  transition: opacity .5s;
}
#page-top a img {
  width: 70px;
}

/* --------------------------------------------------------------------- */
/* ヘッダ */
/* --------------------------------------------------------------------- */

/*ロゴ周り*/

.header{
	max-width: 1920px;
    margin: 0 auto;
    padding: 40px 30px 30px 30px;
    position: relative;
	}

h1 img{
	width: 100%;
	max-width: 580px;
	margin: 0;
}

header .logo{
  width: 100%;
   z-index: 100;
  margin: 0 0 0 0;
  position: relative;
  display: flex;
}

.logo_tx{
	margin:12px 0 0 140px;
	font-size: 14px;
	letter-spacing: 2.5px;
}

.piyo1{
  display: inline;
  margin: 30px 15px 0 30px;
  height: 30px;
  width: 35px;

}
.piyo2{
  display: inline; 
  margin: 50px 15px 0 10px;
  height: 30px;
  width: 35px;
}

.piyo3{
  display: inline;
  margin: 30px 15px 0 0;
  height: 30px;
  width: 35px;

}
.piyo4{
  display: inline; 
  margin: 50px 15px 0 10px;
  height: 30px;
  width: 35px;
}

/**
 * ----------------------------------------
 * piyoの動き
 * ----------------------------------------
 */
/*piyoの動き*/
.slide-top1 {
	-webkit-animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite alternate forwards;
	        animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite alternate forwards;
}

.slide-top2 {
	-webkit-animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.3s infinite alternate forwards;
	        animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.3s infinite alternate forwards;
}

.slide-top3 {
	-webkit-animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.5s infinite alternate forwards;
	        animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.5s infinite alternate forwards;
}

.slide-top4 {
	-webkit-animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.8s infinite alternate forwards;
	        animation: slide-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1.8s infinite alternate forwards;
}

/*piyoのアニメ*/
 @-webkit-keyframes slide-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
@keyframes slide-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

/*番号周り*/
#nav-wrapper p.tel{
   margin:0 110px 0 0;
  font-size: 34px;
  font-weight: bold;
  position: absolute;
  right: 30px;
  top: 66px;
  letter-spacing: 0.05em;
	z-index: 1000;
}

#nav-wrapper p.tel span{
  font-size: 18px;
  margin-right: 10px;
}


/*ピヨを非表示*/
@media screen and (max-width:1280px) {
#nav-wrapper p.tel{
  display: none;
}
.piyo1,.piyo2,.piyo3,.piyo4{
    display: none;
  } 
}


@media (max-width: 768px) {

.header{
		max-width: 100%;
		padding: 15px 10px 20px 10px;
	}   
header .logo{
  	width: 75%;
	}
 
h1 img{
	width: 100%;
	margin: 0;
}
.logo_tx{
	margin:5px 0 0 70px;
	font-size: 12px;
	letter-spacing: 1px;
	}
}




/* 
MVエリア仮
=================================== */
.mv_s_area{
  /* max-width: 1350px;
  min-width: 800px; */
  max-width: 1100px;
  min-width: 700px;
  margin: 0 auto 50px auto;
  padding: 5px 0 40px 0;
  text-align: center;
  position: relative;
}

.mv_s_area img{
  width: 100%;
  }

.mv_cp_tx01{
  position: absolute;
  /* top: 550px; */
  bottom: 100px;
  left: 0px;
  background:#fff;
  padding:0.25em 0.5em 0.15em 0.5em;
  border-radius:10px;
  color:#222;
  display: inline-block;
  font-family: "ab-kirigirisu", sans-serif;
  font-size: 34px;
  line-height: 1em;
  z-index: 10;

}

.mv_cp_tx02{
  position: absolute;
  /* top: 590px; */
  bottom: 140px;
  left: 0px;
  background:#fff;
  padding:0.25em 0.5em;
  border-radius:10px;
  color:#222;
  display: inline-block;
  font-family: "ab-kirigirisu", sans-serif;
  font-size: 34px;
  line-height: 1em;
  z-index: 10;

}

/* ふわふわ楕円 */

/*========= 流体シェイプを動かす ===============*/
.fluid {
  
  background:#f4dfdf;/*背景色*/
  animation: fluidrotate 30s ease 0s infinite;/*アニメーションの設定*/
}

@keyframes fluidrotate {  
	  
  0%, 100% {
      border-radius: 63% 37% 54% 46%/55% 48% 52% 45%;
  }
  14% {
      border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
  }
  28% {
      border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
  }
  42% {
      border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
  }
  56% {
      border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
  }
  70% {
      border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
  }
  84% {
      border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
  }
      
  }

@media (max-width: 768px) {
.mv_s_area{
  max-width: 100%;
  min-width: 100%;
margin: 0 auto 0 auto;
}
.mv_s_area img{
width: 130%;
transform: translateX(-10%);
  }

.mv_cp_tx01{
  bottom: 50px;
  left: 15px;
  padding:0.4em 0.5em 0.4em 0.5em;
  font-size: 22px;
}
.mv_cp_tx02{
  bottom: 80px;
  left: 15px;
  padding:0.4em 0.5em;
  font-size: 22px;
}	
.fluid{
	padding-bottom: 15px;
	}
}


/* 
メッセージエリア
=================================== */
.full_area{
  width: 100%;
  
}

.mbg01{
  background-image: url(../img/bg_pic1.png);
  background-repeat: no-repeat;
  background-position-x: -1000px;
  background-position-y: 300px;
}


.message_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 120px 0 50px 0;
  background-image: url(../img/message_area_bg.png);
	background-position: 0 70px;
  background-repeat: no-repeat;
}

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

.full_area h2{
  font-size: 74px;
  font-weight: bold;
  display: block;
	
}
.full_area span{
  font-size: 18px;
  font-weight: 900;
  display: block;
  padding:10px 0 0 15px;
font-family: 'Noto Sans JP';
	line-height: 1em;
}

.message_area_inner2{
  width: 920px;
  margin: 0 auto;
  display: flex;
}

.message_area_inner3{
  width: 740px;
  margin: 75px 80px 0px 80px ;
}
.message_area_inner3 img{
  width: 740px;
  border-radius: 30px;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .2);

}
.message_area_inner3 p{
  font-size: 18px;
  font-weight: normal;
  line-height: 2.1em;
  margin: 23px 0 0 0;
  padding: 10px;
  color: #333;
  letter-spacing: 0.2em;
  font-feature-settings: "palt";
}

.message_area_inner4{
  width: 160px;
}
.message_area_inner4 img{
  width: 135px;
  margin-top: 15px;
}
.message01{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 50px;
  
}
.message02{
  font-size: 14px;
  text-align: center;
  margin: 20px 0 0 0;
  }
.message03{
    font-size: 28px;
    text-align: center;
	margin: 5px 0 5px 0;
 }
.message04{
    font-size: 12px;
    text-align: center;
    color:#87902d;
  }

@media (max-width: 768px) {
.full_area{
  width: 100%; 
}	
.message_area_inner{
  width: 100%;
  margin: 0 auto;
  padding: 80px 0 100px 0;
  background-image: url(../img/message_area_bg.png);
background-position: 0 40px;
  background-repeat: no-repeat;
  /* background-size: 100%; */
}


	
.under1{
	width: 90%;
}

.full_area h2{
  font-size: 40px;
/* margin-left: 20px;	*/
}
.full_area span{
  font-size: 12px;
  padding:10px 0 0 7px;
}	
.message_area_inner2{
  width: 95%;
  margin: 0 auto;
  display: block;
}
.message_area_inner3{
  width: 100%;
margin: 35px auto 0 auto;
}
.message_area_inner3 img{
  width: 100%;
  border-radius: 30px;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .2);
}
.message_area_inner3 p{
  font-size: 16px;
  margin: 5px 0 0 0;
}
.message_area_inner4{
  width: 100%;
	text-align: center;
}
.message_area_inner4 img{
  width: 135px;
  margin-top: 15px auto 0 auto;	
}
.message01{
  writing-mode: horizontal-tb;  /* 横書きに戻す */
  font-size: 30px;
  padding: 35px 0 0 0;
}
	
.message02{
  font-size: 11px;
  text-align: center;
  margin: 10px 0 0 0;
  }
.message03{
    font-size: 22px;
    text-align: center;
	margin: 5px 0 5px 0;
 }
.message04{
    font-size: 10px;
    text-align: center;
    color:#87902d;
  }	
	
}



/* 
インスタエリア
=================================== */

.insta_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 100px 0;
  background-image: url(../img/insta_area_bg.png);
	background-position: 0 200px;
background-repeat: no-repeat;
  position: relative;
}

.insta_tx01{
  padding-left: 15px;
  color: #333;
  margin-top: 20px;
	line-height: 1.5em;
}

.insta_load{
  margin: 50px 0 20px 0;
}

.insta_under{
  display: flex;
  align-items: middle;
  justify-content: center;
  margin: 50px 0px;
}

.insta_under p{
  font-size: 34px;
  margin: 30px 25px 0 25px;
}

.qr1 img{
  width: 100px;
}

.insta_hana{
  position: absolute;
  right: 200px;
  top: 150px;
}
/*花のアニメ*/
/*.insta_hana.displayed{
  animation: rotate-01 10s forwards 1s ease infinite;
  
}
@keyframes rotate-01{
  0%{transform: rotate(360deg);}
  15%{transform: rotate(0);}
100%{transform: rotate(0);}
}*/

@media (max-width: 768px) {
	
	
.insta_area_inner{
  width: 100%;
  margin: 0 auto;
  padding: 0px 0 100px 0;
  background-image: url(../img/insta_area_bg.png);
	background-size:100%;
	background-position: 0 0px;
  position: relative;
}

.insta_tx01{
  padding-left: 5px;
  color: #333;
  margin-top: 20px;
}

.insta_load{
  margin: 30px 0 20px 0;
}	

.insta_under{
  display: block;
  margin: 20px 0px;
}
	
.pu_pic{
	display: none;
}

.insta_under p{
  font-size: 18px;
  margin: 0px 0px 0 0px;
  text-align: center;
}

.qr1 img{
	display: none;
}
	
.insta_hana{
  position: absolute;
  right: 30px;
  top: 30px;
	width: 50px;
}
}


  /* 
入園案内
=================================== */

.guide_area {
  overflow: hidden;
}

.guide_area_top {
  background-color: #f3eee0;
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px -200px;
  padding: 65px 280px 0 280px;
  min-height: 300px;
  }

.guide_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 100px 0;
  position: relative;
}

.guide_area_inner h2{
  font-size: 74px;
  font-weight: bold;
  display: block;
}

.guide_area_inner span{
  font-size: 18px;
  font-weight: 900;
  display: block;
  padding:10px 0 0 15px;
font-family: 'Noto Sans JP';
	line-height: 1em;
}

 .guide_chou{
    position: absolute;
    left: 400px;
    top: 90px;
 }
 .vibrate-1 {
	-webkit-animation: vibrate-1 1.5s linear infinite ;
	        animation: vibrate-1 1.5s linear infinite ;
}


.hyo01{
  margin: 40px 0 40px 0;
}

.hyo01_ttl1{
  width: 300px;
  margin: 0 auto;
  background-color: #7fab15;
  color: #fff;
  text-align: center;
  font-size: 28px;
  border-radius: 70px 70px 0 0;
  height:auto;
  font-weight: 700;
  padding: 25px 0 20px 0;
  letter-spacing: 0.1em;
}


.hy01{
	background: #dbe28d;
	border-radius: 30px 30px 0 0;
 
}

.hy01_w11{
	width: 11%;
  padding: 13px 0 13px 0;
  border-right: 1px solid #cccccc;
}

.hy01_w12{
	width: 12%;
  padding: 13px 0 13px 0;
}

.hy01_text01{
  font-size: 16px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  line-height: 1.3em;
  vertical-align: middle;
  border-bottom: 1px solid #cccccc;
 
}

.hy01_text02{
  font-size: 16px;
  color: #ff0000;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  line-height: 1.3em;
  vertical-align: middle;
  border-bottom: 1px solid #cccccc;
}

.hy01_bg01{
  background-color: #fff;
  border-bottom: 1px solid #bbbbbb;
}

.hy01_bg02{
  background-color: #f8f8f8;
  border-bottom: 1px solid #bbbbbb;
}

.hy01_bg03{
  background: #dbe28d;
	border-radius: 0 0 30px 30px ;
}

.hy01_text03{
    font-size: 16px;
    color: #ff0000;
    font-family: 'Noto Sans JP', sans-serif;
    text-align: center;
    line-height: 1.3em;
    font-feature-settings: "palt";
}

.hy01_text04{
  font-size: 16px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  line-height: 1.8em;
  padding-top: 30px;
  font-feature-settings: "palt";
}

.hy01_text05{
	font-size: 16px;
    text-align: center;
    line-height: 1.3em;
    font-feature-settings: "palt";
	margin-bottom: 30px;
	color: #7fab15;
}

.hy01_text06{
	font-size: 16px;
    text-align: center;
    line-height: 1.3em;
    font-feature-settings: "palt";
	color: #7fab15;
}


.hyo02{
  margin: 100px 0 10px 0;
}

.hy02_bg01{
  background-color: #fff;
 
}

.hyo02_ttl1{
  width: 300px;
  margin: 0 auto;
  background-color: #cd6714;
  color: #fff;
  text-align: center;
  font-size: 28px;
  border-radius: 70px 70px 0 0;
  font-weight: 700;
  padding: 25px 0 20px 0;
  letter-spacing: 0.1em;

}


.hy02{
	background: #eedcb0;
	border-radius: 30px 30px 0 0;
 
}

.hy02_w29{
	width: 29%;
  padding: 13px 0 13px 0;
  border-left: 1px solid #cccccc;
}

.hy02_w13{
	width: 13%;
  padding: 13px 0 13px 0;
}

.hy02_bg03{
  background: #eedcb0;
	border-radius: 0 0 30px 30px ;
}


.hy02_text01_ttl{
  font-size: 16px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  line-height: 2.5em;
  vertical-align: middle;
  border-bottom: 1px solid #cccccc;
}

.hy02_text01{
  font-size: 16px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  line-height: 1.3em;
  vertical-align: middle;
  border-bottom: 2px solid #cccccc;
}

.hy02_text02{
  font-size: 16px;
  color: #ff0000;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  line-height: 1.3em;
  vertical-align: middle;
  border-bottom: 2px solid #cccccc;
  
}

.hy02_bgm{
  background-color: #f8f8f8;
}


.hyo03{
  margin: 100px 0 100px 0;
}



.hyo03_ttl1{
  width: 300px;
  margin: 0 auto;
  background-color: #0abfdf;
  color: #fff;
  text-align: center;
  font-size: 28px;
  border-radius: 70px 70px 0 0;
  font-weight: 700;
  padding: 25px 0 20px 0;
  letter-spacing: 0.1em;
}

.hy03_bg01{
  background-color: #fff;
  display: flex;
  justify-content:flex-start;
  border-radius: 30px;
  padding: 40px 0 40px 45px;
  align-items: baseline;
  position: relative;
}


.hy03_text01{
  font-size: 28px;
  font-weight: bold;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.3em;
  vertical-align: middle;
  letter-spacing: 0.1em;
  margin-right: 35px;
}
.hy03_text02{
  font-size: 22px;
  font-weight: normal;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.3em;
  vertical-align: middle;
  letter-spacing: 0.05em;
}
.hyo03_duck{
  width: 200px;
  position: absolute;
  right: 100px;
  top: -10px;
}

.hyo03_duck img{
  width: 100%;
}



.guide_tex{
  text-align: center;
  font-size: 34px;
}

@media (max-width: 768px) {
	

.guide_area_top {
  background-color: #f3eee0;
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px 0px;
  padding: 65px 0px 0 0px;
  min-height: 300px;
  }
	
.guide_area_inner{
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 50px 0 70px 0;
  position: relative;
}
	
.guide_area_inner h2{
  font-size: 40px;
}

.guide_area_inner span{
  font-size: 12px;
}
	
  .hyo01,
  .hyo02,
  .hyo03{
    position: relative; /* タイトルを固定するための基準 */
    padding-bottom: 16px; /* 縦揺れ防止 */
    overflow: hidden; /* 角丸維持のため */
	  margin: 40px 0 5px 0; 
  }

	

  .hyo01_ttl1,
  .hyo02_ttl1 {
    width: 100%; /* タイトルは幅いっぱい */
    max-width: 300px; /* 最大幅指定で見やすく */
    margin: 0 auto; /* 中央寄せ */
    position: relative; /* スクロールに影響しない */
    z-index: 1; /* 上に重ねる */
	font-size: 24px;
  }

  /* テーブルの横スクロールを有効に */
  .hyo01 .table-wrapper,
  .hyo02 .table-wrapper {
    overflow-x: auto;  /* 横スクロールを有効に */
    -webkit-overflow-scrolling: touch; /* iOSのスムーズスクロール */
	   border-radius: 30px; /* エリア全体の角丸 */
  }

  .hyo01 table,
  .hyo02 table {
    min-width: 900px; /* 最低幅を確保してスクロールしやすく */
    width: 100%; /* フル幅の指定 */
    table-layout: auto; /* 列幅の自動調整 */
    border-collapse: collapse; /* セルの隙間をなくす */
  }

  .hy01_w11,
  .hy01_w12{
    width: auto; /* 幅の固定を解除して柔軟に対応 */
    min-width: 100px; /* 各セルが狭くなりすぎないように */
    padding: 10px 5px; /* スマホ向けの余白調整 */
  }
	
  .hy02_w13,
  .hy02_w29 {
    padding: 10px 5px; /* スマホ向けの余白調整 */
  }

  .hy01_text01,
  .hy01_text02,
  .hy02_text01,
  .hy02_text02 {
    font-size: 14px; /* 小さくなりすぎない文字サイズ */
    line-height: 1.5;
  }
	  /* 縦スクロールバー非表示 */
  .hyo01 .table-wrapper::-webkit-scrollbar,
  .hyo02 .table-wrapper::-webkit-scrollbar {
    display: none; /* Chrome, Safari用 */
  }

  .hyo01 .table-wrapper,
  .hyo02 .table-wrapper {
    -ms-overflow-style: none;  /* IE, Edge用 */
    scrollbar-width: none; /* Firefox用 */
  }
	
.hy03_bg01{
  display: block;
  padding: 20px 20px 20px 20px;

}


.hy03_text01{
  font-size: 20px;
  font-weight: bold;
  color: #222;
  line-height: 1.3em;
  vertical-align: middle;
  letter-spacing: 0.1em;
  margin-right: 0px;
	margin-bottom: 5px;
	text-align: center;
}
.hy03_text02{
  font-size: 16px;
  font-weight: normal;
  color: #222;
  line-height: 1.3em;
  vertical-align: middle;
	letter-spacing: 0em;
	text-align: center;
}
	
.hyo03_duck{
	display: none;
}
	
.guide_tex{
  font-size: 22px;
}	
}



 /* 
日々の活動 (入園案内の枠の中につくりました。)
=================================== */

.d_activ_area_top {
  background-color: #dee2af;
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px -200px;
  padding: 65px 280px;
  min-height: 300px;
  }

  .d_activ_area_inner{
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 100px 0;
    position: relative;
  }
  
  .d_activ_area_inner h2{
    font-size: 74px;
    font-weight: bold;
    display: block;
    letter-spacing: -0.23em;
  }
  
  .d_activ_area_inner span{
    font-size: 18px;
    font-weight: bold;
    display: block;
    padding-left: 15px;
    letter-spacing: 0.1em;
	  font-family: 'Noto Sans JP';
  }

.gud_tt1{
  font-family: "ab-kirigirisu", sans-serif;
  font-size: 42px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  line-height: 1.5em;
  position: absolute;
  right: 190px;
  top: 220px;
  z-index: 100;
  width: 110px;
  height:260px ;
}

  .activitie_area{
    width: 1000px;
    margin: 50px auto 0 auto;
  }

  .clearfix:after {
    content: "";
    display: block;
    clear: both;
  }
  
  .clearfix:before {
    content: "";
    display: block;
    clear: both;
  }
  
  .clearfix {
    display: block;
  }
  .activitie_dtl{
    width:430px;
    margin-top: 40px;
  }

  .fl_l{
    float: left;
  }
  .fl_r{
    float: right;
  }
  .mt120{
    margin-top: 150px;
  }

  .activitie_dtl img{
    width: 100%;
    border-radius: 30px;
   /*box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .2);*/
  }

  .activitie_dtl_in{
    width: 100%;
    margin-top: 30px;
    clear: both; 
  }

  .act_time01{
    width: 83px;
    height: 83px;
    background: #f5c51e;
    border-radius: 50%;
    text-align: center;
    font-size: 17px;
    line-height: 83px;
    color: #222;
    font-family: "ab-kirigirisu", sans-serif;
    float: left;
    margin-right: 20px;
	letter-spacing: -0.2em;
	font-feature-settings: "palt";	  
  }


  .act_tex_area{
    width: 320px;
    float: left;
  }

  .act_tex01{
    font-size: 18px;
    color: #427a17;
    text-align: left;
    line-height: 1.3em;
    font-weight: 500;
    font-feature-settings: "palt";
    padding-left:1em;
	text-indent:-1.2em;
    margin-bottom: 5px;
	margin-top: 13px;
  }

  .act_tex02{
    font-size: 16px;
    color: #222;
 font-weight: 500;
    text-align: left;
    line-height: 1.3em;
    font-feature-settings: "palt";
    margin-top: 8px;
  }







/* 一年の流れ */
  .year_activ_area{
    width: 100%;
    max-width: 1000px;
    margin: 50px auto 30px;
    position: relative;
  }
  .train{
	width: 310px;
}

  .hyo04{
    margin: 20px 0 10px 0;
  }

  .hy04_bg01{
    background-color: #f1f3d9;
   
  }

  .hy04{
    background: #518229;
    border-radius: 30px 30px 0 0;
  }
  .hy04_w{
    padding: 13px 0 13px 0;
    border-left: 1px solid #acbf9d;
  } 
  .hy04_text01_ttl{
    font-size: 18px;
    color: #fff;
	  font-weight: bold;
    text-align: left;
    line-height: 2.5em;
    vertical-align: middle;
    padding: 10px 0 10px 25px;
    letter-spacing: 0.1em;

  }
  
  .hy04_text01{
    font-size: 16px;
    color: #222;
    font-family: 'Noto Sans JP', sans-serif;
    text-align: left;
    line-height: 2.4em;
    vertical-align: middle;
    border-bottom: 2px solid #acbf9d;
    padding: 10px 10px 10px 20px;
  }

  .hy04_textarea{
    border-bottom: 2px solid #acbf9d;
    padding: 20px 10px 20px 20px;
	display: flex;
	  line-height: 1.5em;
  }

.hy04_season{
	width: 150px;
	font-weight: 700;
}

  



@media (max-width: 768px) {
.d_activ_area_top {
  background-color: #dee2af;
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px 00px;
 padding: 65px 0px 60px 0px;
  min-height: 300px;
  }

  .d_activ_area_inner{
  width: 80%;
  margin: 0 auto;
  padding: 20px 0 0 0;
  position: relative;
  }
  
  .d_activ_area_inner h2{
    font-size: 40px;
  }
  
  .d_activ_area_inner span{
    font-size: 12px;
  }
	
  .gud_tt1{
  font-size: 24px;
  line-height: 1.5em;
	position: relative;
  right: 43%;
  top:20px;
  z-index: 100;
  width: 100%;
  height:auto;
}
	
.activitie_area{
    width: 80%;
    margin: 50px auto 0 auto;
  }

.activitie_dtl{
    width:100%;
  }
	
  .mt120{
    margin-top: auto;
  }

  .fl_l{
    float: none;
	
  }
  .fl_r{
    float: none;

  }
  .mt120{
    margin-top: 150px;
  }

  .activitie_dtl img{
    width: 100%;
    border-radius: 30px;
	  margin-top: 45px;
  }

  .activitie_dtl_in{
    width: 100%;
    margin-top: 15px;
    clear: both; 
	  
  }
   

  .act_tex_area{
    width: 70%;
    float: left;
  }


	
  .year_activ_area{
    width: 85%;
    margin: 90px auto 30px;
    position: relative;
  }
  .train{
	width: 200px;
}
	
  .hy04_textarea{
    border-bottom: 2px solid #acbf9d;
    padding: 20px 10px 20px 20px;
	display: block;
	  line-height: 1.5em;
  }

.hy04_season{
	width: 100%;
	font-weight: 700;
}

  
}


/*==================================================
日々の活動のアニメ
===================================*/



.gud_pen{
  position: absolute;
  right: 350px;
  top: 370px;
  display: inline-block;
  z-index: 90;
}

.gud_buku{
  width: 240px;
  height:145px;
  position: absolute;
  right: 0px;
  top: 100px;
}


.slide-tl {
	-webkit-animation: slide-tl 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 4s both;
	        animation: slide-tl 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) 4s both;
}


@media (max-width: 768px) {
	
.gud_pen{
  position: absolute;
  left: 70px;
  top: 170px;
  z-index: 90;
	  width: 30px;
}

.gud_buku{
  width: 120px;
  height:75px;
  position: absolute;
  right: 1px;
  top: 170px;
}	
}

/* ----------------------------------------------
 * Generated by Animista on 2023-9-21 18:30:51
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation slide-tl
 * ----------------------------------------
 */
 @-webkit-keyframes slide-tl {
  0% {
    -webkit-transform: translateY(0) translateX(0);
            transform: translateY(0) translateX(0);
  }
  100% {
    -webkit-transform: translateY(-100px) translateX(-100px);
            transform: translateY(-100px) translateX(-100px);
  }
}
@keyframes slide-tl {
  0% {
    -webkit-transform: translateY(0) translateX(0);
            transform: translateY(0) translateX(0);
  }
  100% {
    -webkit-transform: translateY(-100px) translateX(-100px);
            transform: translateY(-100px) translateX(-100px);
  }
}




 /* 
園内ギャラリー
=================================== */
.gallery_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto 0 auto;
  padding: 100px 0;
  position: relative;
  
}

.gallery_area_inner h2{
  font-size: 74px;
  font-weight: bold;
  display: block;
}

.gallery_area_inner span{
  font-size: 18px;
  font-weight: 900;
  display: block;
  padding:10px 0 0 15px;
 font-family: 'Noto Sans JP';
	line-height: 1em;
}



.gallery_area_bg{
	 width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 100px 0 0 0;
  background-image: url(../img/gallery_area_bg.png);
  background-position: center 200px;
	background-size: 100%;
  background-repeat: no-repeat;
  position: relative;
}


.g_sld_area{
  width: 900px;
  margin: 30px auto 30px auto;
  padding: 5px 0 40px 0;
  text-align: center;
	 
}

.g_sld_area img{
  width: 100%;
  border-radius: 30px;
}
	



/*.g_slide{
  width: 1000px;
  margin: 30px auto;
}

.g_slide img{
  width: 100%;
  border-radius: 30px;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .2);
}*/


/*ギャラリーのアニメ*/
.gallery_mt{
  position: absolute;
  right: 100px;
  top: 80px;
}

/*矢印の設定*/

.slick-prev, 
.slick-next {
  position: absolute;
z-index: 3;
  top: 42%;
  cursor: pointer;/*マウスカーソルを指マークに*/
  outline: none;/*クリックをしたら出てくる枠線を消す*/
  border-top: 2px solid #fff;/*矢印の色*/
  border-right: 2px solid #fff;/*矢印の色*/
  height: 25px;
  width: 25px;
}

.slick-prev {/*戻る矢印の位置と形状*/
  left:2.5%;
  transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
  right:2.5%;
  transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
position: relative;
z-index: 3;
  text-align:center;
margin:-50px 0 0 0;/*ドットの位置*/
}

.slick-dots li {
  display:inline-block;
margin:0 5px;
}

.slick-dots button {
  color: transparent;
  outline: none;
  width:8px;/*ドットボタンのサイズ*/
  height:8px;/*ドットボタンのサイズ*/
  display:block;
  border-radius:50%;
  background:#fff;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
  background:#333;/*ドットボタンの現在地表示の色*/
}


@media (max-width: 768px) {

.gallery_area_inner{
  padding:0;  
	margin: 0 auto 20px auto;
}	
	
	
	
.gallery_area_bg{
	 width: 90%;
  margin: 0 auto;
  padding: 100px 0 0 0;
  background-position: center 120px;
	background-size: 100%;
 
}
	
	
	
	
	
	
.gallery_area_inner h2{
    font-size: 40px;
  }
  
.gallery_area_inner span{
    font-size: 12px;
  }

.gallery_mt{
  position: absolute;
  right: 20px;
  top: 5px;
	width: 80px;
}	
	
.g_sld_area{
  width: 100%;
  margin: 30px auto 30px auto;
  padding: 5px 0 0px 0;
  text-align: center;	 
}	
}



/* 
staff
=================================== */

.teachers_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto 30px auto;
  padding: 50px 0;
  position: relative;
  
}

.teachers_area_inner h2{
  font-size: 74px;
  font-weight: bold;
  display: block;
}

.teachers_area_inner span{
  font-size: 18px;
  font-weight: 900;
  display: block;
  padding:10px 0 0 15px;
font-family: 'Noto Sans JP';
	line-height: 1em;
}

/*スタッフのアニメ*/
.teachers_cld{
  position: absolute;
  right: 100px;
  top: 55px;
}


.teachers_area_bg{
margin: 10px auto 0px auto;
padding: 100px 0 0px 0;
background-image: url(../img/staff_area_bg.png);
background-position: center 10px;
background-size: 100%;
background-repeat: no-repeat;
position: relative;
}

.teachers_area{
	width: 900px;
	margin: 80px auto 80px auto;
	line-height: 1.5em;
}
.teachers_area img{
  width: 100%;
  border-radius: 30px;
}

.teachers_area_tx1{
	font-size: 18px;
	font-weight: bold;
	padding: 20px 0 10px 0;
}


.teachers_tx03{
  font-size: 34px;
  line-height: 1.6em;
  color: #222;
  font-family: "ab-kirigirisu", sans-serif;
  text-align: center;
}

@media (max-width: 768px) {
	
.teachers_area_inner{
  width: 100%;
  margin: 0px auto 30px auto;
  padding: 30px 0;
  position: relative;
  
}
	
.teachers_area_bg{

background-position: center 85px;
	padding: 50px 0 0px 0;

}
	
	
  .teachers_area_inner h2{
    font-size: 40px;
    letter-spacing: -0.15em;
  }
  
  .teachers_area_inner span{
    font-size: 12px;
    letter-spacing: 0.1em;
  }
	
.teachers_cld{
  position: absolute;
  right: 10px;
  top: 30px;
	width: 95px;
}
	
.teachers_area{
	width: 100%;
	margin: 30px auto 30px auto;
}
	
.teachers_tx03{
  font-size: 22px;
	line-height: 1.5em;

}


	
}


/* 
よくある質問
=================================== */

.qa_area {
  overflow: hidden;
}


.qa_area_top {
  background-color: #ebf2e5;
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px -200px 0 -200px;
  padding: 65px 280px 0 280px;
  min-height: 300px;
  }

.qa_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 100px 0 180px 0;
  position: relative;
}

.qa_area_inner h2{
  font-size: 74px;
  font-weight: bold;
  display: block;
}

.qa_area_inner span{
    font-size: 18px;
  font-weight: 900;
  display: block;
  padding:10px 0 0 15px;
font-family: 'Noto Sans JP';
	line-height: 1em;
}


.qa_hanas{
  position: absolute;
  right: 70px;
  top: 80px;
}


.qa_box{
  width: 880px;
  margin: 0 auto;
  margin-top: 60px;
  background: #fff;
  border-radius: 30px;
  padding: 30px 60px 30px 60px;
}

.qa_q{
  padding: 0 0 15px 0;
  border-bottom: 2px dotted #666666;
  display: flex;
  align-items: center;
}

.qa_a{
  padding: 25px 0 0 0;
  display: flex;
  align-items: flex-start;
}

.qa_q01{
  font-size: 52px;
  color: #495aaf;
  font-family: "ab-kirigirisu", sans-serif;
  text-align: left;
  padding: 0 0 0 10px;
}

.qa_q02{
  font-size: 20px;
  color: #222;
  font-weight: 500;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  padding: 0 0 0 0;
  margin-left: 20px;
}

.qa_a01{
  font-size: 52px;
  color: #f10000;
  font-family: "ab-kirigirisu", sans-serif;
  text-align: left;
  padding: 0 0 0 10px;
}

.qa_a02{
  font-size: 20px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  padding: 0 0 0 0;
  margin-left: 20px;
  line-height: 1.5em;
}

@media (max-width: 768px) {
	
	
.qa_area_top {
  border-radius: 2000px 2000px 0 0 / 400px 400px 0 0;
  margin: 16px 0px 0 0;
 padding: 65px 0px 60px 0px;
  min-height: 300px;
  }

  .qa_area_top_inner{
  width: 80%;
  margin: 0 auto;
  padding: 0 0 0 0;
  position: relative;
  }
	
.qa_area_inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 0 50px 0;
  position: relative;
}
	
 .qa_area_inner h2{
    font-size: 40px;
	 margin-left: 30px;
  }
  
  .qa_area_inner span{
    font-size: 12px;
	 padding:10px 0 0 8px;
  }
	
.qa_hanas{
  position: absolute;
  right: 70px;
  top: 40px;
	width: 110px;
}
	
.qa_box{
  width: 75%;
  margin: 0 auto;
  margin-top: 60px;
  background: #fff;
  border-radius: 30px;
  padding: 30px 30px 30px 30px;
}
	
.qa_q01{
  font-size: 38px;

}

.qa_q02{
  font-size: 18px;
	line-height: 1.4em;
	 margin-left: 10px;
}

.qa_a01{
  font-size: 38px;

}

.qa_a02{
  font-size: 16px;
	margin-left: 10px;
}
}



/* 
電話番号
=================================== */
.tel_area{
  background-image: url(../img/tel_area_bg.jpg);
  background-size: 100%;
  padding: 150px 0;
}

.tel_area_box{
  width: 1000px;
  margin: 0 auto;
  padding: 50px 50px;
  background: #fff;
  border-radius: 30px;
  opacity: 0.8;
  display: flex;
  justify-content: space-between;
}

.tel_area_in01{
  width: 50%;
  padding: 0 0 0 0;
}

.tel_area_in01_tx1{
  font-size: 32px;
  line-height: 1.1em;
  color: #222;
  font-family: "ab-kirigirisu", sans-serif;
  font-feature-settings: "palt";
}

.tel_area_in01_tx2{
  font-size: 16px;
  line-height: 1.7em;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding-top: 15px;
  
}

.tel_area_in02{
  width: 48%;
  padding: 0 0 0 0;
}

.tel_area_in02_tx1{
  font-size: 16px;
  line-height: 0.5em;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding: 0 0 1px 0;
  font-weight: bold;
}

.tel_area_in02_tx1 span{
  font-weight: normal;
}

.tel_area_in02_tx2{
  font-size: 47px;
  color: #f10000;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding: 5px 0 12px 0;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  letter-spacing: 0.1em;
}

.tel_area_in02_tx2_s{
  font-size: 47px;
  
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding: 5px 0 12px 0;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  letter-spacing: 0.1em;
}

.tel_area_in02_tx2_s a{
  color: #f10000;
  text-decoration: none;
}

.tel_area_in02_tx3{
  font-size: 16px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding: 20px 0 5px 0;
}
.tel_area_in02_tx4{
  font-size: 18px;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding: 0 0 1px 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.4em;
}


@media (max-width: 768px) {

.tel_area_box{
  width: 80%;
  margin: 0 auto;
  padding: 20px 20px;
  background: #fff;
  border-radius: 30px;
  opacity: 0.8;
  display: block;

}
	
.tel_area_in01{
  width: 95%;
	margin: auto;
  padding: 0 0 0 0;
}

.tel_area_in02{
 
	 width: 95%;
	margin: auto;
  padding: 15px 0 10px 0;
}
	
.tel_area{
  background-image: url(../img/tel_area_bg.jpg);
	background-repeat: no-repeat;
  background-size: cover;
  padding: 150px 0;
}

	
.tel_area_in01_tx1{
  font-size: 26px;
  line-height: 1em;
  letter-spacing: -0.1em;
}

.tel_area_in01_tx2{
  font-size: 16px;
  line-height: 1.4em;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  padding-top: 5px;
  
}
	
	.tel_area_in02_tx2{
  font-size: 38px;
  padding: 10px 0 17px 0;
  
}

.tel_area_in02_tx2_s a{
  color: #f10000;
  text-decoration: none;
  font-size: 38px;
  padding: 10px 0 17px 0;
  letter-spacing: -0.01em;
}
	
.tel_area_in02_tx3{

  padding: 15px 0 7px 0;
}
	
.tel_area_in02_tx4{
  font-size: 16px; 
}
}


/* 
アクセス
=================================== */
.acs_map{
  margin: 0;
  padding: 0;
  background-color: #e9e9e9;
}


/* 
フッター
=================================== */
.foot{
  text-align: center;
  background-color: #e9e9e9;
  padding-bottom: 100px;
}

.foot_in01{
  width: 1000px;
  margin:0 auto;
  padding: 100px 0 0 0;
  display: flex;
  justify-content: space-between;
}

.foot_logo_area{
  width: 340px;
}

.foot_logo_area_tx1{
  font-size: 26px;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  line-height: 1.5em;
  color: #444;
  padding: 5px 0 0 0;

}

.foot_logo_area_tx2{
  font-size: 16px;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
  line-height: 1.5em;
  color: #444;
  padding: 5px 0 20px 0;
}

.ss_pic{
	width: 180px;
	margin: 0 auto 0 auto;
}

.foot_outline_area{
  width: 560px;
	margin-top: 30px;
}




.outline01{
  border-bottom: 1px solid #c1c1c1;
}

.outline02{
  width: 25%;
  font-family: 'Noto Sans JP', sans-serif;
  color: #444;
  font-size: 16px;
  padding: 17px 0 17px 15px;
  text-align: left;
}

.outline03{
  font-family: 'Noto Sans JP', sans-serif;
  color: #444;
  font-size: 16px;
  padding: 17px 15px 17px 0;
  text-align: left;
  line-height: 1.4em;
}

.outline04{
  font-family: 'Noto Sans JP', sans-serif;
  color: #444;
  font-size: 14px;
  padding: 15px 0 20px 15px;
  text-align: left;
	line-height: 1.4em;
}

.group_area{
  width: 1000px;
  margin: 80px auto 60px auto;

}

.group_ttl {
  display: flex;
  align-items: center;
  font-family: "ab-kirigirisu", sans-serif;
  font-feature-settings: "palt";
  font-size: 34px;
}

.group_ttl:before,
.group_ttl:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #c1c1c1;
}

.group_ttl:before {
  margin-right: 1rem;
}

.group_ttl:after {
  margin-left: 1rem;
}

.group_bana_area{
  width: 800px;
  margin: 40px auto 100px auto;
  display: flex;
  justify-content: space-between;
}

.cp_tx{
  color: #7b7b7b;
  align-items: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
}



/* ふわっとでてくるスタイル */
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}




@media (max-width: 768px) {
	
	.foot_in01{
  width: 90%;
  margin:0 auto;
  padding: 30px 0 0 0;
  display: block;
  
}
	
.foot_outline_area{
  width: 100%;
	margin-top: 30px;
}
	
.foot_outline_area2{
  width: 50%;
	margin: 30px auto 0 auto;
}	
	
.foot_logo2{
		width: 250px;
		margin: 0 auto 0 auto;
	}
	
.outline02{
  width: 35%;

}
	
.group_area{
  width: 90%;
  margin: 40px auto 5px auto;

}
.foot_logo_area{
  width: 100%;
  margin: 0;
}
	
.group_bana_area{
  width: 100%;

}
	
.group_bana_area img{
  
  width: 90%;
	}
	
.foot_logo_area_tx1{
  font-size: 18px;
  padding: 15px 0 0 0;
  

}

.foot_logo_area_tx2{
  font-size: 14px;
  padding: 5px 0 60px 0;
}

	
}
