/* BANDEAU */
#bandeau {padding:0; position:fixed; left:0px; top:0px; width:100%; z-index:3000;-webkit-transition: all 150ms ease-out; -moz-transition: all 150ms ease-out; -ms-transition: all 150ms ease-out; -o-transition: all 150ms ease-out; transition: all 150ms ease-out;		  }
#global:not(.global-accueil).no-bandeau #bandeau {background:#FFFFFF;}
#bandeau .menu-wrapper {display:block !important; }
#bandeau-mobile {display:none; }
.lg {height:70px; }
.sm {height:50px; }

/* Bandeau réduit */
#bandeau.sm { background:#FFFFFF;}
#bandeau.sm #bandeau-conteneur { }
#bandeau.sm #bandeau-contact {}
#bandeau.sm #logo {}
#bandeau.sm #logo a, #bandeau.sm #logo a:visited {  padding: 5px 0 0; box-sizing: border-box;  height: 100%;}
#bandeau.sm #logo a img { image-rendering: initial; max-width: 94px;}
#bandeau.sm #menu-conteneur {  }
#bandeau.sm #menu {}
#bandeau.sm #menu .menu-element .menu-element-contenu > a > span > span, 
#bandeau.sm #menu .menu-element .menu-element-contenu > a:visited > span > span, 
#bandeau.sm #menu .menu-element .menu-element-contenu > span > span {  font-size: 16px;}

/* Bandeau non réduit */
#bandeau-conteneur {position: relative; z-index: 400; height:100%; width:100%; }

#bandeau-contact {position:relative; z-index:40;   height: 100%;}
#bandeau-contact > .global { position:relative; z-index:40;  height: 100%; display: -webkit-box;display: -ms-flexbox;display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch;}

#bandeau-logo {  width: 130px; overflow: hidden;}

#bandeau #logo {position:relative; z-index:10;width: 100%; height:100%; display: -webkit-box;  display: -ms-flexbox;  display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
#bandeau #logo a,
#bandeau #logo a:visited {display:block; width: 100%; }
#bandeau #logo a img {height:auto; max-height:100%; width:100%; max-width: 130px;  }

#bandeau #bandeau-reseaux { width: 90px; height: 100%; text-align:center; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#bandeau #bandeau-reseaux span { padding-right: 75px; position: relative; }
#bandeau #bandeau-reseaux span::after { content: ""; background: #000; width: 70px; height: 1px; position: absolute; right: 0; bottom: 2px; }
#bandeau #bandeau-reseaux .bandeau-social {width: 100%; height: 100%; } 
#bandeau #bandeau-reseaux .bandeau-social a,
#bandeau #bandeau-reseaux .bandeau-social a:visited {background:#edeef7; width: 100%; height: 100%; text-align:center; text-decoration:none; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
#bandeau #bandeau-reseaux .bandeau-social i {filter: invert(21%) sepia(25%) saturate(3997%) hue-rotate(201deg) brightness(93%) contrast(102%);width:28px; height:28px;display: block; }

#bandeau #bandeau-reseaux .bandeau-social.social-facebook i {background: url(../images/icone-facebook-rond.svg) no-repeat center center; background-size: contain;}
#bandeau #bandeau-reseaux .bandeau-social.social-instagram i {background: url(../images/icone-instagram-rond.svg) no-repeat center center; background-size: contain;}
#bandeau #bandeau-reseaux .bandeau-social.social-linkedin i {background: url(../images/icone-linkedin-rond.svg) no-repeat center center; background-size: contain;}
#bandeau #bandeau-reseaux .bandeau-social.social-twitter-x i {background: url(../images/icone-x-twitter-rond.svg) no-repeat center center; background-size: contain;}
#bandeau #bandeau-reseaux .bandeau-social.social-youtube i {background: url(../images/icone-youtube-rond.svg) no-repeat center center; background-size: contain;}
#bandeau #bandeau-reseaux .bandeau-social.social-whatsapp i {background: url(../images/icone-whatsapp-rond.svg) no-repeat center center; background-size: contain;}

