/*=========================================================================*/
/*Entry_title sidebar_title*/
/*=========================================================================*/
.entry_title{
    padding:0.8em 0;
    position:relative;
    }
    .entry_title h1{
        line-height:1.3!important;
        font-family: 'Montserrat-Bold';
        color:#fff;
        }
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .entry_title{padding:1.1em 0;}
}
@media only screen and (min-width: 640px) and (max-width: 768px) {
    .entry_title{padding:1.4em 0;}
}
@media only screen and (min-width: 480px) and (max-width: 640px) {
    .entry_title{padding:1.9em 0;}
}
@media only screen and (min-width: 0px) and (max-width: 480px) {
    .entry_title{padding:2.5em 0;}
}


/*=========================================================================*/
/*Entry_content -› page_defaut*/
/*=========================================================================*/
.entry-content{
    padding:1.5em 2.5em;
    background:#fff;
    }
    .entry-content strong, .entry-content_field strong{
        font-family:'Montserrat-Bold';
        font-weight:normal;
        }
    .entry-content a, .entry-content_field a{
        border-bottom:2px solid #f4ebe5;
        -webkit-transition:0.15s border-color ease-in-out;
        -o-transition:0.15s border-color ease-in-out;
        transition:0.15s border-color ease-in-out;
        }
        .entry-content a:hover, .entry-content_field a:hover{
            border-bottom:2px solid #586b88;
            -webkit-transition:0.15s border-color ease-in-out;
            -o-transition:0.15s border-color ease-in-out;
            transition:0.15s border-color ease-in-out;
            }
    .entry-content h1, .entry-content_field h1{
        text-transform:uppercase;
        font-family:'Montserrat-ExtraLight';
        color:#586b88;
        padding:1em 0 0.4em 0;
        }
        .entry-content h1 span, .entry-content_field h1 span{
            font-size:0.8em;
            padding-bottom:0.1em;
            display:block;
            border-bottom:1px solid #f4ebe5;
            }
    .entry-content h5, .entry-content_field h5{
        font-family:'Montserrat-Bold';
        color:#586b88;
        padding:1em 0 0.4em 0;
        }
    .entry-content p, .entry-content ul, .entry-content_field p, .entry-content_field ul{
        padding:0.4em 0;
        }
    .entry-content p.legende, .entry-content_field p.legende{
        color:#b8b1b5;
        }
    .entry-content li:before, .entry-content_field li:before{
        color:#586b88;
        }
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .entry-content{padding:2em 2em;}
}
@media only screen and (min-width: 640px) and (max-width: 768px) {
    .entry-content{padding:2em 2em;}
}
@media only screen and (min-width: 480px) and (max-width: 640px) {
    .entry-content{padding:3em 2em;}
}
@media only screen and (min-width: 0px) and (max-width: 480px) {
    .entry-content{padding:4em 0em;}
}

@font-face {
    font-family: Avenir;
    src: url(../fonts/Avenir.ttc);
}


/*=========================================================================*/
/*Header
/*=========================================================================*/

header{
	display:flex;
	flex-wrap:wrap;
	width:100%;
	background-color:#ffffff;
    height:100px;
    align-items:center;
    padding: 5px 12.5%;
	color:#000;
	position:relative;
	font-weight:600;
	position:fixed;
	top:0;
	z-index:5;
	/* border-bottom:solid 1.5px #642F2C; */
}

header ul,
#footer ul{
	list-style-type:none;
	font-family: 'Roboto-Light', sans-serif;
}

#footer ul li,
header ul li{
	list-style:none;
}

header>a>img{
    width: auto;
    height:80px;
	padding:0;
}

header .header_right{
	flex:1;
	display:flex;
	flex-wrap:wrap;
	text-align:center;
}

header .header_right img{
	height:20px;
	width:auto;
	margin:0 5px;
}

header .header_right a>img{
	height:18px;
	width:auto;
}

header .header_right span{
	margin-right:5px;
}
header .cta_rs{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	width:100%;
	align-items:center;
	height:35px;
}

