/* Flexnav Base Styles */

/* ------------------------------
 スマホ用
------------------------------ */
@media only screen and (max-width: 767px) {
	.flexnav {
		position: relative;
		font-size:120%;
		left: 0;
		display: none;
		text-align: left;
		z-index:60; 
	}
	.flexnav br {
		display: none;
	}
	.flexnav li a {
		position: relative;
		display: block;
		padding: .86em;
		z-index: 2;
		overflow: hidden;
		color: #2b2b2b;
		text-decoration: none;
		padding-left: 2.3em;
		background: #FFF url(/shared/img/icon06.png) no-repeat 1em center;
		background-size: 12px 18px ;
	}
	.flexnav ul {
		margin: 0;
		display: none;
	}
	.flexnav li {
		position: relative;
		background: #fff;
		border-bottom: 1px solid #e0e0e0;
	}
	.flexnav span {
		display: block;
	}
	.flexnav li ul{
		background: #F1F1F1;
		border-top: 1px solid #e0e0e0;
	}
	.flexnav li ul li:last-child {
		border-bottom: 1px solid #e0e0e0;
	}
	.flexnav li ul li a {
		display: block;
		padding-left: 1.3em;
		background: #F1F1F1 url(/shared/img/icon06.png) no-repeat 0 center;
		background-size: 12px 18px ;
	}
	.flexnav li ul{
		background: #F1F1F1;
	}
	.flexnav li ul li {
		border-bottom: 1px dotted #999999;
		margin: 0 1em;
	}
	.flexnav li ul li:last-child {
		border-bottom: none;
	}
	.flexnav .touch-button {
		display: block;
		padding: 0;
		position: absolute;
		top: 0;
		right: 0;
		border: none;
		z-index: 999;
		line-height: 1.6em;
	}
	.flexnav .touch-button a {
	    background: none;
		border: none;
		padding: 0.8em 0.96em;
	}
	.menu-button {
		width: 100%;
		display: block;
		cursor: pointer;
		height: 35px;
		border-top: solid 1px #CCCCCC;
		border-bottom: solid 8px #006421;
		font-family: Arial;
		font-weight: bold;
		font-size: 140%;
		padding: 0.8em 0 0.2em 0;
		background: url(../img/header_bg.gif) repeat-x 0 0; 
		box-shadow:rgba(0, 0, 0, 0.2) 0px 2px 2px 0px; 
		-webkit-box-shadow:rgba(0, 0, 0, 0.2) 0px 2px 2px 0px; 
		-moz-box-shadow:rgba(0, 0, 0, 0.2) 0px 2px 2px 0px; 
	}
	.menu-button p{
		padding-left: .86em;
		position: relative;
	}
	.menu-button p img{
		position: absolute;
		right: .8em;
		top: 0;
	}
	.menu01, .menu01on{
		display: none !important;
	}
	.menu-button img, .touch-button img{
		width: 22px;
		height: 22px;
	}
}
/* ------------------------------
 767px以上のPC
------------------------------ */
@media all and (min-width: 768px) {
	.flexnav {
		-webkit-transition: none;
		-moz-transition: none;
		-ms-transition: none;
		transition: none;
		-webkit-transform-style: preserve-3d;
		overflow: hidden;
		margin: 0 auto;
		width: 100%;
		max-height: 0;
		z-index: 10 !important;
		position: relative;
		font-size: 107.7%;
		overflow: visible;
	}
	.flexnav li {
		font-size: 100%;
		position: relative;
		overflow: hidden;
		list-style: none;
		float: left;
		display: block;
		overflow: visible;
	}
	.flexnav li a {
		position: relative;
		display: block;
	}
    .flexnav li > ul {
		position: absolute;
		top: auto;
		left: -1px;
		margin: 0 0 0 2px;
		display: none;
	}
	.flexnav li:first-child > ul {
		left: 0;
	}
    .flexnav li > ul li {
		white-space : nowrap;
		width: 100%;
		display : block;
		padding: 0 17px;
		border-left: 1px solid #e0e0e0;
		border-right: 1px solid #e0e0e0;
		background: #fff;
	}
	.flexnav li ul li a {
		width: auto;
		height: auto;
		position: relative;
		display: block;
		z-index: 2;
		overflow: hidden;
		color: #333333;
		text-decoration: none;
		padding:  1em 1.6em 1em 14px;
		background: url(/shared/img/icon04.gif) no-repeat 0 1.2em !important; 
		border-bottom: dotted 1px #999999;
	}
	
    .flexnav li > ul li:last-child {
		border-bottom: none;
		border-radius: 0 0 8px 8px / 0 0 8px 8px;
		border-bottom: 1px solid #e0e0e0;
	}	
	.flexnav li > ul li:last-child  a{
	border-bottom: none;

	}	
	.flexnav li ul li a:hover { 
		font-weight: bold;
	}
	.flexnav li ul.menu02 li a:hover {background: url(/shared/img/icon05.png) no-repeat 0 1.2em !important;}
	.flexnav li ul.menu03 li a:hover {background: url(/shared/img/icon_blue.png) no-repeat 0 1.2em !important;}
	.flexnav li ul.menu04 li a:hover {background: url(/shared/img/icon_darkblue.png) no-repeat 0 1.2em !important;}
	.flexnav li ul.menu05 li a:hover {background: url(/shared/img/icon_purple.png) no-repeat 0 1.2em !important;}
	.flexnav li ul.menu06 li a:hover {background: url(/shared/img/icon_beige.png) no-repeat 0 1.2em !important;}
	.flexnav li ul.menu07 li a:hover {background: url(/shared/img/icon03.gif) no-repeat 0 1.2em !important;}
	.menu-button, .touch-button {
		display: none;
	}
/* ------------------------------
 グローバルメニュー
------------------------------ */
ul.flexnav li span a{
	height: 0 !important;
	height /**/: 50px;
	padding: 50px 0 0;
	overflow: hidden;
}

#globalnavi {
	width: 980px;
	margin: 0 auto;
}	
ul.flexnav li span.menu01 a{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 0 !important;
}
ul.flexnav li span.menu01 a:hover,
ul.flexnav li span.menu02on a:hover{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 -50px !important;
}
ul.flexnav li span.menu01on a{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 -50px !important;
}
ul.flexnav li span.menu02 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px 0 !important;
}
ul.flexnav li span.menu02 a:hover,
ul.flexnav li span.menu02on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px -50px !important;
}
ul.flexnav li span.menu02on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px -50px !important;
}
ul.flexnav li span.menu03 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px 0 !important;
}
ul.flexnav li span.menu03 a:hover,
ul.flexnav li span.menu03on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px -50px !important;
}
ul.flexnav li span.menu03on a {
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px -50px !important;
}
ul.flexnav li span.menu04 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -362px 0 !important;
}
ul.flexnav li span.menu04 a:hover,
ul.flexnav li span.menu04 a:hover{
	background: url(../img/gnavi.gif) no-repeat -362px -50px !important;
}
ul.flexnav li span.menu04on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -362px -50px !important;
	
}
ul.flexnav li span.menu05 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px 0 !important;
}
ul.flexnav li span.menu05 a:hover,
ul.flexnav li span.menu05on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px -50px !important;
}
ul.flexnav li span.menu05on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px -50px !important;
}
ul.flexnav li span.menu06 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px 0 !important;
}
ul.flexnav li span.menu06 a:hover,
ul.flexnav li span.menu06on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px -50px !important;
}
ul.flexnav li span.menu06on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px -50px !important;
}
ul.flexnav li span.menu07 a{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px 0 !important;
}
ul.flexnav li span.menu07 a:hover,
ul.flexnav li span.menu07on a:hover{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px -50px !important;
}
ul.flexnav li span.menu07on a{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px -50px !important;
}
}

