
/* Feuille de style */

/* Mise en forme générique */

#mapid { height: 180px; }

body {
  font-family: 'Rajdhani', Arial, Helvetica,  sans-serif;
  padding: 2.4752475%;
  font-size: 100%;
  background-color: white;
}

p {
  text-align: justify;
}

.bold {
    font-weight: bold;
}

.center {
  text-align: center;
}

a.phone {
  color: rgb(90,161,221);
  font-weight: bold;
  text-decoration: underline;
}

a.phone:hover {
}

a {
  color: rgb(47,87,144);
  text-decoration: none;
}

a:hover {
  color: rgb(90,161,221);
}

img {
  max-width: 100%;
  height: auto;
}

.img_one {
  width: 60.5%;
}

.img_two {
  width: 30%;
}

.img_three {
  width: 19.8%;
}

.img_four {
  width: 14.72%;
}

video {
  max-width: 100%;
  height: auto;
}

.video_one {
  width: 60.5%;
}

.video_two {
  width: 30%;
}

.video_three {
  width: 19.8%;
}

.video_four {
  width: 14.72%;
}

div.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background-color: rgb(255,255,255);
}

h1.title {
  display: table;
  width: 100%;
  vertical-align: top;
  background: #aaaaaa;
  color: white;
  margin-top: 2em;
}

div.title {
  vertical-align: top;
  display: table-cell;
  width: 75%;
  padding: 2%;
  font-size: 4vw;
}


div.title_video {
  display: table-cell;
  width: 25%;
}

video.title {
  display: table-cell;
  width: 100%;
  vertical-align: bottom;
}

.top_link {
  display: block;
  cursor: pointer;
  position: fixed;
  width: 10%;
  bottom: 0%;
  right: 50%;
  z-index: 950;
}

.svg_top_page {
  width: 4em;
}


.footer_info {
  text-align: center;
  border-top: 1px solid rgb(170,170,170);}

div.logo_container {
  display: table;
  width: 100%;
  padding: 0.3em;
}

div.logo_left_container {
  width: 33.33333333%;
  display: table-cell;
  vertical-align: top;
}

div.logo_middle_container {
  width: 33.33333333%;
  display: table-cell;
  vertical-align: top;
}

div.logo_right_container {
  width: 33.33333333%;
  display: table-cell;
  vertical-align: top;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
}

.logo_social {
  width: 30%;
  float: right;
  padding: 0.5em 0 0 0.3em;
}

.right_floating {
    width: 20%;
    float: right;
    padding-left: 2rem;
}

.logo_ressource {
  display: inline-block;
  float: left;
  line-height: 90%;
  text-align: left;
  text-transform: uppercase;
}

img.logo_pdf {
  width: 2.5em;
  float: left;
}

.logo_pdf_txt {
  color: rgb(100,100,100);
  font-size: 0.7em;
}

.logo_pdf_txt:hover {
  color: rgb(90,161,221);
}

/*
#slider_container_stack {
  display: none;
}
*/

#focus_container_stack {
  display: none;
}

span.company_dark {
  color: rgb(47,87,144);
}

span.company_light {
  color: rgb(90,161,221);
}


a:hover > span.company_dark {
  color: rgb(90,161,221);
}

a:hover > span.company_light {
  color: rgb(47,87,144);
}

#legal_notice {
  display : none;
  visibility : hidden;
  font-size: 0.7em;
}

span.desktop {
  display: none;
}

span.mobile {
  display: inline;
}

/* IMAGE LIGHTBOX SELECTOR */

#imagelightbox {
  cursor: pointer;
  position: fixed;
  z-index: 10000;
  -ms-touch-action: none;
  touch-action: none;
  /* -webkit-box-shadow: 0 0 3.125em rgba( 0, 0, 0, 0.75 ); 50 */
  /* box-shadow: 0 0 3.125em rgba( 0, 0, 0, 0.75 ); 50 */
}


/* ACTIVITY INDICATION */

#imagelightbox-loading, #imagelightbox-loading div {
  border-radius: 50%;
}

#imagelightbox-loading {
  width: 2.5em; /* 40 */
  height: 2.5em; /* 40 */
  background-color: #444;
  background-color: rgba( 0, 0, 0, 0.5 );
  position: fixed;
  z-index: 10003;
  top: 50%;
  left: 50%;
  padding: 0.625em; /* 10 */
  margin: -1.25em 0 0 -1.25em; /* 20 */
  /* -webkit-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); 40 */
  /* box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); 40 */
}

#imagelightbox-loading div {
  width: 1.25em; /* 20 */
  height: 1.25em; /* 20 */
  background-color: #fff;
  -webkit-animation: imagelightbox-loading 0.5s ease infinite;
  animation: imagelightbox-loading 0.5s ease infinite;
}