.button{
    background-color: #408927;
    border: solid 2px #408927;
    color: #ffffff;
    font-weight: 500;
    width: 120px;
    height: 30px;
    font-size: 14px;
    border-radius: 5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-top: 2px;
}

.button:hover{
	background-color:transparent;
	color:#408927;
	-webkit-transition: all 0.6s ease;
    -moz-transition:    all 0.8s ease;
    -ms-transition:     all 0.8s ease;
    -o-transition:      all 0.8s ease;
    transition:         all 0.6s ease;
}

header .cta_rs p{
	color:#642F2C;
	display:flex;
	flex-wrap:wrap;
	margin:0 30px;
	align-items:center;
	font-size:15px;
}

header #menu-main-menu{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
}

header .desktop_nav{
	width:100%;
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
	height:35px;
}

header #menu-main-menu .sub-menu{
    position: absolute;
    z-index: 5;
    top:20px;
    background-color: #ffffff;
    display: flex;
    flex-wrap: wrap;
    left: 0;
    flex-direction: column;
	margin-left:0;
	width:100%;
	display:none;
	padding-top:20px;
}

header #menu-main-menu .sub-menu>li{
	font-size:13px;
	padding:7px;
	text-align:center;
}

/* header #menu-main-menu .sub-menu li:last-child{ */
	/* padding:7px 25px 14px; */
/* } */

header #menu-main-menu>li{
	padding:0 25px;
	font-size:16px;
	font-family: 'Roboto-Light', sans-serif;
	position:relative;
}

header #menu-main-menu>li:hover{
	color:#642F2C;
	transition: all 0.6s ease;
}

header #menu-main-menu>li:hover:after{
	content:"";
	bottom:-2px;
	left:50%;
	width:40px;
	height:2px;
	background-color:#642F2C;
	position:absolute;
	transform:translateX(-50%);
}

header #menu-main-menu .sub-menu>li:hover{
	background-color:#a1d6e2;
}

.burger_nav{
    display: none;
}

.bandeau{
	height: 110px;
    background-position: center;
    background-size: cover;
    background-repeat:no-repeat;
	display:flex;
	flex-wrap:wrap;
	padding-top:10px;
}

.bandeau h1,
.bandeau p{
	color:#642F2C;
	font-size:22px;
	margin:0;
	font-family: 'Roboto-Bold', sans-serif;
}

.bandeau>div{
    width: 100%;
    background-color: #fff;
    height: 50px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}

.bandeau .main_width{
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}

.bandeau>div.breadcrumb{
	color:#ffffff;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	margin-top:3px;
	font-style:italic;
	background-color:transparent;
}

div.breadcrumb.main_width{
	margin: 0 auto 10px;	
}

.breadcrumb>div{
    height: 100%;
    flex-wrap: wrap;
    align-items: center;
    display: flex;
}

.breadcrumb p{
	margin:5px 0;
	font-size:13px;
	font-family:Roboto-LightItalic;
}

.breadcrumb p strong{
    font-family: Roboto-Bold;
    font-style: italic;
}

.fixed{
	position:fixed;
	z-index:10;
	width:70px;
	height:70px;
	background-color:#000;
	border-radius:50%;
	right:100px;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
}

.fixed p{
	display:none;
	color:#fff;
	font-weight:600;
	text-align:center;	
	margin:0;
	line-height:1;
}

.fixed:hover img{
	display:none;
}

.fixed#up:hover img{
	display:block;
}

.fixed:hover p{
	display:block;
}

.fixed#up{
	bottom:285px;
	background-color:#a1d6e2;
}

.fixed#home{
	bottom:200px;
	background-color:#408927;
}

.fixed#immo{
	bottom:115px;
	background-color:#005674;	
}

.fixed#phone{
	bottom:30px;
	background-color:#f27059;
}

.fixed img{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	height:30px;
	width:auto;
}
/*=========================================================================*/
/*Responsive Header
/*=========================================================================*/