.oldie .flexnav {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	transition: none;
	-webkit-transform-style: preserve-3d;
	overflow: hidden;
	margin: 0 auto;
	width: 100%;
	max-height: 0;
	z-index: 10 !important;
	position: relative;
	font-size: 107.7%;
	overflow: visible;
}

.oldie .flexnav li {
	font-size: 100%;
	position: relative;
	overflow: hidden;
	position: relative;
	list-style: none;
	float: left;
	display: block;
	overflow: visible;
}

.oldie .flexnav li a {
	position: relative;
	display: block;
}

.oldie .flexnav li > ul {
	position: absolute;
	top: auto;
	left: 0;
	margin: 0;
	display: none;
}

.oldie .flexnav li > ul li {
	white-space : nowrap;
	width : auto;
	display : block;
}

.oldie .flexnav li ul li a {
	width: auto;
	height: auto;
	position: relative;
	display: block;
	padding: .96em;
	z-index: 2;
	overflow: hidden;
	color: #333333;
	text-decoration: none;
	padding:  0.7em 26px 0.7em 26px;
	background: #fff url(/shared/img/icon03.png) no-repeat 15px 1em !important; 
}
.oldie .flexnav li ul li a:hover {
	background: #E5E5E5 url(/shared/img/icon03.png) no-repeat 15px 1em !important; 
}

