@charset "utf-8";
/* **************************************************************** *
 * @desc@ グローバルフッタ
 * @edit@ 2018/10/17
 * **************************************************************** */
#Footer{
	box-sizing:border-box;
	position:relative;
	padding:70px 20px 20px;
	width:100%;
	min-width:1280px;
	background:#000 url(../img/ft/bg.png) left bottom no-repeat;
	color:#fff;
	font-size:1.4rem;
	line-height:1.6em;
	text-align:center;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
	#Footer{
		padding:70px 20px 100px;
		min-width:0;
		background-size:105px auto;
		font-size:1.2rem;
		line-height:1.6em;
	}
}
/* ================================================================ *
 * @desc@ 仕様 / CONTENTS / REGULATION
 * ================================================================ */
#Footer>.mainBox{
	display:table;
	table-layout:fixed;
	margin:0 auto;
	padding:0;
	text-align:left;
}
#Footer>.mainBox>.spec{
	display:table-cell;
	margin:0;
	padding:0 50px;
	width:600px;
	font-size:1.6rem;
	line-height:1.6em;
	vertical-align:top;
}
#Footer>.mainBox>.spec th{
	padding:0 0 10px;
	width:120px;
	font-weight:bold;
	letter-spacing:2px;
	text-indent:2px;
	vertical-align:top;
}
#Footer>.mainBox>.spec td{
	padding:0 0 10px;
	vertical-align:top;
}
#Footer>.mainBox>nav{
	display:table-cell;
	margin:0;
	padding:0 50px;
	vertical-align:top;
}
#Footer>.mainBox>nav ul{
	list-style:none;
	margin:35px 0 0;
	border-left:2px solid #fff;
	padding:0 0 0 18px;
}
#Footer>.mainBox>nav li{
	list-style:none;
	margin:0;
	padding:16px 0 0;
	vertical-align:top;
	line-height:0;
}
#Footer>.mainBox>nav ul>li:first-child{
	padding-top:0;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
	#Footer>.mainBox{
		display:block;
	}
	#Footer>.mainBox>.spec{
		display:block;
		margin:0;
		padding:0;
		width:auto;
		font-size:1.6rem;
		line-height:1.6em;
		vertical-align:top;
	}
	#Footer>.mainBox>.spec table,
	#Footer>.mainBox>.spec tbody,
	#Footer>.mainBox>.spec tr{
		display:block;
	}
	#Footer>.mainBox>.spec th{
		display:block;
		border-width:1px 0;
		border-style:solid;
		border-color:rgba(255,255,255,0.4);
		padding:2px 0 1px;
		width:auto;
		text-align:center;
	}
	#Footer>.mainBox>.spec td{
		display:block;
		padding:10px 0;
	}
	#Footer>.mainBox>nav{
		display:inline-block;
		margin:20px 0 0;
		padding:0;
		width:160px;
	}
	#Footer>.mainBox>nav:first-child{
		margin-right:20px;
	}
	#Footer>.mainBox>nav ul{
		margin:20px 0 0;
		border-left:2px solid #fff;
	}
}
/* ================================================================ *
 * @desc@ バナー / 注意 / 権利表記
 * ================================================================ */
#Footer .snsBoxData{
	margin:45px 0 0;
}
#Footer .snsBoxData>div{
	margin:0 auto;
}
#Footer ul.bnList{
	list-style:none;
	margin:45px 0 0;
	padding:0;
}
#Footer ul.bnList>li{
	display:inline-block;
	margin:0;
	padding:0 15px;
	vertical-align:middle;
}
#Footer .caution{
	margin:20px 0 0;
	padding:0 20px;
}
#Footer .copy{
	margin:0;
	padding:0 20px;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
	#Footer .caution{
		margin:30px 0 0;
		padding:0;
	}
	#Footer .copy{
		padding:10px 10px 0;
		text-align:left;
	}
}
/* ================================================================ *
 * @desc@ ページトップリンク
 * ================================================================ */
#Footer .totop{
	outline:none;
	overflow:hidden;
	display:block;
	position:absolute;
	top:-45px;
	right:40px;
	z-index:20000;
	width:90px;
	height:90px;
	background:transparent url(../img/ft/bt_totop.png) center no-repeat;
	background-size:contain;
	text-indent:-9999px;
	cursor:pointer;
}
#Footer .totop.show{
	opacity:0;
	position:fixed;
	top:auto;
	bottom:45px;
}
/* ---------------------------------------------------------------- *
 * @desc@ スマホ表示
 * ---------------------------------------------------------------- */
@media screen and (max-width:640px){
	#Footer .totop{
		right:5px;
	}
}