@-webkit-keyframes imagelightbox-loading {
  from {
    opacity: 0.5;
    -webkit-transform: scale(0.75);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1);
  }
  to {
    opacity: 0.5;
    -webkit-transform: scale(0.75);
  }
}

@keyframes imagelightbox-loading {
  from {
    opacity: 0.5;
    transform: scale(0.75);
  }
  50% {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0.5;
    transform: scale(0.75);
  }
}


/* OVERLAY */

#imagelightbox-overlay {
  background-color: #fff;
  background-color: rgba( 255, 255, 255, 0.9 );
  position: fixed;
  z-index: 9998;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}


/* "CLOSE" BUTTON */

#imagelightbox-close {
  width: 2.5em; /* 40 */
  height: 2.5em; /* 40 */
  text-align: left;
  background-color: #666;
  border-radius: 50%;
  position: fixed;
  z-index: 10002;
  top: 2.5em; /* 40 */
  right: 2.5em; /* 40 */
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

#imagelightbox-close:hover, #imagelightbox-close:focus {
  background-color: #111;
}

#imagelightbox-close:before, #imagelightbox-close:after {
  width: 2px;
  background-color: #fff;
  content: '';
  position: absolute;
  top: 20%;
  bottom: 20%;
  left: 50%;
  margin-left: -1px;
}

#imagelightbox-close:before {
  -webkit-transform: rotate( 45deg );
  -ms-transform: rotate( 45deg );
  transform: rotate( 45deg );
}

#imagelightbox-close:after {
  -webkit-transform: rotate( -45deg );
  -ms-transform: rotate( -45deg );
  transform: rotate( -45deg );
}

/* CAPTION */

#imagelightbox-caption {
  text-align: center;
  color: #fff;
  background-color: #666;
  position: fixed;
  z-index: 10001;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.625em; /* 10 */
}

/* NAVIGATION */

#imagelightbox-nav {
  background-color: #444;
  background-color: rgba( 0, 0, 0, 0.5 );
  border-radius: 20px;
  position: fixed;
  z-index: 10001;
  left: 50%;
  bottom: 3.75em; /* 60 */
  padding: 0.313em; /* 5 */
  -webkit-transform: translateX( -50% );
  -ms-transform: translateX( -50% );
  transform: translateX( -50% );
}

#imagelightbox-nav button {
  width: 1em; /* 20 */
  height: 1em; /* 20 */
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 50%;
  display: inline-block;
  margin: 0 0.313em; /* 5 */
}

#imagelightbox-nav button.active {
  background-color: #fff;
}

/* ARROWS */

.imagelightbox-arrow {
  width: 3.75em; /* 60 */
  height: 7.5em; /* 120 */
  background-color: #444;
  background-color: rgba( 0, 0, 0, 0 );
  vertical-align: middle;
  display: none;
  position: fixed;
  z-index: 10001;
  top: 50%;
  margin-top: -3.75em; /* 60 */
  margin-left: 0;
  border: none;
}

/*.imagelightbox-arrow:hover, .imagelightbox-arrow:focus {
  background-color: #666;
  background-color: rgba( 0, 0, 0, 0.75 );
}

.imagelightbox-arrow:active {
  background-color: #111;
}*/

.imagelightbox-arrow-left {
  left: 2.5em; /* 40 */
}

.imagelightbox-arrow-right {
  right: 2.5em; /* 40 */
}

.imagelightbox-arrow:before {
 width: 0;
 height: 0;
 border: 1em solid transparent;
 content: '';
 display: inline-block;
 margin-bottom: -0.125em; /* 2 */
}

.imagelightbox-arrow-left:before {
  border-left: none;
  border-right-color: #000;
  margin-left: -0.313em; /* 5 */
}

.imagelightbox-arrow-right:before {
  border-right: none;
  border-left-color: #000;
  margin-right: -0.313em; /* 5 */
}

#imagelightbox-loading, #imagelightbox-overlay, #imagelightbox-close, #imagelightbox-caption, #imagelightbox-nav, .imagelightbox-arrow {
  -webkit-animation: fade-in .25s linear;
  animation: fade-in 0.25s linear;
}

@-webkit-keyframes fade-in {
  from	{ opacity: 0; }
  to		{ opacity: 1; }
}

@keyframes fade-in {
  from	{ opacity: 0; }
  to		{ opacity: 1; }
}

@media only screen and (max-width: 41.250em) /* 660 */ {

  #container {
    width: 100%;
  }

  #imagelightbox-close {
    top: 1.25em; /* 20 */
    right: 1.25em; /* 20 */
  }

  #imagelightbox-nav {
    bottom: 1.25em; /* 20 */
  }

  .imagelightbox-arrow {
    width: 2.5em; /* 40 */
    height: 3.75em; /* 60 */
    margin-top: -2.75em; /* 30 */
  }

  .imagelightbox-arrow-left {
    left: 1.25em; /* 20 */
  }

  .imagelightbox-arrow-right {
    right: 1.25em; /* 20 */
  }

}