@media only screen and (min-width: 0) and (max-width: 1050px) {
	
		.header_right{display:none!important;}

		.burger_nav{
			display: block;
			position: absolute;
			top: 10px;
			height: 60px;
			right: 0;
			top: 0;
			z-index: 100;
			padding:35px 0;
		}

		#burger{
		  display: block;
		  position: relative;
		  top:0;
		  right: 30px;
		  z-index: 1;
		  height:100vh;
		  -webkit-user-select: none;
		  user-select: none;
		}

		#burger input
		{
		  display: block;
		  width: 40px;
		  height: 32px;
		  position: absolute;
		  top: -7px;
		  left: -5px;
		  cursor: pointer;
		  opacity: 0; /* hide this */
		  z-index: 2; /* and place it over the hamburger */
		  -webkit-touch-callout: none;
		}

		#burger span{
		  display: block;
		  width: 33px;
		  height: 4px;
		  margin-bottom: 5px;
		  position: relative;
		  background:#642F2C;
		  border-radius: 3px;
		  z-index: 1;
		  transform-origin: 4px 0px;
		  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
					  background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
					  opacity 0.55s ease;
		}

		#burger span:first-child
		{
		  transform-origin: 0% 0%;
		}

		#burger span:nth-last-child(2)
		{
		  transform-origin: 0% 100%;
		}

		#burger input:checked ~ span
		{
		  opacity: 1;
		  transform: rotate(45deg) translate(-2px, -1px);
		  background:#fff;
		}

		#burger input:checked ~ span:nth-last-child(3)
		{
		  opacity: 0;
		  transform: rotate(0deg) scale(0.2, 0.2);
		}

		#burger input:checked ~ span:nth-last-child(2)
		{
		  transform: rotate(-45deg) translate(0, -1px);
		}

		#burger .menu-menu-burger-container{
			position: absolute;
			width: 300px;
			margin: 0 0 0 -180px;
			height: 100vh;
			top: -35px;
			padding: 60px 30px;
			background-color: #642F2C;
			list-style-type: none;
			-webkit-font-smoothing: antialiased;
			transform-origin: 0% 0%;
			transform: translate(100%, 0); 
			transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
			color:#fff;
			
		}

		#burger li{	
		  font-weight: 550;
		  text-transform: uppercase;
		  padding: 10px 0;
		  font-size: 14px;
		}
		
		#burger li>ul>li{	
			text-transform: capitalize;
		}

		#burger input:checked ~ .menu-menu-burger-container{
		  transform: none;
		}
}


/*=========================================================================*/
/*Footer
/*=========================================================================*/

#footer section{
	display:block;
	margin-bottom:0;
	font-family: 'Roboto-Light', sans-serif;
}

#footer .main_menu_footer{
	background-color:#999;
	color:#ffffff;
}

#footer .main_menu_footer .main_width>div{
	display:flex;
	flex-wrap:wrap;
	width:100%;
}

#footer .main_menu_footer .main_width{
	margin:15px auto;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}

#footer .main_menu_footer .main_width>div{
	width:50%;
}

#footer .main_menu_footer  img{
	height:90px;
	width:auto;
}

#footer .menu-main-menu-footer-container{
	width:calc(100% - 280px);
}

#footer ul{
	margin-left:0;
}

#footer .main_menu_footer #menu-main-menu-footer{
	display:flex;
	flex-wrap:wrap;
}

#footer .main_menu_footer #menu-main-menu-footer>li{
	font-weight:600;
	font-size:16px;
	margin-right:40px;
}

#footer .main_menu_footer #menu-main-menu-footer>li>ul>li{
	font-weight:300;
	font-size:13px;
	margin:5px 0;
}

#footer .footer_rs{
	width:280px;
}	

#footer .footer_rs>div{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	margin-top:15px;
}

#footer .last_menu_footer{
	background-color:#408927;
	color:#ffffff;
	padding:18px 0;
	border-top:solid 2px #ffffff;
}

#footer .last_menu_footer #menu-sub-menu-footer{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}

#footer .last_menu_footer .main_width{
	margin:0 auto;
}

#footer .last_menu_footer li{
	font-size:13px;
	margin:0 30px;
}

#footer #span_menu_footer{
	display:flex;
	flex-wrap:wrap;
	flex-direction:column;
}

