@charset "utf-8";
video {
  max-width: 100%;
}
/*#concept{
	margin: 40px auto;
}*/
h2{
	font-size: 2.1rem;
	letter-spacing: 2px;
	margin-bottom: 25px;
}
#concept .leadTxt{
	font-size: 1.5rem;
    margin-bottom: 40px;
}
#concept p:last-of-type{
	line-height: 2.1;
	margin-bottom: 50px;
}
#menu, #gallery, #staff, #access{
	margin: 130px auto;
}
#menu img {
	width: 70%;
	z-index: 9;
    position: sticky;
}
#staff img{
	width: 70%;
	z-index: 9;
    position: sticky;
}
#menu .bgGray, #staff .bgGray{
    width: 90%;
    margin: -50px 0 50px 10%;
    z-index: 10;
    position: sticky;
    box-sizing: border-box;
    padding: 24px;
    align-items: center;
}
#menu .bgGray h2{
    width: 100px;
    margin: 0;
}
#menu .bgGray p {
	/*width: 60%;*/
    line-height: 1.5;
    font-size: 0.8rem;
	display: block;
}
#staff .bgGray div{
	line-height: 1.5;
    font-size: 0.8rem;
	display: block;
}
#staff .bgGray div span{
    line-height: 1.5;
    font-size: 1.4rem;
    padding: 0 0 7px 0;
    margin-bottom: 10px;
    border-bottom: 1px dotted #707070;
    display: block;
}
#staff .bgGray div dl{
	margin-top: 20px;
}
#staff .bgGray div dl dt{
	line-height: 1.5;
    font-size: 1rem;
    margin-bottom: 10px;
    font-weight: 400;
}
#staff .bgGray div dl dd{
	line-height: 1.5;
    font-weight: 400;
}
#access dl{
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px dotted #707070;
}
#access dl dt{
	font-weight: 600;
    letter-spacing: 1px;
}
#access dl dd span{
	display: block;
    font-size: 0.75rem;
    margin: 10px 0;
    line-height: 1.5;
    letter-spacing: 1px;
}
#gallery ul {
	margin-bottom: 20px;
}
#gallery ul li{
	margin-bottom: 20px;
    position: relative;
    width: 47%;
}
.galleryBox .imgBox{
	width: 100%;
    overflow: hidden;
}
.galleryBox .imgBox img{
	transition: 1s all;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.galleryBox .imgBox img:hover{
  transform:scale(1.2,1.2);
  transition:1s all;
}
.galleryBox .colTitle{
	position: absolute;
    bottom: 0;
    width: 100%;
    background-color: #00000073;
    padding: 5px;
    color: #fff !important;
    font-size: 0.9rem;
    box-sizing: border-box;
    line-height: 1.4;
    font-weight: 500;
}
#gallery p.innerSP{
	margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
	#main{
		margin-top: 7vh;
	}
}
@media screen and (min-width: 769px) {
	#main{
		margin-top: 6vh;
	}
	h2{
		font-size: 3rem;
		margin-bottom: 50px;
	}
	#concept .leadTxt{
		    font-size: 1.5rem;
    margin-bottom: 60px;
    letter-spacing: 3px;
	}
	#concept p:last-of-type{
		line-height: 3rem;
    margin-bottom: 100px;
    letter-spacing: 2px;
	}
	#menu .bgGray, #staff .bgGray {
		padding: 50px 5%;
        margin: 0;
        width: 50%;
	}
	#menu, #gallery, #staff, #access{
		margin: 230px auto;
	}
	#menu .bgGray p{
		font-size: 1rem;
		width: 100%;
	}
	#menu .imgBox, #staff .imgBox{
		width: 495px;
        height: 495px;
	}
	#menu .imgBox img,  #staff .imgBox img{
		width: 100%;
	}
	#menu .flexboxPC, #staff .flexboxPC{
		    align-items: center;
		margin-bottom: 100px;
	}
	#gallery ul li{
		margin-bottom: 50px;
        position: relative;
        width: 31%;
        margin-right: 3.5%;
	}
	#gallery ul li:nth-of-type(3n){
		margin-right: 0;
	}
	#gallery ul{
		width: 900px;
	}
}