@charset "utf-8";

html ul{
	margin: 0;
	padding: 0;
}

li{
	list-style: none;
}

body{
	width: 100%;
	margin: 0;
	padding: 0;
	color: #4C4948;
}

a:hover {
	opacity: 0.5;
}

.pc_only{
	display: block;
}

.sp_only{
	display: none;
}

/* PC
------------------------------------------------------------*/
.top_kvbox {
	width: 100%;
	margin: 0 auto;
	/*padding-top: 25px;*/
	background-color: #FFFFFF;
}

.top_kv {
	/*margin-left: 25px;
	width: calc(100% - 50px);*/
	width: calc(100% - 0px);
	height: 701px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position: relative;
}

.top_kv img {
	width: 100%;
	height: auto;
}

.top_logo {
	height: auto;
	position: absolute;
	top: 31.5%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
}

section.nav {
	width: 100%;
	margin-top: 50px;
	background-color: #FFFFFF;
	border-top: 2px solid #4C4948;
	border-bottom: 2px solid #4C4948;
}

section {
	width: 100%;
	background-color: #FFFFFF;
	border-bottom: 2px solid #4C4948;
}

section.bottomnone {
	width: 100%;
	background-color: #FFFFFF;
	border-bottom: 0px solid #4C4948;
	overflow: hidden;
}

.base_contens_nav {
	max-width: 1200px;
	margin: -55px auto 0;
	border-left: 2px solid #4C4948;
	border-right: 2px solid #4C4948;
}

.base_contens {
	max-width: 1200px;
	margin: 0 auto;
	border-left: 2px solid #4C4948;
	border-right: 2px solid #4C4948;
	overflow: hidden;
	display:flex;
}

.contensl {
	float: left;
	width: 50%;
}
.contensr {
	float: right;
	width: 50%;
	border-left: 2px solid #4C4948;
}

.contensrnone {
	float: right;
	width: 50%;
	border-left: 0px solid #4C4948;
}

nav {
	overflow: hidden;
}

nav li {
	list-style: none;
	float: left;
	margin: 70px 0px 9px 7%;
}

a:hover {
	opacity: 0.5;
}

.tt {
	padding: 60px 0 0 20px;
}

.contensrnone .tt {
	padding: 20px 0 0 20px;
}

.contensl .tt {
	padding: 20px 0 0 20px;
}

.txt {
	width: calc(100% - 40px);
	padding: 20px;
}

.logo {
	text-align: right;
}

.logo img {
	padding-right: 20px;
}

.date {
	width: 100px;
	padding-left: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #4C4948;
}
.info {
	margin-bottom: 20px;
}

.contensl ul {
	margin-bottom: 50px;
	overflow: hidden;
}

.contensl li {
	width: 48%;
	float: left;
	list-style: none;
}
.contensl dt {
	float: left;
	padding-left: 20px;
}

.contensl dd {
	float: left;
	text-align: right;
	font-size: 20px;
	margin: 0 0 20px 0;
}

.contensl dd span {
	font-size: 12px;
}

.contensl p {
	padding: 20px;
	margin: 0;
}

.contensl li img {
	width: 100%;
}

.contensl li .tell {
	font-size: 26px;
}

footer {
	height: 200px;
	text-align: center;
	background-color: #000000;
	color: #FFFFFF;
}

footer p {
	margin: 0;
	padding-top: 20px;
}

/* concept */

.txtl{
	float: left;
	margin: 50px 20px 0 50px;
	word-break: break-all;
	width: 60%;
	text-align: center;
}

.txtl .logoG{
	margin: 0 0 40px 0;
}

.txtl .name{
	text-align: right;
	margin-top: 30px;
	width: 50%;
	float: right;
}

.photor{
	float: right;
	margin: 50px 50px 0 0;
	text-align: right;
}

/* concept */


/* staff */
.txtl h2{
	margin-top: 50px;
}

.namenote{
	font-size: 14px;
}

.txtl .namestaff{
	text-align: right;
	margin-top: -30px;
	width: 50%;
	float: right;
}
/* staff */

/* menu */
.menu dl{
	width: 60%;
	margin: 0 auto;
}

.menu dl dt{
	float: left;
}

/* menu */

/* gallery */
.parent-container{
	margin: 50px auto;
	text-align: center;
}

/* gallery */


/* SNS */
ul.insta li{
	float: left;
}

ul.insta li.insta01{
	width: 326px;
}

ul.insta li.insta02{
	width: 35%;
	margin-right: 30px;
	display: flex;
  justify-content: center;
  align-items: center;
	height: 550px;
}

ul.insta li.insta02 img{
	width: 100%;
	top: 50%;
}

/* SNS */


/* PC End */


/* tb
------------------------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 1200px) {
	.top_kv {
		height: 500px;
	}
}/* tb End */


/* sp
------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
	.pc_only{
		display: none;
	}
	.sp_only{
		display: block;
	}
	.top_kvbox {
		padding-top: 0;
	}
    .top_kv {
		margin-left: 0;
		width: 100%;
		height: auto;
	}
	.top_logo {
		top: 35vw;
	}
	.top_logo img {
		width: 100%;
	}
	
	.base_contens_nav {
		max-width: 94%;
	}

	.base_contens {
		max-width: 94%;
	}
	nav li {
		margin: 70px 0px 9px 8px;
		height: 30px;
	}
	nav li img {
		height: 41%;
	}
	
	section.nav {
		margin-top: 20px;
	}
	.txt {
    	width: 89%;
	}
	
	/* concept */
	
	.txtl{
		margin: 0;
		padding: 5vw 5vw 0vw 5vw;
		word-break: break-all;
		width: 70%;
		text-align: center;
		background:rgba(255,255,255,0.7);
		position:absolute;
		z-index: 2;
		font-size: 15px;
	}
	
	h3.concept{
		font-size: 15px;
	}

	.txtl .logoG{
		margin: 0 0 40px 0;
	}
	
	.txtl .logoG img{
		width: 30%;
	}

	.txtl .name{
		text-align: right;
		margin: -3vw 0 -2vw;
		width: 60%;
	}
	
	.txtl .name img{
		width: 100%;
	}

	.photor{
		text-align: right;
		position: relative;
		left:80px;
		z-index: 1;
	}

	/* concept */
	
	/* staff */
	.txtl .staff{
		font-size: 13px;
	}
	/* staff */
	
	/* menu */
	h3.menu{
		font-size: 13px;
	}
	
	.menu dl{
		width: 100%;
		margin: 0 0 0 4vw;
		text-align: left;
	}

	/* menu */
	
	/* access */
	img.access{
		width: 98%;
	}
	dl.btime{
		width: 100%;
		margin: 0 0 0 10vw;
		text-align: left;
	}
	/* access */
	
	/* gallery */
	.parent-container img{
		width: 45%;
	}
	/* gallery */
	
	/* sns */
	div.txtsns {
		margin: 20px auto;
	}
	/* sns */
	
	
}/* sp End */



