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

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

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

div, td {
	font-family: 'Roboto';
	font-weight: 300;
	margin:0;
	padding:0;
	color:#131313;
	line-height:22px;
	font-size:16px;
	}

a {
	text-decoration:none;
	font-size:16px;
	color: #1e4148;
	-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:#306068;
	}

.clear { 
	clear:both;
	height:0;
	}
	
img {
	 border: none;
     display: block;
     margin: 0 auto;
	 }
	 
h1, h2, h3, h4 {
	margin:0;
    padding:0;
	text-transform: uppercase;
	}

h1 {
	font-family: 'Roboto-Medium';
	font-weight: normal;
	font-size:22px;
	color: #131313;
	text-align: center;	
	background: #fff;
	padding: 0 60px;
	display: inline-block;
	vertical-align: middle;
	max-width: 50%;
	}	

h2 {
	font-size:18px;
	color: #295388;
	}

p{
	padding: 10px 0;
	margin: 0;
}

*,*:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	}

.center{
	text-align:center;
	}

#pageweb { overflow: hidden; width: 100%;}
.container { margin:0 auto; width: 100%; max-width: 1176px; padding: 0 10px;}
.wrap{ margin:0 auto; width: 100%; max-width: 1820px; padding: 0 10px;}

/*TOP*/
#top {}