.oldie .menu-button, .touch-button {
	display: none;
}
/* ------------------------------
 グローバルメニュー
------------------------------ */
.oldie ul.flexnav li span a{
	height: 0 !important;
	height /**/: 50px;
	padding: 50px 0 0;
	overflow: hidden;
}

.oldie ul.flexnav li span.menu01 a{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 0 !important;
}
.oldie ul.flexnav li span.menu01 a:hover,
.oldie ul.flexnav li span.menu02on a:hover{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 -50px !important;
}
.oldie ul.flexnav li span.menu01on a{
	width: 54px;
	background: url(../img/gnavi.gif) no-repeat 0 -50px !important;
}
.oldie ul.flexnav li span.menu02 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px 0 !important;
}
.oldie ul.flexnav li span.menu02 a:hover,
.oldie ul.flexnav li span.menu02on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px -50px !important;
}
.oldie ul.flexnav li span.menu02on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -54px -50px !important;
}
.oldie ul.flexnav li span.menu03 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px 0 !important;
}
.oldie ul.flexnav li span.menu03 a:hover,
.oldie ul.flexnav li span.menu03on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px -50px !important;
}
.oldie ul.flexnav li span.menu03on a {
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -208px -50px !important;
}
.oldie ul.flexnav li span.menu04 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -362px 0 !important;
}
.oldie ul.flexnav li span.menu04 a:hover,
.oldie ul.flexnav li span.menu04 a:hover{
	background: url(../img/gnavi.gif) no-repeat -362px -50px !important;
}
.oldie ul.flexnav li span.menu04on a{
	background: url(../img/gnavi.gif) no-repeat -362px -50px !important;
	
}
.oldie ul.flexnav li span.menu05 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px 0 !important;
}
.oldie ul.flexnav li span.menu05 a:hover,
.oldie ul.flexnav li span.menu05on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px -50px !important;
}
.oldie ul.flexnav li span.menu05on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -516px -50px !important;
}
.oldie ul.flexnav li span.menu06 a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px 0 !important;
}
.oldie ul.flexnav li span.menu06 a:hover,
.oldie ul.flexnav li span.menu06on a:hover{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px -50px !important;
}
.oldie ul.flexnav li span.menu06on a{
	width: 154px;
	background: url(../img/gnavi.gif) no-repeat -670px -50px !important;
}
.oldie ul.flexnav li span.menu07 a{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px 0 !important;
}
.oldie ul.flexnav li span.menu07 a:hover,
.oldie ul.flexnav li span.menu07on a:hover{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px -50px !important;
}
.oldie ul.flexnav li span.menu07on a{
	width: 156px;
	background: url(../img/gnavi.gif) no-repeat -824px -50px !important;
}
.oldie body.one-page {
	padding-top: 70px;
}
.oldie .flexnav {
	overflow: visible;
}
.oldie .flexnav.one-page {
    top: 0;
    right: auto;
    max-width: 1080px;
}

/* ------------------------------
 Print
------------------------------ */
@media print {
	
	.flexnav {
		-webkit-transition: none;
		-moz-transition: none;
		-ms-transition: none;
		transition: none;
		-webkit-transform-style: preserve-3d;
		overflow: hidden;
		margin: 0 auto;
		width: 100%;
		max-height: 0;
		z-index: 10 !important;
		position: relative;
		font-size: 107.7%;
		overflow: visible;
	}

	.flexnav li {
		font-size: 100%;
		position: relative;
		overflow: hidden;
		list-style: none;
		float: left;
		display: block;
		overflow: visible;
	}

	.flexnav li a {
		position: relative;
		display: block;
	}

    .flexnav li > ul {
		position: absolute;
		top: auto;
		left: -1px;
		margin: 0;
		display: none;
	}
	.flexnav li:first-child > ul {
		left: 0;
	}
    .flexnav li > ul li {
		white-space : nowrap;
		width : auto;
		display : block;
	}
/*	.flexnav li ul li a {
		width: 100%;
		position: relative;
		display: block;
		z-index: 2;
		overflow: hidden;
		color: #333333;
		text-decoration: none;
		padding:  0.7em 1.6em 0.7em 26px;
		background: #fff url(/shared/img/icon03.png) no-repeat 15px 1em !important; 
		border-left: 1px solid #e0e0e0;
		border-right: 1px solid #e0e0e0;
	}
    .flexnav li > ul li:last-child a {
		border-bottom: 1px solid #e0e0e0;
	}	
	
	.flexnav li ul li a:hover {
		background: #E5E5E5 url(/shared/img/icon03.png) no-repeat 15px 1em !important; 
	}*/
	
	.menu-button, .touch-button {
		display: none;
	}
}