@charset "UTF-8";
/* **************************************************************** *
 * @desc@ レイアウト
 * @edit@ 2016/03/07
 * **************************************************************** */
body{
	background:#FFF url(image/body.jpg) no-repeat center top;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ用
 * ---------------------------------------------------------------- */
@media screen and (max-width:767px){
	body{
		background:#1e1e1e;
		background-size:950px 500px;
		-webkit-text-size-adjust:none;
		text-size-adjust:none;
	}
	body#topPage{
		background:#1e1e1e;
	}
}
/* ================================================================ *
 * @desc@ ベース
 * ================================================================ */
#contentAll{
	position:relative;
	width:100%;
}
#contentBodyWrapper{
	margin:110px auto 40px;
	padding:0 0 35px;
	width:934px;
	background:transparent url(image/bogy_bg03.png) no-repeat center bottom;
}
#contentBodyWrapper.wideVer{
	margin:125px auto 0px;
	padding:30px 0 0;
	width:954px;
	background:transparent url(image/bogy_bg02.png) no-repeat center top;
}
#contentBody{
	margin:0px auto;
	padding:0 7px;
	width:920px;
	background:transparent url(image/bogy_bg04.png) repeat-y;
	color:#fff;
}
#contentBody:after{
	clear:both;
	display:block;
	content:" ";
}
.wideVer #contentBody{
	margin:0px auto;
	padding:0 27px 27px;
	width:900px;
	background:transparent url(image/body_bg01.png) repeat-y;
	color:#fff;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ用
 * ---------------------------------------------------------------- */
@media screen and (max-width:767px){
	#contentAll{
		overflow-x:hidden;
	}
	#contentBodyWrapper{
		position:relative;
		margin:55px 0 0;
		border-top:1px solid #999;
		padding:0;
		width:100%;
		background:-moz-linear-gradient(top,rgba(30,30,30,1) 0%,rgba(45,45,45,1) 100%);
		background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(30,30,30,1)),color-stop(100%,rgba(45,45,45,1)));
		background:-webkit-linear-gradient(top,rgba(30,30,30,1) 0%,rgba(45,45,45,1) 100%);
		background:-o-linear-gradient(top,rgba(30,30,30,1) 0%,rgba(45,45,45,1) 100%);
		background:-ms-linear-gradient(top,rgba(30,30,30,1) 0%,rgba(45,45,45,1) 100%);
		background:linear-gradient(to bottom,rgba(30,30,30,1) 0%,rgba(45,45,45,1) 100%);
		filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e1e1e',endColorstr='#2d2d2d',GradientType=0);
	}
	#contentBodyWrapper:before{
		position:absolute;
		left:0;
		top:-55px;
		width:100%;
		height:54px;
		background:#1e1e1e url(image/body.jpg) no-repeat center -45px;
		background-size:950px 500px;
		content:"";
	}
	#contentBodyWrapper.wideVer{
		margin:0;
		padding:0;
		width:100%;
		background:#2d2d2d;
	}
	#contentBodyWrapper.wideVer:before{
		display:none;
	}
	#contentBody{
		margin:0;
		padding:0 5px;
		width:auto;
		background:none;
		color:#fff;
	}
	.wideVer #contentBody{
		margin:0;
		padding:0;
		width:auto;
		background:none;
		color:#fff;
	}
/*
	@media screen and (-webkit-min-device-pixel-ratio:0){
		.wideVer #contentBody{
			background:url(image/body_bg01.png) repeat-y scroll 0 0 rgba(0,0,0,0) !important;
		}
	}
 */
	#topPage #contentBody{
		width:100%;
	}
}
/* ================================================================ *
 * @desc@ メイン
 * ================================================================ */
#contentBodyMain{
	float:right;
	width:700px;
}
#topPage #contentBodyMain{
	float:left;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ用
 * ---------------------------------------------------------------- */
@media screen and (max-width:767px){
	#contentBodyMain{
		float:none;
		width:auto;
	}
	#topPage #contentBodyMain{
		width:100%;
	}
}
/* ================================================================ *
 * @desc@ ナビ
 * ================================================================ */