#bandeau #bandeau-reseaux .bandeau-social a:hover {background:#66a3dc;}
#bandeau #bandeau-reseaux .bandeau-social a:hover i{filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);}

/* MENU */
/* Menu niveau 1 */
#menu-conteneur { height:100%;   box-sizing: border-box;  flex:1; }
#menu-wrapper {height:100%; }
#menu {list-style:none; margin:0px auto; padding: 0; height:100%; }
#menu > .global{position:relative; z-index:30; height:100%; padding: 0; display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap;   -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; -webkit-box-align: center; -ms-flex-align: center; align-items: center;  }
#menu .menu-element { display:inline-block; vertical-align:top; position:relative; z-index:30; height:100%; }
#menu #menu-1 {margin-left:0; }
#menu #menu-2 {margin-right:0; }
#menu .menu-element .menu-element-contenu {height: 100%;}
#menu .menu-element .menu-element-contenu > i {  display: none;}
#menu .menu-element .menu-element-contenu > span { cursor:default; }
#menu .menu-element .menu-element-contenu > a,
#menu .menu-element .menu-element-contenu > a:visited {height:100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#menu .menu-element .menu-element-contenu > a > span,
#menu .menu-element .menu-element-contenu > a:visited > span,
#menu .menu-element .menu-element-contenu > span {color: #353535; font-weight: 500; text-align: center; height:100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#menu .menu-element .menu-element-contenu > a > span> span,
#menu .menu-element .menu-element-contenu > a:visited > span> span,
#menu .menu-element .menu-element-contenu > span > span { font-size:18px; position:relative; padding: 10px 35px 12px; -webkit-box-sizing:border-box; box-sizing:border-box;-webkit-transition: all 150ms ease-out; -moz-transition: all 150ms ease-out; -ms-transition: all 150ms ease-out; -o-transition: all 150ms ease-out; transition: all 150ms ease-out;		 } 
#menu .menu-element.menu-grand .menu-element-contenu > a > span,
#menu .menu-element.menu-grand .menu-element-contenu > span {padding:0px 0 1px; }
#menu .menu-element .menu-element-contenu > a,
#menu .menu-element .menu-element-contenu > a:visited {text-decoration:none; }
#menu .menu-element .menu-element-contenu > a:hover {text-decoration:none; }

/** SINON **/
#menu .menu-element.selected .menu-element-contenu > span,
#menu .menu-element.selected .menu-element-contenu > a > span {background: #2e3568; color:#fff;}
#menu .menu-element:not(.selected):hover .menu-element-contenu > a > span,
#menu .menu-element:not(.selected):hover .menu-element-contenu > span {background: #edeef7; }

#menu .menu-element:hover .smenu-conteneur { animation : affichageSousMenu 150ms linear 250ms 1 forwards; } 
 
@keyframes affichageSousMenu {
 from {
	 visibility: hidden; 
	 opacity: 0; 
 }
 to {
	 visibility: visible; 
	 opacity: 1; 
 }
}

