/* cmsms stylesheet: templateA modified: 09/01/2018 08:34:06 */




* {
   margin:0;
   padding:0;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 1.2em; line-height: 100%; }
body, button, input, select, textarea, nav li a { font-family: 'Abel', sans-serif; color: #000; font-weight:300 }


/* Liens */
a { 
   color:#555; 
   text-decoration: none;
   transition-delay: 0s;
   transition-duration: 0.8s;
   transition-property: all;
   transition-timing-function: ease;
}

a:hover { color:#555; }
a:focus { outline: none; }
a:hover, a:active { outline: 0; }



/* Couleurs */

.blanc, .blanc * { color:#fff }
.fdblanc { background-color:#fff }
.fdblanc80 { background-color:rgba(255,255,255,0.8) }
.vert, .vert * { color:#000 }
.fdvert { background-color:#000 }
.fdvert80 { background-color:rgba(193,209,44,0.8) }
.gris { color:#555 }
.fdgris { background-color:#555 }



/* Typos */
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 0px; border: 0;  margin: 0; padding: 0.5em 0; clear: both }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }

/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }

/* Improve readability of pre-formatted text in all browsers */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }

small { font-size: 85%; }

/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }



/* Listes */
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
li { margin: 0 0 0.5em 0 }

figure { margin: 0; }



/* Formulaires */
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }

legend { border: 0; *margin-left: -7px; padding: 0; }

button, input, select, textarea { font-size: 100%; margin: 0; padding: 0.5em; vertical-align: baseline; *vertical-align: middle; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }

button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; border-radius: 0 }

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; height:1.6em }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /* Remove inner padding and border in FF3/4: h5bp.com/l */

textarea { overflow: auto; vertical-align: top; resize: vertical; }


/* Tables */
table { border-collapse: collapse; border-spacing: 0; }
td input { margin-bottom:0 }


img {
   /*border-radius: 0.5em;*/
   width: 100%;
   height: auto
}

.cercle {
   border-radius: 50%;
}


body {
   background: #fff;
   color: #555;
   overflow:hidden
}

div#container {
   position:relative;
   width: 100%;
   margin: 0 auto;
   background-color: transparent;
}

.table { position:relative; display: table; margin: 0 auto }
.table { vertical-align: middle }


/* Header */

header {
   position: relative;
   width: 100%;
   max-width: 1200px;
   height: auto;
   margin: 0 auto;
   padding: 0;
}

#slogan { position: absolute; right:0; top: 50%; display: table; height:50% }
#slogan div { display: table-cell; vertical-align: top; font-size: 1em; text-align: right }

#logo {
   position: relative;
   margin:2em 0;
   text-align:center
}

#logo img {
   width: 25%;
   height: auto;
   max-width: 300px;
}

#menu { position:relative; z-index: 1020 }

#menu_lang {
   float: right;
   margin: -4em 1em 0 0;
}

#menu_lang li {
   list-style-type: none;
   float: left;
   margin: 0 20px 0 0;
}

#menu_lang li a.active {
   font-weight: bold;
}

#main { 
   margin:0 auto; 
   padding: 3em 0;
   width: 100%;
   max-width: 1200px;
   z-index: 4500
}

#imgTitre { position:relative; width:100%; z-index: 4000 }
#imgTitre img { position:relative; display:block }

#bas {
   width: 100%;
   height: auto;
   margin: 0;
   padding: 1em;
   font-size: 0.8em;
}

.contBas {
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   padding: 1em 0
}


/* Footer */

footer {
   width: 100%;
   height: auto;
   margin: 0 auto;
   padding: 1em;
   text-align: center;
   color:#000
}

