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


/*--------------------------------
  Main Layout 
--------------------------------*/

#about{
	width:100%;
}
#about .main{
	width:100%;
	height:24.07vw;
	
	background:url("image/main.webp") no-repeat center top;
	background-size:cover;
	
	display:flex;
	align-items:center;
	justify-content: center;
}

#about .main h1{
	font-family: "Shippori Mincho", system-ui;
    font-weight: 400;
    font-style: normal;
    font-size:clamp(1.2rem, 0.545rem + 3.27vw, 3rem);
    color:#FFF;
	
	text-align:center;
}

#about .copy_block{
	font-size:clamp(0.9rem, 0.609rem + 1.45vw, 1.7rem);
	font-weight:400;
	line-height:2.2;
	text-align: center;
	
	margin: 3.57vw auto 2.14vw;
}
#about .copy_block img{
	display:block;
	width:55.86vw;
	margin:2.57vw auto 2.14vw;
	
}

@media screen and (max-width:767px) {
	#about{
		width:100%;
	}
	#about .main{
		width:100%;
		height:25vh;
	}

	#about .main h1{
		text-align:left;
		margin: 0 3.62vw;
		line-height:1.8;
	}

	#about .copy_block{
		text-align: left;
		margin: 3.57vw 3.62vw 2.14vw;
	}
	#about .copy_block img{
		display:block;
		width:100%;
		margin:2.57vw auto 2.14vw;

	}
    
}


/*--------------------------------
  Contents Layout 
--------------------------------*/
.contents_block{
    margin-top:7.14vw!important;
}
.contents_block .title_block{
	width:100%;
	display:flex;
	align-items:center;
	justify-content: flex-end;
	background-color:var(--subcolor);
	padding:0!important;
}
.contents_block .title_block h2{
	width:25.07vw;
	display:block;
	
	font-size:clamp(1.5rem, 0.227rem + 6.36vw, 5rem);
	font-weight:200;
	text-align:left;
}
.contents_block .title_block .photo_box{
	width:60.71vw;
	display:flex;
	align-items: stretch;
	padding:0!important;
	margin:0!important;
	object-fit:cover;
	overflow: hidden;
}
@media screen and (max-width:767px) {
	.contents_block{
		width:100%!important;
		padding-top:20px!important;
	}
	.contents_block .title_block{
		width:100%;
		padding:0!important;
		margin:0!important;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	.contents_block .title_block h2{
		width:100%;
		display:block;
		padding-left:15px;
		
	}
	.contents_block .title_block .photo_box{
		width:100%;
		display:flex;
		align-items: stretch;
		padding:0!important;
		margin:0!important;
		object-fit:contain;
		overflow: hidden;
	}
	.contents_block .title_block .photo_box img{
		height:150%;
	}
}

.contents_block .contents_box{
	width:71.43%;
	margin:2.14vw auto;
	
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.contents_block .contents_box .copy_box{
	width:100%;
	font-size:clamp(0.9rem, 0.693rem + 1.04vw, 1.6rem);
	font-weight:300;
	text-align:left;
	
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
	align-items:center;
}
.contents_block .contents_box .btm_space{
	margin-bottom:3.57vw;
}
.contents_block .contents_box .copy_box h4{
	display:block;
	margin-bottom:1.79vw;
	
	font-size:clamp(1rem, 0.704rem + 1.48vw, 2rem);
	font-weight:400;
}
.contents_block .contents_box h3{
	display:block;
	margin-bottom:1.29vw;
	
	font-size:clamp(1.2rem, 0.691rem + 2.55vw, 2.6rem);
	font-weight:400;
}
.contents_block .contents_box h3 span{
	display:block;
	/*margin-bottom:0.36vw;*/
	
	font-size:clamp(0.9rem, 0.645rem + 1.27vw, 1.6rem);
	font-weight:300;
}

.contents_block .contents_box .cont_2way_left{
	width:50%;
	display:flex;
	flex-wrap:wrap;
	
	justify-content:center;
	align-items: flex-start!important;
}
.contents_block .contents_box .cont_2way_right{
	width:46.6%;
	display:block;
}
.contents_block p.line{
	width:71.43%;
	border-top:solid 1px #dbdbdb;
	margin:2.86vw auto;
	padding:0;
}
.links_blue a{
	margin-top: 2.14vw!important;
}
.mt20{
	margin-top:0;
}

@media screen and (max-width:767px) {
	.contents_block .contents_box{
		width:90%;
		margin:2.14vw auto 0;
	}
	.contents_block .contents_box .copy_box{
	}
	.contents_block .contents_box .btm_space{
	}
	.contents_block .contents_box .copy_box h4{
	}
	.contents_block .contents_box h3{
	}
	.contents_block .contents_box h3 span{
	}

	.contents_block .contents_box .cont_2way_left{
		width:100%;
	}
	.contents_block .contents_box .cont_2way_right{
		width:100%;
		margin-top:20px;
	}
	.contents_block p.line{
		width:90%;
	}
	.links_blue a{
		margin-top: 2.14vw!important;
	}
	.mt20{
		margin-top:20px;
	}
}

/*-----roof_block--------*/
.contents_block .contents_box .cont_2way_left .photo_1way img{
	width:100%;
}
.contents_block .contents_box .cont_2way_left .photo_3way{
	width:100%;
	margin-top:1.79vw;
	display:flex;
	justify-content: space-between;
}
.contents_block .contents_box .cont_2way_left .photo_3way img{
	width:33.2%;
	border:solid 1px var(--subcolor);
}

@media screen and (max-width:767px) {
	.contents_block .contents_box .cont_2way_left .photo_1way img{
	}
	.contents_block .contents_box .cont_2way_left .photo_3way{
	}
	.contents_block .contents_box .cont_2way_left .photo_3way img{
	}
}


/*-----gallery_block--------*/
.contents_block .contents_box .gallery{
	width:100%;
	/*margin-top:2.14vw;*/
	
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}
.contents_block .contents_box .gallery li{
	width:32.3%;
	margin-bottom:1.07vw;
	
	display:block;
}
@media screen and (max-width:767px) {
	.contents_block .contents_box .gallery{
	}
	.contents_block .contents_box .gallery li{
		width:49%;
	}
}
.gallery li {
    opacity: 0;
    transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
}
.gallery li.active {
    opacity: 1;
}
