@charset "UTF-8";

body{
	font-size:16px;
}

h1,h2,h3,h4,h5 {
  font-family: YuGothic,'Yu Gothic',YuGothic,'Yu Gothic',sans-serif;
}

img{
	max-width:100%;
}
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}
.row-eq-height div{
	height:100%;
}

section{
	padding:40px 0;
	background-color:#FFFFFF;
}
section:nth-child(3n){
	background-color:#efefef;
}

.slider_block{
	aspect-ratio: 12 / 6;
	position: relative;
	overflow: hidden;
}

.slider_block img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}

/* youtubeレスポンシブ用 */
.youtube{
  position:relative;
  width:100%;
  padding-top:56.25%;
	margin-bottom:20px;
}
.youtube iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

li a:hover,li a:active, li a:focus{
	background-color:rgba(0,0,0,0.1) !important;
}

.img-wrapper{
	position: relative;
	overflow: hidden;
	cursor: pointer;
	
}
.img-wrapper:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.img-wrapper img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}
.img-wrapper img {
	transition: transform .6s ease;/* ゆっくり変化させる */
}
.img-wrapper:hover img {
 	transform: scale(1.1);/* 拡大 */
}


.photo{
	width:100%;
	background-size:cover;
	background-position:center center;
	position:relative;
	overflow: hidden;
}
.photo:before {
	content:"";
	display:block;
	padding-top:100%;
}
.photo a{
	display:block;
	height:100%;
}
.photo:hover{
	background-size:180%;
}



.photo img,
.photo_circle img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
}
.hover_opa{
	opacity: 0.5;
}
.hover_opa:hover{
	opacity: 1.0;
}
.photo_circle{
	position:relative;
	display:block;
	margin:0px 0px 0px 0px;
	width:100%;
	background-size:cover;
	background-position:center;
	border-radius: 50%;
	overflow: hidden;
}
.photo_circle:before {
	content:"";
	display:block;
	padding-top:100%;
}

.pagetop{
	background-color:rgba(0,100,255,0.4);
	font-size:40px;
	border-radius: 50%;
	position:fixed;
	bottom:20px;
	right:20px;
	width:80px;
	height:80px;
	line-height:0;
	text-align:center;
	cursor: pointer;
	color:#FFFFFF;
	z-index:9999;
}