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

/** ALL **/
body{	background: #fff;}
header{	height: 120px; margin-bottom: 0;}
.pan{
	position: relative;
	margin-top: -24px;
	z-index: 1;
}


/** info **/

#result{}

#result h3{
	display: inline-block;
	vertical-align: top;
	font-family: "Rounded Mplus 1c";
	font-size: 30px;
	font-weight: normal;
	line-height: 1.2;
	color: #fff;
	margin: 0 0 30px 0;
}
#result h3 a{
	color: #fff;
	text-decoration: none;
	position: relative;
}
#result h3 a::before,
#result h3 a::after {
	background-color: #fc4390;
	bottom: -4px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
	width: 100%;
	border-radius: 5px;
}
#result h3 a::before{
	background-color: #444;
	transform: scale(1, 1);
}
#result h3 a:hover::after {
	transform: scale(1, 1);
}

#pc{
	padding: 50px 0 10px 0;
	background: -webkit-linear-gradient(-90deg, #151515 0%, #333333 100%);
	background: -moz-linear-gradient(-90deg, #151515 0%, #333333 100%);
	background: -o-linear-gradient(-90deg, #151515 0%, #333333 100%);
	background: -ms-linear-gradient(-90deg, #151515 0%, #333333 100%);
	background: linear-gradient(180deg, #151515 0%, #333333 100%);
}

#sp{
	padding: 80px 0 50px 0;
	background: url(img/slide_bg.gif) top center;
}

.slide_bg{
	font-size: 0;
	line-height: 0;
}

.slide_in{
	position: relative;
	display: inline-block;
	vertical-align: top;
	background: #434343;
	width: 770px;
	margin: 0 auto 100px auto;
	padding: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.resbt{
	display: block;
	margin-bottom: 30px;
}

.resbt a{
	position: relative;
	z-index: 1;
	display: inline-block;
	vertical-align: top;
	width: 260px;
	font-size: 16px;
	font-weight: normal;
	line-height: 36px;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 20px;
	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 a:hover{
	text-decoration: none;
	color: #ffffff;
	border: 2px solid #fc4390;
}

.resbt a:before,
.resbt a:after {
	content: '';
	background: #fc4390;
	position: absolute;
	z-index: -1;
	border-radius: 20px;
	-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;
}

.resbt a:after{
	height: 0;
	left: 50%;
	top: 50%;
	width: 0;
}

.resbt a:hover:after{
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
}


/** 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;
}

.flick{
	position: relative;
	display: inline-flex;
	font-size: 0;
	line-height: 0;
	padding: 10px 5px;
	background: none;
	margin: 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: 221px;
	min-width: calc(100% / 5 - 10px);
}
#flick_sp_bg.slide_in{
	width: auto;
	margin-bottom: 50px;
	padding: 0;
}


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

@media screen and (max-width: 650px) {

	.pan{ margin-top: 0px;}

	/** ALL **/
	body::before,
	body::after{	display: none;}
	header,header.fixed{	height: 0;}
	main{	padding: 78px 0 0 0;}

	/** info **/
	#result{}
	#result .h3_bg{
		display: table;
		width: calc(100% - 20px);
		margin: 0 10px 10px 10px;
	}
	#result h3{
		display: table-cell;
		vertical-align: middle;
		font-size: 24px;
		margin: 0;
		padding: 0 10px;
	}
	#pc{	padding: 25px 0 10px 0;}
	#sp{
		padding: 25px 0 10px 0;
		background: -webkit-linear-gradient(-90deg, #151515 0%, #333333 100%);
		background: -moz-linear-gradient(-90deg, #151515 0%, #333333 100%);
		background: -o-linear-gradient(-90deg, #151515 0%, #333333 100%);
		background: -ms-linear-gradient(-90deg, #151515 0%, #333333 100%);
		background: linear-gradient(180deg, #151515 0%, #333333 100%);
	}
	.slide_in{
		background: none;
		margin: 0 auto;
		padding: 0;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	#pc .slide_in{	width: 100%;}
	#sp .slide_bg{	padding: 0 10px;}
	#sp .slide_in{
		width: 50%;
		margin: 0;
	}
	#sp .slide_in:nth-of-type(1){	padding-right: 5px;}
	#sp .slide_in:nth-of-type(2){	padding-left: 5px;}
	#sp .slide_in img{
		width: 100%;
		height: auto;
	}
	.resbt{
		display: block;
		margin-bottom: 10px;
	}
	#pc .slide_bg{	margin-bottom: 10px;}
	#sp .slide_bg{	margin-bottom: 10px;}
	.resbt a:hover{
		text-decoration: none;
		color: #ffffff;
		border: 2px solid #ffffff;
		background: #none;
	}
	.resbt a:before,
	.resbt a:after {
		display: none;
	}


	/** 201116 **/
	#site_pc{	display: none;}
	#flick_pc{	display: flex;}
	#pc #flick_sp{	margin-bottom: 0; width: 100%;}
	.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;}
	#flick_sp_bg.slide_in{
		display: block;
		width: auto;
		margin-bottom: 10px;
	}
}
