@charset "utf-8";

/*common
************************************************************************************/
#header:before {
	content:"";
	display: block;
	padding-top: 56%;
}
#header video{
	height: auto;
	width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
	margin: auto;
	z-index: 10;
	opacity: .7;
}

#header .sitename{
	position: absolute;
	left: 0;
	bottom: 10%;
	width: 100%;
	margin: auto;
	z-index: 50;
	color: #FFF;
	text-align: center;
}
#header .sitename img{
	width: 220px;
	height: auto;
}

#header .sitename h1{
	font-size: 1.875em;
	font-family: "Zen Maru Gothic", serif;
 	font-weight: 500;
 	font-style: normal;
	margin-top: 2em;
}

@media screen and (max-width: 1024px){
}
@media screen and (max-width: 768px){
	#header .sitename img{
		width: 130px;
	}
	#header .sitename h1{
		font-size: 1.5em;
		margin-top: 1em;
	}

}
@media screen and (max-width: 599px) {
	#header .sitename img{
		width: 110px;
	}
	#header .sitename h1{
		font-size: 1em;
		margin-top: .8em;
	}
}
@media screen and (max-width: 415px){
}



section {
	padding: 90px 40px;
}


/*title*/
.titleBox{
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	padding: 2px 20px;
	margin: 15px auto 30px .5em;
	display: flex;
	align-items: baseline;
	background: #6B451F;
	color: #FFF;
	border-radius: 5px;
}
.titleBox h1 {
	font-size: 2.875em;
}
.titleBox .en{
	font-size: 1.313em;
	padding-left: 20px;
}
.titleBox_center{
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	text-align: center;
	padding: 20px 0;
	margin: 0 auto 1em auto;
	color: #6B451F;
}
.titleBox_center h1 {
	font-size: 2.875em;
}
.titleBox_center .en{
	font-size: 1.313em;
}

.catchcopy{
	font-size: 1.5em;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
}
.catchcopy.sfont{
	font-size: 1.25em;
}

@media screen and (max-width: 1024px){
	section {
		padding: 50px 10px;
	}
}
@media screen and (max-width: 768px){
	.titleBox h1,
	.titleBox_center h1{
		font-size: 2em;
	}
	.titleBox .en,
	.titleBox_center .en{
		font-size: 1.25em;
	}

	.catchcopy{
		font-size: 1.25em;
	}
	.catchcopy.sfont{
		font-size: 1.125em;
	}
}
@media screen and (max-width: 599px) {
	
}
@media screen and (max-width: 415px){
}

/*news
************************************************************************************/
ul.archives-list{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: auto;
	column-gap: 30px;
	row-gap: 30px;
	align-items: stretch;
	margin: 50px auto;
}
ul.archives-list li{
	padding-bottom: 1em;
	background: #FFF;
	border-radius: 15px;
	overflow: hidden;
}
ul.archives-list li .image{
	width: 100%;
	aspect-ratio: 6 / 4;
}
ul.archives-list li .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
ul.archives-list li .details{
	padding: 0 1em;
}
ul.archives-list li .details .date{
	margin: 1em 0;
	font-size: 0.875em;
	font-weight: 300;
	color: #7E7E7E;
}
ul.archives-list li a{
	text-decoration: none;
}
@media screen and (min-width: 1025px) {
	ul.archives-list li,
	ul.archives-list li a{
		transition: all 0.5s ease-in-out;
	}
	ul.archives-list li:hover{
		box-shadow: 1px 18px 15px -15px #9d9d9d;
	}
	ul.archives-list li:hover a{
		color: #EBA103;
	}
}

