@charset "UTF-8";


.kv_wrap{
	margin: 0 auto;
	padding: 0 0 60px;
	position:relative;
	text-align:center;

	background-color:#5ab946;
	background-image: url(../images/top/kv_rainbow.svg),url(../images/top/kv_bg2.png);
	background-repeat: no-repeat,repeat-x;
	background-position: center top 360px,center top ;
	background-size: 170% auto,auto 590px;
	z-index: 9;
}

.kv_bg1{
	position:absolute;
	top:0;
	left:0;
	right:0;
	text-align:center;
}
.kv_bg1 img{
	max-width: none;
	width: 100%;
	height: 650px;
	object-fit: cover;
	object-position: bottom;
}

.kv_inner{
	margin: 0 auto 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
	overflow: hidden;
}

.kv_inner h2{
	margin: 0 auto 0;
	padding: 130px 0 0px;
	position:relative;
	text-align:center;
	width:375px;
	height:320px;
}

.kv_tit_cloud{
	margin: 0 -20px 0 -40px;
	padding: 0 0 0px;
	position:relative;
	text-align:center;
}
.kv_tit_cloud img{
	width:auto;
	height:auto;
	max-width: none;
}


.kv_tit_txt1{
	position:absolute;
	top:-237px;
	left:0;
	right:0;
	z-index:10;
    animation: slideDown 1.5s ease-out 1.2s forwards;
}
@keyframes slideDown {
    from {
        top: -237px;
    }
    to {
        top: -35px;
    }
}


.kv_tit_txt2{
	position:absolute;
	top:185px;
	left:0;
	right:0;
	z-index:10;
}
.kv_tit_txt3{
	position:absolute;
	top:310px;
	left:0;
	right:0;
	z-index:10;
}
.kv_tit_txt4{
	position:absolute;
	top:25px;
	right:10px;
	z-index:10;
}
.kv_free{
	position:absolute;
	top:60px;
	left:30px;
	z-index:10;
	width:80px;
}
.kv_reservation{
	position:absolute;
	top:385px;
	right:15px;
	z-index:10;
	width:100px;
}
.kv_chara1{
	position:absolute;
	top:190px;
	left:10px;
	width:55px;
}
.kv_chara2{
	position:absolute;
	top:280px;
	left:20px;
	width:52px;
}
.kv_chara3{
	position:absolute;
	top:200px;
	right:20px;
	width:50px;
}
.kv_chara4{
	position:absolute;
	top:278px;
	right:22px;
	width:70px;
}
.kv_cloud1{
	position:absolute;
	top:120px;
	left:0px;
	width:56px;
}
.kv_cloud2{
	position:absolute;
	top:25px;
	left:20px;
	width:51px;
    animation: cloudMove 100s linear infinite;
}
@keyframes cloudMove {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(180px); /* 右へ180px */
    }
    100% {
        transform: translateX(0); /* 元の位置に戻る */
    }
}
.kv_cloud3{
	position:absolute;
	top:285px;
	left:-70px;
	display:none;
}
.kv_cloud4{
	position:absolute;
	top:90px;
	right:0px;
	width:113px;
    /*animation: cloudMove2 220s linear infinite;*/
}
@keyframes cloudMove2 {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(-150px); /* 左へ150px */
    }
    100% {
        transform: translateX(0); /* 元の位置に戻る */
    }
}
.kv_cloud5{
	position:absolute;
	top:165px;
	right:-140px;
	display:none;
}




.loop_wrap {
	margin: -15px auto 0;
	padding: 0 0;
	position:relative;
	text-align:center;
	display: flex;
	width: auto;
	height: auto;
	overflow: hidden;
	z-index: 1;
}

.loop_wrap img {
  max-width: none;
  width: auto;
  height: 116px;
}

@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.loop_wrap img:first-child {
  animation: loop 80s -40s linear infinite;
}

.loop_wrap img:last-child {
  animation: loop2 80s linear infinite;
}

#message{scroll-margin-top: 90px;}
#experience{scroll-margin-top: 30px;}
#calendar{scroll-margin-top: 30px;}
#participation{scroll-margin-top: 20px;}
#teacher{scroll-margin-top: 70px;}
#access{scroll-margin-top: 0px;}