#footer #span_menu_footer a{
	font-family: 'Roboto-Light', sans-serif;
	margin:2px 0;
}

.logo_blanc{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
/*=========================================================================*/
/*Home
/*=========================================================================*/
.page_accueil .main_accueil{
height:350px;
width:100%;
background-size:cover;
position:relative;
margin-bottom:60px;
}

.page_accueil .main_accueil .description{
position:absolute;
z-index:1;
width:48%;
background-color:#FFFFFF9C;
top:50%;
right:50%;
transform:translate(50%, -50%);
height:210px;
}

.page_accueil .main_accueil .description>div{
position:absolute;
z-index:2;
width:100%;
height:100%;
display:flex;
flex-wrap:wrap;
padding:30px;
flex-direction: column;
justify-content: space-between;
}

.page_accueil .main_accueil .description>div>div{
display:flex;
flex-wrap:wrap;
flex-direction: column;
justify-content:center;
}

.page_accueil .main_accueil .description a{
	margin:0 auto;
}

#nom_entreprise{
	color:#642F2C;
	text-transform:uppercase;
	font-size:24px;
	z-index:2;
	position:relative;
	margin-bottom:24px;
	margin:auto;
	font-family: 'Roboto-Bold', sans-serif;
}

.page_accueil .main_accueil h1{
	color:#000;
	font-size:18px;
	z-index:2;
	text-align:center;	
}

ul{
	list-style-type:disc;
}

li{
	list-style:inside;
}

section{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

section.accueil>div{
	width:calc(50% - 15px);
}

section.accueil .img{
	background-position:center;
	background-size:cover;
}

section.accueil .button{
	margin-top:20px;
	text-transform:uppercase;
}

.page_presentation section.services{
	margin:0 auto;
	padding:15px 0 0;
}

section .reparations{
	padding:15px;
	border:solid 1.5px #642F2C;
	width:100%;
}

section.main_width.section_rep{
	margin: 0 auto 20px;
}

section .reparations h2{
	color:#408927;
	font-size:14px;
	margin:0 0 15px;
}

section .reparations p{
	font-size:13px;
}

section .reparations .button{
	width:160px;
}

section .reparations h2::after{
	background-color:#408927;
	bottom:-5px;
}

.page_presentation section.eco{
	padding:0 0 60px;
	margin:0 auto;
}

.page_defaut a{
  color:#408927;
  text-decoration:underline;
  }
 
.page_defaut h3 {
    color: #642F2C;
    text-transform: uppercase;
}
/*=========================================================================*/
/*Page_contact
/*=========================================================================*/

#nf-form-2-cont{
	margin-top:30px;
}

#nf-form-2-cont,
#nf-form-2-cont label{
	color:#333333;
	font-size:14px;
	font-weight: 400;
	width:80%;
	margin:auto;
	font-family:Roboto-Regular;
	color:#767676;
}

#nf-form-2-cont .ninja-forms-req-symbol,
#nf-form-2-cont .nf-error .nf-error-msg{
	color:#408927;
}

#nf-form-2-cont .nf-error.field-wrap .nf-field-element:after{
	background-color:#408927;
}

#nf-form-2-cont .nf-error .ninja-forms-field{
	border-color: #408927 !important;
}

#nf-form-2-cont .nf-before-form-content{
	margin-bottom:30px;
}

#nf-form-2-cont .nf-form-content .list-select-wrap .nf-field-element>div, 
#nf-form-2-cont .nf-form-content input:not([type=button]), 
#nf-form-2-cont .nf-form-content textarea{
	background:#EBEDEF;
	color:#642F2C;
	border-radius:5px;
}

#nf-form-2-cont .nf-form-content button, 
#nf-form-2-cont .nf-form-content input[type=button], 
#nf-form-2-cont .nf-form-content input[type=submit]{
	border:solid 1.5px #408927;
	background-color:#408927;
	color:#ffffff;
	border-radius:5px;
	float:right;
	height:40px !important;
	width:140px;
}

#nf-form-2-cont .nf-field-container{
	margin-bottom:15px;
}

