/*
Theme Name: kurumeki
Theme URI: https://kurumeki.nagarehiki.com
Description: 久留女木の棚田のホームページです。
Version: 1.0
Author: YAMAKAMI
Author URI: https://nagarehiki.com
*/


html {
  font-size: 62.5%;
}
body{
	max-width: 1280px;
	margin: 0 auto;
	padding: 0;
	background-color:#F3F1EA;
	color: #2F2F2F;
	font-size: 1.4rem;
	line-height: 2.0;
	-webkit-text-size-adjust: 100%;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
@media only screen and (max-width:991px) and (min-width:576px) {
	body{
		font-size: 1.6rem;
	}
}
@media only screen and (min-width:992px) {
	body{
		font-size: 1.8rem;		
	}
}
form input,form textarea{
	-webkit-box-sizing:border-box!important;
	-o-box-sizing:border-box!important;
	-ms-box-sizing:border-box!important;
	box-sizing:border-box!important;
}
*, *::before, *::after{
	box-sizing: border-box;
}
a{
	color: #111111;
	transition: all 0.3s 0s ease;
}
a:hover{
	opacity: 0.7;
	text-decoration: none;
}
h1 img{
	display: inline-block;
	width: 170px;
	margin: 0;
	padding: 0;
	border: #88FF44;
	border-radius: 10px;
}
hr {
	margin: 0;
	padding: 0;
	height: 0;
	border: 0;
}
.line{
	height: 1px;
	background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(#ccc), to(transparent));
	background-image: linear-gradient(to right, transparent, #236611, transparent);
	margin: 15% 5% 5%;
}
.line2{
	height: 1px;
	background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(#ccc), to(transparent));
	background-image: linear-gradient(to right, transparent, #236611, transparent);
	margin: 5%;
}
@media only screen and (min-width:992px) {
	.line{
		margin: 5% 5% 0;
	}
	.line2{
		display: none;
	}
}
.header-home{
	padding-bottom: 10%;
}
.header-home h1{
	display: none;
}
.header-home p{
	position: absolute;
	top: 5%;
	right: 5%;
	font-size: 1.4rem;
	color: #ffffff;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}

.carousel-indicators{
	bottom: -12%;
}

.carousel-indicators li{
	background: #ede9d8;
	height: 2.0rem;
	width: 2.0rem;
	border-radius: 1.0rem;
}
.carousel-indicators .active{
	background: #69821b;
}
.carousel-item img{
	width: 100%;
	height: auto;
}

input[type="checkbox"]:checked ~ .navi-home{
	left: 0;
}

.navi-home{
	position: absolute;
	z-index: 999;
	left: -600px;
	width: 60%;
	height: 100%;
	transition: all 0.25s;
	background-color: #fbf9f1;
}
.open{
	display: flex;
	z-index: 997;
	width: 50px;
	height: 60px;
	border: 1px solid #236611;
	border-radius: 3px;
	position: absolute;
	justify-content: center;
	align-items: center;
	top: 15px;
	left: 15px;
}
.open-home{
	display: flex;
	z-index: 997;
	width: 50px;
	height: 60px;
	background-color: rgba(255,255,255,0.6) ;
	border-radius: 3px;
	position: absolute;
	justify-content: center;
	align-items: center;
	top: 15px;
	left: 15px;
}
.open:hover,.open-home:hover{
	cursor: pointer;
	opacity: 0.8;
}
.open img, .close img, .open-home img{
	width: 36px;
	height: auto;
}
.close{
	display: block;
	padding: 5% 5% 0 0;
}
.back{
	position: absolute;
}
input[type="checkbox"] {
	position: absolute;
	left: -50vw;
}
input[type="checkbox"]:checked ~ .navi-sec{
	left: 0;
}
input[type="checkbox"]:checked ~ .back{
	position: absolute;
	z-index: 998;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.6);
}
input[type="checkbox"]:checked ~ .open{
	display: none;
}

.header-sec{
	height: 80px;
}
.navi-sec{
	position: absolute;
	z-index: 999;
	left: -600px;
	width: 60%;
	height: 100%;
	transition: all 0.25s;
	background-color: #fbf9f1;
}
.navi-sec ul,.navi-home ul{
	list-style: none;
	text-align: center;
	font-size: 1.6rem;
	padding: 18% 0 10%;
}
.navi-sec ul li,.navi-home ul li{
	margin-top: 6%;
}
.logo{
	position: absolute;
	top: 3%;
	right: 3%;
	text-align: right;
}
.logo img{
	width: 140px;
	height: auto;
}
@media only screen and (min-width:992px) {
	.open,.open-home,.close,.back,.input[type="checkbox"]{
		display: none;		
	}
	.header-home{
		display: flex;
		flex-direction: row-reverse;
		padding-bottom: 7%;
	}
	.header-home p{
		display: none;
		font-size: 1.8rem;
		left: 5%;
	}
	.navi-home{
		position: static;
		width: 30%;
		height: auto;
		margin: 0;
		border: 1px solid #999999;		
	}
	.navi-home nav{
		padding: 0;
	}
	.navi-home ul{
		position: relative;
		top: 50%;
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		padding: 0;
		font-size: 1.8rem;
		font-family: fot-rodin-pron, sans-serif;
		font-weight: 600;
		font-style: normal;
	}
	.navi-home ul li{
		margin: 2%;
	}
	.adjust-box{
		position: relative;
		width: 100%;
		height: auto;
		background: #fff;
	}
	.box::before{
		content: "";
		display: block;
		padding-top: 144.2%;
	}
	.inner{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	.navi-item{
		text-align: center;
	}
	.navi-item a{
		display: inline-block;
	}
	.navi-item a::after{
		content: '';
		display: block;
		width: 0;
		margin: 1px auto 0;
		border-bottom: 1px solid #7c5119;
		transition: width 0.3s ease-in-out;
	}
	.navi-item a:hover::after{
		width: 100%;
	}
	.carousel{
		width: 70%;
	}
	.carousel-indicators{
		bottom: 0;
	}
	.header-sec{
		
	}
	.navi-sec{
		position: static;
		display: flex;
		justify-content: flex-start;
		align-items: flex-end;
		width: calc(100% - 180px);
		margin-left: 3%;
	}
	.navi-sec ul{
		padding: 0;
	}
	.navi-sec ul li{
		display: inline-block;
		margin: 0;
		margin-left: 10px;
	}
	.logo{
		top: 2%;
		right: 3%;
	}
	.logo img{
		width: 140px;
		height: auto;
	}
}

svg{
	margin: 0;
	padding: 0;
}
.container-fluid {
	width: 100%;
	margin: 0;
	padding: 0;
}
.row{
	margin: 0;
	padding: 0;
}
.col-md-8,.col-md-6,.col-md-4,.col-sm-4,.col-sm-6,.col-sm-8,.col-lg-4,.col-lg-6,.col-lg-8,.col-5,.col-6,.col-7{
	padding: 0;
	margin: 0;
}

.top-intro{
	width: 100%;
	padding: 10% 10% 5%;
}
.top-intro p{
	text-align: justify;
}
.intro-pc1,.intro-pc2{
	display: flex;
	flex-direction: column;
}
.intro-pc1 .intro-pc-l1{
	margin: 0;
	padding: 0;
}
.intro-pc1 .intro-pc-r1{
	display: none;
}
.intro-pc2 .intro-pc-l2{
	margin: 10% 0;
	padding: 0;
}
.intro-pc2 .intro-pc-r2{
	margin: 0;
	padding: 0;
}
.intro-pc2 .intro-pc-l2 img{
	width: 100%;
	height: auto;
	border-radius: 10px;
}
.intro-pc3{
	margin: 0;
	padding: 0;
}
@media only screen and (min-width:992px) {
	.top-intro{
		font-family: fot-rodin-pron, sans-serif;
		font-weight: 600;
		font-style: normal;
		padding: 5% 10% 0;
	}
	.top-intro p{
		padding: 0 1%;
		line-height: 2.6;
	}
	.intro-pc1,.intro-pc2{
		flex-direction: row;
		gap: 80px;
		margin-bottom: 10%;
	}
	.intro-pc1 .intro-pc-l1{
		width: calc(100% - 300px);
	}
	.intro-pc1 .intro-pc-r1{
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		width: 300px;
		height: 240px;
		margin: 0;
		padding: 0;
		background-color: #236611;
		color: #fff;
		font-family: fot-chiaro-std, sans-serif;
		font-weight: 700;
		font-style: normal;
		border-radius: 5px;
	}
	.intro-pc1 .intro-pc-r1 .intro-head{
		writing-mode: vertical-rl;
		line-height: 2.0;
		font-size: 3.8rem!important;
	}
	.intro-pc2 .intro-pc-l2{
		margin: 0;
	}
	.intro-pc2 .intro-pc-l2 img{
	width: 400px;
	height: auto;
	border-radius: 10px;
}
}

.news{
	padding: 10% 0;
}
.news h2,.contents h2,.access h2{
	font-size: 2.6rem;
	color: #236611;
	padding: 0 10% 5%;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.news h2::after,.contents h2::after,.access h2::after{
	display: block;
	content: "NEWS&TOPICS";
	margin: 3% auto 6%;
	font-size: 1.6rem;
	padding: 2% 0 0 1%;
	font-family: dunbar-low, sans-serif;
	font-weight: 300;
	font-style: normal;
	color: #8F9C89;
	border-top: 2px solid rgba(143,156,137,0.5);
	letter-spacing: 2px;
}
.contents h2::after{
	content: "CONTENTS";
}
.access h2::after{
	content: "ACCESS&CONTACT";
}
.top-news{
	display: grid;
	gap: 25px;
	width: 80%;
	margin: 0 auto;
}
.top-news-item{
	list-style: none;
}
.news-block{
	position: relative;
	padding: 5%;
	margin: 0 0 13%;
	border-radius: 5px;
	background-color: #ffffff;
	border-top: 1px solid #999999;
	border-right: 1px solid #999999;
	border-left: 1px solid #999999;
	border-bottom: 5px solid #236611;
}
.news-block>a{
	display: block;
	margin: -5% -5% -7%;
	padding: 5% 5% 7%;
	border-radius: inherit;
	color: #777;
	transition: all 0.3s;
}
.news-block>a:hover{
	box-shadow: 0 0 6px -1px rgba(0,0,0,0.3);
	opacity: 0.8;
}
.news-new{
	position: absolute;
	display: block;
	width: auto;
	height: auto;
	left: 4%;
	top: 3%;
	padding: 1% 3%;
	color: #ffffff;
	text-align: center;
	border: 1px solid #FFffff;
	background-color: rgba(255,204,0,0.8);
	border-radius: 10px;
}
.news-img{
	position: relative;
	transition: 0.3s;
	padding-top: 61.8%; /* aspect-ratio: 1.618 / 1; */
}
.news-img img{
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 1px solid #aaa;
	border-radius: 5px;
}
.news-body{
	
}
.news-body h3{
	font-size: 1.8rem;
	font-weight: bold;
	white-space: nowrap;
	overflow: hidden;
}
.news-meta{
	padding: 3% 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.news-meta ul{
	list-style: none;
}
.news-meta ul li{
	line-height: 1;
	padding: 5px;
	display: inline-block;
	color: #0293AD;
	border: 1px solid #0293AD;
	text-decoration: none;
	font-size: 1.4rem;
	vertical-align: -3px;
}
.news-time{
	font-size: 1.6rem;
}
.news-text{
	padding: 3% 2%;
	line-height: 1.8;
	font-size: 1.6rem;
}

@media only screen and (min-width:992px) {
	.news{
		padding: 10% 0 0 0;
	}
	.news h2,.contents h2,.access h2{
		font-size: 3.6rem;
	}
	.news h2::after,.contents h2::after,.access h2::after{
		margin: 2% auto 0;
		font-size: 1.8rem;
		padding: 1% 0 0 1%;
		border-top: 3px solid rgba(143,156,137,0.5);
	}
	.top-news{
		grid-template-columns: repeat(3,1fr);
		margin-bottom: 5%;
	}
	
	.news-block{
		width: 100%;
	}
	.news-block>a{
		display: block;
		margin: -5% -5% -7%;
		padding: 5% 5% 7%;
		border-radius: inherit;
		color: #777;
		transition: all 0.3s;
	}
}

.sec_btn{
	width: 90%;
	margin: 0 auto;
	text-align: center;
}	
.btn{
	display:block;
	padding:15px;
	cursor:pointer;
	font-size:16px;
	line-height:1;
	text-align:center;
	text-decoration:none;
	border-radius: 10px;
}
.btn:hover{
	opacity:0.8
}
.btn-default{
	border:1px solid #707070;
	background-color:#fff;
	position:relative
}
.btn-default i,.btn-default svg{
	-webkit-transition:all 300ms 0s ease;
	-o-transition:all 300ms 0s ease;
	transition:all 300ms 0s ease;
	color:#707070;
	position:absolute;
	top:50%;
	right:15px;
	margin-top:-0.5em
}
.btn-default:hover i,.btn-default:hover svg{
	right:5px
}
.btn-send{
	font-weight:bold;
	background-color:#70462E;
	color:#fff
}
.btn-back{
	background-color:#eee;
	color:#333;
	font-size:14px
}
@media only screen and (min-width:992px) {
	.sec_btn{
	width: 30%;
	}
}

.contents{
	padding-top: 10%;
}

.top-ryugu,.top-tanadajuku,.top-dantai{
	width: 80%;
	height: auto;
	margin: 0 auto;
	position: relative;
	border: 1px solid #8F9C89;
	border-radius: 3px;
	margin-bottom: 10%;
}
.top-ryugu h3,.top-tanadajuku h3,.top-dantai h3{
	position: absolute;
	top: 5%;
	left: 5%;
	color: #ffffff;
	font-size: 2.2rem;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	padding-bottom: 3%;
	z-index: 999;
	text-shadow: 1px 3px 3px #000000;
}
.top-ryugu h3::after,.top-tanadajuku h3::after,.top-dantai h3::after{
	content:'About KURUMEKI-RYUGUKOZO Society';
	font-size: 1.2rem;
	display: block;
	font-family: dunbar-low, sans-serif;
	font-weight: 300;
	font-style: normal;
	color: #ffffff;
	text-shadow: 1px 2px 3px #333333;
	margin-left: 3px;
}
.top-tanadajuku h3::after{
	content:'Guidance of TANADAJUKU';
}
.top-dantai h3::after{
	content:'Support Group';
}
.top-ryugu img,.top-tanadajuku img,.top-dantai img{
	width: 100%;
	height: auto;
}
.top-ryugu-text,.top-dantai-text,.top-tanadajuku-text{
	background-color: #FFFFFF;
	padding: 5% 5% 8%;
	font-size: 1.5rem;
	line-height: 1.6;
	text-align: justify;
}

@media only screen and (min-width:992px) {
	.top-ryugu,.top-tanadajuku,.top-dantai{
		border: none;
		margin-bottom: 12%;
	}
	.top-ryugu h3,.top-tanadajuku h3,.top-dantai h3{
		top: 8%;
		left: 5%;
		font-size: 3.2rem;
	}
	.top-ryugu h3::after,.top-tanadajuku h3::after,.top-dantai h3::after{
		font-size: 1.6rem;
		margin-top: 2%;
		text-align: center;
	}
	.top-ryugu img,.top-tanadajuku img,.top-dantai img{
		width: 65%;
		height: auto;
		border: 1px solid #999;
		border-radius: 10px;
	}	
	.top-ryugu-text,.top-dantai-text,.top-tanadajuku-text{
		width: 50%;
		height: auto;
		position: absolute;
		padding: 3%;
		top: 100%;
		left: 50%;
		transform: translateY(-100%);
		background-color: rgba(255,255,255,0.7);
		font-size: 2.0rem;
		line-height: 2.0;
	}
}

.sec_btn2{
	width: 60%;
	margin: 4% 1% 0 auto;
	text-align: center;
}
.btn2{
	display: block;
	padding: 4%;
	cursor: pointer;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	border-radius: 20px;
}
.btn2:hover{
	opacity:0.8
}
.btn2-default{
	border:1px solid #707070;
	background-color:#fff;
	position:relative
}
.btn2-default i,.btn2-default svg{
	transition:all 300ms 0s ease;
	color:#707070;
	position:absolute;
	top:50%;
	right:15%;
	margin-top:-0.5em;
}
.btn2-default:hover i,.btn2-default:hover svg{
	right:5%
}
.btn2-send{
	font-weight:bold;
	background-color:#70462E;
	color:#fff
}
.btn2-back{
	background-color:#eee;
	color:#333;
	font-size:14px
}
@media only screen and (min-width:992px) {
	.sec_btn2{
		margin: 0 auto;
		margin-top: 5%;
	}
	.btn2{
		font-size: 1.8rem;
	}
}

.top-gallery-ikimono{
	width: 80%;
	margin: 15% auto 10%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 50px;
}
.top-gallery, .top-ikimono{
	position: relative;
	display: grid;
	grid-template-rows: 60px 1fr;
	grid-template-columns: 60% 1fr;
	grid-template-areas: 
		"title title"
		"main pic";
	border: 1px solid #999999;
	border-radius: 5px;
}
.top-gallery{
	background-color: #A5D59A;
	box-shadow: 10px 10px 0px 0px rgba(35,102,17,0.7);
}
.top-ikimono{
	background-color: #ffcc00;
	box-shadow: 10px 10px 0px 0px rgba(255,204,0,0.3);
}
.top-gallery h3, .top-ikimono h3{
	padding: 15px 0 0 5%;
	font-size: 2.6rem;
	color: #fff;
}
.top-gallery h3 span, .top-ikimono h3 span{
	display: block;
	position: absolute;
	font-size: 5.2rem;
	color: rgba(255,255,255,0.3);
	bottom: 10%;
	left: 50%;
	transform: translateX(-50%);
}
.top-gallery p, .top-ikimono p{
	font-size: 1.8rem;
	text-align: justify;
	line-height: 1.6;
}
.title{
	grid-area: title;
}
.main{
	grid-area: main;
	padding: 0 10% 0 10%;
}
.pic{
	grid-area: pic;
}
.top-gallery img, .top-ikimono img{
	width: 100%;
	height: auto;
	border-top-left-radius: 5px;
	border-bottom-right-radius: 5px;
}
@media only screen and (min-width:992px) {
	.top-gallery-ikimono{
		flex-direction: row;
		justify-content: center;
		margin: 10% auto 5%;
		gap: 70px;
	}
	.top-gallery h3, .top-ikimono h3{
		font-size: 3.2rem;
	}
	.top-gallery p, .top-ikimono p{
		font-size: 2.06rem;
		text-align: justify;
	}
}

.access{
	padding-top: 10%;
}

.top-access{
	width: 80%;
	margin: 0 auto;
	line-height: 1.8;
}
.top-access-l{
	padding-bottom: 10%;
}
.top-access h3{
	font-size: 2.2rem;
	padding:3% 0;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.top-access h4{
	position: relative;
	display: inline-block;
	padding-bottom: 5px;
	font-size: 1.8rem;
	margin-bottom: 5%;
}
.top-access h4::before,
.top-access h4::after{
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	border-bottom: 1px solid #999;
}
.top-access h4::before{
	bottom: 5px;
}
.googlemap{
	position: relative;
	width: 100%;
	margin: 10% 0;
	aspect-ratio: 1.618 / 1;
	-webkit-aspect-ratio: 1.618 / 1;
}
.googlemap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.top-access-r{
	
}
.top-access-r ul{
	border: 1px solid #236611;
	border-radius: 5px;
	margin-top: 5%;
	background-color: #ffffff;
	list-style: none;
	padding: 3% 5%;
}
.top-access-r ul li{
	line-height: 1.8;
	font-weight: bold;
	padding: 2% 0;
}
.map{
	position: relative;
	width: 100%;
	padding-bottom: 10%;
}
.map img{
	width: 100%;
	height: auto;
	border-radius: 5px;
}
.map h4{
	width: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 1.8rem;
	color: #ffffff;
	padding: 5%;
	text-align: center;
	background-color: rgba(59,88,0,0.5);
	border-radius: 5px;
}
.map h4 span{
	display: block;
	font-size: 4.2rem;
	text-align: center;
}
.top-contact{
	width: 100%;
	padding: 10% 0 0;
	text-align: center;
}
.top-contact h3{
	font-size: 2.2rem;
	font-weight: bold;
	padding-bottom: 5%;
}
.top-contact p{
}

.top-supporter{
	width: 80%;
	margin: 0 auto;
	text-align: center;
	padding: 10% 0;
}
.top-supporter-box{
	position: relative;
}
.top-supporter img{
	width: 100%;
	height: auto;
	border-radius: 10px;
}
.top-supporter img:hover{
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .5);
}
.top-supporter-box h3{
	width: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 1.6rem;
	color: #FFFFFF;
	padding: 3%;
	background-color: rgba(0,0,0,0.3);
	border-radius: 10px;
}
.top-supporter-box h3 span{
	display: block;
	padding-top: 3%;
	font-size: 3.2rem;
	text-align: center;
}
.top-supporter p{
	padding: 10% 0;
	font-size: 1.8rem;
}

.top-other-link{
	width: 90%;
	padding: 0 0 10%;
	text-align: center;
}
.top-other-link img{
	width: 80%;
	height: auto;
}
.bnr{
	display: block;
	box-shadow :0px 0px 5px silver;/*5px=影の広がり具合*/
	margin: 0 2%;
}
.hidden{
	visibility: hidden;
}
.pagetop{
	background:#D2E99A;
	text-align:center;
	cursor:pointer;
	display:block;
	padding:10px 0;
	color: #171515;
	font-size:2.0rem;
	line-height:1
}
.pagetop a{
	color: #171515;
}
.pagetop:hover{
	opacity:0.8
}
.copyright{
	font-size: 1.4rem;
	color: #69821b ;
	text-align: center;
}








.breadcrumb{
	width: 100%;
	background-color:#fbf9f1;
	color: #292424;
	margin: 5% 0!important;
	padding: 0 3%!important;
	display: flex!important;
}
.breadcrumb .breadcrumb_inner{
	width :80%;
	margin : 0!important;
	padding: 1% 0 1% 2%;
	text-decoration: underline;
	text-underline-offset:0.3em;
}
.breadcrumb span{
	font-size:1.2rem;
}
.breadcrumb a{
	text-decoration:none;
	color:#666;
}
.breadcrumb i{
	color:rgba(112,70,46,0.8);
	font-size: 1.8rem;
}
.breadcrumb svg{
	font-size:1.2rem;
}

@media only screen and (min-width:992px) {
	.breadcrumb span{
		font-size:1.6rem;
	}
	.breadcrumb .breadcrumb_inner{
		padding: 0 0 0 2%;
	}
}

.single-body{
	width: 100%;
	margin: 0 auto 15%;
	padding: 5%;
	background-color: #ffffff;
	border-radius: 5px;
}
.single-body h3{
	font-size: 2.2rem;
	padding: 1% 0 0 4%;
	border-left: 7px solid #236611;
	overflow: hidden;
	vertical-align: bottom;
}
.single-img{
	display: block;
	margin: 0 auto;
	padding: 5% 0;	
}
.single-img img{
	width: 100%;
	height: auto;
	border-radius: 5px;
}
.single-meta{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 1%;
}
.single-meta ul{
	list-style: none;
}
.post-categories{
	width: 100%;
	margin: auto;
	padding: 0;	
}
.single-meta ul li{
}
.single-meta ul li a{
	line-height: 1;
	display: inline-block;
	padding: 3px;
	font-size: 1.6rem;
	color: #0293AD;
	border: 1px solid #0293AD;
	text-decoration: none;
}
.single-meta time{
	line-height: 1;
	display: inline-block;
	width: 100%;
	text-align: right;
	font-size: 1.4rem;
}
.single-content{
	padding: 7% 0 1%;
	line-height: 1.8;
	font-size: 1.6rem;
	text-align: justify;
}
.single-comments{
	width: 100%;
	margin: 0 auto;
	padding: 5%;
	font-size: 1.6rem;
	border-radius: 5px;
}
.single-comments p{
	font-size: 1.4rem;
}
.single-comments textarea{
	width: 100%;
	border: 1px solid #000000;
	background-color: #FFFFFF;
}
.commentlist{
	
}
.postlinks{
	width: 90%;
	margin: 5% auto;
	padding: 3%;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-js-display:flex;
	font-size: 1.6rem;
	justify-content: space-between;
}
.postlink-prev{

}
.postlink-prev i,.postlink-prev svg{
	margin-right: 10px;
}
.postlink-next{

}
.postlink-next i,.postlink-next svg{
	margin-left: 10px;
}


.article-list{
	width: 90%;
	margin: 0 auto 10%;
	padding: 0;
}
.article-list h2{
	margin-bottom: 6%;
	font-size: 2.6rem;
	text-align: center;
}
.article-list h2 span{
	font-size: 2.0rem;
}
.article-list h2::after{
	content: "";
	display: block;
	margin: 3% auto 0;
	width: 15%;
	height: 1px;
	border: 2px solid #236611;
}
.article-area{
	margin: 0;
	padding: 0;
}

@media only screen and (min-width:992px) {
	.article-list{
		width: 92%;
		padding: 0;
	}
	.article-list h2{
		font-size: 3.2rem;
	}
	.article-list h2::after{
		margin: 2% auto 0;
		width: 8%;
	}
	.article-area{
		padding: 0 3% 0 0;
		margin: 0;
	}
}

.news-block-2{
	padding: 0;
	margin-bottom: 13%;
	border-radius: 5px;
	background-color: #ffffff;
	border-top: 1px solid #999999;
	border-right: 1px solid #999999;
	border-left: 1px solid #999999;
	border-bottom: 3px solid #236611;
}
.news-block-2>a{
	display: block;
	border-radius: inherit;
	color: #777;
	transition: all 0.3s;
}
.news-block-2>a:hover{
	box-shadow: 0 0 6px -1px rgba(0,0,0,0.3);
	opacity: 0.8;
}
.sec-article-box{
	display: flex;
	width: 100%;
}
.sec-article-img{
	width: 35%;
	position: relative;
	transition: 0.3s;
	aspect-ratio: 1 / 1;
}
.sec-article-img img{
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 1px solid #aaa;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}
.sec-article-body{
	width: 65%;
	padding: 1% 3% 1% 3%;
}
.sec-article-body h3{
	font-size: 1.4rem;
	font-weight: bold;
	padding: 2% 0 0;
	white-space: nowrap;
	overflow: hidden;
}
.sec-article-meta{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sec-article-meta ul{
	list-style: none;
	margin: 0;
}
.sec-article-meta ul li{
	margin: 0;
	line-height: 1;
	padding: 2% 0;
	display: inline-block;
	color: #0293AD;
	border: 1px solid #0293AD;
	text-decoration: none;
	font-size: 1.2rem;
	vertical-align: 0;
}
.sec-article-time{
	font-size: 1.2rem;
}
.sec-article-text{
	line-height: 1.6;
	font-size: 1.2rem;
	text-align: justify;
}
.sec-article-text p{
	width: 100%;
	padding: 0;
}
.sidebar-area{
	padding: 0;
}
@media only screen and (min-width:992px) {
	.sidebar-area{
		margin: 0;
		padding: 0;
	}
}


.archive_list{
	display: block;
	width: 100%;
	margin-bottom: 10%;
	padding-top: 3%;
	background-color: #ffffff;
}
.archive_list h3{
	width: 70%;
	margin: 0 auto;
	padding: 5px 0;
	border: 2px solid #236611;
	border-radius: 20px;
	text-align: center;
	font-size: 2.0rem;
	font-weight: bold;
	color: #236611;
	
}
.archive_list ul {
	text-align: center;
	padding: 3%;
}
.archive_list ul li{
	display: inline-block;
	padding-right: 3%;
	font-size: 1.8rem;
	white-space: nowrap;
	overflow: hidden;
	text-decoration: underline;
}
.archive_list ul li::before{
	content: "★";
}

@media only screen and (min-width:992px) {
	.archive_list{
	display: block;
	width: 95%;
	margin-left: 5%;
	padding: 2% 0 0 0;
	background-color: #ffffff;
}
.archive_list h3{
	width: 70%;
	margin: 0 auto;
	padding: 5px 0;
	border: 2px solid #236611;
	border-radius: 20px;
	text-align: center;
	font-size: 2.0rem;
	font-weight: bold;
	color: #236611;
	
}
.archive_list ul {
	text-align: center;
	padding: 3%;
}
.archive_list ul li{
	display: inline-block;
	padding-right: 3%;
	font-size: 1.8rem;
	white-space: nowrap;
	overflow: hidden;
	text-decoration: underline;
}
.archive_list ul li::before{
	content: "★";
	}
}

.tanadajuku-head,.ryugu-head,.group-head{
	width: 100%;
	margin: 5% auto;
}
.tanadajuku-head h3,.ryugu-head h3,.group-head h3{
	font-size: 2.8rem;
	margin: 25% auto;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	text-align: center;
	color: #176105;
}
.tanadajuku-head h3::after,.ryugu-head h3::after,.group-head h3::after{
	font-size: 1.2rem;
	display: block;
	text-align: center;
	line-height: 2.0;
}
.tanadajuku-head img,.ryugu-head img,.group-head img{
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 15%;
	opacity: 0.5;
	border-radius: 5px;
}
.tanadajuku-intro,.ryugu-intro,.group-intro{
	width: 80%;
	margin: 0 auto 10%;
}
.tanadajuku-intro p,.ryugu-intro p,.group-intro p{
	padding-bottom: 2%;
	font-size: 1.6rem;
	text-align: justify;
}
.tanadajuku-body,.ryugu-body,.group-body{
	width: 80%;
	margin: 0 auto 10%;
}
@media only screen and (min-width:992px) {
	.tanadajuku-head,.ryugu-head,.group-head{
		margin: 15% auto 5%;
	}
	.tanadajuku-head h3,.ryugu-head h3,.group-head h3{
		font-size: 4.2rem;
		margin: 0 auto 13%;
	}
	.tanadajuku-head h3::after,.ryugu-head h3::after,.group-head h3::after{
		font-size: 1.8rem;
		margin-top: 5px;
	}
	.tanadajuku-head img,.ryugu-head img,.group-head img{
		margin: 0 auto;
	}
	.tanadajuku-intro,.ryugu-intro,.group-intro{
		margin: 10% auto;
	}
	.tanadajuku-intro p,.ryugu-intro p,.group-intro p{
		font-size: 1.8rem;
	}
	.tanadajuku-body,.ryugu-body,.group-body{
		width: 80%;
		margin: 0 auto;
	}
}

.tanadajuku-head h3::after{
	content:'Guidance of TANADAJUKU';	
}
.tanadajuku-body-dougahead{
	margin: 10% -5% 20%;
	padding: 0; 
	position: relative;
}
.tanadajuku-body-dougahead img{
	display: block;
	width: 100%;
	height: auto;
	margin: 10% 0 0;
}
.tanadajuku-body-dougahead p{
	font-size: 2.0rem;
	text-align: center;
}
.tanadajuku-body-dougahead h4{
	position: absolute;
	top: 30%;
	right: 5%;
	color: #fff;
	font-size: 3.8rem;
}
@media only screen and (min-width:992px) {
	.tanadajuku-body{
		width: 100%;
	}
	.tanadajuku-body-dougahead{
		display: flex;
		flex-direction: row-reverse;
		margin: 0;
		padding: 0; 
		position: static;
		align-items: center;
	}
	.dougahead-com{
		width: 55%;
		text-align: center;
	}
	.dougahead-com h4{
		position: static;
		font-size: 3.8rem;
		color: #666;
		padding-bottom: 15%;
	}
	.dougahead-com p{
		font-size: 2.4rem;
		text-align: center;
	}
	.dougahead-img{
		width: 45%;
		margin: 0;
		padding: 0;
	}
	.dougahead-img img{
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
	}
}

.tanadajuku-body-dougamain{
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
	width: 100%;
	background-color: darkkhaki;
}
.tanadajuku-body-dougamain .douga-item{
	display: block;
	list-style: none;
	border: 1px solid #363434;
	border-radius: 10px;
	margin-bottom: 10%;
	background-color: #fff;
}
.tanadajuku-body-dougamain .douga-item h5{
	padding: 3%;
	font-size: 1.4rem;
}
.tanadajuku-body-dougamain .douga-item h5 span{
	display: block;
	padding-top: 5%;
	font-size: 2.2rem;
	text-align: center;
}
.douga{
	position: relative;
	transition: 0.3s;
	padding-bottom: 61.8%; /* aspect-ratio: 1.618 / 1; */
}
.douga iframe{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}



.ryugu-head h3::after{
	content:'about KURUMEKI-RYUGUKOZO Society';
}
.ryugu-intro{
	display: flex;
	flex-direction: column;
}
@media only screen and (min-width:992px) {
	.ryugu-intro{
		flex-direction: row;
		gap: 100px;
	}
}
.ryugu-body h4{
	font-size: 2.8rem;
	font-weight: bold;
	padding: 0 0 8%;
}
.aisatsu-top-item{
	display: flex;
	flex-direction: column-reverse;	
}
.aisatsu-top-item .aisatsu-top-img img{
	border-radius: 15px;
	width: 100%;
	height: auto;
}
.aisatsu-top-item .aisatsu-top-comment{
	display: flex;
	flex-direction: column;
	margin: 5% 0;
}
.aisatsu-top-item .aisatsu-top-comment h5{
	font-size: 1.6rem;
	margin-bottom: 5%;
	color: #176105;
}
.aisatsu-top-item .aisatsu-top-comment h5 span{
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 2.0;
}
.aisatsu-top-item .aisatsu-top-comment p{
	font-size: 1.6rem;
	padding: 0 0 2%;
}
.kaicho::after{
	display: inline;
	content:'　Nishimoto Yuichi';
	font-size: 1.4rem;
	font-weight: normal;
}
.jimukyoku::after{
	display: inline;
	content:'　Suzuki Kazunori';
	font-size: 1.4rem;
	font-weight: normal;
}
@media only screen and (min-width:992px) {
	.ryugu-body h4{
		font-size: 3.8rem;
		font-weight: normal;
		padding: 0;
	}
	.aisatsu-top{
		margin: 8% 0 15%;
	}
	.aisatsu-top-item{
		flex-direction: row-reverse;
		margin-bottom: 8%;
	}
	.aisatsu-top-item .aisatsu-top-img{
		width: 35%;
		margin-right: 80px;
	}
	.aisatsu-top-item .aisatsu-top-comment{
		width: calc(65% - 80px);
		margin: 0;
	}
	.aisatsu-top-item .aisatsu-top-comment h5{
		font-size: 2.2rem;
	}
	.aisatsu-top-item .aisatsu-top-comment h5 span{
		font-size: 3.2rem;
	}
	.aisatsu-top-item .aisatsu-top-comment p{
		font-size: 1.8rem;
		margin: 0;
		padding: 0;
	}
	.kaicho::after{
		font-size: 1.8rem;
	}
	.jimukyoku::after{
		font-size: 1.8rem;
	}
}

.aisatsu-kaiin{
	display: flex;
	flex-direction: column;
	margin-bottom: 5%;
}
.aisatsu-kaiin-item{
	display: grid;
	grid-template-rows: auto 1fr;
	grid-template-columns: 50% 1fr;
	grid-template-areas:
		"kaiin-img kaiin-name"
		"kaiin-comment kaiin-comment";
	margin-bottom: 15%;
}
.aisatsu-kaiin-item .kaiin-name{
	grid-area: kaiin-name;
	padding: 2% 0 0 10%;
	aspect-ratio: 1/1;
}
.aisatsu-kaiin-item .kaiin-name h5{
	font-size: 1.6rem;
}
.aisatsu-kaiin-item .kaiin-name h5 span{
	display: block;
	font-size: 2.6rem;
	padding-top: 5%;
}
.aisatsu-kaiin-item .kaiin-comment{
	grid-area: kaiin-comment;
	padding-top: 5%;
}
.aisatsu-kaiin-item .kaiin-comment p{
	font-size: 1.6rem;
	text-align: justify;
}
.aisatsu-kaiin-item .kaiin-img{
	grid-area: kaiin-img;
	aspect-ratio: 1/1;
}
.aisatsu-kaiin-item .kaiin-img img{
	border-radius: 10%;
	width: 100%;
	height: auto;
}
@media only screen and (min-width:992px) {
	.aisatsu-kaiin{
		flex-direction: row;
		margin: 8% 0 15%;
	}
	.aisatsu-kaiin-item{
		width: 33.33%;
		margin: 0;
	}
	.aisatsu-kaiin-item .kaiin-name h5{
		font-size: 1.8rem;
	}
	.aisatsu-kaiin-item .kaiin-comment{
		padding: 8% 12% 0 0;
	}
	.aisatsu-kaiin-item .kaiin-comment p{
		font-size: 1.8rem;
		margin: 0;
	}
}

.ryugu-connect{
	background-color: #DAE1BF;
	border-radius: 8px;
	padding: 5%;
	margin-bottom: 15%;
}
.ryugu-connect dl{
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}
.ryugu-connect dt{
	width: fit-content;
	height: auto;
	font-size: 1.8rem;
	border-radius: 8px;
	margin: 3% 0;
	padding: 0 3%;
	background-color: #176105;
	font-weight: normal;
	color: #ffffff;
}
.ryugu-connect dd{
	font-size: 1.6rem;
	margin-left: 2%;
}
@media only screen and (min-width:992px) {
	.ryugu-connect{
		margin: 8% 0 15%;
		padding: 5% 0 3% 5%;
	}
	.ryugu-connect dl{
		flex-direction: row;
		margin-bottom: 3%;
	}
	.ryugu-connect dt{
		font-size: 2.2rem;
		margin: 0;
		padding: 0 2%;
	}
	.ryugu-connect dd{
		font-size: 2.2rem;
		padding: 0;
	}
}

.ryugu-katsudo{
	
}
.katsudo-item{
	display: flex;
	flex-direction: column;
}
.katsudo-item .katsudo-img{
	margin-bottom: 5%;
}
.katsudo-item .katsudo-img img{
	width: 100%;
	height: auto;
	border-radius: 10px;
}
.katsudo-item .katsudo-comment{
	margin-bottom: 10%;
	padding: 0 3%;
}
.katsudo-item .katsudo-comment h5{
	font-size: 2.2rem;
	padding-bottom: 3%;
}
.katsudo-item .katsudo-comment p{
	font-size: 1.6rem;
}
@media only screen and (min-width:992px) {
	.ryugu-katsudo{
		margin: 8% 0 10%;
	}
	.katsudo-item{
		flex-direction: row;
		margin: 0 0 10% 0;
	}
	.katsudo-item .katsudo-img{
		margin: 0 80px 0 0;
		width: 40%;
	}
	.katsudo-item .katsudo-comment{
		width: calc(60% - 80px);
		margin: 0;
		padding: 0;
	}
	.katsudo-item .katsudo-comment h5{
		font-size: 2.8rem;
		padding: 0 0 5% 0;
		color: forestgreen;
		font-weight: bold;
	}
	.katsudo-item .katsudo-comment p{
		font-size: 2.0rem;
		margin: 0;
		padding: 0;
	}
}





.group-head h3::after{
	content:'Support Group';
}
.group-box{
	margin: 0 auto;
	padding: 10%;
}
.group .group-box img{
	display: block;
	width: 100%;
	border-radius: 10px;
}
.group .group-box h4{
	font-size: 2.2rem;
	font-weight: bold;
	padding: 10% 0 2% 2%;
}
.group .group-box p{
	font-size: 1.6rem;
	line-height: 1.8;
	padding: 2% 0 0 2%;
}



.ikimono{
	margin: 8% 0 0 0;
	padding: 0;
}
.ikimono-head{
	position: relative;
	width: 100%;
	height: auto;
	padding-top: calc((1.618/1)*45.3%);
	background-color: #ffcc00;
}
.ikimono-head img{
	position: absolute;
	right: 5%;
	top: 5%;
	width: 50%;
	height: auto;
}
.ikimono-title{
	position: absolute;
	width: 80%;
	height: 50%;
	top: calc((1.618/1)*5%);
	left: 5%;
}
.ikimono-title h3{
	font-size: 4.2rem;
	line-height: 1.3;
	color: #ffffff;
}
.ikimono-title h3::before{
	display: block;
	content: "ECOSYSTEM";
	font-size: 5.2rem;
	color: #ffffff;
	padding-bottom: 10%;
	opacity: 0.2;
}
.ikimono-intro{
	width: 80%;
	margin: 10% auto 0;
}
.ikimono-intro p{
	font-size: 1.6rem;
	padding-bottom: 2%;
	text-align: justify;
}

@media only screen and (min-width:992px) {
	.ikimono{
		margin: 3% 0 0;
	}
	.ikimono-head{
		width: 85%;
		margin: 0 auto;
		padding-top: 0;
		aspect-ratio: 1.618/1;
	}
	.ikimono-head img{
		width: 42.2%;
	}
	.ikimono-title{
		top: calc(8vw/1.618);
		left: 8vw;
	}
	.ikimono-title h3{
		font-size: 6.2rem;
	}
	.ikimono-title h3::before{
		font-size: 8rem;
		padding-bottom: 2%;
		opacity: 0.15;
	}
	.ikimono-intro{
		position: relative;
		width: 85%;
		margin: -18% auto 0;
		padding: 0 8vw;
		z-index: 1;
	}
	.ikimono-intro p{
		font-size: 1.8rem;
		padding: 0;
		line-height: 2.0;
		color: #FFF;
	}
}

.ikimono-kind{
	width: 90%;
	margin: 10% auto;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 20px;
}
.kind-body{
	position: relative;
	display:block;
}
.kind-body img{
	width: 100%;
	height: auto;
	border-radius: 5px;
}
.kind-inner{
	width: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.kind-inner h4{
	text-align: center;
	font-size: 2.6rem;
	color: #ffffff;
}
.kind-inner span{
	font-size:1.2rem;
	display:block;
	margin-top: 10px;
	text-align: center;
}
.kind-inner p{
	text-align: center;
	color: #FFF;
}

@media only screen and (min-width:992px) {
	.ikimono-kind{
		width: 85%;
		margin: 15% auto 8%;
		grid-template-columns: repeat(3,1fr);
		gap: 45px;
	}
	.kind-body img{
		border-radius: 8px;
	}
	.kind-inner h4{
		font-size: 3.6rem;
	}
	.kind-inner span{
		font-size:1.6rem;
		margin-top: 12px;
	}
}

.tax-ikimono{
	margin: 0;
	padding: 3% 0 8% 0;
}
.tax-ikimono-head{
	display: flex;
	flex-direction: column;
}
.tax-ikimono-head-title{
	position: relative;
	padding-top: calc((1/1.618)*74%);
	background-color: #ffcc00;
}
.tax-ikimono-head-title img{
	position: absolute;
	width: 70%;
	height: auto;
	top: 5%;
	right: 5%;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
}
.tax-ikimono-head-title h4{
	position: absolute;
	font-size: 4.2rem;
	color: #ffffff;
	top: 50%;
	left: 5%;
}
.tax-ikimono-head-title h4 span{
	display: block;
	font-size: 1.4rem;
	text-align: center;
}
.tax-ikimono-head-exp{
	padding: 10%;
}
.tax-ikimono-head-exp p{
	font-size: 1.6rem;
	line-height: 2.0;
}

@media only screen and (min-width:992px) {
	.tax-ikimono{
		margin: 0;
		padding: 0 0 5% 0;
	}
	.tax-ikimono-head{
		flex-direction: row;
		width: 90%;
		margin: 0 auto;
		gap: 60px;
	}
	.tax-ikimono-head-title{
		width: 60%;
		padding: 0;
		aspect-ratio: 2 / 1;
	}
	.tax-ikimono-head-title img{
		top: auto;
		bottom: 2%;
		right: 1.5%;
	}
	.tax-ikimono-head-title h4{
		font-size: 5.4rem;
		top: 55%;
		left: 10%;
	}
	.tax-ikimono-head-title h4 span{
		font-size: 1.8rem;
	}
	.tax-ikimono-head-exp{
		width: 40%;
		padding: 0;
	}
	.tax-ikimono-head-exp p{
		font-size: 1.8rem;
	}
}

.tax-ikimono-body{
	width: 94%;
	margin: 0 auto 3%;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 12px;
}
.tax-ikimono-parts{
	list-style: none;
	width: 100%;
	padding: 3%;
	background-color: #ffffff;
	border: 1px solid #999999;
	border-radius: 5px;
}
.tax-ikimono-parts img{
	width: 100%;
	height: auto;
	border-radius: 5px;
}
.tax-ikimono-parts h5{
	font-size: 1.4rem;
	text-align: center;
	padding: 10% 0 5%;
	letter-spacing: -1px;
	font-weight: bold;
}
.tax-ikimono-parts p{
	font-size: 1.2rem;
	line-height: 1.8;
	padding: 0 2% 2%;
}
@media only screen and (min-width:992px) {
	.tax-ikimono-body{
		width: 90%;
		margin: 8% auto 0;
		grid-template-columns: repeat(3,1fr);
		column-gap: 30px;
		row-gap: 40px;
	}
	.tax-ikimono-parts{
		padding: 5%;
		border-radius: 8px;
	}
.tax-ikimono-parts img{
	border-radius: 8px;
	}
	.tax-ikimono-parts h5{
		font-size: 2.2rem;
		font-weight: normal;
	}
	.tax-ikimono-parts p{
		font-size: 1.6rem;
	}
}

.sng-ikimono{
	margin: 0;
	padding: 0;
}
.sng-ikimono-head{
	position: relative;
	width: 90%;
	margin: 0 auto;
	height: auto;
	padding-top: calc((1/1.618)*120%);
}
.sng-ikimono-head img{
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
}
.sng-ikimono-title{
	position: absolute;
	width: 84%;
	height: 40%;
	top: 50%;
	left: 16%;
	padding: 3%;
	background: rgba(0,51,0,0.5);
	z-index: 1;
	display: flex;
	align-items: center;
}
.sng-ikimono-title-inner{
	width: 100%;
	height: auto;
	color: #fff;
	text-align: center;
}
.sng-ikimono-title h5{
	padding-bottom: 3%;
	font-size: 2.2rem;
}
.sng-ikimono-title p{
	font-size: 1.2rem;
	line-height: 1.8;
}
.length{
	font-size: 1.4rem!important;
}
.subtitle{
	font-size: 1.6rem;
	padding: 0 5% 5% 5%;
	line-height: 1.6;
	text-align: center;
	font-weight: bold;
}
.sng-ikimono-body{
	width: 80%;
	margin: 0 auto;
	font-size: 1.4rem;
	text-align: justify;
}
.sng-ikimono-content1{
	
}
.sng-ikimono-content1 p{
	padding-bottom: 3%;
}
.sng-ikimono-content2{
	
}
.sng-ikimono-content2 p{
	padding-bottom: 3%;
}
.sng-ikimono-img{
	padding: 10% 0 15%;
}
.sng-ikimono-img img{
	width: 100%;
	height: auto;
	border-radius: 20px;
}

@media only screen and (min-width:992px) {
	.sng-ikimono-head{
		padding: 0;
		aspect-ratio: 1.9 / 1;
	}
	.sng-ikimono-head img{
		width: 65%;
		height: auto;
	}
	.sng-ikimono-title{
		width: 55%;
		height: auto;
		aspect-ratio: 2 / 1;
		top: auto;
		left: auto;
		bottom: 23.5%;
		right: 0;
		padding: 0;
	}
	.sng-ikimono-title h5{
		font-size: 4.2rem;
	}
	.sng-ikimono-title p{
		font-size: 1.8rem;
	}
	.length{
		font-size: 1.8rem!important;
	}
	.subtitle{
		font-size: 2.4rem;
		padding: 0 0 5%;
	}
	.sng-ikimono-body{
		width: 90%;
		margin: 0 auto;
		font-size: 1.8rem;
	}
	.sng-ikimono-content1{
		width: 60%;
		margin: 0 auto 5%;
	}
	.sng-ikimono-content1 p{
		padding-bottom: 2%;
	}
	.sng-ikimono-content2{
		width: 100%;
		margin: 0;
		padding: 0 4% 8% 2%;
	}
	.sng-ikimono-content2 p{
		padding-bottom: 2%;
	}
	.sng-ikimono-img{
		width: 100%;
		margin: 0;
		padding: 0 2% 8%;
	}
	.sng-ikimono-img img{
		width: 100%;
		height: auto;
		border-radius: 20px;
	}
}

.gallery{
	margin: 8% 0 0 0;
	padding: 0;
}
.gallery-head{
	position: relative;
	width: 100%;
}
.gallery-head img{
	display: block;
	width: 100%;
	height: auto;
}
.gallery-head h3{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 3.6rem;
	color: #ffffff;
}
.gallery-head h3::before{
	display: block;
	content: "PHOTO GALLERY";
	font-size: 7.2rem;
	margin-bottom: -200px;
	line-height: 2.2;
}



.gallery-intro{
	padding: 15% 10% 10%;
}
.gallery-intro p{
	padding-bottom: 3%;
}
.gallery-season{
	padding: 0 5% 5%;
}
.season-main{
	padding-bottom: 10%;
}
.season-img{
	position: relative;
}
.season-img img{
	display: block;
	margin: 0 auto;
	width: 90%;
	height: auto;
	border-radius: 5px;
}
.season-inner{
	position: absolute;
	top: 50%;
	left: 50%;
	background-color: rgba(0,0,0,0.3);
	padding: 3%;
	border-radius: 5%;
	transform: translate(-50%, -50%);
}
.season-inner h4{
	font-size: 2.4rem;
	color:#ffffff;
	text-align: center;
}
.season-inner h4 span{
	display: block;
	font-size: 1.4rem;
	text-align: center;
}
.tax-gallery{
	margin: 0;
	padding: 10% 0;
}
.tax-gallery-head{
	position: relative;
	width: 100%;
	height: auto;
	padding-top: calc((1/1.618)*66%);
	background-color: #FFFFFF;
}
.tax-gallery-head img{
	position: absolute;
	width: 60%;
	height: auto;
	top: 10%;
	right: 10%;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.tax-gallery-head h4{
	position: absolute;
	font-size: 5.6rem;
	color: #202A1F;
	top: 40%;
	left: 10%;
}
.tax-gallery-head h4 span{
	display: block;
	font-size: 1.4rem;
	text-align: center;
}
.tax-gallery-exp{
	padding: 10% 12%;
}
.tax-gallery-exp p{
	font-size: 1.4rem;
	color: #313230;
	padding-bottom: 2%;
}
.tax-gallery-body{
	width: 96%;
	margin: 0 auto;
}
.tax-gallery-parts{
	padding: 0 15%;
}
.tax-gallery-parts img{
	width: 100%;
	height: auto;
	border: solid 2px #B5B400;
}
.tax-gallery-parts h5{
	font-size: 2.4rem;
	text-align: center;
	padding: 5% 0 15%;
}
.sng-gallery{
	margin: 0;
	padding: 0;
}
.sng-gallery-img{
	width: 100%;
	padding: 5% 0 0;
}
.sng-gallery-img img{
	width: 100%;
	height: auto;
}
.sng-gallery-content{
	padding: 10% 15% 15%;
}
.sng-gallery-content h5{
	text-align: center;
	font-size: 2.6rem;
	padding-bottom: 8%;
}
.sng-gallery-content p{
	font-size: 1.6rem;
	padding-bottom: 2%;
}

.contact{
	width: 90%;
	margin: 0 auto;
	padding: 8% 0;
}
.contact h3{
	font-size: 2.8rem;
}
.contact h3 span{
	display: block;
	font-size: 1.4rem;
	border-left: 3px solid #999999;
	margin-top: 2%;
	padding-left: 1%;
}

.form .form_row{
	width:100%;
	display: block;
	padding: 5% 2% 0 2%;
}
.form .form_row .form_label{
	margin: 0;
	padding: 0;
	font-size: 1.8rem;
}
.form .form_row .form_label span{
	color: #0293AD;
	border: 1px solid #0293AD;
	padding: 2px 5px;
	margin-left: 20px;
	font-size: 1.2rem;
}
.form .form_row .form_content{
	width: 100%;
}
.form .form_row .form_content input,.form .form_row .form_content textarea{
	width:100%;
	padding:15px 10px;
	border-radius:5px 5px 5px 5px!important;
	border:1px solid #70462E;
	background-color: #ffffff;
}
.form .form_row .form_content textarea{
	min-height: 200px;
}
.form .form_row-center{
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
}

@media only screen and (min-width:992px) {
	.form .form_row{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-js-display:flex;
	}
}

.supporter{
	
}
.supporter-head{
	position: relative;
	padding: 15% 0;
}
.supporter-head img{
	width: 100%;
	height: auto;
}
.supporter-title{
	position: absolute;
	width: 80%;
	padding: 5% 0;
	background-color: rgba(35,102,17,0.3);
	text-align: center;
	top: 70%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.supporter-title h3{
	font-size: 5.2rem;
	color: #ffffff;
	font-family: fot-chiaro-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.supporter-title h3 span{
	display: block;
	font-size: 1.8rem;
	padding-bottom: 3%;
}
.supporter-title .sec{
	padding-top: 3%;
}
.supporter-body{
	width: 90%;
	padding: 0;
	margin: 0 auto;
}
.supporter-body h4{
	font-size: 2.2rem;
	line-height: 2.0;
	padding-bottom: 5%;
	font-weight: bold;
	text-align: center;
}
.supporter-body p{
	padding: 2% 8%;
	line-height: 1.8;
	font-size: 1.6rem;
	text-align: justify;
}
.supporter-body .nenkaihi{
	text-align: center;
	padding: 5% 0!important;
}
.supporter-body .nenkaihi .nenkaihi-kingaku{
	font-size: 2.8rem;
	color: firebrick;
}
.supporter-tokuten{
	width: 90%;
	margin: 0 auto;
	padding: 3%;
	border: 2px solid #000;
	border-radius: 5px;
}
.tokuten{
	list-style-type: none;
	counter-reset: tokuten;
}
.tokuten .tokuten-item{
	margin-top: 25px;
}
.tokuten .text{
	display: inline-block;
	width: 60%;
	color: #000;
	vertical-align: top;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.8;
}
.tokuten .order{
	display: inline-block;
	width: 40px;
	height: 40px;
	margin: 5px 30px 0 20px;
	border: 1px solid #ccc;
	color: #aaa;
	text-align: center;
	line-height: 38px;
	font-weight: bold;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.tokuten .tokuten-item:nth-of-type(1) .order,
.tokuten .tokuten-item:nth-of-type(2) .order,
.tokuten .tokuten-item:nth-of-type(3) .order{
	border: none;
	color: #fff;
	font-weight: normal;
	line-height: 38px;
}
.tokuten .tokuten-item:nth-of-type(1) .order{
	background-color: #dab413;
}
.tokuten .tokuten-item:nth-of-type(2) .order{
	background-color: #6e7b84;
}
.tokuten .tokuten-item:nth-of-type(3) .order{
	background-color: #a0541a;
}
.tokuten .order::before{
	content: counter(tokuten);
	counter-increment: tokuten;
	display: inline-block;
	font-size: 1.8rem;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.tosignup{
	padding: 10% 0 5%;
	text-align: center;
	font-size: 1.8rem;
}
.btn-sign{
	width: 50%;
	margin: 0 auto 15%;
	padding: 3% 0;
	background-color: rgba(35,102,17,1);
	border: 1px solid #ffffff;
	border-radius: 5px;
	text-align: center;
	font-size: 2.0rem;
}
.btn-sign:hover{
	width: 54%;
	background-color: rgba(35,102,17,0.8);
	transition: all 0.3s 0s ease;
}
.btn-sign a{
	color: #ffffff;
}
.btn-sign a:hover{
	opacity: 1!important;
}

.sign-up{
	width: 90%;
	margin: 0 auto;
	padding: 8% 0;
}
.sign-up h3{
	font-size: 2.4rem;
	padding-left: 5%;
}
.sign-up h3 span{
	display: block;
	font-size: 1.4rem;
	border-left: 3px solid #999999;
	margin-top: 2%;
	padding-left: 1%;
}
.signup-form{
	padding-top: 10%;
}
.signup-form p{
	padding: 0 5%;
}
.signup-form .su-row{
	width:100%;
	display: block;
	padding: 5% 2% 0 2%;
}
.signup-form .su-row .su-label{
	margin: 0;
	padding: 0;
	font-size: 1.8rem;
}
.signup-form .su-row .su-label span{
	color: #0293AD;
	border: 1px solid #0293AD;
	padding: 2px 5px;
	margin-left: 20px;
	font-size: 1.2rem;
}
.signup-form .su-row .su-content{
	width: 100%;
}
.signup-form .su-row .su-content input,.signup-form .su-row .su-content textarea{
	width:100%;
	padding:15px 10px;
	border-radius:5px 5px 5px 5px!important;
	border:1px solid #70462E;
	background-color: #ffffff;
}
.signup-form .su-row .su-content textarea{
	min-height: 200px;
}
.signup-form .su-row-center{
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
}

@media only screen and (min-width:992px) {
	.signup-form .su-row{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-js-display:flex;
	}
}