#contentBodyNavi{
	float:left;
	border:1px solid rgba(0,0,0,0.5) !important;
	width:200px;
	box-shadow:0 0 2px #f00;
}
#topPage #contentBodyNavi{
	float:right;
	border:none !important;
	box-shadow:none !important;
}
#contentBodyNavi .sideNaviContent{
	border-bottom:1px solid #000;
}
#contentBodyNavi .sideNaviContent:nth-last-of-type(1){
	border:none;
}
#contentBodyNavi .sideNaviContent p{
	position:relative;
	border:1px solid #ff0000;
	padding:1px;
	background:rgb(91,2,2);
	background:-moz-linear-gradient(top,rgba(91,2,2,1) 0%,rgba(225,0,0,1) 100%);
	background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(91,2,2,1)),color-stop(100%,rgba(225,0,0,1)));
	background:-webkit-linear-gradient(top,rgba(91,2,2,1) 0%,rgba(225,0,0,1) 100%);
	background:-o-linear-gradient(top,rgba(91,2,2,1) 0%,rgba(225,0,0,1) 100%);
	xbackground:-ms-linear-gradient(top,rgba(91,2,2,1) 0%,rgba(225,0,0,1) 100%);
	xbackground:linear-gradient(to bottom,rgba(91,2,2,1) 0%,rgba(225,0,0,1) 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ff5b0202',endColorstr='#ffe10000');
	background:linear-gradient(to bottom,#5b0202,#e10000) !important;
	text-align:center;
}
#contentBodyNavi .sideNaviContent p:hover{
	background:-moz-linear-gradient(center top,#E10000 0%,#5B0202 100%) repeat scroll 0 0 rgba(0,0,0,0) !important;
}
#contentBodyNavi .sideNaviContent p:before{
	position:absolute;
	left:1px;
	top:1px;
	width:25px;
	height:38px;
	background:transparent url(image/sidenavi_parent_bg01pc.gif) no-repeat;
	content:"";
}
#contentBodyNavi .sideNaviContent p:after{
	position:absolute;
	right:1px;
	top:1px;
	width:25px;
	height:38px;
	background:transparent url(image/sidenavi_parent_bg02pc.gif) no-repeat;
	content:"";
}
#contentBodyNavi .sideNaviContent p img{
	width:auto;
	height:22px;
}
#contentBodyNavi .sideNaviContent p a{
	display:block;
	padding:9px 0 2px !important;
	background:transparent url(image/sidenavi_parent_bg03pc.gif) no-repeat center top;
	transition:none;
	-webkit-transition:none;
}
#contentBodyNavi .sideNaviContent ul{
	display:none;
	border-left:1px solid #969696;
	border-right:1px solid #969696;
	width:198px;
	background:#000;
}
#contentBodyNavi .sideNaviContent.on ul{
	display:block;
}
#contentBodyNavi ul li a{
	position:relative;
	display:block;
	border-top:1px solid #333;
	padding:6px 10px;
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
	transition:none;
	-webkit-transition:none;
}
#contentBodyNavi ul li a:hover,
#contentBodyNavi ul li a.on{
	background:#282828 url(image/sidenavi_child_bg02pc.gif) no-repeat center bottom;
	color:#fff;
}
#contentBodyNavi ul li a:hover:after,
#contentBodyNavi ul li a.on:after{
	position:absolute;
	left:0px;
	top:0px;
	width:198px;
	height:11px;
	background:transparent url(image/sidenavi_child_bg01pc.gif) no-repeat;
	content:"";
}
#contentBodyNavi .sideNaviContent ul li:nth-child(2n){
	background-color:#000 !important;
}
#contentBodyNavi ul.bannerArea li{
	display:block;
	margin-bottom:10px;
}
#contentBodyNavi ul.bannerArea li a{
	position:relative;
	display:block;
	padding:0px;
	font-size:0px;
	transition:none;
	-webkit-transition:none;
}
#contentBodyNavi ul.bannerArea li a:hover,
#contentBodyNavi ul.bannerArea li a.on{
	background:none;
}
#contentBodyNavi ul.bannerArea li a:hover:after,
#contentBodyNavi ul.bannerArea li a.on:after{
	position:absolute;
	left:0px;
	top:0px;
	width:0px;
	height:0px;
	background:none;
	content:"";
}
#contentBodyNavi ul.bannerArea li:nth-child(2n){
	background-color:transparent;
}
#contentBodyNavi #CardPC{
	display:block;
	margin-bottom:10px;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ用
 * ---------------------------------------------------------------- */