/* Sous menu niveau 1 */
#menu .smenu-conteneur {visibility: hidden; opacity: 0; position:absolute; left:0px; z-index:200; width:350px; min-height:20px; background: #edeef7; }
#menu .smenu-conteneur .global {padding:5px 0 !important; }
#menu .smenu-conteneur .smenu-scroll-up,
#menu .smenu-conteneur .smenu-scroll-down {display: none;position:relative; z-index: 10;}
#menu .smenu-conteneur .smenu-scroll-up::before {content:"\f106"; font-family: FontAwesome; font-size: 15px;  line-height: 9px; width:100%; height: 10px; display: block;  text-align: center;color:#2e3568; }
#menu .smenu-conteneur .smenu-scroll-down::after {content:"\f107"; font-family: FontAwesome; font-size: 15px;  line-height: 9px; width:100%; height: 10px; display: block;  text-align: center;color:#2e3568;}
#menu .smenu-centre { margin:0 !important; padding:0 !important; list-style:none; width:100%; text-align: left; }
#menu .smenu-conteneur.scrollable .smenu-centre {position:relative; z-index: 10; overflow-y: auto; }
#menu .smenu-conteneur.scrollable .smenu-scroll-up,
#menu .smenu-conteneur.scrollable .smenu-scroll-down { display: block; }
#menu .smenu-centre-menus {padding: 0 10px; position:relative; z-index: 11;}
#menu .smenu-element > span { cursor:default; }
#menu .smenu-element > a {text-decoration:none; }
#menu .smenu-element > a > span,
#menu .smenu-element > span {color:#2e3568; text-align:center;  padding:8px 10px 7px ; width: 100%; font-size:15px; position: relative; z-index: 2; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; -webkit-box-align:center; -ms-flex-align:center; align-items:center; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -khtml-box-sizing:border-box; }
#menu .smenu-element > a > span::after,
#menu .smenu-element > span::after {content:"\f105"; font-family:FontAwesome; font-size:21px; color:#2e3568; margin-left: 0; opacity:0; right:25px; top: 0; height: 100%; -webkit-transition: margin 300ms ease 0ms; -moz-transition: margin 300ms ease 0ms; -ms-transition: margin 300ms ease 0ms; -o-transition: margin 300ms ease 0ms; transition: margin 300ms ease 0ms; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

#menu .smenu-element.selected > span,
#menu .smenu-element.selected > a > span,
#menu .smenu-element:hover > a > span,
#menu .smenu-element:hover > span {color:#2e3568; }
#menu .smenu-element.selected > a > span::after,
#menu .smenu-element.selected > span::after,
#menu .smenu-element:hover > a > span::after,
#menu .smenu-element:hover > span::after {opacity:1; margin-left:10px;}

/* Sous menu niveau 2 */
#menu .ssmenu-conteneur {padding:0px; margin:0px; }
#menu .ssmenu-element {}
#menu .ssmenu-element > span { cursor:default; }
#menu .ssmenu-element > a {text-decoration:none; }
#menu .ssmenu-element > a > span,
#menu .ssmenu-element > span {color:#183c69; display:block; padding:5px 5px 5px 15px; font-size:13px; position:relative; }
#menu .ssmenu-element > a > span i,
#menu .ssmenu-element > span i {display: inline-block; vertical-align: top; line-height: 15px; }
#menu .ssmenu-element > a > span > span,
#menu .ssmenu-element > span > span {display: inline-block; vertical-align: top; width: calc(100% - 20px); margin-left: 5px; line-height: 15px; }
#menu .ssmenu-element.selected > span,
#menu .ssmenu-element:hover > span ,
#menu .ssmenu-element.selected > a > span,
#menu .ssmenu-element:hover > a > span {color:#fff; }

/* MENU SPECIAL */
#menu .menu-element.menu-special {position: initial; }
#menu .menu-element.menu-special .smenu-conteneur {width: 100%; top: 130px; left: initial !important; right: 10px; z-index: 10; background: none; position: fixed; }
#menu .menu-element.menu-special .smenu-centre { min-height:540px; padding: 25px 15px !important;box-sizing: border-box; position:relative ;z-index:1210; border-radius: 20px; background: #fff;display: -webkit-box;display: -ms-flexbox;display: flex; -moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.3);-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.3);box-shadow: 0px 0px 5px rgba(0,0,0,0.3);display: -webkit-box;display: -ms-flexbox;display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;  -webkit-box-align: start;  -ms-flex-align: start;  align-items: flex-start;}
#menu .menu-element.menu-special .ssmenu-conteneur-images {width: 310px; height: 445px; margin-right: 20px;}
#menu .menu-element.menu-special .ssmenu-conteneur-images img {width: 100%; height: 100%; object-fit: cover; display: block;  border-radius: 10px;}
#menu .menu-element.menu-special .smenu-centre-menus {flex:1;  padding: 25px 10px; display: -webkit-box;display: -ms-flexbox;display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap;  -webkit-box-pack: start;  -ms-flex-pack: start;  justify-content: flex-start;  -webkit-box-align: stretch;  -ms-flex-align: stretch;  align-items: stretch;}

