@charset "utf-8";

/* 大枠 */
html,
body {
	height: 100%;
	}
body {
	color: #666;
	font-size: 12px;
	}
#wrapper {
	position: relative;
	height: 100%;
	min-height: 100%;
	min-width: 962px;
	}
body > #wrapper {
	height: auto;
	}
/* リンク */
a:link    {color:#666; text-decoration: none; outline:none;}
a:visited {color:#666; text-decoration: none; outline:none;}
a:hover   {color:#999; text-decoration: underline;}
a:active  {color:#999;}
/* アクセシビリティ */
.guidance {
	left:-999px;
	position:absolute;
	width:990px;
	}
img {
	vertical-align: bottom;
	}
img {
	vertical-align: bottom;
	box-shadow: #000 0 0 0; /* ロールオーバー対応 */
	}
img, x:-moz-any-link, x:default {
    box-shadow: #000 0 0 0; /* IE7対応 */
	}
img[src="common/img/bnr_tasaki.png"] {
    display: none;
}
.mincho{
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,"Sawarabi Mincho",serif;
	position: relative;
	font-weight: normal;
	}
	
/* ▼▼▼ ヘッダー
=====================================*/
#header {
	width:100%;
	border-bottom: 1px solid #CCCCCC;
	overflow: hidden;
	}
#header_inner {
	width: 960px;
	height: 80px;
	margin: 0 auto;
	padding: 0 1px;
	position: relative;
	overflow: hidden;
	}
	/* ロゴ */
	#site_title {
		position: absolute;
		top: 19px;
		left: 0px;
		}
		
/* グローバルナビゲーション */
ul#gnav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: 30px;
	right: 0;
	clear:both;
	overflow: hidden;
	}
	#gnav li {
		padding: 0 25px;
		font-size: 16px;
		font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,"Sawarabi Mincho",serif;
		font-weight: normal;
		line-height: 1.3;
		position: relative;
		}
	#gnav li:not(:last-child){
		border-right: 1px solid #ccc;
		}
	#gnav li small{
		display: block;
		color: #ccc;
		font-size: 10px;
		-webkit-transform:scale(0.8);
		-moz-transform:scale(0.8);
		-ms-transform:scale(0.8);
		-o-transform:scale(0.8);
		transform:scale(0.8);
		-webkit-transform-origin: top left;
		-moz-transform-origin: top left;
		-ms-transform-origin: top left;
		-o-transform-origin: top left;
		transform-origin: top left;
		}
	#gnav li a:hover{
		text-decoration: none;
		}


/* ▼▼▼ メイン 「コンテンツとサイドを囲む要素」
=====================================*/
#main {
	width:962px;
	margin:0 auto;
	clear: both;
	overflow: hidden;
	}
	.top_bnr{
		border: 1.5px solid #adadad;
		box-sizing: border-box;
		margin-bottom: 32px;
	}
	.top_bnr img{
		width: 100%;
	}
	.naka {
		padding-top: 20px;
		}
		
/* コンテンツ */
#contents {
	float: right;
	width: 700px;
	overflow: hidden;
	}
	h1.title {
		margin: 20px 0 10px;
		overflow: hidden;
		}
		h1.title.line {
			padding-bottom: 30px;
			border-bottom: 1px solid #CCCCCC;
			}
	h2.subtitle {
		margin-bottom: 20px;
		clear: both;
		overflow: hidden;
		}

/* パンくず */
ol#path {
	margin-bottom: 20px;
	overflow: hidden;
	}
	ol#path li {
		float: left;
		background: url(../img/path.gif) no-repeat right center;
		padding-right: 11px;
		margin-right: 5px;
		font-size: 11px;
		}
	ol#path li.now {
		background: none;
		}
	ol#path li a,ol#path li a:visited {
		text-decoration: underline;
		}
	ol#path li a:hover {
		text-decoration: none;
		}

/* トップMV */
.bx-wrapper {
	position: relative;
	padding: 0;
}
.bx-wrapper .bx-pager{
	/* position: absolute; */
	/* bottom: -30px; */
	width: 100%;
}
.bx-wrapper .bx-pager {
	text-align: center;
	/* font-size: .85em; */
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 10px;
}
.bx-wrapper .bx-pager .bx-pager-item{
	display: inline-block;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	background: #eb3423;
	text-indent: -9999px;
	display: block;
	width: 8px;
	height: 8px;
	margin: 0 4px;
	outline: 0;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	border:2px solid #eb3423;
	text-align:left;
	overflow: hidden;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #fff;
}
/* ▼▼▼ サイド
=====================================*/
#side {
	float: left;
	width: 232px;
	overflow: hidden;
	}
	#side .back {
		padding: 0 1px 5px;
		border-bottom: 1px solid #CCCCCC;
		font-size: 11px;
		}
		#side .back.noline {
			border-bottom: none;
			}
	#side .back a,#side .back a:visited {
		background: url(../img/arrow04.gif) no-repeat left center;
		padding-left: 10px;
		}
