* {margin: 0; padding: 0;}
html {height: 100%;}
img {max-width:100%; height: auto;}
body {font-size: 14px; font-family: Arial; width: 100%; height: 100%; line-height: 20px; text-align: left; margin: 0; color: #333333; background: #f9f9f9;}
.clear {clear: both;}
div {box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
h1 {font-size: 30px; line-height: 40px; font-weight: bold; color: #2FAD09; text-align: left;  margin: 0 0 25px 0; padding-bottom: 10px; text-transform: uppercase; width: 100%; border-bottom: 1px solid #a4a4a4;}
h2 {font-size: 18px; line-height: 28px; text-transform: uppercase; font-weight: bold;}
h3.spip, h2.spip {font-size: 18px; color: black; font-weight: bold; text-align: left; line-height: 28px; text-transform: uppercase; margin: 20px 0 10px 0;}
p {font-size: 15px; line-height: 22px; margin: 0 0 5px 0; text-align: left; color: #333333;}
ul li, ol li {list-style-position: inside; font-size: 14px;  line-height: 21px; text-align: left;}
ol li ul {list-style-position: inside;  margin-left: 15px;}
ul, ol {margin: 0px 0px 20px 0px;}
a.spip_mail {color: black;}
a.spip_mail:before {content: ""!important;}
a.spip_mail:hover {color: #2fad09; text-decoration: underline;}
.table-container {width: 100%; overflow-y: auto; _overflow: auto; margin: 0 0 10px 0;}
.table-container::-webkit-scrollbar {-webkit-appearance: none; width: 14px; height: 14px;}
.table-container::-webkit-scrollbar-thumb {border-radius: 8px; border: 3px solid #fff; background-color: rgba(0, 0, 0, .3);}
table.spip {max-width: 100%; width: 100%;  margin: 20px auto 10px auto; border-collapse: collapse; border-spacing: 0;}
table.spip caption {caption-side: top; text-align: center; margin: 0 auto;}
table.spip thead th {color: #2FAD09; font-size: 17px; background: #f0f0f0; padding: 10px 5px;}
table.spip th {border: 1px solid silver; padding: 5px;}
table.spip td {border: 1px solid silver; padding: 5px; background: white; vertical-align: top; text-align: left;}
table.spip h3.spip {margin: 5px 0px;}
fieldset  {border: 0;}
.explication {display: none;}
ul.spip {display: table;}
ul.spip li {list-style-position: outside; margin-left: 30px;}
ul.spip li ul.spip {list-style: none; text-indent: 0; margin: 0;}
ul.spip li ul.spip li {margin-left: 15px;}

.wrapper {width: 98%; max-width: 1000px; min-height: 100%; height: auto; margin: 0 auto; text-align: center; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.content {width: 100%; float: left; margin-bottom: 40px;}

.top {margin: 15px auto 0 auto; float: left; width: 100%; max-width: 1000px;}

.top-left {float: left; width: 40%; margin-top: 15px; text-align: left;}
.top-right {float: left; width: 60%; margin-top: 2px; text-align: right;}

.social img {margin-left: 10px;}

.phone {font-size: 16px; line-height: 27px; text-transform: uppercase; /*font-weight: bold;*/ color:#2FAD09; margin-top: 0px;}
.phone a {margin-left: 40px; color: black; text-decoration: none;}
.phone a:hover {text-decoration: none;}

.menu-mobile {display: none;}

.menu {width: 100%; float: left; height: 47px; text-align: center; background-color: white; background-image: linear-gradient(transparent 50%, #f5f5f5 50%); text-align: center; margin: 17px 0 40px 0; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu li {list-style: none; float: left; height: 47px; text-align: center; position: relative;  z-index: 1000; font-size: 14px; line-height: 27px; text-transform: uppercase; width: 20%; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu li ul {list-style: none; padding: 0; margin: 0; padding: 10px; /*width: 100%;*/ display: none; position: absolute; left: 0; top: 47px; background: white; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu li ul li {float: none; margin: 0; width: auto; height: auto; font-size: 14px; line-height: 20px; padding: 5px; text-align: center;}
.menu > li a {display: block; width: auto; height: 47px; padding-top: 10px; color: #4e4e4e; text-decoration: none; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu > li a:hover {color: #2FAD09;}
.menu > li:first-child:hover {border-radius: 0.4rem 0 0 0.4rem;}
.menu > li:last-child:hover {border-radius: 0 0.4rem 0.4rem 0;}
.menu > li a.on {background: #59bd3b; background-image: linear-gradient(transparent 50%, #2da708 50%); color: white; font-weight: normal;}
.menu > li:first-child a.on {border-radius: 0.4rem 0 0 0.4rem;}
.menu > li:last-child a.on {border-radius: 0 0.4rem 0.4rem 0;}
.menu > li a.on:hover {color: white;}
ul.menu li ul li a {display: block; width: auto; height: auto; white-space: nowrap; padding: 0;}
ul.menu li ul li:hover {background: #efefef;}
ul.menu li ul li a:hover {color: #2FAD09}
.menu li:hover ul, .menu li.jshover ul {display: block;}
.menu li:hover a, .menu li.jshover a {color: #2FAD09}
.menu li:hover a.on, .menu li.jshover a.on {color: white}
.menu li:hover ul li a, .menu li.jshover ul li a {color: #4e4e4e}

 /*  Menu <  800 */
@media only screen and (min-width: 100px) and (max-width: 800px) {
html {height: 100%; font-size: 100%;}
.menu {display: none;}
.menu-mobile {display: block; margin: 0; padding: 0; list-style: none; text-align: left; float: none; width: 100%; height: 47px; background-color: white; background-image: linear-gradient(transparent 50%, #f5f5f5 50%); margin: 15px 0; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu-mobile a.js_float {font-size: 18px; line-height: 25px; font-weight: bold; color: #2FAD09; text-transform: uppercase; text-decoration: none; margin: 15px 0 0 15px; display: inline-block;}
.menu-mobile li {width: 100%; list-style: none; position: relative; margin: 0; text-align: left;}
.menu-mobile li a {text-decoration: none;}
.menu-mobile li a img {margin: 0px 7px 0 0;}
.menu-mobile li a span {display: inline-block; vertical-align: top;}
.menu-mobile li.menu-close {position: absolute; top: 0px; left: 210px; z-index: 10000;}
.menu-mobile li.menu-close img {/*margin: 0; display: inline-block; position: fixed;*/}
.menu-mobile li ul {display: none; position: absolute; top: 55px; left: 0; z-index: 10000; margin: 0; background: #f5f5f5; text-align: left; width: 240px; height: auto; padding: 12px; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.menu-mobile li ul li {margin: 5px 0; padding: 0; height: auto; width: 100%;}
.menu-mobile li ul li a {margin: 0; font-size: 16px; line-height: 22px; text-transform: uppercase; color: #4e4e4e; text-decoration: none;}
.menu-fixed {position: fixed; top: 10px; left: 0; z-index: 100; width: 100%;}
.js_float, .js_float_target {cursor: pointer;}
}

 /* Slide-show */
.slide {width: 100%; height: auto; overflow: hidden; margin: 2px auto 30px auto;  border: 3px solid white; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem;  box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}

 /* Sommaire Column */
.column-sommaire {float: left; text-align: center; width: 100%;}
.column-sommaire-one {float: left; width: 33%; margin: 0; padding: 0 15px; text-align: center;}
.column-sommaire-one p {text-align: center;}
.column-sommaire-one p a {font-size: 18px; line-height: 25px; font-weight: bold; color: #2FAD09; text-transform: uppercase; text-decoration: none;}

 /* Footer */
.footer {width: 100%; max-width: 1000px;  height: 45px;  overflow: hidden;  margin: -90px auto 25px auto; border-top: 1px solid #a4a4a4; border-bottom: 1px solid #a4a4a4; padding: 0 13px;}
.footer-left {text-align: left; float: left;}
.footer-right {text-align: right; float: right;}
.footer a {font-size: 13px; color: #7d7d7d; text-transform: uppercase; text-decoration: none; margin: 0 80px 0 0; line-height: 45px;}
.footer a:hover {text-decoration: none; color: #2FAD09;}
.footer a.on {color: #2FAD09; font-weight: normal;}
.footer span {font-size: 13px; color: #444444; text-transform: uppercase; text-align: right; line-height: 45px;}

/* Rubrique  Service*/
.one-article-service {width: 31%; margin: 20px 3.5% 20px 0; float: left; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.one-article-service:last-child {margin: 20px 0 20px 0;}
.one-article-service .logo_article {float: left; width: 100%; padding: 30px 20px; margin: 0 0 30px 0; background: #E9E9E9; background: linear-gradient(180deg,rgba(233, 233, 233, 1) 0%, rgba(255, 255, 255, 1) 100%);  -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem;  box-shadow: 0 0 5px rgba(0,0,0,0.7); border: 2px solid white; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.one-article-service h2 {text-align: center; margin-top: 20px;}
.one-article-service p {background: white; padding: 25px; color: #4f4f4f; text-align: left; font-size: 15px; line-height: 24px; display: inline-block;}

/* Rubrique  Default*/
.one-article {width: 80%; margin: 20px 10%; border-bottom: 1px solid #a4a4a4; float: left; padding: 0 0 15px 0; text-align: left; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.one-article .logo_article {float: left; width: 200px;  margin: 0 30px 30px 0;}
.one-article h2 {text-align: left; margin: 0 0 10px 0;}
.one-article h2 a {color: #d30294; text-decoration: none;}
.one-article h2 a:hover {color: #d30294; text-decoration: none;}
.one-article a {color: #333333; text-decoration: none;}
.one-article a:hover {color: #333333; text-decoration: none;}

/* Article Contact */
.article-contacts-left {width: 48%; margin: 0 2% 20px 0; float: left; text-align: left;}
.article-contacts-right {width: 50%; margin-bottom: 20px; float: left;}
input[type="text"] {width: 100%; height: 28px; border: 0px; margin-bottom: 5px; background: #e2e7de; color: #a9a9ad; box-sizing: border-box; padding: 6px; font-size: 14px; text-align: left; float: left;  -webkit-border-radius: 4px; -khtml-border-radius: 4px;  -o-border-radius: 4px;  -ms-border-radius: 4px;  -icab-border-radius: 4px;  border-radius: 4px;}
textarea {width: 100%; height: 130px; border: 0px; margin-bottom: 5px; background: #e2e7de; color: #a9a9ad; box-sizing: border-box; padding: 6px; font-size: 14px; font-family: Arial; text-align: left; float: left;  -webkit-border-radius: 4px; -khtml-border-radius: 4px;  -o-border-radius: 4px;  -ms-border-radius: 4px;  -icab-border-radius: 4px;  border-radius: 4px;}
button[type="submit"] {width: auto; height: 28px; background: #2FAD09; border: 0px; cursor: pointer; margin-top: 3px; padding: 0px 10px; color: white; font-size: 15px; text-align: center; float: right;  -webkit-border-radius: 4px; -khtml-border-radius: 4px;  -o-border-radius: 4px;  -ms-border-radius: 4px;  -icab-border-radius: 4px;  border-radius: 4px;}
button[type="submit"]:hover {background: #2FAD09;}
label {display: none;}
form ul li {list-style: none;}
.message_retour_defaut p {font-weight: bold; color: #2FAD09;}
.map {margin: 0%; padding-bottom: 45%; overflow: hidden; position: relative; height: 0;}
.map iframe {left: 0; top: 0; height: 100%; width: 100%; position: absolute;}

/* Article  Default*/
.article-content a {text-decoration: underline; color: #333333;}
.article-content a:hover {text-decoration: none; color: #66666a;}
.logo_article {float: left; width: 300px; max-width: 99.5%; padding: 20px; margin: 0 30px 30px 0; background: white; box-shadow: 0 0 5px rgba(0,0,0,0.7); -webkit-border-radius: 0.4rem; -khtml-border-radius: 0.4rem;  -o-border-radius: 0.4rem;  -ms-border-radius: 0.4rem;  -icab-border-radius: 0.4rem;  border-radius: 0.4rem; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.video-wrap {position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; margin: 40px auto 30px auto;}
.video-wrap iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

/* Gallery */
.gallery {margin-top: 20px; border-top: 1px solid #c0c0c0; padding-top: 20px; width: 100%; text-align: center;}
.item-gal {width: 23%; float: left; margin: 1%; border: 1px solid silver; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}
.item-gal img {float: left;}

/* Error*/
.error {margin: 20px 10% 50px 10%; border-bottom: 1px solid #a4a4a4; float: left;  width: 80%; padding-bottom: 30px;}
.error-big {font-size: 125px; font-weight: bold;  color: #a4a4a4;  float: left; height: 100px; width: 33%; line-height: 100px; text-align: left;}
.error-texte {float: right; width: 67%; padding-top: 15px;}
.error-texte p { color: #4f4f4f; font-size: 15px; line-height: 22px;}


/* 0 - 540 (320, 360, 414, 440, 480, 540) */
@media only screen and (min-width: 100px) and (max-width: 540px) {
html {height: 100%; font-size: 100%;}
h1 {font-size: 22px; line-height: 28px; margin: 0 0 25px 0;}
h2 {font-size: 18px; line-height: 26px;}
h3.spip {font-size: 16px; line-height: 24px;}
.top-left {width: 100%; text-align: center;}
.top-right {width: 100%; margin-top: 10px; text-align: center;}
.phone a {margin-left: 20px;}
.social {display: none;}
.column-sommaire-one {width: 100%; margin: 0 0 20px 0; text-align: center;}
.footer {padding: 0;}
.footer-left {display: none;}
.footer-right {text-align: center; float: none; width: 100%;}
.one-article-service {width: 310px; margin: 0 auto 25px auto; padding: 15px; float: none;}
.one-article-service:last-child {margin: 0 auto;}
.one-article-service .logo_article {padding: 20px 10px; margin: 0 0 20px 0;}
.one-article-service h2 {margin-top: 10px;}
.one-article-service p {padding: 15px;}
.one-article {width: 100%; margin: 20px 0;}
.one-article .logo_article {float: left; width: 100%;  margin: 0 0 30px 0; text-align: center;}
.article-contacts-left {width: 100%; margin: 0 0 20px 0;}
.article-contacts-right {width: 100%; margin: 0 0 20px 0;}
.logo_article {float: none; width: 100%; max-width: 100%;  margin: 0 0 30px 0;text-align: center;}
.item-gal {width: 48%;}
.error {width: 100%; margin: 20px 0 30px 0;}
.error-big {width: 100%; font-size: 80px; text-align: center;}
.error-texte {width: 100%; padding-top: 0;}
}

/* 541 - 768 (568, 600, 640, 720, 760) */
@media only screen and (min-width: 541px) and (max-width: 799px) {
html {height: 100%; font-size: 100%;}
h1 {font-size: 22px; line-height: 28px; margin: 0 0 25px 0;}
h2 {font-size: 18px; line-height: 26px;}
h3.spip {font-size: 16px; line-height: 24px;}
.top-left {width: 100%; text-align: center;}
.top-right {width: 100%; margin-top: 10px; text-align: center;}
.phone a {margin-left: 20px;}
.social {display: none;}
.column-sommaire-one {width: 100%; margin: 0 0 20px 0; text-align: center;}
.footer {padding: 0;}
.footer-left {display: none;}
.footer-right {text-align: center; float: none; width: 100%;}
.one-article-service {width: 310px; margin: 0 auto 25px auto; padding: 15px; float: none;}
.one-article-service:last-child {margin: 0 auto;}
.one-article-service .logo_article {padding: 20px 10px; margin: 0 0 20px 0;}
.one-article-service h2 {margin-top: 10px;}
.one-article-service p {padding: 15px;}
.one-article {width: 100%; margin: 20px 0;}
.item-gal {width: 48%;}
.error {width: 100%; margin: 20px 0 30px 0;}
.error-big {font-size: 90px; text-align: center;}
}

/* 800 - 960 (800, 960) */
@media only screen and (min-width: 800px) and (max-width: 960px) {
html {height: 100%; font-size: 100%;}
h1 {font-size: 22px; line-height: 28px; margin: 0 0 25px 0;}
h2 {font-size: 18px; line-height: 26px;}
h3.spip {font-size: 16px; line-height: 24px;}
.footer a {margin: 0 30px 0 0;}
.one-article-service {padding: 10px;}
.one-article-service .logo_article {padding: 20px 10px; }
.error {width: 100%; margin: 20px 0 30px 0;}
}












