@CHARSET "utf-8";

/* PC */
@media all and (min-width:781px) {
	#bandeau .menu-wrapper  {display:block !important;}
	#bandeau-mobile {display:none !important;}
}

@media all and (max-width:1630px) {	


}
@media all and (max-width:1555px) {	
	#actualites .actualite {margin:10px; width:calc(33.3333% - 20px);}

	/* ACCEUIL PAVES */
	#accueil-paves-conteneur {bottom: -322px;}
	#accueil-paves-conteneur .accueil-pave {width: calc(33% - 10px); margin:5px;}

	/* SLIDER */
	#accueil-slider {height: 350px;}

	/* ACCUEIL PRESENTATION */
	#accueil-presentation-conteneur {padding: 370px 0 53px;}


}

@media all and (max-width:1400px) {
	
}

@media all and (max-width:1350px) {
	#actualites .actualite .actualite-texte,
	#actualites .actualite .actualite-texte p {font-size: 16px;}
	
    #gabarit-page {margin: 0;}
    #gabarit-page .gabarit-gauche .gabarit-texte {padding:0 10px 0 0;}
    #gabarit-page .gabarit-droite .gabarit-texte {padding:0 0 0 10px;}

	/* RASSURANCES */
	#rassurances-conteneur-titre {font-size: 29px;line-height: 38px;width: 300px}
	#rassurances{padding-right: 0;}
}

@media all and (max-width:1280px) {
	/* MODULE REALISATIONS AVEC FILTRES */
	#realisations-famille .conteneur{width: calc(33% - 2px);} 

}

@media all and (max-width:1259px) {

	#menu .menu-element > a > span > span, 
	#menu .menu-element > a:visited > span > span, 
	#menu .menu-element > span > span {font-size: 15px;}
	
	
	iframe {width: 100% !important;}
	.iframe-responsive-wrapper {position: relative;}
	#contenu .iframe-responsive-wrapper .iframe-ratio {   display: block;    width: 97%;   height: auto;}
	.iframe-responsive-wrapper .iframe-responsive-iframe {position: absolute;top: 0;left: 0;width: 100% !important; height: 100% !important; }
	.iframe-responsive-wrapper .iframe-responsive-iframe iframe {width: 100% !important; height: 100% !important;}
		
    video {width:100%; height:auto;}
    
    .tableau-parent-5 .tableau-enfant {width:calc(33.333% - 35px) !important; }
    
	/* ACCUEIL PRESENTATION */
	#accueil-presentation-conteneur .global { display: block;}
	#accueil-presentation-conteneur .global > div { width: 100%; padding: 0 10px; }
	#accueil-presentation-conteneur .accueil-presentation-texte-conteneur > div { float: none; margin: auto; }
	#accueil-presentation-conteneur .accueil-presentation-image { min-height: auto; width: 100%; max-width: 650px; margin: auto; margin-top: 30px; }
	#accueil-presentation-conteneur .accueil-presentation-image img:nth-child(1) {top: 0;position: relative;left: 0;width: auto;max-width: 100%;object-fit: contain;height: auto;}
	#accueil-presentation-conteneur .accueil-presentation-texte-conteneur .accueil-presentation-texte p { text-align: justify; }

	#accueil-presentation-conteneur .accueil-presentation-texte-conteneur .accueil-presentation-texte {padding-right: 0;}

	/* ETAPE DE VIE */

	#etape-vie .etape {margin: 0 25px 10px;}
}


@media all and (max-width:1193px) {
	
	#gabarit-page .global-gabarit.global-gabarit-image > div  {width: 55%;}
    #gabarit-page .gabarit-image {width: calc(50% - 105px);}
}