@media only screen and (max-width: 20em) /* 320 */ {

  .imagelightbox-arrow-left {
    left: 0;
  }

  .imagelightbox-arrow-right {
    right: 0;
  }

}

/* Mode : little */


/* Header */
table.header {
  display: none;
  height: 40px;
  width: 95.049505%;
}

a.header {
  font-size: 0.6em;
  font-weight: lighter;
  color: rgb(170,170,170);
  z-index: 9999;
}

.company_name {
  display: inline-block;
  /* text-transform: uppercase; */
  /* font-weight: bold; */
  }

/* Navigation */
.js #menu {
  display: none;
}

div.header {
  display: none;
}

.logo_company {
  display: none;
}

.little_logo_company {
  width: 90%;
  vertical-align: middle;
}

.nav_indic {
  display: none;
}

.js .little_nav_menu {
  display: block;
}

.arrow {
  display: none;
}

.little_nav_brand {
  width: 70%;
  /* overflow: hidden; */
}

.little_nav_btn {
  position: relative;
  display: block;
  vertical-align: middle;
  float: right;
  padding: 0.438em 0.625em 0.438em 0.625em;
  line-height: 1.125em;
  cursor: pointer;
}

.little_nav_btn .little_nav_icon-bar + .little_nav_icon-bar {
  margin-top: 0.188em;
}

.little_nav_btn .little_nav_icon-bar + .little_nav_icon-bar {
  margin-top: 0.188em;
}

.little_nav_menu .little_nav_menutxt {
  display: block;
  line-height: 1.188em;
  float: left;
}

.little_nav_menu .little_nav_icon {
  float: left;
  margin: 0.188em 0 0 0.438em;
}

.little_nav_menu .little_nav_no-text {
  margin: 0;
}

.little_nav_menu .little_nav_icon-bar {
  display: block;
  width: 1.125em;
  height: 0.125em;
  margin-botom: 200px;
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  }

.little_nav_menu:before {
  content: " ";
  display: table;
}

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

.little_nav_nav {
  clear: both;
}

.little_nav_nav ul {
  display: block;
}

.little_nav_nav li {
  display: block;
}

.little_nav_nav .little_nav_arrow {
  font-size: 0.8em;
  margin: 0 0 0 0.4em;
}

.little_nav_nav .little_nav_item {
  cursor: pointer;
}

.little_nav_nav .little_nav_item a {
  display: inline;
}

.little_nav_nav .little_nav_row {
  display: block;
}

.little_nav_nav a {
  display: block;
}

.little_nav_nav .little_nav_parent-link a {
  display: inline;
}

.little_nav_brand {
  float: left;
}

.little_nav_menu {
  font-size: 16px;
  box-sizing: border-box;
  background: rgb(255,255,255);
  padding: 5px;
}

.little_nav_menu * {
  box-sizing: border-box;
}

.little_nav_menu .little_nav_menutxt {
  color: rgb(120,120,120);
  font-weight: bold;
  }

.little_nav_menu .little_nav_icon-bar {
  background-color: rgb(47,87,144);
}

.little_nav_btn {
  margin: 5px 5px 6px;
  text-decoration: none;
    -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-color: rgb(240,240,240);
 }

.little_nav_nav {
  color: rgb(120,120,120);
  background: rgb(240,240,240);
    margin: 0;
  padding: 0;
  font-size: 0.875em;
  list-style: none;
  overflow: hidden;
}

.little_nav_nav ul {
  list-style: none;
  overflow: hidden;
  padding: 0;
  margin: 0 0 0 20px;
}

.little_nav_nav .little_nav_row {
  padding: 5px 10px;
  margin: 2px 5px;
}

.little_nav_nav .little_nav_row:hover {
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  background: rgb(240,240,240);
  color: rgb(90,161,221);
  }

.little_nav_nav a {
  padding: 5px 10px;
  margin: 2px 5px;
  text-decoration: none;
  text-transform: uppercase;
  color: rgb(120,120,120);
}

.little_nav_nav a:hover {
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  background: rgb(240,240,240);
  color: rgb(90,161,221);
}

.little_nav_nav .little_nav_txtnode {
  margin-left: 15px;
}

.little_nav_nav .little_nav_item a {
  padding: 0;
  margin: 0;
}

.little_nav_nav .little_nav_parent-link a {
  padding: 0;
  margin: 0;
}

.little_nav_brand {
  color: rgb(120,120,120);
  font-size: 18px;
  line-height: 30px;
  padding: 7px 12px;
  height: 10%;
}

/* Language */
.language {
  display: none;
}

/* Slider */
.svg_link {
  width: 1.6em;
}

.slide_title {
  text-align: right;
  padding: 0 1.46% 0 0;
  width: 100%;
  font-size: 1.2em;
  vertical-align: top;
}

.slide_title a {
  color: rgb(47,87,144);
}