footer a { color:#000 }
footer a:hover { color:#777 }

#haut { float: right; font-size: 2em }
a#haut { color: #000 }
a#haut:hover { color: #777 }




/* Grille */

.droite { float: right }
.gauche, .actuAcc .NewsSummary { float: left  }

.flex50 { flex-basis: 50%;  width: 50%; max-width: 50% }
.flex25 { flex-basis: 25%;  width: 25%; max-width: 25% }
.flex30 { flex-basis: 30%;  width: 30%; max-width: 30% }
.flex33 { flex-basis: 33.33%;  width: 33.33%; max-width: 33.33% }
.flex66 { flex-basis: 66.66%;  width: 66.66%; max-width: 66.66% }
.flex70 { flex-basis: 70%;  width: 70%; max-width: 70% }
.huitieme {flex-basis: 12.5%;  width: 12.5%; max-width: 12.5% }

.col { position: relative; padding: 0; flex-grow: 1; flex-shrink: 1; flex-wrap: nowrap; }
.contBas .col { padding:0 }
.ligne { display: flex; flex-wrap: wrap; flex-flow: row wrap; justify-content:space-between }
/* .ligne::after, .ligne::before { content: " "; display: table; clear:both }  */
.pleine { width:100% }
article { margin-bottom: 1em }
article .pleine { display:flex; justify-content:space-between; flex-direction:row }
article .pleine .pleine { margin:0 }
section, .actuAcc .NewsSummary { width: 100% }

.centre { margin:0 auto; max-width: 1200px; width: 100% }
.centree { margin:0 auto }
.milieu, .bouton.milieu { display: block; margin:0 auto; text-align:center; left:0; right:0 }
.bas { position:absolute; bottom:0; }

.margeD { padding-right: 1em }
.margeG { padding-left: 1em }
.margeH { padding-top: 1em }
.margeB { padding-bottom: 1em }
.marge { padding: 1em }
.marge0 { padding:0; margin:0}


.fd1, .fd2, .fd3 { 
   background-size: cover; 
   background-position: center center; 
   background-repeat: no-repeat; 
   opacity:0;
 }

.ht1 { height:700px; min-height:700px }
.ht2 { height:700px; min-height:700px }
.ht3 { height:550px; min-height:550px }
.margeExt { margin:0 1em }
.margeExtD { margin-right:1em }


/* iframe */

iframe { width: 100% }


/* Formulaire */

.cms_form legend, .formulaire legend { display: none }
.cms_form input, .cms_form textarea, .formulaire input, .formulaire textarea { border:0; background-color: #eee; margin-bottom:1em }
.cms_form label, .cms_form input, .formulaire label, .formulaire input { float: left }
.cms_form div, .formulaire div { clear: both }
.cms_form label, .cms_form textarea, .cms_form input, .formulaire label, .formulaire textarea, .formulaire input { width: 100% }
.cms_form .cms_submit, .formulaire .cms_submit { float:none; margin:0; background-color:transparent; color:#fff }
.error { color: red }

/* Boutons */

.bouton, .formulaire .bouton, .cms_form .bouton { 
   display: inline-block;
   padding:0.5em; 
   background-color:#000;
   color: #fff;
   transition-delay: 0s;
   transition-duration: 0.8s;
   transition-property: all;
   transition-timing-function: ease;
}

.bouton:hover {
   background-color:#444;
}

a.bouton:hover {
   color: #fff;
}

.bouton a { color: #fff }

.large { display:block; width:100% }

.hovereffect img.zoom_ic { display:inline; width: 3em; height: 3em }


/* Effets images */


/* rollover zoom */

.fx-zoom {
   display:block;
   overflow: hidden;
   max-height:250px;
}

.fx-zoom img {
   transition-delay: 0s;
   transition-duration: 1s;
   transition-property: all;
   transition-timing-function: ease;
   overflow: hidden;
}

.fx-zoom img:hover {
  width: 110%;
  height: 110%;
}

/* rollover - zoom, fondu et symbole + */

.hovereffect {
width:100%;
height:auto;
float:left;
overflow:hidden;
position:relative;
text-align:center;
cursor:default;
}

.hovereffect .overlay {
width:100%;
height:100%;
position:absolute;
overflow:hidden;
top:0;
left:0;
opacity:0;
background-color:rgba(0,0,0,0.5);
-webkit-transition:all .4s ease-in-out;
transition:all .4s ease-in-out
}

.hovereffect img {
   display:block;
   position:relative;
   -webkit-transition:all .4s linear;
   transition:all .4s linear;
}

.hovereffect p {
   display:inline;
   width: auto;
   color:#fff;
   text-align:center;
   position:relative;
   font-size:0.5em;
   line-height:1.5em;
   background:rgba(50,50,50,0.9);
   -webkit-transform:translatey(-100px);
   -ms-transform:translatey(-100px);
   transform:translatey(-100px);
   -webkit-transition:all .2s ease-in-out;
   transition:all .2s ease-in-out;
   padding:10px;
}

.hovereffect a.info {
   text-decoration:none;
   display:table;
   width:100%;
   height:100%;
   color:#fff;
   background-color:transparent;
   opacity:0;
   filter:alpha(opacity=0);
   -webkit-transition:all .2s ease-in-out;
   transition:all .2s ease-in-out;
   margin:0;
   padding:0;
}

.hovereffect a.info span {
   display:table-cell;
   vertical-align:middle;
   text-align: center;
   font-size:2em;
   }

.hovereffect a.info:hover {
   /*box-shadow:0 0 5px #fff;*/
}

.hovereffect:hover img {
-ms-transform:scale(1.2);
-webkit-transform:scale(1.2);
transform:scale(1.2);
}

.hovereffect:hover .overlay {
opacity:1;
filter:alpha(opacity=100);
}

.hovereffect:hover p,.hovereffect:hover a.info {
opacity:1;
filter:alpha(opacity=100);
-ms-transform:translatey(0);
-webkit-transform:translatey(0);
transform:translatey(0);
}

.hovereffect:hover a.info {
-webkit-transition-delay:.2s;
transition-delay:.2s;
}

.hovereffect::after {
  content: " "; 
  display: table; 
  clear:both
}


/* Petites Actus */

#petites_actus { 
   margin: 0 auto; 
   padding: 6em 1em; 
   width: 100%; 
   background-size: auto 100%;
}

#petites_actus h3 {
   font-size:1.3em;
}

.actuAcc {
   margin: 0 0 2em 0;
}

.actuAcc h2 { padding-top: 0 }

.sommaire .hovereffect { margin-bottom: 1em }
.sommaire { background-color:#000; padding:2em; overflow:hidden; flex:1 }
.sommaire h2 { color:#fff }
.sommaire p { color:#aaa }


/*** Reseaux ***/

#reseaux { position: absolute; right:0; top: 0; display: table; height:50% }
#reseaux div { display: table-cell; vertical-align: bottom }
#reseaux div a { font-size: 2em; padding-left:0.5em; color:#000 }

/* Articles */




/* Slider */

#slider { 
   position: relative;
   height:700px;
   width: 100%;
   margin: 0;
   overflow: hidden;
   background-color:#000;
   z-index: 900
}

.cycle-slideshow { width: 100%; height:100%; overflow: hidden; margin: 0 auto }

.NewsSummaryMorelink { font-weight: bold }

#slider .sommaire {
   position: relative;
   width: 100%;
   height:100%;
   min-height:100%;
   background-size:cover;
   background-position:center;
   font-size:1.2em;
   padding:5em
}

#slider .sommaire .cont {
   display: flex;
   flex-direction:column;
   height:100%;
   width:100%;
   opacity:0;
}

#slider .sommaire .cont2 {
   height:auto;
   width:auto;
   padding:1em
}

#slider .sommaire .cont2 p { padding:0 }


.fadeIn1s {
   -webkit-animation:fadeIn1s 1s;
   -moz-animation:fadeIn1s 1s;
   -o-animation:fadeIn1s 1s;
   animation:fadeIn1s 1s;
   -webkit-animation-fill-mode:forwards;
   -moz-animation-fill-mode:forwards;
   -o-animation-fill-mode:forwards;
   animation-fill-mode:forwards;
}

.fadeIn2s {
   -webkit-animation:fadeIn2s 2s;
   -moz-animation:fadeIn2s 2s;
   -o-animation:fadeIn2s 2s;
   animation:fadeIn2s 2s;
   -webkit-animation-fill-mode:forwards;
   -moz-animation-fill-mode:forwards;
   -o-animation-fill-mode:forwards;
   animation-fill-mode:forwards;
}

@-webkit-keyframes fadeIn1s { from { opacity:0; } to { opacity:1; } }
@-webkit-keyframes fadeIn2s { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn1s { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn2s { from { opacity:0; } to { opacity:1; } }
@-o-keyframes fadeIn1s { from { opacity:0; } to { opacity:1; } }
@-o-keyframes fadeIn2s { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn1s { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn2s { from { opacity:0; } to { opacity:1; } }

#slider .NewsSummary h2 {
   font-size: 1.7em;
   color: #fff;
   padding: 0 0 0.6em 0;
}

#slider .NewsSummary p {
   font-size: 1.1em;
   color: #fff;
}

#pager {
  max-width:1200px;
  width: 100%;
  margin: 0 auto;
  left: 1em;
  bottom: 2em;
}

#pager span {
   font-size: 2em;
   padding: 0 0.2em 0 0;
   cursor: pointer;
}

#pager .cycle-pager-active {
   color: #fff
}


/* Typos */

h1, h2, h3 { color:#000; font-weight: 300; line-height:115% }

h1 { font-size: 1.5em; padding: 2em 0 2em 0; font-weight: 300 }
h2 { padding: 0 0 0.5em 0; font-size: 1.3em; color: #888 }
h3, p { padding: 0 0 0.5em 0; line-height:130% }
.petit { font-size:0.7em }


/* Plan */
#plan { width:100%; height:700px }
#plan div { pointer-events:none }


/* Mesg Cookies */

#cookiesdirective { padding-top: 1em }
#cookiesdirective input { position: relative; margin-top:-1em; background-color:#000; color: #fff; border:0 }


/* Editeur */
.mce-content-body * { opacity:1 }
.mce-content-body .cell,
.mce-content-body .demi,
.mce-content-body .tiers,
.mce-content-body .col,
.mce-content-body .quart { border:2px dotted #ddd }


/* Mobiles */

@media only screen and (max-width: 1199px) {
   #main, .actuAcc { padding: 1em }
   #reseaux, #slogan { right:1em }
   #slider { height:400px }
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
   #slider { height:430px }
}

@media only screen and (min-width: 1024px) and (max-width: 1280px) {
.ht1 { height:500px; min-height:500px }
.ht2 { height:500px; min-height:500px }
.ht3 { height:350px; min-height:350px }
}

@media only screen and (max-width: 567px) {

  #cookiesdirective input { display: block; margin: 1em auto }
  body { font-size: 1em }
  .col, .flex33 { flex-basis: 100%; width: 100%; max-width: 100%; margin-right: 0; }
  #lightgallery .col { flex-basis:100%; margin:0; padding-bottom:1em }
  #slider { height:200px }
  img { width: 100%; height: auto }
  #reseaux { position:relative; width:50%; left:25%; height:2em }
  #reseaux div { text-align: center }
  #logo, #reseaux, article { margin-bottom: 1em }
  #logo img {
     display: block;
     position: relative;
     margin:0 auto;
     width: 60%
  }

  #slogan { display: none }

  #menu_lang { margin-top: -90px }

  .contBas { padding: 1em }

  .huitieme, .quart { width: 50% }

   #petites_actus article {
      min-height:0;
      width: 100%;
      margin: 0;
   }
   #petites_actus { padding-bottom:0 }

  .formulaire label, .formulaire textarea { width: 100% }
  #haut { float:none; margin:0 }
  .plan { height:300px }
  .bas { position:relative; margin-top:1em }
  .ht1 { height:auto; min-height:400px }
  .ht2 { height:350px; min-height:350px }
  .ht3 { height:350px; min-height:350px }
  .margeExt { margin:1em 0 }
  .reali .flex70, .reali .flex30 { flex-basis: 48%;  width: 48%; max-width: 48%; margin:0 }
  .r2 .flex70, .r2 .flex30 { flex-basis: 48%;  width: 48%; max-width: 48% }
  .r3 { flex-direction: column }
}

@media only screen and (min-width: 481px) and (max-width: 1024px)  {
  #logo img { width: 40% }
  #slider { height:300px }
}


/* Impression */

@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
/* cmsms stylesheet: produits modified: 24/07/2017 11:44:52 */
ul#produits { margin:0; padding:0 }
ul#produits li { list-style-type: none }
ul#produits li h3 { text-align: center }