#logo-mn{ background: #1e4148; padding: 20px 0;}
.bloc-logo-mn{ display: flex; justify-content: space-between; align-items: center;}
#logo img{ max-width: 100%; height: auto;}
.adr{ color: #8DA1A4; font-size: 18px;}
.adr a{ font-family: 'Roboto-Medium'; color: #8DA1A4; font-size: 30px;}
.adr a:hover{ color: #ffda81;}
.mn {}
.mn ul{ margin: 0; padding: 0; display: flex; justify-content: center;}
.mn ul li{ list-style: none; width: 100%; max-width: 25%; margin: 0 1px; position: relative; z-index: 0; background: #306068;}
.mn ul li::before { content: ""; position: absolute; background: #8DA1A4; 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 ul li:hover::before { transform: scale(1); width: 100%;}
.mn ul li a{ display: flex; justify-content: center; align-items: center; min-height: 100px; flex-wrap: wrap; text-align: center; padding: 0 25px; color: #8DA1A4;font-size: 18px; text-transform: uppercase;}
.mn ul li a:hover{ color: #131313;}

/*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*/

/*CENTRAL*/
#central { padding-top: 35px;}

.bloc-ttl{ padding-bottom: 70px;}
.ttl{ background: url(../images/bg_h1.png) repeat-x center center; text-align: center; position: relative;}
.ttl::before{ content: ''; background: url(../images/bg_ttl.png) no-repeat; position: absolute; z-index: 1; bottom: -80px; width: 70px; height: 20px; left: 0; right: 0; margin: 0 auto;}

#corps{ padding: 60px 0;}
#cont1{}
.txt1{ width: 100%; max-width: 890px; margin: 0 auto; padding: 0 10px; text-align: center;}
.ph1{ padding: 60px 0;}
.ph1 ul{ margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap;}
.ph1 ul li{ list-style: none; width: 100%; max-width: 25%; padding: 0 10px;}
.ph1 ul li img{ max-width: 100%; height: auto;}

#cont2{ display: flex;}
.bloc-txt2{ background: #1e4148; width: 100%; max-width: 50%; display: flex; align-items: center; justify-content: flex-end;}
.txt2{ color: #fff; width: 100%; max-width: 60%; padding-right: 30px;}
.txt2 a{ color: #ffda81;}
.txt2 a:hover{ color: #8DA1A4;}
.txt2 > div{ color: #8DA1A4;}
.txt2 h2{ color: #ffda81;}
.txt2 ul li{ list-style: circle;}
.ph2{ width: 100%; max-width: 50%;}

#cont3{ display: flex; justify-content: space-between; align-items: center; padding-top: 60px;}
.ph3,.txt3{ width: 100%; max-width: 50%}
.ph3 ul{ margin: 0; padding: 0; display: flex; justify-content: space-between;}
.ph3 ul li{ list-style: none; width: 100%; max-width: 50%; padding: 0 10px;}
.ph3 ul li img{ max-width: 100%; height: auto;}
.txt3{ padding-left: 20px;}
.txt3 ul li{ list-style: circle;}

/*FOOTER*/
#footer { background: #ffda81; padding: 30px 0;}
#foot { text-align: center;}
.menu {}
.menu ul { margin: 0; padding: 0; display: flex; justify-content: center;}
.menu li { list-style: none; background: url(../images/bg_menu.png) no-repeat center right;}
.menu ul li:last-child{ background: none;}
.menu a { display: block; color: #29383c; font-size: 14px; text-transform: uppercase; padding: 0 10px;}
.menu a:hover{ color: #306068;}
.com { padding-top: 30px; display: flex; justify-content: center;}

/*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: #29383c; 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: 30px;}
.map-google iframe{ margin:0; padding:0; border:none; width:100%; height:500px;}
/*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; display: none;}
#diapo-inner{ width:70%; margin: 0 auto;}
.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){
	.txt2{ max-width: 70%;}
}
@media only screen and (max-width:1679px){}
@media only screen and (max-width:1599px){
	#logo{ padding-right: 30px;}
	.adr{ width: 100%; max-width: 330px;}
	.mn ul li a{ padding: 25px 15px; font-size: 16px;}
	.txt2 { max-width: 80%;}
}
@media only screen and (max-width:1439px){
	.txt2 { max-width: 85%;}
}
@media only screen and (max-width:1365px){
	.txt2 { max-width: 90%;}
}
@media only screen and (max-width:1359px){}
@media only screen and (max-width:1279px){
	.adr{ max-width: 315px;}
	.mn ul li a { padding: 25px 10px; font-size: 14px;}
	.bloc-ttl{ padding-bottom: 50px;}
	.ttl::before { bottom: -50px;}
	#corps{ padding: 20px 0;}
	.txt2 { max-width: 100%; padding: 0 10px;}
	.ph1 { padding: 25px 0;}
	#cont3{padding-top: 25px;}
}
@media only screen and (max-width:1151px){
	.bloc-logo-mn{ flex-wrap: wrap;}
	#logo{ width: 100%; padding-bottom: 20px; padding-right: 0;}
	h1{ max-width: 70%;}
	.ph1 ul li{ padding: 0 5px;}
	.mn{ width: calc(100% - 315px);}
}
@media only screen and (max-width:1059px){}
@media only screen and (max-width:1023px){}
@media only screen and (max-width:979px){
	#smartnav{display: block;}
	.mn,.menu{ display: none;}
	.adr{ margin: 0 auto; padding-right: 0;}
	#diapo-inner{ width: 80%;}
	.com{ padding: 0;}
}
@media only screen and (max-width:899px){
	h1{max-width: 80%; padding: 0 10px;}
	#cont2,#cont3{ flex-wrap: wrap;}
	.bloc-txt2,.ph2,.ph3, .txt3{ max-width: 100%;}
	.txt2{ padding: 20px 10px;}
	.ph2 img{ max-width: 100%; height: auto;}
	.ph3{ order: 2; padding-top: 20px;}
	.txt3{ order: 1; padding: 0;}
	#diapo-inner{ width: 90%;}
}
@media only screen and (max-width:799px){}
@media only screen and (max-width:767px){
	#diapo-inner{ width: 100%;}
}
@media only screen and (max-width:719px){}
@media only screen and (max-width:639px){}
@media only screen and (max-width:599px){
	h1{ font-size: 19px;}
	.ph3 ul li{ padding: 0 5px;}
}
@media only screen and (max-width:532px){	
	.ph1 ul li{ max-width: 50%; padding: 5px;}
}
@media only screen and (max-width:479px){
	div{ font-size: 14px;}
	.ttl{ background: none;}
	h1{ max-width: 100%; padding: 0;}
}
@media only screen and (max-width:359px){
	.adr a { font-size: 28px;}
}