.slide_title span.large {
  font-size: 1.4em;
  font-weight: bold;
}

.slide_title:hover .large {
  color: rgb(90,161,221);
}

.slide_text {
  display: none;
  text-align: justify;
  vertical-align: top;
  padding: 0.5% 1.46% 0 1.46%;
  border-right: 1px solid #C2C2C2;
}

.tab_slide_link {
  display: none;
}

.slide_link {
  width: 30%;
  padding: 0 0 0 1.46%;
  vertical-align: top;
}

.text_link {
  white-space: nowrap;
  padding-top : 2%;
  vertical-align: top;
  font-size: 0.6em;
  font-weight: bold;
}

.symbol_link {
  vertical-align: top;
}

.text_link a {
  color: rgb(47,87,144);
}

.symbol_link a {
  color: rgb(47,87,144);
}

.tab_slide_link:hover .text_link > a {
  color: rgb(90,161,221);
}

.slide_footer {
  width:100%;
}

div.slide_image_container {
  position: relative;
  width: 100%;
  padding-bottom: 43.6233611%;
  overflow: hidden;
}

div.slide_image_container > div {
  position: absolute;
  left: -50%;
  top: -50%; 
}

img.slider {
  width: 135%;
  max-width: none;
  max-height: 100%;
}

/* Focus */
.focus_container {
  width: 100%;
}

img.focus {
  width: 100%;
}

.focus_text {
  text-align: right;
  font-size: 1.2em;
}

.focus_text span.large {
  font-size: 1.4em;
  font-weight: bold;
}

.focus_line {
  display: none;
  height: 0.5em;
}

#focus_line_0 {
  background: rgb(170,170,170);
}

#focus_line_1 {
  background: rgb(47,87,144);
}

#focus_line_2 {
  background: rgb(90,161,221);
}

/* Geolocalisation */
#itinerary {
  display: none;
}

.position_container {
  width: 100%;
  /* padding: 0 5% 0 5%; */
  margin: 0px;
}

.map_container {
  width: 100%;
  padding: 0 0 2.5% 0;
  margin: 0px;
}


#position_map {
  width: 100%;
  height: 400px;
}

.panoramic_container {
  width: 100%;
  padding: 2.5% 0 0 0;
  margin: 0px;
}

#panoramic {
  width: 100%;
  height: 400px;
}

.route_container {
  width: 100%;
  /* padding: 0 5% 0 5%; */
  margin: 0px;
}

.route_map_container {
  width: 100%;
  padding: 0 0 2.5% 0;
  margin: 0px;
}

#route_map {
  width: 100%;
  height: 400px;
}

.directions_container {
  width: 100%;
  padding: 0px;
  padding: 2.5% 0 0 0;
  margin: 0px;
}

#directions {
  width: 100%;
  height: 400px;
}


/* Plan du site */
.sitemap_container {
  display: none;
}

/* Gestion des couleurs */


/* Gestion des couleurs avec couche alpha */


/* Gestion des ombres */


/* Formulaires */
/* Form */

tr.desktop {
  display: none;
}

tr.mobile {
  display: table-row;
}


/* Messages d'erreur */
.errmsg {
  color: rgb(255,0,0);
  font-size: 0.6em;
  -webkit-animation: blink .75s linear infinite;
  -moz-animation: blink .75s linear infinite;
  -ms-animation: blink .75s linear infinite;
  -o-animation: blink .75s linear infinite;
  animation: blink .75s linear infinite;
}

@-webkit-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-moz-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-ms-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-o-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

form label {
    display: inline-block;
    margin-bottom: 0.2rem;
}

form textarea,
form select,
form input{
    background-color: #FFF;
    border: solid 0.1rem #000;
    padding: 0.5rem 1rem;
    margin-bottom: 2rem;
    resize: none;
}

.contact_form {
    width: 100%;
    text-align: left;
}

.contact_form fieldset {
    border: none;
    padding: 0;
}

.contact_form_width {
    width: 90%
}

.contact_form_submit_width {
    width: 99%
}

.form_error{
    color: red;
    font-size: 0.6em;
    animation:blinkingText 1.2s infinite;
}

.button_link {
    padding: 1rem;
    font-weight: bold;
    text-decoration: none;
    transition: background-color 0.2s;
    border: none;
    cursor: pointer;
}

@keyframes blinkingText{
    0%{     color: red;    }
    49%{    color: red; }
    60%{    color: transparent; }
    99%{    color:transparent;  }
    100%{   color: red;    }
}

/* Mode : medium */