/* 中ページ */
dl.menu {
	padding: 0 1px;
	margin-bottom: 25px;
	overflow: hidden;
	}
dl.menu dt {
	margin-bottom: 1px;
	}
ul.menu_inner li {
	background: url(../../common/img/bg_menu02.png) repeat;
	height: 30px;
	line-height: 30px;
	margin-bottom: 1px;
	}
	ul.menu_inner li a,ul.menu_inner li a:visited {
		display: block;
		color: #333;
		}
	ul.menu_inner li a:hover {
		background: url(../../common/img/bg_menu01.png) repeat;
		color: #333;
		}
	ul.menu_inner li a span {
		margin-left: 10px;
		background: url(../../common/img/arrow_menu.gif) no-repeat left center;
		padding-left: 9px;
		}
ul.menu_inner li.now {
	background: url(../../common/img/bg_menu01.png) repeat;
	}
p.bnr,p.bnr02 {
	margin-bottom: 15px;
	overflow: hidden;
	text-align: center;
	line-height: 1.5;
	}
	p.bnr02 {
		margin-bottom: 10px;
		}

/* ▼▼▼ フッター
=====================================*/
#footer {
	width:100%;
	margin:0 auto;
	clear: both;
	overflow: hidden;
	}
#footer_inner {
	background: #333;
	padding: 15px 0;
	position: relative;
	overflow: hidden;
	}
	#footer_inner > div{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		width:960px;
		margin:0 auto 15px;
		}
	#footer_inner > div a{
		color: #fff;
		}		
	#footer_inner > div ul.fnav_list:not(:last-child){
		margin-right: 150px;
		}
	#footer_inner > div ul.fnav_list li p{
		margin: 0 0 10px;
		}
	#footer_inner > div ul.fnav_list ul{
		margin: 0 0 20px;
		}
	#footer_inner > div ul.fnav_list ul li{
		margin: 0 0 5px;
		}
	#footer_inner > div ul.fnav_list ul li a,
	#footer_inner > div ul.fnav_list ul li a:visited {
		background: url(../img/arrow02.gif) no-repeat left center;
		padding-left: 12px;
		}
	#footer_inner ul.fnav_list li a span {
		background: url(../img/icon.gif) no-repeat right center;
		padding-right: 18px;
		}
ul.bnav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	width: 960px;
    margin: 10px auto 25px;
	overflow: hidden;
	}
	ul.bnav li {
		margin-left: 30px;
		font-size: 11px;
		}
		ul.bnav li a,
		ul.bnav li a:visited {
			background: url(../img/arrow01.gif) no-repeat left center;
			padding-left: 12px;
			vertical-align: middle;
			}
		ul.bnav li a span {
			background: url(../img/icon02.gif) no-repeat right center;
			padding-right: 18px;
			}


/* ▼ ページ上部へ戻る */
.pagetop {
	float: right;
	width: 200px;
	margin: 25px auto 10px;
	padding: 0 1px;
	text-align: right;
	clear: both;
	overflow: hidden;
	}
	.pagetop a,.pagetop a:visited {
		background: url(../img/arrow03.gif) no-repeat left center;
		padding-left: 11px;
		}
	.pagetop a:hover {
		background: url(../img/arrow03_over.gif) no-repeat left center;
		color: #666666;
		}
		
/* ▼ コピーライト */
#copyright {
	width: 960px;
	margin: 0 auto;
	color: #fff;
	text-align: right;
	font-family: "MS Mincho",serif;
	clear: both;
	overflow: hidden;
	}

/* ▼▼▼ トップ
=====================================*/
/* メインビジュアル */
#visual {
	width: 960px;
	height: 306;
	margin: 10px auto;
	overflow: hidden;
	}
#visual ul {padding-left: 0;}

#map {
/* 	height: 214px; */
/* 	background: url(../img/top/map.png) no-repeat left top; */
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
	}
	#map p {
		position: absolute;
		bottom: 24px;
		}
	#map .m01 {left: 25px;}
	#map .m02 {right: 25px;}

#menu {
	height: 512px;
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
	}
	#menu p {position: absolute;}
	#menu .mn01,#menu .mn03,#menu .mn05,#menu .mn08 {top: 0;}
	#menu .mn02,#menu .mn04,#menu .mn07 {bottom: 0;}
	#menu .mn01,#menu .mn02 {left: 0;}
	#menu .mn03,#menu .mn04 {left: 242px;}
	#menu .mn05,#menu .mn06,#menu .mn07 {left: 484px;}
	#menu .mn08,#menu .mn09 {left: 726px;}
	#menu .mn06 {top: 210px;}
	#menu .mn09 {top: 108px;}
	
#info {
	width: 960px;
	margin: 0 auto;
	padding: 150px 0;
	line-height: 1.5;
	text-align: center;
	overflow: hidden;
	}
	#info .date_mainte {
		margin: 5px 0 30px;
		}
	#info .mainte {
		color: #333;
		font-size: 14px;
		margin-bottom: 20px;
		}
	#info a,#info a:visited {
		margin-right: 5px;
		text-decoration: underline;
		}