
@font-face {
  font-family: 'OpenSans';
  src: url('OpenSans.eot?#iefix') format('embedded-opentype'),  url('OpenSans.woff') format('woff'), url('OpenSans.ttf')  format('truetype'), url('OpenSans.svg#OpenSans') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'OpenSans-Extrabold';
  src: url('OpenSans-Extrabold.eot?#iefix') format('embedded-opentype'),  url('OpenSans-Extrabold.woff') format('woff'), url('OpenSans-Extrabold.ttf')  format('truetype'), url('OpenSans-Extrabold.svg#OpenSans-Extrabold') format('svg');
  font-weight: normal;
  font-style: normal;
}

body {
	 margin:0; 
	 padding:0;
	 width:100%;	 
	 }

div, td {
	font-family: 'OpenSans';
	margin:0;
	padding:0;
	color:#131313;
	line-height:20px;
	font-size:16px;
	}

a {
	text-decoration:none;
	font-size:16px;
	color: #455878;
	-moz-transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
	}

a:hover {
	color:#131313;
	}

.clear { 
	clear:both;
	height:0;
	}
	
.img {
	 border: none;
     display: block;
     margin: 0 auto;
	 }
	 
h1, h2, h3, h4 {
	font-family: 'OpenSans-Extrabold';
	font-weight: normal;
	margin:0;
    padding:0;
	}

h1 {
	font-size:24px;
	line-height: 24px;
	color: #455878;
	}	

h2 {
	font-size:16px;
	color: #131313;
	}
	
*,*:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	}

.center{
	text-align:center;
	}

#pageweb { width:100%; overflow: hidden;}
.wrapper { margin:0 auto; width: 100%; max-width: 1176px; padding-left: 10px; padding-right: 10px;}