@media screen and (max-width: 768px){
	ul.archives-list{
		grid-template-columns: 1fr 1fr 1fr;
		column-gap: 20px;
		row-gap: 20px;

	}
}
@media screen and (max-width: 599px) {
	#news .wrapper{
		width: 95%;
	}
	#news .wrapper .titleBox{
		width: 100%;
	}
	ul.archives-list{
		width: 100%;
		display: block;
	}
	ul.archives-list li{
		margin-bottom: 15px;
		padding: 0;
		text-align: left;
	}
	ul.archives-list li a{
		display: flex;
		align-self: center;
	}
	ul.archives-list li .image{
		width: 30%;
		height: 100%;
		aspect-ratio: 5 / 4;
		margin: 0;
		line-height: 0;
	}
	ul.archives-list li .image img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	ul.archives-list li .details{
		width: calc(100% - 35%);
		padding-left: 1em;
		box-sizing: border-box;
	}
	ul.archives-list li .details .date{
		margin: 1em 0 0;
	}

}

/*power
************************************************************************************/
#power{
	background: url("../img/power_bg.jpg") no-repeat left top;
	background-size: auto 100%;
}
#power .titleBox{
	width: 680px;
}
#power .frame_power{
	padding: 0 0 0 35%;
}
#power .frame_power h2{
	margin: 1.5em auto 1em auto;
	padding: 0 50px 0;
	text-align: center;
	font-size: 1.313em;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	color: #973601;
}
#power .frame_power h2:before{
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	margin-right: 15px;
	background: url("../img/outline_ttl_left.svg") center center no-repeat;
	background-size: contain;
}
#power .frame_power h2:after{
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	margin-left: 15px;
	background: url("../img/outline_ttl_right.svg") center center no-repeat;
	background-size: contain;
}
#power .frame_power .text img{
	width: 210px;
	height: auto;
}
@media screen and (max-width: 1500px){
	#power .frame_power{
		padding: 0 0 0 40%;
	}
}
@media screen and (max-width: 1300px){
	#power .frame_power{
		padding: 0 0 0 46%;
	}
}
@media screen and (max-width: 1024px){
	#power{
		background: none;
	}
	#power .frame_power{
		padding: 0 0 0 0;
	}
	#power .titleBox{
		width: auto;
	}

}
@media screen and (max-width: 768px){
	#power .titleBox{
		width: auto;
		flex-flow: row wrap;
	}

	#power .titleBox h1,
	#power .titleBox .en{
		display: block;
	}
	.titleBox .en{
		padding-left: 0;
	}
	#power .frame_power h2{
		padding: 0 30px 0;
	}
}
@media screen and (max-width: 599px) {
	
}
@media screen and (max-width: 415px){
}


/*about
************************************************************************************/
#about{
	background: url("../img/about_bg.png") no-repeat left 50px top 70px;
	background-size: auto 500px;
}
#about .frame_about{
	display: grid;
	grid-template-columns: 40% 1fr;
	grid-template-rows: auto;
	column-gap: 0;
	row-gap: 0;
	align-items: flex-start;
	margin-bottom: 80px;
}
#about .frame_jigyo{
	width: 100%;
}
#about .frame_jigyo h2 {
	text-align: center;
	position: relative;
	font-size: 2.188em;
	color: #6B451F;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	margin-bottom: 3em;
}
#about .frame_jigyo h2 span {
	display: inline-block;
	padding: 0 20px;
	background-color: #f2efe9;
    position: relative;
    z-index: 1;
}
#about .frame_jigyo h2:after {
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	background-color: #E69A03;
	position: absolute;
	top: 50%;
	left: 0;
    transform: translateY(-50%);
}



#about .frame_jigyo .wp-block-columns{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: auto;
	column-gap: 30px;
	row-gap: 100px;
	align-items: stretch;
}
#about .frame_jigyo .wp-block-columns .wp-block-column{
	background: #FFF;
	border-radius: 30px;
	box-shadow:0px 0px 8px #dadada;
	padding: 30px;
}
#about .frame_jigyo .wp-block-columns .wp-block-column .jigyo_icon{
	margin: -90px auto 0;
	text-align: center;
}
#about .frame_jigyo .wp-block-columns .wp-block-column .jigyo_icon img{
	width: 230px;
	height: auto;
	margin: 0 auto;
}
#about .frame_jigyo .wp-block-columns .wp-block-column .jigyo_ttll{
	text-align: center;
	font-size: 1.5em;
	padding: .5em 0 .8em;
	margin-bottom: 1em;
	border-bottom: 2px dotted #9CCB9C;
	color: #459570;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
}