#menu .menu-element.menu-special .smenu-element { background:none; width:calc(33.333% - 30px); margin:0 15px 30px; box-sizing: border-box;position: relative; border:none; display: -webkit-inline-box;display: -ms-inline-flexbox;display: inline-flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; float:left;}
#menu .menu-element.menu-special .smenu-element .icone-menu {width: 65px;height: 65px;   margin-right: 10px; border-radius: 65px; background-color: #fedd02; display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
#menu .menu-element.menu-special .smenu-element .icone-menu i {height: 43px; width: 50px; display: block; background: url(../images/icone-smenu.svg) no-repeat center center; background-size: contain !important;}
#menu .menu-element.menu-special .smenu-contenu {flex:1;}
#menu .menu-element.menu-special .smenu-element::before {display: none;}
#menu .menu-element.menu-special .smenu-contenu > a,
#menu .menu-element.menu-special .smenu-contenu > a:visited {text-decoration: none;}
#menu .menu-element.menu-special .smenu-contenu > a > span,
#menu .menu-element.menu-special .smenu-contenu > span {color:#353535; font-size: 20px; line-height: 23px; text-transform: uppercase; font-weight: 600; text-align: left;   padding: 3px 5px 3px 10px;  min-height: 40px;  box-sizing: border-box; display: -webkit-box;display: -ms-flexbox;display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
#menu .menu-element.menu-special .smenu-element.selected .contenu > a > span,
#menu .menu-element.menu-special .smenu-element.selected .contenu > span,
#menu .menu-element.menu-special .smenu-element:hover .contenu > a > span,
#menu .menu-element.menu-special .smenu-element:hover .contenu > span {color:#000;}

/* menu spécial niveau 2 */
#menu .menu-element.menu-special .ssmenu-conteneur {margin-top: 5px;}
#menu .menu-element.menu-special .ssmenu-element > a > span,
#menu .menu-element.menu-special .ssmenu-element > span {padding: 3px 10px 3px 20px;}
#menu .menu-element.menu-special .ssmenu-element > span > span,
#menu .menu-element.menu-special .ssmenu-element > a > span > span { display: block;  width:calc(100% - 30px); line-height: 18px; height: 100%; -webkit-transition: margin-left 300ms ease-in-out; -moz-transition: margin-left 300ms ease-in-out; -ms-transition: margin-left 300ms ease-in-out; -o-transition: margin-left 300ms ease-in-out; transition: margin-left 300ms ease-in-out;text-align: left;}
#menu .menu-element.menu-special .ssmenu-element > a > span > span::after,
#menu .menu-element.menu-special .ssmenu-element > span > span::after {content:"\f105"; font-family:FontAwesome; font-size:21px; color:#000000; position: absolute; margin-left: -1em; opacity:0; right:25px; top: 0; height: 100%; -webkit-transition: right 300ms ease 0ms; -moz-transition: right 300ms ease 0ms; -ms-transition: right 300ms ease 0ms; -o-transition: right 300ms ease 0ms; transition: right 300ms ease 0ms; display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}

#menu .menu-element.menu-special .ssmenu-element.selected > span,
#menu .menu-element.menu-special .ssmenu-element.selected > a > span,
#menu .menu-element.menu-special .ssmenu-element:hover > a > span,
#menu .menu-element.menu-special .ssmenu-element:hover > span {color:#e41212; }
#menu .menu-element.menu-special .ssmenu-element.selected > span > span,
#menu .menu-element.menu-special .ssmenu-element.selected > a > span > span,
#menu .menu-element.menu-special .ssmenu-element:hover > a > span > span,
#menu .menu-element.menu-special .ssmenu-element:hover > span  > span {margin-left: -10px; }
#menu .menu-element.menu-special .ssmenu-element.selected > a > span > span::after,
#menu .menu-element.menu-special .ssmenu-element.selected > span > span::after,
#menu .menu-element.menu-special .ssmenu-element:hover > a > span > span::after,
#menu .menu-element.menu-special .ssmenu-element:hover > span > span::after {opacity:1; right:15px;}