#nf-form-2-cont .nf-form-content input[type=button]{
	cursor:pointer;
}

#nf-form-2-cont .nf-form-content input[type=button]:hover{
	background-color:transparent; 
	color:#408927;	
	-webkit-transition: all 0.6s ease;
    -moz-transition:    all 0.8s ease;
    -ms-transition:     all 0.8s ease;
    -o-transition:      all 0.8s ease;
    transition:         all 0.6s ease;
}
#nf-form-2-cont .nf-form-content .listselect-wrap .nf-field-element div, 
#nf-form-2-cont .nf-form-content input.ninja-forms-field, 
#nf-form-2-cont .nf-form-content select.ninja-forms-field:not([multiple]){
	height:35px;
}

/*=========================================================================*/
/* Realisations
/*=========================================================================*/
.prez_realisations{
	margin:30px 0 50px;
}

.liste_realisations h3{
	color:#642F2C;
	text-transform:uppercase;
	position:relative;
}

.liste_realisations h3:after{
	content: "";
    height: 1px;
    width: 40px;
    background-color: #642F2C;
    position: absolute;
    bottom: -5px;
	left:0;
}

.liste_realisations{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.liste_realisations article{
	width:calc(50% - 15px);
	margin-bottom:15px;
}

.real_img{
	width:100%;
	height:330px;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	margin-bottom:15px;
}

/*=========================================================================*/
/*Single actu
/*=========================================================================*/

.single_actu h1{
	line-height: 1.2;
    margin: 0 0 30px;
    color: #642F2C;
    text-transform: uppercase;
    font-size: 18px;
    position: relative;
    font-family: 'Roboto-Bold', sans-serif;
}

.single_actu h1:after{
	content: "";
    height: 2px;
    width: 90px;
    background-color: #642F2C;
    position: absolute;
    bottom: -10px;
	left:0;
}

.single_actu img{
	width:60%;
	margin-bottom:60px;
}

/*=========================================================================*/
/*Page actus
/*=========================================================================*/

.actu_img{
	height:180px;
	width:100%;
	background-size: contain;
    background-repeat: no-repeat;
	background-position:center;
	margin-bottom:30px;
}

.page_actualites article{
	border:solid 1px #f3f3f3;
	padding:30px;
	border-radius:8px;
	box-shadow:5px 5px 5px #f6f6f6;
}

.page_actualites article .button{
	margin:30px auto 0;
}

/*=========================================================================*/
/*Page réalisation 56
/*=========================================================================*/
.page_realisations56 .areal{
	width:48% !important;
}
.page_realisations56 .postreal{
	width:100%;
}
/*=========================================================================*/
/*Responsive home
/*=========================================================================*/

@media only screen and (min-width: 0) and (max-width: 1150px) {
	.page_accueil .main_accueil .description{width:100%;}
	.main_width {width:74%;}
    header{padding:5px 13%;}
	#nf-form-2-cont,
}
@media only screen and (min-width: 0) and (max-width: 768px) {
	.main_width {width:86%; margin:0 auto;}
	header{padding:5px 7%;}
	section{flex-direction:column;}
	section.accueil>div{width:100%;}
	section.accueil .img{height:200px;margin:30px 0;}
	.page_accueil .main_accueil{margin-bottom:30px;}
	section.accueil:nth-child(2n+1){flex-flow: column-reverse;}
	#nom_entreprise{font-size:20px;}
	.page_accueil .main_accueil .description>div{padding:30px 0;}
	.areal{width:100%%;}
}
@media only screen and (min-width: 480px) and (max-width: 640px) {
}
@media only screen and (min-width: 0px) and (max-width: 480px) {
	#nom_entreprise{font-size:20px;}	
	.page_accueil .main_accueil h1{font-size:15px;}
	.page_accueil .main_accueil .description{height:70%;}
	#footer .main_menu_footer img{height:80px;}
}

/*=========================================================================*/
/*Responsive Realisations
/*=========================================================================*/
@media only screen and (min-width: 0) and (max-width: 768px) {
	.liste_realisations article{
	width:100%;
	}
}


