/* Flexnav Base Styles */

@media all and (max-width: 767px) {
	.saut_ligne {
		display: none;
	}
	#menu_fond {
	    height: 70px;
	}
	.flexnav li a.important-link {
		border-radius: 0;
		border-right: none;
		
	}
	.flexnav {
		-webkit-transition: none;
		-moz-transition: none;
		-ms-transition: none;
		transition: none;
		-webkit-transform-style: preserve-3d;
		overflow: hidden;
		width: 100%;
		max-height: 0;
		padding: 0;
		margin: 64px auto 0;
	}
	
	.flexnav.opacity {
		opacity: 0;
	}
	
	.flexnav.flexnav-show {
		max-height: 2000px;
		opacity: 1;
		-webkit-transition: all .5s ease-in-out;
		-moz-transition: all .5s ease-in-out;
		-ms-transition: all .5s ease-in-out;
		transition: all .5s ease-in-out;
	}
	
	.flexnav.one-page {
		position: fixed;
		top: 50px;
		right: 5%;
		max-width: 200px;
	}
	
	.flexnav li {
		font-size: 100%;
		position: relative;
		overflow: hidden;
		z-index: 1001;
		list-style-type: none;
	}
	
	.flexnav li a {
		position: relative;
		display: block;
		padding: 15px;
		z-index: 2;
		overflow: hidden;
		
		border-bottom: 1px solid rgba(0, 0, 0, 0.15);
		text-decoration: none;
		color: #214A7B;
		font-size: 14px;
		text-transform: uppercase;
	}
	
	.flexnav li ul {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	
	.flexnav li ul li {
		font-size: 0.8em;
		position: relative;
		overflow: hidden;
	}
	
	.flexnav li ul.flexnav-show li {
		overflow: visible;
	}
	
	.flexnav li ul li a {
		display: block;
		text-transform: none;
	}
	
	.flexnav ul li ul li a {
		background: #B2ADA9;
	}
	
	.flexnav ul li ul li ul li a {
	}
	
	.flexnav .touch-button {
		position: absolute;
		z-index: 999;
		top: 0;
		right: 0;
		width: 50px;
		height: 50px;
		display: inline-block;
		background: #214A7B;
		text-align: center;
	}
	
	.flexnav .touch-button:hover {
		cursor: pointer;
	}
	
	.flexnav .touch-button .navicon {
		position: relative;
		top: 1.4em;
		font-size: 12px;
		color: #FFFFFF;
	}
	
	.menu-button {
		color: #214A7B;
		cursor: pointer;
		display: block;
		float: right;
		margin-top: 30px;
		margin-bottom: 4px;
		margin-right: 10px;
		vertical-align: top;
	}
	.menu-button .intitule{
		display:none;
	}
	.fixed .menu-button .intitule{
		 font-size:  30px;
		 display:block;
		 padding-right: 25px;
		float:left;
		padding-top: 5px;
	}
	.fixed .menu-button{
		margin-top: 0px;
	}
	.fixed .menu-button .icon{
		line-height: 50px;
	}
	.menu-button .icon{
		font-size: 50px;
	}
	.menu-button.one-page {
		position: fixed;
		top: 0;
		right: 5%;
		padding-right: 45px;
	}
	
	.menu-button .touch-button {
		background: transparent;
		position: absolute;
		z-index: 999;
		top: 0;
		right: 0;
		width: 38px;
		height: 30px;
		display: inline-block;
		text-align: center;
		display: none;
	}
	
	.menu-button .touch-button .navicon {
		display: none;
	}
	
	.oldie body.one-page {
		padding-top: 70px;
	}
	
	.oldie .flexnav {
		overflow: visible;
	}
	
	.oldie .flexnav.one-page {
		top: 0;
		right: auto;
		max-width: 1080px;
	}
	
	.oldie .flexnav li {
		position: relative;
		list-style: none;
		float: left;
		display: block;
		background-color: #a6a6a2;
		width: 20%;
		min-height: 50px;
		overflow: visible;
	}
	
	.oldie .flexnav li:hover>ul {
		display: block;
		width: 100%;
		overflow: visible;
	}
	
	.oldie .flexnav li:hover>ul li {
		width: 100%;
		float: none;
	}
	
	.oldie .flexnav li a {
		border-left: 1px solid #acaca1;
		border-bottom: none;
		overflow: visible;
	}
	
	.oldie .flexnav li>ul {
		background: #acaca1;
		position: absolute;
		top: auto;
		left: 0;
		display: none;
		z-index: 1;
		overflow: visible;
	}
	
	.oldie .flexnav li ul li ul {
		top: 0;
	}
	
	.oldie .flexnav li ul li a {
		border-bottom: none;
	}
	
	.oldie .flexnav li ul.open {
		display: block;
		width: 100%;
		overflow: visible;
	}
	
	.oldie .flexnav li ul.open li {
		width: 100%;
	}
	
	.oldie .flexnav li ul.open ul.open {
		margin-left: 100%;
		top: 0;
		display: block;
		width: 100%;
		overflow: visible;
	}
	
	.oldie .flexnav ul li:hover ul {
		margin-left: 100%;
		top: 0;
	}
	
	.oldie .menu-button {
		display: none;
	}
	
	.oldie.ie7 .flexnav li {
		width: 19.9%;
	}
}