@media screen and (min-width: 800px) {

html {
  background-image: linear-gradient(rgb(230,230,230) 30% , rgb(255,255,255) 50%);
  background-attachment: fixed;
}

body {
  font-family: 'Rajdhani', Arial, Helvetica,  sans-serif;
  font-size: 1.1vw;
  margin: 0 6.435643564% 0 6.435643564%;
  box-shadow: 5px 0 5px -4px rgba(200, 200, 200, 0.8), -5px 0 5px -4px rgba(200, 200, 200, 0.8);
}

h1.title {
  margin-top: 2.5em;
}

div.title {
  vertical-align: top;
  display: table-cell;
  width: 85%;
  padding: 1%;
  font-size: 2vw;
}

div.fixed {
  margin: 0 6.435643564% 0 6.435643564%;
  width: 87.128712872%;
  height: 120px;
}

.indic {
  font-weight: normal;
  text-align: center;
  height: 1em;
}

.top_link {
  display: none;
}

.footer {
  display: table;
  border-collapse: collapse;
  width: 100%;
}

.footer_info {
  display: table-cell;
  vertical-align: top;
  text-align: left;
  font-size: 0.8em;
  padding: 0.5em;
  border-top: 1px solid rgb(170,170,170);}

.logo_social {
  width: 10%;
}

span.desktop {
  display: inline;
}

span.mobile {
  display: none;
}


/* Header */
table.header {
  display: table;
  table-layout: auto;
  border-collapse: collapse;
  width: 95.049505%;
  margin: 0 2.4752475% 0 2.4752475%;
  padding: 0px;
}

/* Nom, logo et slogan */
.logo_header {
  width: 30%
}

.name_header {
  width: 70%;
  white-space: nowrap;
  text-align: left;
  border-bottom: 1px solid rgb(170,170,170);}

.phone_number_header {
    display: inline-block;
    float: right;
    font-size: 2rem;
}

.logo_company {
  position: absolute;
  padding-top: 1%;
  /* width: 25%; */
  top: -1%;
  /* height: 80%; */
  float: left;
}

.lang_header {
  white-space: nowrap;
  border-bottom: 1px solid rgb(170,170,170);
  /* border-right: 1px solid rgb(170,170,170); */
}

a.header {
  font-size: 2em;
}

.forme_header {
  white-space: nowrap;
  border-bottom: 1px solid rgb(170,170,170);
  border-right: 1px solid rgb(170,170,170);}

/* Recherche */

.svg_search {
  width: 1.3em;
}

.recherche_wrapper {
  background: rgb(255,255,255);
  margin: 5px;
  padding: 0 5px 0 0;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  /*  */
}

#recherche input {
  width: 10em;
  border: 0 none;
  margin: 2px;
  padding: 0 2px 0 2px;
}
  
#recherche button {
  background: rgb(255,255,255);
  cursor: pointer;
  border: 0;
  height: 15px;
}

/* Extranet */

.extranet {
  white-space: nowrap;
  border-bottom: 1px solid rgb(170,170,170);
  border-right: 1px solid rgb(170,170,170);}

.extranet_arrow {
  width: 0.8em;
  height: 0.8em;
  vertical-align: top;
}

.extranet_wrapper {
  background: rgb(255,255,255);
  margin: 5px;
  padding: 0 5px 0 0;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  }

td.extranet {
  font-size: 0.8em;
  font-weight: bold;
  text-transform: uppercase;
}

td.extranet > a > span.extra_blue {
  color: rgb(47,87,144);
}

td.extranet > a > span.extra_red {
  color: rgb(90,161,221);
}

td.extranet:hover > a > span.extra_blue {
  color: rgb(90,161,221);
}

td.extranet:hover > a > span.extra_red {
  color: rgb(47,87,144);
}

td.extranet:hover {
  background: rgb(240,240,240);
}

#extranet input {
  width: 5em;
  border: 0 none;
  margin: 2px;
  padding: 0 2px 0 2px;
}
  
#extranet button {
  background: rgb(255,255,255);
  font-weight: bold;
  cursor: pointer;
  border: 0;
}

#extranet button:hover {
  color: rgb(90,161,221);
}

/* Navigation */
.js #menu {
  display: block;
}

.logo_company {
  display: block;
}

.js .little_nav_menu {
  display: none;
}

.menu_arrow {
  display: none;
  width: 0.8em;
  height: 0.8em;
  vertical-align: top;
}

.nav_indic {
  display: block;
  font-weight: normal;
  color: white;
  text-align: center;
  height: 0.8em;
}

.top_level {
  float: right;
  margin: 0 10rem 0 0;
  padding: 0px;
}

.top_level:after {
  display: block;
  clear: both;
} 

.navigation {
  width: 100%;
  height: 2em;
  background: rgb(255,255,255);
  margin: 1.3% 0 0 0; 
  padding: 0px;
}

.menu {
  display: inline-block;
  width: 95.049505%;
  height: 3.5em;
  padding: 0 2.4752475% 0 2.4752475%;
}

.navigation li {
  margin: 0px;
  list-style: none;
}
 
.navigation a {
    color: rgb(47,87,144);
}

.navigation a:hover {
  color: rgb(90,161,221);
}
 