/*TOP*/
#top {}
#bloc-mn { background: #455878; padding: 20px 0;}
.head-mn { display: flex; justify-content: space-between; align-items: center;}
.adr { background: url(../images/picto_adr.png) left center no-repeat; padding-left: 40px; color: #fff;}
.mn {}
.mn ul { margin: 0; padding: 0; display: flex;}
.mn li { list-style: none; position: relative; z-index: 0;}
.mn li::before { content: ""; position: absolute; background: #131313; width: 100%; height: 100%; z-index: -1; left:0; right:0; top: 0; bottom: 0; transform: scale(0); transition-duration: 0.3s;-moz-transition: all 0.5s ease-in-out; -webkit-transition: all 0.5s ease-in-out;-o-transition: all 0.5s ease-in-out;-ms-transition: all 0.5s ease-in-out;transition: all 0.5s ease-in-out;}
.mn li:hover::before { transform: scale(1); width: 100%;}
.mn a { display: block; color: #fff; text-transform: uppercase; padding: 20px;}
.mn a:hover { color: #fff;}

#flash-logo { position: relative;}
/*JSSOR*/
#flash { position: relative; width: 100%;}
.jssorl-009-spin img {
	animation-name: jssorl-009-spin;
	animation-duration: 1.6s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

@keyframes jssorl-009-spin {
	from {
		transform: rotate(0deg);}

	to {transform: rotate(360deg);}
}

.jssorb053 .i {position:absolute;cursor:pointer;}
.jssorb053 .i .b {fill:#fff;fill-opacity:0.5;}
.jssorb053 .i:hover .b {fill-opacity:.7;}
.jssorb053 .iav .b {fill-opacity: 1;}
.jssorb053 .i.idn {opacity:.3;}

.jssora093 {display:block;position:absolute;cursor:pointer;}
.jssora093 .c {fill:none;stroke:#fff;stroke-width:400;stroke-miterlimit:10;}
.jssora093 .a {fill:none;stroke:#fff;stroke-width:400;stroke-miterlimit:10;}
.jssora093:hover {opacity:.8;}
.jssora093.jssora093dn {opacity:.6;}
.jssora093.jssora093ds {opacity:.3;pointer-events:none;}
/*JSSOR*/

#head-logo {}
#bloc-logo { display: flex; justify-content: space-between;}
#logo { width: calc(100% - 380px); line-height: 0;}
#logo img { max-width: 100%; height: auto;}
.tel { width: 380px; background: url(../images/picto_tel.png) 95% 50% no-repeat #131313; display: flex; align-items: center; padding-right: 85px; justify-content: flex-end; position: relative;}
.tel:before { content: ''; background: #131313; position: absolute; z-index: 1; width: 100%; height: 100%; top: 0; left: 100%;}
.tel a { font-family: 'OpenSans-Extrabold'; color: #fff;display: block; font-size: 24px;}
.tel a:hover { color: #455878; }
.tel a.mobile-number{color: #455878;font-size: 20px;text-align: right;}


/*CENTRAL*/
#central {}
.ttl { padding-top: 30px; padding-bottom: 30px; position: relative;}
.ttl:before { content: ''; border-bottom: 1px #455878 solid; width: 70px; position: absolute; bottom: 0; left: 10px; z-index: 1;}

#corps { padding-top: 40px; padding-bottom: 40px;}
#bloc-cont { display: flex; justify-content: space-between; align-items: center;}
.ph, .txt { width: 100%; max-width: 50%;}
.ph { order: 2; position:relative; cursor:pointer; overflow:hidden; line-height:0;}
.ph img { max-width: 100%; height: auto;}
.ph::before, .ph::after { content:''; position:absolute; top:0; bottom:0; left:-25%; width:150%; background: rgba(225,225,225,0.2); transition:all 0.2s ease-in-out 0s;}
.ph::before { transform:rotate(45deg) translateY(195%);}
.ph::after { transform:rotate(45deg) translateY(-195%);}
.ph:hover::before { transform:rotate(45deg) translateY(-195%); transition-duration:0.5s;}
.ph:hover::after { transform:rotate(45deg) translateY(195%); transition-duration:0.5s;}
.txt { order: 1; padding-right: 30px;}

#bloc-galerie { padding-top: 70px;}
.galerie { font-family: 'OpenSans-Extrabold'; font-size: 24px; max-width: 240px; padding-left: 30px; margin: 0 auto; text-transform: uppercase; background: url(../images/picto_photo.png) left center no-repeat; color: #455878;}
.galerie span { color: #131313;}
.gal { border-top: 1px #b2b2b2 solid; padding-top: 20px; margin-top: 30px; position:relative; cursor:pointer; overflow:hidden;}
.gal ul { line-height:0; margin:0; padding:0; display: flex; justify-content: center;}
.gal li { list-style: none; position:relative; cursor:pointer; overflow:hidden; max-width: 25%; padding: 0 10px; border-right: 1px #b2b2b2 solid;}
.gal li:last-child { border-right: none;}
.gal li::before, .gal li::after { content:''; position:absolute; top:0; bottom:0; left:-25%; width:150%; background: rgba(225,225,225,0.2); transition:all 0.2s ease-in-out 0s;}
.gal li::before { transform:rotate(45deg) translateY(155%);}
.gal li::after { transform:rotate(45deg) translateY(-155%);}
.gal li:hover::before { transform:rotate(45deg) translateY(-155%); transition-duration:0.5s;}
.gal li:hover::after { transform:rotate(45deg) translateY(155%); transition-duration:0.5s;}
.gal li img { max-width: 100%; height: auto;}

/*FOOTER*/
#footer { padding: 40px 0; background: #131313;}
#foot { text-align: center;}
.menu {}
.menu ul { margin: 0; padding: 0; display: flex; justify-content: center;}
.menu li { list-style: none; position: relative; z-index: 0;}
.menu li::before { content: ""; position: absolute; background: #455878; width: 100%; height: 100%; z-index: -1; left:0; right:0; top: 0; bottom: 0; transform: scale(0); transition-duration: 0.3s;-moz-transition: all 0.5s ease-in-out; -webkit-transition: all 0.5s ease-in-out;-o-transition: all 0.5s ease-in-out;-ms-transition: all 0.5s ease-in-out;transition: all 0.5s ease-in-out;}
.menu li:hover::before { transform: scale(1); width: 100%;}
.menu a { display: block; color: #fff; font-size: 16px; text-transform: uppercase;; padding: 5px 20px;}
.menu a:hover { color: #fff;}
.com { padding-top: 30px}

/*CONTACT*/
.form-group{ margin:0 0 10px 0;}
.form-group label, .form-group input.form-input, textarea.form-textarea{ width:99%; display:block; margin:0 auto;}
input[type="text"],textarea,select{ padding:8px 5px; margin:8px 0; display:inline-block; border:1px solid #ccc; border-radius:4px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;}
.btn-form{ margin:10px 0 0 0;}
.btn-submit-1, .btn-submit-2{  background: #131313; border-color: #0073aa; -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15); box-shadow: inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15); color: #fff; text-decoration: none; width:200px; padding: 10px 16px; font-size: 15px; border:1px; border-radius:2px; -webkit-border-radius:2px; -moz-border-radius:2px; margin:10px 0 0 0; cursor:pointer; text-transform:capitalize;}
/*PLAN D'ACCES*/
.map-google{ width:100%; margin:0 auto; padding-top: 40px;}
.map-google iframe{ margin:0; padding:0; border:none; width:100%; height:400px;}
/*REALISATIONS*/
#diapo-container{}
p.titre-diapo{ text-transform:uppercase; font-weight:bold;}
#diapo-container ul, #diapo-container ul li{ margin:0; padding:0; list-style:none;}
#diapo-container .nav-diapo ul li { border-bottom:1px solid #eee;}
#diapo-container .nav-diapo ul li:first-child{ border-top:1px solid #eee;}
#diapo-container .nav-diapo ul li a{ display:block; padding:10px 0 10px 5px; text-transform:uppercase;}
#diapo-container .nav-diapo ul li.link-play a, #diapo-container .nav-diapo ul li a:hover{ background:#1b9bff; color:#fff;}
#diapo-container .nav-diapo ul li a:hover{ opacity:0.8;}
#diapo-container .nav-diapo ul{ padding-left:5px;}
.nav-diapo{ width:28%; float:left;}
#diapo-inner{ width:70%; float:right;}
.nav-diapo .link-disable{ cursor:not-allowed; opacity:0.4;}
@media screen and (max-width: 767px){
	#smartnav{ display:block;}
	#nav{ display:none;}
	}

#smartnav{ display:none;}

/*RESPONSIVE*/
@media only screen and (max-width:1919px){}
@media only screen and (max-width:1679px){}
@media only screen and (max-width:1599px){}
@media only screen and (max-width:1365px){}
@media only screen and (max-width:1359px){}
@media only screen and (max-width:1279px){}
@media only screen and (max-width:1151px){
	.mn a { padding: 20px 10px;}
}
@media only screen and (max-width:1059px){
	.menu a { padding: 5px 13px;}
}
@media only screen and (max-width:1023px){
	.mn a { font-size: 14px;}
}
@media only screen and (max-width:979px){
	.mn a { padding: 20px 6px;}
	.menu a { padding: 5px 10px; font-size: 14px;}
}
@media only screen and (max-width:899px){
	#smartnav{ display:block;}
	.mn, .menu { display: none;}
	#bloc-logo { flex-direction: column;}
	#logo, .tel { width: 100%;}
	#logo { padding-top: 10px; padding-bottom: 10px;}
	.tel { padding: 30px 105px 30px 0;}
	.tel:after { content: ''; background: #131313; position: absolute; z-index: 1; width: 100%; height: 100%; top: 0; right: 100%;}
	#bloc-cont { display: inherit;}
	.ph { float: right; padding-left: 30px; padding-bottom: 10px; max-width: 40%;}
	.txt { max-width: 100%; padding: 0 0 20px 0;}
	#bloc-galerie { padding-top: 30px; clear: both;}
	#footer { padding: 25px 0;}
	.com { padding-top: 0;}
}
@media only screen and (max-width:799px){}
@media only screen and (max-width:767px){}
@media only screen and (max-width:719px){}
@media only screen and (max-width:639px){
	.ph { max-width: 50%;}
}
@media only screen and (max-width:599px){
	#corps { padding-top: 30px; padding-bottom: 30px;}
	#bloc-cont { display: flex; flex-wrap: wrap;}
	.ph { float: none; padding-left: 0; padding-bottom: 20px; max-width: 100%; text-align: center; order: 2;}
	.txt { order: 1;}
	.gal ul { flex-wrap: wrap;}
	.gal li { max-width: 50%; padding: 5px; border: none;}
	.adr { margin: 0 auto;}
	.tel { justify-content: center; max-width: 255px; margin: 0 auto; padding: 30px 75px 30px 0;}
	#bloc-galerie { padding-top: 0;}
}
@media only screen and (max-width:532px){}
@media only screen and (max-width:479px){
	h1 {font-size: 19px; line-height: 19px;}
	.form-group { font-size: 13px;}
}
@media only screen and (max-width:359px){}