@media all and (max-width:1170px) {
	
	#actualites .actualite {margin:5px; width:calc(33.3333% - 10px);}

	div.table-wrapper { position: relative; overflow: hidden; border-right: 1px solid #ccc; }
	div.table-wrapper div.scrollable table {}
	div.table-wrapper div.scrollable { overflow: scroll; overflow-y: hidden; }
}


@media all and (max-width:1110px) {

	/* BANDEAU */
	#bandeau #bandeau-reseaux span::after {width: 30px;}
	#bandeau #bandeau-reseaux span {padding-right: 32px;}

	/* MENU */
	#menu .menu-element {margin: 0 25px;}


	#actualites .actualite .actualite-texte,
	#actualites .actualite .actualite-texte p {font-size: 15px; line-height: 20px;}



	#pied .global {	padding: 0px 10px 20px;}
	#pied .global .contenu-wrapper { margin:5px 0px 25px; 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;}	
	#pied .col {float:none !important; margin: 15px 5px; padding:0; width:320px !important;position:relative !important; top:unset !important; left:unset !important; right:unset !important;}
	#pied #col-centre.col { display:block;  width: 100% !important; }
	#pied #col-contact {   text-align: left; 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: start;  -ms-flex-pack: start;  justify-content: flex-start;  -webkit-box-align: end;  -ms-flex-align: end;  align-items: flex-end;}
	#pied #logo-pied a img {height: 140px;width: auto;}
	#pied #logo-pied{text-align: center;}

	#pied .col .categorie > a > span, 
	#pied .col .categorie > a:visited > span, 
	#pied .col .categorie > span {font-size: 16px;letter-spacing: 1.4px;}

	#pied .menu li > a > span, 
	#pied .menu li > a:visited > span,
	#pied .menu li > span {font-size: 17px;}

	#pied .pied-contact-element .pied-contact-span {font-size: 18px;}
	#pied .liens li > a > span, 
	#pied .liens li > a:visited > span, 
	#pied .liens li > span {font-size: 15px;}
	#pied .liens li {margin: 0 0 6px 0;}

}
@media all and (max-width:1070px) {	

	#bandeau #logo {padding: 23px 0 0;}
	#bandeau #logo a img {height: 95px;}
	#menu .menu-element > a > span > span, 
	#menu .menu-element > a:visited > span > span, 
	#menu .menu-element > span > span {font-size: 12px;letter-spacing: 1.6px;margin-right: -1.6px;}
}

@media all and (max-width:1040px) {
	/* RASSURANCES */
	#rassurances-conteneur .global{display: block;}
	#rassurances-conteneur-titre {width: 100%;margin-top: 0;margin-bottom: 30px;}
	#rassurances-conteneur .global {padding: 10px 10px;}
	#rassurances .separation {height: 140px;}
	#rassurances .rassurance-image {height: 75px;}
	#rassurances .rassurance-nom {font-size: 23px;line-height: 31px;}
	#rassurances .rassurance-nom em {font-size: 18px;}
	
}
@media all and (max-width:990px) {
			
	#menu .menu-element {}
	#menu .menu-element > a > span > span, 
	#menu .menu-element > a:visited > span > span, 
	#menu .menu-element > span > span {}
	
  	/* Module Contact */
  	#module-contact #module-contact-adresse {float:none; width:100%;}
	#module-contact .googlemap {float:none;  width:100%; margin:20px 0;}
	

			
	#actualites .actualite { width:calc(50% - 10px);}
		
	#gabarit-photo .gabarit-photo-conteneur {-ms-flex-wrap: wrap;flex-wrap: wrap;}
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte {width:60%;}
	#gabarit-photo .gabarit-photo-conteneur.gabarit-droite .global-gabarit-texte {-ms-flex-preferred-size: auto; flex-basis: auto;}
	#gabarit-photo .gabarit-photo-conteneur .gabarit-image {width:40%;}
	
	/* MODULE REALISATIONS AVEC FILTRES */
	#realisations-famille .conteneur{width: calc(50% - 4px);} 

	/* ACCEUIL PAVES */
	#accueil-paves-conteneur {bottom: -537px;}
	#accueil-paves-conteneur .accueil-pave {width: calc(50% - 10px); margin:5px;}

	/* SLIDER */
	#accueil-slider {height: 350px;}

	/* ACCUEIL PRESENTATION */
	#accueil-presentation-conteneur {padding: 580px 0 53px;}
	
}

@media all and (max-width:960px) {

	#etape-vie h2.h1 {font-size: 26px;}
	#etape-vie .etape {width: 180px;height: 180px;margin: 0 15px 20px;}
	#etape-vie .accueil-etape-nom {font-size: 18px;}

}
@media all and (max-width:930px) {
		

	
	.tableau-parent-4 .tableau-enfant {width:calc(33.333% - 35px) !important;}
	/* Table responsive*/
	.table-responsive-label {display:table-row;}
}

@media all and (max-width:860px) {
	
	.tableau-parent-4 .tableau-enfant {width:calc(50% - 35px) !important;}

	#menu .menu-element {margin: 0 15px;}
}

@media all and (max-width:830px) {
				
	#gabarit-page .gabarit-gauche, #gabarit-page .gabarit-droite {flex-direction: column;justify-content: center;align-items: center;}
	#gabarit-page .global-gabarit > div {width: 100% !important;}
	#gabarit-page .gabarit-image {position: relative;top:unset;left: unset;right: unset;margin:10px auto; width: auto;height: 265px;}
	#gabarit-page .gabarit-image img {object-fit: contain; -o-object-fit: contain;}
	#gabarit-page .gabarit-texte {margin-top:10px; padding:0 10px !important;}
}

/* Tablette */
@media all and (max-width:780px) {
	
	body {width:100%;}
	.w1260 {display:none;}
	
	#global {min-width:inherit; margin:0 auto; width:auto; padding-top:120px;}

	/* Bandeau */	
	.noscroll #bandeau-haut,
	.noscroll #bandeau-contact{display:none;}
		
	#bandeau::after {z-index: 0;}
	#bandeau.sm::after {height: 4px;}

	#bandeau.sm #bandeau-contact #logo {display:none; }
	#bandeau-conteneur,
	#bandeau.sm #bandeau-conteneur {height:auto;}
			
	#bandeau.sm #bandeau-mobile {height: 28px;top: 4px; padding: 3px 5px;left: 7px;}
				
	#bandeau-contact {opacity:1;  height:30px; -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;}
	/* Si telephone et mail restent dans le bandeau en sm */
	#bandeau.sm #bandeau-contact {	position: absolute;right: 0;top: 0;width: calc(100% - 60px); height: 35px; z-index: 400;}
	#bandeau.sm #bandeau-contact #logo {display:none; }
	#bandeau.sm #bandeau-elements {position: absolute;top: 0px;right: 10px;z-index: 200; height: 30px; }
	#bandeau.sm #bandeau-elements .bandeau-element {height:0;overflow: hidden;width: 0;}
	#bandeau.sm #bandeau-elements #bandeau-client,
	#bandeau.sm #bandeau-elements #bandeau-telephone,
	#bandeau.sm #bandeau-elements #bandeau-email {height:auto;width: auto;}
	/* Sinon */
	/*#bandeau.sm #bandeau-contact {opacity:0; height:0; overflow: hidden;}*/
	/* FIN */
	.lg {  height: 120px;}
	.sm { height: 39px; border:none;}
		
	#bandeau #logo {float:none; padding:5px 0 0;text-align: center;}
	#bandeau #logo a img {height:69px; margin: 0 auto;}
	#bandeau #bandeau-elements{float: none;padding-top: 5px;}


	#bandeau #bandeau-email a.bouton, 
	#bandeau #bandeau-email a.bouton:visited {height: 25px;width: 25px;padding: 0;}
	#bandeau #bandeau-email i {width: 13px;height: 10px;}
	#bandeau #bandeau-client a.bouton,
	#bandeau #bandeau-client a.bouton:visited {height: 25px;font-size: 15px;}
	#bandeau #bandeau-telephone a.bouton,
	#bandeau #bandeau-telephone a.bouton:visited {height: 25px;font-size: 17px;width: 160px;}
	#bandeau #bandeau-client i, 
	#bandeau #bandeau-telephone i {width: 14px;height: 14px;margin-right: 7px;}

 	/* bas */
	/* Menu mobile */
	#bandeau-mobile {min-width: inherit; width: 80px; height: 30px; padding: 5px;  margin: 0px; position: absolute; left: 7px; top: 37px; z-index: 99999; cursor: pointer; }
	#bandeau-mobile > span{display: inline-block;vertical-align: middle;margin-left: 5px;color: #fff;}
	#bandeau-mobile.open {left: 10px;top: 0;}	
	#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: #fff; -webkit-transition: all .2s ease-out; -moz-transition: all .2s ease-out; -o-transition: all .2s ease-out; transition: all .2s ease-out;vertical-align: middle; }
	#bandeau-mobile .hamburger::before, 
	#bandeau-mobile .hamburger::after { content: ''; width: 24px; height: 1px; background: #fff; 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: 80%; 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-top: 5px;}
	#menu > .global > div,
	#menu > .global > div > div,
	#menu > .global > div > div > div {display:block;  width:100%;}
	
	#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 > a > span > span,
	#menu .menu-element > a:visited > span > span,
	#menu .menu-element > span > span,
	#menu .menu-element.menu-grand > a > span > span, 
	#menu .menu-element.menu-grand > span > span {padding:5px; text-align:left;  color:#222222; border:none;font-size:15px;}
	#menu .menu-element br {display:none;}
	
	#menu .menu-element > a > span > span::after,
	#menu .menu-element > span > span::after,
	#menu .menu-element.selected > a > span > span::after,
	#menu .menu-element.selected > span > span::after,
	#menu .menu-element:hover > a > span > span::after,
	#menu .menu-element:hover > span > span::after {display:none !important;}	
	
	#menu .menu-element.selected > a > span,
	#menu .menu-element.selected > span {font-weight:700;}
	#menu .menu-element.selected > a > span > span,
 	#menu .menu-element.selected > span > span {color:#1671a5;}
	
	#menu .smenu-conteneur {margin-top:6px; width:100%; padding:0; display:block !important; position:relative; left:0 !important; top:0 !important; background:none; min-height: 0; }
	#menu .smenu-centre {border:none; margin:0; width:auto;text-align: left;}
	#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 {text-align: left;padding:7px 0 7px 15px; display:block !important; border:none;width:auto; text-decoration:none; color:#000000; font-size:14px; text-transform: none; min-height:0; display:block;}
	#menu .smenu-element > a, #menu .smenu-element > a:hover {text-decoration:none;}
	#menu .smenu-element > span > span, 
	#menu .smenu-element > a > span > span {margin-right:0 !important; width:calc(100% - 20px) !important;}
	#menu .smenu-element > a > span > span::after, 
	#menu .smenu-element > span > span::after { margin-left:0; right:5px !important;}

	#menu .menu-element.menu-special .smenu-centre-menus { display: block; overflow: visible;border-radius: 0;width: 100%; border: none; }
	#menu .menu-element.menu-special .smenu-element {width:100% !important; border:none;}	
	#menu .menu-element.menu-special .smenu-element > a, #menu .menu-element.menu-special .smenu-element > span {background:none; display:block;}
	#menu .menu-element.menu-special .smenu-element .smenu-image {display:none !important;}
	#menu .menu-element.menu-special .smenu-element .smenu-nom {height:auto; padding:7px 0 7px 15px;}
	
	#menu .smenu-element.selected > a > span,
	#menu .smenu-element:hover > a > span,
	#menu .smenu-element.selected > span,
	#menu .smenu-element:hover > span {background:#1671a5;}

	#menu .ssmenu-element > a > span, 
	#menu .ssmenu-element > span {color: #000;}

	#menu .smenu-element > a > span::after,
	#menu .smenu-element > span::after,
	#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 {display:none !important;}
			
	#menu .ssmenu-element > a > span,
	#menu .ssmenu-element > span {padding:5px 0 10px 20px; }
	
	#accueil-slider .accueil-slider-li .accueil-slider-imageordi {display:none !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagetablette {display:block !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagemobile {display:none !important;}

	#accueil-slider .accueil-slider-li .accueil-slider-contenu {padding: 0px 10px 100px;}
	#accueil-slider .accueil-slider-li .accueil-slider-texte, 
	#accueil-slider .accueil-slider-li .accueil-slider-texte p {font-size: 28px;}
	#accueil-slider .accueil-slider-li .accueil-slider-texte strong, 
	#accueil-slider .accueil-slider-li .accueil-slider-texte p strong,
	#accueil-slider .accueil-slider-li .accueil-slider-texte p em {letter-spacing: 4px;}

	#accueil-slider .accueil-slider-li .accueil-slider-texte::before {margin: 0 0 6px 1px;}
	#accueil-slider .accueil-slider-li .accueil-slider-texte::before, 
	#accueil-slider .accueil-slider-li .accueil-slider-texte::after {height: 4px;}
	#accueil-slider .accueil-slider-li .accueil-slider-texte::after {margin: 11px 0 0 1px;}
		
	/* Centre */
	#centre {width:auto; margin:0; padding-top:0px;}
		
	/* Fil d'ariane */
	#ariane {display:none;}
	
	/* Contenu */
	#contenu {width:auto; }
	#contenu img {max-width:100%; max-height:100%;  height:auto; width:auto;  object-fit:contain; -o-object-fit:contain;}
		
	/* Formulaire */
	#contenu .input-text,
	#contenu input[type="text"] {width:calc(100% - 15px);height:30px;}
	
	#contenu input[type="image"],#contenu input[type="checkbox"],#contenu input[type="radio"] {width:auto; height:auto;}
	#contenu select {height:45px; }
	#contenu textarea {width:calc(100% - 12px) !important; }
	.submit input, input.submit, .bouton, .bouton-fleche, #global a.bouton, #global a.bouton:visited, #global a.bouton-fleche, #global a.bouton-fleche:visited {width:auto; min-width:0; min-height: 30px;}
	#contenu button.bouton {width:100%;  margin:10px 0; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box;}
	
	#contenu .form140 {float:none; text-align:left; width:auto;}
	#module-contact select {width:calc(100% - 5px);}
	#module-contact .form div.submit-conteneur, #module-contact #contact-captcha,
	#module-contact #contact-optin { margin-left:0;}	
	#contact-container .contact-vide {display:none;}
	
	/* Paginator */
	#paginator {margin:30px 0 20px;}
	#contenu #paginator .pagination-lien, #contenu #paginator .pagination-span {margin:0 9px;}

	.mosaique-conteneur {text-align:center;}
	
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte {width:100%}
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte > div {margin:0 auto 25px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
	#gabarit-photo .gabarit-photo-conteneur .gabarit-image {width:100%}
	
	#back-to-top {bottom: 43px;right: 6px;}
		
	.tableau-parent-3 .tableau-enfant, 
	.tableau-parent-4 .tableau-enfant, 
	.tableau-parent-5 .tableau-enfant {width:calc(50% - 35px) !important; }
		
	.table-responsive-50-pourcent tr,
    .table-responsive-100-pourcent tr {	width: 100%; margin: 0 0 1rem;}	
	
	#contenu .table-vertical thead tr {
	    left: -9999px;
	    position: absolute;
	    top: -9999px;
	}
	#contenu .table-vertical table, #contenu .table-vertical thead, #contenu .table-vertical tbody, #contenu .table-vertical th, #contenu .table-vertical td, #contenu .table-vertical tr {
	    display: block;
	}
	#contenu .table-vertical td {
	    -moz-border-bottom-colors: none;
	    -moz-border-left-colors: none;
	    -moz-border-right-colors: none;
	    -moz-border-top-colors: none;
	    border-color: #e0e0e0;
	    border-image: none;
	    border-style: none none solid;
	    border-width: 0 0 1px;
	    padding-left: 50% !important;
	    position: relative;
	    text-align: center;
	    white-space: normal;
	    padding-top: 3px;
	    padding-bottom:3px;
	    height:25px;
	}
	
	#contenu .table-vertical td::before {
	    content: attr(data-title);
	    font-weight: 700;
	    left: 6px;
	    padding-right: 10px;
	    position: absolute;
	    text-align: left;
	    top: 6px;
	    white-space: nowrap;
	    width: 45%;font-size: 14px;
	}	

	/* #reseaux-partage-gauche */
	#reseaux-partage-gauche-conteneur {top: initial;bottom: 0;width: 100%;display: flex;transform: rotateY(0);top: initial!important;}
	#reseaux-partage-gauche-conteneur .reseau-partage {width: auto;flex: 1;}
	#reseaux-partage-gauche-conteneur .reseau-partage .reseau-partage-image {left: -0;border-radius: 0!important;    padding: 0!important;}
	#reseaux-partage-gauche-conteneur #reseau-partage-gauche-facebook .reseau-partage-image {padding: 7px 7px 3px 7px;}
    #reseaux-partage-gauche-conteneur .reseau-partage i{transform: rotateY(0);text-align: center;-webkit-transition: all 250ms ease-in-out;-moz-transition: all 250ms ease-in-out;-ms-transition: all 250ms ease-in-out;-o-transition: all 250ms ease-in-out;transition: all 250ms ease-in-out;}
    #reseaux-partage-gauche-conteneur .reseau-partage:hover .reseau-partage-image {left: 0;}
	#reseaux-partage-gauche-conteneur .reseau-partage:hover i {transform: translateX(5px);}
  
}