.navigation li:hover > a, .menu .current-item > a {
  text-decoration: none;
  /* border-radius: 10px 10px 0px 0px; */
  /* color: rgb(90,161,221); */
}

.navigation li:hover > a {
  text-decoration: none;
  /* border-radius: 10px 10px 0px 0px; */
  /* color: rgb(90,161,221); */
}

.navigation li:hover {
  display: inline;
  background-position: center bottom;
}

.with_sub_menu li:hover {
  background-image: url(images/inline_svg_menu_select);
}

.navigation li:hover .menu_arrow {
  display: inline;
}
 
.navigation .arrow {
  font-size: 1em;
  line-height: 0%;
}

/*----- Top Level -----*/
.top_level_first {
  border-style: none solid none none;
}

.top_level_last {
  border-style: none none none solid;
}

.top_level_middle {
  border-style: none solid none;
}

.navigation > ul {
  background: rgb(255,255,255);
}

.navigation > ul > li {
  height: 2em;
  padding: 0 5px;
  float: left;
  display: inline-block;
  position: relative;
  font-size: 1em;
  border-width: 1px;
  border-collapse: collapse;
  border-color: rgb(255,255,255);
  text-align: center;
}
 
.navigation > ul > li > a {
  /* width: 100%; */
  display: inline-block;
    text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
  text-align: center;
}
 
.navigation > ul > li:hover, .menu > ul > .current-item {
    /* background: rgb(240,240,240); */
  background-size: 40% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.navigation > ul > li.with_sub_menu:hover, .menu > ul > .current-item {
  background-image: url(images/menu_select);
}

/*----- Bottom Level -----*/
.navigation li:hover .sub-menu {
  display: block;
  z-index: 1;
  opacity: 1.0;
}
 
.sub-menu {
  display: none;
  display: inline-block;
  width: 90vw;
  left: -65vw;
  line-height: 110%;
  padding: 0.5em 10vw 0.5em 0;
  position: absolute;
  top: 100%;
  font-weight: normal;
  z-index: -1;
  opacity: 0;
  text-align: right;
      color: rgb(120,120,120);
  background: rgb(240,240,240);
}

.sub-menu-left {
  /* left: 0px; */
}

.sub-menu-right {
  /* right: 0px; */
}
 
.sub-menu > li {
  display: inline-block;
  font-size: 0.8em;
}
 
.sub-menu > li > a {
  padding-right: 1em;
  padding-left: 1em;
  display: inline-block;
  text-decoration: none;
  color: rgb(120,120,120);
    text-transform: uppercase;
}
 
.sub-menu > li > a:hover, .sub-menu .current-item a {
  color: rgb(90,161,221);
  font-weight: bold;
    background: rgb(240,240,240);
}

/* Language */
.language_arrow {
  width: 0.8em;
  height: 0.8em;
  vertical-align: top;
}

div.language {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  color: rgb(47,87,144);
    text-transform: uppercase;
  font-weight: bold;
  font-size: 0.8em;
}

div.selected_langue {
  text-align: center;
}

.langue_arrow {
  width: 10px;
  height: 10px;
  vertical-align: top;
}

div.language:hover > div {
  color: rgb(90,161,221);
  background: rgb(240,240,240);
}

td.lang_header:hover {
  background: rgb(240,240,240);
}

.language li {
  margin: 0px;
  list-style: none;
}

.language > ul {
  margin: 0px;
  padding: 0px;
}

.language > ul > li {
  display: block;
  position: relative;
  font-size: 1em;
  padding: 5px 5px;
}
 
.language > ul > li > a {
  border-width: 1px;
  padding: 0.3em;
  display: block;
  text-decoration: none;
}

/*----- Sub menu (Pop up)  -----*/
div.language:hover > .lg-sub-menu {
  z-index: 1;
  opacity: 1.0;
}
 
.lg-sub-menu {
  width: 100%;
  padding: 5px 5px;
  position: absolute;
  top: 100%;
  z-index: -1;
  opacity: 0;
      color: rgb(120,120,120);
  background: rgb(240,240,240);
}

.lg-sub-menu-left {
  left: 0px;
}

.lg-sub-menu-right {
  right: 0px;
}

.lg-sub-menu-middle {
  right: -50%;
}
 
.lg-sub-menu > li {
  display: block;
  font-size: 1em;
}
 
.lg-sub-menu > li > a {
  padding: 0.5em;
  display: block;
  text-decoration: none;
  color: rgb(120,120,120);
    text-transform: uppercase;
  font-weight: normal;
}

.lg-sub-menu > li > a:hover {
  color: rgb(90,161,221);
    background: rgb(240,240,240);
}

/* Slider */
#slider_container_stack {
  display: none;
}


img.slider {
  width: 100%;
  height: auto;
}

.slider {
  position: relative;
  margin: 0 auto;
  top: 0px;
  left: 0px;
  width: 810px;
  height: 400px;
  overflow: hidden;
}