#about .wp-block-cover, .wp-block-cover-image{
	min-height: 300px;
}

@media screen and (max-width: 1024px){
	#about{
		background: none;
	}
	#about .frame_about{
		grid-template-columns: 1fr;
	}
	#about .frame_jigyo .wp-block-columns .wp-block-column .jigyo_icon img{
		width: 180px;
	}
	
}
@media screen and (max-width: 768px){
	#about .frame_jigyo h2 {
		font-size: 1.75em;
	}
	#about .frame_jigyo .wp-block-columns{
		grid-template-columns: 1fr;
	}
	#about .frame_jigyo .wp-block-columns .wp-block-column .jigyo_icon img{
		width: 220px;
	}
}
@media screen and (max-width: 599px){
}
@media screen and (max-width: 415px){
}

/*rinen
************************************************************************************/
#rinen{
	background: url("../img/rinen_bg.png") no-repeat top left;
	background-size: cover;
}
#rinen .wp-block-columns{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	margin: 80px auto;
}
#rinen .wp-block-columns .wp-block-column{
	width: 31%;
	margin: 0 1%;
	overflow: hidden;
	position: relative;
}
#rinen .wp-block-columns .wp-block-column img.wp-block-cover__image-background{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	object-fit: cover;
	z-index: 5;
}
#rinen .wp-block-columns .wp-block-column .wp-block-cover__inner-container{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	text-align: center;
	margin: auto;
	z-index: 20;
}

#rinen .wp-block-columns .wp-block-column .rinen_icon img{
	max-height: 125px;
	width: auto;
	margin: 40px auto 15px;
}
#rinen .wp-block-columns .wp-block-column .rinen_title{
	color: #6B451F;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	font-size: 2.375em;
}
#rinen .frame_vision{
	background: #F8F3E8;
	margin: 50px 0 50px;
	padding: 50px;
	text-align: center;
	border-radius: 30px;
}
#rinen .vision_title {
	color: #6B451F;
	font-size: 1.5em;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	font-style: normal;
	margin-bottom: 2em;
	line-height: 1.7;
}

@media screen and (max-width: 1024px){
	#rinen .wp-block-columns .wp-block-column .rinen_icon img{
		max-height: 90px;
		width: auto;
		margin: 50px auto 15px;
	}
	#rinen .wp-block-columns .wp-block-column .rinen_title{
		font-size: 1.75em;
	}
}
@media screen and (max-width: 768px){
	#rinen .wp-block-columns .wp-block-column{
		width: 60%;
		margin: 0 auto 20px auto;
	}
	#rinen .wp-block-columns .wp-block-column .rinen_icon img{
		max-height: 100px;
		width: auto;
		margin: 40px auto 15px;
	}
	#rinen .wp-block-columns .wp-block-column .rinen_title{
		font-size: 2.375em;
	}
	#rinen .frame_vision{
		padding: 25px;
	}
	#rinen .vision_title {
		margin-bottom: 1em;
	}
}
@media screen and (max-width: 599px) {
	#rinen .wp-block-columns .wp-block-column .rinen_icon img{
		max-height: 90px;
		width: auto;
		margin: 30px auto 15px;
	}
	#rinen .wp-block-columns .wp-block-column .rinen_title{
		font-size: 2em;
	}
}
@media screen and (max-width: 415px){
}


/*instagram
************************************************************************************/
#instagram,
#banner{
	background: #FFF;
}
#banner img{
	max-width: 600px;
	height: auto;
}