@media all and (max-width:1440px) {	
	#menu .menu-element .menu-element-contenu > a > span > span, 
	#menu .menu-element .menu-element-contenu > a:visited > span > span,
	#menu .menu-element .menu-element-contenu > span > span {  padding: 10px 25px 12px;}
}

@media all and (max-width:1290px) {	
	#bandeau.sm #menu .menu-element .menu-element-contenu > a > span > span, 
	#bandeau.sm #menu .menu-element .menu-element-contenu > a:visited > span > span, 
	#bandeau.sm #menu .menu-element .menu-element-contenu > span > span {font-size: 15px;}

	#menu .menu-element .menu-element-contenu > a > span > span, 
	#menu .menu-element .menu-element-contenu > a:visited > span > span,
	#menu .menu-element .menu-element-contenu > span > span {font-size: 16px;  padding: 10px 20px 12px;}
}

@media all and (max-width:1170px) {	
	#bandeau.sm #menu .menu-element .menu-element-contenu > a > span > span, 
	#bandeau.sm #menu .menu-element .menu-element-contenu > a:visited > span > span, 
	#bandeau.sm #menu .menu-element .menu-element-contenu > span > span {font-size: 14px;}

	#menu .menu-element .menu-element-contenu > a > span > span, 
	#menu .menu-element .menu-element-contenu > a:visited > span > span,
	#menu .menu-element .menu-element-contenu > span > span {font-size: 15px;  padding: 10px 15px 12px;}
}