.slides {
  cursor: move;
  position: absolute;
  left: 0px;
  top: 0px;
  width: 810px;
  height: 400px;
  overflow: hidden;
  background-color: rgb(255,255,255);
}

.slide {
  position: absolute;
  overflow: hidden;
}

/* Slider loading */

.slider_loading_container {
  position: absolute;
  top: 0px;
  left: 0px;
}

.slider_loading_background {
  opacity: 0.7;
  position: absolute;
  display: block;
  background-color: white;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

.slider_loading_content {
  position: absolute;
  display: block;
  background: url(https://medialsace.fr/images/slider_loading) no-repeat center center;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

/* Slider bullet navigator skin css */

/*
  .slider_bullets div           (normal)
  .slider_bullets div:hover     (normal mouseover)
  .slider_bullets .av           (active)
  .slider_bullets .av:hover     (active mouseover)
  .slider_bullets .dn           (mousedown)
*/

.slider_bullets {
  position: absolute;
  bottom: 35%;
  left: 50%;
}

.slider_bullets div, .slider_bullets div:hover, .slider_bullets .av {
  position: absolute;
  /* size of bullet elment */
  width: 19px;
  height: 19px;
  text-align: center;
  line-height: 19px;
  color: white;
  font-size: 12px;
  background: url(https://medialsace.fr/images/slider_bullets) no-repeat;
  overflow: hidden;
  cursor: pointer;
}

.slider_bullets div {
  background-position: -5px -5px;
}

.slider_bullets div:hover, .slider_bullets .av:hover {
  background-position: -35px -5px;
}

.slider_bullets .av {
  background-position: -65px -5px;
}

.slider_bullets .dn, .slider_bullets .dn:hover {
  background-position: -95px -5px;
}

/* Slider arrow navigator skin css */

/*
  .slider_arrow_left                           (normal)
  .slider_arrow_right                          (normal)
  .slider_arrow_left:hover                     (normal mouseover)
  .slider_arrow_right:hover                    (normal mouseover)
  .slider_arrow_left.slider_arrow_leftdn      (mousedown)
  .slider_arrow_right.slider_arrow_rightdn    (mousedown)
*/

.slider_arrow_left, .slider_arrow_right {
  display: block;
  position: absolute;
  /* size of arrow element */
  width: 55px;
  height: 55px;
  cursor: pointer;
  background: url(https://medialsace.fr/images/slider_arrows) no-repeat;
  overflow: hidden;
}

.slider_arrow_left {
  background-position: -3px -33px;
  top: 30%;
  left: 2%;
}

.slider_arrow_right {
  background-position: -63px -33px;
  top: 30%;
  right: 2%;
}

.slider_arrow_left:hover {
  background-position: -123px -33px;
}

.slider_arrow_right:hover {
  background-position: -183px -33px;
}

.slider_arrow_left.slider_arrow_leftdn {
  background-position: -243px -33px;
}

.slider_arrow_right.slider_arrow_rightdn {
  background-position: -303px -33px;
}

.slide_container {
  position: relative;
  width: 810px;
}

.slide_title {
  white-space: nowrap;
  font-size: 20px;
  width: 29.5%;
}

.slide_text {
  display: table-cell;
  font-size: 16px;
  width: 40%;
}

.tab_slide_link {
  display: table;
  font-size: 24px;
}

.slide_link {
  display: table-cell;
  width: 24%;
}

.slide_title span.large {
  font-size: 1.1em;
}


/* Focus */
div.focus_line {
  display: block;
}

.focus_container {
  width: 100%;
}

.focus {
  display: inline-block;
  width: 33.333333333%;
}

.focus_text {
  height: 4em;
  overflow: hidden;
}

.focus_text span.large {
  font-size: 1.2em;
}

/* Geolocalisation */
.position_container {
  display: table;
  width: 100%;
  padding: 0px;
  margin: 0px;
}

.map_container {
  display: table-cell;
  width: 50%;
  padding: 0 2.5% 0 5%;
  margin: 0px;
  vertical-align: top;
}

#position_map {
  position: relative;
  width: 100%;
  height: 400px;
}

.panoramic_container {
  display: table-cell;
  width: 50%;
  padding: 0 5% 0 2.5%;
  margin: 0px;
  vertical-align: top;
}


#panoramic {
  position: relative;
  width: 100%;
  height: 400px;
}

.route_container {
  display: table;
  width: 100%;
  padding: 0px;
  margin: 0px;
}

.route_map_container {
  display: table-cell;
  width: 50%;
  padding: 0 2.5% 0 5%;
  margin: 0px;
  vertical-align: top;
}


#route_map {
  position: relative;
  width: 100%;
  height: 400px;
}

.directions_container {
  display: table-cell;
  width: 50%;
  padding: 0 5% 0 2.5%;
  margin: 0px;
  vertical-align: top;
}

#directions {
  position: relative;
  width: 100%;
  height: 400px;
}

/* Plan du site */
.sitemap_container {
  display: table-cell;
  width: 88.88888888889%;
  vertical-align: top;
  border-top: 1px solid rgb(170,170,170);
  border-right: 1px solid rgb(170,170,170);  padding-top: 0.5em;
}

.sitemap_top_level {
  display: inline-block;
  width: 33.333333333333336%;
  vertical-align: top;
  text-transform: uppercase;
  font-size: 0.8em;
}

a.sitemap_top_level {
  font-weight: bold;
}

a.sitemap {
  color: rgb(120,120,120);
  font-size: 0.7em;
}

a.sitemap:hover {
  color: rgb(170,170,170);
}

ul.sitemap {
  list-style: none;
  margin: 0;
  /* padding: 0 0 0 8%; */
  padding: 0;
}

/* Gestion des couleurs */


/* Gestion des couleurs avec couche alpha */


/* Gestion des ombres */


/* Formulaires */
/* Form */

tr.desktop {
  display: table-row;
}

tr.mobile {
  display: none;
}

.contact_form {
    width: 40rem;
    text-align: left;
}

.contact_form_submit_width {
    width: 95%
}
}

