/*=================================================
 * CSS for PC
 * ================================================= */

body:before{	display: none;}
#hd{	background: rgba(31, 31, 31, 1);}
#cnt{	background: url(../img/index/line.png) repeat-y top center #eceef0;}

.h2_title br.pc_none{	display: none;}

#layout{
	position: relative;
	color: #fff;
	background: #1f1f1f;
	margin: 110px 0 0 0;
	padding: 50px 0 10px 0;
}
#layout:after{
	content: '';
	width: 150px;
	height: 10px;
	background: #d5d9dd;
	position: absolute;
	top: -60px;
	left: calc(50% - 75px);
}

#layout h3{
	font-family: "Rounded Mplus 1c";
	font-weight: 300;
	font-size: 30px;
	line-height: 1.2;
	margin: 0 auto 30px auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
#layout h3 a{
	color: #fff;
	text-decoration: none;
	position: relative;
}
#layout h3 a::before,
#layout h3 a::after {
	background-color: #d1ab59;
	bottom: -4px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
	width: 100%;
}
#layout h3 a::before{
	background-color: #444;
	transform: scale(1, 1);
}
#layout h3 a:hover::after {
	transform: scale(1, 1);
}



/** site **/

#site{
	position: relative;
	font-size: 0;
	line-height: 0;
	text-align: center;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#site_pc{
	width: 750px;
	margin: 0 auto 100px auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#site_pc img{}

.slide_bg{
	padding: 10px;
	background: #333;
}

#site_sp{
	margin-left: 670px;
}
#site_sp:only-child{	margin-left: 0;}

#site h4{
	width: 180px;
	font-family: "Rounded Mplus 1c";
	font-weight: 300;
	font-size: 20px;
	line-height: 35px;
	background: #333;
	border-radius: 3px 3px 0 0;
	margin: 0 auto;
}

.line2_bg{
	width: 434px;
	padding: 10px;
	background: #333;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.line2_bg img{
	display: inline-block;
	vertical-align: top;
	width: auto;
	height: 360px;
}
.line2_bg img:nth-of-type(2){	margin-left: 10px;}


/** resbt **/