@media only screen and (max-width: 767px) {
	
	/* Table responsive */
	table.table-responsive { margin-bottom: 0; }
	.pinned { position: absolute; left: 0; top: 0; z-index:20; background: #fff; width: 181px; overflow: hidden; }
	.pinned table { border-right: none; border-left: none; width: 100%; }
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	.pinned table th p, .pinned table td p,
	table.table-responsive th:first-child p, table.table-responsive td:first-child p, 
	table.table-responsive td:first-child p	{ text-align:left !important; margin-top:6px; }
	
	.pinned td:last-child { border-bottom: 0; }	
	
	table.table-responsive td, table.table-responsive th {  white-space: nowrap; overflow: hidden; }
	table.table-responsive thead th {}
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child	{opacity:0;  white-space: initial; }
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child	{ width:180px !important; max-width:180px; min-width:180px; word-wrap:break-word; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box; }
	.table-responsive-label th.table-responsive-label-th {display:table-cell !important;}
	
		
}

@media all and (max-width: 715px) {	
	#actualites .actualite .actualite-image {height: 210px;}
	
	#recap-produit-nbproduits {max-width: 300px;}

		
	#pied .col {display:block !important; width:100% !important; margin:15px 0;}
	
	#pied #col-contact { display:block;}
}

@media all and (max-width: 685px) {	
	
	body {font-size: 16px;}
	#global h1, #global h2.h1, .white-popup h1 {font-size: 30px;line-height: 35px;}
	#global h2:not(.h1), .white-popup h2:not(.h1) {font-size: 22px;}
	#accueil-presentation-conteneur .accueil-presentation-texte-conteneur .accueil-presentation-texte p {font-size: 16px;line-height: 24px;}
	.submit input, input.submit, .bouton, .bouton-fleche, #global a.bouton, #global a.bouton:visited, #global a.bouton-fleche, #global a.bouton-fleche:visited {font-size: 20px;}


	#accueil-presentation-conteneur .accueil-presentation-texte-conteneur .accueil-presentation-texte p {font-size:17px; line-height:26px;}
	#accueil-presentation-conteneur .global > div {	width: 100%;padding: 0 10px;}
	.tableau-enfant {margin:5px !important;}
	.tableau-parent-2 .tableau-enfant,
	.tableau-parent-3 .tableau-enfant,
	.tableau-parent-4 .tableau-enfant,
	.tableau-parent-5 .tableau-enfant {width:calc(50% - 15px) !important; }


	#accueil-paves-conteneur {bottom: initial;top: 242px;}
	#accueil-paves-conteneur .accueil-pave {width: 100%;}


	#accueil-presentation-conteneur {padding: 1010px 0 0px;}
}
@media all and (max-width: 640px) {	
	
	#accueil-presentation-conteneur .accueil-presentation-bouton > a, 
	#accueil-presentation-conteneur .accueil-presentation-bouton > div {width: 95%;max-width: 305px;margin: 5px auto !important;}

	/* RASSURANCES */

	#rassurances .rassurance {width: 180px;}
	#rassurances .separation{display: none;}
	
}

@media all and (max-width: 625px) {
	/* Renseignement petite barre */
	#contenu .renseignement-titre {width: 100%;-webkit-box-flex: initial;-ms-flex: initial;flex: initial;min-width: 0;}
	#contenu .renseignement-titre::after {display:none;}
	#contenu .renseignement-contenu {width:100%;padding: 5px 0 5px 0px;min-width: 0;} 

}

@media all and (max-width: 605px) {
    	
	#contenu p,
	#contenu ul,
	#contenu h2,
	#contenu h3 {margin-left:0px;}
	#contenu ul ul {margin-left: 20px;}
				
	
	/* Table responsive */
	.pinned {width:136px;}
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child {max-width:115px; width:115px !important; min-width:115px;font-size:15px;  box-sizing: initial;-webkit-box-sizing: initial;-moz-box-sizing: initial;-khtml-box-sizing:initial;  }
	table.table-responsive th {font-size:15px;}
	

	#accueil-presentation-conteneur .accueil-presentation-bouton {text-align: center;}
	#accueil-presentation-conteneur .accueil-presentation-bouton a.bouton:visited, 
	#accueil-presentation-conteneur .accueil-presentation-bouton a.bouton {border-radius: 10px;min-width: 300px;font-size: 15px;margin:10px auto !important;}
	#accueil-presentation-conteneur .accueil-presentation-bouton a.bouton.service br{display: none;}
	#accueil-presentation-conteneur .accueil-presentation-bouton a.bouton.service i {margin: 0 23px 0 17px;}
	#accueil-presentation-conteneur .accueil-presentation-bouton a.bouton.intervention i {margin: 0 19px 0 0px;}
	

}


@media all and (max-width:580px) {
	
	
	#actualites .actualite .actualite-image {height: 170px;}
	#actualites .actualite .actualite-nom > span, 
	#actualites .actualite .actualite-nom a > span, 
	#actualites .actualite .actualite-nom a:visited > span {font-size:18px;  line-height: 22px;}
	
	
	#accueil-slider .accueil-slider-li .accueil-slider-imageordi {display:none !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagetablette {display:none !important;}	
	#accueil-slider .accueil-slider-li .accueil-slider-imagemobile {display:block !important;}
	
	
	#accueil-decouvrir-conteneur {padding: 500px 0 200px;}

}

@media all and (max-width:560px) {


}

@media all and (max-width:530px) {
	
}

@media all and (max-width:500px) {
		
	#actualites .actualite {margin:10px auto; width:100%;}
	#actualites .actualite .actualite-nom,
	#actualites .actualite .actualite-nom a, #actualites .actualite .actualite-nom a:visited {min-height:0;}
	#actualites .actualite .actualite-contenu {min-height:0;}
				
	.tableau-parent-2 .tableau-enfant,
	.tableau-parent-3 .tableau-enfant,
	.tableau-parent-4 .tableau-enfant,
	.tableau-parent-5 .tableau-enfant {margin:5px auto !important; width:100% !important; }
}

@media all and (max-width:480px) {
	
	#bandeau.sm #bandeau-client a.bouton,
	#bandeau.sm #bandeau-client a.bouton:visited {height: 25px; width: 25px; padding: 0;}
	#bandeau.sm #bandeau-client a.bouton span, 
	#bandeau.sm #bandeau-client a.bouton:visited span {display:none;}
	#bandeau.sm #bandeau-client a.bouton i, 
	#bandeau.sm #bandeau-client a.bouton:visited i {margin:0;}
	
	#contenu #paginator .pagination-fleche {display:none !important;}

	#global h1, #global h2.h1, .white-popup h1 {font-size: 23px;line-height: 30px;}

	#etape-vie #etape-vie-conteneur {margin-top: 30px;}
	
	#rassurances-conteneur-titre {font-size: 25px;line-height: 32px;}
	#rassurances-conteneur-titre::after {margin-top: 13px;}

	#pied .menu li > a::after {margin: 4px 5px 0;}
}

@media all and (max-width:450px) {	
	/* LABEL SUR LE COTÉ */
	.table-responsive-50-pourcent td {padding-left: 110px;}
	.table-responsive-50-pourcent td.nolabel {padding-left: 8px; text-align:center;}
	.table-responsive-50-pourcent td::before {width: 90px;padding: 5px;text-align: center;justify-content: center;line-height: 15px;}
	.table-responsive-50-pourcent td.nolabel::before {display:none;}

	/* LABEL AU DESSUS */
	.table-responsive-100-pourcent td {padding: 0 0 7px; text-align: center !important;}
	.table-responsive-100-pourcent td.nolabel { background: #fff !important;}
	.table-responsive-100-pourcent td::before {padding: 8px 5px; margin-bottom: 10px; text-align: center;justify-content: center;line-height: 15px;position: relative;top: 0;left: 0;width: 100%;	box-sizing: border-box;}
	.table-responsive-100-pourcent td.nolabel::before {display:none;}
	.table-responsive-100-pourcent tr {margin: 0 0 38px;}
	
	/* Table responsive */
	.pinned {width:116px;}
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child {max-width:95px; width:95px !important; font-size:14px; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box; }

	#recherche-pagination {display:none;}
	
	/* MODULE REALISATIONS AVEC FILTRES */	
	#realisations-famille .conteneur.realisation { width:100%; margin:10px auto !important;max-height: 375px; } 		
	#realisations-famille .contenu .titre, 
	#realisations-famille .contenu .titre a, 
	#realisations-famille .contenu .titre a:visited {font-size:17px;}
	#realisations-famille .contenu .nom {font-size:15px;}	
}

/* Smartphone */
@media all and (max-width:435px) {		
	#bandeau #bandeau-client a.bouton,
	#bandeau #bandeau-client a.bouton:visited {height: 25px; width: 25px; padding: 0;}
	#bandeau #bandeau-client a.bouton span, 
	#bandeau #bandeau-client a.bouton:visited span {display:none;}
	#bandeau #bandeau-client a.bouton i, 
	#bandeau #bandeau-client a.bouton:visited i {margin:0;}

	#bandeau #bandeau-reseaux{display: none;}

	#contenu img { margin-left: auto !important; margin-right: auto !important;}

	#etape-vie {margin-top: 30px;padding: 5px 0 10px;}
	
	#cookie-message-wrapper {
    	padding: 20px 10px 20px 10px;
    }
    
    #cookie-choix-contenu .cookie-choix span {
    	font-size:11px;
    }
    
    #cookie-consent-form .categorie .titre {
    	width: 50%;
    }
    #cookie-consent-form .categorie .configuration {
    	width: 48%;
    }

	#pied #pied-reseaux {display: -webkit-box;display: -ms-flexbox;display: flex;}
}

@media all and (max-width:350px) {
	#bandeau.sm #bandeau-telephone a.bouton, #bandeau #bandeau-telephone a.bouton:visited {width: auto; padding: 0 5px; font-size:15px;}
	#bandeau.sm #bandeau-telephone i {display:none;}
}