@media all and (max-width:1050px) {	
	#bandeau-contact > .global{padding: 0 10px;}
	#bandeau #bandeau-reseaux {  width: 60px;}
}

   
@media all and (max-width:990px) {

	/* Bandeau */	
	.noscroll #bandeau-contact #logo {display:none; }
		
	#bandeau.sm #bandeau-contact #logo {display:none; }
	#bandeau.sm #bandeau-conteneur {height:auto; }
			
	#bandeau.sm #bandeau-mobile {height: 28px; width: 25px; left: 5px; top: 0px; padding: 3px 5px; }
		
	/* Si telephone et mail restent dans le bandeau en sm */
	#bandeau.sm #bandeau-contact {	position: absolute; right: 0; top: 0; width: calc(100% - 50px); height: 35px; z-index: 400; }
	#bandeau.sm #bandeau-contact #logo {display:none; }
	#bandeau.sm #bandeau-reseaux {height:35px;}	

	#bandeau-contact {opacity:1;  -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
	#bandeau-contact > .global {display:block;}
	#bandeau #bandeau-reseaux { position: absolute;  right: 0; top: 0; z-index: 40; height:160px;}
			
	.lg { height: 160px; }
	.sm { height: 35px; border:none; }
		
	#bandeau-logo {height: auto !important; margin: 0 auto; width: 180px;}
	#bandeau #logo {padding:3px 0 0; margin:0 auto; width: 100%;  -webkit-box-align: start; -ms-flex-align: start;  align-items: flex-start;}
	#bandeau #logo a img {height:auto; width:100%; margin: 0 auto; max-width: 180px;}

 	/* bas */
	/* Menu mobile */
	#bandeau-mobile {min-width: inherit; width: 85px; height: 30px; padding: 5px; margin: 0px; position: absolute; left: 5px; bottom: 2px; z-index: 99999; cursor: pointer; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
	#bandeau-mobile.open {left: 10px; top: 0; bottom:unset; }
	#bandeau-mobile.open span,
	#bandeau.sm #bandeau-mobile span {display:none; }
	#bandeau-mobile span {color: #000; text-transform: uppercase; font-size: 17px; }
	#bandeau-mobile .hamburger {position: relative; display: inline-block; width: 24px; height: 1px; color: #000; font: bold 14px/.4 Helvetica; text-transform: uppercase; text-indent: -55px; background: #000; -webkit-transition: all .2s ease-out; -moz-transition: all .2s ease-out; -o-transition: all .2s ease-out; transition: all .2s ease-out; }
	#bandeau-mobile .hamburger::before, 
	#bandeau-mobile .hamburger::after { content: ''; width: 24px; height: 1px; background: #000; position: absolute; left: 0; -webkit-transition: all .2s ease-out; -moz-transition: all .2s ease-out; -o-transition: all .2s ease-out; transition: all .2s ease-out; }
	#bandeau-mobile .hamburger::before { top: -9px; }
	#bandeau-mobile .hamburger::after { bottom: -9px; }
	#bandeau-mobile .hamburger.active { background: #fff; left: 0px; }
	#bandeau-mobile .hamburger.active::before {background: #37342a; top: 0; -webkit-transform: rotateZ(45deg); -moz-transform: rotateZ(45deg); -ms-transform: rotateZ(45deg); -o-transform: rotateZ(45deg); transform: rotateZ(45deg); }
	#bandeau-mobile .hamburger.active::after {background: #37342a; bottom: 0; -webkit-transform: rotateZ(-45deg); -moz-transform: rotateZ(-45deg); -ms-transform: rotateZ(-45deg); -o-transform: rotateZ(-45deg); transform: rotateZ(-45deg); }	

	#bandeau #menu-conteneur { padding: 0; position: fixed; z-index: 9999; top: 0; left: 0; height: 100% !important; width: calc(100% - 45px); background: #fff; -webkit-transition: transform 0.5s; -khtml-transition: transform 0.5s; -moz-transition: transform 0.5s; -ms-transition: transform 0.5s; -o-transition: transform 0.5s; transition: transform 0.5s; -webkit-transform: translateX(-100%); -khtml-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); -o-transform: translateX(-100%); transform: translateX(-100%); overflow: hidden; }
	#bandeau #menu-conteneur.open {display: block; -webkit-transform: translateX(0%); -khtml-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); -o-transform: translateX(0%); transform: translateX(0%); }
	
	#bandeau #menu-wrapper {padding: 0 10px 10px; overflow-y: scroll; margin-top: 40px; height:calc(100% - 50px); }	
	#menu > .global {padding: 30px 10px 0; display:block; width:100%; box-sizing: border-box; }
	#menu .menu-element,
	#menu .menu-element.menu-grand {height:auto !important; margin:10px 0px 0 !important; display:block; padding:0 0 10px 5px; border-bottom:1px solid #edecec; }
	
	#menu .menu-element .menu-element-contenu {display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start; -webkit-box-align:center; -ms-flex-align:center; align-items:center;}
	#menu .menu-element .menu-element-contenu > i { cursor:pointer; display: block; color: #2e3568; font-size: 22px;  margin-left: 20px; }
	
	#menu .menu-element .menu-element-contenu > a > span > span,
	#menu .menu-element .menu-element-contenu > a:visited > span > span,
	#menu .menu-element .menu-element-contenu > span > span,
	#menu .menu-element.menu-grand .menu-element-contenu > a > span > span, 
	#menu .menu-element.menu-grand .menu-element-contenu > span > span {padding:5px; text-align:left; color:#000; border:none; font-size:15px; }
	#menu .menu-element br {display:none; }
	
	#menu .menu-element .menu-element-contenu > a > span > span::after,
	#menu .menu-element .menu-element-contenu > span > span::after,
	#menu .menu-element.selected .menu-element-contenu > a > span > span::after,
	#menu .menu-element.selected .menu-element-contenu > span > span::after,
	#menu .menu-element:hover .menu-element-contenu > a > span > span::after,
	#menu .menu-element:hover .menu-element-contenu > span > span::after {display:none !important; }	
	
	#menu .menu-element.selected .menu-element-contenu > a > span,
	#menu .menu-element.selected .menu-element-contenu > span {font-weight:600; background: none; }
	#menu .menu-element:not(.selected):hover .menu-element-contenu > a > span,
	#menu .menu-element:not(.selected):hover .menu-element-contenu > span {background: none; }
	#menu .menu-element.selected .menu-element-contenu > a > span > span,
 	#menu .menu-element.selected .menu-element-contenu > span > span {color:#2e3568 }
		
	#menu > .global #barre-menu {display:none;}
	
	#menu .menu-element:hover .smenu-conteneur { -webkit-animation-play-state:paused; -moz-animation-play-state:paused; animation-play-state:paused; }
	#menu .smenu-conteneur {margin-top:6px; width:100%; padding:0; visibility: visible; opacity: 1; position:relative; left:0 !important; top:0 !important; background:none; min-height: 0; display:none;}
	#menu .smenu-conteneur .global {padding: 0 !important;}
	#menu .smenu-centre {border:none; margin:0; width:auto; }
	#menu .ssmenu-conteneur-images {display:none !important; }
	#menu .smenu-centre-menus {float:none; width:auto; border-radius: 0; padding:0 ; }
	#menu .smenu-conteneur .smenu-element{display:block; width:auto; }
	#menu .smenu-element > a > span, 
	#menu .smenu-element > span {font-size: 15px;padding: 5px 10px; min-height: 0; color:#20426c;   text-align: left;  -webkit-box-pack: start;  -ms-flex-pack: start;  justify-content: flex-start;}
	#menu .smenu-element > a, #menu .smenu-element > a:hover {text-decoration:none; }

	#menu .smenu-element > a > span::after, #menu .smenu-element > span::after {transition:none; color:#fff; }
	
	#menu .smenu-element.selected > a > span,
	#menu .smenu-element:hover > a > span,
	#menu .smenu-element.selected > span,
	#menu .smenu-element:hover > span {background:#2e3568; color:#fff; }
	
	#menu .ssmenu-element > a > span,
	#menu .ssmenu-element > span {padding:5px 0 10px 20px; }
	
	#menu .ssmenu-element.selected > span,
	#menu .ssmenu-element:hover > span ,
	#menu .ssmenu-element.selected > a > span,
	#menu .ssmenu-element:hover > a > span {color:#2e3568;}
	
	
	#menu .menu-element.menu-special .smenu-conteneur {padding:0;}
	#menu .menu-element.menu-special .smenu-conteneur > .global {padding:0 !important; border-radius: 0; box-shadow: none;}
	#menu .menu-element.menu-special .smenu-centre {display: block;}
	#menu .menu-element.menu-special .smenu-centre-menus {display: block; padding: 0;}
	#menu .menu-element.menu-special .smenu-element {width: 100%; margin: 0px 0 10px; float: none;}
	#menu .menu-element.menu-special .smenu-element .icone-menu {display: none;}
	#menu .menu-element.menu-special .smenu-contenu {flex: unset; width: 100%;}	
	#menu .menu-element.menu-special .smenu-element .smenu-nom {height:auto; padding:7px 0 7px 15px;}

	#menu .menu-element.menu-special .smenu-contenu > a > span, 
	#menu .menu-element.menu-special .smenu-contenu > span {background:none; background: #273b7a;color: #fff!important;font-size: 15px; display: -webkit-box;display: -ms-flexbox;display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
	#menu .menu-element.menu-special .ssmenu-element > a > span, 
	#menu .menu-element.menu-special .ssmenu-element > span {padding:5px 0 5px 20px;}
	#menu .menu-element.menu-special .ssmenu-element.selected .smenu-contenu > span, 
	#menu .menu-element.menu-special .ssmenu-element.selected .smenu-contenu > a > span, 
	#menu .menu-element.menu-special .ssmenu-element:hover .smenu-contenu > a > span, 
	#menu .menu-element.menu-special .ssmenu-element:hover .smenu-contenu > span {color: #273b7a;}

	#menu .ssmenu-conteneur-images {display:none !important; }
}

@media all and (max-width:435px) {	

}
@media all and (max-width:385px) {
	
	#bandeau-mobile {left: 5px; width: 80px; }
	#bandeau-mobile span {font-size: 15px; }
	
}