.resbt{
	width: 1200px;
	margin: 0 auto;
	padding: 30px 0;
	-webkit-background-size: 3px 3px;
-moz-background-size: 3px 3px;
background-size: 3px 3px;
background-color: #212121;
background-image: -webkit-gradient(linear, 0 0, 100% 100%,
            color-stop(.25, #363636), color-stop(.25, transparent),
            color-stop(.5, transparent), color-stop(.5, #363636),
            color-stop(.75, #363636), color-stop(.75, transparent),
            to(transparent));
background-image: -webkit-linear-gradient(-45deg, #363636 25%, transparent 25%,
          transparent 50%, #363636 50%, #363636 75%,
          transparent 75%, transparent);
background-image: -moz-linear-gradient(-45deg, #363636 25%, transparent 25%,
          transparent 50%, #363636 50%, #363636 75%,
          transparent 75%, transparent);
background-image: -ms-linear-gradient(-45deg, #363636 25%, transparent 25%,
          transparent 50%, #363636 50%, #363636 75%,
          transparent 75%, transparent);
background-image: -o-linear-gradient(-45deg, #363636 25%, transparent 25%,
          transparent 50%, #363636 50%, #363636 75%,
          transparent 75%, transparent);
background-image: linear-gradient(-45deg, #363636 25%, transparent 25%,
          transparent 50%, #363636 50%, #363636 75%,
          transparent 75%, transparent);
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.resbt > span{
	display: block;
}

.resbt > span a{
	position: relative;
	z-index: 1;
	display: inline-block;
	vertical-align: top;
	width: 300px;
	font-size: 20px;
	font-weight: normal;
	line-height: 46px;
	color: #d1ab59;
	border: 2px solid #d1ab59;
	border-radius: 25px;
	text-transform: uppercase;
	-webkit-transition	: 0.3s ease-in-out;
	-moz-transition	: 0.3s ease-in-out;
	-o-transition	: 0.3s ease-in-out;
	transition		: 0.3s ease-in-out;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.resbt > span a:hover{
	text-decoration: none;
	color: #1f1f1f;
	border: 2px solid #d1ab59;
	background: #d1ab59;
}


/** 201116 **/

.bxslider{
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.bxslider img{
	width: 100%;
	height: auto;
}

.bxslider div {
	opacity: 0;
	filter: alpha(opacity=0);
}
.bx-viewport .bxslider div {
	opacity: 1;
	filter: alpha(opacity=100);
}

.bx-wrapper .bx-controls-direction a{
	background: none !important;
}
.bx-wrapper .bx-prev:after,
.bx-wrapper .bx-next:after{
	top: calc(50% - 15px) !important;
	width: 30px !important;
	height: 30px !important;
	border-color: #fff !important;
}

.flick{
	position: relative;
	display: inline-flex;
	font-size: 0;
	line-height: 0;
	padding: 10px 5px;
	background: #333;
	margin: 0 0 50px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.flick .tbl{
	position: relative;
	width: 100%;
	display: flex;
	font-size: 0;
	line-height: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.flick .tbl > div{
	position: relative;
	overflow: visible;
	margin: 0 5px;
}

.flick .tbl > div img{
	display: inline-block;
	vertical-align: top;
	height: auto;
}

#flick_pc{	display: none;}
#flick_sp img{
	width: 228px;
	min-width: calc(100% / 5 - 10px);
}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {
	#cnt{
	    -webkit-background-size: 320px auto;
	    background-size: 320px auto;
	}
	#cnt{	padding-bottom: 0;}
	.h2_title br.pc_none{	display: inline;}

	#layout{
		margin: 66px 0 0 0;
		padding: 70px 0;
		padding: 30px 0 20px 0;
	}
	#layout:after{
		content: '';
		width: 100px;
		height: 5px;
		position: absolute;
		top: -35px;
		left: calc(50% - 50px);
	}
	#layout h3{
		width: auto;
		font-size: 24px;
		margin: 0 10px 15px 10px;
	}
	#layout h3:after{
		font-size: 10px;
		font-weight: normal;
		line-height: 12px;
		position: absolute;
		bottom: 12px;
		left: calc(50% - 100px);
	}

	/** site **/
	#site{
		position: relative;
		width: auto;
		min-height: auto;
		margin: 0;
		padding: 0;
	}
	#site_pc{
		width: auto;
		position: static !important;
		margin: 0 0 50px 0 !important;
	}
	.slide_bg{
		padding: 10px;
		background: #333;
	}
	#site_sp{	margin: 0 0 20px 0 !important;}
	#site h4{
		font-size: 18px;
		line-height: 30px;
		background: #333;
	}
	.line2_bg{
		display: inline-block;
		vertical-align: top;
		width: auto;
		padding: 10px 5px;
	}
	.line2_bg img{
		display: inline-block;
		vertical-align: top;
		width: calc(50% - 10px);
		height: auto;
		margin: 0 5px;
	}
	.line2_bg img:nth-of-type(2){	margin-left: 5px;}
	.resbt{
		width: auto;
		padding: 0;
		background: none;
	}
	.resbt > span a:hover{
		text-decoration: none;
		color: #d1ab59;
		border: 2px solid #d1ab59;
		background: none;
	}

	.resbt > span a:before,
	.resbt > span a:after {
		display: none;
	}

	/** 201116 **/
	#site_pc{	display: none;}
	#flick_pc{	display: flex;}
	.flick{
		position: relative;
		display: flex;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin: 0 0 10px 0;
		background: none;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.flick::-webkit-scrollbar{	display: none;}
	.flick .tbl > div{
		position: relative;
		overflow: visible;
		margin: 0 5px;
	}
	.flick .tbl > div:last-child::after{
		position: absolute;
		content: '';
		top: 0;
		left: 100%;
		height: 1px;
		width: 5px;
		background-color: transparent;
	}
	#flick_sp img{	width: calc(60vw); height: auto; min-width: 0;}
	#flick_pc img{	width: calc(87vw); height: auto;}

}
