@charset "utf-8";
/* CSS Document */
/*================================================
 *  グローバルナビゲーション
 ================================================*/
@media print, screen and (min-width:768px) {
	nav {
background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #003F97), color-stop(1.00, #0057CC));
background: -webkit-linear-gradient(#003F97, #0057CC);
background: -moz-linear-gradient(#003F97, #0057CC);
background: -o-linear-gradient(#003F97, #0057CC);
background: -ms-linear-gradient(#003F97, #0057CC);
background: linear-gradient(#003F97, #0057CC);

		z-index:3;
	}
	

	/* 共通 */
	nav ul {
		margin:0;
		padding:0;
		max-width: 1100px;
	}

	nav ul li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
	}

	nav ul li a {
		display:block;
		margin:0;
		padding:16px 0;
background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #003F97), color-stop(1.00, #0057CC));
background: -webkit-linear-gradient(#003F97, #0057CC);
background: -moz-linear-gradient(#003F97, #0057CC);
background: -o-linear-gradient(#003F97, #0057CC);
background: -ms-linear-gradient(#003F97, #0057CC);
background: linear-gradient(#003F97, #0057CC);

		color:#fff;
		font-size:14px;
		font-weight:bold;
		line-height:1;
		text-decoration:none;
	}

	nav ul li:hover > a {
		color:#fff;
		background:#4965D3;
	}

	/* 1段目 */
	nav ul.gnav > li {
		position:relative;
		width:12.5%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;
	}

	nav ul.gnav > li:first-child {
		width:12.5%;
	}

	nav ul.gnav > li.subnav a {
		padding-right:20px;
	}

	nav ul.gnav > li.subnav > a:after {
		position:absolute;
		content:"";
		top:20px;
		width:0;
		height:0;
		margin-left:10px;
		border:5px solid transparent;
		border-top-color:#fff;
	}

	/* 2段目 */
	nav ul li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:168%;
		margin:0;
		padding:0;
	}

	nav ul li ul li {
		overflow:hidden;
		width:100%;
		height:0;
		color:#fff;
		transition:.2s;
	}

	nav ul li ul li a {
		padding:13px 15px;
		text-align:left;
		background:#6996E7;
		font-weight:normal;
	}

	nav ul li:hover > ul > li {
		overflow:visible;
		height:40px;
		border-bottom:1px solid #6188DA;
	}

	nav ul li:hover ul li:last-child {
		border-bottom:none;
	}

	nav ul.gnav > li:last-child > ul {
		left:-0%;
	}

	nav ul li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#fff;
	}

	/* 2段目-2行 */
	nav ul li:hover > ul > li.nigyo {
		height:54px !important;
		padding-bottom: 0;
	}
	
	/* 2段目-3行 */
	nav ul li:hover > ul > li.sangyo {
		height:54px;	
		padding-bottom: 16px;	
	}	

	nav ul.gnav > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#fff;
	}

	/* 3段目 */
	nav ul li ul li ul {
		top:0;
		left:100%;
	}

	nav ul li ul li ul li {
		width:100%;
	}

	nav ul li ul li:hover > ul > li {
		border-bottom:1px solid #6d0c0c;
	}

	nav ul.gnav > li:last-child > ul li ul {
		left:-100%;
	}

	nav ul li ul li ul li a {
		background:#590000;
	}

	nav ul li ul li ul li a:hover {
		background:#420404;
	}

	.gnav {
		display:block !important;
	}

	#spMenu {
		display:none;
	}

	.fixed {
		position:fixed;
		top:0;
		left:0;
	}
	
	.gnav {
	display: block;
	width: 1100px;
	margin-right: auto;
	margin-left: auto;
	}
}



/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu ul {}


.submenu li {
	margin:0;
	padding:0;
	
}
.submenu li a:before {	
	color:#000;
}

.submenu li a {
	display: block;
	padding: 7px 10px 7px 22px;
	background : url(../images/rn-icon-arrow-s.png) left 10px top 4px no-repeat ;
	color: #000;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color:#C3C1C1;
	font-size: 0.85em;
	border-right: #C3C1C1 solid 1px;
    border-left: #C3C1C1 solid 1px;
}


.submenu li a:hover {
	background-color: #F9F9F9!important;
}


.submenu li a.active {
	background-color:#E2E8EE;
}

.submenu02 {
    background : url(../images/rn-icon-arrow-s2.png) left 10px top 4px no-repeat !important;
}

#submenu02-active {
	background : url(../images/rn-icon-arrow-s2.png) left 10px top 4px no-repeat !important;
	background-color:#E2E8EE!important;
}

.bnr {
	overflow:hidden;
}
.bnr ul {
	overflow:hidden;
}
.bnr li {
	margin:0 0 10px 0;
	padding:0;
	list-style:none;
}
.bnr li a:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha( opacity=80 )";
}
.bnr img {
	width:100%;
}




/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
	
nav {
	background: #4965D3;
	
	}
	nav ul {
	padding: 0;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	overflow: auto;	
		height:100%;
		overflow-y: scroll;  
		-webkit-overflow-scrolling: auto;	
		max-height: 400px; 
		
		}

	nav .inner > ul {
		z-index:2;
		position:relative;
		top:136px;
		right:0;
		width:100%;
		height:100%;
		height:-webkit-calc(100% - 53px);
		height:calc(100% - 53px);			
		
	}
	nav li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #6188DA;
		background:#9b0f0f;
		color:#fff;

	}

	nav li:first-child {
		border-top:0;
	}
	nav li:last-child {
		border-bottom:0;
	}

	nav li a {
	display: block;
	padding: 10px 30px;
	color: #fff;
	text-decoration: none;
	background: #4965D3;
	font-weight: 400;
	font-size: 15px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
	nav li a:hover {
	color: #fff;
	background:#4654CE;
	}
	nav ul ul {
		display:none;
		position:relative;
	}
	nav li li a {
		box-sizing:border-box;
		background-color:#6996E7;
		width:100%;
		padding:10px 30px 10px 50px;
		text-align:left;
		color:#fff;
	}

	nav li li li a {
		padding:10px 30px 10px 70px;
		color:#fff;
	}

	.subnav > a:before {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-5px;
		background:#f1f1f1;
	}
	.subnav > a:after {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-10px;
		background:#4965D3;
	}
	.subnav a:hover:after {
	  background:#4654CE;
	}

	.active > a:before {
		margin-top:0;
	}
	.active > a:after {
		margin-top:5px;
	}

	.gnav {
		display:none;
	}

	#spMenu {
	display: block;
	z-index: 2;
	position: relative;
	top: 0px;
	right: 0px;
	overflow: hidden;
	clear: left;
	width: 100%;
	}
	#spMenu:hover {
		cursor:pointer;
	}

	#navBtn {
	display: inline-block;
	width: 100%;
	height: 40px;
	background-color: #4965D3;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	}
	#navBtnIcon {
	display: block;
	position: absolute;
	top: 46%;
	left: 20px;
	width: 20px;
	height: 2px;
	margin: -1px 0 0 -7px;
	background: #f1f1f1;
	transition: .2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:20px;
		height:2px;
		background:#f1f1f1;
		transition:0.3s;
	}
	#navBtnIcon:before {
		margin-top:-8px;
	}
	#navBtnIcon:after {
		margin-top:6px;
	}
	#navBtn .close {
		background:transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top:0;
	}
	#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
	#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}	
	
		.navBtn-menu{
	margin-left: 40px;
	font-size: 15px;
	font-weight: bold;
	color: #FFF;
	vertical-align: middle;
	display: block;
	line-height: 40px;
	}
	
	
	
	
}

