@media screen and (max-width:767px){
	#contentBodyNavi{
		float:none !important;
		width:auto;
		padding-bottom:10px;
	}
	#contentBodyNavi .sideNaviContent p:before{
		left:1px;
		top:1px;
		width:25px;
		height:40px;
		background:transparent url(image/sidenavi_parent_bg01sp.gif) no-repeat;
		background-size:25px 40px;
	}
	#contentBodyNavi .sideNaviContent p:after{
		right:1px;
		top:1px;
		width:25px;
		height:40px;
		background:transparent url(image/sidenavi_parent_bg02sp.gif) no-repeat;
		background-size:25px 40px;
	}
	#contentBodyNavi .sideNaviContent p a{
		padding:9px 0 3px !important;
		background:transparent url(image/sidenavi_parent_bg03sp.gif) no-repeat center top;
		background-size:750px 40px;
	}
	#contentBodyNavi .sideNaviContent ul{
		width:auto;
		background:#000;
	}
	#contentBodyNavi ul li{
		padding:1px;
	}
	#contentBodyNavi ul li a{
		display:block;
		position:relative;
		border:1px solid transparent;
		padding:10px 15px;
		font-size:14px;
		font-weight:bold;
		text-decoration:none;
	}
	#contentBodyNavi ul li a:hover,
	#contentBodyNavi ul li a.on{
		display:block;
		border:1px solid #ff0000;
		background-color:#282828;
		background-image:
			url(image/sidenavi_child_c01sp.gif),
			url(image/sidenavi_child_c02sp.gif),
			url(image/sidenavi_child_c03sp.gif),
			url(image/sidenavi_child_c04sp.gif);
		background-repeat:no-repeat;
		background-position:
			top left,
			bottom left,
			top right,
			bottom right;
		background-size:11px 11px;
		color:#fff;
	}
	#contentBodyNavi ul li a:hover:after,
	#contentBodyNavi ul li a.on:after{
		display:none;
	}
	#contentBodyNavi ul li:nth-child(2n){
		background-color:#282828;
	}
	#contentBodyNavi ul.bannerArea li{
		display:inline-block;
		margin:0;
		padding:0;
		width:50%;
		text-align:center;
	}
	#contentBodyNavi ul.bannerArea li img{
		max-width:100%;
		height:auto;
	}
	#contentBodyNavi ul.bannerArea li a{
		margin:0px 5px;
		border:none;
	}
	#contentBodyNavi ul.bannerArea li a:hover{
		border:none;
	}
	#contentBodyNavi ul.bannerArea li.forPC{
		display:none;
	}
}
/* ================================================================ *
 * @desc@ toTop
 * ================================================================ */
#totop{
	position:fixed;
	bottom:-180px;
	right:30px;
	z-index:1000;
	width:180px;
	height:158px;
	background:url(../img/totop.png) 0 0 no-repeat;
	text-indent:-9999px;
	cursor:pointer;
	-moz-transition:bottom 0.5s cubic-bezier(0.210,0.000,0.000,1.000);
	-webkit-transition:bottom 0.5s cubic-bezier(0.210,0.000,0.000,1.000);
	transition:bottom 0.5s cubic-bezier(0.210,0.000,0.000,1.000);
}
#totop:hover{
	background:url(../img/totop.png) -180px 0 no-repeat;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ用
 * ---------------------------------------------------------------- */
@media screen and (max-width:767px){
	#totop{
		display:none;
	}
}