/* Mode : normal */

@media screen and (min-width: 1024px) {

body {
  font-size: 1vw;
}

h1.title {
  margin-top: 2.5em;
}


/* Header */


/* Navigation */


/* Language */


/* Slider */
.slide_title {
  font-size: 18px;
}

.slide_text {
  font-size: 12px;
}

.text_link {
  font-size: 14px;
  line-height: 110%;
}

/* Focus */


/* Geolocalisation */


/* Plan du site */


/* Gestion des couleurs */


/* Gestion des couleurs avec couche alpha */


/* Gestion des ombres */


/* Formulaires */

}

/* Mode : big */

@media screen and (min-width: 1920px) {

body {
  font-family: 'Rajdhani', Arial, Helvetica,  sans-serif;
  font-size: 1vw;
}



/* Header */


/* Navigation */


/* Language */


/* Slider */


/* Focus */


/* Geolocalisation */


/* Plan du site */


/* Gestion des couleurs */


/* Gestion des couleurs avec couche alpha */


/* Gestion des ombres */


/* Formulaires */

}

@media print {

.recherche_wrapper, .language, .extranet > a, .top_link, .little_logo_company, .logo_container, #top_page, .navigation > ul, #slider_container, #legal_notice, #legal_link {
  display: none;
}

body {
  font-family: 'Rajdhani', Arial, Helvetica,  sans-serif;
  padding: 2.4752475%;
  font-size: 100%;
  background-color: white;
}

p {
  text-align: justify;
}

a {
  color: rgb(47,87,144);
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
}

/* Header */

div.little_nav_brand {
  display: none;
} 

table.header {
  display: table;
  padding: 0px;
  border-collapse: collapse;
}


.logo_header {
  position: relative;
  width: 40%
}

a.header {
  font-size: 1em;
  font-weight: lighter;
  color: rgb(170,170,170);
}

.company_name {
  display: inline-block;
}

.name_header {
  width: 100%;
  border-bottom: 1px solid rgb(170,170,170);
}

.logo_company {
  position: absolute;
  padding-top: 1%;
  width: 90%;
  top: -1%;
  float: left;
}

/* Slider */

table.slide_footer {
  margin-bottom: 2em;
}

.slide_title {
  width: 29.5%;
  font-size: 1em;
  white-space: nowrap;
  text-align: right;
  padding: 0px 1.46% 0px 0px;
  vertical-align: top;
}

h1.large {
  font-size: 1.3em;
  font-weight: bold;
  color: rgb(47,87,144);
}

.slide_title a {
  color: rgb(47,87,144);
}

.slide_text {
  width: 45%;
  vertical-align: top;
  padding: 0.5% 1.46% 0px;
  font-size: 0.8em;
}

.slide_link {
  display: none;
}

div.slide {
  page-break-inside: avoid;
}

#slider_container_stack {
  page-break-after: always;
}

/* footer */

.footer_info {
  vertical-align: top;
  text-align: center;
  font-size: 0.8em;
  padding: 0.5em;
}

.footer {
  margin-top: 1em;
  border-top: 1px solid rgb(170,170,170);
}

.sitemap_top_level {
  display: none;
}

.footer_span {
  display: none;
}

/* Focus */

.focus_container {
  width: 100%;
}

img.focus {
  width: 100%;
}

.focus_text {
  text-align: right;
  font-size: 1.2em;
}

.focus_text span.large {
  font-size: 1.4em;
  font-weight: bold;
}

.focus_line {
  display: none;
}

img.focus {
    width: 100%;
}

div.focus {
  page-break-inside: avoid;
}

span.company_dark {
  color: rgb(47,87,144);
}

span.company_light {
  color: rgb(90,161,221);
}



}