@charset "UTF-8";
/* CSS Document */

/*
-----------------------------------------------
▼共通
----------------------------------------------- */
body{
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
}
div > img{
	width: 100%;
}
.in_box00{
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}
.in_box01{
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.in_box01_left{
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}
a:hover{
	opacity: 0.7;
}
.under767{
	display: none;
}

@media screen and (min-width: 767px){
a[href^="tel:"] {
	pointer-events: none;
}
}
@media screen and (max-width: 767px){
	.under767{
		display: block;
	}
	.over768{
		display: none!important;
	}
}
/*
-----------------------------------------------
▼main img
----------------------------------------------- */
.main_img{
	width: 100%;
}

/*
-----------------------------------------------
▼発酵文化の里を巡る。
----------------------------------------------- */
.hakko01{
	padding-top: 60px;
	background-color: #f3f0e6;
	padding-bottom: 75px;
}
.box01{
	display: flex;
	justify-content: space-between;
	padding: 0 2%;
}
.txt01 h1{
	color: #0f2f93;
	font-size: 5rem;
	font-weight: 700;
	text-align: center;
}
.txt01 p{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.7;
	margin-top: 1.7em;
}
.img01{
	width: 20%;
	margin-top: -1%;
}
.img_pict{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.txt01{
	width: 55%;
}
.img01 p{
	font-size: 1.4rem;
	font-weight: 700;
	margin-top: 0.5em;
	line-height: 1.7;
}
.box02{
	display: flex;
	padding-left: 2%;
	margin-top: 75px;
	justify-content: space-between;
}
.img02_a{
	display: flex;
	justify-content: space-between;
}
.left02{
	width: 57%;
}
.right02{
	width: 36%;
	padding-top: 7vw;
}
.syutoku{
	width: 33.24%;
	margin-top: -3vw;
}
.syutoku p{
	font-size: 1.4rem;
	font-weight: 700;
	margin-top: 0.5em;
	line-height: 1.7;
}
.tatsuno01{
	width: 55%;
}
.img02_b{
	width: 100%;
	margin-top: 6vw;
}

/*
-----------------------------------------------
▼各施設紹介
----------------------------------------------- */
.hakko02{
	margin-top: 85px;
}
.box03{
	display: flex;
	justify-content: space-between;
}
.con03_a{
	display: flex;
	justify-content: space-between;
}
.ttl-type01{
	writing-mode: vertical-rl;
	background-color: #c41540;
	color: #fff;
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	padding: 0.8em 0.6em;
	letter-spacing: 0.08em;
}
.con03_a{
	width: 62%;
}
.con03_b{
	width: 32%;
}
.con03_c{
	width: 32%;
}
.ttl03{
	width: 4%;
}
.img03{
	width: 58%;
}
.name{
	font-size: 1.8rem;
	font-weight: 500;
}
.con03_b{
	text-align: center;
}
.con03_b p{
	text-align: left;
	font-size: 1.3rem;
	font-weight: 400;
	margin-top: 1.2em;
	line-height: 1.7;
}
.con03_c p{
	text-align: left;
	font-size: 1.3rem;
	font-weight: 400;
	margin-top: 0.5em;
	line-height: 1.7;
}
.circle{
	margin-bottom: 20px;
	width: 55%;
	margin-left: auto;
	margin-right: auto;
}
.txt03{
	padding-left: 7%;
}
.txt03 h2{
	color: #0f2f93;
	font-size: 4.1rem;
	font-weight: 700;
	margin-top: 0.7em;
}
.txt03 p{
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.7;
	margin-top: 1em;
}
.list01 li:not(:last-child){
	margin-bottom: 100px;
}
.list01 li:last-child{
	margin-bottom: 90px;
}

/*
-----------------------------------------------
▼童謡と発酵の里は、見どころ満載
----------------------------------------------- */
.hakko03{
	background-color: #f3f0e6;
	padding-top: 55px;
	padding-bottom: 125px;
}
.ttl02 h2{
	color: #0f2f93;
	font-size: 3.8rem;
	text-align: center;
	font-weight: 700;
}
.ttl02{
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 1.8%;
}
.ttl02_a{
	margin-bottom: 50px;
}
.ttl02_b{
	margin-top: 75px;
	margin-bottom: 25px;
}
.icon01{
    width: 9vw;
}
.icon02{
	width: 9vw;
}
.list02{
	display: flex;
	justify-content: space-between;
	grid-row-gap: 5vw;
	flex-wrap: wrap;
}
.list02 li{
	background-color: #fff;
	padding: 3%;
	width: 48%;
	border-radius: 12px;
}
.list02 h3{
	font-size: 2.5rem;
	font-weight: 500;
	color: #0f2f93;
	margin-top: 0.5em;
}
.list02 p{
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 0.8em;
}

/*
-----------------------------------------------
▼モデルコース
----------------------------------------------- */
.course{
	margin-bottom: 130px;
}
.course p{
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 1.8em;
}
.course01{
	margin-bottom: 40px;
}
.course02{
	margin-bottom: 40px;
}
.list03{
	display: flex;
	column-gap: 2%;
}
.list03 li img{
	width: 100%;
}

/*
-----------------------------------------------
▼footer
----------------------------------------------- */
footer h2{
	text-align: center;
	color: #fff;
	font-size: 3.8rem;
	font-weight: 700;
	margin-bottom: 2em;
}
.footer_bg{
	background-image: url("../img/course_img05.jpg");
	padding-top: 70px;
	padding-bottom: 80px;
}
.btn01{
	text-align: center;
}
.btn01 a{
	display: inline-block;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	background-color: #0f2f93;
	text-decoration: none;
	padding: 0.4em 1em;
	border-radius: 10px;
	border: solid 1px #0f2f93;
	transition: all 0.5s 0s ease;
}
.btn01 a:hover{
	background-color: #fff;
	color: #0f2f93;
}
.footer_link{
	display: flex;
	justify-content: center;
}
.footer_link li{
	width: 48%;
	background-color: #fff;
	border-radius: 16px;
	padding-top: 25px;
}
.footer_link h3{
	font-size: 2.6rem;
	font-weight: 700;
	text-align: center;
}
.f_txt01{
	font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	margin-top: 0.6em;
	margin-bottom: 0.2em;
}
.footer_tel{
    font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 1em;
}
.footer_tel a{
	text-decoration: none;
	color: #333;
}
.footer_tel span{
	font-size: 1.8rem;
}
.f_txt02{
	font-size: 1.7rem;
	font-weight: 500;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1.3em;
}
.logo_jalan{
	width: 40%;
	margin-left: auto;
	margin-right: auto;
}
.footer_con{
	padding-left: 10%;
	padding-right: 10%;
}
.footer_under{
	background-color: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
}
.link01{
	display: flex;
	align-items: center;
	column-gap: 10px;
}
.link01 i{
	color: #999999;
}
.fa-instagram{
	font-size: 33px;
}
.fa-facebook{
	font-size: 28px;
}
.fa-youtube{
	font-size: 32px;
}
.box04{
	display: flex;
	justify-content: space-between;
}
.box04 small{
	font-size: 1.8rem;
	font-weight: 500;
}

/*
-----------------------------------------------
▼レスポンシブ
----------------------------------------------- */
@media screen and (max-width: 1190px){
	.footer_con{
		padding-left: 5%;
		padding-right: 5%;
	}
}
@media screen  and (max-width: 950px){
	.txt01 h1{
		font-size: 4rem;
	}
	.txt03 h2{
		font-size: 3rem;
	}
	.ttl02 h2{
		font-size: 3.4rem;
	}
	.ttl-type01{
		font-size: 1.7rem;
	}
	.name{
		font-size: 1.6rem;
	}
	.list02 h3{
		font-size: 2rem;
	}
	footer h2{
		font-size: 3.4rem;
	}
	.footer_link h3{
		font-size: 2.2rem;
	}
	.f_txt01{
		font-size: 1.8rem;
	}
	.footer_tel{
		font-size: 1.8rem;
	}
	.footer_tel span{
		font-size: 1.5rem;
	}
	.btn01 a{
		font-size: 1.5rem;
	}
	.f_txt02{
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 767px){
	.box01{
		display: block;
	}
	.txt01{
		width: 100%;
	}
	.txt01 h1{
		font-size: 2.2rem;
	}
	.txt01 p{
		font-size: 1.4rem;
		margin-top: 1.2em;
	}
	.sp_box02{
		margin-top: 50px;
		margin-bottom: 40px;
	}
	.sp_box02 li{
		display: flex;
		align-items: center;
		column-gap: 15px;
	}
	.sp_img_pict{
		width: 25%;
	}
	.sp_box02 li p{
		font-size: 1.4rem;
		width: 70%;
	}
	.sp_box02 li:nth-child(even){
		flex-direction: row-reverse;
	}
	.sp_box02_b{
		display: flex;
		justify-content: space-between;
		margin-bottom: 3vw;
	}
	.sp_tatsuno01{
		width: 55%;
	}
	.sp_tatsuno02{
		width: 41.5%;
	}
	.ttl03{
		width: 10%;
	}
	.img03{
		width: 90%;
	}
	.sp_h01{
		font-size: 2.2rem;
		font-weight: 700;
		color: #0f2f93;
		text-align: center;
		margin-bottom: 0.6em;
	}
	.txt03 p{
		font-size: 1.4rem;
		margin-bottom: 1.2em;
	}
	.con03_c{
		width: 70%;
	}
	.con03_c p{
		font-size: 1.2rem;
	}
	.txt03{
		padding-left: 0;
	}
	.list01 li:not(:last-child){
		margin-bottom: 50px;
	}
	.hakko02{
		margin-top: 35px;
	}
	.con03_b{
		display: flex;
		width: 100%;
	}
	.sp_name{
		width: 45%;
	}
	.con03_b p{
		width: 52%;
		font-size: 1.2rem;
	}
	.name{
		font-size: 1.4rem;
	}
	.ttl-type01{
		font-size: 1.5rem;
	}
	.list01 li:last-child{
		margin-bottom: 40px;
	}
	.ttl02 h2{
		font-size: 2.2rem;
	}
	.ttl02{
		flex-direction: column;
		grid-row-gap: 10px;
	}
	.list02{
		flex-direction: column;
	}
	.list02 li{
		width: 100%;
		padding: 5%;
	}
	.list02 h3{
		font-size: 1.7rem;
	}
	.list02 p{
		font-size: 1.3rem;
	}
	.hakko03{
		padding-top: 30px;
	}
	.ttl02_a{
		margin-bottom: 30px;
	}
	.hakko03{
		padding-bottom: 55px;
	}
	.ttl02_b{
		margin-top: 30px;
	}
	.course p{
		font-size: 1.7rem;
		text-align: left;
	}
	.list03{
		flex-wrap: wrap;
		grid-row-gap: 2vw;
	}
	.list03 li{
		width: 48%;
	}
	.course{
		margin-bottom: 70px;
	}
	footer h2{
		font-size: 2.2rem;
	}
	.footer_link{
		flex-direction: column;
		grid-row-gap: 3vw;
		margin-bottom: 75px;
	}
	.footer_link li{
		width: 70%;
		margin-left: auto;
		margin-right: auto;
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.f_txt01{
		font-size: 1.5rem;
	}
	.footer_tel{
		font-size: 1.5rem;
	}
	.footer_tel span{
		font-size: 1.3rem;
	}
	.footer_link h3{
		font-size: 1.7rem;
	}
	.btn01 a{
		font-size: 1.4rem;
	}
	.f_txt02{
		font-size: 1.4rem;
	}
	.box04 small{
		font-size: 1.4rem;
	}
	.footer_under{
		padding-top: 10px;
		text-align: right;
	}
	.box04{
		display: unset;
	}
	.footer_bg{
		padding-bottom: 20px;
	}
	.sp_link01{
		display: flex;
		column-gap: 10px;
	}
	.sp_link01 a{
		color: #999999;
	}
}
@media screen and (max-width: 500px){
	.hakko01{
		padding-top: 30px;
		padding-bottom: 45px;
	}
	.sp_box02{
		margin-top: 20px;
	}
	.img03{
		width: 85%;
	}
	.con03_c{
		width: 80%;
	}
	.con03_b{
		justify-content: space-between;
		align-items: center;
	}
	.circle{
		width: 80%;
	}
	.footer_link li{
		width: 100%;
	}
	.footer_link{
		grid-row-gap: 5vw;
	}
	.hakko02{
		margin-top: 25px;
	}
	.list01 li:not(:last-child){
		margin-bottom: 35px;
	}
	.list01 li:last-child{
		margin-bottom: 30px;
	}
	.hakko03{
		padding-bottom: 45px;
	}
	.ttl02{
		grid-row-gap: 5px;
	}
	.ttl02_b{
		margin-bottom: 10px;
	}
	.course p{
		font-size: 1.4rem;
		margin-bottom: 1.2em;
	}
	.course01{
		margin-bottom: 20px;
	}
	.course02{
		margin-bottom: 30px;
	}
	.course{
		margin-bottom: 45px;
	}
	.footer_bg{
		padding-top: 35px;
	}
	footer h2{
		margin-bottom: 1em;
	}
	.footer_link{
		margin-bottom: 45px;
	}
	.box04 small{
		font-size: 1.2rem;
	}
}
/*
-----------------------------------------------
▼アニメーション
----------------------------------------------- */
.fadeUp{
  opacity: 0; 
  transform: translateY(30px); 
  transition: opacity .8s, transform .8s; 
}
.fadeUp.is-inview {
  opacity: 1; 
  transform: translateY(0); 
}
.fadeIn {
  opacity: 0;
  transition: 2s;
}
.fadeIn.is-inview {
  opacity: 1;
}

.delay01{
	transition-delay: 0.3s;
}
.delay02{
	transition-delay: 0.6s;
}