.message_area{
	margin: 0 auto;
	padding: 0 0 130px;
	position:relative;
	text-align:center;
	z-index:9;
	background-color:transparent;

}
.message_inner{
	margin: 0 auto 40px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.message_img{
	margin: 0 0 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.message_img img {
  max-width: none;
  width: 250px;
  height: auto;
}

.message_txt{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:left;
}

.message_txt h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	font-weight: 600;
	font-size: 22px;
	letter-spacing: 0.01em;
	line-height: 35px;
	color: #5a3c32;
	text-align:center;
}

.message_txt p{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.00em;
	line-height: 21px;
	color: #5a3c32;
	text-align:center;
}


.popup_btn{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;

}

.popup_btn a{
	margin: 0 auto 10px;
	padding: 10px 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 19px;
	letter-spacing: 0.03em;
	line-height: 28px;
	color:#f15a24;
	border-radius:50px;
	border:5px solid #f15a24;
	background-color:#fff;
	width:325px;
	display:block;
	filter: drop-shadow(0px 6px 0px rgba(0,0,0,0.2));
}
.popup_btn a:hover{

}

.vegetables1{
	position:absolute;
	top:-40px;
	left:70px;
	width:42px;
}
.vegetables2{
	position:absolute;
	top:-20px;
	left:20px;
	width:42px;
}
.vegetables3{
	position:absolute;
	bottom:-230px;
	left:40px;
	width:60px;
}
.vegetables4{
	position:absolute;
	bottom:-220px;
	left:120px;
	width:40px;
}
.vegetables5{
	position:absolute;
	top:-40px;
	right:60px;
	width:36px;
}
.vegetables6{
	position:absolute;
	top:-30px;
	right:20px;
	width:50px;
}
.vegetables7{
	position:absolute;
	bottom:-230px;
	right:120px;
	width:48px;
}
.vegetables8{
	position:absolute;
	bottom:-210px;
	right:50px;
	width:32px;
}



/* popup */

.mfp-bg {background: #000 !important;opacity: 0.5 !important;}
.white-popup-block{padding:0 0;text-align:justify;margin:0 auto;position:relative}
.mfp-hide{display:none!important}

.popup_block{
	box-sizing: border-box;
	margin: 0 auto;
	padding: 40px 15px 30px 15px;
	position:relative;
	text-align:center;
	background-color:#fff;
	border-radius:20px;
	max-height:700px!important;
	max-width:900px!important;
	border:3px solid #f5cc38;
}

.popup_close{
	position: absolute;
	top: 15px;
	right: 15px;
}

.popup_close a{
	display:block;
}
.popup_close img{
	width:30px;
	height:auto;
}


.mfp-close{
	display:none !important;
}

.popup_block .pop_txt{
	margin: 0 auto;
	padding: 0 0 ;
	position: relative;
	text-align:left;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 24px;
	color: #5a3c32;
	display:inline-block;
}





.experience_area{
	margin: 0 auto;
	padding: 120px 0 0;
	position:relative;
	text-align:center;
	z-index:9;
	overflow: hidden;
}
.experience_box{
	margin: 0 auto;
	padding: 40px 0 80px;
	position:relative;
	text-align:center;
	width:auto;
	background-color:#fff;
	border-radius: 0 0 0 0;

}

.experience_box::before {
content: "";
position: absolute;
top:-55px;
left:0;
width: 100%;
height: 55px;
background-image: url("../images/top/experience_bg.svg");
background-repeat: repeat-x;
background-position: left top;
background-size:auto auto;
}

.experience_p{
	position: absolute;
	top: -115px;
	right: -20px;
}
.experience_p img {
  max-width: none;
  width: 255px;
  height: auto;
}
.experience_box h3{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 26px;
	letter-spacing: 0.04em;
	line-height: 32px;
	color:#257731;
}
.experience_box h3 small{
	font-size: 16px;
	display:block;
}

.experience_flow {
	margin: 0 auto 120px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.experience_chara1{
	position: absolute;
	top: 750px;
	right: 50px;
	z-index:1;
}
.experience_onion{
	position: absolute;
	top: 810px;
	right: 0px;
}
.experience_box h4{
	margin: 0 auto 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 25px;
	letter-spacing: 0.04em;
	line-height: 36px;
	color:#5a3c32;
}


ul.voice_list{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
ul.voice_list li{
	margin: 0 auto 0;
	padding: 30px 20px 0;
	position:relative;
	text-align:center;
	width:315px;
	height:325px;
	border-radius:5px;
	filter: drop-shadow(3px 4px 0px rgba(0,0,0,0.1));
	box-sizing: border-box;
}
ul.voice_list li:before {
	position: absolute;
	top: -20px;
	left:0;
	right:0;
	margin:auto;
	content: url(../images/top/voice_pin.svg);
}
ul.voice_list li.voice_style1{
	background-color:#ffdee7;
}
ul.voice_list li.voice_style2{
	background-color:#ffe7bb;
}
ul.voice_list li.voice_style3{
	background-color:#ffffc5;
}
ul.voice_list li.voice_style1 .voice_box{
	background-color:#ffc6d5;
}
ul.voice_list li.voice_style2 .voice_box{
	background-color:#f7cc81;
}
ul.voice_list li.voice_style3 .voice_box{
	background-color:#fff09a;
}
ul.voice_list li p{
	margin: 0 0 15px;
	padding: 0 0;
	position:relative;
	text-align:left;
	height:125px;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.05em;
	line-height: 23px;
	color:#5a3c32;
	font-family: "Noto Sans JP", sans-serif;
}

ul.voice_list li .voice_box{
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	min-height:140px;
	border-radius:5px;
}
ul.voice_list li .voice_box h5{
	margin: 0 auto;
	padding: 7px 0px;
	position:absolute;
	top:-10px;
	left:0;
	right:0;
	text-align:center;
	width:240px;
	border-radius:20px;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 14px;
	color:#fff;
	background-color:#5a3c32;
	display:block;
}
ul.voice_list li .voice_box p{
	margin: 0 0;
	padding: 30px 20px 0;
	position:relative;
	text-align:left;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.00em;
	line-height: 20px;
	color:#5a3c32;
	font-family: "Noto Sans JP", sans-serif;
	box-sizing: border-box;
}



ul.voice_list.slick-slider{position: relative;}

ul.voice_list .slick-list{overflow: hidden;padding: 25px 0 !important;}

.voice_list .slick-track {}
.voice_list .slick-slide {
	width:315px !important;
}
.voice_list .slick-slide.slick-current {
  opacity: 1;
}
.voice_list .slick-slide a {
  display: block;
}

ul.voice_list .slick-slide{margin:0 10px;}

.slide-arrow {
cursor: pointer;
margin: auto;
position: absolute;
top: 47%;
width: 50px;
z-index:10;
}
.prev-arrow {
left: 0px;
}
.next-arrow {
right: 0px;
}

.experience_potato{
	position: absolute;
	top: 910px;
	left: -270px;
	z-index:1;
	display:none;
}

img.experience_illust1{
	margin: 20px 0 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.can_box{
	margin: 0 20px 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display: flex;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
}

.can_box h5 br{display:none;}
.can_box h5{
	margin: 0 0 15px 0;
	padding: 5px 0;
	position:relative;
	text-align:center;
	border-radius:50px;
	background-color:#54ad46;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.01em;
	line-height: 1.6;
	color:#fff;
	z-index:2;
	width:100%;
}

.experience_chara2{
	position: absolute;
	top: -75px;
	left: 15px;
	z-index:1;
	transform: rotate(15deg);
}

ul.experience_list{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:left;
}

ul.experience_list li{
	margin: 0 0;
	padding: 0 0 0 15px;
	position:relative;
	text-align:left;

	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 32px;
	color:#5a3c32;
	font-family: "Noto Sans JP", sans-serif;
	background-image: url(../images/top/check.svg);
	background-repeat: no-repeat;
	background-position: left top 50%;
	background-size: auto;
}

ul.experience_list li.check_none{
background-image:none;
}

.experience_illust2{
	margin-bottom: 20px;
	order:-1;
	width:100%;
}




.nutrients_area{
	margin: 0 auto;
	padding: 0 0 40px;
	position:relative;
	text-align:center;
	z-index:9;
	background-color:#a0643c;
}
.nutrients_area:before {
content: "";
position: absolute;
top:-30px;
left:0;
right:0;
width: 100%;
height: 30px;
background-image: url("../images/top/nutrients_top.png");
background-repeat: repeat-x;
background-position: center top;
background-size:auto 30px;
}
.nutrients_box{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:auto;
	min-height:660px;
	background-image: url(../images/top/nutrients_bg.svg);
	background-repeat: no-repeat;
	background-position: center top 140px;
	background-size: 1070px auto;
}

.nutrients_box h3{
	margin: 0 0;
	padding: 60px 0 20px;
	position:relative;
	text-align:center;
}

.nutrients_box h4{
	margin: 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
}

img.nutrients_chara{
	position: absolute;
	bottom: -40px;
	left: 10px;
	z-index:1;
	width: 58px;
}


.nutrients_carrot{
	position: absolute;
	top: -50px;
	left: 10px;
	z-index:1;
	width:95px;
}
.nutrients_potato{
	position: absolute;
	top: -85px;
	right: 0px;
	z-index:1;
	width:150px;
}




.calendar_area{
	margin: 0 auto;
	padding: 0 0 50px;
	position:relative;
	text-align:center;
	z-index:9;
	background-color:#d6e473;
	
}
.calendar_area:before {
content: "";
position: absolute;
top:-16px;
left:0;
right:0;
width: 100%;
height: 16px;
background-image: url("../images/top/calendar_top.png");
background-repeat: repeat-x;
background-position: center top;
background-size:750px 16px ;
}

.calendar_inner{
	margin: 0 auto;
	padding: 50px 0 0;
	position:relative;
	text-align:center;
	overflow-x: hidden;
}

.nutrients_scoop{
	position: absolute;
	top: 20px;
	right: -150px;
	z-index:1;
	width:190px;
}

.calendar_inner h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 26px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}

.calendar_inner h3 small{
	font-size: 18px;
	display:block;
	letter-spacing: 0.13em;
}
.calendar_inner h4{
	margin: 0 0 5px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 23px;
	color:#5a3c32;
}

.calendar_inner p{
	margin: 0 20px 15px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.01em;
	line-height: 19px;
	color:#5a3c32;
	font-family: "Noto Sans JP", sans-serif;
}

.calendar_note{
	margin: 0 auto 10px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

.calendar_box{
	margin: 0 10px 50px;
	padding: 10px 10px;
	position:relative;
	text-align:center;

	background-color:#fff;
}

.calendar_main{
	margin: 0 0 ;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.calendar_main img{
	max-width: none;
	width: auto;
	height: auto;
}

.calendar_main{
	overflow: auto;
	white-space: nowrap;
}

.calendar_box img.left_fixed{
	max-width: none;
	width: 93px;
	height: 578px;
	object-fit: cover;
	object-position:left top;
	position:absolute;
	top:10px;
	left:10px;
	z-index:1;
}

/* 以下、スクロールバーを追加 */
.calendar_main::-webkit-scrollbar{　　
 height: 5px;
}
.calendar_main::-webkit-scrollbar-track{
 background: #333;
}
.calendar_main::-webkit-scrollbar-thumb {
 background: #999;
}




ul.chara_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	display: flex;
	align-items:flex-end;
	justify-content:center;
	flex-wrap:wrap;
}

ul.chara_list li{
	margin: 0 2% 10px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	width:43%;
}

ul.chara_list li div{
	width:80px;
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}
ul.chara_list li div.tomato{
	width:110px;
}
ul.chara_list li h5{
	margin: 5px 0 5px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 30px;
	color:#5a3c32;
}

ul.chara_list li p{
	margin: 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:left;
	font-weight: 600;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 20px;
	color:#5a3c32;
	font-family: "Zen Maru Gothic", serif;
}







.participation_area{
	margin: 0 auto 0;
	padding: 50px 0 30px;
	position:relative;
	text-align:center;
	z-index:9;
	background-color:#b4d678;
}
.participation_area:before {
content: "";
position: absolute;
top:-16px;
left:0;
right:0;
width: 100%;
height: 16px;
background-image: url("../images/top/participation_top.png");
background-repeat: repeat-x;
background-position: center top;
background-size:750px 16px ;
}

.participation_box{
	margin: 0 auto 80px;
	padding: 40px 0 40px;
	position:relative;
	text-align:center;

	background-color:#fff;
	border-radius: 10px;
	filter: drop-shadow(4px 6px 0px rgba(0,0,0,0.1));
	box-sizing: border-box;
}
.participation_box:before {
content: "";
position: absolute;
top:-47px;
left:0;
right:0;
margin:auto;
width: 100%;
height: 100px;
background-image: url("../images/top/participation_box_bg1.png");
background-repeat: no-repeat;
background-position: center center;
background-size:100% auto ;

}
.participation_box:after {
content: "";
position: absolute;
bottom:0;
left:0;
right:0;
margin:auto;
width: 100%;
height: 25px;
background-image: url("../images/top/participation_box_bg2.png");
background-repeat: no-repeat;
background-position: center center;
background-size:100% 25px ;
}



.participation_box h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}

ul.participation_list{
	margin: 0 5px 30px;
	padding: 0 0 ;
	position:relative;
	text-align:center;

}
ul.participation_list li{
	margin: 0 0 10px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	display: flex;
	align-items:flex-start;
	justify-content:flex-start;
}
ul.participation_list li div{
	margin: 0 0;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:35px;
	height:35px;
	background-color:#54ad46;
	border-radius:50%;
display: flex;
align-items:center;
justify-content:center;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: 0.00em;
	line-height: 20px;
	color:#fff;
	flex-basis:35px !important;
}
ul.participation_list li p{
	margin: 0 0 0 5px;
	padding: 10px 10px ;
	position:relative;
	text-align:left;
	flex-basis:94%;
	background-color:#d9e021;
	border-radius:15px;
	font-weight: 600;
	font-size: 13px;
	letter-spacing: 0.08em;
	line-height: 19px;
	color:#5a3c32;
	box-sizing: border-box;
}
ul.participation_list li p small{
	display:block;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.00em;
	line-height: 24px;
	font-family: "Noto Sans JP", sans-serif;
}

.notice_box{
	margin: 0 10px 50px;
	padding:15px 15px 15px;
	position:relative;
	text-align:center;

	border-radius:10px;
	border:1px solid #5a3c32;
	box-sizing: border-box;
}
.notice_box h4{
	margin: 0 auto 10px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.00em;
	line-height: 24px;
	font-family: "Noto Sans JP", sans-serif;
}

ul.notice_list{
	margin: 0 auto 20px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
}
ul.notice_list li{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:left;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.00em;
	line-height: 20px;
	font-family: "Noto Sans JP", sans-serif;
}
.notice_box h5{
	margin: 0 auto 10px;
	padding: 2px 0 ;
	position:relative;
	text-align:center;
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.00em;
	line-height: 24px;
	font-family: "Noto Sans JP", sans-serif;
	background-color:#ffdc0a;
	text-decoration:underline;
}
.notice_box p{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:left;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.00em;
	line-height: 20px;
	font-family: "Noto Sans JP", sans-serif;
}

.participation_box h6{
	margin: 0 auto 20px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: 0.00em;
	line-height: 32px;
	display:inline-block;
}

img.h6_chara{
	position: absolute;
	top: -20px;
	left: -80px;
	z-index:1;
	width:75px;
}

.line_btn{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	z-index:1;
}

.line_btn a{
	margin: 0 auto 10px;
	padding: 15px 0 15px 20px;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.10em;
	line-height: 22px;
	color:#257731;
	border-radius:50px;
	border:5px solid #257731;
	background-color:#fcee21;
	width:330px;
	display:block;
	filter: drop-shadow(0px 6px 0px rgba(0,0,0,0.2));
	background-image: url(../images/top/line.svg),url(../images/top/btn_arr.svg);
	background-repeat: no-repeat,no-repeat;
	background-position: left 20px top 50%,right 20px top 50%;
	background-size: auto,auto ;
	box-sizing: border-box;
}
.line_btn a:hover{

}


.pen{
	position: absolute;
	top: -80px;
	right: -0px;
	z-index:1;

}
.pen img{
	width:90px;
	height:155px;
	object-fit: cover;
	object-position:left center;
}
.faq_box{
	margin: 0 auto 50px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	width:auto;
	box-sizing: border-box;
}
.faq_box h3{
	margin: 0 auto 30px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 24px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}


ul.faq_list{
	margin: 0 10px 20px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	box-sizing: border-box;
}
ul.faq_list li{
	margin: 0 0 10px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	box-sizing: border-box;
}

.accordion-title {
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:left;
	display: flex;
	align-items:flex-start;
	justify-content:space-between;
	cursor: pointer;
}

.accordion-title em{
	margin: 0 0;
	padding: 0 0 5px;
	position:relative;
	text-align:center;
	width:42px;
	height:42px;
	background-color:#725b9f;
	border-radius:50%;
	display: flex;
	align-items:center;
	justify-content:center;
	font-weight: 600;
	font-size: 26px;
	letter-spacing: 0.00em;
	line-height: 24px;
	color:#fff;
flex-basis:42px;
box-sizing: border-box;
}
.accordion-title p{
	margin: 0 0 0 3px;
	padding: 15px 45px 15px 15px ;
	position:relative;
	text-align:left;
	flex-basis:90%;
	background-color:#ffffff;
	border-radius:13px;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 20px;
	color:#5a3c32;
	box-sizing: border-box;
}

.accordion-content {
	margin: 10px 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:left;
	display: flex;
	align-items:flex-start;
	justify-content:space-between;

}
.accordion-content em{
	margin: 0 0;
	padding: 0 0 5px;
	position:relative;
	text-align:center;
	width:42px;
	height:42px;
	background-color:#f08000;
	border-radius:50%;
	display: flex;
	align-items:center;
	justify-content:center;
	font-weight: 600;
	font-size: 26px;
	letter-spacing: 0.00em;
	line-height: 24px;
	color:#fff;
flex-basis:42px;
box-sizing: border-box;
}
.accordion-content p{
	margin: 0 0 0 3px;
	padding: 15px 15px 15px 15px ;
	position:relative;
	text-align:left;
	flex-basis:90%;
	background-color:#ffffff;
	border-radius:13px;
	font-weight: 600;
	font-size: 13px;
	letter-spacing: 0.05em;
	line-height: 20px;
	color:#5a3c32;
	box-sizing: border-box;
}
.accordion-content p small{
	display:block;
	font-weight: 500;
	font-size: 11px;
	letter-spacing: 0.00em;
	line-height: 20px;
	font-family: "Noto Sans JP", sans-serif;
}


/* 矢印 */

.accordion-title::after {
	border-right: solid 2px #aa9ec3;
	border-top: solid 2px #aa9ec3;
	content: "";
	display: block;
	height: 10px;
	position: absolute;
	right: 4%;
	top: 35%;
	transform: rotate(135deg);
	transition: transform .3s ease-in-out, top .3s ease-in-out;
	width: 10px;
}
.accordion-title.open::after {
	top: 45%;
	transform: rotate(-45deg);
}

.question{
	position: absolute;
	top: -50px;
	left: 20px;
	z-index:1;
	width:55px;
}

.exclamation{
	position: absolute;
	top: -30px;
	right: 20px;
	z-index:1;
	width:45px;
}

.faq_box p.faq_txt{
	margin: 0 20px;
	padding: 0 0 0;
	position:relative;
	text-align:left;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.00em;
	line-height: 20px;
	color:#5a3c32;
	display:none;
}



.insta_area{
	margin: 0 auto;
	padding: 30px 0 20px;
	position:relative;
	text-align:center;
	z-index:9;
	background-color:#40c8e6;
}
.insta_area:before {
content: "";
position: absolute;
top:-26px;
left:0;
right:0;
width: 100%;
height: 26px;
background-image: url("../images/top/insta_top.png");
background-repeat: no-repeat;
background-position: center top;
background-size:100% 26px ;
}
.insta_area:after {
content: "";
position: absolute;
bottom:-20px;
left:0;
right:0;
width: 100%;
height: 60px;
background-image: url("../images/top/insta_bottom.svg");
background-repeat: no-repeat;
background-position: center bottom;
background-size:auto 60px;
}

.insta_box{
	margin: 0 auto 80px;
	padding: 0 0;
	position:relative;
	text-align:center;

}

.insta_box h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 25px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}
.insta_box h3 img{
	margin: 0 15px 0 0;
	vertical-align:middle;
}

ul.insta_list{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
width:330px;
z-index:10;
}
ul.insta_list li{
	margin: 0 5px 10px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:155px;
}
span.sbi-screenreader{
	display:none;
}
div.insta_list #sbi_images {
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px !important;
	width:320px;
}
div.insta_list #sbi_images .sbi_photo_wrap a {
	display:block;
	padding: 0;
}
div.insta_list .sbi_photo_wrap a img {
	width:100%;
	height:100%;
	object-fit:cover;
}

.btn_more{
	margin: 0 20px 0 0;
	padding: 0 0 ;
	position:relative;
	text-align:right;
}
.btn_more a{
	margin: 0 0;
	padding: 0 0 ;
	position:relative;
	text-align:right;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 14px;
	color:#5a3c32;
	text-decoration:underline;
}

.insta_cloud1{
	position: absolute;
	top: 400px;
	left: 0px;
	width:80px;
}
.insta_cloud2{
	position: absolute;
	top: 450px;
	left: 40px;
	width:60px;
}
.insta_cloud3{
	position: absolute;
	top: 560px;
	left: -410px;
	display:none;
}
.insta_cloud4{
	position: absolute;
	top: 30px;
	right: -320px;
	display:none;
}
.insta_cloud5{
	position: absolute;
	top: 580px;
	right: 30px;
	width:60px;
}
.insta_cloud6{
	position: absolute;
	top: 630px;
	right: 0px;
	width:80px;
}




.teacher_block{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.teacher_block h3{
	margin: 0 0 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 25px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}

.teacher_box{
	margin: 0 auto 50px;
	padding: 0 0 ;
	position:relative;
	text-align:center;

}

.teacher_img{
	margin: 0 auto 20px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
display: flex;
align-items:center;
justify-content:center;
}

.teacher_img img{
	width:110px;
	height:auto;
}
.teacher_img h4{
	margin: 0 40px 0 15px;
	padding: 0 0;
	position:relative;
	text-align:left;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 30px;
	color:#5a3c32;
}
.teacher_txt{
	margin: 0 20px ;
	padding: 0 0 ;
	position:relative;
	text-align:center;
}

.teacher_txt h4{
	display:none;
}
.teacher_box p{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:left;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.00em;
	line-height: 26px;
	color:#5a3c32;
}
.teacher_hat{
	position: absolute;
	top: -120px;
	right: 20px;
	width:80px;
}




.access_area{
	margin: 0 auto;
	padding: 60px 0 80px;
	position:relative;
	text-align:center;
	z-index:8;
	background-color:#6dc246;
}

.access_p{
	margin: 0 auto 15px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:280px;
}


.access_area h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 25px;
	letter-spacing: 0.05em;
	line-height: 33px;
	color:#5a3c32;
}

.access_area h4{
	margin: 0 0 5px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 23px;
	color:#5a3c32;
}

.access_area p{
	margin: 0 0 30px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 26px;
	color:#5a3c32;
}
.access_area p small{
	font-size: 14px;
	display:block;
}

ul.access_list{
	margin: 0 auto;
	padding: 0 0 ;
	position:relative;
	text-align:center;

}
ul.access_list li{
	margin: 0 auto 15px;
	padding: 0 0 ;
	position:relative;
	text-align:center;
	width:280px;
}

ul.access_list li iframe{
	width:280px;
}

ul.access_list li:nth-child(1){
	display:none;
}