@media all and (min-width: 768px) {
	
	.flexnav{
		margin-top: 30px;
		margin-left: 0px;
		padding-left: 0px;
	}
	.flexnav > li > a {
		position: relative;
		z-index: 990;
		border-left: 1px dotted #0d4866;
		
		border-bottom: medium none;
		display: block;
		padding: 0px 25px;
		text-transform: uppercase;
		margin-bottom: 10px;
		color: #0d4866;
		font-size: 24px;
		font-weight: 700;
		
		-webkit-transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
		-ms-transition: all 200ms ease-in-out;
		-o-transition: all 200ms ease-in-out;
		transition: all 200ms ease-in-out;
	}
	body.nice .flexnav > li:last-child > a{
		color:#f3bb23;
	}
	body.nice .flexnav > li:last-child > a:hover{
		color:#f3bb23;
	}
	.flexnav > li:first-child > a {
		border:none;
	}
	.flexnav > li > a:hover {
		color:#00a2e0;
	}
	.flexnav > li > a:hover:after,
	.flexnav > li > a.select:after {
		position: absolute;
		left:50%;
		top: 47px;
		content:' ';
		display:block;
		width: 0;
		margin-left: -13px;
		height: 0;
		border-style: solid;
		border-width: 13px 13px 0 13px;
		border-color: #ffffff transparent transparent transparent;
		z-index: 5500;
	}
	
	.flexnav li {
		list-style: none;
		display: inline-block;
		overflow: visible;
		
	}
	
	
	.flexnav li.item-with-ul:hover {
		
	}
	
	.flexnav > li > ul {
		position: absolute;
		top: auto;
		left: 0;
		padding: 20px 0px 0px 20px;
		text-align:left;
		width: 100%;
		background: #00a2e0;
		display:none;
		z-index:50000;
	}
	body.nice .flexnav > li:last-child > ul{
		background:#f3bb23;
	}
	
	.flexnav > li > ul > li{
		width: 33%;
		display:inline-block;
		vertical-align:top;
		margin-top: 20px;
		min-height: 200px;
		padding-right: 70px;
		margin-bottom: 20px;
	}
	
	.flexnav > li > ul > li > a{
		border:none;
		color: #ffffff;
		text-transform: uppercase;
		font-size: 24px;
		font-weight: 700;
		padding: 0px 0px 10px 0px;
		display:inline-block;
		border-bottom: 2px solid #fff;
		margin-bottom: 20px;
		
		-webkit-transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
		-ms-transition: all 200ms ease-in-out;
		-o-transition: all 200ms ease-in-out;
		transition: all 200ms ease-in-out;
	}
	.flexnav li ul li a:hover{
		color:#185972;
		
		
	}
	body.nice .flexnav li:last-child ul li a:hover{
		color: #214A7C;
	}
	.flexnav li > ul > li > ul{
		position: relative;
		min-height: 30px;
		border-right: 1px dotted #185972;
		padding-left: 0px;
	}
	.flexnav > li > ul > li > ul  li{
		display:block;
	}
	.flexnav > li > ul > li > ul  li  a{
		color:#ffffff;
		font-size:16px;
		font-style: italic;
		-webkit-transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
		-ms-transition: all 200ms ease-in-out;
		-o-transition: all 200ms ease-in-out;
		transition: all 200ms ease-in-out;
	}
	.flexnav > li > ul > li > ul  li ul{
		border:none;
		
	}
	.flexnav > li > ul > li > ul  li ul li{
		padding-left:10px;
	}
	.menu-button, .touch-button {
		display: none;
	}

}

/* ----------------------------------------- RESPONSIVE ---------------------------------------- */

@media screen and (max-width:1200px) and (min-width:991px){
	.flexnav li a {
		font-size: 24px;
	}
	.flexnav > li > a:hover:after,
	.flexnav > li > a.select:after {
		top: 40px;
	}
}
@media screen and (max-width:990px) and (min-width:768px){
	.flexnav li a {
		font-size: 16px;
	}
	.flexnav > li > a:hover:after,
	.flexnav > li > a.select:after {
		top: 30px;
	}
}


