:root {
  --color0: #fff;
  --color1: #E4E2DD;
  --color2: #D0CCC5;
  --color3: #BCB3A3;
  --color4: #807B6D;
  --color5: #B7937B;
  --color6: #000000;
  /*font titre*/
  --font_family_1: 'Aire Bold Std', sans-serif;
  /*font sous-titre*/
  --font_family_2: 'Visby Regular', sans-serif;
  /*font texte*/
  --font_family_3: 'Visby Regular', sans-serif;
  --taille_font: 16px;
  --calc-x: calc(-1 * 50px);
}
.body-gallery-98 .row.ligne-photos.retrait {
  display: none;
}
@font-face {
  font-family: "Aire Bold Std";
  src: url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.eot");
  src: url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.svg#Aire Bold Std")format("svg");
}

@font-face {
  font-family: "Visby Regular";
  src: url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.eot");
  src: url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.svg#Visby Regular")format("svg");
}


.container-fluid.footer2_bg .row {
  width: 100%;
  padding: 2em 0% !important;
}

.logo-transparent {
  position: absolute;
  height: 100%;
  width: 6%;
  left: 0;
  top: 0;
  background: url(../images/logo-contact.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  opacity: .4;
  transform: scale(1, 1);
}

footer .logo-transparent {
  position: absolute;
  height: 100%;
  width: 4%;
  left: 0;
  top: 0;
  background: url(../images/logo-contact.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.3 !important;
  transform: scale(1, 1) !important;
}

/********************Section number********************/
.fact-area {
  position: relative;
  padding: 50px 0px;
  /*! border: 1px solid var(--color3); */
}

.number-item {
  width: 33%;
}

.numbers-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.itemtext h2 {
  font-family: var(--font_family_1);
  color: var(--color0);
  font-size: 53px;
  font-weight: bold;
}

.itemtext p {
  font-family: var(--font_family_1);
  color: var(--color0);
  font-size: 20px;
  font-weight: bold;
  width: 100%;
  text-align: center;
  margin: 0;
  line-height: normal;
}

.fact-card:before {
  content: "";
  position: absolute;
  right: -15px;
  top: 0;
  bottom: 0;
  border-left: 2px dotted var(--color1);
  top: 0;
  bottom: 0;
  zoom: 1;
  filter: alpha(opacity=30);
  -webkit-opacity: 0.3;
  -moz-opacity: 0.3;
  opacity: 0.3;
}

.item {
  text-align: center;
  display: inline-flex;
}

.degrade {
  background: linear-gradient(20deg, var(--color1), var(--nuanceColor1)) !important;
}

.fact-card h2 {
  color: var(--color0);
  font-family: var(--font_family_1);
  position: relative;
  letter-spacing: 1px;
  font-size: 3vw;
  font-weight: bold;
}

.fact-card h2 span {
  /*! color: var(--color1); */
  display: ;
}

.fact-card:hover {
  animation: 1s ease 0s 1 normal none running bounce;
  transition: all 0.3s ease 0s;
  /*! box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; */
}

.section-title h2 {
  color: var(--color0);
  margin-top: 8vh;
}

.fact-card p {

  font-size: 11px;

  color: var(--color5);
  font-family: var(--font_family_1);
  position: relative;
  display: flex;
  align-items: center;
}

.fact-card.lastnk:before {
  opacity: 0 !important;
}

.nkcenter {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.fact-card .i {
  color: var(--color0);
  /*! font-size: 36px; */
  /*! font-size: 64px; */
  /*! margin-top: 8px; */
  margin-right: 20px;
  margin-inline-end: 20px;
  width: auto;
  height: 64px;
  filter: invert(15%) sepia(99%) saturate(1112%) hue-rotate(202deg) brightness(91%) contrast(98%);
}

.section-numbers .container {
  position: relative;
  z-index: 1;
  padding-bottom: 9vh;
  max-width: inherit;
  width: 100%;
  padding: 0em 14% 0em;
  background: var(--color0);
}

.section-title .titre-secondaire {
  color: white;
}

.section-numbers::after {
  /* content: ""; */
  width: 100%;
  height: 100px;
  background-color: var(--color0);
  position: absolute;
  left: 0px;
  bottom: 0px;
  z-index: 0;
}

.section-numbers::before {
  /* content: ""; */
  width: 100%;
  height: 100%;

  /*! background: var(--color3); */
}

.fleur-gauche {
  position: absolute;
  left: -160px;
  top: 0;
  z-index: -1;
  height: 100%;
  width: inherit;
  text-align: left;
  display: none;
}

.fleur-gauche img {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  opacity: .5;
}

.fleur-droite {
  position: absolute;
  right: -160px;
  top: 0;
  z-index: -1;
  height: 100%;
  width: inherit;
  text-align: right;
}

.fleur-droite img {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  opacity: .5;
  display: none;
}


/* ************************************STYLE-FD-THEME******************************* */

/********************** Realisation *******************/

.bloc-contenu.grey.nos-realisations {
  padding: 3em 0% 0em;
  position: relative;
  background: var(--color1);
  z-index: 0;
}

.realisations-bloc {
  position: relative;
}

.nos-realisations .realisations-bloc .shape.shape-3 {
  width: 150px;
  height: 215px;
  top: -5%;
  right: 6%;
  z-index: 1;
  transform: rotate(58deg) scale(-1, 1);
  left: auto;
  display: block;
}

section.carte.section.row.node-143 {
  padding: 6em 0;
}

.nos-realisations .row.recup-photo:before {
  content: unset;
}

.nos-realisations .recup-photo .item-gallery {
  width: 100%;
  height: 100%;
  position: relative;
}

.nos-realisations .recup-photo .item-gallery img {
  width: 100%;
  he;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s ease;
  border-radius: var(--border-radius);
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:hover img {
  transform: scale(1.1);
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item {
  width: 100% !important;
  height: 100%;
  padding: 0;
  border-radius: var(--border-radius);
  );
  overflow: hidden;
}


.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:first-child {
  grid-area: item1
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:last-child,
.realisations .row.recup-photos.gallery .col-md-3:nth-child(5) {
  grid-area: item5;
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(2) {
  grid-area: item2
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(3) {
  grid-area: item3
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(4) {
  grid-area: item4;
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(6) {
  grid-area: item6
}

.realisations .recup-photos .propor {
  width: 100%;
  position: relative;
  margin-bottom: 10px;
  height: 100%;
}

.nos-realisations .col-md-3 .col-md-3 {
  width: 100%;
  margin: 0;
  padding: 0
}

/******************************************************/


/* CORPS DE LA PAGE *******************************************************/

.fluid-slider {
  background: var(--color4);
}

.nopadding {
  padding: 0;
}

.fluid-contenu {
  position: relative;
  z-index: 8000;
}

.fluid-contenu .corps {
  padding: 20px 0px 40px 0px;
}

.sidebar {
  padding-top: 30px;
  text-align: right;
}

.sidebar .photoa {
  background: url(../images/photo-accueil.jpg) right top no-repeat;
  height: 187px;
}

.view .item {
  padding: 15px 0 30px 0;
  margin: 0;
  float: left;
  width: 100%;
}

.news .item {
  padding: 0px 0 30px;
  margin: 0;
  border-bottom: 1px solid var(--color0);
  margin-bottom: 40px;
}

.view .item {
  position: relative;
}

.body-news-list .view .item:before {
  content: '';
  width: 110vw;
  left: 50%;
  top: 0;
  margin-left: -80%;
  height: 100%;
  background-color: transparent;
  display: block;
  position: absolute;
  display: none;
}

.body-news-list .view .item:hover:before {
  background-color: var(--color0);
}

.view .actu:first-child .item {
  border-bottom: 1px solid var(--color0);
  padding: 15px 0 30px 0;
}

.view .actu:last-child .item {
  border-bottom: 0 solid var(--color0);
}

.view .item a.voirtous {
  margin: 20px 0;
}

.view .item a img {
  width: 100%;
  position: relative;
  z-index: 1;
  border-radius: 6px;
  background-size: cover;
  margin-bottom: 10px;
}

.galerie-photo.ligne-photos {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin: 0;
  padding: 0 5%;
}

.galerie-image-bloc {
  width: calc(33.333% - 10px);
  height: auto;
  margin: 0;
  padding: 0;
}

.galerie-photo.ligne-photos img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0;
  padding: 0;
}

.galerie-image-bloc .propor-cont {
  position: relative;
  padding-top: 100%;
  overflow: hidden;
}

.galerie-image-bloc .propor-cont img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.view .item .h {
  text-transform: uppercase;
  margin: 0 0 11px 0;
  font-size: 20px;
  color: var(--color4);
  font-weight: 900;
}

.date-article,
.news .item .date_post,
.view .item .date_post {
  font-size: 15px;
  color: var(--color2);
  display: inline-block;
  margin: 10px 0;
  font-family: var(--font_family_2);
}

.view .item .propor {
  width: 100%;
  position: relative
}

.view .item .propor:after {
  padding-top: 75%;
  display: block;
  content: '';
}

.view .item .propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.view .item .propor .imagecont {
  height: 100%;
  display: block;
  border: 3px solid var(--color3);
  width: 100%;
  overflow: hidden;
  position: relative;
}

.view .item .propor .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat;
}

.view .voirtous a {
  text-decoration: underline;
}

.view .voirtous a:hover {
  text-decoration: none;
}

.view .articleContent {
  color: var(--color4);
  font-size: 14px;
  margin: 0 0 10px 0;
}

.view .imagefond {
  display: inline-block;
}

.paddingCont {
  border: none;
  padding: 30px 0;
}

/** BLOCK NEWSLETTER **/
.NewsletterBg {
  padding: 0 20px 0px;
  background-color: var(--color2);
  text-align: left;
  margin-top: 0;
}

.NewsletterBg span {
  color: red;
  font-size: 17px;
  font-family: var(--font_family_2);
}

.NewsletterBg .h {
  color: var(--color0);
  font-size: 23px;
  margin: 0 0 30px 0;
}

.NewsletterBg p {
  font-size: 23px;
  color: var(--color6);
  /*! margin: 0 0 1px 0; */
  font-family: var(--font_family_2);
}

.block #newsletter_form {
  display: table;
  width: 100%;
  margin: 0 auto;
}

.footer-coordonnees .scrollbars {
  margin: 0;
}

.block #newsletter_form label {
  font-weight: normal;
  display: table-cell;
  display: none;
}

.block #newsletter_form input {
  border: none;
  border-radius: 0;
  display: table-cell;
  vertical-align: middle;
}

.block #newsletter_form input[type="text"] {
  background-color: transparent;
  line-height: 1;
  line-height: 32px \9;
  padding: 0px 12px;
  width: 70%;
  margin: 0 0 0 0;
  font-size: 16px;
  color: var(--color0);
  border: 1px solid var(--color0);
  height: 43px;
}

.block #newsletter_form input[type="submit"] {
  background: var(--color0);
  border: 2px solid var(--color0);
  color: var(--color0);
  padding: 9px 13px 8px;
  font-weight: 900;
}

.block #newsletter_form input[type="submit"]:hover {
  border: 2px solid var(--color0);
  color: var(--color0);
  background: var(--color2);
}

.blockCenter.gallery-iflex {
  margin: 0 -15px;
}

/* SUDO SLIDER *************************************************************/
.cont-slider {
  position: relative;
}

.sudo-slider,
.sudo-slider img {
  width: 100%
}

a.sudolien.precedent,
a.sudolien.suivant {
  z-index: 9000;
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30px;
  height: 32px;
  margin-top: -15px
}

a.sudolien.precedent {
  left: 0px;
  background: url(../images/g.png)
}

a.sudolien.suivant {
  right: 0px;
  background: url(../images/d.png)
}

a.sudolien.precedent:hover,
a.sudolien.suivant:hover {
  opacity: 0.8
}

.cont-slider .controls {
  z-index: 9000;
  display: inline-block;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  text-align: center
}

.cont-slider .controls ol {
  margin: 0;
  padding: 0;
  list-style-type: none
}

.cont-slider .controls ol li {
  display: inline-block
}

.cont-slider .controls ol li a {
  display: block;
  width: 19px;
  height: 19px;
  background: url(../images/miette.png) center center no-repeat;
  margin: 0 2px
}

.cont-slider .controls ol li.current a {
  background: url(../images/miette-h.png) center center no-repeat
}

.cont-slider .controls ol li a span {
  display: none
}

.caption {
  position: absolute;
  top: 15px;
  left: 15px;
  font-size: 20px;
  color: var(--color0);
  opacity: 0
}

.caption.active {
  -webkit-animation: caption 2s ease-in-out;
  -webkit-animation-fill-mode: forwards;
  -webkit-animation-delay: 0s;
  -moz-animation: caption 2s ease-in-out;
  -moz-animation-fill-mode: forwards;
  -moz-animation-delay: 0s;
  -o-animation: caption 2s ease-in-out;
  -o-animation-fill-mode: forwards;
  -o-animation-delay: 0s;
  animation: caption 2s ease-in-out;
  animation-fill-mode: forwards;
  animation-delay: 0s;
}

@-webkit-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@-moz-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@-o-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

.news .item .h {
  text-transform: uppercase;
  margin: 15px 0;
  font-size: 19px;
  color: var(--color3);
  font-weight: 900;
}

.news .item a.plus {
  width: 100%;
}

.news .actuAadding {
  padding: 20px;
  background-color: var(--color0);
}

.news .item .propor {
  width: 100%;
  position: relative
}

.news .item .propor:after {
  padding-top: 75%;
  display: block;
  content: '';
}

.news .item .propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.news .item .propor .imagecont {
  height: 100%;
  display: block;
  border: 3px solid var(--color3);
  width: 100%;
  overflow: hidden;
  position: relative
}

.news .item .propor .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat
}

.news .voirtous a {
  text-decoration: underline
}

.news .voirtous a:hover {
  text-decoration: none
}

.news .articleContent {
  color: var(--color4);
  font-size: 14px;
  margin: 0 0 30px 0;
  height: auto;
}

.news .imagefond {
  display: inline-block;
  width: 100%;
  background-size: cover;
  border-radius: 6px;
}

.news a img {
  width: 100%;
  position: relative;
  z-index: 1;
}

.body-formule-list .main_bg {
  background-image: url(../images/encartBg.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
  padding: 0px 0 10px;
  position: relative;
  z-index: 2;
}

.body-formule-list .formuleBg {
  display: none;
}

.formuleBg {
  background-image: url(../images/encartBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  padding: 80px 0 50px;
  height: 500px;
  position: relative;
  z-index: 2;
}

.formule {
  width: 100%;
  padding: 46px 30px 20px;
  background-image: url(../images/formule.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
  text-align: center;
  margin-bottom: 30px;
  -webkit-box-shadow: 6px 0 24px var(--color4);
  -moz-box-shadow: 6px 0 24px var(--color4);
  -ms-box-shadow: 6px 0 24px var(--color4);
  -o-box-shadow: 6px 0 24px var(--color4);
  box-shadow: 6px 0 24px var(--color4);
}

.formuleBg .container:after,
.formuleBg .container:before {
  content: '';
  background-repeat: no-repeat;
  background-position: 50% 0;
  position: absolute;
  top: -90px;
  z-index: -1;
}

.formuleBg .container:before {
  background-image: url(../images/formuleBgBefore.png);
  width: 277px;
  height: 499px;
  left: -270px;
  top: -30px;
}

.formuleBg .container:after {
  background-image: url(../images/formuleBgAfter.png);
  width: 302px;
  height: 585px;
  right: -240px;
}

.formule .h {
  color: var(--color3);
  font-size: 26px;
  margin-bottom: 27px;
  font-weight: 100;
  -webkit-text-shadow: 4px 2px 4px var(--color4);
  -moz-text-shadow: 4px 2px 4px var(--color4);
  -ms-text-shadow: 4px 2px 4px var(--color4);
  -o-text-shadow: 4px 2px 4px var(--color4);
  text-shadow: 4px 2px 4px var(--color4);
}

.formule .prix {
  color: var(--color0);
  font-size: 26px;
  font-weight: 100;
  -webkit-text-shadow: 4px 2px 4px var(--color4);
  -moz-text-shadow: 4px 2px 4px var(--color4);
  -ms-text-shadow: 4px 2px 4px var(--color4);
  -o-text-shadow: 4px 2px 4px var(--color4);
  text-shadow: 4px 2px 4px var(--color4);
}

.formule ul {
  padding: 0 0 20px 0px;
  margin: 0;
  line-height: 1.2;
  margin-bottom: 20px;
  min-height: 182px;
  border-bottom: 1px solid var(--color1);
}

.formule li,
.formule p {
  color: var(--color0);
  font-size: 18px;
}

.formule li.item {
  padding: 15px 0;
}

.encart p {
  margin-bottom: 0;
}

.formule li {
  list-style: none;
}

.encart p span {
  font-size: 22px;
  margin: 30px auto;
  display: inline-block;
}

.formule02:after {
  content: '';
  position: absolute;
  top: -21px;
  right: 10px;
  background-image: url(../images/m.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  width: 54px;
  height: 50px;
}

.formule.formule03 {
  padding: 100px 30px;
}

/* MODULE CARTE ***********************************************************/
.carte .group-right>ul,
.carte .group-left>ul {
  background-color: transparent;
}

.carte ul {
  padding: 0;
  margin: 0 0 40px 0;
  float: left;
  width: 100%;
}

.carte td {
  padding: 10px;
  display: ;
}

.carte li {
  list-style: none;
  margin-bottom: 0;
}

.carte .group {
  list-style: none;
  float: left;
  width: 100%;
  margin-bottom: 10%;
  position: relative;
}

.carte .group-title {
  color: var(--color2);
  border: 1px solid var(--color2);
  background-color: var(--color0);
  font-size: 18px;
  text-align: left;
  display: inline-block;
  text-transform: uppercase;
  margin: 0 0 10px 0;
  padding: 12px 30px 8px 30px;
  border-radius: 50px;
  z-index: 0;
}

.carte .group-title:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 5px;
  background-color: var(--color2);
  top: 15px;
  left: 0;
  z-index: -1;
  background-image: url('../images/dots3.png');
  background-repeat: repeat-x;
  background-position: 50% 0;
  display: none;
}

.carte .itemTr:nth-child(even) {
  background-color: var(--color0);
}

.carte .group.group-title-p {
  margin-bottom: 0px;
  text-align: left;
}

.carte li:nth-child(even) .group {
  /*! direction:rtl; */
  /*! text-align: center; */
}

.carte li:nth-child(even) .group tr {
  direction: ltr;
}

.carte li:nth-child(even) .group .h {
  direction: ltr;
}

.carte li:nth-child(even) .group .groupContent {
  padding: 0px 0 0px 0;
}

.carte li:nth-child(odd) .group .groupContent {
  padding: 0px 0 0px 0;
}

.carte li .group .groupContent {
  vertical-align: top;
}

.carte li:nth-child(even) {
  position: relative;
}

.carte li:nth-child(even):before {
  content: '';
  position: absolute;
  top: 0;
}



.carte .item p {
  margin-bottom: 0;
  background-repeat: repeat-x;
  background-position: 50% 12px;
}



.carte .item {
  display: flex;
  flex-direction: column;
  padding: 6em 3em;
}

.carte .group:before {
  content: '';
  position: absolute;
  width: 20%;
  height: 125%;
  background: #C29D9C;
  left: -50px;
  top: 50%;
  z-index: 0;
  transform: translateY(-50%);
}

.group.group-title-p:before {
  display: none;
}

.carte .price {
  float: none;
  color: var(--color4);
  font-size: 18px;
  font-weight: 100;
  position: relative;
  font-weight: 100;
  text-align: center;
  width: 69px;
}

.carte .price:after {
  content: '';
  height: 40px;
  width: 1px;
  background-color: var(--color0);
  float: right;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -20px;
}

.carte .price:last-child:after {
  display: none;
}

.carte .yesLabels .price {
  font-size: 17px;
}

.carte .labels .label {
  font-size: 12px;
}

.carte .item .yesLabels .price {
  border-right: 1px solid var(--color0);
}

.carte .item .yesLabels .price:last-child {
  border-right: 0 solid var(--color0);
}

.carte .label {
  margin-right: 0;
  border-radius: 0;
  color: var(--color2);
  display: table-cell;
}

.carte .label:last-child {
  margin-right: 0;
}

.item p span.price:nth-child(3):after,
p.header .price.label1:after {
  display: none;
}

.priceVide {
  text-align: center !important;
}

.carte .labels {
  border-bottom: 0 solid var(--color3);
  margin-top: 0;
  margin-bottom: 0;
}

.carte .blazy {
  margin-bottom: 20px;
}

.price.label {
  position: relative;
}

.section.carte .reserver {
  display: inline-block;
}

.section.carte .reserver img {
  vertical-align: text-top;
  margin: 3px 0 0 0;
}

.carte .price span {
  display: block;
  white-space: nowrap;
}

.carte .item .item-description .blazy {
  float: left;
  margin: 5px 10px 10px 0;
  width: auto;
}

.deprecated-ie {
  text-align: center;
  color: var(--color4);
  background: var(--color0)
}

.deprecated-ie p {
  line-height: 30px;
  margin: 0
}

.deprecated-ie a {
  line-height: 30px;
  font-family: var(--font_family_1);
  font-size: 13px;
  color: var(--color4);
  text-decoration: underline
}

/* Fix pour fond noir lightbox qui n'apparait pas sur chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {
  .lightboxOverlay {
    overflow: scroll
  }

  .lightboxOverlay::-webkit-scrollbar {
    width: 0px
  }
}

/* ************************************STYLE-FD-THEME******************************* */
body:after {
  content: url('../images/bx_loader.svg') !important;
  display: none;
}

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill,
input:-moz-autofill,
textarea:-moz-autofill,
select:-moz-autofill {
  background-color: var(--color3) !important;
  background-image: none;
  color: var(--color0) !important;
}

.loader-cont {
  display: flex;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background: var(--color3);
  justify-content: center;
  align-items: center;
}

#inner {
  display: flex;
  width: 300px;
  height: auto;
  vertical-align: middle;
  align-content: center;
  justify-content: center;
  align-items: center;
}

#inner img {
  width: 200px;
}

/**********/
.body-service-list .services .tableGrid.row:nth-of-type(odd) {
  /*! direction: rtl; */
}

.body-service-list .services .tableGrid.row {
  overflow-x: hidden;
  margin: 5em 0 10em;
}

.tableGrid.fullWidth {
  width: 100%;
}

.tableGrid>.row,
.tableGrid {
  display: table;
  margin: 0;
  padding: 0;
  position: relative;
  height: 100%;
}

.tableGrid>.table-row {
  height: 100%;
}

.table-row {
  display: table-row;
}

.tableGrid>.row>.table-row>[class*=col],
.tableGrid>.table-row>[class*=col],
.tableGrid>.row>[class*=col],
.tableGrid>[class*=col] {
  display: table-cell;
  vertical-align: top;
  float: none;
  height: 100%;
  position: relative;
}

.noPaddingCells>.row>.table-row>[class*=col],
.noPaddingCells>.table-row>[class*=col],
.noPaddingCells>[class*=col] {
  padding: 0;
}

.tableGrid.nopadding>.row>.table-row>[class*=col],
.tableGrid.nopadding>.table-row>[class*=col],
.tableGrid.nopadding>.row>[class*=col],
.tableGrid.nopadding>[class*=col] {
  padding: 0;
}

.tableGrid.va-middle>.row>.table-row>[class*=col],
.tableGrid.va-middle>.table-row>[class*=col],
.tableGrid.va-middle>.row>[class*=col],
.tableGrid.va-middle>[class*=col] {
  vertical-align: middle;
}


strong {
  font-family: var(--font_family_1);
}

.top-texte p {
  text-align: center;
  /*! font-size: 20px; */
}

.top-texte {
  margin-top: 53px;
}

.subtitle {
  font-size: 20px;
  font-weight: normal;
  font-family: var(--font_family_1);
}

em {
  font-style: italic !important;
}


.navbar-nav>li>a,
.gfg {
  font-family: var(--font_family_2);
}

.navbar-nav>li>a:after {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  background: var(--color2);
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  transition: .3s;
}

.navbar-nav>li>a:hover:after {
  width: 80%;
}

.navbar-nav>li>a:after:hover {
  width: 80%
}

.navbar-nav>.active>a:after {
  width: 66%;
}

.address strong {
  font-family: var(--font_family_1);
  font-weight: bold !important;
}

.carte .group-subtitle {
  font-family: var(--font_family_1);
  margin: 15px 0;
  font-size: 0.9em;
  text-align: center;
  color: var(--color2);
}

.container,
.row {
  position: relative;
}

/*********** tinyMce ***************/
section p img {
  margin: 5px 10px 10px 10px;
}

img[style="float:right;"],
section figure.right {
  margin: 0 5px 20px 0px;
}

img[style="float:left;"],
section figure.left {
  margin: 0 20px 5px 0px;
}

/**call Tracker**/
.sidebar-scroll-right .callTracker {
  width: 100%;
  height: 50px;
}

.callTracker {
  position: relative;
}



.callTracker .t_affiche {
  cursor: pointer;
}


.callTracker.active .t_affiche {
  opacity: 0;
  display: none;
}

.pied .callTracker a,
.coordonnees .callTracker a {
  position: relative;
  left: 0px;
}

.coord {
  padding: 0 3%;
}



/**call Tracker**/
i.fas.fa-phone-alt {
  transform: rotate(95deg);
  margin-right: 6px;
  margin-top: -4px;
}

/*************************trait********************************/

.trait:before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  width: 1px;
  height: 100%;
  top: 0;
  background: var(--color4);
  opacity: .3;
}

.trait {
  position: absolute;
  top: 0;
  height: 13vh;
  top: -59px;
  z-index: 10;
  width: 100%;
  left: 0;
}

.body-pageseo .dream-liste .trait {
  display: none
}

/**********************************************************/

/***********************dream liste***********************/
.dream-liste {
  display: flex;
  padding: 9em 0% 3em;
  position: relative;
  background: var(--color1);
  flex-direction: column-reverse;
}



.dream-img img {
  width: 100%;
  height: 100%;
}

.dream-img {
  width: 100%;
  background: url(../images/paris.png);
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 0;
  position: relative;
  z-index: 1;
  height: 54vh;
  filter: grayscale(1);
  background-position: center;
}

.dream-content {
  position: relative;
  width: 100%;
  padding: 0 0em 5vh;
  border-radius: 0;
  text-align: center;
  z-index: 1;
}

.dream-content .subtitle {
  font-size: 25px;
  margin-top: 0;
  text-transform: initial;
  color: var(--color5);
  font-weight: normal;
}

.dream-text {
  margin-top: 24px;
  font-family: var(--font_family_2);
  font-size: 22px;
}

.swip-liste-AT {
  position: relative;
  width: 100%;
  padding: 0%;
  overflow: hidden;
}

.swip-liste-AT .swiper.mySwiper {
  margin: 0 15%;
  overflow: hidden;
}

.dream-card {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

.text-dream .subtitle {
  font-size: 30px;
  color: var(--color0);
}

.text-dream p {
  color: var(--color0);
  margin-top: 35px;
}

.dream-item-left {
  position: relative;
  display: inline-block;
  width: 100%;
  vertical-align: middle;
  width: 50%;
  margin: 0;
  height: 470px;
}



.img-dream.intercontinantal-img {
  background: url(../images/Intercontinental.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.img-dream.domaine-de-vert-mont {
  background: url(../images/domaine-de-vert-mont.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-dream.chateau-wedding-ceremony {
  background: url(../images/chateau-wedding-ceremony.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-dream img {
  display: block;
  width: auto !important;
  /*! height: 100%; */
  /*! max-width: 100%; */
}

.dream-item-left .img-dream {
  height: 100%;
  clip-path: inset(0 100% 0 0);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.swiper-slide-active .dream-item-left .img-dream {
  clip-path: inset(0 0 0 0);
}


.swiper-slide-active .dream-card .dream-item-right {
  opacity: 1;
  -webkit-transition: .7s ease-out .2s;
  transition: .7s ease-out .2s;
}


.btns-dream .swiper-button-prev,
.btns-dream .swiper-button-next {
  position: static;
  display: flex;
  height: 50px;
  width: 50px;
  justify-content: center;
  align-items: center;
  color: var(--color0);
  opacity: .8;
}

.btns-dream .swiper-button-next i,
.btns-dream .swiper-button-prev i {
  font-size: 18px;
  color: var(--color2);
}

.swiper-pagination {
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: var(--color2);
  width: auto;
  position: static;
  /*! height: 100%; */
  /*! margin: ; */
}

.btns-dream .swiper-button-prev .fa-chevron-left::after {
  content: '';
  width: 35px;
  height: 3px;
  position: absolute;
  background: var(--color2);
  top: 48%;
  left: 24px;
  transform: translateY(-50);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btns-dream .swiper-button-prev:hover .fa-chevron-left::after {
  width: 20px;
}

.btns-dream .swiper-button-next .fa-chevron-right::after {
  content: '';
  width: 35px;
  height: 3px;
  position: absolute;
  background: var(--color2);
  top: 48%;
  right: 24px;
  transform: translateY(-50);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btns-dream .swiper-button-next:hover .fa-chevron-right::after {
  width: 20px;
}

/***********************************************************/
.ReservationBg {
  background: url(../images/main-banner-bg.jpg);
  padding: 10em 10%;
  position: relative;
}

.imgZone {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 56%;
  height: 100%;
  z-index: 1;
  background: url(../images/formule-img2.jpg);
  background-size: cover;
  background-position: center;
}

.imgZone img {
  width: 100%;
  height: 100%;
}

.ReservationBg:before {
  content: '';
  position: absolute;
  width: 50%;
  height: 100%;
  background: var(--color5);
  top: 0;
  left: 0;
}

.ReservationBg:after {
  content: '';
  position: absolute;
  width: 50%;
  height: 100%;
  /*! background: url(../images/bg1-.png); */
  top: 0;
  left: 0;
  background-size: contain;
  opacity: .1;
  z-index: 0;
}

.ReservationBg .row {
  display: flex;
  flex-direction: row-reverse;
}

.atout-AT .row {
  display: flex;
  flex-direction: row;
}

.reservation-text-zone {
  background: var(--color0);
  padding: 5em 4em;
  position: relative;
  z-index: 4;
  left: 38px;
  border-radius: var(--border-radius);
}

/*************** resets and styles ***********************/


*:focus {
  outline: none;
}

html {
  height: 100%;
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

html,
body,
div,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
fieldset,
input {
  margin: 0;
  padding: 0;
}

pre,
code,
address,
caption,
cite,
code,
em,
strong,
th {
  font-size: 1em;
  font-weight: normal;
  font-style: normal;
}

fieldset {
  border: none;
}

caption,
th {
  text-align: left;
}


.owl-nav {
  display: none;
}

.gallery.node-51 {
  position: relative;
  z-index: 1;
}

.scrollbar-path-vertical {
  background-color: #ccc !important;
}

.scrollbar-handle {
  background: var(--color5);
}

footer .scrollbar-path-vertical {
  background-color: #eee !important;
}

table,
.table {
  border-collapse: collapse;
  width: 100%;
  border-spacing: 0;
}

textarea {
  overflow: auto;
  resize: none;
}

b,
strong {
  font-weight: 600;
}

input {
  border: none;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
}

input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 1px;
  text-overflow: '';
}

input[type=submit] {
  cursor: pointer;
}

/* pre{font-size:12px;padding-left:5px;background:url(../images/backgrounds/pre.jpg);white-space:pre;border-width:0 1px 1px 1px;border-style:solid;border-color:var(--color4);line-height:22px;letter-spacing:.1px;word-spacing:1px;margin:15px 0 15px 0;overflow:hidden;} */
code {
  background-color: var(--color4);
  padding: 0 5px;
  margin: 10px 0;
  border: 1px dotted var(--color4);
  display: inline-block;
  text-shadow: 0 1px 0 var(--color4);
}

sup,
sub {
  font-size: 8px;
  font-size: .8rem;
  line-height: 18px;
  margin: 0;
  padding: 0;
}

sup {
  vertical-align: top;
}

sub {
  vertical-align: bottom;
}

nav {
  padding: 0;
  margin: 0;
}

blockquote {
  padding-left: 20px;
}

/******** contents **********/


.body-carte-52 #main::after {
  display: none;
}

.body-contact-39 .contact {
  padding: 0;
}

ul,
p {
  margin-bottom: 20px;
}



.sitemap .encadrage a {
  color: var(--color6) !important;
}

a:hover,
a:focus {
  text-decoration: underline;
  color: var(--color4);
}

blockquote {
  border-color: var(--color2);
}

::selection {
  color: var(--color0);
  background-color: var(--color1);
}

::-moz-selection {
  color: var(--color0);
  background-color: var(--color1);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h {
  font-style: normal;
  margin: 0 0 25px;
  font-weight: normal;
  display: block;
  margin-top: 0;
  color: var(--color2);
}

.copyright h3 {
  margin: 0 0 10px
}


.bannier .banner h1,
.bannier .banner .titre {
  font-size: 70px;
  line-height: 1;
  letter-spacing: 1px;
  font-family: var(--font_family_1);
  color: var(--color0);
  text-align: left;
  font-weight: 700;
  position: relative;
  z-index: 1;
  display: ;
}

.bannier .banner h1 small {
  color: var(--color5);
}

.contact.form {
  width: 50%;
  display: block;
  padding: 0 4%;
  margin-top: 0;
}



.form {
  padding: 0 30%;
}

.hicon:after,
h1:after,
.h1:after,
.bannier .banner h1:after {
  content: "";
  /*! position: absolute; */
  /*! width: 200px; */
  /*! height: 28px; */
  /*! background: url('../images/tache.svg') no-repeat center / contain; */
  /*! left: 50%; */
  /*! top: -45px; */
  transform: translate(-50%, 0);
}

/* .hicon:before, . */
.hicon:after,
/* h1:before, .h1:before, */

h2,
.h2 {
  font-size: 24px;
  !i;
  !;
  margin-bottom: 20px;
}

h3,
.h3 {
  font-size: 24px;
}

h4,
.h4 {
  font-size: 19px;
}

h5,
.h5 {
  font-size: 14px;
}

h6,
.h6 {
  font-size: 12px;
}

.bg {
  background-color: var(--color0);
  background-position: 50% 0;
  background-repeat: no-repeat;
  position: relative;
  overflow-x: hidden;
}

/* .bg01{background-image:url(../images/bg01.jpg);}
.bg02{background-image:url(../images/bg02.jpg);}
.bg03{background-image:url(../images/bg03.jpg);}
.bg04{background-image:url(../images/bg04.jpg);}
.body-page-1 .bg01,.body-pageseo .bg01{background-image:url(../images/bg01.jpg);} */
.flex-seoContain {
  position: relative;
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

.flex-seoContain .seo-content {
  width: 55%;
  padding-top: 1em;
}

.flex-seoContain .seo-content h1,
.flex-seoContain .seo-form h2.h1 {
  text-align: left;
}

.flex-seoContain .seo-content h1:before,
.flex-seoContain .seo-form h2.h1:before {
  left: 0;
  margin-left: 0;
}

.flex-seoContain .seo-form {
  width: 44%;
  padding: 1em 3% 3em;
  background: var(--color4);
}

.img-seo img {
  border-radius: var(--border-radius);
  width: 240px;
  height: auto;
}

a.imagecont.noflicker.img1 {
  float: right;
  margin-left: 10px;
  margin-bottom: 10px;
}

ul li.niveau2,
ol li.niveau2 {
  margin-left: 30px
}

/************* seps *****************/
hr {
  background-color: var(--color3);
  border: none;
  width: 100%;
  height: 1px;
  margin: 0 auto 0;
  clear: both;
}

.sep:after {
  content: '...';
  display: block;
  letter-spacing: 3px;
  width: 40px;
  /*vertical-align:super;*/
  margin: 0 auto !important;
  float: none;
}

/************** IMAGES *****************/
.vis {
  position: relative;
  margin: 0;
}

.vis01 figcaption {
  position: absolute;
  left: 0;
  top: 0;
  padding: 20px;
  font-size: 21px;
  color: var(--color4);
  line-height: 1;
}

.vis01 figcaption strong {
  color: var(--color4);
  font-size: 43px;
}

.vis01 {
  float: right;
}

/************** header *****************/
.headerAdress p img {
  vertical-align: sub;
}

.body-page .header {
  z-index: 8001;
  position: relative;
  width: 100%;
  padding: 0 0 0;
  height: 82vh;
  background: var(--color3);
  top: 0;
}

.header {
  z-index: 2;
  position: relative;
  width: 100%;
  padding: 0 0 0;
  background: var(--color1);
}

.headerTel {
  font-size: 55px;
  letter-spacing: 2px;
  word-spacing: 4px;
  color: var(--color0);
  font-weight: 100;
  margin-bottom: 20px !important;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  text-shadow: 1px 1px 1px var(--color4);
  bottom: 0;
  right: 0;
}

.headerTel .table {
  margin-bottom: 0;
  height: 100%;
}

.headerTel .table-cell {
  vertical-align: middle;
}

.body-page-1 .header,
.body-pageseo .header {
  margin-bottom: 0;
}


.header01bg.fixed {
  background: var(--color1);
  transition: 0.3s;
  height: 100px;
  box-shadow: 0 1px 10px var(--color6);
}

.header02bg {
  z-index: 1;
  position: relative;
  padding: 0 0 0 0;
  width: 100%;
}

.headerAdress {
  width: 100%;
}

.headerAdress p {
  font-size: 17px;
  color: var(--color0);
  margin: 8px 0 18px 0;
}

.navbar-header {
  position: relative;
  float: left;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 50% 0;
  padding: 0;
  text-align: center;
}

.navbar-brand {
  position: relative;
  text-decoration: none;
  padding: 0;
  line-height: 0;
  height: auto;
  float: unset;
  width: 100%;
}

.navbar-brand.paddin {
  padding: 30px 0 10px;
}

.navbar-brand img {
  position: relative;
  width: 100%;
  height: auto;
}


/********** effet hover du menu **********/
@-webkit-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-webkit-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-moz-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-moz-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-ms-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-ms-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-o-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-o-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}



.propor:after {
  padding-top: 76%;
  display: block;
  content: '';
}

.propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.propor .propor-cont .imagecont {
  height: 100%;
  display: block;
  /*! border:1px solid var(--color1); */
  width: 100%;
  border-radius: 0 !important;
  overflow: hidden;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}

.news .item .propor .imagecont {
  border: 4px solid var(--color0);
}

.propor .propor-cont .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Effet photo */

.propor .propor-cont .imagecont:hover img {
  transform: scale(1.024);
}

.dream-text ul {
  list-style: none;
}

.dream-content h2 {
  text-align: left;
}

.dream-content:before {
  content: '';
  position: absolute;
  /*! background: var(--color5); */
  width: 1px;
  height: 100px;
  left: 50%;
  right: 50%;
  top: -132px;
  /*! opacity: .3; */
}

.news .propor .propor-cont .imagecont:hover img {
  transform: scale(1.1);
}

/******news************/
.news .item .h a {
  color: var(--color2);
  text-decoration: unset;
}

.news .item a:hover {
  text-decoration: underline;
}


.newsList {
  float: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
  width: 100%
}

.newsList .ligne-actus {
  flex: 0 0 auto;
  margin: 0 0 30px;
  float: none
}

.news .date_post {
  text-align: center;
  color: var(--color2);
  font-size: 14px;
  background-color: var(--color1);
  position: absolute;
  left: 23px;
  top: -6px;
  padding: 2% 2%;
  z-index: 9;
}

.news .date_post span {
  display: block;
  line-height: 14px;
  /* min-width:84px; */
  margin-bottom: 6px;
  font-size: 13px;
}

.news .date_post .s1 {
  line-height: 35px;
  margin-bottom: 2px;
  font-size: 18px;
}

.newsList .propor .propor-cont .imagecont .masque {
  background-image: none
}

.news .propor .propor-cont .imagecont:hover {
  -webkit-transform: scale(1.15);
  -moz-transform: scale(1.15);
  -o-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: unset;
}

.newsList .propor {
  overflow: hidden
}

.newsList .item .h3 {
  color: var(--color1);
  padding: 5px 0 25px;
  margin: 0;
  font-weight: 200;
  font-family: var(--font_family_1);
}

.newsList .item:hover .h3 {
  color: var(--nuanceColor1)
}

.newsList .item .h3 a:hover {
  text-decoration: underline;
}

.item-news {
  position: relative
}

.newsItem .photo img {
  object-fit: cover;
  -o-object-fit: cover;
  min-width: 100%;
  min-height: 100%;
  flex: 1;
  width: 100%;
  height: 100%;
  overflow-x: hidden
}

.newsItem .photo {
  width: 100%;
  height: 33vw;
  overflow: hidden;
  height: clamp(300px, 40vw, 650px);
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-color: var(--color1);
  -webkit-transition: all .5s ease;
  -moz-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
  border: 4px solid var(--color0);
}

.newsItem .contenu-article {
  padding: 15px 0 0;
  min-height: 200px;
  margin: 0
}

.newsItem .div-rs {
  margin: 0 auto 40px;
  display: flex;
  align-content: center;
  align-items: center;
}

.newsItem .div-rs .btn-partage {
  display: flex;
  overflow: hidden;
  height: 56px;
  position: relative;
  top: 0;
  margin-left: 2rem;
}

.newsItem .div-rs .btn-partage .icones {
  fill: var(--color1);
  width: 22px;
}

.newsItem .div-rs .btn-partage .btnp:hover {
  background-color: var(--color1);
}

.newsItem .div-rs .btn-partage .btnp:hover .icones {
  fill: var(--color0);
}

.newsItem .div-rs .btn-partage .btn-gmb {
  display: none;
}

.newsItem .date_post {
  top: -16px;
}

.news_avant_apres {
  display: table;
  width: 100%;
  text-align: center;
  margin: 0;
  height: 100%;
  position: relative;
}

.news_avant_apres>div {
  display: table-cell;
  float: none;
  padding: 0;
  height: 100%;
}

.news_avant_apres a,
.news_avant_apres a:visited {
  padding: 20px 30px 15px 30px;
  color: var(--color1);
  text-decoration: none;
  display: block;
  height: 100%;
  font-family: var(--font_family_1);
  text-transform: uppercase;
  border: 1px solid var(--color2);
}

.news_avant_apres a:hover,
.news_avant_apres a:focus {
  background: var(--color3);
  text-decoration: none;
  border: 1px solid var(--color3);
}

.news_avant_apres>div:last-child {
  right: -5px
}

.navButtons,
.navButtons:visited {
  padding: 0 0 10px;
  color: var(--color2);
  transition: .8s;
  text-decoration: none;
  display: block;
}

.btnp {
  text-decoration: unset !important;
}

.navButtons:hover {
  color: var(--color5);
}

.news_avant_apres a:hover span,
.news_avant_apres a:focus span {
  color: var(--color2);
  text-decoration: none
}

.news_avant_apres b {
  color: var(--color5);
  transition: .3s;
  font-weight: 100 !important;
}

.news_avant_apres b:hover {
  margin: -5px;
  transition: .3s;
}

.propor .propor-cont .imagecont:hover .masque {
  opacity: 0.6;
  transition: 0.3s;
}

.propor .propor-cont .imagecont .masque {

  /*! background-color: var(--color1); */
  background-image: url(../images/icon.png);
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: 0.3s;
}

.propor .propor-cont .imagecont:hover .imagefond {
  -webkit-transform: scale(1.15);
  -moz-transform: scale(1.15);
  -o-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
}

/* GALERIE MULTIPLE */
.gallery .nav {
  margin: 10px 0px 63px;
  padding-right: 10px
}




.gallery .nav li a:hover,
.gallery .nav li.active a {
  background: var(--color3);
  color: var(--color0)
}

.gallery .nav li.active a {
  cursor: default
}

.gallery .tab-content {
  padding-top: 10px;
  padding-bottom: 10px;
}

.gallery .tab-content h2 {
  padding-left: 15px;
  margin-bottom: 20px
}

/********** style **********/

/******* sub-menu ************/


.navbar-nav ul.sub-menu:before {
  content: '';
  position: absolute;
  top: -32px;
  left: 50%;
  margin-left: -16px;
  border-style: solid;
  border-width: 16px;
  border-color: transparent transparent var(--color5) transparent;
  /*! display: none; */
}

.hasSubMenu>a {
  background-image: url(../images/subMenuArrow.png);
  background-repeat: no-repeat;
  background-position: 100% 28%;
}

.navbar-nav ul.sub-menu>li {
  display: block;
  margin: 0;
  /* width: max-content; */
  list-style: none;
}

.navbar-nav ul.sub-menu>li>a {
  padding: 15px 14px;
  font-size: 16px;
  color: var(--color0);
  text-transform: unset;
  /* width: 100%; */
  text-align: left;
  display: block;
  font-family: var(--font_family_1);
  text-transform: uppercase;
  text-decoration: none;
  font-weight: normal;
}

.navbar-nav ul.sub-menu>li.active>a,
.navbar-nav ul.sub-menu>li>a:focus,
.navbar-nav ul.sub-menu>li>a:hover {
  color: var(--color0);
  background-color: #D0B39F;
  text-decoration: none;
}

.sub-menu {
  /*! display: none !important; */
}

/************** btns ********************/
.btn {
  position: relative;
  text-align: center;
  border: none;
  display: inline-block;
  border-radius: 0;
  padding: 14px 30px 14px 30px;
  text-decoration: unset;
  transition: .3s;
}

.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn:hover,
.btn:focus,
.btn:active,
.btn.active,
.open .dropdown-toggle.btn {
  outline: thin dotted;
  outline: 0 auto -webkit-focus-ring-color;
  outline-offset: -2px;
  outline: none;
}

.btn-primary {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 1px;
  background-color: var(--color5);
  border: 1px solid var(--color5);
  color: var(--color0) !important;
  min-width: 240px;
  text-decoration: unset;
  text-transform: unset;
  font-weight: normal;
  font-family: var(--font_family_1);
}

.btn-lg {
  padding: 15px 26px;
  font-size: 22px;
  font-size: 2.2rem;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
  background-color: transparent;
}

.actu-show-more a:hover {
  background: var(--color3);
}

.btn.btn-primary.carteSeeMore {
  margin-top: 0;
}

.btn.btn-primary.carteSeeMore:hover {
  border-color: var(--color4);
  background: var(--color3);
}

.btn-fixed {
  width: 205px;
}

.news .btn-fixed,
.view .btn-fixed {
  width: auto;
  padding: 14px 40px 10px 40px;
  float: right;
}

.btn-link {
  color: var(--color3);
  display: inline-block;
}

.btn-link:hover,
.btn-link:focus,
.btn-link:active,
.btn-link.active {
  color: var(--color3);
  text-decoration: underline;
}

.form-group .btn-primary {
  background-color: var(--color2);
  border: 1px solid var(--color2);
  color: var(--color0);
}

.voirtous {
  background-color: var(--color2);
  border: 1px solid var(--color2);
  color: var(--color0);
  text-align: center;
  width: 100%;
  padding: 14px 20px 10px 20px;
}

.voirtous:hover,
.voirtous:focus,
.voirtous:active,
.voirtous.active {
  background-color: transparent;
  border: 1px solid var(--color4);
  color: var(--color4);
}

/********** icons *****************/
.icon {
  padding: 0 0 0 38px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 0 50%;
}

.icon01 {
  background-image: url(../images/icon01.png);
}

.icon02 {
  background-image: url(../images/icon02.png);
}

.icon03 {
  background-image: url(../images/icon03.png);
}

.icon04 {
  background-image: url(../images/icon04.png);
}

/*************** VISUELS ***************/
/*************** devis ***************/
.devis {
  padding: 14px 50px;
  float: right;
  margin-top: 20px;
}

/********** tel **************/
.tel-tracker {
  width: 15%;
  position: relative;
  display: flex;
  justify-content: right;
}


.tel:hover {
  background: var(--color5);
}

.tel {
  width: 70%;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  color: var(--color0);
  padding: 11px 20px;
  background: var(--color4);
  font-family: var(--font_family_1);
  font-size: 18px;
  margin: 0;
}

.tel01 {
  padding-right: 62px;
}

.tel p {
  color: var(--color1);
  font-size: 16px;
  margin-bottom: 0;
  line-height: 1;
}

.tel strong {
  font-weight: 100;
}

.tel p img {
  margin: 0;
}

/************* accroche ****************/
.accroche {
  position: relative;
  padding: 10% 80px;
  text-align: center;
  width: 100%;
}

.accroche p {
  color: var(--color0);
  font-size: 27px;
  margin-bottom: 0;
}

.accroche strong {
  color: var(--color0);
  font-size: 46px;
  display: block;
  margin: 20px 0;
}

/********* social ***********/
.social {
  position: relative;
  margin: 14px 0 0 0 !important;

  text-align: center;
  display: block;
  float: left;
}

.social01 {
  position: relative;
  margin: 12px 0 3px 97px !important;
  width: auto;
  text-align: center;
  display: inline-block;
  float: none;
}

.social02 {
  margin: 9px 0 0 0 !important;
  float: right;
}

.social p,
.social p a {
  font-size: 13px;
  color: var(--color1);
  margin-bottom: 0;
  padding-top: 4px;
}

.social .block {
  display: inline-block;
  float: none;
  margin-left: 0;
}

.addthis_toolbox {
  margin: 0 !important;
  float: left;
  text-align: center;
  width: 100%;
}

.addthis_toolbox a {
  overflow: hidden;
  display: inline-block;
  height: 50px !important;
  width: 50px !important;
  line-height: 32px !important;
  margin: 0 3px !important;
  border-radius: 0;
}

.social02 .addthis_toolbox a {
  width: 33px !important;
  margin: 0 3px 0 20px !important;
}

.addthis_toolbox a svg {
  display: none;
}

.addthis_toolbox.addthis_32x32_style span {
  line-height: 32px;
  background: none !important;
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook {
  background: transparent url(../images/f.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter {
  background: transparent url(../images/t.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
  background: transparent url(../images/g.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
  background: transparent url(../images/f_h.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
  background: transparent url(../images/t_h.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
  background: transparent url(../images/g_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook {
  background: transparent url(../images/f2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter {
  background: transparent url(../images/t2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
  background: transparent url(../images/g2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
  background: transparent url(../images/f2_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
  background: transparent url(../images/t2_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
  background: transparent url(../images/g2_h.png)no-repeat 50% 50%;
}

/*************** banners *************/

.body-page-1 .banner {
  width: 100%;
  position: relative;
  background-position: 50% 0;
  background-repeat: no-repeat;
  overflow: hidden;
  margin: 0 auto;
  height: 100%;
}


.banner img {
  width: 100%;
  margin-left: 0;
}

.banner01 {
  background-image: url(../images/banner01.jpg);
}

.banner02 {
  background-image: url(../images/banner02.jpg);
}

.banner03 {
  background-image: url(../images/banner03.jpg);
}

.figure {
  width: 100%;
  margin-bottom: 40px;
}

.figure figcaption {
  color: var(--color3);
  margin-top: 8px;
}

.figure.fullwidth img {
  width: 100%;
  height: auto;
}

/**********************************************************************/
/***************** slider ***********************/




.box {
  position: absolute;
  display: none;
}

.swiper-box {
  right: 34px;
  bottom: 0;
  width: 13vw;
  height: 36vh;
  overflow: hidden;
}

.box .swiper-slide img {
  width: 100%;
}

.boxSwiper5 {
  height: 100%;
}

.box .boxSwiper5 .swiper-slide img {
  width: 100%;
  height: 100%;
}

.boxSwiper5 .swiper-slide {}

.swiper-box2 {
  left: 50px;
  bottom: 0px;
  width: 13vw;
  height: 22vh;
  overflow: hidden;
}

.swiper-box3 {
  left: 23%;
  bottom: 0;
  width: 13vw;
  height: 18vh;
  overflow: hidden;
}

.swiper-box4 {
  right: -8%;
  top: 13%;
  width: 11vw;
  height: 19vh;
  overflow: hidden;
}

.swiper-box5 {
  /*! right: -8%; */
  top: 0;
  width: 100%;
  height: 100%;
  z-index: ;
  display: none;
}


.shape {
  position: absolute;
  display: none;
}

.shape img {
  width: 100%;
  height: 100%;
}

.shape.shape-1 {
  width: 234px;
  height: 178px;
  top: 68%;
  left: -114px;
  z-index: 1;
  transform: rotate(-51deg);
  display: none;
}

.effet-curseur {
  transition: background .3s, border .3s, border-radius .3s, box-shadow .3s, transform var(--e-transform-transition-duration, .4s);
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 100%;
}

.shape.shape-2 {
  width: 234px;
  height: 178px;
  bottom: 45px;
  right: 2px;
  z-index: 1;
  transform: rotate(-10deg);
  display: none;
}


.shape.shape-3 {
  width: 150px;
  height: 215px;
  top: 12%;
  left: -14%;
  z-index: -1;
  transform: rotate(0deg);
  display: none;
}

.engegements-content .shape.shape-3 {
  width: 150px;
  height: 215px;
  top: -35%;
  right: 11%;
  z-index: 1;
  transform: rotate(58deg) scale(-1, 1);
  left: auto;
  display: block;
}

.shape.shape-4 {
  width: 154px;
  height: 184px;
  bottom: 20%;
  right: -15%;
  z-index: 0;
  transform: rotate(-10deg);
  display: none;
}

.shape.shape-5 {
  width: 216px;
  height: 220px;
  bottom: -7%;
  right: 0%;
  z-index: 1;
  /*! transform: rotate(-42deg); */
  position: absolute;
  overflow: hidden;
  display: none;
}

.shape.shape-6 {
  width: 300px;
  height: 300px;
  bottom: 0%;
  left: -98px;
  z-index: 1;
  transform: rotate(34deg);
}

.shape.shape-tel {
  width: 234px;
  height: 178px;
  top: -72px;
  left: 100px;
  z-index: 0;
  transform: rotate(-10deg);
  transition: 0.3s;
  display: none;
}

.fixed .shape.shape-tel {
  width: 174px;
  height: 111px;
  top: -37px;
  left: 100px;
  z-index: 0;
  transform: rotate(-10deg);
  transition: 0.3s;
  display: none;
}

.slide-parallax-video {
  position: relative;
  flex: 306 1 2%;
  top: 0;
  left: 0;
  padding: 30px 0px 0px 28px;
}

.video-1 .video-accueil {
  background: url(../images/vid1.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: ;
}

.video-2 .video-accueil {
  background: url(../images/vid-4_198.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.video-3 .video-accueil {
  background: url(../images/image-vid1.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.video-accueil {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.slide-parallax-video:hover .video-accueil:before {
  opacity: 1
}

.video-accueil:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  /*! opacity: 0; */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity .35s ease-in-out;
  transition: opacity .35s ease-in-out;
  /* background: rgb(0 0 0 / 8%); */
  z-index: 1;
}

.video-accueil video {
  height: 100%;
  width: 100%;
  object-fit: cover;
  filter: none !important;
}

.bannier:after,
.reserv-container:after,
#footer:after,
.actuAndNewsletter-container:after,
.theReservationText:after,
.salon-block:after,
.NosPlanDAccesBg:after,
.bloc-GMB:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  /*! background: url('../images/banner-waves.svg') no-repeat center / cover; */
  z-index: -1;
  /*! opacity: 0.1; */
}

.sliderBg {
  position: relative;
  width: 100%;
  height: calc(100vh - 9vh);
}

.slide-parallax {
  position: absolute;
  width: 45%;
  height: 85vh;
  right: 8%;
  top: 13%;
  border: 4px solid var(--color0);
}

.slide-parallax img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.slogan {
  position: absolute;
  width: 100%;
  top: 40%;
  left: 0;
  height: auto;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.body-page-1 .slogan {
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  /*! margin-left: 28px; */
}

.titre {
  font-size: 60px;
  line-height: .9375em;
  letter-spacing: .2em;
  font-family: var(--font_family_1);
  color: var(--color0);
  text-align: left;
  font-weight: 700;
  text-align: center;
}

.slogan :after {
  display: none;
}

.slogan h1 {
  font-size: 50px;
  text-align: left;
  margin: unset !important;
  line-height: 1;
}

.body-page-1 .slogan h1 {
  text-align: center;
}




.cta.hidden-sm.hidden-xs {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 30px 0;
}

.bouton-principal:hover {
  color: var(--color0);
  text-decoration: none;
  background: var(--color4);
  border-color: var(--color4);
}

.head-btn>a,
.head-btn>p {
  position: relative;
  background: transparent;
  font-size: 11px;
  line-height: 2em;
  font-weight: 500;
  letter-spacing: .3em;
  text-transform: uppercase;
  cursor: pointer;
  padding: 9px 20px;
  color: var(--color0);
  text-decoration: none;
  width: auto;
  text-align: center;
  transition: .3s;
  border: 1px solid rgba(255, 255, 255, .6);
  font-family: var(--font_family_1);

}

/**************Hover btn AT*************************/
a:hover .btn-horizontal-deco:before {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  transition-delay: 0s;
}

a:hover .btn-horizontal-deco:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-delay: .12s;
  transition-delay: .12s;
}

a:hover .btn-verticale-deco:before {
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-delay: .36s;
  transition-delay: .36s;
}

a:hover .btn-verticale-deco:after {
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btn-horizontal-deco:before {
  content: '';
  position: absolute;
  left: -1px;
  top: -1px;
  display: block;
  width: calc(100% + 2px);
  height: 1px;
  background-color: var(--color3);
  -webkit-transition: .36s ease-out, background-color 1ms;
  transition: .36s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transform-origin: left;
}

.btn-horizontal-deco:after {
  content: '';
  position: absolute;
  left: -1px;
  bottom: -1px;
  display: block;
  width: calc(100% + 2px);
  height: 1px;
  background-color: var(--color3);
  -webkit-transition: .36s ease-out, background-color 1ms;
  transition: .36s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transform-origin: left;
}

.btn-primary .btn-horizontal-deco:after {
  background-color: var(--color4);
}

.btn-primary .btn-horizontal-deco:before {
  background-color: var(--color4);
}

.btn-primary .btn-verticale-deco:after {
  background-color: var(--color4);
}

.btn-primary .btn-verticale-deco:before {
  background-color: var(--color4);
}


.btn-verticale-deco:before {
  content: '';
  position: absolute;
  top: 0;
  right: -1px;
  display: block;
  height: 100%;
  width: 1px;
  background-color: var(--color3);
  -webkit-transition: .12s ease-out, background-color 1ms;
  transition: .12s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  transform-origin: top;
}

.btn-verticale-deco:after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  display: block;
  height: 100%;
  width: 1px;
  background-color: var(--color3);
  -webkit-transition: .12s ease-out, background-color 1ms;
  transition: .12s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  transform-origin: top;
}

/***************************************************/
.head-btn .tel {}

.head-btn {
  position: relative;
  width: 100%;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}


.nav-liste {
  position: relative;
  width: 60%;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}



.nav-logo {
  width: 20%;
  position: relative;
  display: flex;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}



.bxslider {
  position: relative;
}

div#bxControls {
  height: 67px;
  position: absolute;
  width: 22%;
  left: 0;
  bottom: -67px;
}

.slide {
  position: relative;
}

.slide img {
  position: relative;
}

.slide a {
  display: inline-block;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  border: 3px solid transparent;
}

.slide a img {
  opacity: 0;
  width: 100%;
}

.slide a:focus,
.slide a:hover {
  border: 3px solid var(--color0);
}

.slide a:focus .img_thumbnail_item_mask,
.slide a:hover .img_thumbnail_item_mask {
  opacity: 1;
}

/************ main **************/
.main_bg {
  padding-top: 0;
  position: relative;
  z-index: 1;
  background-color: var(--color0);
  padding: 0;
}

.flex-head-img .propor {
  height: 100%;
}

.flex-head-img {
  position: relative;
  width: 40%;
  height: 100%;
}

.flex-head-txt::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: var(--color0);
}

.flex-head-txt::-webkit-scrollbar {
  width: 4px;
  background-color: var(--color0);
}

.flex-head-txt::-webkit-scrollbar-thumb {
  background-color: var(--color5);
  border: 2px solid var(--color5);
}

.flex-head-txt {
  position: relative;
  width: 50%;
  padding: 0px 0px 0px 3%;
  margin-right: 90px;
  height: auto;
}

.image-secondaire img {
  object-fit: ;
  width: 70%;
  height: auto;
}

.image-secondaire {
  object-fit: ;
  width: 65%;
  height: 55vh;
  position: absolute;
  background: url(../images/image-2.jpeg);
  background-size: cover;
  background-position: center top;
  margin: auto;
  margin-top: 7vh;
  /*! left: 50%; */
  /*! transform: translate(-50%); */
  right: 0;
}


.signature-img {
  width: 65%;
  height: fit-content;
  position: absolute;
  margin: auto;
  bottom: -22vh;
  top: auto;
  margin-top: ;
  left: 63%;
  transform: translate(-50%);
  opacity: .5;
}

.signature-img img {
  width: 100%;
}

.presentation .col-lg-12 {

  /*! width: fit-content; */
  /*! right: 20%; */
}

.head-img {
  /*! border: 3px solid var(--color0); */
}

.head-img.img-2 {
  width: 30%;
  height: 60%;
  position: relative;
  right: -56%;
  top: -34%;
}

:root {
  --color0: #fff;
  --color1: #E4E2DD;
  --color2: #D0CCC5;
  --color3: #BCB3A3;
  --color4: #807B6D;
  --color5: #B7937B;
  --color6: #000000;
  /*font titre*/
  --font_family_1: 'Aire Bold Std', sans-serif;
  /*font sous-titre*/
  --font_family_2: 'Visby Regular', sans-serif;
  /*font texte*/
  --font_family_3: 'Visby Regular', sans-serif;
  --taille_font: 16px;
  --calc-x: calc(-1 * 50px);
  --border-radius: 5px;
}

@font-face {
  font-family: "Aire Bold Std";
  src: url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.eot");
  src: url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/2a27f7d4b49878738acf8e05519ae0cc.svg#Aire Bold Std")format("svg");
}

@font-face {
  font-family: "Visby Regular";
  src: url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.eot");
  src: url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/e3d4d88f7ba46cfbdfb4045368826129.svg#Visby Regular")format("svg");
}


.container-fluid.footer2_bg .row {
  width: 100%;
  padding: 1em 3% !important;
}

/********************Section number********************/
.fact-area {
  /*! background: var(--color0); */
  position: relative;
  padding: 17em 10% 3em;
  /*! border: 1px solid var(--color3); */
  /*! background: url(../images/presentation.jpeg); */
  background-position-x: 0%;
  background-position-y: 0%;
  background-repeat: repeat;
  background-size: auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  /* background: var(--color3); */
  border-radius: 0px 0px 10px 10px;
}

.fact-card:before {
  content: "";
  position: absolute;
  right: -15px;
  top: 0;
  bottom: 0;
  border-left: 2px dotted var(--color1);
  top: 0;
  bottom: 0;
  zoom: 1;
  filter: alpha(opacity=30);
  -webkit-opacity: 0.3;
  -moz-opacity: 0.3;
  opacity: 0.3;
}

.item {
  text-align: center;
  display: inline-flex;
}

.fact-card {
  /*! padding: 30px; */
  /*! background: linear-gradient(20deg, var(--nuanceColor1),var(--color1) ); */
  /*! border-radius: var(--border-radius); */
  transition: all 0.3s ease 0s;
  /*! box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; */
  margin: 0;
  text-align: center;
  padding: 1em 0px;
  position: relative;
  z-index: 2;
}

.degrade {
  background: linear-gradient(20deg, var(--color1), var(--nuanceColor1)) !important;
}

.fact-card h2 {
  color: var(--color1);
  font-family: var(--font_family_1);
  position: relative;
  letter-spacing: 0;
  font-size: 85px;
  line-height: 1em;
  font-weight: 400;
  padding: 0 0 5px 95px;
}

.fact-card h2 span {
  /*! color: var(--color1); */
  display: ;
}

.fact-card:hover {
  animation: 1s ease 0s 1 normal none running bounce;
  transition: all 0.3s ease 0s;
  /*! box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; */
}

.section-title h2 {
  color: var(--color0);
  margin-top: 8vh;
}

.fact-card p {

  font-size: 25px;

  top: 50%;

  transform: translatey(-50%);

  left: 144px;

  color: var(--color6);

  font-family: var(--font_family_1);

  line-height: 2em;

  letter-spacing: 1px;

  position: absolute;

  display: flex;
  /*! text-transform: uppercase; */

  justify-content: flex-start;

  align-items: center;

  margin-bottom: 0;

  font-weight: normal;
}

.fact-card.lastnk:before {
  opacity: 0 !important;
}

.nkcenter {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.fact-card .i {
  color: var(--color0);
  /*! font-size: 36px; */
  /*! font-size: 64px; */
  /*! margin-top: 8px; */
  margin-right: 20px;
  margin-inline-end: 20px;
  width: auto;
  height: 64px;
  filter: invert(15%) sepia(99%) saturate(1112%) hue-rotate(202deg) brightness(91%) contrast(98%);
}

.section-numbers {
  position: relative;
}

.section-numbers .container {
  position: relative;
  z-index: 1;
  padding-bottom: 9vh;
  max-width: inherit;
  width: 100%;
  padding: 0em 14% 0em;
  background: var(--color0);
}

.section-title .titre-secondaire {
  color: white;
}

.section-numbers::after {
  /* content: ""; */
  width: 100%;
  height: 100px;
  background-color: var(--color0);
  position: absolute;
  left: 0px;
  bottom: 0px;
  z-index: 0;
}

.section-numbers::before {
  /* content: ""; */
  width: 100%;
  height: 100%;

  /*! background: var(--color3); */
}

.fleur-gauche {
  position: absolute;
  left: -160px;
  top: 0;
  z-index: -1;
  height: 100%;
  width: inherit;
  text-align: left;
  display: none;
}

.fleur-gauche img {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  opacity: .5;
}

.fleur-droite {
  position: absolute;
  right: -160px;
  top: 0;
  z-index: -1;
  height: 100%;
  width: inherit;
  text-align: right;
}

.fleur-droite img {
  height: 100%;
  border: none;
  border-radius: 0;
  box-shadow: none;
  opacity: .5;
  display: none;
}

/******************************************************/


/* 
* Atouts
*/
.atouts {
  display: block;
  padding: 0;
  width: 100%;
  position: relative;
  background: var(--color1);
}

.atouts:before {
  content: '';
  position: absolute;
  /*! background: url(../images/bg-presezntation.png); */
  background-repeat: repeat;
  background-size: auto;
  background-repeat: repeat;
  background-size: auto;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: .5;
}

.atouts .atouts-cont {
  padding: 6rem 5% 7rem;
  position: relative;
  color: var(--color3);
  /*! background: var(--color4); */
}

.body-contact .atouts .atouts-cont {
  padding: 6rem 0% 7rem;
}

.atouts .atouts-cont h2.h1,
.atouts .atouts-cont h2.h1 span {
  /* color: var(--color0); */
}

.atouts .atouts-cont h2.h1:before {
  /* background: var(--color0); */
}

.atouts-cards {
  display: flex;
  flex-direction: row;
  position: relative;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-evenly;
  padding: 30px 0 30px;
}

.atouts-card {
  position: relative;
  width: 25%;
  padding: 1em 2em;
  transition: all .2s linear;
  /*! box-shadow: 0px 10px 60px 0px rgba(0, 0, 0, 0.07); */
  overflow: hidden;
  /*! background: var(--color0); */
}

.atouts-cards-2 {
  display: flex;
  flex-direction: row;
  position: relative;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-evenly;
  /*! padding: 0px 0 30px; */
}

.atouts-card:hover,
.atouts-card:hover h3 {
  /* color: var(--color0); */
}

.atouts-card:before {
  /*! content: ''; */
  position: absolute;
  height: 100%;
  width: 100%;
  /* background: var(--color4); */
  transition: all .3s linear;
  all 3s animation-timing-function: linear;
  z-index: -1;
  inset: 0;
  /* transform: translate3d(0px, 101%, 0px); */
  /* transform: scale(0); */
  /*! border-radius: 20px; */
  /*! transform: translate(0px, 101%); */
}

.atouts-card:hover:before {
  bottom: 100%;
  transition: all .3s ease;
}




.atouts-card:hover:before {
  transform: translate(0, 0);
}

.atouts-card:hover {
  transition: all .3s ease;
}

.atouts-card:last-child {
  border: none;
  /*! border-bottom: 1px solid rgba(236, 236, 248, 0.15); */
}

.card-head {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.card-head p {
  font-size: 17px;
}

.card-head .a-head {
  width: 100%;
  height: 100%;
  position: absolute;
}

.card-head .a-head:before {
  content: '';
  position: absolute;
  height: 180px;
  width: 180px;
  background: red;
  top: -190px;
  left: -80px;
  background: linear-gradient(90deg, var(--insur-primary, #0ce0ff) 0%, var(--insur-base, #015fc9) 100%);
  border-radius: 50%;
  z-index: -1;
}

.card-head .a-head span {
  position: absolute;
  right: 0;
  top: -100px;
  font-size: 50px;
  font-family: var(--font_family_2);
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 1px #e0e4e8;
}

.atouts-card:hover img {
  transform: rotateY(360deg);
}

.atouts-card:before {
  content: '';
  width: 100%;
  height: 154px;
  position: absolute;
  top: -14px;
  left: 0;
  /* background-color: #000; */
  /* background: url(../images/arche.png); */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 9;
}

.atouts-card img {
  /*! filter: brightness(0); */
  /* height: 105px; */
  /* padding: 20px; */
  filter: invert(63%) sepia(29%) saturate(361%) hue-rotate(341deg) brightness(92%) contrast(90%);
  transition: all .9s ease-in-out;
  position: relative;
  width: 100%;
  height: auto;
}

.img-forme {
  position: relative;
  background: url(../images/arche-1.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  height: 140px;
  width: 95px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
}

.card-head h3 {
  color: var(--color6);
  font-size: 18px;
  font-family: var(--font_family_2);
  letter-spacing: 1px;
  margin-top: 25px;
}

/* ************************************STYLE-FD-THEME******************************* */

/********************** Realisation *******************/

.bloc-contenu.grey.nos-realisations {
  padding: 9em 0% 0em;
  position: relative;
  background: var(--color1);
  z-index: 0;
}

.realisations-bloc {
  position: relative;
}

.nos-realisations .realisations-bloc .shape.shape-3 {
  width: 150px;
  height: 215px;
  top: -5%;
  right: 6%;
  z-index: 1;
  transform: rotate(58deg) scale(-1, 1);
  left: auto;
  display: block;
}

.nos-realisations .row.recup-photo {
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-areas:
    "item5 item5 item3 item2" "item5 item5 item1 item4";
  grid-template-rows: 443px 443px;
  grid-gap: 6px;
  position: relative;
  z-index: 5;
  width: 100%;
}

.nos-realisations .row.recup-photo:before {
  content: unset;
}

.nos-realisations .recup-photo .item-gallery {
  width: 100%;
  height: 100%;
  position: relative;
}

.nos-realisations .recup-photo .item-gallery img {
  width: 100%;
  he;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s ease;
  border-radius: var(--border-radius);
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:hover img {
  transform: scale(1.1);
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item {
  width: 100% !important;
  height: 100%;
  padding: 0;
  border-radius: var(--border-radius);
  );
  overflow: hidden;
}


.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:first-child {
  grid-area: item1
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:last-child,
.realisations .row.recup-photos.gallery .col-md-3:nth-child(5) {
  grid-area: item5;
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(2) {
  grid-area: item2
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(3) {
  grid-area: item3
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(4) {
  grid-area: item4;
}

.nos-realisations .col-md-3.col-sm-6.col-xs-12.item:nth-child(6) {
  grid-area: item6
}

.realisations .recup-photos .propor {
  width: 100%;
  position: relative;
  margin-bottom: 10px;
  height: 100%;
}

.nos-realisations .col-md-3 .col-md-3 {
  width: 100%;
  margin: 0;
  padding: 0
}

/******************************************************/


/* CORPS DE LA PAGE *******************************************************/

.fluid-slider {
  background: var(--color4);
}

.nopadding {
  padding: 0;
}

.fluid-contenu {
  position: relative;
  z-index: 8000;
}

.fluid-contenu .corps {
  padding: 20px 0px 40px 0px;
}

.sidebar {
  padding-top: 30px;
  text-align: right;
}

.sidebar .photoa {
  background: url(../images/photo-accueil.jpg) right top no-repeat;
  height: 187px;
}

.view .item {
  padding: 15px 0 30px 0;
  margin: 0;
  float: left;
  width: 100%;
}

.news .item {
  padding: 0px 0 30px;
  margin: 0;
  border-bottom: 1px solid var(--color0);
  margin-bottom: 40px;
}

.view .item {
  position: relative;
}

.body-news-list .view .item:before {
  content: '';
  width: 110vw;
  left: 50%;
  top: 0;
  margin-left: -80%;
  height: 100%;
  background-color: transparent;
  display: block;
  position: absolute;
  display: none;
}

.body-news-list .view .item:hover:before {
  background-color: var(--color0);
}

.view .actu:first-child .item {
  border-bottom: 1px solid var(--color0);
  padding: 15px 0 30px 0;
}

.view .actu:last-child .item {
  border-bottom: 0 solid var(--color0);
}

.view .item a.voirtous {
  margin: 20px 0;
}

.view .item a img {
  width: 100%;
  position: relative;
  z-index: 1;
  border-radius: 6px;
  background-size: cover;
  margin-bottom: 10px;
}

.imagecont {
  display: block;
  background-color: var(--color0);
  background-image: url('../images/bx_loader.gif');
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border-radius: 6px;
}

.view .item .h {
  text-transform: uppercase;
  margin: 0 0 11px 0;
  font-size: 20px;
  color: var(--color4);
  font-weight: 900;
}

.date-article,
.news .item .date_post,
.view .item .date_post {
  font-size: 15px;
  color: var(--color2);
  display: inline-block;
  margin: 10px 0;
  font-family: var(--font_family_2);
}

.view .item .propor {
  width: 100%;
  position: relative
}

.view .item .propor:after {
  padding-top: 75%;
  display: block;
  content: '';
}

.view .item .propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.view .item .propor .imagecont {
  height: 100%;
  display: block;
  border: 3px solid var(--color3);
  width: 100%;
  overflow: hidden;
  position: relative;
}

.view .item .propor .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat;
}

.view .voirtous a {
  text-decoration: underline;
}

.view .voirtous a:hover {
  text-decoration: none;
}

.view .articleContent {
  color: var(--color4);
  font-size: 14px;
  margin: 0 0 10px 0;
}

.view .imagefond {
  display: inline-block;
}

.paddingCont {
  border: none;
  padding: 30px 0;
}

/** BLOCK NEWSLETTER **/
.NewsletterBg {
  padding: 0 20px 0px;
  background-color: var(--color2);
  text-align: left;
  margin-top: 0;
}

.NewsletterBg span {
  color: red;
  font-size: 17px;
  font-family: var(--font_family_2);
}

.NewsletterBg .h {
  color: var(--color0);
  font-size: 23px;
  margin: 0 0 30px 0;
}

.NewsletterBg p {
  font-size: 23px;
  color: var(--color6);
  /*! margin: 0 0 1px 0; */
  font-family: var(--font_family_2);
}

.block #newsletter_form {
  display: table;
  width: 100%;
  margin: 0 auto;
}

.footer-coordonnees .scrollbars {
  margin: 0;
}

.block #newsletter_form label {
  font-weight: normal;
  display: table-cell;
  display: none;
}

.block #newsletter_form input {
  border: none;
  border-radius: 0;
  display: table-cell;
  vertical-align: middle;
}

.block #newsletter_form input[type="text"] {
  background-color: transparent;
  line-height: 1;
  line-height: 32px \9;
  padding: 0px 12px;
  width: 70%;
  margin: 0 0 0 0;
  font-size: 16px;
  color: var(--color0);
  border: 1px solid var(--color0);
  height: 43px;
}

.block #newsletter_form input[type="submit"] {
  background: var(--color0);
  border: 2px solid var(--color0);
  color: var(--color0);
  padding: 9px 13px 8px;
  font-weight: 900;
}

.block #newsletter_form input[type="submit"]:hover {
  border: 2px solid var(--color0);
  color: var(--color0);
  background: var(--color2);
}

.blockCenter.gallery-iflex {
  margin: 0 -15px;
}

/* SUDO SLIDER *************************************************************/
.cont-slider {
  position: relative;
}

.sudo-slider,
.sudo-slider img {
  width: 100%
}

a.sudolien.precedent,
a.sudolien.suivant {
  z-index: 9000;
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30px;
  height: 32px;
  margin-top: -15px
}

a.sudolien.precedent {
  left: 0px;
  background: url(../images/g.png)
}

a.sudolien.suivant {
  right: 0px;
  background: url(../images/d.png)
}

a.sudolien.precedent:hover,
a.sudolien.suivant:hover {
  opacity: 0.8
}

.cont-slider .controls {
  z-index: 9000;
  display: inline-block;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  text-align: center
}

.cont-slider .controls ol {
  margin: 0;
  padding: 0;
  list-style-type: none
}

.cont-slider .controls ol li {
  display: inline-block
}

.cont-slider .controls ol li a {
  display: block;
  width: 19px;
  height: 19px;
  background: url(../images/miette.png) center center no-repeat;
  margin: 0 2px
}

.cont-slider .controls ol li.current a {
  background: url(../images/miette-h.png) center center no-repeat
}

.cont-slider .controls ol li a span {
  display: none
}

.caption {
  position: absolute;
  top: 15px;
  left: 15px;
  font-size: 20px;
  color: var(--color0);
  opacity: 0
}

.caption.active {
  -webkit-animation: caption 2s ease-in-out;
  -webkit-animation-fill-mode: forwards;
  -webkit-animation-delay: 0s;
  -moz-animation: caption 2s ease-in-out;
  -moz-animation-fill-mode: forwards;
  -moz-animation-delay: 0s;
  -o-animation: caption 2s ease-in-out;
  -o-animation-fill-mode: forwards;
  -o-animation-delay: 0s;
  animation: caption 2s ease-in-out;
  animation-fill-mode: forwards;
  animation-delay: 0s;
}

@-webkit-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@-moz-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@-o-keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

@keyframes caption {
  0% {
    opacity: 0;
    transform: translateX(40px)
  }

  100% {
    opacity: 1;
    transform: translateX(0px)
  }
}

.news .item .h {
  text-transform: uppercase;
  margin: 15px 0;
  font-size: 19px;
  color: var(--color3);
  font-weight: 900;
}

.news .item a.plus {
  width: 100%;
}

.news .actuAadding {
  padding: 20px;
  background-color: var(--color0);
}

.news .item .propor {
  width: 100%;
  position: relative
}

.news .item .propor:after {
  padding-top: 75%;
  display: block;
  content: '';
}

.news .item .propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.news .item .propor .imagecont {
  height: 100%;
  display: block;
  border: 3px solid var(--color3);
  width: 100%;
  overflow: hidden;
  position: relative
}

.news .item .propor .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat
}

.news .voirtous a {
  text-decoration: underline
}

.news .voirtous a:hover {
  text-decoration: none
}

.news .articleContent {
  color: var(--color4);
  font-size: 14px;
  margin: 0 0 30px 0;
  height: auto;
}

.news .imagefond {
  display: inline-block;
  width: 100%;
  background-size: cover;
  border-radius: 6px;
}

.news a img {
  width: 100%;
  position: relative;
  z-index: 1;
}

.body-formule-list .main_bg {
  background-image: url(../images/encartBg.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
  padding: 0px 0 10px;
  position: relative;
  z-index: 2;
}

.body-formule-list .formuleBg {
  display: none;
}

.formuleBg {
  background-image: url(../images/encartBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  padding: 80px 0 50px;
  height: 500px;
  position: relative;
  z-index: 2;
}

.formule {
  width: 100%;
  padding: 46px 30px 20px;
  background-image: url(../images/formule.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
  text-align: center;
  margin-bottom: 30px;
  -webkit-box-shadow: 6px 0 24px var(--color4);
  -moz-box-shadow: 6px 0 24px var(--color4);
  -ms-box-shadow: 6px 0 24px var(--color4);
  -o-box-shadow: 6px 0 24px var(--color4);
  box-shadow: 6px 0 24px var(--color4);
}

.formuleBg .container:after,
.formuleBg .container:before {
  content: '';
  background-repeat: no-repeat;
  background-position: 50% 0;
  position: absolute;
  top: -90px;
  z-index: -1;
}

.formuleBg .container:before {
  background-image: url(../images/formuleBgBefore.png);
  width: 277px;
  height: 499px;
  left: -270px;
  top: -30px;
}

.formuleBg .container:after {
  background-image: url(../images/formuleBgAfter.png);
  width: 302px;
  height: 585px;
  right: -240px;
}

.formule .h {
  color: var(--color3);
  font-size: 26px;
  margin-bottom: 27px;
  font-weight: 100;
  -webkit-text-shadow: 4px 2px 4px var(--color4);
  -moz-text-shadow: 4px 2px 4px var(--color4);
  -ms-text-shadow: 4px 2px 4px var(--color4);
  -o-text-shadow: 4px 2px 4px var(--color4);
  text-shadow: 4px 2px 4px var(--color4);
}

.formule .prix {
  color: var(--color0);
  font-size: 26px;
  font-weight: 100;
  -webkit-text-shadow: 4px 2px 4px var(--color4);
  -moz-text-shadow: 4px 2px 4px var(--color4);
  -ms-text-shadow: 4px 2px 4px var(--color4);
  -o-text-shadow: 4px 2px 4px var(--color4);
  text-shadow: 4px 2px 4px var(--color4);
}

.formule ul {
  padding: 0 0 20px 0px;
  margin: 0;
  line-height: 1.2;
  margin-bottom: 20px;
  min-height: 182px;
  border-bottom: 1px solid var(--color1);
}

.formule li,
.formule p {
  color: var(--color0);
  font-size: 18px;
}

.formule li.item {
  padding: 15px 0;
}

.encart p {
  margin-bottom: 0;
}

.formule li {
  list-style: none;
}

.encart p span {
  font-size: 22px;
  margin: 30px auto;
  display: inline-block;
}

.formule02:after {
  content: '';
  position: absolute;
  top: -21px;
  right: 10px;
  background-image: url(../images/m.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  width: 54px;
  height: 50px;
}

.formule.formule03 {
  padding: 100px 30px;
}

/* MODULE CARTE ***********************************************************/
.carte .group-right>ul,
.carte .group-left>ul {
  background-color: transparent;
}

.carte ul {
  padding: 0;
  margin: 0 0 40px 0;
  float: left;
  width: 100%;
}

.carte td {
  padding: 10px;
  display: ;
}

.carte li {
  list-style: none;
  margin-bottom: 0;
}

.carte .group {
  list-style: none;
  float: left;
  width: 100%;
  margin-bottom: 10%;
  position: relative;
}

.carte .group-title {
  color: var(--color2);
  border: 1px solid var(--color2);
  background-color: var(--color0);
  font-size: 18px;
  text-align: left;
  display: inline-block;
  text-transform: uppercase;
  margin: 0 0 10px 0;
  padding: 12px 30px 8px 30px;
  border-radius: 50px;
  z-index: 0;
}

.carte .group-title:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 5px;
  background-color: var(--color2);
  top: 15px;
  left: 0;
  z-index: -1;
  background-image: url('../images/dots3.png');
  background-repeat: repeat-x;
  background-position: 50% 0;
  display: none;
}

.carte .itemTr:nth-child(even) {
  background-color: var(--color0);
}

.carte .group.group-title-p {
  margin-bottom: 0px;
  text-align: left;
}

.carte li:nth-child(even) .group {
  /*! direction:rtl; */
  /*! text-align: center; */
}

.carte li:nth-child(even) .group tr {
  direction: ltr;
}

.carte li:nth-child(even) .group .h {
  direction: ltr;
}

.carte li:nth-child(even) .group .groupContent {
  padding: 0px 0 0px 0;
}

.carte li:nth-child(odd) .group .groupContent {
  padding: 0px 0 0px 0;
}

.carte li .group .groupContent {
  vertical-align: top;
}

.carte li:nth-child(even) {
  position: relative;
}

.carte li:nth-child(even):before {
  content: '';
  position: absolute;
  top: 0;
}

.carte .item-title {
  color: var(--color5);
  font-size: 20px;
  padding: 0;
  font-weight: 100;
  text-transform: none;
  margin: 12px 0 21px 0;
  font-family: var(--font_family_1) !important;
  letter-spacing: 1px;
  text-align: left;
}

.carte .item p {
  margin-bottom: 0;
  background-repeat: repeat-x;
  background-position: 50% 12px;
}

.carte .item .item-description,
.carte .item small {
  color: var(--color6);
  padding: 3px 3px 0 0;
  display: inline-block;
  width: 100%;
  margin-bottom: 0;
  font-weight: 100;
  text-transform: none;
  opacity: 1;
  font-size: 15px;
  text-align: left;
}

.carte .item {
  display: flex;
  flex-direction: column;
  padding: 6em 3em;
}

.carte .group:before {
  content: '';
  position: absolute;
  width: 20%;
  height: 125%;
  background: #C29D9C;
  left: -50px;
  top: 50%;
  z-index: 0;
  transform: translateY(-50%);
}

.group.group-title-p:before {
  display: none;
}

.carte .price {
  float: none;
  color: var(--color4);
  font-size: 18px;
  font-weight: 100;
  position: relative;
  font-weight: 100;
  text-align: center;
  width: 69px;
}

.carte .price:after {
  content: '';
  height: 40px;
  width: 1px;
  background-color: var(--color0);
  float: right;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -20px;
}

.carte .price:last-child:after {
  display: none;
}

.carte .yesLabels .price {
  font-size: 17px;
}

.carte .labels .label {
  font-size: 12px;
}

.carte .item .yesLabels .price {
  border-right: 1px solid var(--color0);
}

.carte .item .yesLabels .price:last-child {
  border-right: 0 solid var(--color0);
}

.carte .label {
  margin-right: 0;
  border-radius: 0;
  color: var(--color2);
  display: table-cell;
}

.carte .label:last-child {
  margin-right: 0;
}

.item p span.price:nth-child(3):after,
p.header .price.label1:after {
  display: none;
}

.priceVide {
  text-align: center !important;
}

.carte .labels {
  border-bottom: 0 solid var(--color3);
  margin-top: 0;
  margin-bottom: 0;
}

.carte .blazy {
  margin-bottom: 20px;
}

.price.label {
  position: relative;
}

.section.carte .reserver {
  display: inline-block;
}

.section.carte .reserver img {
  vertical-align: text-top;
  margin: 3px 0 0 0;
}

.carte .price span {
  display: block;
  white-space: nowrap;
}

.carte .item .item-description .blazy {
  float: left;
  margin: 5px 10px 10px 0;
  width: auto;
}

.deprecated-ie {
  text-align: center;
  color: var(--color4);
  background: var(--color0)
}

.deprecated-ie p {
  line-height: 30px;
  margin: 0
}

.deprecated-ie a {
  line-height: 30px;
  font-family: var(--font_family_1);
  font-size: 13px;
  color: var(--color4);
  text-decoration: underline
}

/* Fix pour fond noir lightbox qui n'apparait pas sur chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {
  .lightboxOverlay {
    overflow: scroll
  }

  .lightboxOverlay::-webkit-scrollbar {
    width: 0px
  }
}

/* ************************************STYLE-FD-THEME******************************* */
body:after {
  content: url('../images/bx_loader.svg') !important;
  display: none;
}

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill,
input:-moz-autofill,
textarea:-moz-autofill,
select:-moz-autofill {
  background-color: var(--color3) !important;
  background-image: none;
  color: var(--color0) !important;
}

.loader-cont {
  display: flex;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background: var(--color3);
  justify-content: center;
  align-items: center;
}

#inner {
  display: flex;
  width: 300px;
  height: auto;
  vertical-align: middle;
  align-content: center;
  justify-content: center;
  align-items: center;
}

#inner img {
  width: 200px;
}

/**********/
.body-service-list .services .tableGrid.row:nth-of-type(odd) {
  /*! direction: rtl; */
}

.body-service-list .services .tableGrid.row {
  overflow-x: hidden;
  margin: 5em 0 10em;
}

.tableGrid.fullWidth {
  width: 100%;
}

.tableGrid>.row,
.tableGrid {
  display: table;
  margin: 0;
  padding: 0;
  position: relative;
  height: 100%;
}

.tableGrid>.table-row {
  height: 100%;
}

.table-row {
  display: table-row;
}

.tableGrid>.row>.table-row>[class*=col],
.tableGrid>.table-row>[class*=col],
.tableGrid>.row>[class*=col],
.tableGrid>[class*=col] {
  display: table-cell;
  vertical-align: top;
  float: none;
  height: 100%;
  position: relative;
}

.noPaddingCells>.row>.table-row>[class*=col],
.noPaddingCells>.table-row>[class*=col],
.noPaddingCells>[class*=col] {
  padding: 0;
}

.tableGrid.nopadding>.row>.table-row>[class*=col],
.tableGrid.nopadding>.table-row>[class*=col],
.tableGrid.nopadding>.row>[class*=col],
.tableGrid.nopadding>[class*=col] {
  padding: 0;
}

.tableGrid.va-middle>.row>.table-row>[class*=col],
.tableGrid.va-middle>.table-row>[class*=col],
.tableGrid.va-middle>.row>[class*=col],
.tableGrid.va-middle>[class*=col] {
  vertical-align: middle;
}

.carte .item-title,
.NosPlanDAcces02 p strong,
.view .item .h,
body,
.accroche p,
.tel strong,
.h span,
.activites p,
.tel p,
.formule li,
.formule p,
.ReservationText p,
.NosCartes02 ul li,
.NosCartes02 ul li small,
.btn,
.carte .group-title,
.contact .h,
.ReservationBg .h,
.address p,
.nav-pills>li>a,
.beforeFooter ul li,
.modal-content,
.modal-content label,
.form-control,
.form-actions,
.beforeFooter p,
.headerTel,
.datepicker table tr td,
.NosCartes02 .h small,
.NosCartesLink {
  font-family: var(--font_family_1);
}

strong {
  font-family: var(--font_family_1);
}

.top-texte p {
  text-align: center;
  /*! font-size: 20px; */
}

.top-texte {
  margin-top: 53px;
}

.subtitle {
  font-size: 20px;
  font-weight: normal;
  font-family: var(--font_family_1);
}

em {
  font-style: italic !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h,
.carteSeeMore,
.datepicker table tr th.datepicker-switch,
.datepicker table tr th,
.carte .group-title,
.formule .prix,
.leading,
.accroche p strong,
.zone01 ul li,
.tel span {
  font-family: var(--font_family_1);
}

.navbar-nav>li>a,
.gfg {
  font-family: var(--font_family_2);
}

.navbar-nav>li>a:after {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  background: var(--color5);
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  transition: .3s;
}

.navbar-nav>li>a:hover:after {
  width: 80%;
}

.navbar-nav>li>a:after:hover {
  width: 80%
}

.navbar-nav>.active>a:after {
  width: 66%;
}

.address strong {
  font-family: var(--font_family_1);
  font-weight: bold !important;
}

.carte .group-subtitle {
  font-family: var(--font_family_1);
  margin: 15px 0;
  font-size: 0.9em;
  text-align: center;
  color: var(--color2);
}

.container,
.row {
  position: relative;
}

/*********** tinyMce ***************/
section p img {
  margin: 5px 10px 10px 10px;
}

img[style="float:right;"],
section figure.right {
  margin: 0 5px 20px 0px;
}

img[style="float:left;"],
section figure.left {
  margin: 0 20px 5px 0px;
}

/**call Tracker**/
.sidebar-scroll-right .callTracker {
  width: 100%;
  height: 50px;
}

.callTracker {
  position: relative;
}

.callTracker .t_phone {
  opacity: 0;
  display: none;
}

.callTracker .t_affiche {
  cursor: pointer;
}

.callTracker.active .t_phone {
  opacity: 1;
  display: inline-block;
  text-decoration: unset;
}

.callTracker.active .t_affiche {
  opacity: 0;
  display: none;
}

.pied .callTracker a,
.coordonnees .callTracker a {
  position: relative;
  left: 0px;
}

.coord {
  padding: 0 3%;
}

.coord p span i {
  color: var(--color5) !important;
  !i;
  !;
  font-size: 23px;
}

.coord p span {
  color: var(--color2);
  color: var(--color6);
  font-size: 16px;
  font-weight: normal;
  font-family: var(--font_family_2);
}

.coord p .fa-map-marker-alt::before {
  color: var(--color5);
}

/**call Tracker**/
i.fas.fa-phone-alt {
  transform: rotate(95deg);
  margin-right: 6px;
  margin-top: -4px;
}

/*************************trait********************************/

.trait:before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  width: 1px;
  height: 100%;
  top: 0;
  background: var(--color4);
  opacity: .3;
}

.trait {
  position: absolute;
  top: 0;
  height: 13vh;
  top: -59px;
  z-index: 10;
  width: 100%;
  left: 0;
}

.body-pageseo .dream-liste .trait {
  display: none
}

/**********************************************************/

/***********************dream liste***********************/
.dream-liste {
  display: flex;
  padding: 9em 0% 9em;
  position: relative;
  background: var(--color1);
  flex-direction: column-reverse;
  /*! background-color: transparent; */
  /*! background-image: linear-gradient(180deg, #EEE 0%, #FFF 100%); */
  /*! transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; */
}

.subtitle-back {
  position: absolute;
  top: 48%;
  transform: rotate(-90deg);
  left: 0%;
  font-size: 55px;
  color: var(--color4);
  font-family: var(--font_family_1);
}

.titre-secondaire {
  font-size: 25px;
  font-family: var(--font_family_1);
  color: var(--color5);
  display: block;
  letter-spacing: 1px;
}

.dream-img img {
  width: 100%;
  height: 100%;
}

.dream-img {
  width: 100%;
  background: url(../images/paris.png);
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 0;
  position: relative;
  z-index: 1;
  height: 54vh;
  filter: grayscale(1);
  background-position: center;
}

.dream-content {
  position: relative;
  width: 100%;
  padding: 0 0em 5vh;
  border-radius: 0;
  text-align: center;
  z-index: 1;
}

.dream-content .subtitle {
  font-size: 25px;
  margin-top: 0;
  text-transform: initial;
  color: var(--color5);
  font-weight: normal;
}

.dream-text {
  margin-top: 24px;
  font-family: var(--font_family_2);
  font-size: 22px;
}

.swip-liste-AT {
  position: relative;
  width: 100%;
  padding: 0%;
  overflow: hidden;
}

.swip-liste-AT .swiper.mySwiper {
  margin: 0 15%;
  overflow: hidden;
}

.dream-card {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

.text-dream .subtitle {
  font-size: 30px;
  color: var(--color0);
}

.text-dream p {
  color: var(--color0);
  margin-top: 35px;
}

.dream-item-left {
  position: relative;
  display: inline-block;
  width: 100%;
  vertical-align: middle;
  width: 50%;
  margin: 0;
  height: 470px;
}

.dream-item-right {
  position: absolute;
  width: 35%;
  height: calc(93% - 106px);
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  padding: 20px 9.9% 20px 16.6%;
  display: flex;
  right: 0;
  justify-content: center;
  flex-direction: column;
  overflow: hidden;
  z-index: -1;
  opacity: 0;
  transition: .5s ease-out;
  background: var(--color5);
  border-radius: var(--border-radius);
}

.img-dream.intercontinantal-img {
  background: url(../images/Intercontinental.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.img-dream.domaine-de-vert-mont {
  background: url(../images/domaine-de-vert-mont.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-dream.chateau-wedding-ceremony {
  background: url(../images/chateau-wedding-ceremony.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-dream img {
  display: block;
  width: auto !important;
  /*! height: 100%; */
  /*! max-width: 100%; */
}

.dream-item-left .img-dream {
  height: 100%;
  clip-path: inset(0 100% 0 0);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.swiper-slide-active .dream-item-left .img-dream {
  clip-path: inset(0 0 0 0);
}


.swiper-slide-active .dream-card .dream-item-right {
  opacity: 1;
  -webkit-transition: .7s ease-out .2s;
  transition: .7s ease-out .2s;
}

.btns-dream {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  width: 195px;
  height: 50px;
  color: #fff;
  float: right;
  background-color: transparent;
  margin-top: 20px;
  position: absolute;
  bottom: 55px;
  right: 15%;
}

.btns-dream .swiper-button-prev,
.btns-dream .swiper-button-next {
  position: static;
  display: flex;
  height: 50px;
  width: 50px;
  justify-content: center;
  align-items: center;
  color: var(--color0);
  opacity: .8;
}

.btns-dream .swiper-button-next i,
.btns-dream .swiper-button-prev i {
  font-size: 18px;
  color: var(--color2);
}

.swiper-pagination {
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: var(--color2);
  width: auto;
  position: static;
  /*! height: 100%; */
  /*! margin: ; */
}

.btns-dream .swiper-button-prev .fa-chevron-left::after {
  content: '';
  width: 35px;
  height: 3px;
  position: absolute;
  background: var(--color2);
  top: 48%;
  left: 24px;
  transform: translateY(-50);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btns-dream .swiper-button-prev:hover .fa-chevron-left::after {
  width: 20px;
}

.btns-dream .swiper-button-next .fa-chevron-right::after {
  content: '';
  width: 35px;
  height: 3px;
  position: absolute;
  background: var(--color2);
  top: 48%;
  right: 24px;
  transform: translateY(-50);
  -webkit-transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btns-dream .swiper-button-next:hover .fa-chevron-right::after {
  width: 20px;
}

/***********************************************************/

/*************** resets and styles ***********************/


*:focus {
  outline: none;
}

html {
  height: 100%;
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

pre,
code,
address,
caption,
cite,
code,
em,
strong,
th {
  font-size: 1em;
  font-weight: normal;
  font-style: normal;
}

fieldset {
  border: none;
}

.body-contact fieldset {
  border: none;
  position: absolute;
  top: 100%;
  padding: 0 15px;
}

caption,
th {
  text-align: left;
}

.scrollbars {
  margin: 15px 0 0;
  height: 160px;
  position: relative;
  float: left;
  width: 100%;
  padding: 0 11px 0 0;
  overflow: auto;
}


.gallery.node-51 {
  position: relative;
  z-index: 1;
}

.scrollbar-path-vertical {
  background-color: #ccc !important;
}

.scrollbar-handle {
  background: var(--color5);
}

footer .scrollbar-path-vertical {
  background-color: #eee !important;
}

table,
.table {
  border-collapse: collapse;
  width: 100%;
  border-spacing: 0;
}

textarea {
  overflow: auto;
  resize: none;
}

b,
strong {
  font-weight: 600;
}

input {
  border: none;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
}

input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 1px;
  text-overflow: '';
}

input[type=submit] {
  cursor: pointer;
}

/* pre{font-size:12px;padding-left:5px;background:url(../images/backgrounds/pre.jpg);white-space:pre;border-width:0 1px 1px 1px;border-style:solid;border-color:var(--color4);line-height:22px;letter-spacing:.1px;word-spacing:1px;margin:15px 0 15px 0;overflow:hidden;} */
code {
  background-color: var(--color4);
  padding: 0 5px;
  margin: 10px 0;
  border: 1px dotted var(--color4);
  display: inline-block;
  text-shadow: 0 1px 0 var(--color4);
}

sup,
sub {
  font-size: 8px;
  font-size: .8rem;
  line-height: 18px;
  margin: 0;
  padding: 0;
}

sup {
  vertical-align: top;
}

sub {
  vertical-align: bottom;
}

nav {
  padding: 0;
  margin: 0;
}

blockquote {
  padding-left: 20px;
}

/******** contents **********/
.fd-avis_satisfaction {
  background: var(--color5) !important;
}

body {
  background: var(--color0);
  margin: 0;
  padding: 0;
  font-size: 18px;
  color: #000000;
  position: relative;
  font-family: var(--font_family_2);
  letter-spacing: 1px;
  line-height: 1.3em;
}

.body-carte-52 #main::after {
  display: none;
}

.body-contact-39 .contact {
  padding: 0;
}

ul,
p {
  margin-bottom: 20px;
}

.flex-head-txt .scroll {
  padding: 0 0 0 0;
  max-height: 245px;
}

a {
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  color: var(--color2);
  text-decoration: underline;
}

.sitemap .encadrage a {
  color: var(--color6) !important;
}

a:hover,
a:focus {
  text-decoration: underline;
  color: var(--color4);
}

blockquote {
  border-color: var(--color2);
}

::selection {
  color: var(--color0);
  background-color: var(--color1);
}

::-moz-selection {
  color: var(--color0);
  background-color: var(--color1);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h {
  font-style: normal;
  margin: 0 0 25px;
  font-weight: normal;
  display: block;
  margin-top: 0;
  color: var(--color2);
}

.copyright h3 {
  margin: 0 0 10px
}

h1,
.h1 {
  color: var(--color6);
  font-size: 70px;
  line-height: 1;
  font-family: var(--font_family_1);
  text-align: center;
  position: relative;
  display: table;
  letter-spacing: 1px;
  font-weight: normal;
}

.bannier .banner h1,
.bannier .banner .titre {
  font-size: 70px;
  line-height: 1;
  letter-spacing: 1px;
  font-family: var(--font_family_1);
  color: var(--color0);
  text-align: left;
  font-weight: 700;
  position: relative;
  z-index: 1;
  display: ;
}

.bannier .banner h1 small {
  color: var(--color5);
}

.body-contact .form h2 {
  margin-top: 0px;
  width: 100%;
  /*! color: var(--color0); */
  text-align: left;
}

.form h2 {
  margin-bottom: 25px;
  width: 100%;
  /*! color: var(--color0); */
}

.contact.form {
  width: 50%;
  display: block;
  padding: 0 4%;
  margin-top: 0;
}

.form h2 {
  text-align: center;
  /* font-size: 20px; */
}

.form {
  padding: 0 30%;
}

.hicon:after,
h1:after,
.h1:after,
.bannier .banner h1:after {
  content: "";
  /*! position: absolute; */
  /*! width: 200px; */
  /*! height: 28px; */
  /*! background: url('../images/tache.svg') no-repeat center / contain; */
  /*! left: 50%; */
  /*! top: -45px; */
  transform: translate(-50%, 0);
}

/* .hicon:before, . */
.hicon:after,
/* h1:before, .h1:before, */

h2,
.h2 {
  font-size: 30px;
  !i;
  !;
  margin-bottom: 20px;
}

h3,
.h3 {
  font-size: 24px;
}

h4,
.h4 {
  font-size: 19px;
}

h5,
.h5 {
  font-size: 14px;
}

h6,
.h6 {
  font-size: 12px;
}

.bg {
  background-color: var(--color0);
  background-position: 50% 0;
  background-repeat: no-repeat;
  position: relative;
  overflow-x: hidden;
}

/* .bg01{background-image:url(../images/bg01.jpg);}
.bg02{background-image:url(../images/bg02.jpg);}
.bg03{background-image:url(../images/bg03.jpg);}
.bg04{background-image:url(../images/bg04.jpg);}
.body-page-1 .bg01,.body-pageseo .bg01{background-image:url(../images/bg01.jpg);} */
.flex-seoContain {
  position: relative;
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

.flex-seoContain .seo-content {
  width: 55%;
  padding-top: 1em;
}

.flex-seoContain .seo-content h1,
.flex-seoContain .seo-form h2.h1 {
  text-align: left;
}

.flex-seoContain .seo-content h1:before,
.flex-seoContain .seo-form h2.h1:before {
  left: 0;
  margin-left: 0;
}

.flex-seoContain .seo-form {
  width: 44%;
  padding: 1em 3% 3em;
  background: var(--color1);
}

.img-seo img {
  border-radius: var(--border-radius);
  width: 240px;
  height: auto;
}

a.imagecont.noflicker.img1 {
  float: right;
  margin-left: 10px;
  margin-bottom: 10px;
}

ul li.niveau2,
ol li.niveau2 {
  margin-left: 30px
}

/************* seps *****************/
hr {
  background-color: var(--color3);
  border: none;
  width: 100%;
  height: 1px;
  margin: 0 auto 0;
  clear: both;
}

.sep:after {
  content: '...';
  display: block;
  letter-spacing: 3px;
  width: 40px;
  /*vertical-align:super;*/
  margin: 0 auto !important;
  float: none;
}

/************** IMAGES *****************/
.vis {
  position: relative;
  margin: 0;
}

.vis01 figcaption {
  position: absolute;
  left: 0;
  top: 0;
  padding: 20px;
  font-size: 21px;
  color: var(--color4);
  line-height: 1;
}

.vis01 figcaption strong {
  color: var(--color4);
  font-size: 43px;
}

.vis01 {
  float: right;
}

/************** header *****************/
.headerAdress p img {
  vertical-align: sub;
}

.body-page .header {
  z-index: 8001;
  position: relative;
  width: 100%;
  padding: 0 0 0;
  height: 82vh;
  background: var(--color3);
  top: 0;
}

.header {
  z-index: 2;
  position: relative;
  width: 100%;
  padding: 0 0 0;
  background: var(--color1);
}

.headerTel {
  font-size: 55px;
  letter-spacing: 2px;
  word-spacing: 4px;
  color: var(--color0);
  font-weight: 100;
  margin-bottom: 20px !important;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  text-shadow: 1px 1px 1px var(--color4);
  bottom: 0;
  right: 0;
}

.headerTel .table {
  margin-bottom: 0;
  height: 100%;
}

.headerTel .table-cell {
  vertical-align: middle;
}

.body-page-1 .header,
.body-pageseo .header {
  margin-bottom: 0;
}

.header01bg {
  z-index: 80;
  position: fixed;
  padding: 0;
  height: 115px;
  width: 100%;
  top: 0;
  left: 0;
  transition: 0.3s;
  background: var(--color0);
}

.header01bg.fixed {
  background: var(--color1);
  transition: 0.3s;
  height: 100px;
  box-shadow: 0 1px 10px var(--color6);
}

.header02bg {
  z-index: 1;
  position: relative;
  padding: 0 0 0 0;
  width: 100%;
}

.headerAdress {
  width: 100%;
}

.headerAdress p {
  font-size: 17px;
  color: var(--color0);
  margin: 8px 0 18px 0;
}

.navbar-header {
  position: relative;
  float: left;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 50% 0;
  padding: 0;
  text-align: center;
}

.navbar-brand {
  position: relative;
  text-decoration: none;
  padding: 0;
  line-height: 0;
  height: auto;
  float: unset;
  width: 100%;
}

.navbar-brand.paddin {
  padding: 30px 0 10px;
}

.navbar-brand img {
  position: relative;
  width: 315px;
  height: auto;
}

/********** menu ***********/
.navbar {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.navbar-nav {
  text-align: center;
  position: relative;
  display: inline-flex;
}

.navbar-nav>li {
  text-align: center;
  margin: 0;
  position: relative;
  float: unset;
}

.navbar-nav>li:last-child {
  margin-right: 0;
}

.navbar-nav>li:first-child:before {
  display: none;
}

.navbar-nav>li>a {
  text-decoration: none;
  position: relative;
  margin: 0 4px;
  font-size: 0.8vw;
  line-height: 20px;
  font-weight: normal;
  text-transform: uppercase;
  font-style: normal;
  font-family: var(--font_family_1);
  color: var(--color6);
  letter-spacing: 1px;
}

.navbar-nav>li:last-child a {
  border-right: 0 solid var(--color1);
}

.navbar-nav>li>a.active,
.navbar-nav>.active>a,
.navbar-nav>.active>a:hover,
.navbar-nav>.active>a:focus,
.navbar-nav>li>a:hover,
.navbar-nav>li>a:focus {
  color: var(--color5);
  background: transparent;
}

/********** effet hover du menu **********/
@-webkit-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-webkit-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-moz-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-moz-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-ms-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-ms-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@-o-keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@-o-keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}

@keyframes borderScale {
  0% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }

  20% {
    background-color: var(--color3);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }
}

@keyframes borderScale1 {
  0% {
    height: 100%;
    width: 100%;
    background-color: var(--color2);
  }

  20% {
    background-color: var(--color2);
    height: 0%;
    width: 100%;
  }

  100% {
    height: 0%;
    width: 0%;
    background-color: var(--color3);
  }
}


.propor {
  width: 100%;
  position: relative;
  margin-bottom: 10px;
}

.propor:after {
  padding-top: 76%;
  display: block;
  content: '';
}

.propor .propor-cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.propor .propor-cont .imagecont {
  height: 100%;
  display: block;
  /*! border:1px solid var(--color1); */
  width: 100%;
  border-radius: 0 !important;
  overflow: hidden;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}

.news .item .propor .imagecont {
  border: 4px solid var(--color0);
}

.propor .propor-cont .imagecont .imagefond {
  image-rendering: optimizeQuality;
  display: block;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Effet photo */
.propor .propor-cont .imagecont img {
  object-fit: cover;
  -o-object-fit: cover;
  min-width: 100%;
  min-height: 100%;
  height: 100%;
  transform: scale(1.01);
  transition: transform .65s cubic-bezier(.25, .1, .29, .93);
  will-change: transform;
  transform-origin: 50% 6%;
  object-position: top;
}

.galerie-image-bloc .propor .propor-cont .imagecont img {
  /*! object-fit: cover; */
  /*! -o-object-fit: cover; */
  /*! min-width: 100%; */
  /*! min-height: 100%; */
  height: 100%;
  transform: scale(1.01);
  transition: transform .65s cubic-bezier(.25, .1, .29, .93);
  will-change: transform;
  transform-origin: 50% 6%;
  width: 100%;
}

.propor .propor-cont .imagecont:hover img {
  transform: scale(1.024);
}

.dream-text ul {
  list-style: none;
}

.dream-content h2 {
  text-align: left;
}

.dream-content:before {
  content: '';
  position: absolute;
  /*! background: var(--color5); */
  width: 1px;
  height: 100px;
  left: 50%;
  right: 50%;
  top: -132px;
  /*! opacity: .3; */
}

.news .propor .propor-cont .imagecont:hover img {
  transform: scale(1.1);
}

/******news************/
.news .item .h a {
  color: var(--color2);
  text-decoration: unset;
}

.news .item a:hover {
  text-decoration: underline;
}


.newsList {
  float: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
  width: 100%
}

.newsList .ligne-actus {
  flex: 0 0 auto;
  margin: 0 0 30px;
  float: none
}

.news .date_post {
  text-align: center;
  color: var(--color2);
  font-size: 14px;
  background-color: var(--color1);
  position: absolute;
  left: 23px;
  top: -6px;
  padding: 2% 2%;
  z-index: 9;
}

.news .date_post span {
  display: block;
  line-height: 14px;
  /* min-width:84px; */
  margin-bottom: 6px;
  font-size: 13px;
}

.news .date_post .s1 {
  line-height: 35px;
  margin-bottom: 2px;
  font-size: 18px;
}

.newsList .propor .propor-cont .imagecont .masque {
  background-image: none
}

.news .propor .propor-cont .imagecont:hover {
  -webkit-transform: scale(1.15);
  -moz-transform: scale(1.15);
  -o-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: unset;
}

.newsList .propor {
  overflow: hidden
}

.newsList .item .h3 {
  color: var(--color1);
  padding: 5px 0 25px;
  margin: 0;
  font-weight: 200;
  font-family: var(--font_family_1);
}

.newsList .item:hover .h3 {
  color: var(--nuanceColor1)
}

.newsList .item .h3 a:hover {
  text-decoration: underline;
}

.item-news {
  position: relative
}

.newsItem .photo img {
  object-fit: cover;
  -o-object-fit: cover;
  min-width: 100%;
  min-height: 100%;
  flex: 1;
  width: 100%;
  height: 100%;
  overflow-x: hidden
}

.newsItem .photo {
  width: 100%;
  height: 33vw;
  overflow: hidden;
  height: clamp(300px, 40vw, 650px);
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-color: var(--color1);
  -webkit-transition: all .5s ease;
  -moz-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
  border: 4px solid var(--color0);
}

.newsItem .contenu-article {
  padding: 15px 0 0;
  min-height: 200px;
  margin: 0
}

.newsItem .div-rs {
  margin: 0 auto 40px;
  display: flex;
  align-content: center;
  align-items: center;
}

.newsItem .div-rs .btn-partage {
  display: flex;
  overflow: hidden;
  height: 56px;
  position: relative;
  top: 0;
  margin-left: 2rem;
}

.newsItem .div-rs .btn-partage .icones {
  fill: var(--color1);
  width: 22px;
}

.newsItem .div-rs .btn-partage .btnp:hover {
  background-color: var(--color1);
}

.newsItem .div-rs .btn-partage .btnp:hover .icones {
  fill: var(--color0);
}

.newsItem .div-rs .btn-partage .btn-gmb {
  display: none;
}

.newsItem .date_post {
  top: -16px;
}

.news_avant_apres {
  display: table;
  width: 100%;
  text-align: center;
  margin: 0;
  height: 100%;
  position: relative;
}

.news_avant_apres>div {
  display: table-cell;
  float: none;
  padding: 0;
  height: 100%;
}

.news_avant_apres a,
.news_avant_apres a:visited {
  padding: 20px 30px 15px 30px;
  color: var(--color1);
  text-decoration: none;
  display: block;
  height: 100%;
  font-family: var(--font_family_1);
  text-transform: uppercase;
  border: 1px solid var(--color2);
}

.news_avant_apres a:hover,
.news_avant_apres a:focus {
  background: var(--color3);
  text-decoration: none;
  border: 1px solid var(--color3);
}

.news_avant_apres>div:last-child {
  right: -5px
}

.navButtons,
.navButtons:visited {
  padding: 0 0 10px;
  color: var(--color2);
  transition: .8s;
  text-decoration: none;
  display: block;
}

.btnp {
  text-decoration: unset !important;
  width: 35px;
}

.btn-partage .btnp {
  display: inline-flex;
  transition: all .4s ease;
  justify-content: center;
  align-items: center;
  margin: 4px 7px;
  border: 1px solid #ffffff24;
  height: 4rem;
  width: 4rem;
  background: var(--color5);
  border-radius: var(--border-radius);
}

.navButtons:hover {
  color: var(--color5);
}

.news_avant_apres a:hover span,
.news_avant_apres a:focus span {
  color: var(--color2);
  text-decoration: none
}

.news_avant_apres b {
  color: var(--color5);
  transition: .3s;
  font-weight: 100 !important;
}

.news_avant_apres b:hover {
  margin: -5px;
  transition: .3s;
}

.propor .propor-cont .imagecont:hover .masque {
  opacity: 0.6;
  transition: 0.3s;
}

.propor .propor-cont .imagecont .masque {

  /*! background-color: var(--color1); */
  background-image: url(../images/icon.png);
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: 0.3s;
}

.propor .propor-cont .imagecont:hover .imagefond {
  -webkit-transform: scale(1.15);
  -moz-transform: scale(1.15);
  -o-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
}

/* GALERIE MULTIPLE */

.body-gallery .gallery .nav li {
  /*! height: 290px; */
}

.gallery .nav li {
  display: flex;
  width: auto;
  margin: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: url(../images/arche-1.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  height: 183px;
  width: 110px;
  padding: 7px 7px;
}

.gallery .nav li a {
  background: var(--color4);
  display: block;
  color: var(--color0);
  padding: 10px 10px;
  text-align: center;
  border-radius: 0;
  text-decoration: none
}

.gallery .nav li a:hover,
.gallery .nav li.active a {
  background: none;
  color: var(--color0)
}

.gallery .nav li.active a {
  cursor: default
}

.gallery .tab-content {
  padding-top: 10px;
  padding-bottom: 10px;
}

.gallery .tab-content h2 {
  padding-left: 15px;
  margin-bottom: 20px
}

/********** style **********/

/******* sub-menu ************/
.navbar-nav ul.sub-menu {
  position: absolute;
  background: var(--color4);
  padding: 0;
  visibility: hidden;
  left: 50%;
  opacity: 0;
  transform: translate(-50%, 50px);
  transition: .5s;
  margin-top: 15px;
  width: max-content;
}

.navbar-nav>li:hover>ul.sub-menu {
  display: flex;
  opacity: 1;
  height: auto;
  visibility: visible;
  transform: translate(-50%, 0);
  flex-direction: column;
  padding: 0;
  width: max-content;
}

.navbar-nav ul.sub-menu:before {
  content: '';
  position: absolute;
  top: -32px;
  left: 50%;
  margin-left: -16px;
  border-style: solid;
  border-width: 16px;
  border-color: transparent transparent var(--color4) transparent;
  /*! display: none; */
}

.hasSubMenu>a {
  background-image: url(../images/subMenuArrow.png);
  background-repeat: no-repeat;
  background-position: 100% 28%;
}

.navbar-nav ul.sub-menu>li {
  display: block;
  margin: 0;
  /* width: max-content; */
  list-style: none;
}

.navbar-nav ul.sub-menu>li>a {
  padding: 15px 14px;
  font-size: 16px;
  color: var(--color0);
  text-transform: unset;
  /* width: 100%; */
  text-align: left;
  display: block;
  font-family: var(--font_family_1);
  text-transform: uppercase;
  text-decoration: none;
  font-weight: normal;
}

.navbar-nav ul.sub-menu>li.active>a,
.navbar-nav ul.sub-menu>li>a:focus,
.navbar-nav ul.sub-menu>li>a:hover {
  color: var(--color0);
  background-color: #D0B39F;
  text-decoration: none;
}

/************** btns ********************/
.btn {
  position: relative;
  text-align: center;
  border: none;
  display: inline-block;
  border-radius: 0;
  padding: 14px 30px 14px 30px;
  text-decoration: unset;
  transition: .3s;
}

.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn:hover,
.btn:focus,
.btn:active,
.btn.active,
.open .dropdown-toggle.btn {
  outline: thin dotted;
  outline: 0 auto -webkit-focus-ring-color;
  outline-offset: -2px;
  outline: none;
}

.btn-primary {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 1px;
  background-color: var(--color5);
  border: 1px solid var(--color5);
  color: var(--color0) !important;
  min-width: 240px;
  text-decoration: unset;
  text-transform: unset;
  font-weight: normal;
  font-family: var(--font_family_1);
}

.btn-lg {
  padding: 15px 26px;
  font-size: 22px;
  font-size: 2.2rem;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
  background-color: transparent;
}

.actu-show-more a:hover {
  background: var(--color3);
}

.btn.btn-primary.carteSeeMore {
  margin-top: 0;
}

.btn.btn-primary.carteSeeMore:hover {
  border-color: var(--color4);
  background: var(--color3);
}

.btn-fixed {
  width: 205px;
}

.news .btn-fixed,
.view .btn-fixed {
  width: auto;
  padding: 14px 40px 10px 40px;
  float: right;
}

.btn-link {
  color: var(--color3);
  display: inline-block;
}

.btn-link:hover,
.btn-link:focus,
.btn-link:active,
.btn-link.active {
  color: var(--color3);
  text-decoration: underline;
}

.form-group .btn-primary {
  background-color: var(--color2);
  border: 1px solid var(--color2);
  color: var(--color0);
}

.voirtous {
  background-color: var(--color2);
  border: 1px solid var(--color2);
  color: var(--color0);
  text-align: center;
  width: 100%;
  padding: 14px 20px 10px 20px;
}

.voirtous:hover,
.voirtous:focus,
.voirtous:active,
.voirtous.active {
  background-color: transparent;
  border: 1px solid var(--color4);
  color: var(--color4);
}

/********** icons *****************/
.icon {
  padding: 0 0 0 38px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 0 50%;
}

.icon01 {
  background-image: url(../images/icon01.png);
}

.icon02 {
  background-image: url(../images/icon02.png);
}

.icon03 {
  background-image: url(../images/icon03.png);
}

.icon04 {
  background-image: url(../images/icon04.png);
}

/*************** VISUELS ***************/
/*************** devis ***************/
.devis {
  padding: 14px 50px;
  float: right;
  margin-top: 20px;
}

/********** tel **************/
.tel-tracker {
  width: 15%;
  position: relative;
  display: flex;
  justify-content: right;
}

.tel-tracker .tel.callTracker span {
  text-align: center;
  width: 100%;
}

.tel:hover {
  background: var(--color4);
}

.tel {
  width: fit-content;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  color: var(--color0);
  padding: 11px 20px;
  background: var(--color5);
  font-family: var(--font_family_1);
  font-size: 18px;
  margin: 0;
  border-radius: var(--border-radius);
}

.tel01 {
  padding-right: 62px;
}

.tel p {
  color: var(--color1);
  font-size: 16px;
  margin-bottom: 0;
  line-height: 1;
}

.tel strong {
  font-weight: 100;
}

.tel p img {
  margin: 0;
}

/************* accroche ****************/
.accroche {
  position: relative;
  padding: 10% 80px;
  text-align: center;
  width: 100%;
}

.accroche p {
  color: var(--color0);
  font-size: 27px;
  margin-bottom: 0;
}

.accroche strong {
  color: var(--color0);
  font-size: 46px;
  display: block;
  margin: 20px 0;
}

/********* social ***********/
.social {
  position: relative;
  margin: 14px 0 0 0 !important;

  text-align: center;
  display: block;
  float: left;
}

.social01 {
  position: relative;
  margin: 12px 0 3px 97px !important;
  width: auto;
  text-align: center;
  display: inline-block;
  float: none;
}

.social02 {
  margin: 9px 0 0 0 !important;
  float: right;
}

.social p,
.social p a {
  font-size: 13px;
  color: var(--color1);
  margin-bottom: 0;
  padding-top: 4px;
}

.social .block {
  display: inline-block;
  float: none;
  margin-left: 0;
}

.addthis_toolbox {
  margin: 0 !important;
  float: left;
  text-align: center;
  width: 100%;
}

.addthis_toolbox a {
  overflow: hidden;
  display: inline-block;
  height: 50px !important;
  width: 50px !important;
  line-height: 32px !important;
  margin: 0 3px !important;
  border-radius: 0;
}

.social02 .addthis_toolbox a {
  width: 33px !important;
  margin: 0 3px 0 20px !important;
}

.addthis_toolbox a svg {
  display: none;
}

.addthis_toolbox.addthis_32x32_style span {
  line-height: 32px;
  background: none !important;
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook {
  background: transparent url(../images/f.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter {
  background: transparent url(../images/t.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
  background: transparent url(../images/g.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
  background: transparent url(../images/f_h.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
  background: transparent url(../images/t_h.png)no-repeat 50% 50%;
}

.social01 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
  background: transparent url(../images/g_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook {
  background: transparent url(../images/f2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter {
  background: transparent url(../images/t2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share {
  background: transparent url(../images/g2.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_facebook:hover {
  background: transparent url(../images/f2_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_twitter:hover {
  background: transparent url(../images/t2_h.png)no-repeat 50% 50%;
}

.social02 .block>.addthis_toolbox>a.addthis_button_google_plusone_share:hover {
  background: transparent url(../images/g2_h.png)no-repeat 50% 50%;
}

/*************** banners *************/

.body-page-1 .banner {
  width: 100%;
  position: relative;
  background-position: 50% 0;
  background-repeat: no-repeat;
  overflow: hidden;
  margin: 0 auto;
  height: 100%;
}

.banner {
  width: 100%;
  position: relative;
  background-repeat: no-repeat;
  overflow: hidden;
  margin: 0 auto;
  height: 100%;
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.banner:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  background: var(--color6);
  opacity: .3;
  z-index: 1;
}

.banner img {
  width: 100%;
  margin-left: 0;
}

.banner01 {
  background-image: url(../images/banner01.jpg);
}

.banner02 {
  background-image: url(../images/banner02.jpg);
}

.banner03 {
  background-image: url(../images/banner03.jpg);
}

.figure {
  width: 100%;
  margin-bottom: 40px;
}

.figure figcaption {
  color: var(--color3);
  margin-top: 8px;
}

.figure.fullwidth img {
  width: 100%;
  height: auto;
}

/**********************************************************************/
/***************** slider ***********************/
.bannier {
  position: relative;
  width: 100%;
  height: 59vh;
  background: var(--color0);
  z-index: 1;
  margin-top: 115px;
}

.body-page .bannier {
  display: flex;
  margin-right: auto;
  margin-left: auto;
  height: 82vh;
}

.body-page .bannier .video-3 {
  padding-right: 28px;
}

.box {
  position: absolute;
  display: none;
}

.swiper-box {
  right: 34px;
  bottom: 0;
  width: 13vw;
  height: 36vh;
  overflow: hidden;
}

.box .swiper-slide img {
  width: 100%;
}

.boxSwiper5 {
  height: 100%;
}

.box .boxSwiper5 .swiper-slide img {
  width: 100%;
  height: 100%;
}

.boxSwiper5 .swiper-slide {}

.swiper-box2 {
  left: 50px;
  bottom: 0px;
  width: 13vw;
  height: 22vh;
  overflow: hidden;
}

.swiper-box3 {
  left: 23%;
  bottom: 0;
  width: 13vw;
  height: 18vh;
  overflow: hidden;
}

.swiper-box4 {
  right: -8%;
  top: 13%;
  width: 11vw;
  height: 19vh;
  overflow: hidden;
}

.swiper-box5 {
  /*! right: -8%; */
  top: 0;
  width: 100%;
  height: 100%;
  z-index: ;
  display: none;
}


.shape {
  position: absolute;
  display: none !important;
}

.shape img {
  width: 100%;
  height: 100%;
}

.shape.shape-1 {
  width: 234px;
  height: 178px;
  top: 68%;
  left: -114px;
  z-index: 1;
  transform: rotate(-51deg);
  display: none;
}

.effet-curseur {
  transition: background .3s, border .3s, border-radius .3s, box-shadow .3s, transform var(--e-transform-transition-duration, .4s);
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 100%;
}

.shape.shape-2 {
  width: 234px;
  height: 178px;
  bottom: 45px;
  right: 2px;
  z-index: 1;
  transform: rotate(-10deg);
  display: none;
}


.shape.shape-3 {
  width: 150px;
  height: 215px;
  top: 12%;
  left: -14%;
  z-index: -1;
  transform: rotate(0deg);
  display: none;
}

.engegements-content .shape.shape-3 {
  width: 150px;
  height: 215px;
  top: -35%;
  right: 11%;
  z-index: 1;
  transform: rotate(58deg) scale(-1, 1);
  left: auto;
  display: block;
}

.shape.shape-4 {
  width: 154px;
  height: 184px;
  bottom: 20%;
  right: -15%;
  z-index: 0;
  transform: rotate(-10deg);
  display: none;
}

.shape.shape-5 {
  width: 216px;
  height: 220px;
  bottom: -7%;
  right: 0%;
  z-index: 1;
  /*! transform: rotate(-42deg); */
  position: absolute;
  overflow: hidden;
  display: none;
}

.shape.shape-6 {
  width: 300px;
  height: 300px;
  bottom: 0%;
  left: -98px;
  z-index: 1;
  transform: rotate(34deg);
}

.shape.shape-tel {
  width: 234px;
  height: 178px;
  top: -72px;
  left: 100px;
  z-index: 0;
  transform: rotate(-10deg);
  transition: 0.3s;
  display: none;
}

.fixed .shape.shape-tel {
  width: 174px;
  height: 111px;
  top: -37px;
  left: 100px;
  z-index: 0;
  transform: rotate(-10deg);
  transition: 0.3s;
  display: none;
}

.slide-parallax-video {
  position: relative;
  flex: 306 1 2%;
  top: 0;
  left: 0;
  padding: 30px 0px 0px 28px;
}

.video-1 .video-accueil {
  background: url(../images/video1_069.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: ;
}

.video-2 .video-accueil {
  background: url(../images/vid-4_198.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.video-3 .video-accueil {
  background: url(../images/image-vid1.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.video-accueil {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.slide-parallax-video:hover .video-accueil:before {
  opacity: 1
}

.video-accueil:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  /*! opacity: 0; */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity .35s ease-in-out;
  transition: opacity .35s ease-in-out;
  /* background: rgb(0 0 0 / 8%); */
  z-index: 1;
}

.video-accueil video {
  height: 100%;
  width: 100%;
  object-fit: cover;
  filter: none !important;
}

.bannier:after,
.reserv-container:after,
#footer:after,
.actuAndNewsletter-container:after,
.theReservationText:after,
.salon-block:after,
.NosPlanDAccesBg:after,
.bloc-GMB:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  /*! background: url('../images/banner-waves.svg') no-repeat center / cover; */
  z-index: -1;
  /*! opacity: 0.1; */
}

.sliderBg {
  position: relative;
  width: 100%;
  height: calc(100vh - 9vh);
}

.slide-parallax {
  position: absolute;
  width: 45%;
  height: 85vh;
  right: 8%;
  top: 13%;
  border: 4px solid var(--color0);
}

.slide-parallax img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.slogan {
  position: absolute;
  width: calc(100% - 28px);
  top: 40%;
  left: 0;
  height: auto;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.body-page-1 .slogan {
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  margin-left: 28px;
}

.titre {
  font-size: 60px;
  line-height: .9375em;
  letter-spacing: .2em;
  font-family: var(--font_family_1);
  color: var(--color0);
  text-align: left;
  font-weight: 700;
  text-align: center;
}

.slogan :after {
  display: none;
}

.slogan h1 {
  font-size: 50px;
  text-align: left;
  margin: unset !important;
  line-height: 1;
}

.body-page-1 .slogan h1 {
  text-align: center;
}

.sous-titre {
  text-transform: initial;
  font-family: var(--font_family_2);
  font-size: 20px;
  display: block;
  color: var(--color0);
  padding: 20px 0 40px;
}

.sous-titre-top {
  padding-bottom: 30px;
  font-size: 18px;
  color: var(--color0);
  font-family: var(--font_family_1);
  display: none;
}

.body-page-1 .sous-titre {
  text-transform: initial;
  font-family: var(--font_family_2);
  font-size: 23px;
  display: block;
  color: var(--color0);
  padding: 20px 5% 40px;
  text-align: center;
  letter-spacing: 1px;
}

.bouton-principale,
.bouton-principale:focus {
  position: relative;
  padding: 11px 25px;
  background: var(--color5);
  text-decoration: none;
  color: var(--color0);
  font-family: var(--font_family_1);
  font-size: 18px;
  margin: 0;
  border-radius: var(--border-radius);
}

.cta.hidden-sm.hidden-xs {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 30px 0;
}

.bouton-principale:hover {
  color: var(--color0);
  text-decoration: none;
  background: var(--color4);
}

.head-btn>a,
.head-btn>p {
  position: relative;
  background: transparent;
  font-size: 11px;
  line-height: 2em;
  font-weight: 500;
  letter-spacing: .3em;
  text-transform: uppercase;
  cursor: pointer;
  padding: 9px 20px;
  color: var(--color0);
  text-decoration: none;
  width: auto;
  text-align: center;
  transition: .3s;
  border: 1px solid rgba(255, 255, 255, .6);
  font-family: var(--font_family_1);

}

/**************Hover btn AT*************************/
a:hover .btn-horizontal-deco:before {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  transition-delay: 0s;
}

a:hover .btn-horizontal-deco:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-delay: .12s;
  transition-delay: .12s;
}

a:hover .btn-verticale-deco:before {
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-delay: .36s;
  transition-delay: .36s;
}

a:hover .btn-verticale-deco:after {
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.btn-horizontal-deco:before {
  content: '';
  position: absolute;
  left: -1px;
  top: -1px;
  display: block;
  width: calc(100% + 2px);
  height: 1px;
  background-color: var(--color3);
  -webkit-transition: .36s ease-out, background-color 1ms;
  transition: .36s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transform-origin: left;
}

.btn-horizontal-deco:after {
  content: '';
  position: absolute;
  left: -1px;
  bottom: -1px;
  display: block;
  width: calc(100% + 2px);
  height: 1px;
  background-color: var(--color3);
  -webkit-transition: .36s ease-out, background-color 1ms;
  transition: .36s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transform-origin: left;
}

.btn-primary .btn-horizontal-deco:after {
  background-color: var(--color4);
}

.btn-primary .btn-horizontal-deco:before {
  background-color: var(--color4);
}

.btn-primary .btn-verticale-deco:after {
  background-color: var(--color4);
}

.btn-primary .btn-verticale-deco:before {
  background-color: var(--color4);
}


.btn-verticale-deco:before {
  content: '';
  position: absolute;
  top: 0;
  right: -1px;
  display: block;
  height: 100%;
  width: 1px;
  background-color: var(--color3);
  -webkit-transition: .12s ease-out, background-color 1ms;
  transition: .12s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  transform-origin: top;
}

.btn-verticale-deco:after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  display: block;
  height: 100%;
  width: 1px;
  background-color: var(--color3);
  -webkit-transition: .12s ease-out, background-color 1ms;
  transition: .12s ease-out, background-color 1ms;
  transition-delay: 0s, 0s;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  transform-origin: top;
}

/***************************************************/
.head-btn .tel {}

.head-btn {
  position: relative;
  width: 100%;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}


.nav-liste {
  position: relative;
  width: 60%;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}



.nav-logo {
  width: 20%;
  position: relative;
  display: flex;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}



.bxslider {
  position: relative;
}

div#bxControls {
  height: 67px;
  position: absolute;
  width: 22%;
  left: 0;
  bottom: -67px;
}

.slide {
  position: relative;
}

.slide img {
  position: relative;
}

.slide a {
  display: inline-block;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  border: 3px solid transparent;
}

.slide a img {
  opacity: 0;
  width: 100%;
}

.slide a:focus,
.slide a:hover {
  border: 3px solid var(--color0);
}

.slide a:focus .img_thumbnail_item_mask,
.slide a:hover .img_thumbnail_item_mask {
  opacity: 1;
}

/************ main **************/
.main_bg {
  padding-top: 0;
  position: relative;
  z-index: 1;
  background-color: var(--color0);
  padding: 0;
}

.flex-head {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-content: stretch;
  justify-content: center;
  align-items: stretch;
}

.flex-head-img {
  position: relative;
  width: 40%;
  height: 100%;
}

.flex-head-txt::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: var(--color0);
}

.flex-head-txt::-webkit-scrollbar {
  width: 4px;
  background-color: var(--color0);
}

.flex-head-txt::-webkit-scrollbar-thumb {
  background-color: var(--color5);
  border: 2px solid var(--color5);
}

.flex-head-txt {
  position: relative;
  width: 50%;
  padding: 0px 0px 0px 3%;
  margin-right: 90px;
  height: auto;
}

.image-secondaire img {
  object-fit: ;
  width: 70%;
  height: auto;
}

.image-secondaire {
  object-fit: ;
  width: 65%;
  height: 55vh;
  position: absolute;
  background: url(../images/image-2.jpeg);
  background-size: cover;
  background-position: center top;
  margin: auto;
  margin-top: 7vh;
  /*! left: 50%; */
  /*! transform: translate(-50%); */
  right: 0;
  border-radius: var(--border-radius);
}

.head-img.img-1 {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0%;
  top: 0;
  border-radius: var(--border-radius);
  overflow: hidden;
}

.signature-img {
  width: 65%;
  height: fit-content;
  position: absolute;
  margin: auto;
  bottom: -22vh;
  top: auto;
  margin-top: ;
  left: 63%;
  transform: translate(-50%);
  opacity: .5;
}

.signature-img img {
  width: 100%;
  opacity: .4;
}

.presentation .col-lg-12 {

  /*! width: fit-content; */
  /*! right: 20%; */
}

.head-img {
  /*! border: 3px solid var(--color0); */
}

.head-img.img-2 {
  width: 30%;
  height: 60%;
  position: relative;
  right: -56%;
  top: -34%;
}

.body-page-1 #main {
  padding: 0em 10% 0;
  width: 100%;
  background: var(--color0);
}

#main {
  padding: 6em 10% 3em;
  width: 100%;
  background: var(--color0);
}

.body-contact-53 #main {
  padding: 6em 10% 9em;
  width: 100%;
  background: var(--color1);
}

.body-contact #main:after {
  display: none;
}

.body-service #main:after {
  display: none;
}

.body-service-list #main:after {
  display: none;
}

.body-pageseo #main:after {
  display: none;
}



.body-gallery-98 #main::after {
  z-index: -1;
}

.body-copyright #main::after {
  display: none;
}

.body-sitemap #main::after {
  display: none;
}

.body-page-1 #main:after {
  content: '';
  position: absolute;
  background: #FFF;
  width: 100%;
  height: 26vh;
  z-index: 0;
  left: 0;
  bottom: -46px;
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.body-news #main {
  padding: 60px 0;
}

section#gallery {
  padding: 0 10%;
}

.description-galerie.gallery-tflex {
  padding: 20px 15%;
}

.body-news-list main#main {
  padding: 60px 0;
}

.body-pageseo .section,
.body-page-1 .section {
  height: 100%;
  padding: 8em 0 5em;
  border-radius: 20px;
  position: relative;
  z-index: 100;
}

section.section.row.pageseo {
  padding: 0;
}

.presentation {
  /*! background: url(../images/presentation.jpeg); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  /* background: var(--color3); */
}

.itemtext {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  gap: 0vw;
  justify-content: center;
  flex-direction: column;
}

.item {
  width: 100%;
}

.pluschiffre {}

.body-service #main h1 {
  text-align: center;
}

#main h1 {
  margin-bottom: 7vh;
  font-size: 50px;
  line-height: .9375em;
  letter-spacing: .2em;
  font-family: var(--font_family_1);
  color: var(--color6);
  text-align: left;
  display: block;
}

.carte .itemTr:nth-child(even) {
  background-color: #ffffff9c;
}


.carte .group .blazy {
  /*! border: 4px solid #fff; */
  background-size: cover;
  background-position: center;
}

.group-description {
  color: var(--color2);
}



.carte .group-title {
  color: var(--color5);
  border: 0;
  background-color: transparent;
  font-size: 38px;
  text-align: left;
  display: inline-block;
  text-transform: uppercase;
  margin: 0 0 7px 0;
  padding: 0;
  z-index: 0;
  font-family: var(--font_family_2);
}

.carte .price {
  color: var(--color2);
  display: none;
}


.carte .itemTr:nth-child(even) {
  background-color: #ffffff9c;
}

.datepicker table tr td.today:active:hover,
.datepicker table tr td.today.active:hover,
.datepicker table tr td.today:active:focus,
.datepicker table tr td.today.active:focus,
.datepicker table tr td.today:active.focus,
.datepicker table tr td.today.active.focus {
  background-color: var(--color1);
  color: var(--color0);
}

.datepicker table tr td.today {
  color: var(--color0);
  background: var(--color4) !important;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active {
  background: var(--color3);
}

/************ footer ***************/


.adress-pied {
  display: flex;
  gap: 11px;
}

.footer-coordonnees .flex-recherches .scrollbars {
  height: 199px;
}

.flex-address {
  display: flex;
}

.footer-coordonnees>i {
  color: var(--color2);
  padding: 6px 11px 0 0;
}

.footer-coordonnees .tel1,
.footer-coordonnees .tel2,
.flex-address {
  display: flex;
}

.flex-horaires .horaires {
  /* display: flex; */
  /* justify-content: flex-start; */
  /* font-size: 16px; */
  float: left;
}

.flex-horaires .horaires i {
  padding: 0 10px 0 0;
  color: var(--color2);
  margin-right: 8px;
}



.footer {
  position: relative;
  height: auto;
  padding: 0;
  margin: 0 0 0 0;
}

.footer1_bg {
  position: relative;
  padding: 0em 0% 0;
  /*! background: var(--color0); */
}

.row.footer-coordonnes {
  padding: 5em 8% !important;
}

.footer1_bg .row {
  padding: 0px 9%;
  width: 100%;
  margin: 0;
}


.footer1_bg .row:nth-child(3) {
  /*! background: var(--color4); */
  width: 100%;
}

.footer1_bg .footer2_bg .row {
  padding: 3em 0% 2em;
}

.footer2_bg {
  z-index: 2;
  width: 100%;
  position: relative;
  margin: 0 !important;
}



.hsep {
  background: url(../images/hsep.jpg)repeat-x 50% 50%;
  position: relative;
  margin-top: -31px;
  height: 2px;
  width: 100%;
  margin-bottom: 28px;
}

/******************************/
.titreAbdelhamid {
  position: relative;
  font-size: 18px;
  color: var(--color1);
  text-transform: uppercase;
  margin: 0 0 20px 0;
  padding: 0;
}

.titreAbdelhamid span {
  color: var(--color0);
}

/************* menu footer ************/
.menu_footer_bg {
  background-color: transparent;
  padding: 0;
}

.menu_footer {
  display: table;
  text-align: center;
  /*! padding:20px 0; */
  margin: 0;
  line-height: normal;
  width: 100%;
}

.menu_footer>li {
  list-style: none;
  display: inline-block;
  margin: 5px 15px 5px 15px;
  position: relative;
  text-align: center;
  border-right: 0px solid var(--color3);
  line-height: 1.1;
  color: var(--color3);
}

.menu_footer>li:first-child:before {
  display: none;
}


.menu_footer li.active a,
.menu_footer li a:hover,
.menu_footer li a:focus {
  color: var(--color0);
  text-decoration: underline;
}

.menu_footer li:last-child a,
.menu_footer li:last-child {
  border-right: none;
}

/************* menu ref ************/
.menu_ref_bg {
  min-height: 150px;
}

.menu_referencement {
  text-align: justify;
  margin-bottom: 20px;
  min-height: initial;
  width: 100%;
  padding: 0;
  height: auto;
  line-height: 1px;
}

.menu_referencement li {
  line-height: 1.3;
  display: inline;
  list-style-position: inside;
}

.menu_referencement li:before {
  font-size: 18px;
  content: ' - ';
  color: inherit;
  margin: 0;
}

.menu_referencement li:first-child:before {
  display: none;
}




/************* signature ****************/
.signature {
  width: 100%;
  margin: 10px 0 7px;
  padding: 0;
  float: none;
  display: inline-block;
}

.signature_link {
  margin: 0;
  display: block;
  color: var(--color2);
  font-size: 12px;
  text-align: center;
  line-height: 10px;
  text-decoration: none;
  font-style: italic;
  z-index: 3;
}

.signature_link:hover {
  color: var(--color2);
  text-decoration: underline;
}

.signature_link img {
  width: auto;
  height: auto;
  margin: 0 auto;
  display: block;
}

.copyright-footer {
  margin-bottom: 0
}

#logoFD svg * {
  fill: #000000;
}

#logoFD svg {
  width: 220px;
}

/*************** CONTACT *************/
.form-group .label-rgpd strong,
.info-rgpd strong,
.info-rgpd a,
.info-rgpd a:visited {
  color: var(--color2);
}

label.checkbox.label-rgpd {
  font-size: 13px;
  text-align: left;
  color: var(--color6);
}




#contact-form {
  margin-top: 0;
  margin-bottom: 0;
  padding: 5em 10%;
}

.contact_footer_container .contact-footer-images {
  width: 50%;
  background: url(../images/image-contact.jpeg);
  background-position: bottom;
  background-size: cover;
  position: relative;
}

.contact_footer_container .contact-div {
  width: 50%;
  background: var(--color1);
  margin: 0;
  padding: 0;
  position: relative;
  border-bottom: 1px solid var(--color4);
}

/****** INPUTS ********/

input[name="captcha"],
.form-group {
  margin-bottom: 10px;
  position: relative;
}


/****** SELECT ********/


/****** LABEL ********/
label {
  font-size: 13px;
  color: var(--color4);
  font-weight: 100;
  padding-top: 0;
  margin: 0;
}



@media (min-width:768px) {
  .body-service-list-131 .banner {
    /*! background-position: top; */
  }

  .body-service-list-138 .banner {
    background-position: top;
  }

  .body-gallery-98 .banner {
    /*! background-position: top; */
  }

  .form-horizontal .control-label {
    text-align: left;
  }
}

/***** SUBMIT ****/
.form-group .btn-primary {
  float: left;
  width: 31%;
  width: 100%;
  line-height: 0;
  font-weight: normal !important;
}

.form-group .btn-primary:hover,
.form-group .btn-primary:active,
.form-group .btn-primary:focus {
  outline: none;
}

.form-group .btn-primary:active {
  color: var(--color4);
}

/***** FORM UTILES ****/
/* do not group these rules */
::-webkit-input-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
  font-size: 14px
}

::-moz-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
}

::-ms-input-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
}

.form-control:focus,
.form-control:active {
  background-color: var(--color0);
  border: none !important;
  color: var(--color6);
  padding: 4px 10px;
  outline: none;
  box-shadow: -2px 3px 5px -2px rgba(103, 74, 51, 0.12);
}

.required {
  color: var(--color4);
  font-size: 14px;
}

.form-actions {
  color: var(--color5);
  font-size: 13px;
  font-style: italic;
}

legend {
  font-size: 21px;
  font-size: 2.1rem;
  color: var(--color3);
}

input[name="captcha"] {
  width: 32.33% !important;
  margin-right: 2% !important;
  float: left;
  margin-bottom: 8px;
}

input[name="captcha"]+a {
  width: 32.33%;
  margin-right: 2%;
  background-color: var(--color0);
  /*display:inline-block;*/
  float: left;
  text-align: center;
  border: 1px solid var(--color1);
  margin-bottom: 0;
  border-radius: 0;
}

input[name="captcha"]+a+a {
  display: none;
}

img#captcha {
  width: auto;
  height: 100% !important;
  display: inline-block;
  background-color: transparent;
  box-shadow: none;
  border: none;
}

.form-group .btn-primary,
input[name="captcha"],
input[name="captcha"]+a,
.form-group .btn-primary,
.form-control {
  height: 50px !important;
}

/******** address **********/
.address span {
  text-align: center;
}

.address {
  position: relative;
  height: auto;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 50% 0;
  border-bottom: none;
  border-radius: 0;
  float: left;
  text-align: center;
  margin-bottom: 60px;
}



input::placeholder {
  color: #ffffff !important;
}

textarea::placeholder {
  color: #ffffff !important;
}

.address .h {
  font-size: 19px;
  color: var(--color3);
  margin: 0 0 30px;
}

.address p {
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: 0;
}

.address strong {
  color: var(--color2);
  font-size: 25px;
  line-height: 1;
  font-family: var(--font_family_1);
  text-align: center;
  text-transform: uppercase;
  position: relative;
  display: table;
  margin: auto;
  font-weight: 100 !important;
}

.address strong:after {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  margin: 10px auto;
  background-color: var(--color4);
}

.address p {
  margin-bottom: 20px;
  display: inline-block;
}

.address p img {
  margin: 0 8px 0 0;
  vertical-align: middle;
}

.contact .h {
  color: var(--color0);
  font-weight: 100;
  margin-bottom: 35px;
  width: 100%;
}



/* footer address */
.footer_address {
  position: relative;
  margin-bottom: 0;
}

.footer_address p,
.footer_address a {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--color1);
  font-weight: bold;
  letter-spacing: 0;
}

.footer_address p {
  padding-top: 13px;
}

/**************************************/
.body-gallery .main_bg {
  /*! overflow-x:hidden; */
}

/**********************************************************************/
/******** nav pills **********/
.nav-pills {
  margin-bottom: 40px;
  text-align: center;
}

.nav-pills>li+li {
  margin: 0 20px;
}

/*static*/
.nav-pills>li>a {
  display: block;
  background-color: transparent;
  float: left;
  width: 100%;
  white-space: nowrap;
  text-align: center;
  color: var(--color2);
  padding: 10px 60px;
  border: 1px solid var(--color2);
  font-size: 21px;
  position: relative;
  text-decoration: none;
  z-index: 3;
  margin-bottom: 14px !important;
  border-radius: 20px;
  font-weight: 100;
}

/*active*/
.nav-pills>li.active>a,
.nav-pills>li.active>a:hover,
.nav-pills>li.active>a:focus,
.nav-pills>li>a:hover,
.nav-pills>li>a:focus {
  color: var(--color0);
  background-color: var(--color2);
  border: 1px solid var(--color2);
  text-decoration: none;
}

/* isotop */


/********** gallery ***********/
/*.body-gallery .main_bg .section .img-responsive.blazy.imgLoaded {
  border: 4px solid var(--color0);
}*/

#gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding {
  margin: 0 10px 0 0;
}

.img-thumbnail {
  line-height: 1.4;
  background-color: transparent;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
  max-width: 100%;
  width: 100%;
  display: block;
  position: relative;
  opacity: 1;
  z-index: 1;
  border: 4px solid var(--color0);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  padding: 0;
  margin: 10px 0;
}

.img-thumbnail a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  margin: 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-image: url('../images/bx_loader.svg');
}

.img-thumbnail:hover {
  border: 4px solid var(--color0);
}

.img_thumbnail_item {
  border: 0 solid var(--color4) !important;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.img_thumbnail_item img {
  opacity: 0;
  width: 100%;
  height: 100%;
}

.img_thumbnail_item_mask {
  color: var(--color3);
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  border: 0 solid;
  background-color: var(--color1);
  background-image: url(../images/icon.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: .3s;
}

.img-thumbnail:hover .img_thumbnail_item_mask {
  opacity: 0.5;
  border: 0px solid;
  transition: .3s;
}

.img-responsive {
  background-size: cover;
}

.img_thumbnail_multiple,
.img_thumbnail_multiple a {
  height: 400px;
}

.img_thumbnail_figcaption {
  background-color: transparent;
}

.gallery ul.tab-content li {
  list-style: none;
}

/**********************************************************************/

/****************************** map ***********************************/



.contact-sign {
  position: absolute;
  width: 26%;
  height: 100%;
  bottom: 0;
  left: -118px;
  border: none;
}

.contact .contact-sign img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
  opacity: .2;
}


.contact-signature img {
  width: 100%;
  height: 100%;
  border: none;
}

.contact-content {
  /*! width: 66%; */
  /*! padding-right: 15%; */
}

.contact-content h2 {
  /*! font-size: 28px; */
  margin-bottom: 10px;
}

.contact-content p {
  font-size: 18px;
  line-height: 1.6;
}

.contact-content .warning {
  color: #d9534f;
  font-weight: bold;
}

.contact-content .emoji {
  font-size: 20px;
}


/**********************************************************************/

/********************* map ****************************/
.map {
  position: relative;
  margin-top: 30px;
  width: 100%;
  z-index: 0;
  border-radius: 6px;
  margin-bottom: 0;
}

.map iframe {
  width: 100% !important;
  height: 370px !important;
  border-radius: 0;
  text-align: center;
  float: left;
  margin-bottom: 0;
  border: 0 solid var(--color0);
}

a.btn.btn-primary.maplink {
  position: relative;
  right: 0;
  bottom: 0;
  margin-top: 0;
  margin-left: 0;
  z-index: 3;
  float: right;
  margin: 10px 0;
  width: 20%;
  display: none;
}

.datePickerZone .datepicker table tr td.active.active {
  color: var(--color5);
  border-color: inherit;
}

.rc-anchor-light.rc-anchor-normal {
  border: 0 !important;
}

.map-cont {
  margin-bottom: 100px;
}

.body-pageseo .contact {
  padding: 0 5%;
}

.datePickerZone .datepicker table tr td.new {
  color: var(--color5) !important;
}

/********************* PARTAGE ****************************/
.partage {
  width: 100%;
  margin: 25px 0 0;
  z-index: 3;
  position: relative;
  float: none;
  padding: 0;
  text-align: left;
  display: inline-block;
  vertical-align: text-bottom;
}

/******** ENCARTS **/
.encartBg {
  background-repeat: repeat;
  background-position: 0 0;
  padding: 30px 0 60px;
  background-color: var(--color0);
}

.encart {
  width: 100%;
  margin-bottom: 60px;
  position: relative;
  display: block;
  text-align: center;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: auto auto;
}

.encart p {
  font-size: 17px;
  color: var(--color1);
  display: inline-block;
  line-height: 1;
}

.encart img {
  margin-bottom: 20px;
  opacity: 0;
  width: auto;
}

.encart:focus:after,
.encart:hover:after,
.encart:focus,
.encart:hover {
  text-decoration: none;
  color: var(--color0);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
  transform: translateY(-5px);
}

.encart01 {
  background-image: url(../images/encart01.png);
}

.encart02 {
  background-image: url(../images/encart02.png);
}

.encart03 {
  background-image: url(../images/encart03.png);
}

.encart04 {
  background-image: url(../images/encart04.png);
}

.encart01:hover {
  background-image: url(../images/encart01_h.png);
}

.encart02:hover {
  background-image: url(../images/encart02_h.png);
}

.encart03:hover {
  background-image: url(../images/encart03_h.png);
}

.encart04:hover {
  background-image: url(../images/encart04_h.png);
}

/***********/
.encadrage {
  position: relative;
  padding: 30px;
}

.nopaddRight {
  padding-right: 0;
}

.nopaddLeft {
  padding-left: 0;
}

/**************************/
.activites {
  background-color: var(--color3);
  height: 343px;
}

.activites .h {
  font-size: 34px;
  color: var(--color0);
  background-color: var(--color3);
  padding: 30px 0;
  margin-bottom: 70px;
}

.activites .h span {
  color: var(--color3);
}

.activites p {
  font-size: 30px;
  color: var(--color0);
}

/**************************/
.opening {
  height: 115px;
  line-height: 138px;
  padding: 0;
  display: block;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-flow: row nowrap;
  -moz-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -webkit-align-items: stretch;
  -moz-align-items: stretch;
  align-items: stretch;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center;
}

.opening p {
  color: var(--color0);
  font-size: 18px;
  display: inline-block;
  line-height: normal;
  margin-bottom: 0;
}

.opening .img {
  float: left;
  margin-right: 30px;
  height: 100%;
  width: 110px;
  background-color: var(--color4);
  background-image: url(../images/horairesImg.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.opening .img img {
  opacity: 0;
  width: 100%;
  margin: 0;
}

/********************/
.partenaires {
  padding: 30px 0;
  margin-bottom: 0;
  background-color: var(--color4);
}

.partenaires .h {
  margin: 20px 0 50px;
}

.partenaires .list-inline {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 40px;
}

.partenaires .list-inline:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 43px;
  left: 0;
  bottom: -43px;
  background-image: url(../images/shadow2.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}

.partenaires .list-inline li {
  display: table-cell;
  text-align: center;
}

.partenaires .bx-controls {
  position: relative;
  width: 150px;
  float: right;
  height: 68px;
  margin-top: 14px;
}

.partenaires .bx-controls-direction a {
  top: 0%;
  width: 67px;
  height: 67px;
  border: none;
  box-shadow: none;
}

.partenaires .bx-controls-direction a.bx-prev {
  left: 0;
}

.partenaires .bx-controls-direction a.bx-next {
  right: 0;
}

.partenaires .slide span {
  font-size: 20px;
  color: var(--color1);
}

.partenaires .slide:hover span {
  color: var(--color3);
}

/**********************/
.interventionZone {
  background-image: url(../images/interventionZoneBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  height: 386px;
  padding: 110px 0 0;
  text-align: center;
  width: 100%;
}

.interventionZone span {
  display: inline-block;
  width: 36%;
  font-size: 18px;
  color: var(--color0);
}

.encartBg .h {
  font-size: 26px;
  text-align: left;
}

.encartBg .h span {
  color: var(--color4);
}

.encartBg p {
  font-size: 18px;
  color: var(--color3);
}

.encartBg3 {
  padding: 80px 0 0 20px;
  text-align: center;
  height: 415px;
}

.zone01 ul {
  padding-left: 21px;
  margin: 0 0 20px 0;
}

.zone01 ul li {
  color: var(--color2);
  font-size: 18px;
  list-style-type: square;
  line-height: 1.5;
  padding-left: 20px;
}

/*/
*/
.zone02 {
  text-align: center;
}

/*/
*/
.zone03 div {
  padding: 20px;
  position: relative;
  background-color: var(--color2);
}

.zone03 ul {
  padding: 0 0 0 0;
}

.zone03 ul li {
  list-style: none;
  color: var(--color1);
  font-size: 20px;
}

.zone03 div img {
  position: absolute;
  right: -20px;
  bottom: 0;
}

/*******/
.nosValeursBg {
  padding: 55px 110px 25px;
  text-align: center;
  position: relative;
}

.nosValeursBg:before {
  content: '';
  position: absolute;
  background-image: url(../images/nosValeursShadow.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  bottom: 0;
  right: 85px;
  width: 380px;
  height: 173px;
}

.nosValeurs {
  background-image: url(../images/nosValeurs.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% 100%;
  height: 290px;
}

.nosValeurs .h {
  font-size: 34px;
  color: var(--color0);
  padding: 40px 0 30px;
  margin-bottom: 38px;
}

.nosValeurs .h span {
  color: var(--color0);
}

.nosValeurs ul {
  text-align: left;
  line-height: 1.6;
  padding-left: 90px;
}

.nosValeurs li {
  font-size: 18px;
  color: var(--color0);
}

.nosValeurs li span {
  color: var(--color3);
}

.candidatureBg {
  padding: 60px 0;
  background-image: url(../images/candidatureBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  height: 187px;
  text-align: center;
}

.cv {
  padding: 10px 30px;
  -webkit-box-shadow: 3px 3px 6px var(--color4);
  -moz-box-shadow: 3px 3px 6px var(--color4);
  -ms-box-shadow: 3px 3px 6px var(--color4);
  -o-box-shadow: 3px 3px 6px var(--color4);
  box-shadow: 3px 3px 6px var(--color4);
}

.cv img {
  margin: 0 10px 0 0;
}

/*************************************/
.InfoResa {
  text-align: center;
  width: 100%;
}

.InfoResa li a {
  width: 220px;
}

.leading {
  text-align: center;
  color: var(--color0);
  font-size: 23px;
  margin-bottom: 70px !important;
}

/*******************************/
.Zone {
  position: relative;
  padding: 70px 0;
}

/*******************************/
.NosCartesBg {
  background-image: url(../images/NosCartesBg.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
}

.NosCartes {
  width: 100%;
  height: 328px;
  margin-bottom: 15px;
  text-align: center;
}

.NosCartes01 {
  background-image: url(../images/visNotreCarte.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: contain;
}

.NosCartes01 img {
  opacity: 0;
}

.NosCartes02 {
  padding: 35px 20px 0;
  border: 1px solid var(--color1);
}

.NosCartes02 .h {
  font-size: 24px;
  color: var(--color4);
  text-transform: uppercase;
  margin-bottom: 30px;
}

.NosCartes02 .h small {
  font-size: 15px;
  color: var(--color4);
  text-transform: uppercase;
  font-style: italic;
}

.NosCartesBg .background-white {
  padding: 15px 0;
}

.NosCartesLink {
  width: 100%;
  display: inline-block;
  text-align: center;
  padding: 15px 10px;
  font-size: 20px;
  background-color: var(--color3);
  border: 1px solid var(--color3);
  color: var(--color0);
  line-height: 1.1;
}

.NosCartesLink:focus,
.NosCartesLink:hover {
  background-color: var(--color0);
  border: 1px solid var(--color3);
  color: var(--color3);
  text-decoration: none;
}

.NosCartes02 ul {
  padding: 0;
}

.NosCartes02 ul li {
  list-style: none;
  font-size: 16px;
  text-transform: uppercase;
  color: var(--color3);
  margin-bottom: 22px;
  line-height: 1.2;
}

.NosCartes02 ul li small {
  font-size: 80%;
  text-transform: none;
  display: inline-block;
  line-height: normal;
}

.NosCartes02 ul li span {
  display: inline-block;
  margin-bottom: 5px;
}

/**** carte mobile ******/
.carte.section .group-mobile .group {
  width: 100%;
  margin-bottom: 0px;
}

.carte.section .group-mobile .group .titreetdescription {
  padding: 10px;
  /*! background-color: var(--color6); */
  color: var(--color0) !important;
}

.carte.section .group-mobile .group .titreetdescription * {
  /*! color: var(--color2) !important; */
}

.carte.section .group-mobile .group .group-title {
  text-align: center;
}

.carte.section .group-mobile .group .blazy {
  width: 100%;
  overflow: hidden;
}

.carte.section .group-mobile .group .blazy a {
  position: relative;
  max-height: 130px;
}

.carte.section .group-mobile .group .prices {
  display: block;
  width: 100%;
  text-align: center;
}

.carte.section .group-mobile .group .prices li {
  display: inline-block;
  margin-bottom: 0;
}

.carte.section .group-mobile ul {
  padding: 0;
  margin: 0 0 20px 0;
  float: left;
  width: 100%;
}

.carte.section .group-mobile .group-title {
  width: 100%;
}

.carte.section .group-mobile .group .item {
  margin-bottom: 0;
  text-align: center;
  padding: 0;
  border-radius: 5px;
  overflow: hidden;
}

.carte.section .group-mobile .group+hr {
  width: 70%;
  background-color: var(--color2);
  margin: 0px auto 20px;
}

.carte.section .group-mobile .group .item .price {
  width: auto;
  padding: 15px 5px;
}

.carte.section .group-mobile .group .item .item-description,
.carte.section .group-mobile .group .item small {
  text-align: center;
}

.carte.section .group-mobile .group .price:after {
  background-color: var(--color3);
}

/****************************************/
.NosPlanDAccesBg {
  height: auto;
  padding: 6em 10%;
  /*! background: var(--color0); */
  position: relative;
  z-index: 1;
  display: none;
}

.body-contact .NosPlanDAccesBg {
  padding: 0;
  padding-top: 6em;
  display: block;
}

.NosPlanDAcces {
  position: relative;
  text-align: center;
  padding: 0 0;
  width: 100%;
  /*! height: 81vh; */
}

.plan-d-acces {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.NosPlanDAcces02 {
  float: right;
  padding: 75px 27px;
  /*! background: var(--color1); */
  position: relative;
  z-index: 1;
}

.NosPlanDAcces01 {
  float: left;
  position: relative;
  z-index: 1;
  height: 53vh;
}

.NosPlanDAcces01 iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  border: none;
  left: 0;
  margin-left: 0;
  z-index: 1;
}

.coordonnée-zone:before {
  content: '';
  width: 100%;
  height: 100%;
  background: var(--color0);
  position: absolute;
  top: 0;
  left: 0;
  opacity: .8;
}

.coordonnée-zone {
  position: absolute;
  height: 94%;
  width: 450px;
  background: url(../images/bg-bague-2.jpeg);
  background-position-x: 0%;
  background-position-y: 0%;
  background-repeat: repeat;
  background-size: auto;
  z-index: 999;
  top: 50%;
  transform: translateY(-50%);
  right: 10%;
  border-radius: 8px;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 16px;
  font-family: var(--font_family_2);
  font-weight: normal;
  overflow: hidden;
  background-position: center;
  /*! background: var(--color3); */
}

.row.plan-maps:before {
  content: "";
  position: absolute;
  width: 104%;
  height: 115%;
  /*! border: 2px solid var(--color3); */
  left: -19px;
  bottom: 30px;
  z-index: 1;
  top: -21px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.NosPlanDAcces02 p {
  font-size: 19px;
  color: var(--color0);
}

.body-contact .NosPlanDAccesBg .row {
  display: flex;
}

.contact-plan-map {
  width: 50%;
  /*! height: auto; */
}

.contact-info {
  width: 50%;
  background: var(--color4);
}

.NosPlanDAcces02 .h.hicon {
  font-size: 34px;
  color: var(--color0);
  margin-bottom: 30px;
  font-weight: normal;
  text-transform: none;
}

.NosPlanDAcces.NosPlanDAcces02 .fas {
  display: block;
  font-size: 15px;
  margin: 0 0 12px;
  transform: rotate(0deg);
}

.NosPlanDAcces02 p strong {
  font-weight: 100;
}

/********************************/
.nosRealisations {
  background-image: url(../images/nosRealisations.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-color: var(--color2);
  text-align: center;
  overflow: hidden;
  z-index: 0;
}

.nosRealisations .container:before {
  content: '';
  position: absolute;
  width: 88%;
  left: 50%;
  margin-left: -44%;
  height: 100%;
  z-index: -1;
  border: 2px solid var(--color0);
  display: block;
}

.nosRealisations .h {
  font-size: 24px;
  color: var(--color0);
  margin: 40px 0 40px;
}

.nosRealisations .bx-viewport {
  margin-bottom: 30px;
}

.nosRealisations .leading {
  margin-bottom: 40px !important;
}

.nosRealisations a.seeMore {
  display: inline-block;
  padding: 12px 60px 8px 60px;
  position: relative;
  bottom: 0;
  margin-bottom: 30px;
  border: 2px solid var(--color0);
  color: var(--color0);
}

.nosRealisations a.seeMore:hover {
  border: 2px solid var(--color0);
  background-color: var(--color0);
  color: var(--color2);
}

.nosRealisations .bx-controls-direction a {
  width: 15px;
  height: 25px;
  background-color: transparent;
  opacity: 1;
}

.nosRealisations .bx-controls-direction a.bx-next {
  background-image: url(../images/next.png);
  right: 0;
}

.nosRealisations .bx-controls-direction a.bx-prev {
  background-image: url(../images/prev.png);
  left: 0;
}

.nosRealisations .bx-controls-direction a.bx-next:hover,
.nosRealisations .bx-controls-direction a.bx-prev:hover {
  opacity: .6;
}

.nosRealisations .bx-controls-direction {
  width: 34px;
  float: right;
  right: 73px;
  position: relative;
}

.nosRealisations ul {
  padding: 0;
  list-style: none;
  margin-bottom: 30px;
  float: left;
  width: 100%;
}

/********************************/
.ReservationBg-2 {
  position: relative;
  padding: 5em 3% 5em;
  background: var(--color1);
}

.ReservationBg-2 .h,
.ReservationBg-2 .datepicker-container .h {
  /*! text-transform:none; */
  color: #ffffff;
  padding-bottom: 10px;
  font-size: 35px;
  font-family: var(--font_family_2);
  position: relative;
  /*! width: fit-content; */
}

.ReservationBg-2 .row {
  /*! background: url(../images/presentation.jpeg); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
}



.body-contact .ReservationBg {
  padding: 0;
}



.ReservationBg .row .col-lg-6:nth-child(2) {
  /*! background: var(--color1); */
}


.datepicker-container .h {
  text-transform: none;
  font-size: ;
  color: var(--color4);
  padding-bottom: 45px;
  font-size: 36px;
  font-family: var(--font_family_2);
  position: .2em;
  width: fit-content;
  right: ;
  top: ;
  letter-spacing: .2em;
}

.datePickerZone .datepicker table tr th {
  color: var(--color5);
}

.body-contact .ReservationBg {
  background: none;
}

.reservation-bloc {
  width: 50%;
  background: #ffffff;
}

.body-contact .ReservationBg .row {
  display: flex;
}

.calendrier-bloc {
  width: 50%;
  padding: 0 51px;
}

.Reservation-Bg {
  background: var(--color3);
  padding: 0em 0;
  /*! padding-top: 3em; */
  display: flex;
}

.bg-calendar img {}

.box-calendar {
  width: 70%;
}

w {}

.box-img-calendar {
  width: 50%;
  background: url(../images/bg-rdv.jpeg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 0px 20px 20px 0px;
  display: none;
}

.datePickerZone .datepicker table tr td.today.day {
  color: var(--color0) !important;
  background-color: var(--color4) !important;
}

.datePickerZone .datepicker table tr td.today:hover:before {
  background: var(--color0);
  border-color: var(--color0);
  color: var(--color3);
}

.datePickerZone .datepicker table tr th.next i,
.datePickerZone .datepicker table tr th.prev i {
  background: var(--color5);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 10px;
}

.reserv-container,
.datepicker-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 30px;
}

.reserv-container {
  z-index: 1;
  padding: 65px 0;
  border-radius: 20px;
}


.img-reservation img {
  width: 65vh;
}

.box-carte {
  width: 45%;
  background: var(--color5);
}

.box-img-carte {
  width: 40%;
  margin-bottom: 0;
  margin-right: -3vw;
  z-index: 1;
  background: url(../images/formule-bg.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-reservation {
  /*! display: flex; */
  /*! justify-content: center; */
  /*! align-items: center; */
  /*! background: ; */
  /*! background: url(../images/formule-bg.png); */
  /*! background-position-x: 0%; */
  /*! background-position-y: 0%; */
  /*! background-repeat: repeat; */
  /*! background-size: auto; */
  /*! background-size: 101%; */
  /*! background-repeat: no-repeat; */
  /*! background-position: center; */
  /*! border-radius: ; */
}

.reserv-container h3,
.datepicker-container h3 {
  /*! margin-top: 45px; */
}



.ReservationText .h {
  font-size: 18px;
  color: var(--color3);
  text-transform: uppercase;
}


#index .ReservationText p {
  font-size: 16px;
  /*! text-align: left; */
  margin-bottom: 0;
}

.body-contact-100 .ReservationBg {
  position: relative;
  padding: 0 0 0;
}

.theReservationText {
  position: relative;
  width: auto;
  height: auto;
  z-index: 0;
  background: var(--color3);
  padding: 100px 56px;
}

.body-contact .theReservationText {
  /*! background: url(../images/bande3.png); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  background: #ffffff;
}

.body-contact .theReservationText:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  /*! background: var(--color4); */
  opacity: .8;
  /*! z-index: -1; */
  display: none;
}

.body-contact .ReservationBg .theReservationText .h {
  /*! color: var(--color0); */
}

.ReservationBg .theReservationText .h {
  text-align: center;
  font-size: 24px;
  color: var(--color4);
  border: none;
  text-transform: uppercase;
  line-height: 1.5;
}

.theReservationText p {
  /*! color: var(--color0); */
  font-size: 16px;
}

.theReservationText ol {
  padding-left: 10px;
  /*! color: var(--color0); */
  font-size: 16px;
  margin-left: 10px;
}

.theReservationText ol li {
  position: relative;
}

.body-contact-100 .section {
  margin-bottom: 0 !important;
}

/**************************/
.datePickerZone .datepicker table tr td.today:before {
  color: var(--color2);
  background-color: transparent;
  border-color: var(--color0);
}

.datePickerZone .datepicker table tr td.disabled,
.datePickerZone .datepicker table tr td.disabled:hover {
  color: var(--color4) !important;
  cursor: no-drop;
  opacity: 0.4;
}

.datePickerZone .datepicker table tr td.day:hover,
.datePickerZone .datepicker table tr td.focused {
  color: var(--color0) !important;
}

.datePickerZone .datepicker table tr td.day {
  color: var(--color2);
  border: 1px solid var(--color4);
  padding: 20px 55px;
}

.body-contact .datePickerZone .datepicker table tr td.day {
  color: var(--color2);
  border: 1px solid var(--color4);
  padding: 25px 20px;
}

.datePickerZone .datepicker table tr td.old {
  color: var(--color2);
  opacity: .6;
}

.datePickerZone .datepicker table tr td::before {
  border-radius: 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin-left: auto;
  margin-top: 0;
}

.datePickerZone .datepicker table tr td.new.day {
  color: var(--color2);
  opacity: .9;
}

.datePickerZone .datepicker table tr td.day:hover:before,
.datePickerZone .datepicker table tr td.focused:before {
  background: var(--color5);
  border-radius: 0;
}

.datePickerZone .datepicker .datepicker-switch {
  color: var(--color0);
  background: var(--color4);
  border-radius: 0;
}

.datePickerZone .datepicker .datepicker-switch,
.datePickerZone .datepicker .prev,
.datePickerZone .datepicker .next,
.datePickerZone .datepicker tfoot tr th {
  color: var(--color0);
}

.datePickerZone .datepicker table tr td.active.active:before {
  background: var(--color5);
}

.datePickerZone {
  padding: 20px 0px;
}

.Reservation-Bg .datePickerZone {
  padding: 0px 0px;
}

.datepicker-inline {
  width: 100%;
}

.beforeFooter {
  position: relative;
  padding: 20px 0 0;
  background-color: var(--color0);
  text-align: center;
  background-image: url(../images/beforeFooter.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
}

.beforeFooter .h {
  font-size: 29px;
  color: var(--color2);
  margin-bottom: 10px;
  margin-top: 30px;
}

.beforeFooter p {
  font-size: 18px;
  color: var(--color2);
  margin-bottom: 50px;
}

.beforeFooter ul {
  text-align: left;
  padding-left: 20px;
}

.beforeFooter ul li {
  list-style-image: url(../images/puce.png);
  font-size: 20px;
  color: var(--color4);
  line-height: 40px;
}

.beforeFooter .storeLinks {
  padding: 15px;
  display: inline-block;
}

.storeLinksBg {
  margin: 20px 0;
}

.beforeFooterImg02 {
  float: right;
}

.qrCode {
  position: relative;
  top: -20px;
}

/***************************/
.modal-content label.checkbox.label-rgpd span.text-warning {
  position: absolute;
  bottom: -20px;
}

.modal {
  z-index: 9999;
  font-size: 16px;
  color: var(--color4);
}

.modal-backdrop {
  z-index: 0;
}

.modal-content {
  border-radius: 0px;
  padding: 30px;
  background: var(--color1);
}

.modal-content .h {
  margin-bottom: 50px;
  font-size: 23px;
  color: var(--color2);
  text-transform: none;
  text-align: center;
}

.modal-content .h:after {
  display: none;
}

.modal-content .form-control {
  height: 50px;
  line-height: 1;
  line-height: 48px \9;
  padding: 0 0 0 12px;
  box-shadow: none;
  border-radius: 0;
  border: 1px solid var(--color5);
  background-color: transparent;
  font-size: 14px;
  line-height: normal;
}

.modal-content .form-group:after {
  clear: both;
  display: table;
  content: " ";
}

.modal-content input[name="captcha"]+a,
.modal-content .form-control {
  height: 46px !important;
}

.modal-content input[name="captcha"] {
  width: 100% !important;
  margin-right: 2%;
}

.modal-content input[name="captcha"]+a {
  width: 100% !important;
  text-align: center;
}

.modal-content input[name="captcha"]+a img {
  width: auto !important;
  height: 100% !important;
  margin: 0 auto;
}

.modal-content textarea.form-control {
  padding: 20px 10px;
  box-shadow: none;
  border-radius: 0;
  border: 1px solid var(--color5);
  resize: vertical;
  height: 150px !important;
}

.modal-content input[type=number] {
  padding-right: 0px;
}

.modal-content label {
  padding-left: 0px;
  font-size: 15px;
  padding-top: 13px;
  font-weight: normal;
  margin-top: 0;
  color: var(--color4);
  display: block;
}

.modal-content .btn-default {
  padding: 14px 140px 10px 140px;
  background: var(--color0);
  border: 1px solid var(--color4);
  text-transform: uppercase;
  color: var(--color4);
  border-radius: 0px;
  font-size: 14px;
  text-decoration: none;
  transition: all 400ms ease;
}

.modal-content .btn-default:hover {
  color: var(--color0);
  background: var(--color4);
}

.modal-content .description {
  margin: 20px 0 0 0;
  font-size: 14px;
}

.modal-content .obligatoire {
  font-size: 9px;
  padding: 10px 0 0 0;
  margin-bottom: 20px;
  font-style: italic;
  color: var(--color3);
}

.modal-content .form-group {
  margin-bottom: 20px;
}

.actuAndNewsletterBg {
  padding: 60px 1%;
  background-color: var(--color0);
  display: none;
}

.NewsletterBg p:nth-child(1) {
  font-size: 30px;
  font-weight: normal;
  font-family: var(--font_family_1);
  letter-spacing: 1px;
  color: var(--color6);
}

.block #newsletter_form input[type="text"] {
  color: var(--color2);
  border-color: var(--color2);
  border-right: 0;
}

.block #newsletter_form input[type="submit"] {
  padding: 10px 13px 8px;
}

.actuAndNewsletter-container {
  position: relative;
  width: 100%;
  height: 100%;
  background: url(../images/bg-bague-1.jpeg);
  padding: 4px 40px;
  display: flex;
  align-content: center;
  justify-content: space-around;
  align-items: center;
  z-index: 1;
  background-size: contain;
  background-repeat: no-repeat;
  border-radius: 20px;
}

.actuAndNewsletter-container:before {
  color: ;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../images/bg-bague-4.jpeg);
  position: absolute;
  opacity: .8;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right;
}

.modal-header {
  padding: 0;
  border-bottom: 0px solid var(--color1);
  min-height: 16.42857143px;
}

.modal-header .btn {
  margin-top: 0;
  background-color: transparent;
  font-size: 25px;
  color: var(--color3);
  padding: 0;
  top: -6px;
  float: right;
  margin-right: 10px;
}

.modal-header .btn i.fa.fa-times {
  font-style: normal;
  float: right;
  font-size: 19px;
  color: var(--color5);
}

.modal-header .btn:focus,
.modal-header .btn:hover {
  color: var(--color3);
}

.parallax {
  position: relative;
  width: 100%;
  height: 100%;
}

.parallax .banner img {
  position: relative;
  top: -117%;
}

#lol {
  position: relative;
}

#modal-calendar .modal-header,
#modal-evenement .modal-header {
  margin-bottom: 40px;
  border-bottom: 1px solid var(--color3);
}

#modal-calendar .datePickerZone {
  padding: 0 0 30px 0;
}

#modal-calendar .modal-footer {
  border-top: 0;
  text-align: center;
}

/****************/
.body-contact-100+#modal-evenement .modal-header .btn-prev,
.body-page-1+#modal-evenement .modal-header .btn-prev {
  display: none;
}

/****************/
.spContainer {
  width: 100%;
  height: 668px;
  position: relative;
}

.sp {
  width: 100%;
  height: 668px;
  top: 0;
  left: 0;
  position: absolute;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}

.sp01 {
  background-image: url('../images/sp01.png');
  z-index: 2;
}

.sp02 {
  background-image: url('../images/sp02.png');
  z-index: 1;
}

.sp03 {
  background-image: url('../images/sp03.png');
  z-index: 0;
}

.help-block {
  font-size: 1.2rem;
}

.help-block {
  color: var(--color3);
}

/**/
.costumRadio {
  padding-top: 13px;
  padding-bottom: 10px;
  height: 50px;
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: initial;
}

.form-horizontal .radio-inline {
  margin-top: 3px;
}

.menu_referencement h2 {
  text-transform: uppercase;
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 600;
}

.contact {
  margin-top: 20px;
  /*! background: var(--color0); */
  padding: 0 3%;
}

/* nos Services/* ****************************** */
.btn-service {
  text-align: center;
  margin: 15px 0;
}

.isServiceList .content {
  padding: 0;
  width: 100%;
}

.nosServicesBg {
  padding-top: 40px;
  padding-bottom: 40px;
  position: relative;
  background-color: var(--color1);
  color: var(--color0);
}

.nosServicesBg .h {
  color: var(--color0);
  text-align: left;
}

.nosServicesBg .hicon:after {
  background-color: transparent;
  margin: 0 !important;
}

.nosServicesBg .content {
  padding: 40px 0;
  float: left;
  background-color: transparent;
}

.linkList {
  padding: 0;
  margin: 10px 0 0 0;
  list-style: none;
  float: left;
}

.linkList li {
  display: block;
  width: 100%;
  float: left;
}

.linkList li a {
  font-size: 18px;
  color: var(--color2);
  padding: 10px 15px 10px 50px;
  background-image: url(../images/r_arr_h.png);
  background-color: var(--color0);
  background-repeat: no-repeat;
  background-position: 15px 50%;
  display: inline-block;
  margin: 0 0 19px 0;
  border: 1px solid var(--color0);
  min-width: 90%;
  text-align: left;
}

.linkList li a:hover {
  background-image: url(../images/r_arr.png);
  color: var(--color0);
  border: 1px solid var(--color0);
  background-color: var(--color2);
  text-decoration: none;
}

.body-service-list .fluid-contenu .container {
  width: 100%;
  max-width: 100%;
}

/**/


.btn-service a:before {
  background: transparent;
}

.btn-service a:hover:before {
  background: var(--color3);
}


a.bouton-principal .btn-horizontal-deco::before {
  background: var(--color4)
}

.infinite-scroll.bas-galerie {
  text-align: center;
  margin: 52px 0;
}

a.bouton-principal .btn-horizontal-deco::after {
  background: var(--color4)
}

a.bouton-principal .btn-verticale-deco::before {
  background: var(--color4)
}

a.bouton-principal .btn-verticale-deco::after {
  background: var(--color4)
}

.row.ligne-photos.retrait.centerservice2 {
  margin: 0 16% !important;
}

.row.ligne-photos.retrait.centerservice {
  margin: 0 33% !important;
}

.body-service-list .services .tableGrid.row .h {
  text-align: left;
  margin-bottom: 26px !important;
  margin: 0;
}

.body-service-list .services .tableGrid.row .h:after {
  display: none;
}

.body-service-list .services .h {
  text-align: center;
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .service_sub_title {
  font-size: 22px;
  color: var(--color5);
  padding: 0 0 5px;
}

.body-service-list .services .tableGrid.row .bodyContent {
  text-align: left;
  padding: 4vw 2vw;
  height: 50vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.isServiceList #main {
  width: 100%;
}

.bodyContent p {
  margin-bottom: 30px;
  text-align: left;
}

.body-service-list .main_bg {
  padding-bottom: 0;
  padding-bottom: 80px;
  min-height: 600px;
  z-index: 1;
  position: relative;
}

.body-service-list .bodyContent .h {
  text-align: initial;
}

.service_sub_title {
  font-size: 19px;
  color: var(--color5);
  padding: 12px 0 5px;
}

.nosServicesBg ul {
  padding: 0;
}

.nosServicesBg .bx-wrapper {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.nosServicesBg .bx-viewport {
  position: absolute !important;
  height: 100% !important;
  width: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.nosServicesBg .mainSectionSlider {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.services .bx-wrapper {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.services .bx-viewport {
  position: absolute !important;
  height: 100% !important;
  width: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.services .mainSectionSlider {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  padding: 0;
  list-style: none;
}

.services .mainSectionSlider .blazy {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /*! border: 4px solid var(--color0); */
  background-position: center;
}

.nosServicesBg .bx-viewport li,
.services .bx-viewport li {
  height: 100%;
  list-style: none;
}

.services .bx-pager,
.mainSectionSliderBg .bx-pager {
  z-index: 99;
}

.services .tableGrid>.table-row:before {
  content: '';
  position: absolute;
  width: 23%;
  height: 125%;
  background: var(--color5);
  left: -50px;
  top: 50%;
  z-index: 0;
  transform: translateY(-50%);
}

#modal-evenement #captchaReservation {
  width: 302px;
  margin: 0 auto;
}

button#submitReservation {
  margin-top: 10px;
  border: 1px solid var(--color2);
}

button#submitReservation:hover {
  border-color: var(--color1);
}

button#submitReservation:hover {
  background: var(--color3);
}

.modal-header strong {
  font-size: 19px;
  color: var(--color2);
}

.bootstrap-timepicker .input-group-addon {
  cursor: pointer;
  background: transparent;
  border: 0.5px solid var(--color5);
  border-left: transparent;
}

span.input-group-addon {
  background: transparent;
  border: 0.5px solid var(--color5);
}

.input-group.date.datepicker2 input,
.input-group.bootstrap-timepicker.timepicker input {
  cursor: pointer !important;
}

.g-recaptcha {
  display: inline-block;
  margin: 0 auto;
}

.text-warning {
  color: var(--color5) !important;
  display: block;
  margin-top: 1px;
  margin-bottom: 0;
  font-style: italic;
  font-size: 12px;
}

button.btn.btn-prev {
  display: none;
}

.alert {
  font-size: 14px;
  display: none;
}

/* Bouton remonter */
.remonter {
  position: fixed;
  z-index: 9999;
  display: none;
  bottom: 30px;
  right: 30px;
  width: 60px;
}


.remonter button:hover {
  opacity: 0.8;
  filter: alpha(opacity=80)
}

.remonter button svg circle {
  fill: var(--color0);
}

.remonter button svg path {
  fill: var(--color2);
}

.g-recaptcha-d-table {
  display: table;
  width: 100%;
}

.contact .g-recaptcha {
  margin-right: 0;
  background-color: var(--color0);
  display: table-cell;
  vertical-align: top;
  float: left;
  text-align: center;
  margin-bottom: 0;
  border-radius: 0;
  position: relative;
  z-index: 1;
}

.contact .form-actions {
  text-align: left;
  margin-top: -112px;
  position: absolute;
}

.g-recaptcha {
  display: inline-block;
  margin: 0 auto;
}

.contact .form-group .btn-primary {
  float: right;
  width: 30%;
  vertical-align: top;
  display: table-cell;
  line-height: 0;
  font-weight: normal !important;
  color: var(--color2);
  margin-top: 18px;
  height: 62px !important;
  background: var(--color5);
  border-color: var(--color2);
  position: relative;
}

.form-group .btn-primary:hover {
  background-color: var(--color3);
  border: 1px solid var(--color4);
  color: var(--color2);
}

.body-pageseo .btn-primary {
  /*! padding: 2em 1em; */
  /*! width: 24% !important; */
  /*! min-width: 164px; */
}

/**********responsive**********/
@media (min-width:768px) {
  .modal-lg {
    width: 900px;
  }
}

@media (min-width:1200px) {

  .modal-content label.visible {
    display: block;
  }
}

/* Landscape tablet and dated desktop */
@media (min-width:980px) and (max-width:1199px) {
  .menu_footer li a {
    font-size: 14px;
  }

  .navbar {
    padding: 0;
  }

  .navbar-nav>li>a {
    padding: 7px 10px;
    font-size: 18px;
  }

  .NewsletterBg {
    padding: 90px 20px 76px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .carte p.header {
    margin-bottom: 0;
  }

  .carte .labels {
    margin-top: 0;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 290px;
  }

  .nav-pills li,
  .nav-pills>li+li {
    margin: 0;
  }

  .body-gallery .main_bg .blockCenter {
    width: 118vw;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .modal-lg {
    width: 900px;
  }

  .hicon,
  h1,
  .h1 {
    font-size: 25px;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }
}

.datePickerZone .datepicker table tr td.today:active:hover:before,
.datePickerZone .datepicker table tr td.today.active:hover:before,
.open>.dropdown-toggle.datepicker table tr td.today:hover:before,
.datePickerZone .datepicker table tr td.today:active:focus:before,
.datePickerZone .datepicker table tr td.today.active:focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:focus:before,
.datePickerZone .datepicker table tr td.today:active.focus:before,
.datePickerZone .datepicker table tr td.today.active.focus:before,
.open>.dropdown-toggle.datepicker table tr td.today.focus:before,
.datePickerZone .datepicker table tr td.active:active:before,
.datePickerZone .datepicker table tr td.active.highlighted:active:before,
.datePickerZone .datepicker table tr td.active.active:before,
.datePickerZone .datepicker table tr td.active.highlighted.active:before,
.open>.dropdown-toggle.datepicker table tr td.active:before,
.open>.dropdown-toggle.datepicker table tr td.active.highlighted:before {
  background: var(--color0);
  color: var(--color3);
  border-color: var(--color0);
}

/* Portrait tablet to landscape and desktop */
@media (max-width:991px) {
  .flex-seoContain .seo-content p {
    padding-top: 27px;
  }

  .services .tableGrid>.table-row:before {
    display: none;
  }

  .footer-coordonnees .col-lg-5 {
    margin-bottom: 46px;
  }

  .copyright-footer {
    margin-bottom: 0;
    text-align: center;
  }

  .scrollbars {
    margin: 15px 0 0;
    height: 160px;
    position: relative;
    float: left;
    width: 100%;
    padding: 0 35px 0px 0px;
    overflow: auto;
  }

  .footer1_bg {
    position: relative;
    padding: 30px 3% 0px;
  }

  .actuAndNewsletter-container:before {
    color: ;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url(../images/bg-bague-4.jpeg);
    position: absolute;
    opacity: .8;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right;
  }

  .NosPlanDAcces02 .h.hicon {
    font-size: 1em !important;
  }

  .coordonnée-zone {
    position: absolute;
    height: 84%;
    width: 323px;
    background: url(../images/bg-bague-2.jpeg);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    z-index: 999;
    top: 50%;
    transform: translateY(-50%);
    right: 10%;
    border-radius: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 16px;
    font-family: var(--font_family_2);
    font-weight: normal;
    overflow: hidden;
    background-position: center;
    /*! background: var(--color3); */
  }

  #main {
    padding: 9em 3%;
    width: 100%;
  }

  .ReservationBg-2 {
    position: relative;
    padding: 9em 3%;
    background: var(--color0);
  }

  .ReservationBg .h,
  .datepicker-container .h {
    text-transform: none;
    font-size: 25px !important;
    color: var(--color4);
    padding-bottom: 23px;
    font-size: 6em;
    font-family: var(--font_family_2);
    /*! position: absolute; */
    /*! width: fit-content; */
    /*! right: 1%; */
    /*! top: -97px; */
  }

  .Reservation-Bg {
    background: var(--color3);
    padding: 0em 0;
    /*! padding-top: 3em; */
    display: flex;
    flex-direction: column;
  }

  .box-img-calendar {
    width: 100%;
  }

  .ReservationBg-2 .h,
  .ReservationBg-2 .datepicker-container .h {
    margin-top: -38px;
    /*! right: 27%; */
    transform: ;
  }

  .box-carte {
    width: 100%;
  }

  .box-img-carte {
    width: 100%;
  }

  .ReservationBg-2 .row {
    /*! background: url(../images/presentation.jpeg); */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color3);
    flex-direction: column-reverse;
  }

  .dream-img {
    width: 94%;
    background: url(../images/bande-2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;

    background-position: right;
  }

  .dream-liste {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 23em 3% 9em;
  }

  .dream-content {
    width: 76%;

    padding: 2em 2em 1em 2em;
    bottom: auto;
    top: 160px;
  }

  .flex-head-txt {}

  .section-numbers .container {}

  .fact-area.chiffres-section {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 22px 0px 5em;
  }

  .fact-area.chiffres-section .row {
    width: 100%;
  }

  .section-numbers .container {
    padding: 0em 0% 0em;
  }

  .fact-card h2 {
    /*! font-size: 3em; */
  }

  .slide-parallax {
    height: auto !important;
  }

  .body-page .bannier {
    height: auto !important;
  }

  .body-page .header {
    height: 30vh !important;
  }

  .reservation-bloc {
    width: 100%;
  }

  .box-calendar {
    width: 100%;
    padding: 34px 25px 0;
  }

  .calendrier-bloc {
    width: 100%;
  }

  .body-contact .ReservationBg .row {
    display: flex;
    flex-direction: column-reverse;
  }

  .body-page .bannier {
    margin-top: 0;
  }

  .flex-seoContain {
    flex-wrap: wrap;
  }

  .flex-seoContain .seo-content {
    width: 100%;
    background: transparent;
    padding: 0 3% 3em;
  }

  .flex-seoContain .seo-form {
    width: 100%;
    padding: 1em 3% 10em;
  }

  .img-seo img {
    width: 100%;
    height: auto;
  }

  a.imagecont.noflicker.img1 {
    float: inherit;
    margin: 0 0 10px !important;
  }

  .NosPlanDAccesBg {
    height: auto;
    padding: 14px 2%;
  }

  .NosPlanDAcces01 {
    height: 70vh;
    margin-bottom: 15px;
  }

  .NosPlanDAcces02 {
    height: auto;
    padding: 5px 20px 10px;
    display: flex;
    flex-direction: column;
  }

  .note-avis {
    flex-direction: column
  }

  .contact .form-group .btn-primary,
  .contact .formulaire .form-group input.btn-primary {
    width: 100%;
    margin-top: 8px;
    float: none
  }

  .form,
  .body-pageseo .contact,
  #contact-form {
    padding: 0 0%;
    margin: 0;
  }

  #gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding {
    margin: 0;
  }

  .visible-xs {
    display: block !important
  }

  .hidden-xs {
    display: none !important;
  }
}

@media (min-width:768px) and (max-width:979px) {
  .services-home {
    padding: 60px 0 20px !important
  }

  .engegements-content {
    padding: 30px 20px !important
  }

  .head-img.img-1,
  .head-img.img-2 {
    width: 100% !important;
    right: 0 !important;
    height: 200px;
    top: 0;
    margin: 0 5px;
  }

  .nosServicesBg .mainSectionSlider .show,
  .nosServicesBg .mainSectionSlider .blazy,
  .services .mainSectionSlider .show,
  .services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
  }

  .nosServicesBg .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .row.ligne-photos.retrait.centerservice2 {
    margin: 0 0 !important;
  }

  .row.ligne-photos.retrait.centerservice {
    margin: 0 20% !important;
  }

  .nosServicesBg .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none;
  }

  .nosServicesBg .bx-viewport li,
  .services .bx-viewport li {
    height: 100%;
    list-style: none;
  }

  .services .bx-pager,
  .mainSectionSliderBg .bx-pager {
    z-index: 9999;
  }

  .modal-content label {
    padding-top: 10px !important;
  }

  .menu_referencement h2 {
    text-align: center;
    font-size: 20px;
  }

  .hicon,
  h1,
  .h1,
  .h {
    font-size: 4em !important;
  }

  h2,
  .h2 {
    font-size: 18px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .NewsletterBg {
    padding: 50px 20px 36px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 290px;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .vis01 {
    width: 60%;
    margin: 0 auto;
    display: block;
    float: none;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
    background-color: var(--color2);
  }

  .beforeFooter {
    background-repeat: repeat;
  }

  .body-gallery .main_bg .blockCenter {
    width: 100%;
    padding: 0;
    margin-left: 0;
    left: 0;
    right: 0;
    display: block;
    float: left;
    position: relative;
    padding: 0 1%;
  }

  .body-gallery .main_bg {
    overflow-x: hidden;
    padding: 0;
  }

  .news .item .h {
    margin: 0 0 20px 0;
  }

  .modal-lg {
    width: 740px;
  }

  .datePickerZone {
    margin-bottom: 40px;
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 17px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
  }

  .address p {
    margin-bottom: 40px;
  }
}



@media (max-width:1023px) {
  .header {
    height: 20vh;
  }

  .flex-head-img {
    display: flex;
    justify-content: center;
    height: 100% !important;
    width: 100%;
  }

  .NosPlanDAcces02 .h {
    margin-bottom: 10px;
  }

  .body-page .header {
    height: 50vh !important;
  }

  .body-page .bannier {
    height: 100%;
  }

  .slide-parallax {
    position: static;
    width: 100%;
    height: 60%;
    border: 0;
  }

  .slogan {
    position: static;
    width: 100%;
    height: fit-content;
    background: var(--color3);
    padding: 15px 10%;
  }

  .slogan h1 {
    text-align: center;
    margin: 0 auto !important;
  }

  .sous-titre {
    padding: 10px 0 10px;
  }

  .head-btn>a,
  .head-btn>p {
    width: 90%;
    padding: 6px;
    margin: 8px 5px;
    font-size: 16px !important;
  }

  .body-pageseo .section,
  .body-page-1 .section {
    padding: 60px 0 !important;
  }

  .flex-head {
    flex-direction: column-reverse;
    padding: 0 10%;
  }

  .flex-head-txt {
    width: 100%;
    margin-bottom: 20px;
    height: ;
  }

  .footer2_bg {
    width: 100%;
  }

  .actuAndNewsletter-container {
    flex-direction: column;
  }

  .actuAndNewsletter.actuAndNewsletter01,
  .actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
    width: 100% !important;
  }

  .block.block-2 .form-inline .form-group input {
    width: 100% !important
  }

  .ReservationBg {
    padding: 3em 0% 0em !important;
  }

  .datepicker-container {
    padding: 0
  }
}

/* Landscape phone to portrait tablet */
@media (max-width:1300px) {
  .tel-tracker {
    display: none
  }

  .nav-logo {
    width: 15%;
    padding-left: 8px;
  }

  .nav-liste {
    width: 85%;
    justify-content: flex-end;
  }
}

@media (max-width:767px) {
  .owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev{
    background: var(--color5) !important;
  margin: 0px 1rem;
  width: 40px;
  height: 40px;
  transition: all 0.3s linear 0s;
  color: var(--color0) !important;
  }
.owl-nav {
  display: block;
}
  .gallery .nav li {
  display: flex;
  width: auto;
  margin: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: url(../images/arche-1.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  height: 176px;
  width: 90px;
  padding: 7px 7px;
}
  .contact.form {
    width: 100%;
    display: block;
    padding: 3em 0% 24em;
    margin-top: 0;
  }

  .galerie-image-bloc:nth-child(2n+1) {
    margin-top: 0px !important;
  }

  .slogan {
    position: static;
    width: 100%;
    height: fit-content;
    background: transparent !important;
    padding: 15px 10%;
  }

  .valeur-image img {
    width: auto;
    height: 428px;
    object-fit: cover;
    /*! border-radius: 30px; */
  }

  .content-val {
    width: 100% !important;
    !i;
    !;
    padding: 2em 1em;
  }

  .valeur-image {
    position: relative;
    text-align: right;
    width: 100% !important;
    !i;
    !;
  }

  .valeur-block {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    !i;
    !;
    gap: 30px;
    background: var(--color1);
    flex-direction: column !important;
    !i;
    !;
    border-radius: var(--border-radius);
  }

  .logo-transparent {
    position: absolute;
    height: 40%;
    width: 11%;
    left: 32%;
    top: -138px;
    background: url(../images/logo-contact.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: .4;
    transform: scale(1, 1) rotate(90deg);
  }

  .swip-liste-AT .subtitle-back {
    display: none;
  }

  #footer {
    position: relative;
    z-index: 1;
    background: var(--color2);
    padding-bottom: 0px !important;
    !i;
    !;
    padding-top: 45px;
  }

  .btn-partage .btnp {
    margin: 0px 1px !important;
    !i;
    !;
  }

  .footer-img {
    position: relative;
    width: 135px;
    text-align: left;
    margin-bottom: 58px;
  }

  .bloc-contenu.grey.nos-realisations {
    padding: 3em 0% 0em;
    position: relative;
    background: var(--color1);
    z-index: 0;
  }

  .ReservationBg .row {
    display: flex;
    flex-direction: row-reverse;
  }

  .atout-AT .row {
    display: flex;
    flex-direction: row;
  }

  .reservation-text-zone {
    background: var(--color0);
    padding: 5em 4em;
    position: relative;
    z-index: 4;
    left: 0 !important;
    !i;
    !;
    border-radius: var(--border-radius);
  }

  .ReservationBg .row .ghtyy {
    display: none;
  }

  .nos-realisations .row.recup-photo {
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "item1 item2"
      "item2 item3";
    grid-template-rows: 180px 180px !important;
    !i;
    !;
    grid-gap: 6px;
    position: relative;
    z-index: 5;
    width: 100%;
  }

  .ReservationBg:before {
    content: '';
    position: absolute;
    width: 50%;
    height: 100%;
    background: transparent;
    top: 0;
    left: 0;
  }

  .imgZone {
    position: relative;
    right: 0;
    bottom: auto;
    width: 100%;
    height: 400px;
    z-index: 1;
    background: url(../images/formule-img2.jpg);
    background-size: cover;
    background-position: center;
    top: 0;
  }

  .text-dream .subtitle {
    font-size: 30px;
    color: var(--color0);
    line-height: 33px;
  }

  .flex-head-txt .scroll {
    padding: 0 0 0 0;
    max-height: max-content;
  }

  .contact .form-actions {
    text-align: left;
    margin-top: 0px;
    position: absolute;
  }

  .contact-footer .subtitle {
    font-family: var(--font_family_1) !important;
    font-size: 16px;
    margin-top: 0;
    text-transform: initial;
    color: var(--color2);
    font-weight: normal;
  }

  .body-gallery-51 #main:after {
    display: none;
  }

  .menu_footer>li {
    list-style: none;
    display: inline-block;
    margin: 5px 15px 5px 0px;
    position: relative;
    text-align: center;
    border-right: 0px solid var(--color3);
    line-height: 1.1;
    color: var(--color3);
  }

  .coord {
    padding: 0;
  }

  .contact-info {
    width: 100%;
    background: var(--color3);
  }

  .contact-plan-map {
    width: 100%;
    padding: 0 3%;
  }

  .body-contact .NosPlanDAccesBg .row {
    display: flex;
    flex-direction: column-reverse;
  }

  .bodyContent p {
    margin-bottom: 30px;
    text-align: center;
  }

  .body-service-list .services .tableGrid.row .h {
    text-align: center;
    margin-bottom: 15px;
  }

  .body-service-list .services .tableGrid.row .bodyContent {
    text-align: center;
    padding: 4vw 2vw;
  }

  .body-service-list .main_bg {
    padding-bottom: 0;
    padding-bottom: 0;
    min-height: 600px;
    z-index: 1;
    position: relative;
  }

  .contact_footer_container .container {
    padding: 5em 3%;
  }

  .carte.section .group-mobile .group .titreetdescription .item-title {
    color: var(--color5) !important;
    font-size: 22px;
  }

  .carte .group-title {
    font-size: 27px;
    margin-top: 29px;
    margin-bottom: 50px;
  }

  .carte.section .group-mobile .group .blazy a img {
    position: relative;
    width: 100%;
    height: 30vh;
  }

  .btn-primary {
    min-width: 264px;
    padding: 10px 10px !important;
  }

  .swiper-pagination {
    color: var(--color0);
  }

  .btns-dream .swiper-button-prev .fa-chevron-left::after,
  .btns-dream .swiper-button-next .fa-chevron-right::after {
    background: var(--color0);
  }

  .btns-dream .swiper-button-next i,
  .btns-dream .swiper-button-prev i {
    font-size: 18px;
    color: var(--color0);
  }

  .btns-dream {
    bottom: 35px;
    right: 40px;
  }

  .dream-card {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    flex-direction: column;
  }

  .dream-item-left {
    position: relative;
    display: inline-block;
    width: 100%;
    vertical-align: middle;
    width: 92%;
    margin: 6px 0 0;
    height: 200px;
    margin-left: -31px;
    margin-bottom: -22px;
  }

  .dream-item-right {
    position: relative;
    width: 90%;
    z-index: -2;
    padding: 48px 8% 73px 8%;
    box-sizing: border-box;
    margin-right: -50px;
    height: 369px;
  }

  .footer1_bg .footer2_bg .row {
    padding: 0em 0% 2em;
  }

  .ReservationBg {
    position: relative;
    padding: 5em 10%;
    background: var(--color0);
    background: none;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .img-reservation img {
    width: 100%;
    height: 257px;
  }

  #contactButtonsMobile a {
    background-color: var(--color4) !important;
    color: #fff !important;
    text-decoration: none;
  }

  #contactButtonsMobile a svg path {
    fill: #fff;
  }

  .atout_box {
    padding: 0;
  }

  .atouts .atouts-cont {
    padding: 6rem 5% 6rem;
  }

  .atouts-card {
    width: 100%;
  }

  .body-service-list .services .tableGrid.row {
    overflow-x: hidden;
    margin: 2em 0 4em;
  }

  .calendrier-bloc {
    width: 50%;
    padding: 0;
  }

  .bannier {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--color3);
    z-index: 1;
    padding: 0 0 0;
    margin-top: 0 !important;
    !i;
    !;
  }

  .datePickerZone .datepicker table tr td.day {
    color: var(--color2);
    border: 1px solid var(--color4);
    padding: 14px 15px;
  }

  .body-contact .datePickerZone .datepicker table tr td.day {
    color: var(--color2);
    border: 1px solid var(--color4);
    padding: 14px 17px;
  }

  .menu_footer {
    display: table;
    text-align: left;
    /*! padding:20px 0; */
    margin: 0;
    line-height: normal;
    width: 76%;
    margin-left: 0;
    padding-left: 0;
  }

  .block #newsletter_form {
    display: table;
    width: 100%;
    margin: 0 auto;
    text-align: left;
  }

  .NewsletterBg p {
    font-size: 20px;
    color: var(--color4);
    margin: 0 0 1px 0;
    font-family: var(--font_family_2);
    text-align: left;
  }

  .footer1_bg .row {
    padding: 0 0%;
  }

  .dream-liste:after {
    content: '';
    position: absolute;
    background: #fff;
    width: 100%;
    height: 29vh;
    z-index: 0;
    left: 0;
    bottom: 0;
    background-size: auto 100%;
    background-repeat: no-repeat;
  }

  .dream-text ul {
    list-style: none;
    margin: 0;
    padding: 0 !important;
  }

  .fact-card h2 {
    color: #ececea;
    font-family: var(--font_family_2);
    position: relative;
    letter-spacing: 0;
    font-size: 100px;
    line-height: 1em;
    font-weight: 400;
    padding: 0 0 5px 0;
  }

  .fact-card p {

    font-size: 11px;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;

    color: var(--color5);
    font-family: var(--font_family_1);
    line-height: 2em;
    letter-spacing: 0.3em;
    position: absolute;
    display: flex;
    text-transform: uppercase;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    font-weight: bold;
    width: 100%;
  }

  .itemtext {
    display: flex;
    align-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    gap: 0vw;
    justify-content: center;
    flex-direction: row;
  }

  .body-page-1 #main:after {
    content: '';
    position: absolute;
    background: #FFF;
    width: 100%;
    height: 36vh;
    z-index: 0;
    left: 0;
    bottom: -46px;
    background-size: auto 100%;
    background-repeat: no-repeat;
  }

  .image-secondaire {
    object-fit: ;
    width: 80%;
    height: 34vh;
    position: absolute;
    background: url(../images/image-2.jpeg);
    background-size: cover;
    background-position: center top;
    margin: auto;
    margin-top: 21vh;
    /*! left: 50%; */
    /*! transform: translate(-50%); */
    right: 0;
    border: 4px solid var(--color3);
  }

  .signature-img {
    width: 65%;
    height: 9vh;
    position: absolute;
    margin: auto;
    bottom: 0vh;
    top: auto;
    margin-top: ;
    left: 50%;
    transform: translate(-50%);
    opacity: .5;
  }

  .body-pageseo .section,
  .body-page-1 .section {
    padding: 0px 3% !important;
    position: relative;
  }

  .ReservationBg-2 .h,
  .ReservationBg-2 .datepicker-container .h {
    margin-top: 67px;
    /*! right: 5px; */
    /*! transform: ; */
    font-size: 25px !important;
  }

  #main h1 {
    margin-bottom: 45px;
    font-size: 35px !important;
    font-family: var(--font_family_2);
    color: var(--color4);
  }

  .group.group-title-p.group-1 {}

  .contact-footer h2 {
    font-size: 22px !important;
    line-height: 30px;
  }

  .header {
    height: 25vh;
    margin-top: 0;
  }

  .bannier .banner h1 {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    color: var(--color0);
    z-index: 1;
    font-size: 20px !important;
    width: 100%;
  }

  .ReservationBg-2 {
    position: relative;
    padding: 5em 3% 0;
    background: var(--color3);
  }

  .coordonnée-zone {
    position: relative;
    height: 94%;
    width: 100%;
    background: url(../images/bg-bague-2.jpeg);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    z-index: 999;
    top: 24%;
    transform: translateY(-50%);
    right: 0;
    border-radius: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 16px;
    font-family: var(--font_family_2);
    font-weight: normal;
    overflow: hidden;
    background-position: center;
    /*! background: var(--color3); */
  }

  .reserv-container {
    z-index: 1;
    padding: 20px 0;
  }

  .ReservationText {
    text-align: center;
    width: 100%;
    line-height: 2;
    font-size: 14px;
    color: var(--color4);
    margin-bottom: 50px;
    padding: 0 10px;
  }



  .dream-img img {
    width: 104%;
    height: 168px;
  }

  .dream-img {
    width: 100%;
    background: url(../images/bande-2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;

    background-position: right;
  }

  .dream-img {
    width: 100%;
    background: url(../images/bg_2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 0;
    position: relative;
    z-index: 1;
    height: 30vh;
    filter: grayscale(1);
    background-position: center;
  }

  .dream-liste {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 2em 3% 10em;
  }

  .dream-content {
    padding: 4em 0em 3em 0em;
    top: 0;
    width: 94%;
  }

  .presentation .col-lg-12 {
    position: absolute;
    left: ;
    /*! width: fit-content; */
    /*! right: 20%; */
    top: -17px;
  }

  .body-page .header {
    height: 30vh !important;
    margin-top: 0;
  }

  .bloc-GMB .contain-GMB .bouton-principal {
    padding: 15px 5px;
  }

  .btn-partage {
    text-align: center !important;
  }

  footer .btn-partage {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: right;
    margin-top: 30px;
    margin-bottom: 71px;
  }

  #main {
    padding: 3em 3%;
  }

  .body-page-1 #main {
    padding: 94px 4px 0px;
  }

  .services-home {
    padding: 8em 0 10px !important;
  }

  .head-btn {
    flex-direction: column
  }

  .flex-head-img {
    width: 100%;
    height: 562px !important;
  }

  .head-img.img-1,
  .head-img.img-2 {
    width: 100%;
    right: 0;
    height: 200px;
    top: 0;
    border: 0;
    margin: 0 2px;
  }

  .actuAndNewsletter-container {
    padding: 30px 5px;
  }

  .modal-content label {
    padding-top: 10px;
  }

  body {
    position: inherit
  }

  .row.ligne-photos.retrait.centerservice2 {
    margin: 0 0 !important;
  }

  .row.ligne-photos.retrait.centerservice {
    margin: 0 0 !important;
  }

  .menu_referencement h2 {
    text-align: center;
    font-size: 20px;
  }

  .datePickerZone {
    padding: 20px 0;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .nav-pills>li>a {
    padding: 6px 40px;
    font-size: 11px;
    margin-bottom: 4px !important;
  }

  .nav-pills li+li,
  .nav-pills li {
    margin: 0;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .NewsletterBg {
    padding: 36px 0px 36px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 200px;
  }

  .vis01 {
    width: 100%;
    margin: 0 auto;
    display: block;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
    background-color: var(--color2);
  }

  .beforeFooter {
    background-repeat: repeat;
  }

  .body-gallery .main_bg .blockCenter {
    width: 100vw;
    padding: 0;
    margin-left: 0;
    left: -19px;
    right: 0;
    display: block;
    float: unset;
    position: relative;
  }

  .body-gallery .main_bg {
    /*! overflow-x:hidden; */
    padding: 0em 0%;
    background: var(--color3);
  }

  .news .item .h {
    margin: 0 0 20px 0;
  }

  .slide a img {
    opacity: 0;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: 0px;
  }

  .LeRestaurantCarousselBg .bx-controls-direction {
    right: 50%;
    margin-right: -17px;
  }

  .beforeFooterImg02 {
    float: right;
    width: 100%;
  }

  .qrCode {
    top: 0;
    width: auto;
    margin: 0 auto;
    display: block;
    float: none !important;
  }

  .modal-content .btn-default {
    padding: 10px 40px;
    width: 100%;
  }

  .modal-content .form-control,
  .modal-content label {
    font-size: 12px;
  }

  .modal-content label.visible {
    white-space: nowrap;
  }

  .modal-content {
    padding: 30px;
  }

  .modal-content .h {
    font-size: 18px !important;
  }

  .modal-header .btn {
    top: -9px;
  }

  .modal-footer {
    margin-top: 0;
    padding: 0;
  }

  ul.tab-content {
    padding: 0;
  }

  .map02 iframe {
    width: 100% !important;
    height: 280px !important;
  }

  #modal-evenement .modal-content select.form-control {
    background-size: 13px;
  }

  .modal-content input[name="captcha"]+a,
  .modal-content .form-control {
    height: 35px !important;
  }

  .help-block {
    font-size: 1rem;
  }

  .section.carte .reserver img {
    width: auto;
    max-width: 100%;
  }

  .carte .label,
  .carte .price {
    font-size: 14px;
  }

  .carte .price {
    width: 68px;
  }

  .carte .labels .label,
  .carte .yesLabels .price,
  .carte .item small,
  .carte .item-title {
    font-size: 14px;
  }

  .news .item {
    padding: 30px 0% 30px 0;
    margin: 0;
    text-align: center;
  }

  .news .date_post .s1 {
    font-size: 14px;
  }

  .date-article,
  .news .item .date_post,
  .view .item .date_post {
    display: block;
    margin-bottom: 12px !important;
    top: 23px;
    width: 30%;
    left: 3px;
  }

  .news .btn-fixed,
  .view .btn-fixed {
    padding: 7px 40px;
    float: none;
  }

  .view .item a img {
    margin-bottom: 10px;
  }

  a.btn.btn-primary.maplink {
    width: 100%;
    margin-bottom: 30px;
  }

  .theReservationText {
    width: 100%;
    height: auto;
    padding-top: 50px;
    padding-bottom: 30px;
    padding: 70px 20px;
  }

  .theReservationText:before {
    top: 0;
    right: 0;
    left: -40px;
    width: 200%;
    height: 100%;
  }

  .beforeFooter ul li {
    font-size: 18px;
  }

  .modal-dialog {
    width: auto;
  }

  .LeRestaurantCarousselBg .h {
    font-size: 20px;
  }

  .LeRestaurantCarousselBg .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: -15px;
  }

  .NosPlanDAcces01 iframe {
    width: 100%;
    /* height: 25vh; */
    left: 0;
    margin-left: 0;
  }

  .NosPlanDAcces01:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

  .spContainer {
    height: 340px;
  }

  .sp {
    height: 300px;
  }

  .modal-content .obligatoire {
    font-size: 9px;
    font-style: italic;
    color: var(--color3);
  }

  .nosRealisations .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls-direction {
    width: 34px;
    float: right;
    right: 50%;
    margin-right: -17px;
    position: relative;
  }

  .datePickerZone {
    margin-bottom: 40px;
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 17px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
  }

  .address p {
    margin-bottom: 40px;
  }

  .address strong {
    font-size: 16px;
  }

  .address p {
    font-size: 15px;
  }

  .beforeFooter ul {
    width: 230px;
    margin: 0 auto;
  }

  .tableGrid>.row,
  .tableGrid {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    height: 100%;
  }

  .tableGrid .table-row {
    height: 100%;
  }

  .tableGrid>.row>.table-row>[class*=col],
  .tableGrid .table-row>[class*=col],
  .tableGrid>.row>[class*=col],
  .tableGrid [class*=col] {
    display: block;
    /*vertical-align:top;*/
    float: left;
    height: 100%;
    position: relative;
  }

  .noPaddingCells>.row>.table-row>[class*=col],
  .noPaddingCells .table-row>[class*=col],
  .noPaddingCells [class*=col] {
    padding: 0;
  }

  .tableGrid.nopadding>.row>.table-row>[class*=col],
  .tableGrid.nopadding .table-row>[class*=col],
  .tableGrid.nopadding>.row>[class*=col],
  .tableGrid.nopadding [class*=col] {
    padding: 0;
  }

  .tableGrid.va-middle>.row>.table-row>[class*=col],
  .tableGrid.va-middle .table-row>[class*=col],
  .tableGrid.va-middle>.row>[class*=col],
  .tableGrid.va-middle [class*=col] {
    vertical-align: middle;
  }

  .services .mainSectionSlider {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: relative !important;
    height: 200px !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .mainSectionSliderBg img {
    width: 100%;
  }

  .nosServicesBg .mainSectionSlider .show,
  .nosServicesBg .mainSectionSlider .blazy,
  .services .mainSectionSlider .show,
  .services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
  }

  .nosServicesBg .bx-wrapper {
    position: relative;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .nosServicesBg .bx-viewport {
    position: relative !important;
    height: auto !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-wrapper {
    position: relative;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-viewport {
    position: relative !important;
    height: 200px !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none;
    height: 200px !important;
  }

  .nosServicesBg .bx-viewport li,
  .services .bx-viewport li {
    height: 100%;
    list-style: none;
  }

  .services .bx-pager,
  .mainSectionSliderBg .bx-pager {
    z-index: 9999;
  }

  .nosServicesBg .bx-pager,
  .nosServicesBg .bx-controls-auto {
    bottom: 25px;
  }

  .linkList li a {
    min-width: 100%;
  }

  .mainSectionSlider img {
    width: 100%;
  }

  .headerTel {
    font-size: 30px;
  }



  h2,
  .h2 {
    font-size: 18px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }
}

/* Landscape phones and down */
@media (max-width:480px) {
  .top-logo img {
    width: 90% !important;
  }

  .datePickerZone .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -15px;
    margin-top: -15px;
    width: 30px;
    height: 30px;
  }

  .modal-content label {
    padding-top: 10px;
  }

  .datePickerZone {
    padding: 20px 0;
  }

  a.btn.btn-primary.maplink {
    width: 100%;
    margin-bottom: 30px;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -15px;
    margin-top: -15px;
    width: 30px;
    height: 30px;
  }

  .btn {
    padding: 25px 10px;
  }

  .btn-primary {
    font-size: 12px;
  }

  .nosRealisations a.seeMore {
    padding: 8px 60px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
    color: var(--color4);
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 16px;
  }

  .NosPlanDAcces02 {
    padding: 50px 20px 20px;
    height: auto;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .carte .labels .label,
  .carte .yesLabels .price,
  .carte .item small,
  .carte .item-title {
    font-size: 12px;
  }

  .datepicker table tr th,
  .datepicker table tr td {
    padding: 8px 0;
    font-size: 14px;
  }

  .form-group .btn-primary,
  input[name="captcha"],
  input[name="captcha"]+a,
  .form-group .btn-primary,
  .form-control {
    height: 36px !important;
  }

  .datepicker table tr th.datepicker-switch {
    font-size: 16px;
  }

  #index .ReservationText p {
    padding: 0 20px;
    line-height: 25px;
    font-size: 16px;
  }

  /*.carteSeeMore{}*/
  .datepicker table tr th {
    font-size: 12px;
  }

  .theReservationText {
    width: 100%;
    height: auto;
    padding-top: 50px;
    padding-bottom: 30px;
  }

  .theReservationText:before {
    top: 0;
    right: 0;
    left: -40px;
    width: 200%;
    height: 100%;
  }

  .carte .group-title {
    font-size: 27px;
    margin-top: 29px;
    margin-bottom: 50px;
  }

  .beforeFooter ul li {
    font-size: 16px;
    line-height: 2;
  }

  .bx-pager,
  .bx-controls-auto {
    bottom: 0;
  }

  .LeRestaurantCarousselBg .h {
    font-size: 20px;
  }

  .LeRestaurantCarousselBg .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: -15px;
  }

  .modal-content .h {
    font-size: 16px !important;
  }

  body {
    font-size: 14px;
  }

  .actuAndNewsletterBg {
    padding: 1px 0 88px;
    /*! background-color:var(--color1); */
  }

  .headerTel {
    font-size: 30px;
  }

  .contact-footer h2 {}

  h2,
  .h2 {
    font-size: 17px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }
}

.btn-partage {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: right;
  margin-top: 30px;
}

.icones {
  width: 23px;
  height: 23px;
  margin-right: 9px;
  transition: .3s;
  fill: #000000;
}

.icones:hover {
  transform: rotate(360deg);
}

/* Landscape phones and down */
@media (max-width:320px) {
  div#bxControls {
    height: 67px;
    position: absolute;
    width: 40%;
    right: 0;
    left: initial;
    bottom: 61px;
    -webkit-transform-origin: 100% 100%;
    -moz-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    -o-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(.4);
    -moz-transform: scale(.4);
    -ms-transform: scale(.4);
    -o-transform: scale(.4);
    transform: scale(.4);
  }

  .gallery .col-xs-6 {
    width: 100%;
  }
}

@media (max-height:736px) and (max-width:420px) and (min-height:401px) and (min-width:240px) and (orientation:portrait),
(max-height:420px) and (max-width:736px) and (min-height:240px) and (min-width:421px) and (orientation:landscape) {}

/*****************menu_responsive_03*****************/
.header-sidebars,
.sidebar-left,
.sidebar-right {
  background-color: var(--color3);
  letter-spacing: 1px;
}

.sidebar-left a,
.sidebar-right a,
.sidebar-bottom-controls a,
.contactButton,
.nav-item-active,
.sidebar-form label,
.sidebar-send-button,
.sidebar-divider-text {
  color: var(--color0) !important
}

.header-sidebars {
  height: 65px;
  z-index: 9999;
  position: fixed;
  left: 0;
  right: 0;
  top: -1px;
  width: 100%;
}

.header-sidebars .header-top {
  display: table;
  height: 65px;
  width: 100%;
  background: var(--color0);
}

.top-logo {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  z-index: 9999;
  text-align: center;
  overflow-y: hidden;
}

.top-logo img {
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  width: 60%;
}

.deploy-left-sidebar {
  display: table-cell;
  background-color: var(--color2);
  background-size: auto 49%;
  background-image: url(../images/menu-mobile-3/nav.svg);
  background-repeat: no-repeat;
  height: 65px;
  width: 65px;
  background-position: center center
}



.deploy-back-home {
  background-image: url(../images/menu-mobile-3/home.png);
  background-repeat: no-repeat;
  background-color: var(--color1);
  width: 50px;
  height: 50px;
  background-position: center center;
  float: right;
  margin-top: -50px
}

.delete-right-sidebar {
  display: none;
  background-image: url(../images/menu-mobile-3/contact.png);
  background-repeat: no-repeat;
  background-color: var(--color1);
  width: 50px;
  height: 50px;
  background-position: center center;
  float: right;
  margin-top: -50px
}

.sidebar-left {
  font-family: var(--font_family_2) !important;
  width: 270px;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: -270px;
  bottom: 0;
  overflow: hidden;
  position: fixed;
  box-shadow: 3px 0px 3px 0px var(--color4);
}

.sidebar-scroll-left {
  padding-right: 20px;
  left: 0;
  width: 310px;
  overflow: scroll !important;
  overflow-x: hidden !important;
  -webkit-overflow-scroll: touch !important;
  height: 100%;
  background-color: var(--color3);
}

.sidebar-scroll-right {
  width: 275px;
  overflow: auto !important;
  overflow-x: hidden !important;
  height: 100%;
  background-color: var(--color0);
}

.sidebar-right {
  font-family: var(--font_family_2) !important;
  background-repeat: repeat;
  position: fixed;
  overflow: hidden;
  z-index: 99999;
  right: -280px;
  top: 0;
  bottom: 0;
  width: 270px;
  margin-right: 10px;
}

.sidebar-decoration {
  background-image: url(../images/menu-mobile-3/sidebar-deco.png);
  background-repeat: repeat-x;
  height: 2px;
  margin-bottom: 15px
}

.sidebar-left a,
.sidebar-right a {
  text-decoration: none;
  display: block;
  overflow: hidden;
  position: relative;
  color: var(--color4) !important;
  z-index: 1;
}

.sidebar-header-left {
  height: 65px;
  background-color: var(--color3);
  position: relative
}

.sidebar-left-logo {
  max-height: 75px;
  position: absolute;
  top: -2px;
  left: 8px;
  margin-right: 179px;
}

.sidebar-right-logo {
  top: -15px;
  right: -2px;
  max-width: 175px;
  float: right;
  position: relative;
  height: auto;
}

.close-sidebar-left {
  background-image: url(../images/menu-mobile-3/left-chevron.svg);
  background-size: 45% auto;
  background-repeat: no-repeat;
  background-position: center center;
  height: 65px;
  width: 65px;
  margin-left: 205px;
  display: block
}

.sidebar-divider-text {
  font-size: 20px;
  padding-top: 15px;
  padding-left: 20px;
  padding-bottom: 15px;
  margin-bottom: 0;
  color: var(--color0) !important;
  background: var(--color4);
}

.home-nav {
  background-image: url(../images/menu-mobile-3/home.png)
}

.info-nav {
  background-image: url(../images/menu-mobile-3/infoabout.png)
}

.folio-nav {
  background-image: url(../images/menu-mobile-3/bendedright.png)
}

.mail-nav {
  background-image: url(../images/menu-mobile-3/mail.svg)
}

.newsletter-nav {
  background-image: url(../images/menu-mobile-3/rss.png)
}

.call-nav {
  background-image: url(../images/menu-mobile-3/phonehook.svg)
}

.text-nav {
  background-image: url(../images/menu-mobile-3/speechbubble4.png)
}

.facebook-nav {
  background-image: url(../images/menu-mobile-3/facebook.png)
}

.twitter-nav {
  background-image: url(../images/menu-mobile-3/twitter.png)
}

.sidebar-bottom-controls {
  background-color: var(--color2);
}

.sidebar-bottom-controls p {
  margin-top: 3px;
}

.sidebar-bottom-controls a {
  font-size: 12px;
  background-repeat: repeat-y;
  text-align: center;
  float: left;
  width: 33%;
  line-height: 10px;
  display: block
}

.facebook-bottom {
  display: block;
  padding-top: 26px;
  background-image: url(../images/menu-mobile-3/facebook.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.twitter-bottom {
  display: block;
  background-image: url(../images/menu-mobile-3/twitter.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.close-bottom-left,
.close-bottom-right {
  display: block;
  padding-top: 26px;
  background-image: url(../images/menu-mobile-3/accessdenied.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.nav-item {
  font-size: 16.2px;
  -webkit-tap-highlight-color: var(--color2);
  background-size: 22px auto;
  background-color: var(--color3);
  height: 60px;
  line-height: 61.5px;
  background-repeat: no-repeat;
  padding-left: 60px;
  background-position: 20px center;
  margin-bottom: 1px;
}

.icon-active {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/location.png);
  background-size: 10px 15px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 240px
}

.icon-page {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 240px
}

.icon-drop {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/godrop.png);
  background-size: 10px 8px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 239px
}

.submenu a {
  text-shadow: 0 2px 0 var(--color4);
  background-image: url(../images/menu-mobile-3/sidebar-deco.png);
  background-repeat: repeat-x;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 25px;
  font-size: 10px;
  color: var(--color3);
  text-transform: uppercase;
  font-weight: 900
}

.submenu a em {
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  float: left;
  width: 10px;
  height: 15px;
  display: block;
  margin-top: 5px;
  padding-right: 35px
}

.submenu a:first-child {
  background-image: none !important
}

.submenu {
  display: none
}

.submenu-active {
  display: block
}

.sidebar-notifications a {
  margin-bottom: 15px;
  background-repeat: no-repeat;
  background-position: 0 center;
  padding-left: 38px;
  margin-left: 20px;
  font-size: 10px;
  color: var(--color3);
  font-family: var(--font_family_2);
  font-weight: 700;
  text-transform: uppercase;
  line-height: 10px
}

.sidebar-header-right {
  height: 65px;
  background-color: var(--color0);
  position: relative;
}

.close-sidebar-right {
  background-image: url(../images/menu-mobile-3/right-chevron.svg);
  background-size: 45% auto;
  background-repeat: no-repeat;
  background-position: center center;
  height: 65px;
  width: 65px;
  margin-left: 0;
  display: block
}

.sidebar-left .close-sidebar-left,
.sidebar-right .close-sidebar-right {
  position: absolute !important;
}

.right-sidebar-copyright {
  margin: 20px 0
}

.footer-text a {
  padding-top: 10px;
  font-size: 10px;
  color: var(--color3)
}

.copyright-sidebar {
  font-size: 10px;
  text-align: center;
  text-transform: uppercase
}

.menu-mobile-dynamique {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-position: inside;
  list-style-image: none
}


.menu-mobile-dynamique .sub-menu li {
  background-color: transparent;
  margin-bottom: 0;
}

.menu-mobile-dynamique .sub-menu li a {
  height: 42px;
  text-transform: none;
}

.menu-mobile-dynamique .sub-menu {
  background-image: linear-gradient(to bottom, var(--color2), var(--color2));
  padding-top: 18px;
  padding-bottom: 18px;
}

.menu-mobile-dynamique li.parent {
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.svg);
  background-position: 241px 26.2px;
  background-repeat: no-repeat;
  background-size: 9px auto;
}



.menu-mobile-dynamique ul {
  list-style-image: none;
  list-style-position: inside;
  list-style-type: none;
  padding-left: 0
}

.menu-mobile-dynamique ul li a {
  background: none;
  color: var(--color1)
}

.small-notification p {
  margin: 10px 13px;
  padding-bottom: 2px;
  line-height: 18px
}

.text-input {
  overflow: hidden;
  position: relative;
  font-size: 11px;
  color: var(--color3);
  width: 230px;
  margin-left: 20px;
  height: 30px;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px;
  display: block;
  box-sizing: border-box;
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

#contactEmail {
  margin-bottom: -5px !important
}

#contactMessage {
  display: none
}

#contactName {
  display: none;
  margin-bottom: 10px
}

#left_label_name {
  overflow: hidden;
  position: relative;
  display: none;
  text-align: left;
  margin-left: 200px;
  font-size: 11px;
  color: var(--color3);
  opacity: .3;
  margin-top: -20px;
  padding-bottom: 5px;
  margin-bottom: 10px
}

#name_label {
  overflow: hidden;
  position: relative;
  display: none;
  margin-top: 20px;
  margin-left: 20px;
  font-family: var(--font_family_2);
  font-size: 12px;
  color: var(--color1)
}

#email_label {
  margin-top: 20px;
  margin-left: 20px;
  font-size: 12px;
  color: var(--color1);
  display: block;
  overflow: hidden;
  position: relative
}

#left_label_mail {
  display: block;
  overflow: hidden;
  position: relative;
  line-height: 18px;
  text-align: left;
  margin-left: 200px;
  font-size: 11px;
  color: var(--color3);
  opacity: .3;
  font-family: var(--font_family_2);
  margin-top: -20px;
  padding-bottom: 5px;
  margin-bottom: 10px
}

.contact-button-house {
  line-height: 18px;
  margin-bottom: 20px;
  font-size: 11px;
  display: block;
  overflow: hidden;
  position: relative;
  /*vertical-align:baseline;*/
  outline: none
}

.contactButton {
  display: block;
  overflow: hidden;
  position: relative;
  margin-left: 20px;
  margin-top: 30px;
  height: 36px;
  font-family: var(--font_family_2);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  width: 230px;
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

.buttonWrap {
  padding: 10px !important;
  min-width: 43%
}

.contactSubmitButton {
  display: block !important;
  height: 36px !important;
  margin-right: 4px;
  float: left;
  margin-bottom: 20px
}

.contactNameField {
  padding-bottom: 5px;
  font-size: 12px
}

.contactField {
  font-size: 15px;
  overflow: hidden;
  position: relative;
  color: var(--color0);
  min-width: 100%;
  display: block;
  box-sizing: border-box;
  height: 30px;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg>div.block.block-2>h2 {
  display: none;
}

.contactTextarea {
  font-size: 15px;
  overflow: hidden;
  position: relative;
  color: var(--color0);
  min-width: 100%;
  display: block;
  box-sizing: border-box;
  margin-bottom: 20px;
  line-height: 18px;
  height: 90px;
  padding: 9px 12px
}

.menu-mobile-dynamique input {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0
}

.sidebar-form {
  display: none;
  margin-left: 20px;
  width: 230px;
  box-sizing: border-box
}

.sidebar-form2 {
  display: none
}

.sidebar-form label {
  font-size: 13px;
  border-radius: 0 !important;
  color: var(--color1);
  text-transform: uppercase;
  padding-top: 10px;
  display: block;
  opacity: .8;
  filter: alpha(opacity=80)
}

.sidebar-form label span {
  text-transform: lowercase;
  float: right;
  opacity: .5
}

.sidebar-form input {
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

.sidebar-form textarea {
  background-color: var(--color2);
  border: solid 1px var(--color3);
  margin-bottom: 0
}

.sidebar-send-button {
  font-size: 13px;
  display: block;
  width: 100%;
  color: var(--color1);
  font-family: var(--font_family_2);
  text-transform: uppercase;
  font-weight: 700
}

.success-subscribe {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px
}

.sidebar-form {
  margin-bottom: 0 !important;
  margin-top: -10px !important
}

.sidebar-form .formSuccessMessageWrap {
  width: 230px;
  margin-top: 20px;
  margin-bottom: 0
}

.sidebar-form .small-notification {
  margin-top: 20px
}

.sidebar-form #emailError {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px;
  border-radius: 0;
  height: 36px
}

.sidebar-form #emailError p {
  text-align: center;
  color: var(--color3);
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.sidebar-form #emailError2 {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px;
  border-radius: 0;
  height: 36px
}

.sidebar-form #emailError2 p {
  text-align: center;
  color: var(--color3);
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.subscribe-notification {
  width: 230px !important;
  margin-left: 20px;
  border-radius: 0 !important;
  margin-bottom: -15px !important;
  margin-top: 20px !important;
  background-image: none !important
}

.subscribe-notification p {
  background-image: none !important;
  text-align: center;
  color: var(--color3) !important;
  margin: 8px 0;
  display: block;
  text-transform: uppercase;
  padding-left: 0;
  margin-top: 20px
}

.formValidationError {
  margin-bottom: -15px
}

.sidebar-form .formValidationError div {
  margin-top: 20px;
  width: 230px;
  border-radius: 0 !important;
  height: 36px;
  margin-top: 20px !important
}

.sidebar-form .formSubmitButtonErrorsWrap {
  overflow: visible !important;
  margin-bottom: 20px
}

.sidebar-form .formValidationError p {
  text-align: center;
  color: var(--color3) !important;
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.menu-mobile-dynamique label {
  display: block;
  overflow: hidden;
  position: relative;
  border: 0;
  /*vertical-align:baseline;*/
  outline: none
}

.red-notification {
  background-color: var(--color2);
  border-radius: 5px;
  border: solid 1px var(--color3)
}

.formValidationError .red-notification p {
  background-image: none !important;
  display: block !important;
  padding-left: 0 !important;
  text-align: center !important
}

.no-bottom {
  margin-bottom: 0 !important
}

.menu-mobile-dynamique .sub-menu {
  display: none
}

.notification-box {
  text-align: center;
}

.notification-box h4 {
  margin-bottom: 0;
}

.notification-box p {
  color: var(--color0);
}

.formSuccessMessageWrap h4 {
  color: var(--color3);
}

.bodyContent:nth-of-type(odd) {
  direction: ltr;
}

.salon-block {
  position: relative;
  width: 100%;
  height: 492px;
  background: url(../images/img-second.jpeg) no-repeat center / cover;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  z-index: 1;
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
}

.salon-block-box {
  position: relative;
  padding: 0em 0% 0;
  background: var(--color0);
  display: none;
}

.salon-block:before {
  color: ;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--color5);
  position: absolute;
  opacity: .656;
}

.salon-content {
  color: var(--color0);
  position: relative;
}

.salon-content h2 {
  color: var(--color0);
}

.salon-block-box:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: -105px;
  left: 0;
  z-index: 1;
  background-size: contain;
  background-repeat: no-repeat;
}

.datePickerZone .datepicker table tr td.active.active:hover:before {
  background: var(--color5) !important;
  border-color: var(--color0) !important;
}

.salon-block .salon-content h2 span:nth-child(1) {
  margin: 0 !important;
  font-family: var(--font_family_2);
}

.bx-pager.bx-default-pager a:hover,
.bx-pager.bx-default-pager a.active {
  background: var(--color3);
  width: 16px;
  height: 16px;
  border: 3px solid var(--color0);
}

.row.description-galerie.clear {
  margin: 0;
}

.bx-pager.bx-default-pager a {
  background: var(--color0);
  border: 3px solid var(--color0);
  width: 16px;
  height: 16px;
}


.NewsletterBg .h {
  margin: 0px auto 6px;
  color: var(--color4);
  font-size: 25px;
}

.block #newsletter_form input[type="text"] {
  color: var(--color6);
  border-color: var(--color6);
  border-right: 0;
  letter-spacing: 1px;
}

.block #newsletter_form input[type="submit"] {
  padding: 13px 13px 13px;
}

.block.block-2 .form-inline .form-group input {
  background: transparent;
  text-align: left;
  border: 2px solid var(--color0) !important;
  color: var(--color2) !important;
  width: 360px;
  text-align: center;
}

#newsletter_form .form-group+input {
  display: block;
  text-align: center;
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  margin-top: 20px;
  font-family: var(--font_family_2) !important;
  color: var(--color2) !important;
  padding: 10px 30px !important;
  border: 1px solid var(--color0);
}

.block #newsletter_form input[type="submit"] {
  border: 1px solid var(--color2);
  background: var(--color4);
  font-family: var(--font_family_2) !important;
  font-weight: 100 !important;
}

/* ***********service************** */
.services-home {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--color0);
  padding: 5em 0 0em;
}

.title-bloc {
  margin: auto;
  overflow: hidden;
  margin-bottom: 35px;
  width: 78%;
}

.title-bloc .title-bloc {
  text-align: center;
  margin: 0;
}

.reserv-container .title-bloc .h1 {
  text-align: center;
  color: var(--color0);
}

.reserv-container .title-bloc {
  display: flex;
  justify-content: center;
  align-items: center;
}

.services-home-content:before {
  content: '';
  position: absolute;
  background: var(--color0);
  width: 100%;
  height: 100%;
  z-index: 0;
  left: 0;
  bottom: 0;
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.services-home .bx-pager {
  bottom: -50px;
}

.engegements-content {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 40px 3%;
}

.services-home-content .h.hicon {
  color: var(--color4);
  margin-bottom: 4vh;
}

.one-service.item {
  position: relative;
  width: 100%;
  height: 525px;
  background: ;
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
  transition: ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.one-service.item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .65s cubic-bezier(.25, .1, .29, .93);
  will-change: transform;
  transform-origin: 50% 6%;
}
}

.one-service.item:hover img {
  transform: scale(1.024);
}


.service-coor {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  text-align: left;
  padding: 5% 0;
  flex-direction: column;
  justify-content: end;
  transform: translate(0, 0) translate(var(--calc-x), 0) scale(1, 1);
  transition: .3s ease-out;
  transition-property: all;
  transition-property: opacity, transform, filter;
  opacity: 0;
}

.one-service.item:hover .service-coor {
  transform: none;
  opacity: 1;
  display: none;
}

.one-service.item:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity .35s ease-in-out;
  transition: opacity .35s ease-in-out;
  background: rgba(0, 0, 0, .4);
}

.one-service.item:hover:before {
  opacity: 1;
}

.service-img {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transition: .3s;
  display: none;
}

.service-coor h2 {
  position: relative;
  width: 100%;
  margin: 0;
  text-align: left;
  font-size: 28px;
  line-height: 1.5em;
  letter-spacing: .15em;
  font-family: var(--font_family_1);
  padding: 0 0% 4% 5%;
  color: var(--color0);
  font-weight: 500;
}

.center-slide {
  margin-bottom: -42px;
}

.service-coor a {
  position: relative;
  text-align: left;
  padding: 11px 15px;
  text-decoration: unset;
  color: var(--color0);
  transition: 0.3s;
  font-family: var(--font_family_2);
  font-size: 14px;
  line-height: ;
  font-weight: normal;
  letter-spacing: 1px;
  background: var(--color5);
  margin-left: 5%;
}

.service-coor a:hover {}

.one-service.item:hover h2 {
  transform: translate(0);
  z-index: ;
}

.one-service.item:hover a {
  transform: translate(0);
  opacity: 1;
}

.one-service.item a:hover {
  background: var(--color5);
}

.center-dyn {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.actu-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 20px;
  background: var(--color1);
}

.actu-image {
  position: relative;
  width: 100%;
  height: 100%;
}

.actu-image .blazy {
  height: 390px;
  width: 100%;
  object-fit: cover;
  background-position: top;
}

.actu-image .blazy img {
  position: relative;
  width: 100%;
  height: 100%;
}

span.actu-pubdate {
  position: absolute;
  width: fit-content;
  padding: 10px;
  text-align: center;
  background: var(--color1);
  font-family: var(--font_family_1);
  left: 20px;
  z-index: 9;
}

.date_post {
  font-family: var(--font_family_1) !important;
}

.date_post .day {
  font-size: 18px;
}

.date_post .month,
.date_post .year {
  font-size: 13px;
}

.actuAndNewsletter.actuAndNewsletter01 {
  position: relative;
  width: 39%;
  height: 100%;
  display: none;
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
  position: relative;
  width: 100%;
  height: 100%;
  background: transparent;
}

.actu-heading {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: left;
  padding: 20px 0 10px;
}

.actu-heading h3.h a {
  font-size: 16px;
  color: var(--color2);
  text-decoration: unset;
}

.view .articleContent {
  color: var(--color2);
}

.actu-show-more a {
  font-size: 16px;
  text-transform: unset;
  min-width: 180px;
}

.block #newsletter_form input[type="submit"]:hover {
  background: var(--color3);
  border: 1px solid var(--color3);
  color: var(--color2);
}

.slide-parallax-video:hover .slogan {}

.head-btn>a:hover,
.head-btn>p:hover {}

.owl-theme .owl-nav [class*=owl-] {
  font-size: 34px !important;
}

.owl-theme .owl-nav [class*=owl-]:hover {
  background: unset;
}

.owl-theme .owl-nav [class*=owl-]:hover {
  background: transparent !important;
}

div.blazy.b-error {
  background-image: url(../images/noImage.jpg);
}

.news .item {
  border-color: var(--color0);
}

.NosPlanDAcces02 h3.h {
  text-transform: uppercase;
}


.NewsletterBg h2 {
  font-size: 15px;
  margin-top: ;
  font-weight: normal;
  margin-bottom: 0;
  color: var(--color6);
}

.NewsletterBg .block.block-1 {
  margin-top: 7px;
}

.badge-optionnel {
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/badge-optionnel.png) no-repeat top right;
  width: 139px;
  height: 139px
}

.bloc-GMB {
  position: relative;
  display: block;
  padding: 9em 10% 6em;
  background: var(--color3);
  z-index: 1;
  margin-top: 30px;
}

.bloc-GMB .contain-GMB {
  color: var(--color2);
  text-align: center;
  position: relative;
}

.bloc-GMB .contain-GMB h3 {
  margin-bottom: 25px;
}

.bloc-GMB .contain-GMB .etoiles-2 {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: url(../images/etoiles-2.png) no-repeat center left;
}

.bloc-GMB .contain-GMB .zone-etoiles-note {
  position: relative;
  height: 60px;
  width: 264px;
  float: right;
  background: url(../images/etoiles-1.png) no-repeat center right;
}

.note-avis {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}

.nbr-note {
  font-size: 40px;
  margin: 0 2rem;
}

.bloc-GMB .contain-GMB .bouton-principal {
  margin-top: 20px;
  text-align: center;
}

.btn-partage svg.icones path {
  fill: #000000;
}

.text-GMB {
  padding: 15px 0;
}

/* ******time-picker********** */
.bootstrap-timepicker {
  position: relative;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
  left: auto;
  right: 0;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
  left: auto;
  right: 12px;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
  left: auto;
  right: 13px;
}

.bootstrap-timepicker .input-group-addon {
  cursor: pointer;
}

.bootstrap-timepicker .input-group-addon i {
  display: inline-block;
  width: 16px;
  height: 16px;
}

.bootstrap-timepicker-widget.dropdown-menu {
  padding: 4px;
}

.bootstrap-timepicker-widget.dropdown-menu.open {
  display: inline-block;
  z-index: 99999 !important;
}

.bootstrap-timepicker-widget.dropdown-menu:before {
  border-bottom: 7px solid var(--color4);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  content: "";
  display: inline-block;
  position: absolute;
}

.bootstrap-timepicker-widget.dropdown-menu:after {
  border-bottom: 6px solid var(--color0);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  content: "";
  display: inline-block;
  position: absolute;
}

.bootstrap-timepicker-widget.timepicker-orient-left:before {
  left: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-left:after {
  left: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:before {
  right: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:after {
  right: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:before {
  top: -7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:after {
  top: -6px;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid var(--color3);
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid var(--color0);
}

.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
  border-radius: 4px;
}

.bootstrap-timepicker-widget table {
  width: 100%;
  margin: 0;
}

.bootstrap-timepicker-widget table td {
  text-align: center;
  height: 30px;
  margin: 0;
  padding: 2px;
}

.bootstrap-timepicker-widget table td:not(.separator) {
  min-width: 30px;
}

.bootstrap-timepicker-widget table td span {
  width: 100%;
}

.bootstrap-timepicker-widget table td a {
  border: 1px transparent solid;
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 8px 0;
  outline: 0;
  color: var(--color4);
}

.bootstrap-timepicker-widget table td a:hover {
  text-decoration: none;
  background-color: var(--color0);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  border-color: var(--color0);
}

.bootstrap-timepicker-widget table td a i {
  margin-top: 2px;
  font-size: 18px;
}

.bootstrap-timepicker-widget table td input {
  width: 25px;
  margin: 0;
  text-align: center;
  font-size: 18px;
}

.bootstrap-timepicker-widget .modal-content {
  padding: 4px;
}

@media (min-width: 767px) {

  .flex-seoContain .seo-form h2 {
    color: var(--color0);
    text-align: center;
    font-size: 40px;
    font-family: var(--font_family_1);
  }

  .NosPlanDAcces01 iframe {
    width: 100%;
    height: 100%;
    left: 0;
    margin-left: 0;
  }

  .contact {
    margin-top: 80px;
    padding: 0;
    display: flex;
    justify-content: center;
    /*! align-items: center; */
  }


  .engegements-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
  }

  .bootstrap-timepicker-widget.modal {
    width: 200px;
    margin-left: -100px;
  }
}

@media (max-width: 767px) {

  .service-title a {
    transform: translateY(0px) !important;
    opacity: 1 !important;
    !i;
    !;
  }

  .one-service.item h2 {
    transform: translateY(0px) !important;
    z-index: ;
  }

  .remonter {
    bottom: 70px !important;
    !im;
    !im*;
    !i;
    !;
    right: 13px !important;
    !i;
    !;
    background: var(--color4) !important;
    !i;
    !;
  }

  .body-page .bannier div:last-child {
    padding-right: 0px;
  }

  .flex-head {
    flex-direction: column-reverse;
    padding: 0 3% !important;
  }

  .body-pageseo #main {
    padding: 3em 0% 0;
  }

  .one-service.item:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    background: rgba(0, 0, 0, .4);
  }

  .one-service.item:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    background: rgba(0, 0, 0, .4);
  }

  .service-coor {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-content: flex-start;
    align-items: flex-start;
    text-align: left;
    padding: 5% 0;
    flex-direction: column;
    justify-content: end;
    transform: none;
    transition: .3s ease-out;
    transition-property: all;
    transition-property: opacity, transform, filter;
    opacity: 1;
  }

  .one-service.item {
    position: relative;
    width: 100%;
    height: 295px;
    background: ;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: ;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
  }

  .NewsletterBg h2 {
    font-size: 16px;
    margin-top: ;
    font-weight: normal;
    margin-bottom: 0;
    text-align: left;
  }

  .services-home-content .h.hicon {
    color: var(--color4);
    /*! font-size: 3em !important; */
  }

  .salon-block-box {
    position: relative;
    padding: 12em 3% 6em;
    background: var(--color0);
  }

  .bootstrap-timepicker {
    width: 100%;
  }

  .bootstrap-timepicker .dropdown-menu {
    width: 100%;
  }
}


/***/

.typewriter {
  overflow: hidden;
  /* border-right: .15em solid var(--color1); */
  white-space: nowrap;
  margin: 0 auto;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: .15em;
  transition: .3s ease;
  color: var(--color1);
  animation: typing 1s;
  width: 300px;
  /* Set a fixed width to avoid layout shifts */
  scale: 2;
}

.typewriter img {
  min-width: 300px;
  height: auto;
  width: 300px;
}

/* The typing effect */
@keyframes typing {
  from {
    width: 0
  }

  to {
    width: 300px;
  }
}


.cont {
  display: flex;
  align-items: center;
  justify-content: center;
}

.loader {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: var(--color0);
  z-index: 9999999999;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
}





/***/


@media(min-width:2000px) {
  .gallery .nav li a.bouton-principal {

    font-size: 30px !important;
  }

  .gallery .nav li {
    height: 308px;
    width: 186px;
    padding: 7px 7px;
  }

  .img-forme {
    position: relative;
    background: url(../images/arche-1.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    height: 173px;
    width: 115px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px;
  }

  .footer-img {
    position: relative;
    width: 215px;
    text-align: left;
  }

  .ReservationBg {
    background: url(../images/main-banner-bg.jpg);
    padding: 16em 10%;
    position: relative;
  }

  .block #newsletter_form input[type="text"] {
    background-color: transparent;
    line-height: 1;
    line-height: 32px \9;
    padding: 0px 12px;
    width: 70%;
    margin: 0 0 0 0;
    font-size: 24px;
    color: var(--color0);
    border: 1px solid var(--color0);
    height: 65px;
  }

  .footer-img {
    position: relative;
    width: 158px !important;
    !i;
    !;
    text-align: left;
  }

  .footer-img img {
    width: 100%;
    height: auto;
  }

  .scrollbars {
    margin: 15px 0 0;
    height: 260px;
    position: relative;
    float: left;
    width: 100%;
    padding: 0 11px 0 0;
    overflow: auto;
  }

  #main h1 {
    margin-bottom: 7vh;
    font-size: 70px;
    line-height: .9375em;
    letter-spacing: .2em;
    font-family: var(--font_family_1);
    color: var(--color6);
    text-align: left;
    display: block;
  }

  .header01bg {
    z-index: 80;
    position: fixed;
    padding: 0 2%;
    height: 150px !important;
    !i;
    !;
    width: 100%;
    top: 0;
    left: 0;
    transition: 0.3s;
    background: var(--color0);
  }

  .body-page .header {
    z-index: 8001;
    position: relative;
    width: 100%;
    padding: 0 0 0;
    height: 90vh;
    background: var(--color3);
    top: 0;
  }

  .body-page .bannier {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    height: 90vh;
  }

  .bannier {
    position: relative;
    width: 100%;
    height: 59vh;
    background: var(--color0);
    z-index: 1;
    margin-top: 115px;
  }

  .image-secondaire {
    object-fit: ;
    width: 65%;
    height: 39vh;
    position: absolute;
    background: url(../images/image-2.jpeg);
    background-size: cover;
    background-position: center top;
    margin: auto;
    margin-top: 4vh;
    /*! left: 50%; */
    /*! transform: translate(-50%); */
    right: 0;
  }

  .navbar-nav ul.sub-menu {
    position: absolute;
    background: var(--color4);
    padding: 0;
    visibility: hidden;
    left: 50%;
    opacity: 0;
    transform: translate(-50%, 50px);
    transition: .5s;
    width: 14vw;
    margin-top: 15px;
  }

  .navbar-nav ul.sub-menu>li>a {
    padding: 12px 30px;
    font-size: 25px;
    color: var(--color0);
    /*! background-color: var(--color3); */
    text-transform: unset;
    width: 100%;
    text-align: center;
    border-bottom: 1px solid var(--color3);
    font-family: var(--font_family_3);
    text-decoration: none;
  }

  .contact p {
    margin-bottom: 16px;
    font-size: 19px;
    line-height: 1;
  }

  .nos-realisations .row.recup-photo {
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-areas:
      "item5 item5 item3 item2"
      "item5 item5 item1 item4";
    grid-template-rows: 600px 600px;
    grid-gap: 6px;
    position: relative;
    z-index: 5;
    width: 100%;
  }

  .nos-realisations .realisations-bloc .shape.shape-3 {
    width: 266px;
    height: 347px;
    top: -9%;
    right: 6%;
    z-index: 1;
    transform: rotate(58deg) scale(-1, 1);
    left: auto;
  }

  .btns-dream {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    width: 195px;
    height: 50px;
    color: #fff;
    float: right;
    background-color: transparent;
    position: absolute;
    bottom: 63px;
    right: 15%;
  }



  .titre-secondaire {
    font-size: 38px;
  }



  .service-title a {
    font-size: 25px;
  }

  .service-title h2 {
    font-size: 48px;
  }


  .flex-head-txt .scroll {
    padding: 0 0 0 0;
    max-height: 455px;
  }

  .swiper-box {
    right: 34px;
    bottom: -4%;
    width: 13vw;
    height: 38vh;
    overflow: hidden;
  }

  .box .swiper-slide img {
    width: 100%;
  }

  .boxSwiper5 {
    height: 100%;
  }

  .box .boxSwiper5 .swiper-slide img {
    width: 100%;
    height: 100%;
  }

  .boxSwiper5 .swiper-slide {}

  .swiper-box2 {
    left: 50px;
    bottom: -3%;
    width: 13vw;
    height: 25vh;
    overflow: hidden;
  }

  .swiper-box3 {
    left: 23%;
    bottom: -6%;
    width: 13vw;
    height: 18vh;
    overflow: hidden;
  }

  .swiper-box4 {
    right: -8%;
    top: 13%;
    width: 11vw;
    height: 19vh;
    overflow: hidden;
  }

  .swiper-box5 {
    /*! right: -8%; */
    top: 0;
    width: 100%;
    height: 100%;
    z-index: ;
    display: none;
  }


  .shape {
    position: absolute;
  }

  .shape img {
    width: 100%;
    height: 100%;
  }

  .shape.shape-1 {
    width: 315px;
    height: 276px;
    top: 11px;
    left: -81px;
    z-index: 1;
    transform: rotate(-10deg);
  }

  .effet-curseur {
    transition: background .3s, border .3s, border-radius .3s, box-shadow .3s, transform var(--e-transform-transition-duration, .4s);
    box-sizing: border-box;
    position: relative;
    width: 100%;
    height: 100%;
  }

  .shape.shape-2 {
    width: 331px;
    height: 288px;
    bottom: -58px;
    right: -35px;
    z-index: 1;
    transform: rotate(-10deg);
  }


  .shape.shape-3 {
    width: 226px;
    height: 280px;
    top: 15%;
    left: 16%;
    z-index: 1;
    transform: rotate(0deg);
  }

  .engegements-content .shape.shape-3 {
    width: 274px;
    height: 363px;
    top: -33%;
    right: 11%;
    z-index: 1;
    transform: rotate(58deg) scale(-1, 1);
    left: auto;
  }

  .shape.shape-4 {
    width: 154px;
    height: 184px;
    bottom: 20%;
    right: 12%;
    z-index: 1;
    transform: rotate(-10deg);
  }

  .shape.shape-5 {
    width: 310px;
    height: 320px;
    bottom: 21%;
    right: 39%;
    z-index: 1;
    transform: rotate(34deg);
  }

  .shape.shape-6 {
    width: 300px;
    height: 300px;
    bottom: 0%;
    left: -98px;
    z-index: 1;
    transform: rotate(34deg);
  }

  .shape.shape-tel {
    width: 234px;
    height: 178px;
    top: -72px;
    left: 100px;
    z-index: 0;
    transform: rotate(-10deg);
    transition: 0.3s;
  }

  .fixed .shape.shape-tel {
    width: 174px;
    height: 111px;
    top: -37px;
    left: 100px;
    z-index: 0;
    transform: rotate(-10deg);
    transition: 0.3s;
  }



  .sous-titre-top {
    padding-bottom: 50px;
    font-size: 40px;
    color: var(--color6);
    font-family: var(--font_family_1);
  }

  .service-coor a {
    font-size: 15px;
  }

  .service-coor p {
    font-size: 33px;
  }

  .NosPlanDAcces02 .h.hicon {
    font-size: 30px !important;
  }

  .carte .item .item-description,
  .carte .item small {
    color: var(--color4);
    font-size: 12px;
    text-align: justify;
    padding: 3px 3px 0 0;
    display: inline-block;
    width: 100%;
    margin-bottom: 0;
    font-weight: 100;
    text-transform: none;
    color: var(--color4);
    opacity: 0.8;
    font-size: 20px;
    text-align: left;
  }

  .carte .group-title {
    font-size: 50px;
  }

  #contact-form {
    margin-top: 0em;
    margin-bottom: 0em;
    /* padding: 10px 0%; */
  }

  .NewsletterBg p {
    font-size: 25px;
    color: #000;
    font-family: var(--font_family_1);
  }

  .img-reservation img {
    width: 60vh;
  }

  .menu_footer li a {
    font-size: 25px;
  }

  .coord p span {
    font-size: 20px;
  }

  .title_footer {
    text-transform: uppercase;
    margin-bottom: 30px;
    font-size: 25px;
    font-weight: 600;
  }

  .menu_referencement li a {
    font-size: 24px !important;
    !im;
    !;
  }

  .card-head h3 {
    font-size: 30px;
  }

  .ReservationText {}


  .dream-item-left {
    height: 671px;
  }

  .dream-item-right {
    padding: 20px 8.9% 20px 14.6%;
  }

  .dream-liste {
    padding: 5em 0% 4em;
  }

  .text-dream p {
    color: var(--color0);
    font-size: 30px;
    margin-top: 40px;
  }

  .dream-text {
    font-size: 30px;
  }

  .dream-content .subtitle {
    font-size: 43px;
    padding-bottom: 24px;
  }

  .dream-content h2 {
    /* font-size: calc(54px * 1.5) !important; */
  }

  .fact-card h2 {
    /*! font-size: 6em; */
  }

  .fact-card p {
    /*! font-size: 17px; */
  }

  h2,
  .h2 {
    font-size: 24px;
    margin-bottom: 20px;
  }

  .itemtext h2 {
    /*! font-family: var(--font_family_1); */
    /*! color: var(--color0); */
    /*! font-size: 80px; */
    /*! font-weight: bold; */
  }

  h3,
  .h3 {
    font-size: 35px;
  }

  h4,
  .h4 {
    font-size: 19px;
  }

  h5,
  .h5 {
    font-size: 14px;
  }

  h6,
  .h6 {
    font-size: 12px;
  }

  .fact-area {
    /*! padding: 82px 0px; */
  }

  .tel {
    /* text-align: right; */
    width: 90%;
    /* height: 100%; */
    /* display: flex; */
    /* align-content: center; */
    /* justify-content: flex-end; */
    align-items: center;
    font-size: 30px;
    /* margin: 0px 0 0 0; */
    /* white-space: nowrap; */
    line-height: 23px;
    font-weight: 500;
    letter-spacing: 1px;
    font-style: normal;
    padding: 18px 34px;
  }

  .navbar-nav>li>a {
    text-decoration: none;
    position: relative;
    margin: 0 4px;
    font-size: 17px;
    line-height: 23px;
    font-weight: 500;
    letter-spacing: .3em;
    text-transform: uppercase;
    font-style: normal;
    font-family: var(--font_family_1);
  }

  .head-btn>a,
  .head-btn>p {
    position: relative;
    background: transparent;
    font-size: 20px;
    line-height: 2em;
    font-weight: 500;
    letter-spacing: .3em;
    text-transform: uppercase;
    cursor: pointer;
    padding: 9px 20px;
    color: var(--color0);
    text-decoration: none;
    width: auto;
    text-align: center;
    transition: .3s;
    border: 1px solid rgba(255, 255, 255, .6);
    font-family: var(--font_family_1);
  }

  .title-bloc {
    font-size: 34px;
  }

  .ReservationText .h {}

  .ReservationText p {}

  .engegements-content img {
    /* height: 81rem; */
  }

  .tete .logo-site a img {
    height: auto;
    width: 160px;
  }

  .navh .menu_principal a,
  .navh .menu_principal a:visited {
    padding: 60px 0;
  }

  .certifs .swiper-button-next i,
  .certifs .swiper-button-prev i {
    left: 48%;
    top: 37%;
  }

  .v_box span {
    font-size: 28px !important;

  }

  .page-contenu-home {
    position: relative;
    display: block;
    padding: 1rem 0%;
    height: 526px;
    overflow: hidden;
  }

  .bande_contact_footer {
    padding: 70px 10% 50px;
    background: url(../images/texture3.png)no-repeat;

    background-size: 73% !important;
    background-position-y: 79% !important;
    background-position-x: 35% !important;
  }

  .imgnk {
    position: absolute;
    width: 31%;
    height: 410px;
    background: url(../images/texture1.png) no-repeat;
    z-index: -1;
    top: 30vh;
    background-size: 117%;
    right: calc(-5%);
    opacity: .23635 !important;
  }

  .body-page-1 .title-serv .h1::before,
  .body-page-1 .h1::before,
  .body-page-1 h1::before {
    display: none;
  }

  .first_b img {
    right: -1vw;
    width: initial !important;
  }

  ul li::before {
    top: 8px;
  }

  .intervention .contenu {
    font-size: 24px !important;
  }

  .one-service.item a span {
    font-size: 24px;
  }

  .pied .navf .menu_footer li a,
  .pied .navf .menu_footer li a:visited,
  .pied .horaires,
  .pied .menu_referencement li a,
  .pied .menu_referencement li a:visited,
  .pied address {
    font-size: 24px !important;
  }

  .one-service.item a h3 {
    font-size: 36px;
  }

  a.bouton-principal,
  button.bouton-principal {
    font-size: calc(14px * 1.5);
  }

  .cta a.bouton-principal,
  button.bouton-principal,
  .cta .tel-header,
  .tete .infos .tel,
  .cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal span {
    font-size: 24px;
  }




  .slogan .sous-titre {
    font-size: 37px !important;
    line-height: 51px !important;
    padding: 0px 10% 40px;
  }

  .fixed .flex-logo a .name {
    bottom: calc(3vh - 3px);
    font-size: 40px;
  }

  .body-page-1 .slogan .titre::before {
    height: 17vh;
    top: 85px;
  }

  .navh .menu_principal a,
  .navh .menu_principal a:visited {
    font-size: calc(var(--taille_font) * 1.5);
  }

  body {
    /*! font-size: 28px; */
    line-height: 38px !important;
    !i;
    !;
  }

  .propor.pic-1 {
    height: 732px !important;
  }

  .propor.pic-2 {
    position: absolute !important;
    width: 72% !important;
    height: 517px !important;
    bottom: -30px;
    right: -25px;
    border: 10px solid #fff;
  }

  .one-service.item {
    height: 60vh !important;
  }

  .certifs .swiper-slide .img-swiper {
    background-size: 100% auto;
  }
}

.body-page-1 #main {
  padding: 0em 10% 0;
  width: 100%;
  background: var(--color0);
}

#main {
  padding: 3em 10% 3em;
  width: 100%;
  background: var(--color0);
}

.body-contact-53 #main {
  padding: 6em 5% 14em;
  width: 100%;
  background: var(--color1);
}

.body-page-1 #main:before {
  content: '';
  position: absolute;
  /*! background: url(../images/bg-presezntation.png); */
  background-repeat: repeat;
  background-size: auto;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: .2;
}

.body-contact #main:after {
  display: none;
}

.body-service #main:after {
  display: none;
}

.body-service-list #main:after {
  display: none;
}

.body-pageseo #main:after {
  display: none;
}



.body-gallery-98 #main::after {
  z-index: -1;
}

.body-copyright #main::after {
  display: none;
}

.body-sitemap #main::after {
  display: none;
}

.body-page-1 #main:after {
  content: '';
  position: absolute;
  background: #FFF;
  width: 100%;
  height: 26vh;
  z-index: 0;
  left: 0;
  bottom: -46px;
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.body-news #main {
  padding: 60px 0;
}

section#gallery {
  padding: 0 10%;
}

.description-galerie.gallery-tflex {
  padding: 20px 15%;
}

.body-news-list main#main {
  padding: 60px 0;
}

.body-pageseo .section,
.body-page-1 .section {
  height: 100%;
  padding: 8em 0 5em;
  border-radius: 20px;
  position: relative;
  z-index: 100;
}

section.section.row.pageseo {
  padding: 0;
}

.presentation {
  /*! background: url(../images/presentation.jpeg); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  /* background: var(--color3); */
}

.itemtext {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  gap: 0vw;
  justify-content: center;
  flex-direction: column;
}

.item {
  width: 100%;
}

.pluschiffre {}

.body-service #main h1 {
  text-align: center;
  color: var(--color5);
  font-size: 70px;
}


.carte .itemTr:nth-child(even) {
  background-color: #ffffff9c;
}


.carte .group .blazy {
  /*! border: 4px solid #fff; */
  background-size: cover;
  background-position: center;
}

.group-description {
  color: var(--color2);
}



.carte .group-title {
  color: var(--color5);
  border: 0;
  background-color: transparent;
  font-size: 38px;
  text-align: left;
  display: inline-block;
  text-transform: uppercase;
  margin: 0 0 7px 0;
  padding: 0;
  z-index: 0;
  font-family: var(--font_family_2);
}

.carte .price {
  color: var(--color2);
  display: none;
}

.carte .itemTr:nth-child(odd) {
  background-color: var(--color0);
}

.carte .itemTr:nth-child(even) {
  background-color: #ffffff9c;
}

.datepicker table tr td.today:active:hover,
.datepicker table tr td.today.active:hover,
.datepicker table tr td.today:active:focus,
.datepicker table tr td.today.active:focus,
.datepicker table tr td.today:active.focus,
.datepicker table tr td.today.active.focus {
  background-color: var(--color1);
  color: var(--color0);
}

.datepicker table tr td.today {
  color: var(--color0);
  background: var(--color4) !important;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active {
  background: var(--color3);
}

/************ footer ***************/
.title_footer {
  margin-bottom: 30px;
  font-size: 1.7vw;
  font-weight: normal;
  font-family: var(--font_family_1);
  letter-spacing: 1px;
  color: var(--color6);
}

.adress-pied {
  display: flex;
  gap: 11px;
}

.footer-coordonnees .flex-recherches .scrollbars {
  height: 199px;
}

.flex-address {
  display: flex;
}

.footer-coordonnees>i {
  color: var(--color2);
  padding: 6px 11px 0 0;
}

.footer-coordonnees .tel1,
.footer-coordonnees .tel2,
.flex-address {
  display: flex;
}

.footer-coordonnees .tel1 i,
.footer-coordonnees .tel2 i,
.flex-address i {
  color: var(--color5);
  padding: 0px 9px 0px 0;
  transform: rotate(0);
  margin: 0 !important;
  font-size: 22px;
}

.flex-horaires .horaires {
  /* display: flex; */
  /* justify-content: flex-start; */
  /* font-size: 16px; */
  float: left;
}

.flex-horaires .horaires i {
  padding: 0 10px 0 0;
  color: var(--color2);
  margin-right: 8px;
}

#footer {
  position: relative;
  z-index: 1;
  background: var(--color0);
}

.footer {
  position: relative;
  height: auto;
  padding: 0;
  margin: 0 0 0 0;
}

.footer1_bg {
  position: relative;
  padding: 0em 0% 0;
  /*! background: var(--color0); */
}

.row.footer-coordonnes {
  padding: 3em 8% !important;
}

.footer1_bg .row {
  padding: 0px 9%;
  width: 100%;
  margin: 0;
}


.footer1_bg .row:nth-child(3) {
  /*! background: var(--color4); */
  width: 100%;
}

.footer1_bg .footer2_bg .row {
  padding: 3em 0% 2em;
}

.footer2_bg {
  z-index: 2;
  width: 100%;
  position: relative;
  margin: 0 !important;
}

.footer2_bg .row hr {
  background-color: var(--color3);
  border: none;
  width: 100%;
  height: 1px;
  margin: 0 auto 0;
  clear: both;
  position: absolute;
  bottom: 0;
  width: 84%;
  left: 51%;
  transform: translate(-50%, 0);
}

.hsep {
  background: url(../images/hsep.jpg)repeat-x 50% 50%;
  position: relative;
  margin-top: -31px;
  height: 2px;
  width: 100%;
  margin-bottom: 28px;
}

/******************************/
.titreAbdelhamid {
  position: relative;
  font-size: 18px;
  color: var(--color1);
  text-transform: uppercase;
  margin: 0 0 20px 0;
  padding: 0;
}

.titreAbdelhamid span {
  color: var(--color0);
}

/************* menu footer ************/
.menu_footer_bg {
  background-color: transparent;
  padding: 0;
}

.menu_footer {
  display: table;
  text-align: center;
  /*! padding:20px 0; */
  margin: 0;
  line-height: normal;
  width: 100%;
}

.menu_footer>li {
  list-style: none;
  display: inline-block;
  margin: 5px 15px 5px 15px;
  position: relative;
  text-align: center;
  border-right: 0px solid var(--color3);
  line-height: 1.1;
  color: var(--color3);
}

.menu_footer>li:first-child:before {
  display: none;
}

.menu_footer li a {
  font-size: 0.8vw;
  color: var(--color6);
  line-height: normal;
  text-decoration: none;
  font-weight: normal;
  padding: 0px 6px 0;
  /*! text-transform: uppercase; */
  font-family: var(--font_family_1);
  letter-spacing: 1px;
}

.menu_footer li.active a,
.menu_footer li a:hover,
.menu_footer li a:focus {
  color: var(--color4);
  text-decoration: underline;
}

.menu_footer li:last-child a,
.menu_footer li:last-child {
  border-right: none;
}

/************* menu ref ************/
.menu_ref_bg {
  min-height: 150px;
}

.menu_referencement {
  text-align: justify;
  margin-bottom: 20px;
  min-height: initial;
  width: 100%;
  padding: 0;
  height: auto;
  line-height: 1px;
}

.menu_referencement li {
  line-height: 1.3;
  display: inline;
  list-style-position: inside;
}

.menu_referencement li:before {
  font-size: 18px;
  content: ' - ';
  color: inherit;
  margin: 0;
}

.menu_referencement li:first-child:before {
  display: none;
}

.menu_referencement li a {
  letter-spacing: 1px;
  text-decoration: none;
  text-transform: none;
  color: var(--color6);
  font-size: 16px;
  font-weight: normal;
  font-family: var(--font_family_2);
}

.menu_referencement li.active a,
.menu_referencement li a:hover,
.menu_referencement li a:focus {
  text-decoration: underline;
  color: var(--color5);
}

/************* signature ****************/
.signature {
  width: 100%;
  margin: 10px 0 7px;
  padding: 0;
  float: none;
  display: inline-block;
}

.signature_link {
  margin: 0;
  display: block;
  color: var(--color2);
  font-size: 12px;
  text-align: center;
  line-height: 10px;
  text-decoration: none;
  font-style: italic;
  z-index: 3;
}

.signature_link:hover {
  color: var(--color2);
  text-decoration: underline;
}

.signature_link img {
  width: auto;
  height: auto;
  margin: 0 auto;
  display: block;
}

.copyright-footer {
  margin-bottom: 0
}

#logoFD svg * {
  fill: var(--color5);
}

#logoFD svg {
  width: 220px;
}

/*************** CONTACT *************/
.form-group .label-rgpd strong,
.info-rgpd strong,
.info-rgpd a,
.info-rgpd a:visited {
  color: var(--color2);
}

label.checkbox.label-rgpd {
  text-align: left;
  color: var(--color6);
  line-height: 1.2em;
}

label.checkbox.label-rgpd p {
  font-size: 11px;
}

.contact_footer_container {
  background: var(--color0);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 0;
}

#contact-form {
  margin-top: 0;
  margin-bottom: 0;
  padding: 5em 10%;
}

.contact_footer_container .contact-footer-images {
  width: 50%;
  background: url(../images/image-contact.jpeg);
  background-position: bottom;
  background-size: cover;
  position: relative;
}

.contact_footer_container .contact-div {
  width: 50%;
  background: var(--color1);
  margin: 0;
  padding: 0;
  position: relative;
  border-bottom: 1px solid var(--color4);
}

/****** INPUTS ********/
.contact p+p {
  margin-bottom: 16px;
  /*! font-size: 15px; */
  /* font-family: var(--font_family_2); */
  line-height: 1.3;
}

input[name="captcha"],
.form-group {
  margin-bottom: 10px;
  position: relative;
}

.form-control {
  height: auto;
  padding: 4px 10px 4px 10px;
  font-size: 18px;
  color: var(--color6);
  background-color: var(--color0);
  border: 1px solid var(--color0);
  border-radius: 0;
  box-shadow: unset;
  letter-spacing: 1px;
}

/****** SELECT ********/
select.form-control {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  text-indent: 1px;
  background-image: url(../images/select_arr.png) !important;
  background-repeat: no-repeat;
  background-position: 100% 50%;
  color: var(--color6) !important;
}

select.form-control option {
  color: var(--color6);
  letter-spacing: 1px;
}

/****** LABEL ********/
label {
  font-size: 13px;
  color: var(--color4);
  font-weight: 100;
  padding-top: 0;
  margin: 0;
}

.contact label,
.body-contact label {
  display: block;
  width: 100%;
  font-size: 18px;
  color: var(--color6);
}

@media (min-width:768px) {
  .body-service-list-131 .banner {
    background-position: center;
  }

  .body-service-list-138 .banner {
    background-position: top;
  }

  .body-gallery-98 .banner {
    background-position: center;
  }

  .form-horizontal .control-label {
    text-align: left;
  }
}

/***** TEXTAREA ****/
textarea.form-control {
  resize: vertical;
  height: 110px !important;
  padding: 15px 10px !important;
}

.pageseo textarea.form-control {
  resize: vertical;
}

/***** SUBMIT ****/
.form-group .btn-primary {
  float: left;
  width: 31%;
  width: 100%;
  line-height: 0;
  font-weight: normal !important;
}

.form-group .btn-primary:hover,
.form-group .btn-primary:active,
.form-group .btn-primary:focus {
  outline: none;
}

.form-group .btn-primary:active {
  color: var(--color4);
}

/***** FORM UTILES ****/
/* do not group these rules */
::-webkit-input-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
  font-size: 14px
}

::-moz-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
}

::-ms-input-placeholder {
  color: var(--color2) !important;
  opacity: 1 !important;
}



.required {
  color: var(--color4);
  font-size: 14px;
}

.form-actions {
  color: var(--color5);
  font-size: 13px;
  font-style: italic;
}

legend {
  font-size: 21px;
  font-size: 2.1rem;
  color: var(--color3);
}

input[name="captcha"] {
  width: 32.33% !important;
  margin-right: 2% !important;
  float: left;
  margin-bottom: 8px;
}

input[name="captcha"]+a {
  width: 32.33%;
  margin-right: 2%;
  background-color: var(--color0);
  /*display:inline-block;*/
  float: left;
  text-align: center;
  border: 1px solid var(--color1);
  margin-bottom: 0;
  border-radius: 0;
}

input[name="captcha"]+a+a {
  display: none;
}

img#captcha {
  width: auto;
  height: 100% !important;
  display: inline-block;
  background-color: transparent;
  box-shadow: none;
  border: none;
}

.form-group .btn-primary,
input[name="captcha"],
input[name="captcha"]+a,
.form-group .btn-primary,
.form-control {
  height: 50px !important;
}

/******** address **********/
.address span {
  text-align: center;
}

.address {
  position: relative;
  height: auto;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 50% 0;
  border-bottom: none;
  border-radius: 0;
  float: left;
  text-align: center;
  margin-bottom: 60px;
}

.form-horizontal .form-group .col-md-8 {
  width: 100%;
}

input::placeholder {
  color: #ffffff !important;
}

textarea::placeholder {
  color: #ffffff !important;
}

.address .h {
  font-size: 19px;
  color: var(--color3);
  margin: 0 0 30px;
}

.address p {
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: 0;
}

.address strong {
  color: var(--color2);
  font-size: 25px;
  line-height: 1;
  font-family: var(--font_family_1);
  text-align: center;
  text-transform: uppercase;
  position: relative;
  display: table;
  margin: auto;
  font-weight: 100 !important;
}

.address strong:after {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  margin: 10px auto;
  background-color: var(--color4);
}

.address p {
  margin-bottom: 20px;
  display: inline-block;
}

.address p img {
  margin: 0 8px 0 0;
  vertical-align: middle;
}

.contact .h {
  color: var(--color0);
  font-weight: 100;
  margin-bottom: 35px;
  width: 100%;
}

.contact-footer .subtitle {
  font-family: var(--font_family_1) !important;
  font-size: 20px;
  margin-top: 0;
  text-transform: initial;
  color: var(--color6) !important;
  !i;
  !;
  font-weight: normal;
}

.contact .h span {
  font-family: var(--font_family_1);
  color: var(--color6);
  );
}

/* footer address */
.footer_address {
  position: relative;
  margin-bottom: 0;
}

.footer_address p,
.footer_address a {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--color1);
  font-weight: bold;
  letter-spacing: 0;
}

.footer_address p {
  padding-top: 13px;
}

/**************************************/
.body-gallery .main_bg {
  /*! overflow-x:hidden; */
}

/**********************************************************************/
/******** nav pills **********/
.nav-pills {
  margin-bottom: 40px;
  text-align: center;
}

.nav-pills li {
  float: none;
  margin: 0 20px;
  position: relative;
  display: inline-block;
}

.nav-pills>li+li {
  margin: 0 20px;
}

/*static*/

/*active*/
.nav-pills>li.active>a,
.nav-pills>li.active>a:hover,
.nav-pills>li.active>a:focus,
.nav-pills>li>a:hover,
.nav-pills>li>a:focus {
  color: var(--color0);
  background-color: transparent;
  border: 1px solid var(--color2);
  text-decoration: none;
}

/* isotop */


/********** gallery ***********/
/*.body-gallery .main_bg .section .img-responsive.blazy.imgLoaded {
  border: 4px solid var(--color0);
}*/

#gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding {
  margin: 0 10px 0 0;
}

.img-thumbnail {
  line-height: 1.4;
  background-color: transparent;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
  max-width: 100%;
  width: 100%;
  display: block;
  position: relative;
  opacity: 1;
  z-index: 1;
  border: 4px solid var(--color0);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  padding: 0;
  margin: 10px 0;
}

.img-thumbnail a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  margin: 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-image: url('../images/bx_loader.svg');
}

.img-thumbnail:hover {
  border: 4px solid var(--color0);
}

.img_thumbnail_item {
  border: 0 solid var(--color4) !important;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.img_thumbnail_item img {
  opacity: 0;
  width: 100%;
  height: 100%;
}

.img_thumbnail_item_mask {
  color: var(--color3);
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  border: 0 solid;
  background-color: var(--color1);
  background-image: url(../images/icon.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: .3s;
}

.img-thumbnail:hover .img_thumbnail_item_mask {
  opacity: 0.5;
  border: 0px solid;
  transition: .3s;
}

.img-responsive {
  background-size: cover;
  border-radius: var(--border-radius);
}

.img_thumbnail_multiple,
.img_thumbnail_multiple a {
  height: 400px;
}

.img_thumbnail_figcaption {
  background-color: transparent;
}

.gallery ul.tab-content li {
  list-style: none;
}

/**********************************************************************/

/****************************** map ***********************************/

.contact-block {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6em 10%;
  gap: 30px;
  background: var(--color1);
  flex-direction: row-reverse;
}

.contact-image {
  position: relative;
  /*! flex-shrink: 0; */
  /*! width: 50%; */
  text-align: right;
}

.contact-block .contact-image img {
  width: auto;
  height: 541px;
  object-fit: cover;
  border: 1px solid var(--color5);
  border-radius: 30px;
}

.contact-image img {
  width: auto;
  height: 541px;
  object-fit: cover;
  border: 1px solid var(--color5);
}

.contact-block .contact-signature img {
  width: 100%;
  height: 100%;
  border: none;
}

.contact .contact-image img {
  width: auto;
  height: 860px;
  border-radius: 30px;
  object-fit: cover;
  border: 1px solid var(--color5);
  border: none;
}

.contact.form p {
  font-size: 18px;
  margin-bottom: 10px;
}

.contact-signature {
  position: absolute;
  width: 70%;
  height: 25%;
  bottom: -22%;
  right: -29px;
  border: none;
}

.contact .contact-signature {
  position: absolute;
  width: 98%;
  height: 25%;
  bottom: -22%;
  right: -29px;
  border: none;
}

.contact .contact-signature img {
  width: 100%;
  height: 100%;
  border: none;
}

.contact-content {
  /*! width: 66%; */
  /*! padding-right: 15%; */
}

.contact-content h2 {
  /*! font-size: 28px; */
  margin-bottom: 10px;
}

.contact-content p {
  font-size: 18px;
  line-height: 1.6;
}

.contact-content .warning {
  color: #d9534f;
  font-weight: bold;
}

.contact-content .emoji {
  font-size: 20px;
}


/**********************************************************************/

/********************* map ****************************/
.map {
  position: relative;
  margin-top: 30px;
  width: 100%;
  z-index: 0;
  border-radius: 6px;
  margin-bottom: 0;
}

.map iframe {
  width: 100% !important;
  height: 370px !important;
  border-radius: 0;
  text-align: center;
  float: left;
  margin-bottom: 0;
  border: 0 solid var(--color0);
}

a.btn.btn-primary.maplink {
  position: relative;
  right: 0;
  bottom: 0;
  margin-top: 0;
  margin-left: 0;
  z-index: 3;
  float: right;
  margin: 10px 0;
  width: 20%;
  display: none;
}

.datePickerZone .datepicker table tr td.active.active {
  color: var(--color5);
  border-color: inherit;
}

.rc-anchor-light.rc-anchor-normal {
  border: 0 !important;
}

.map-cont {
  margin-bottom: 100px;
}

.body-pageseo .contact {
  padding: 3em 5%;
  margin: 0;
}

.datePickerZone .datepicker table tr td.new {
  color: var(--color5) !important;
}

/********************* PARTAGE ****************************/
.partage {
  width: 100%;
  margin: 25px 0 0;
  z-index: 3;
  position: relative;
  float: none;
  padding: 0;
  text-align: left;
  display: inline-block;
  vertical-align: text-bottom;
}

/******** ENCARTS **/
.encartBg {
  background-repeat: repeat;
  background-position: 0 0;
  padding: 30px 0 60px;
  background-color: var(--color0);
}

.encart {
  width: 100%;
  margin-bottom: 60px;
  position: relative;
  display: block;
  text-align: center;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: auto auto;
}

.encart p {
  font-size: 17px;
  color: var(--color1);
  display: inline-block;
  line-height: 1;
}

.encart img {
  margin-bottom: 20px;
  opacity: 0;
  width: auto;
}

.encart:focus:after,
.encart:hover:after,
.encart:focus,
.encart:hover {
  text-decoration: none;
  color: var(--color0);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
  transform: translateY(-5px);
}

.encart01 {
  background-image: url(../images/encart01.png);
}

.encart02 {
  background-image: url(../images/encart02.png);
}

.encart03 {
  background-image: url(../images/encart03.png);
}

.encart04 {
  background-image: url(../images/encart04.png);
}

.encart01:hover {
  background-image: url(../images/encart01_h.png);
}

.encart02:hover {
  background-image: url(../images/encart02_h.png);
}

.encart03:hover {
  background-image: url(../images/encart03_h.png);
}

.encart04:hover {
  background-image: url(../images/encart04_h.png);
}

/***********/
.encadrage {
  position: relative;
  padding: 30px;
}

.nopaddRight {
  padding-right: 0;
}

.nopaddLeft {
  padding-left: 0;
}

/**************************/
.activites {
  background-color: var(--color3);
  height: 343px;
}

.activites .h {
  font-size: 34px;
  color: var(--color0);
  background-color: var(--color3);
  padding: 30px 0;
  margin-bottom: 70px;
}

.activites .h span {
  color: var(--color3);
}

.activites p {
  font-size: 30px;
  color: var(--color0);
}

/**************************/
.opening {
  height: 115px;
  line-height: 138px;
  padding: 0;
  display: block;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-flow: row nowrap;
  -moz-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -webkit-align-items: stretch;
  -moz-align-items: stretch;
  align-items: stretch;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center;
}

.opening p {
  color: var(--color0);
  font-size: 18px;
  display: inline-block;
  line-height: normal;
  margin-bottom: 0;
}

.opening .img {
  float: left;
  margin-right: 30px;
  height: 100%;
  width: 110px;
  background-color: var(--color4);
  background-image: url(../images/horairesImg.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.opening .img img {
  opacity: 0;
  width: 100%;
  margin: 0;
}

/********************/
.partenaires {
  padding: 30px 0;
  margin-bottom: 0;
  background-color: var(--color4);
}

.partenaires .h {
  margin: 20px 0 50px;
}

.partenaires .list-inline {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 40px;
}

.partenaires .list-inline:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 43px;
  left: 0;
  bottom: -43px;
  background-image: url(../images/shadow2.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
}

.partenaires .list-inline li {
  display: table-cell;
  text-align: center;
}

.partenaires .bx-controls {
  position: relative;
  width: 150px;
  float: right;
  height: 68px;
  margin-top: 14px;
}

.partenaires .bx-controls-direction a {
  top: 0%;
  width: 67px;
  height: 67px;
  border: none;
  box-shadow: none;
}

.partenaires .bx-controls-direction a.bx-prev {
  left: 0;
}

.partenaires .bx-controls-direction a.bx-next {
  right: 0;
}

.partenaires .slide span {
  font-size: 20px;
  color: var(--color1);
}

.partenaires .slide:hover span {
  color: var(--color3);
}

/**********************/
.interventionZone {
  background-image: url(../images/interventionZoneBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  height: 386px;
  padding: 110px 0 0;
  text-align: center;
  width: 100%;
}

.interventionZone span {
  display: inline-block;
  width: 36%;
  font-size: 18px;
  color: var(--color0);
}

.encartBg .h {
  font-size: 26px;
  text-align: left;
}

.encartBg .h span {
  color: var(--color4);
}

.encartBg p {
  font-size: 18px;
  color: var(--color3);
}

.encartBg3 {
  padding: 80px 0 0 20px;
  text-align: center;
  height: 415px;
}

.zone01 ul {
  padding-left: 21px;
  margin: 0 0 20px 0;
}

.zone01 ul li {
  color: var(--color2);
  font-size: 18px;
  list-style-type: square;
  line-height: 1.5;
  padding-left: 20px;
}

/*/
*/
.zone02 {
  text-align: center;
}

/*/
*/
.zone03 div {
  padding: 20px;
  position: relative;
  background-color: var(--color2);
}

.zone03 ul {
  padding: 0 0 0 0;
}

.zone03 ul li {
  list-style: none;
  color: var(--color1);
  font-size: 20px;
}

.zone03 div img {
  position: absolute;
  right: -20px;
  bottom: 0;
}

/*******/
.nosValeursBg {
  padding: 55px 110px 25px;
  text-align: center;
  position: relative;
}

.nosValeursBg:before {
  content: '';
  position: absolute;
  background-image: url(../images/nosValeursShadow.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  bottom: 0;
  right: 85px;
  width: 380px;
  height: 173px;
}

.nosValeurs {
  background-image: url(../images/nosValeurs.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% 100%;
  height: 290px;
}

.nosValeurs .h {
  font-size: 34px;
  color: var(--color0);
  padding: 40px 0 30px;
  margin-bottom: 38px;
}

.nosValeurs .h span {
  color: var(--color0);
}

.nosValeurs ul {
  text-align: left;
  line-height: 1.6;
  padding-left: 90px;
}

.nosValeurs li {
  font-size: 18px;
  color: var(--color0);
}

.nosValeurs li span {
  color: var(--color3);
}

.candidatureBg {
  padding: 60px 0;
  background-image: url(../images/candidatureBg.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  height: 187px;
  text-align: center;
}

.cv {
  padding: 10px 30px;
  -webkit-box-shadow: 3px 3px 6px var(--color4);
  -moz-box-shadow: 3px 3px 6px var(--color4);
  -ms-box-shadow: 3px 3px 6px var(--color4);
  -o-box-shadow: 3px 3px 6px var(--color4);
  box-shadow: 3px 3px 6px var(--color4);
}

.cv img {
  margin: 0 10px 0 0;
}

/*************************************/
.InfoResa {
  text-align: center;
  width: 100%;
}

.InfoResa li a {
  width: 220px;
}

.leading {
  text-align: center;
  color: var(--color0);
  font-size: 23px;
  margin-bottom: 70px !important;
}

/*******************************/
.Zone {
  position: relative;
  padding: 70px 0;
}

/*******************************/
.NosCartesBg {
  background-image: url(../images/NosCartesBg.jpg);
  background-repeat: repeat;
  background-position: 50% 0;
}

.NosCartes {
  width: 100%;
  height: 328px;
  margin-bottom: 15px;
  text-align: center;
}

.NosCartes01 {
  background-image: url(../images/visNotreCarte.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: contain;
}

.NosCartes01 img {
  opacity: 0;
}

.NosCartes02 {
  padding: 35px 20px 0;
  border: 1px solid var(--color1);
}

.NosCartes02 .h {
  font-size: 24px;
  color: var(--color4);
  text-transform: uppercase;
  margin-bottom: 30px;
}

.NosCartes02 .h small {
  font-size: 15px;
  color: var(--color4);
  text-transform: uppercase;
  font-style: italic;
}

.NosCartesBg .background-white {
  padding: 15px 0;
}

.NosCartesLink {
  width: 100%;
  display: inline-block;
  text-align: center;
  padding: 15px 10px;
  font-size: 20px;
  background-color: var(--color3);
  border: 1px solid var(--color3);
  color: var(--color0);
  line-height: 1.1;
}

.NosCartesLink:focus,
.NosCartesLink:hover {
  background-color: var(--color0);
  border: 1px solid var(--color3);
  color: var(--color3);
  text-decoration: none;
}

.NosCartes02 ul {
  padding: 0;
}

.NosCartes02 ul li {
  list-style: none;
  font-size: 16px;
  text-transform: uppercase;
  color: var(--color3);
  margin-bottom: 22px;
  line-height: 1.2;
}

.NosCartes02 ul li small {
  font-size: 80%;
  text-transform: none;
  display: inline-block;
  line-height: normal;
}

.NosCartes02 ul li span {
  display: inline-block;
  margin-bottom: 5px;
}

/**** carte mobile ******/
.carte.section .group-mobile .group {
  width: 100%;
  margin-bottom: 0px;
}

.carte.section .group-mobile .group .titreetdescription {
  padding: 10px;
  /*! background-color: var(--color6); */
  color: var(--color0) !important;
}

.carte.section .group-mobile .group .titreetdescription * {
  /*! color: var(--color2) !important; */
  margin-top: 16px;
}

.carte.section .group-mobile .group .group-title {
  text-align: center;
}

.carte.section .group-mobile .group .blazy {
  width: 100%;
  overflow: hidden;
}

.carte.section .group-mobile .group .blazy a {
  position: relative;
  max-height: 130px;
}

.carte.section .group-mobile .group .prices {
  display: block;
  width: 100%;
  text-align: center;
}

.carte.section .group-mobile .group .prices li {
  display: inline-block;
  margin-bottom: 0;
}

.carte.section .group-mobile ul {
  padding: 0;
  margin: 0 0 20px 0;
  float: left;
  width: 100%;
}

.carte.section .group-mobile .group-title {
  width: 100%;
}

.carte.section .group-mobile .group .item {
  margin-bottom: 0;
  text-align: center;
  padding: 0;
  border-radius: 5px;
  overflow: hidden;
}

.carte.section .group-mobile .group+hr {
  width: 70%;
  background-color: var(--color2);
  margin: 0px auto 20px;
}

.carte.section .group-mobile .group .item .price {
  width: auto;
  padding: 15px 5px;
}

.carte.section .group-mobile .group .item .item-description,
.carte.section .group-mobile .group .item small {
  text-align: center;
}

.carte.section .group-mobile .group .price:after {
  background-color: var(--color3);
}

/****************************************/
.NosPlanDAccesBg {
  height: auto;
  padding: 6em 10%;
  /*! background: var(--color0); */
  position: relative;
  z-index: 1;
  display: none;
}

.body-contact .NosPlanDAccesBg {
  padding: 0;
  padding-top: 6em;
  display: block;
}

.NosPlanDAcces {
  position: relative;
  text-align: center;
  padding: 0 0;
  width: 100%;
  /*! height: 81vh; */
}

.plan-d-acces {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.NosPlanDAcces02 {
  float: right;
  padding: 75px 27px;
  /*! background: var(--color1); */
  position: relative;
  z-index: 1;
}

.NosPlanDAcces01 {
  float: left;
  position: relative;
  z-index: 1;
  height: 53vh;
}

.NosPlanDAcces01 iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  border: none;
  left: 0;
  margin-left: 0;
  z-index: 1;
}

.coordonnée-zone:before {
  content: '';
  width: 100%;
  height: 100%;
  background: var(--color0);
  position: absolute;
  top: 0;
  left: 0;
  opacity: .8;
}

.coordonnée-zone {
  position: absolute;
  height: 94%;
  width: 450px;
  background: url(../images/bg-bague-2.jpeg);
  background-position-x: 0%;
  background-position-y: 0%;
  background-repeat: repeat;
  background-size: auto;
  z-index: 999;
  top: 50%;
  transform: translateY(-50%);
  right: 10%;
  border-radius: 8px;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 16px;
  font-family: var(--font_family_2);
  font-weight: normal;
  overflow: hidden;
  background-position: center;
  /*! background: var(--color3); */
}

.row.plan-maps:before {
  content: "";
  position: absolute;
  width: 104%;
  height: 115%;
  /*! border: 2px solid var(--color3); */
  left: -19px;
  bottom: 30px;
  z-index: 1;
  top: -21px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.NosPlanDAcces02 p {
  font-size: 19px;
  color: var(--color0);
}

.body-contact .NosPlanDAccesBg .row {
  display: flex;
}

.contact-plan-map {
  width: 50%;
  /*! height: auto; */
}

.contact-info {
  width: 50%;
  background: var(--color4);
}

.NosPlanDAcces02 .h.hicon {
  font-size: 34px;
  color: var(--color0);
  margin-bottom: 30px;
  font-weight: normal;
  text-transform: none;
}

.NosPlanDAcces.NosPlanDAcces02 .fas {
  display: block;
  font-size: 15px;
  margin: 0 0 12px;
  transform: rotate(0deg);
}

.NosPlanDAcces02 p strong {
  font-weight: 100;
}

/********************************/
.nosRealisations {
  background-image: url(../images/nosRealisations.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-color: var(--color2);
  text-align: center;
  overflow: hidden;
  z-index: 0;
}

.nosRealisations .container:before {
  content: '';
  position: absolute;
  width: 88%;
  left: 50%;
  margin-left: -44%;
  height: 100%;
  z-index: -1;
  border: 2px solid var(--color0);
  display: block;
}

.nosRealisations .h {
  font-size: 24px;
  color: var(--color0);
  margin: 40px 0 40px;
}

.nosRealisations .bx-viewport {
  margin-bottom: 30px;
}

.nosRealisations .leading {
  margin-bottom: 40px !important;
}

.nosRealisations a.seeMore {
  display: inline-block;
  padding: 12px 60px 8px 60px;
  position: relative;
  bottom: 0;
  margin-bottom: 30px;
  border: 2px solid var(--color0);
  color: var(--color0);
}

.nosRealisations a.seeMore:hover {
  border: 2px solid var(--color0);
  background-color: var(--color0);
  color: var(--color2);
}

.nosRealisations .bx-controls-direction a {
  width: 15px;
  height: 25px;
  background-color: transparent;
  opacity: 1;
}

.nosRealisations .bx-controls-direction a.bx-next {
  background-image: url(../images/next.png);
  right: 0;
}

.nosRealisations .bx-controls-direction a.bx-prev {
  background-image: url(../images/prev.png);
  left: 0;
}

.nosRealisations .bx-controls-direction a.bx-next:hover,
.nosRealisations .bx-controls-direction a.bx-prev:hover {
  opacity: .6;
}

.nosRealisations .bx-controls-direction {
  width: 34px;
  float: right;
  right: 73px;
  position: relative;
}

.nosRealisations ul {
  padding: 0;
  list-style: none;
  margin-bottom: 30px;
  float: left;
  width: 100%;
}

/********************************/
.ReservationBg-2 {
  position: relative;
  padding: 5em 3% 5em;
  background: var(--color1);
  /*! display: none; */
}

.ReservationBg-2 .h,
.ReservationBg-2 .datepicker-container .h {
  /*! text-transform:none; */
  color: #ffffff;
  padding-bottom: 10px;
  font-size: 35px;
  font-family: var(--font_family_2);
  position: relative;
  /*! width: fit-content; */
}

.ReservationBg-2 .row {
  /*! background: url(../images/presentation.jpeg); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
}



.body-contact .ReservationBg {
  padding: 0;
}


.ReservationBg .row .col-lg-6:nth-child(2) {
  /*! background: var(--color1); */
}


.datepicker-container .h {
  text-transform: none;
  font-size: ;
  color: var(--color4);
  padding-bottom: 45px;
  font-size: 36px;
  font-family: var(--font_family_2);
  position: .2em;
  width: fit-content;
  right: ;
  top: ;
  letter-spacing: .2em;
}

.datePickerZone .datepicker table tr th {
  color: var(--color5);
}

.body-contact .ReservationBg {
  background: none;
}

.reservation-bloc {
  width: 50%;
  background: #ffffff;
}

.body-contact .ReservationBg .row {
  display: flex;
}

.calendrier-bloc {
  width: 50%;
  padding: 0 51px;
}

.Reservation-Bg {
  background: var(--color3);
  padding: 0em 0;
  /*! padding-top: 3em; */
  display: flex;
}

.bg-calendar img {}

.box-calendar {
  width: 70%;
}

w {}

.box-img-calendar {
  width: 50%;
  background: url(../images/bg-rdv.jpeg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 0px 20px 20px 0px;
  display: none;
}

.datePickerZone .datepicker table tr td.today.day {
  color: var(--color0) !important;
  background-color: var(--color4) !important;
}

.datePickerZone .datepicker table tr td.today:hover:before {
  background: var(--color0);
  border-color: var(--color0);
  color: var(--color3);
}

.datePickerZone .datepicker table tr th.next i,
.datePickerZone .datepicker table tr th.prev i {
  background: var(--color5);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 10px;
}

.reserv-container,
.datepicker-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 30px;
}

.reserv-container {
  z-index: 1;
  padding: 65px 0;
  border-radius: 20px;
}



.img-reservation img {
  width: 65vh;
}

.box-carte {
  width: 45%;
  background: var(--color5);
}

.box-img-carte {
  width: 40%;
  margin-bottom: 0;
  margin-right: -3vw;
  z-index: 1;
  background: url(../images/formule-bg.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.img-reservation {
  /*! display: flex; */
  /*! justify-content: center; */
  /*! align-items: center; */
  /*! background: ; */
  /*! background: url(../images/formule-bg.png); */
  /*! background-position-x: 0%; */
  /*! background-position-y: 0%; */
  /*! background-repeat: repeat; */
  /*! background-size: auto; */
  /*! background-size: 101%; */
  /*! background-repeat: no-repeat; */
  /*! background-position: center; */
  /*! border-radius: ; */
}

.reserv-container h3,
.datepicker-container h3 {
  /*! margin-top: 45px; */
}

.ReservationText {
  position: relative;
}

.ReservationText {
  text-align: center;
  width: 100%;
  padding: 30px 0;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.ReservationText .h {
  font-size: 18px;
  color: #2e2e2e;
  text-transform: uppercase;
}

.ReservationText p {
  text-align: left;
  width: 100%;
  padding: 0;
  /*! line-height: 20px; */
  /*! font-size: 16px; */
  /*! color: var(--color3); */
  margin-bottom: 46px;
  font-family: var(--font_family_2);
}

.ReservationText .bouton-principale {
  width: fit-content;
}

.ReservationText .h {
  font-size: 18px;
  color: var(--color3);
  text-transform: uppercase;
}


#index .ReservationText p {
  font-size: 16px;
  /*! text-align: left; */
  margin-bottom: 0;
}

.body-contact-100 .ReservationBg {
  position: relative;
  padding: 0 0 0;
}

.theReservationText {
  position: relative;
  width: auto;
  height: auto;
  z-index: 0;
  background: var(--color3);
  padding: 100px 56px;
}

.body-contact .theReservationText {
  /*! background: url(../images/bande3.png); */
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  background: #ffffff;
}

.body-contact .theReservationText:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  /*! background: var(--color4); */
  opacity: .8;
  /*! z-index: -1; */
  display: none;
}

.body-contact .ReservationBg .theReservationText .h {
  /*! color: var(--color0); */
}

.ReservationBg .theReservationText .h {
  text-align: center;
  font-size: 24px;
  color: var(--color4);
  border: none;
  text-transform: uppercase;
  line-height: 1.5;
}

.theReservationText p {
  /*! color: var(--color0); */
  font-size: 16px;
}

.theReservationText ol {
  padding-left: 10px;
  /*! color: var(--color0); */
  font-size: 16px;
  margin-left: 10px;
}

.theReservationText ol li {
  position: relative;
}

.body-contact-100 .section {
  margin-bottom: 0 !important;
}

/**************************/
.datePickerZone .datepicker table tr td.today:before {
  color: var(--color2);
  background-color: transparent;
  border-color: var(--color0);
}

.datePickerZone .datepicker table tr td.disabled,
.datePickerZone .datepicker table tr td.disabled:hover {
  color: var(--color4) !important;
  cursor: no-drop;
  opacity: 0.4;
}

.datePickerZone .datepicker table tr td.day:hover,
.datePickerZone .datepicker table tr td.focused {
  color: var(--color0) !important;
}

.datePickerZone .datepicker table tr td.day {
  color: var(--color2);
  border: 1px solid var(--color4);
  padding: 20px 55px;
}

.body-contact .datePickerZone .datepicker table tr td.day {
  color: var(--color2);
  border: 1px solid var(--color4);
  padding: 25px 20px;
}

.datePickerZone .datepicker table tr td.old {
  color: var(--color2);
  opacity: .6;
}

.datePickerZone .datepicker table tr td::before {
  border-radius: 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin-left: auto;
  margin-top: 0;
}

.datePickerZone .datepicker table tr td.new.day {
  color: var(--color2);
  opacity: .9;
}

.datePickerZone .datepicker table tr td.day:hover:before,
.datePickerZone .datepicker table tr td.focused:before {
  background: var(--color5);
  border-radius: 0;
}

.datePickerZone .datepicker .datepicker-switch {
  color: var(--color0);
  background: var(--color4);
  border-radius: 0;
}

.datePickerZone .datepicker .datepicker-switch,
.datePickerZone .datepicker .prev,
.datePickerZone .datepicker .next,
.datePickerZone .datepicker tfoot tr th {
  color: var(--color0);
}

.datePickerZone .datepicker table tr td.active.active:before {
  background: var(--color5);
}

.datePickerZone {
  padding: 20px 0px;
}

.Reservation-Bg .datePickerZone {
  padding: 0px 0px;
}

.datepicker-inline {
  width: 100%;
}

.beforeFooter {
  position: relative;
  padding: 20px 0 0;
  background-color: var(--color0);
  text-align: center;
  background-image: url(../images/beforeFooter.jpg);
  background-repeat: no-repeat;
  background-position: 50% 0;
}

.beforeFooter .h {
  font-size: 29px;
  color: var(--color2);
  margin-bottom: 10px;
  margin-top: 30px;
}

.beforeFooter p {
  font-size: 18px;
  color: var(--color2);
  margin-bottom: 50px;
}

.beforeFooter ul {
  text-align: left;
  padding-left: 20px;
}

.beforeFooter ul li {
  list-style-image: url(../images/puce.png);
  font-size: 20px;
  color: var(--color4);
  line-height: 40px;
}

.beforeFooter .storeLinks {
  padding: 15px;
  display: inline-block;
}

.storeLinksBg {
  margin: 20px 0;
}

.beforeFooterImg02 {
  float: right;
}

.qrCode {
  position: relative;
  top: -20px;
}

/***************************/
.modal-content label.checkbox.label-rgpd span.text-warning {
  position: absolute;
  bottom: -20px;
}

.modal {
  z-index: 9999;
  font-size: 16px;
  color: var(--color4);
}

.modal-backdrop {
  z-index: 0;
}

.modal-content {
  border-radius: 0px;
  padding: 30px;
  background: var(--color1);
}

.modal-content .h {
  margin-bottom: 50px;
  font-size: 23px;
  color: var(--color2);
  text-transform: none;
  text-align: center;
}

.modal-content .h:after {
  display: none;
}

.modal-content .form-control {
  height: 50px;
  line-height: 1;
  line-height: 48px \9;
  padding: 0 0 0 12px;
  box-shadow: none;
  border-radius: 0;
  border: 1px solid var(--color5);
  background-color: transparent;
  font-size: 14px;
  line-height: normal;
}

.modal-content .form-group:after {
  clear: both;
  display: table;
  content: " ";
}

.modal-content input[name="captcha"]+a,
.modal-content .form-control {
  height: 46px !important;
}

.modal-content input[name="captcha"] {
  width: 100% !important;
  margin-right: 2%;
}

.modal-content input[name="captcha"]+a {
  width: 100% !important;
  text-align: center;
}

.modal-content input[name="captcha"]+a img {
  width: auto !important;
  height: 100% !important;
  margin: 0 auto;
}

.modal-content textarea.form-control {
  padding: 20px 10px;
  box-shadow: none;
  border-radius: 0;
  border: 1px solid var(--color5);
  resize: vertical;
  height: 150px !important;
}

.modal-content input[type=number] {
  padding-right: 0px;
}

.modal-content label {
  padding-left: 0px;
  font-size: 15px;
  padding-top: 13px;
  font-weight: normal;
  margin-top: 0;
  color: var(--color4);
  display: block;
}

.modal-content .btn-default {
  padding: 14px 140px 10px 140px;
  background: var(--color0);
  border: 1px solid var(--color4);
  text-transform: uppercase;
  color: var(--color4);
  border-radius: 0px;
  font-size: 14px;
  text-decoration: none;
  transition: all 400ms ease;
}

.modal-content .btn-default:hover {
  color: var(--color0);
  background: var(--color4);
}

.modal-content .description {
  margin: 20px 0 0 0;
  font-size: 14px;
}

.modal-content .obligatoire {
  font-size: 9px;
  padding: 10px 0 0 0;
  margin-bottom: 20px;
  font-style: italic;
  color: var(--color3);
}

.modal-content .form-group {
  margin-bottom: 20px;
}

.actuAndNewsletterBg {
  padding: 60px 1%;
  background-color: var(--color0);
  display: none;
}

.NewsletterBg p:nth-child(1) {
  font-size: 1.7vw;
  font-weight: normal;
  font-family: var(--font_family_1);
  letter-spacing: 1px;
  color: var(--color6);
}

.block #newsletter_form input[type="text"] {
  color: var(--color2);
  border-color: var(--color2);
  border-right: 0;
}

.block #newsletter_form input[type="submit"] {
  padding: 10px 13px 8px;
}

.actuAndNewsletter-container {
  position: relative;
  width: 100%;
  height: 100%;
  background: url(../images/bg-bague-1.jpeg);
  padding: 4px 40px;
  display: flex;
  align-content: center;
  justify-content: space-around;
  align-items: center;
  z-index: 1;
  background-size: contain;
  background-repeat: no-repeat;
  border-radius: 20px;
}

.actuAndNewsletter-container:before {
  color: ;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../images/bg-bague-4.jpeg);
  position: absolute;
  opacity: .8;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right;
}

.modal-header {
  padding: 0;
  border-bottom: 0px solid var(--color1);
  min-height: 16.42857143px;
}

.modal-header .btn {
  margin-top: 0;
  background-color: transparent;
  font-size: 25px;
  color: var(--color3);
  padding: 0;
  top: -6px;
  float: right;
  margin-right: 10px;
}

.modal-header .btn i.fa.fa-times {
  font-style: normal;
  float: right;
  font-size: 19px;
  color: var(--color5);
}

.modal-header .btn:focus,
.modal-header .btn:hover {
  color: var(--color3);
}

.parallax {
  position: relative;
  width: 100%;
  height: 100%;
}

.parallax .banner img {
  position: relative;
  top: -117%;
}

#lol {
  position: relative;
}

#modal-calendar .modal-header,
#modal-evenement .modal-header {
  margin-bottom: 40px;
  border-bottom: 1px solid var(--color3);
}

#modal-calendar .datePickerZone {
  padding: 0 0 30px 0;
}

#modal-calendar .modal-footer {
  border-top: 0;
  text-align: center;
}

/****************/
.body-contact-100+#modal-evenement .modal-header .btn-prev,
.body-page-1+#modal-evenement .modal-header .btn-prev {
  display: none;
}

/****************/
.spContainer {
  width: 100%;
  height: 668px;
  position: relative;
}

.sp {
  width: 100%;
  height: 668px;
  top: 0;
  left: 0;
  position: absolute;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}

.sp01 {
  background-image: url('../images/sp01.png');
  z-index: 2;
}

.sp02 {
  background-image: url('../images/sp02.png');
  z-index: 1;
}

.sp03 {
  background-image: url('../images/sp03.png');
  z-index: 0;
}

.help-block {
  font-size: 1.2rem;
}

.help-block {
  color: var(--color3);
}

/**/
.costumRadio {
  padding-top: 13px;
  padding-bottom: 10px;
  height: 50px;
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: initial;
}

.form-horizontal .radio-inline {
  margin-top: 3px;
}

.menu_referencement h2 {
  text-transform: uppercase;
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 600;
}

.contact {
  margin-top: 20px;
  /*! background: var(--color0); */
  padding: 0 3%;
}

/* nos Services/* ****************************** */
.btn-service {
  text-align: center;
  margin: 15px 0;
}

.isServiceList .content {
  padding: 0;
  width: 100%;
}

.nosServicesBg {
  padding-top: 40px;
  padding-bottom: 40px;
  position: relative;
  background-color: var(--color1);
  color: var(--color0);
}

.nosServicesBg .h {
  color: var(--color0);
  text-align: left;
}

.nosServicesBg .hicon:after {
  background-color: transparent;
  margin: 0 !important;
}

.nosServicesBg .content {
  padding: 40px 0;
  float: left;
  background-color: transparent;
}

.linkList {
  padding: 0;
  margin: 10px 0 0 0;
  list-style: none;
  float: left;
}

.linkList li {
  display: block;
  width: 100%;
  float: left;
}

.linkList li a {
  font-size: 18px;
  color: var(--color2);
  padding: 10px 15px 10px 50px;
  background-image: url(../images/r_arr_h.png);
  background-color: var(--color0);
  background-repeat: no-repeat;
  background-position: 15px 50%;
  display: inline-block;
  margin: 0 0 19px 0;
  border: 1px solid var(--color0);
  min-width: 90%;
  text-align: left;
}

.linkList li a:hover {
  background-image: url(../images/r_arr.png);
  color: var(--color0);
  border: 1px solid var(--color0);
  background-color: var(--color2);
  text-decoration: none;
}

.body-service-list .fluid-contenu .container {
  width: 100%;
  max-width: 100%;
}

/**/


.btn-service a:before {
  background: transparent;
}

.btn-service a:hover:before {
  background: var(--color3);
}

a.bouton-principal,
button.bouton-principal {
  text-align: center;
  color: var(--color0);
  border: 1px solid var(--color5);
  text-decoration: none;
  padding: 11px 30px;
  text-transform: unset;
  font-size: 18px;
  line-height: 1;
  font-weight: normal;
  letter-spacing: 1px;
  background: var(--color5);
  border-radius: var(--border-radius);
}

a.bouton-principal .btn-horizontal-deco::before {
  background: var(--color4)
}

.infinite-scroll.bas-galerie {
  text-align: center;
  margin: 52px 0;
}

a.bouton-principal .btn-horizontal-deco::after {
  background: var(--color4)
}

a.bouton-principal .btn-verticale-deco::before {
  background: var(--color4)
}

a.bouton-principal .btn-verticale-deco::after {
  background: var(--color4)
}

.row.ligne-photos.retrait.centerservice2 {
  margin: 0 16% !important;
}

.row.ligne-photos.retrait.centerservice {
  margin: 0 33% !important;
}

.body-service-list .services .tableGrid.row .h {
  text-align: left;
  margin-bottom: 26px !important;
  margin: 0;
}

.body-service-list .services .tableGrid.row .h:after {
  display: none;
}

.body-service-list .services .h {
  text-align: center;
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .service_sub_title {
  font-size: 22px;
  color: var(--color5);
  padding: 0 0 5px;
}

.body-service-list .services .tableGrid.row .bodyContent {
  text-align: left;
  padding: 4vw 2vw;
  height: 50vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.isServiceList #main {
  width: 100%;
}

.bodyContent p {
  margin-bottom: 30px;
  text-align: left;
}

.body-service-list .main_bg {
  padding-bottom: 0;
  padding-bottom: 80px;
  min-height: 600px;
  z-index: 1;
  position: relative;
}

.body-service-list .bodyContent .h {
  text-align: initial;
}

.service_sub_title {
  font-size: 19px;
  color: var(--color5);
  padding: 12px 0 5px;
}

.nosServicesBg ul {
  padding: 0;
}

.nosServicesBg .bx-wrapper {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.nosServicesBg .bx-viewport {
  position: absolute !important;
  height: 100% !important;
  width: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.nosServicesBg .mainSectionSlider {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.services .bx-wrapper {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.services .bx-viewport {
  position: absolute !important;
  height: 100% !important;
  width: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.services .mainSectionSlider {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  padding: 0;
  list-style: none;
}

.services .mainSectionSlider .blazy {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /*! border: 4px solid var(--color0); */
  background-position: center;
}

.nosServicesBg .bx-viewport li,
.services .bx-viewport li {
  height: 100%;
  list-style: none;
}

.services .bx-pager,
.mainSectionSliderBg .bx-pager {
  z-index: 99;
}

.services .tableGrid>.table-row:before {
  content: '';
  position: absolute;
  width: 23%;
  height: 125%;
  background: var(--color5);
  left: -50px;
  top: 50%;
  z-index: 0;
  transform: translateY(-50%);
}

#modal-evenement #captchaReservation {
  width: 302px;
  margin: 0 auto;
}

button#submitReservation {
  margin-top: 10px;
  border: 1px solid var(--color2);
}

button#submitReservation:hover {
  border-color: var(--color1);
}

button#submitReservation:hover {
  background: var(--color3);
}

.modal-header strong {
  font-size: 19px;
  color: var(--color2);
}

.bootstrap-timepicker .input-group-addon {
  cursor: pointer;
  background: transparent;
  border: 0.5px solid var(--color5);
  border-left: transparent;
}

span.input-group-addon {
  background: transparent;
  border: 0.5px solid var(--color5);
}

.input-group.date.datepicker2 input,
.input-group.bootstrap-timepicker.timepicker input {
  cursor: pointer !important;
}

.g-recaptcha {
  display: inline-block;
  margin: 0 auto;
}

.text-warning {
  color: var(--color5) !important;
  display: block;
  margin-top: 1px;
  margin-bottom: 0;
  font-style: italic;
  font-size: 12px;
}

button.btn.btn-prev {
  display: none;
}

.alert {
  font-size: 14px;
  display: none;
}

/* Bouton remonter */
.remonter {
  position: fixed;
  z-index: 9999;
  display: none;
  bottom: 24px;
  right: 50px;
  width: 4rem;
  height: 4rem;
  background: var(--color5);
  border-radius: var(--border-radius);
}

.remonter button {
  display: block;
  padding: 2px;
  text-align: center;
  background: transparent;
  border-radius: 3px;
  border: none;
  width: 4rem;
  height: 4rem;
}

.remonter button:hover {
  opacity: 0.8;
  filter: alpha(opacity=80)
}

.remonter button svg circle {
  fill: var(--color0);
  background: none;
}

.remonter button svg path {
  fill: var(--color2);
}

.g-recaptcha-d-table {
  display: table;
  width: 100%;
}

.contact .g-recaptcha {
  margin-right: 0;
  background-color: var(--color0);
  display: table-cell;
  vertical-align: top;
  float: left;
  text-align: center;
  margin-bottom: 0;
  border-radius: 0;
  position: relative;
  z-index: 1;
}

.contact .form-actions {
  text-align: left;
  margin-top: -112px;
  position: absolute;
}

.g-recaptcha {
  display: inline-block;
  margin: 0 auto;
}

.contact .form-group .btn-primary {
  float: right;
  width: 30%;
  vertical-align: top;
  display: table-cell;
  line-height: 0;
  font-weight: normal !important;
  color: var(--color2);
  margin-top: 18px;
  height: 62px !important;
  background: var(--color5);
  border-color: var(--color2);
  position: relative;
  border-radius: var(--border-radius);
}

.form-group .btn-primary:hover {
  background-color: var(--color3);
  border: 1px solid var(--color4);
  color: var(--color2);
}

.body-pageseo .btn-primary {
  /*! padding: 2em 1em; */
  /*! width: 24% !important; */
  /*! min-width: 164px; */
}

/**********responsive**********/
@media (min-width:768px) {
  .modal-lg {
    width: 900px;
  }
}

@media (min-width:1200px) {

  .modal-content label.visible {
    display: block;
  }
}

/* Landscape tablet and dated desktop */
@media (min-width:980px) and (max-width:1199px) {
  .menu_footer li a {
    font-size: 14px;
  }

  .navbar {
    padding: 0;
  }

  .navbar-nav>li>a {
    padding: 7px 10px;
    font-size: 18px;
  }

  .NewsletterBg {
    padding: 90px 20px 76px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .carte p.header {
    margin-bottom: 0;
  }

  .carte .labels {
    margin-top: 0;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 290px;
  }

  .nav-pills li,
  .nav-pills>li+li {
    margin: 0;
  }

  .body-gallery .main_bg .blockCenter {
    width: 118vw;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .modal-lg {
    width: 900px;
  }

  .hicon,
  h1,
  .h1 {
    font-size: 25px;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }
}

.datePickerZone .datepicker table tr td.today:active:hover:before,
.datePickerZone .datepicker table tr td.today.active:hover:before,
.open>.dropdown-toggle.datepicker table tr td.today:hover:before,
.datePickerZone .datepicker table tr td.today:active:focus:before,
.datePickerZone .datepicker table tr td.today.active:focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:focus:before,
.datePickerZone .datepicker table tr td.today:active.focus:before,
.datePickerZone .datepicker table tr td.today.active.focus:before,
.open>.dropdown-toggle.datepicker table tr td.today.focus:before,
.datePickerZone .datepicker table tr td.active:active:before,
.datePickerZone .datepicker table tr td.active.highlighted:active:before,
.datePickerZone .datepicker table tr td.active.active:before,
.datePickerZone .datepicker table tr td.active.highlighted.active:before,
.open>.dropdown-toggle.datepicker table tr td.active:before,
.open>.dropdown-toggle.datepicker table tr td.active.highlighted:before {
  background: var(--color0);
  color: var(--color3);
  border-color: var(--color0);
}

/* Portrait tablet to landscape and desktop */
@media (max-width:991px) {
  .flex-seoContain .seo-content p {
    padding-top: 27px;
  }

  .services .tableGrid>.table-row:before {
    display: none;
  }

  .footer-coordonnees .col-lg-5 {
    margin-bottom: 46px;
  }

  .copyright-footer {
    margin-bottom: 0;
    text-align: center;
  }

  .scrollbars {
    margin: 15px 0 0;
    height: 160px;
    position: relative;
    float: left;
    width: 100%;
    padding: 0 35px 0px 0px;
    overflow: auto;
  }

  .footer1_bg {
    position: relative;
    padding: 30px 3% 0px;
  }

  .actuAndNewsletter-container:before {
    color: ;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url(../images/bg-bague-4.jpeg);
    position: absolute;
    opacity: .8;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right;
  }

  .NosPlanDAcces02 .h.hicon {
    font-size: 1em !important;
  }

  .coordonnée-zone {
    position: absolute;
    height: 84%;
    width: 323px;
    background: url(../images/bg-bague-2.jpeg);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    z-index: 999;
    top: 50%;
    transform: translateY(-50%);
    right: 10%;
    border-radius: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 16px;
    font-family: var(--font_family_2);
    font-weight: normal;
    overflow: hidden;
    background-position: center;
    /*! background: var(--color3); */
  }

  #main {
    padding: 9em 3%;
    width: 100%;
  }

  .ReservationBg-2 {
    position: relative;
    padding: 9em 3%;
    background: var(--color0);
  }

  .ReservationBg .h,
  .datepicker-container .h {
    text-transform: none;
    font-size: 25px !important;
    color: var(--color4);
    padding-bottom: 23px;
    font-size: 6em;
    font-family: var(--font_family_2);
    /*! position: absolute; */
    /*! width: fit-content; */
    /*! right: 1%; */
    /*! top: -97px; */
  }

  .Reservation-Bg {
    background: var(--color3);
    padding: 0em 0;
    /*! padding-top: 3em; */
    display: flex;
    flex-direction: column;
  }

  .box-img-calendar {
    width: 100%;
  }

  .ReservationBg-2 .h,
  .ReservationBg-2 .datepicker-container .h {
    margin-top: -38px;
    /*! right: 27%; */
    transform: ;
  }

  .box-carte {
    width: 100%;
  }

  .box-img-carte {
    width: 100%;
  }

  .ReservationBg-2 .row {
    /*! background: url(../images/presentation.jpeg); */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color3);
    flex-direction: column-reverse;
  }

  .dream-img {
    width: 94%;
    background: url(../images/bande-2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;

    background-position: right;
  }

  .dream-liste {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 23em 3% 9em;
  }

  .dream-content {
    width: 76%;

    padding: 2em 2em 1em 2em;
    bottom: auto;
    top: 160px;
  }

  .flex-head-txt {}

  .section-numbers .container {}

  .fact-area.chiffres-section {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 22px 0px 5em;
  }

  .fact-area.chiffres-section .row {
    width: 100%;
  }

  .section-numbers .container {
    padding: 0em 0% 0em;
  }

  .fact-card h2 {
    /*! font-size: 3em; */
  }

  .slide-parallax {
    height: auto !important;
  }

  .body-page .bannier {
    height: auto !important;
  }

  .body-page .header {
    height: 30vh !important;
  }

  .reservation-bloc {
    width: 100%;
  }

  .box-calendar {
    width: 100%;
    padding: 34px 25px 0;
  }

  .calendrier-bloc {
    width: 100%;
  }

  .body-contact .ReservationBg .row {
    display: flex;
    flex-direction: column-reverse;
  }

  .body-page .bannier {
    margin-top: 0;
  }

  .flex-seoContain {
    flex-wrap: wrap;
  }

  .flex-seoContain .seo-content {
    width: 100%;
    background: transparent;
    padding: 0 3% 3em;
  }

  .flex-seoContain .seo-form {
    width: 100%;
    padding: 1em 3% 10em;
  }

  .img-seo img {
    width: 100%;
    height: auto;
  }

  a.imagecont.noflicker.img1 {
    float: inherit;
    margin: 0 0 10px !important;
  }

  .NosPlanDAccesBg {
    height: auto;
    padding: 14px 2%;
  }

  .NosPlanDAcces01 {
    height: 70vh;
    margin-bottom: 15px;
  }

  .NosPlanDAcces02 {
    height: auto;
    padding: 5px 20px 10px;
    display: flex;
    flex-direction: column;
  }

  .note-avis {
    flex-direction: column
  }

  .contact .form-group .btn-primary,
  .contact .formulaire .form-group input.btn-primary {
    width: 100%;
    margin-top: 8px;
    float: none
  }

  .form,
  .body-pageseo .contact,
  #contact-form {
    padding: 0 0%;
    margin: 0;
  }

  #gallery>div.blockCenter>div.col-lg-3.col-md-3.col-sm-4.col-xs-6.nopadding {
    margin: 0;
  }

  .visible-xs {
    display: block !important
  }

  .hidden-xs {
    display: none !important;
  }
}

@media (min-width:768px) and (max-width:979px) {
  .services-home {
    padding: 60px 0 20px !important
  }

  .engegements-content {
    padding: 30px 20px !important
  }

  .head-img.img-1,
  .head-img.img-2 {
    width: 100% !important;
    right: 0 !important;
    height: 200px;
    top: 0;
    margin: 0 5px;
  }

  .nosServicesBg .mainSectionSlider .show,
  .nosServicesBg .mainSectionSlider .blazy,
  .services .mainSectionSlider .show,
  .services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
  }

  .nosServicesBg .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .row.ligne-photos.retrait.centerservice2 {
    margin: 0 0 !important;
  }

  .row.ligne-photos.retrait.centerservice {
    margin: 0 20% !important;
  }

  .nosServicesBg .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none;
  }

  .nosServicesBg .bx-viewport li,
  .services .bx-viewport li {
    height: 100%;
    list-style: none;
  }

  .services .bx-pager,
  .mainSectionSliderBg .bx-pager {
    z-index: 9999;
  }

  .modal-content label {
    padding-top: 10px !important;
  }

  .menu_referencement h2 {
    text-align: center;
    font-size: 20px;
  }

  .hicon,
  h1,
  .h1,
  .h {
    font-size: 4em !important;
  }

  h2,
  .h2 {
    font-size: 18px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .NewsletterBg {
    padding: 50px 20px 36px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 290px;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .vis01 {
    width: 60%;
    margin: 0 auto;
    display: block;
    float: none;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
    background-color: var(--color2);
  }

  .beforeFooter {
    background-repeat: repeat;
  }

  .body-gallery .main_bg .blockCenter {
    width: 100%;
    padding: 0;
    margin-left: 0;
    left: 0;
    right: 0;
    display: block;
    float: left;
    position: relative;
    padding: 0 1%;
  }

  .body-gallery .main_bg {
    overflow-x: hidden;
    padding: 0;
  }

  .news .item .h {
    margin: 0 0 20px 0;
  }

  .modal-lg {
    width: 740px;
  }

  .datePickerZone {
    margin-bottom: 40px;
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 17px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
  }

  .address p {
    margin-bottom: 40px;
  }
}

@media (max-width: 1440px) {

  .contact label,
  .body-contact label {
    display: block;
    width: 100%;
    font-size: 15px;
    color: var(--color6);
  }

  .contact-block {
    padding: 4em 0%;
  }

  h1,
  .h1 {
    font-size: 55px;
  }

  .valeur-block.reverse-bloc .valeur-image img {
    height: 350px;
  }

  .menu_footer li a {
    font-size: 11px;
  }

  .btn-partage .btnp {
    margin: 4px 3px;
  }

  .title_footer {
    margin-bottom: 30px;
    font-size: 25px;
    font-weight: normal;
    font-family: var(--font_family_1);
    letter-spacing: 1px;
    color: var(--color6);
  }

  .row.footer-coordonnes {
    padding: 3em 3% !important;
  }

  .footer2_bg .row hr {
    width: 95%;
    left: 51%;
    transform: translate(-50%, 0);
  }

  .menu_footer {
    padding: 0;
  }

  .atouts-card {
    width: 30%;
  }

  .atouts-cards-2 {
    gap: 0px;
  }

  .nos-realisations .row.recup-photo {

    grid-template-rows: 300px 300px;

  }

  .reservation-text-zone {
    background: var(--color0);
    padding: 1em 2em;
    position: relative;
    z-index: 4;
    left: 108px;
    border-radius: var(--border-radius);
  }

  .btns-dream {
    bottom: 29px;
    right: 8%;
  }

  .dream-item-right {
    height: calc(93% - 45px);
    padding: 20px 2.5% 20px 13.6%;
    width: 45%;
  }

  .dream-item-left {
    height: 410px;
  }

  #main h1 {
    font-size: 38px;
  }

  .body-page-1 .slogan {
    margin-left: 14px;
  }

  .subtitle-back {
    position: absolute;
    top: 45%;
    transform: rotate(90deg);
    left: -13%;
    font-size: 55px;
    color: var(--color4);
  }

  .reserv-container {
    padding: 50px 0;
  }

  .dream-liste {
    padding: 5em 2% 9em;
  }

  .body-page-1 .sous-titre {
    font-size: 18px;
    padding: 0 6% 10px;
  }

  .slogan h1 {
    font-size: 36px;
  }

  .body-page-1 #main {
    padding: 0em 5% 0;
    width: 100%;
    /*! background: var(--color3); */
    overflow: hidden;
  }

  .titre {
    font-size: 32px !important;
    !i;
    !;
    line-height: .9975em;
    letter-spacing: .2em;
    font-family: var(--font_family_1);
    color: var(--color0);
    text-align: center;
    font-weight: 700;
    margin-top: 20%;
  }

  .ReservationBg-2 .h,
  .ReservationBg-2 .datepicker-container .h {
    /*! text-transform:none; */
    /*! color:var(--color4); */
    /*! padding-bottom: 10px; */
    /*! font-size: 6em; */
    /*! font-family: var(--font_family_2); */
    /*! position: absolute; */
    /*! width: fit-content; */
    /*! right: 10%; */
    /*! margin-top: -108px; */
  }

  .img-reservation img {
    width: 67%;
    height: 452px;
  }

  .ReservationBg-2 {
    position: relative;
    padding: 9em 3%;
    background: var(--color0);
  }

  .fact-area {}

  .itemtext h2 {
    font-family: var(--font_family_1);
    font-size: 70px;
    font-weight: bold;
  }

  .itemtext p {
    font-family: var(--font_family_1);
    color: var(--color6);
    font-size: 23px;
    font-weight: bold;
    width: 100%;
    text-align: center;
    margin: 0;
    line-height: normal;
  }

  .swip-liste-AT .swiper.mySwiper {
    margin: 0px 0%;
    overflow: hidden;
  }

  .one-service.item {
    position: relative;
    width: 100%;
    height: 411px !important;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: ;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
  }

  .engegements-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 40px 6% !important;
  }

  #main {
    padding: 3em 5% 9em;
    width: 100%;
  }

  .head-btn>a,
  .head-btn>p {
    padding: 9px 20px;
  }

  .ReservationBg {
    padding: 8em 0% 8em !important;
    background-size: 100%;
  }

  .NosPlanDAcces02 .h {
    margin-bottom: 10px
  }

  .block.block-2 .form-inline .form-group input {
    width: 100% !important
  }

  .flex-head {
    justify-content: space-between;
    padding: 0 1%;
  }

  .head-img.img-2 {
    width: 40%;
    right: -50%;
  }

  .slogan {
    left: 0;
    width: 100%;
  }

  .header01bg {
    padding: 0 2%;
  }

  .slide-parallax {
    right: 3%;
    width: 40%;
  }
}

@media (max-width:1023px) {
  .header {
    height: 20vh;
  }

  .flex-head-img {
    display: flex;
    justify-content: center;
    height: 100% !important;
    width: 100%;
  }

  .NosPlanDAcces02 .h {
    margin-bottom: 10px;
  }

  .body-page .header {
    height: 50vh !important;
  }

  .body-page .bannier {
    height: 100%;
  }

  .slide-parallax {
    position: static;
    width: 100%;
    height: 60%;
    border: 0;
  }

  .slogan {
    position: static;
    width: 100%;
    height: fit-content;
    background: var(--color3);
    padding: 15px 10%;
  }

  .slogan h1 {
    text-align: center;
    margin: 0 auto !important;
  }

  .sous-titre {
    padding: 10px 0 10px;
  }

  .head-btn>a,
  .head-btn>p {
    width: 90%;
    padding: 6px;
    margin: 8px 5px;
    font-size: 16px !important;
  }

  .body-pageseo .section,
  .body-page-1 .section {
    padding: 60px 0 !important;
  }

  .flex-head {
    flex-direction: column-reverse;
    padding: 0 10%;
  }

  .flex-head-txt {
    width: 100%;
    margin-bottom: 20px;
    height: ;
  }

  .footer2_bg {
    width: 100%;
  }

  .actuAndNewsletter-container {
    flex-direction: column;
  }

  .actuAndNewsletter.actuAndNewsletter01,
  .actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
    width: 100% !important;
  }

  .block.block-2 .form-inline .form-group input {
    width: 100% !important
  }

  .ReservationBg {
    padding: 3em 0% 0em !important;
  }

  .datepicker-container {
    padding: 0
  }
}

/* Landscape phone to portrait tablet */
@media (max-width:1300px) {
  .tel-tracker {
    display: none
  }

  .nav-logo {
    width: 15%;
    padding-left: 8px;
  }

  .nav-liste {
    width: 85%;
    justify-content: flex-end;
  }
}

@media (max-width:767px) {
  .engegements-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 40px 3% 0 !important;
  }
  .contact-block .contact-image img {
  height: 435px;
}
  .contact-block .contact-signature img {
  width: 100%;
  height: 100%;
  border: none;
}
   .body-gallery-98 .nav-pills {
  margin-bottom: 40px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
}
  .contact .contact-image img {
    width: 100%;
    height: 741px;
    border-radius: 30px;
    object-fit: cover;
    border: 1px solid var(--color5);
    border: none;
  }

  .contact-content {}

  .contact-image {
    position: relative;
    text-align: right;
  }

  .contact-block {
    padding: 0em 0%;
    flex-direction: column;
    gap: 130px;
  }

  a.bouton-principal,
  button.bouton-principal {
    text-align: center;
    color: var(--color0);
    border: 1px solid var(--color5);
    text-decoration: none;
    padding: 11px 30px;
    text-transform: unset;
    font-size: 18px;
    line-height: 1;
    font-weight: normal;
    letter-spacing: 1px;
    background: var(--color5);
    border-radius: var(--border-radius);
    margin: 0 auto;
  }

  .contact label,
  .body-contact label {
    display: block;
    width: 100%;
    font-size: 15px;
    color: var(--color6);
    text-align: left;
  }

  .contact_footer_container .contact-div {
    width: 100%;
    background: var(--color1);
    margin: 0;
    padding: 0em 1em 9em;
    position: relative;
    border-bottom: 1px solid var(--color4);
  }

  .contact_footer_container .contact-footer-images {
    width: 100%;
    background: url(../images/image-contact.jpeg);
    background-position: bottom;
    background-size: cover;
    position: relative;
    height: 344px !important;
    !i;
    !;
  }

  .footer2_bg .row hr {
    display: none;
  }

  .title_footer {
    margin-bottom: 20px;
    font-size: 30px;
    font-weight: normal;
    font-family: var(--font_family_1);
    letter-spacing: 1px;
    color: var(--color6);
  }

  .footer1_bg {
    position: relative;
    padding: 0px !important;
    !i;
    !;
  }

  .row.footer-coordonnes {
    padding: 3em 0% !important;
  }

  .menu_footer li a {
    font-size: 16px;
  }

  .contact .form-actions {
    text-align: left;
    margin-top: 0px;
    position: absolute;
  }

  .contact-footer .subtitle {
    font-family: var(--font_family_1) !important;
    font-size: 20px;
    margin-top: 0;
    text-transform: initial;
    color: var(--color2);
    font-weight: normal;
    line-height: 20px;
  }

  .body-gallery-51 #main:after {
    display: none;
  }

  .menu_footer>li {
    list-style: none;
    display: inline-block;
    margin: 5px 15px 5px 0px;
    position: relative;
    text-align: center;
    border-right: 0px solid var(--color3);
    line-height: 1.1;
    color: var(--color3);
  }

  .coord {
    padding: 0;
  }

  .contact-info {
    width: 100%;
    background: var(--color3);
  }

  .contact-plan-map {
    width: 100%;
    padding: 0 3%;
  }

  .body-contact .NosPlanDAccesBg .row {
    display: flex;
    flex-direction: column-reverse;
  }

  .bodyContent p {
    margin-bottom: 30px;
    text-align: center;
  }

  .body-service-list .services .tableGrid.row .h {
    text-align: center;
    margin-bottom: 15px;
  }

  .body-service-list .services .tableGrid.row .bodyContent {
    text-align: center;
    padding: 4vw 2vw;
  }

  .body-service-list .main_bg {
    padding-bottom: 0;
    padding-bottom: 0;
    min-height: 600px;
    z-index: 1;
    position: relative;
  }

  .contact_footer_container .container {
    padding: 5em 3%;
  }

  .carte.section .group-mobile .group .titreetdescription .item-title {
    color: var(--color5) !important;
    font-size: 22px;
  }

  .carte .group-title {
    font-size: 27px;
    margin-top: 29px;
    margin-bottom: 50px;
  }

  .carte.section .group-mobile .group .blazy a img {
    position: relative;
    width: 100%;
    height: 30vh;
  }

  .btn-primary {
    min-width: 264px;
    padding: 10px 10px !important;
  }

  .swiper-pagination {
    color: var(--color0);
  }

  .btns-dream .swiper-button-prev .fa-chevron-left::after,
  .btns-dream .swiper-button-next .fa-chevron-right::after {
    background: var(--color0);
  }

  .btns-dream .swiper-button-next i,
  .btns-dream .swiper-button-prev i {
    font-size: 18px;
    color: var(--color0);
  }

  .btns-dream {
    bottom: 5px;
    right: 40px;
  }

  .dream-card {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    flex-direction: column;
  }

  .dream-item-left {
    position: relative;
    display: inline-block;
    width: 100%;
    vertical-align: middle;
    width: 100%;
    margin: 6px 0 0;
    height: 265px;
    margin-left: 0px;
    margin-bottom: -22px;
  }

  .dream-item-right {
    position: relative;
    width: 100%;
    z-index: -2;
    padding: 42px 4% 55px 4%;
    box-sizing: border-box;
    margin-right: 0px;
    height: 335px;
  }

  .footer1_bg .footer2_bg .row {
    padding: 0em 0% 2em;
  }

  .ReservationBg {
    position: relative;
    padding: 5em 10%;
    background: var(--color0);
    background: none;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
  }

  .img-reservation img {
    width: 100%;
    height: 257px;
  }

  #contactButtonsMobile a {
    background-color: var(--color5) !important;
    color: #fff !important;
    text-decoration: none;
  }

  #contactButtonsMobile a svg path {
    fill: #fff;
  }

  .atout_box {
    padding: 0;
  }

  .atouts .atouts-cont {
    padding: 1rem 5% 6rem;
  }

  .atouts-card {
    width: 100%;
  }

  .body-service-list .services .tableGrid.row {
    overflow-x: hidden;
    margin: 2em 0 4em;
  }

  .calendrier-bloc {
    width: 50%;
    padding: 0;
  }

  .bannier {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--color3);
    z-index: 1;
    padding: 0 0 0;
  }

  .datePickerZone .datepicker table tr td.day {
    color: var(--color2);
    border: 1px solid var(--color4);
    padding: 14px 15px;
  }

  .body-contact .datePickerZone .datepicker table tr td.day {
    color: var(--color2);
    border: 1px solid var(--color4);
    padding: 14px 17px;
  }

  .menu_footer li {
    display: block;
    padding: 0 0 4px;
    background: 0 0;
    position: relative;
    text-align: left;
  }

  .block #newsletter_form {
    display: table;
    width: 100%;
    margin: 0 auto;
    text-align: left;
  }

  .NewsletterBg p {
    font-size: 30px !important;
    !i;
    !;
    color: var(--color4);
    margin: 0px 0 25px 0;
    font-family: var(--font_family_2);
    text-align: left;
    font-weight: normal !important;
    !i;
    !;
  }

  .footer1_bg .row {
    padding: 0 0%;
  }

  .dream-liste:after {
    content: '';
    position: absolute;
    background: #fff;
    width: 100%;
    height: 29vh;
    z-index: 0;
    left: 0;
    bottom: 0;
    background-size: auto 100%;
    background-repeat: no-repeat;
  }

  .dream-text ul {
    list-style: none;
    margin: 0;
    padding: 0 !important;
  }

  .fact-card h2 {
    color: var(--color1);
    font-family: var(--font_family_1);
    position: relative;
    letter-spacing: 0;
    font-size: 100px;
    line-height: 1em;
    font-weight: 400;
    padding: 0 0 5px 0;
  }

  .fact-card p {
    font-size: 15px;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
    color: var(--color6);
    font-family: var(--font_family_2);
    line-height: 2em;
    letter-spacing: 0.3em;
    position: absolute;
    display: flex;
    text-transform: uppercase;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    font-weight: bold;
    width: 100%;
  }

  .itemtext {
    display: flex;
    align-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    gap: 0vw;
    justify-content: center;
    flex-direction: row;
  }

  .body-page-1 #main:after {
    content: '';
    position: absolute;
    background: #FFF;
    width: 100%;
    height: 36vh;
    z-index: 0;
    left: 0;
    bottom: -46px;
    background-size: auto 100%;
    background-repeat: no-repeat;
  }

  .image-secondaire {
    object-fit: ;
    width: 80%;
    height: 34vh;
    position: absolute;
    background: url(../images/image-2.jpeg);
    background-size: cover;
    background-position: center top;
    margin: auto;
    margin-top: 60vh;
    /*! left: 50%; */
    /*! transform: translate(-50%); */
    right: 0;
    border: 4px solid var(--color3);
  }

  .signature-img {
    width: 65%;
    height: 9vh;
    position: absolute;
    margin: auto;
    bottom: 0vh;
    top: auto;
    margin-top: ;
    left: 50%;
    transform: translate(-50%);
    opacity: .5;
  }

  .body-pageseo .section,
  .body-page-1 .section {
    padding: 0px 3% !important;
    position: relative;
  }

  .ReservationBg-2 .h,
  .ReservationBg-2 .datepicker-container .h {
    margin-top: 67px;
    /*! right: 5px; */
    /*! transform: ; */
    font-size: 25px !important;
  }

  #main h1 {
    margin-bottom: 45px;
    font-size: 36px !important;
    font-family: var(--font_family_1);
    color: var(--color6);
  }

  .group.group-title-p.group-1 {}

  .contact-footer h2 {
    font-size: 38px !important;
    line-height: 30px;
    padding: 2em 2% 0;
  }

  .header {
    height: 25vh;
    margin-top: 0;
  }

  .bannier .banner h1 {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    color: var(--color0);
    z-index: 1;
    font-size: 20px !important;
    width: 100%;
    text-align: center;
  }

  .ReservationBg-2 {
    position: relative;
    padding: 5em 3% 0;
    background: var(--color3);
  }

  .coordonnée-zone {
    position: relative;
    height: 94%;
    width: 100%;
    background: url(../images/bg-bague-2.jpeg);
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-size: auto;
    z-index: 999;
    top: 24%;
    transform: translateY(-50%);
    right: 0;
    border-radius: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 16px;
    font-family: var(--font_family_2);
    font-weight: normal;
    overflow: hidden;
    background-position: center;
    /*! background: var(--color3); */
  }

  .reserv-container {
    z-index: 1;
    padding: 20px 0;
  }

  .ReservationText {
    text-align: center;
    width: 100%;
    line-height: 2;
    font-size: 14px;
    color: var(--color4);
    margin-bottom: 50px;
    padding: 0 10px;
  }

  .dream-content h2 {}

  .dream-img img {
    width: 104%;
    height: 168px;
  }

  .dream-img {
    width: 100%;
    background: url(../images/bande-2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;

    background-position: right;
  }

  .dream-img {
    width: 100%;
    background: url(../images/bg_2.jpeg);
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 0;
    position: relative;
    z-index: 1;
    height: 30vh;
    filter: grayscale(1);
    background-position: center;
  }

  .dream-liste {
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 0em 0% 3em;
  }

  .dream-content {
    padding: 4em 0em 3em 0em;
    top: 0;
    width: 100%;
  }

  .presentation .col-lg-12 {
    position: absolute;
    left: ;
    /*! width: fit-content; */
    /*! right: 20%; */
    top: -17px;
  }

  .body-page .header {
    height: 30vh !important;
    margin-top: 0;
  }

  .bloc-GMB .contain-GMB .bouton-principal {
    padding: 15px 5px;
  }

  .btn-partage {
    text-align: center !important;
  }

  footer .btn-partage {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: right;
    margin-top: 30px;
    margin-bottom: 71px;
  }

  #main {
    padding: 0em 3%;
  }

  .body-page-1 #main {
    padding: 94px 4px 0px;
  }

  .services-home {
    padding: 3em 0 10px !important;
  }

  .head-btn {
    flex-direction: column
  }

  .flex-head-img {
    width: 100%;
    height: 832px !important;
  }

  .head-img.img-1,
  .head-img.img-2 {
    width: 100%;
    right: 0;
    height: 500px;
    top: 0;
    border: 0;
    margin: 0 2px;
  }

  .actuAndNewsletter-container {
    padding: 30px 5px;
  }

  .modal-content label {
    padding-top: 10px;
  }

  body {
    position: inherit
  }

  .row.ligne-photos.retrait.centerservice2 {
    margin: 0 0 !important;
  }

  .row.ligne-photos.retrait.centerservice {
    margin: 0 0 !important;
  }

  .menu_referencement h2 {
    text-align: center;
    font-size: 20px;
  }

  .datePickerZone {
    padding: 20px 0;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
  }

  .btn {
    padding: 10px 10px;
  }

  .btn-primary {
    font-size: 15px;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .nav-pills>li>a {
    padding: 6px 40px;
    font-size: 11px;
    margin-bottom: 4px !important;
  }

  .nav-pills li+li,
  .nav-pills li {
    margin: 0;
  }

  .banner img {
    width: 100%;
    margin-left: 0;
  }

  .NewsletterBg {
    padding: 0 0px 45px;
  }

  .beforeFooter .storeLinks {
    padding: 15px 0px;
  }

  .img_thumbnail_multiple,
  .img_thumbnail_multiple a {
    height: 200px;
  }

  .vis01 {
    width: 100%;
    margin: 0 auto;
    display: block;
  }

  .LeRestaurantCarousselBg {
    background-image: none;
    background-color: var(--color2);
  }

  .beforeFooter {
    background-repeat: repeat;
  }

  .body-gallery .main_bg .blockCenter {
    width: 100vw;
    padding: 0;
    margin-left: 0;
    left: -19px;
    right: 0;
    display: block;
    float: unset;
    position: relative;
  }

  .body-gallery .main_bg {
    /*! overflow-x:hidden; */
    padding: 0em 0%;
    background: var(--color3);
  }

  .news .item .h {
    margin: 0 0 20px 0;
  }

  .slide a img {
    opacity: 0;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: 0px;
  }

  .LeRestaurantCarousselBg .bx-controls-direction {
    right: 50%;
    margin-right: -17px;
  }

  .beforeFooterImg02 {
    float: right;
    width: 100%;
  }

  .qrCode {
    top: 0;
    width: auto;
    margin: 0 auto;
    display: block;
    float: none !important;
  }

  .modal-content .btn-default {
    padding: 10px 40px;
    width: 100%;
  }

  .modal-content .form-control,
  .modal-content label {
    font-size: 12px;
  }

  .modal-content label.visible {
    white-space: nowrap;
  }

  .modal-content {
    padding: 30px;
  }

  .modal-content .h {
    font-size: 18px !important;
  }

  .modal-header .btn {
    top: -9px;
  }

  .modal-footer {
    margin-top: 0;
    padding: 0;
  }

  ul.tab-content {
    padding: 0;
  }

  .map02 iframe {
    width: 100% !important;
    height: 280px !important;
  }

  #modal-evenement .modal-content select.form-control {
    background-size: 13px;
  }

  .modal-content input[name="captcha"]+a,
  .modal-content .form-control {
    height: 35px !important;
  }

  .help-block {
    font-size: 1rem;
  }

  .section.carte .reserver img {
    width: auto;
    max-width: 100%;
  }

  .carte .label,
  .carte .price {
    font-size: 14px;
  }

  .carte .price {
    width: 68px;
  }

  .carte .labels .label,
  .carte .yesLabels .price,
  .carte .item small,
  .carte .item-title {
    font-size: 14px;
  }

  .news .item {
    padding: 30px 0% 30px 0;
    margin: 0;
    text-align: center;
  }

  .news .date_post .s1 {
    font-size: 14px;
  }

  .date-article,
  .news .item .date_post,
  .view .item .date_post {
    display: block;
    margin-bottom: 12px !important;
    top: 23px;
    width: 30%;
    left: 3px;
  }

  .news .btn-fixed,
  .view .btn-fixed {
    padding: 7px 40px;
    float: none;
  }

  .view .item a img {
    margin-bottom: 10px;
  }

  a.btn.btn-primary.maplink {
    width: 100%;
    margin-bottom: 30px;
  }

  .theReservationText {
    width: 100%;
    height: auto;
    padding-top: 50px;
    padding-bottom: 30px;
    padding: 70px 20px;
  }

  .theReservationText:before {
    top: 0;
    right: 0;
    left: -40px;
    width: 200%;
    height: 100%;
  }

  .beforeFooter ul li {
    font-size: 18px;
  }

  .modal-dialog {
    width: auto;
  }

  .LeRestaurantCarousselBg .h {
    font-size: 20px;
  }

  .LeRestaurantCarousselBg .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: -15px;
  }

  .NosPlanDAcces01 iframe {
    width: 100%;
    /* height: 25vh; */
    left: 0;
    margin-left: 0;
  }

  .NosPlanDAcces01:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

  .spContainer {
    height: 340px;
  }

  .sp {
    height: 300px;
  }

  .modal-content .obligatoire {
    font-size: 9px;
    font-style: italic;
    color: var(--color3);
  }

  .nosRealisations .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls-direction {
    width: 34px;
    float: right;
    right: 50%;
    margin-right: -17px;
    position: relative;
  }

  .datePickerZone {
    margin-bottom: 40px;
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 17px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
  }

  .address p {
    margin-bottom: 40px;
  }

  .address strong {
    font-size: 16px;
  }

  .address p {
    font-size: 15px;
  }

  .beforeFooter ul {
    width: 230px;
    margin: 0 auto;
  }

  .tableGrid>.row,
  .tableGrid {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    height: 100%;
  }

  .tableGrid .table-row {
    height: 100%;
  }

  .tableGrid>.row>.table-row>[class*=col],
  .tableGrid .table-row>[class*=col],
  .tableGrid>.row>[class*=col],
  .tableGrid [class*=col] {
    display: block;
    /*vertical-align:top;*/
    float: left;
    height: 100%;
    position: relative;
  }

  .noPaddingCells>.row>.table-row>[class*=col],
  .noPaddingCells .table-row>[class*=col],
  .noPaddingCells [class*=col] {
    padding: 0;
  }

  .tableGrid.nopadding>.row>.table-row>[class*=col],
  .tableGrid.nopadding .table-row>[class*=col],
  .tableGrid.nopadding>.row>[class*=col],
  .tableGrid.nopadding [class*=col] {
    padding: 0;
  }

  .tableGrid.va-middle>.row>.table-row>[class*=col],
  .tableGrid.va-middle .table-row>[class*=col],
  .tableGrid.va-middle>.row>[class*=col],
  .tableGrid.va-middle [class*=col] {
    vertical-align: middle;
  }

  .services .mainSectionSlider {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: relative !important;
    height: 200px !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .mainSectionSliderBg img {
    width: 100%;
  }

  .nosServicesBg .mainSectionSlider .show,
  .nosServicesBg .mainSectionSlider .blazy,
  .services .mainSectionSlider .show,
  .services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
  }

  .nosServicesBg .bx-wrapper {
    position: relative;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .nosServicesBg .bx-viewport {
    position: relative !important;
    height: auto !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .nosServicesBg .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-wrapper {
    position: relative;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }

  .services .bx-viewport {
    position: relative !important;
    height: 200px !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
  }

  .services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none;
    height: 200px !important;
  }

  .nosServicesBg .bx-viewport li,
  .services .bx-viewport li {
    height: 100%;
    list-style: none;
  }

  .services .bx-pager,
  .mainSectionSliderBg .bx-pager {
    z-index: 9999;
  }

  .nosServicesBg .bx-pager,
  .nosServicesBg .bx-controls-auto {
    bottom: 25px;
  }

  .linkList li a {
    min-width: 100%;
  }

  .mainSectionSlider img {
    width: 100%;
  }

  .headerTel {
    font-size: 30px;
  }


  h1,
  .h1 {
    color: var(--color6);
    font-size: 46px;
    line-height: 1;
    font-family: var(--font_family_1);
    text-align: center;
    position: relative;
    display: table;
    letter-spacing: 1px;
    font-weight: normal;
  }

  h2,
  .h2 {
    font-size: 18px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }
}

/* Landscape phones and down */
@media (max-width:480px) {
  .top-logo img {
    width: 90% !important;
  }

  .datePickerZone .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -15px;
    margin-top: -15px;
    width: 30px;
    height: 30px;
  }

  .modal-content label {
    padding-top: 10px;
  }

  .datePickerZone {
    padding: 20px 0;
  }

  a.btn.btn-primary.maplink {
    width: 100%;
    margin-bottom: 30px;
  }

  .datepicker table tr td:before {
    top: 50%;
    left: 50%;
    margin-left: -15px;
    margin-top: -15px;
    width: 30px;
    height: 30px;
  }

  .btn {
    padding: 25px 10px;
  }

  .btn-primary {
    font-size: 12px;
  }

  .nosRealisations a.seeMore {
    padding: 8px 60px;
  }

  .NosPlanDAcces02 p {
    font-size: 16px;
    color: var(--color4);
  }

  .NosPlanDAcces02 p:nth-of-type(2) {
    font-size: 16px;
  }

  .NosPlanDAcces02 {
    padding: 50px 20px 20px;
    height: auto;
  }

  .body-news-list .view .item:before {
    width: 140vw;
    margin-left: -80%;
  }

  .carte .labels .label,
  .carte .yesLabels .price,
  .carte .item small,
  .carte .item-title {
    font-size: 12px;
  }

  .datepicker table tr th,
  .datepicker table tr td {
    padding: 8px 0;
    font-size: 14px;
  }

  .form-group .btn-primary,
  input[name="captcha"],
  input[name="captcha"]+a,
  .form-group .btn-primary,
  .form-control {
    height: 36px !important;
  }

  .datepicker table tr th.datepicker-switch {
    font-size: 16px;
  }

  #index .ReservationText p {
    padding: 0 20px;
    line-height: 25px;
    font-size: 16px;
  }

  /*.carteSeeMore{}*/
  .datepicker table tr th {
    font-size: 12px;
  }

  .theReservationText {
    width: 100%;
    height: auto;
    padding-top: 50px;
    padding-bottom: 30px;
  }

  .theReservationText:before {
    top: 0;
    right: 0;
    left: -40px;
    width: 200%;
    height: 100%;
  }

  .carte .group-title {
    font-size: 27px;
    margin-top: 29px;
    margin-bottom: 50px;
  }

  .beforeFooter ul li {
    font-size: 16px;
    line-height: 2;
  }

  .bx-pager,
  .bx-controls-auto {
    bottom: 0;
  }

  .LeRestaurantCarousselBg .h {
    font-size: 20px;
  }

  .LeRestaurantCarousselBg .bx-viewport {
    margin-bottom: 60px;
  }

  .nosRealisations .bx-controls.bx-has-controls-direction {
    bottom: -15px;
  }

  .modal-content .h {
    font-size: 16px !important;
  }

  body {
    font-size: 14px;
  }

  .actuAndNewsletterBg {
    padding: 1px 0 88px;
    /*! background-color:var(--color1); */
  }

  .headerTel {
    font-size: 30px;
  }



  .contact-footer h2 {}

  h2,
  .h2 {
    font-size: 17px;
  }

  h3,
  .h3 {
    font-size: 16px;
  }

  h4,
  .h4 {
    font-size: 14px;
  }

  h5,
  .h5 {
    font-size: 12px;
  }

  h6,
  .h6 {
    font-size: 10px;
  }
}

.btn-partage {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: right;
  margin-top: 22px;
}

.icones {
  width: 23px;
  height: 23px;
  margin-right: 0px;
  transition: .3s;
  fill: var(--color0);
}

.icones:hover {
  transform: rotate(360deg);
}

/* Landscape phones and down */
@media (max-width:320px) {
  div#bxControls {
    height: 67px;
    position: absolute;
    width: 40%;
    right: 0;
    left: initial;
    bottom: 61px;
    -webkit-transform-origin: 100% 100%;
    -moz-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    -o-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: scale(.4);
    -moz-transform: scale(.4);
    -ms-transform: scale(.4);
    -o-transform: scale(.4);
    transform: scale(.4);
  }

  .gallery .col-xs-6 {
    width: 100%;
  }
}

@media (max-height:736px) and (max-width:420px) and (min-height:401px) and (min-width:240px) and (orientation:portrait),
(max-height:420px) and (max-width:736px) and (min-height:240px) and (min-width:421px) and (orientation:landscape) {}

/*****************menu_responsive_03*****************/
.header-sidebars,
.sidebar-left,
.sidebar-right {
  background-color: var(--color3);
  letter-spacing: 1px;
}

.sidebar-left a,
.sidebar-right a,
.sidebar-bottom-controls a,
.contactButton,
.nav-item-active,
.sidebar-form label,
.sidebar-send-button,
.sidebar-divider-text {
  color: var(--color0) !important
}

.header-sidebars {
  height: 65px;
  z-index: 9999;
  position: fixed;
  left: 0;
  right: 0;
  top: -1px;
  width: 100%;
}

.header-sidebars .header-top {
  display: table;
  height: 65px;
  width: 100%;
  background: #f3f3f3;
}

.top-logo {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  z-index: 9999;
  text-align: center;
  overflow-y: hidden;
}

.top-logo img {
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  width: 60%;
}

.deploy-left-sidebar {
  display: table-cell;
  background-color: var(--color2);
  background-size: auto 49%;
  background-image: url(../images/menu-mobile-3/nav.svg);
  background-repeat: no-repeat;
  height: 65px;
  width: 65px;
  background-position: center center
}

.deploy-right-sidebar {
  border-left: 1px var(--color0) solid;
  display: table-cell;
  background-color: var(--color5);
  background-size: auto 49%;
  background-image: url(../images/menu-mobile-3/nav.svg);
  background-repeat: no-repeat;
  height: 65px;
  width: 65px;
  background-position: center center;
}

.deploy-right-mail {
  border-left: 1px var(--color0) solid;
  display: table-cell;
  background-color: var(--color5);
  background-size: auto 49%;
  background-image: url(../images/menu-mobile-3/mail.svg);
  background-repeat: no-repeat;
  height: 65px;
  width: 65px;
  background-position: center center;
  position: absolute;
  right: 65px;
  top: 0;
}

.deploy-right-call {
  display: table-cell;
  background-color: var(--color5);
  background-size: auto 45%;
  background-image: url(../images/menu-mobile-3/telephone.svg);
  background-repeat: no-repeat;
  height: 65px;
  width: 68px;
  background-position: center 19px;
  position: absolute !important;
  right: 130px;
  top: 0;
}

.deploy-back-home {
  background-image: url(../images/menu-mobile-3/home.png);
  background-repeat: no-repeat;
  background-color: var(--color1);
  width: 50px;
  height: 50px;
  background-position: center center;
  float: right;
  margin-top: -50px
}

.delete-right-sidebar {
  display: none;
  background-image: url(../images/menu-mobile-3/contact.png);
  background-repeat: no-repeat;
  background-color: var(--color1);
  width: 50px;
  height: 50px;
  background-position: center center;
  float: right;
  margin-top: -50px
}

.sidebar-left {
  font-family: var(--font_family_2) !important;
  width: 270px;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: -270px;
  bottom: 0;
  overflow: hidden;
  position: fixed;
  box-shadow: 3px 0px 3px 0px var(--color4);
}

.sidebar-scroll-left {
  padding-right: 20px;
  left: 0;
  width: 310px;
  overflow: scroll !important;
  overflow-x: hidden !important;
  -webkit-overflow-scroll: touch !important;
  height: 100%;
  background-color: var(--color3);
}

.sidebar-scroll-right {
  width: 275px;
  overflow: auto !important;
  overflow-x: hidden !important;
  height: 100%;
  background-color: var(--color0);
}

.sidebar-right {
  font-family: var(--font_family_2) !important;
  background-repeat: repeat;
  position: fixed;
  overflow: hidden;
  z-index: 99999;
  right: -280px;
  top: 0;
  bottom: 0;
  width: 270px;
  margin-right: 10px;
}

.sidebar-decoration {
  background-image: url(../images/menu-mobile-3/sidebar-deco.png);
  background-repeat: repeat-x;
  height: 2px;
  margin-bottom: 15px
}

.sidebar-left a,
.sidebar-right a {
  text-decoration: none;
  display: block;
  overflow: hidden;
  position: relative;
  /* color: var(--color4) !important; */
  z-index: 1;
}

.sidebar-header-left {
  height: 65px;
  background-color: var(--color3);
  position: relative
}

.sidebar-left-logo {
  max-height: 75px;
  position: absolute;
  top: -2px;
  left: 8px;
  margin-right: 179px;
}

.sidebar-right-logo {
  top: 20px;
  right: 20px;
  float: right;
  position: relative;
  height: auto;
  width: 190px;
}

.close-sidebar-left {
  background-image: url(../images/menu-mobile-3/left-chevron.svg);
  background-size: 45% auto;
  background-repeat: no-repeat;
  background-position: center center;
  height: 65px;
  width: 65px;
  margin-left: 205px;
  display: block
}

.sidebar-divider-text {
  font-size: 20px;
  padding-top: 15px;
  padding-left: 20px;
  padding-bottom: 15px;
  margin-bottom: 0;
  color: var(--color0) !important;
  background: var(--color5);
}

.home-nav {
  background-image: url(../images/menu-mobile-3/home.png)
}

.info-nav {
  background-image: url(../images/menu-mobile-3/infoabout.png)
}

.folio-nav {
  background-image: url(../images/menu-mobile-3/bendedright.png)
}

.mail-nav {
  background-image: url(../images/menu-mobile-3/mail.svg)
}

.newsletter-nav {
  background-image: url(../images/menu-mobile-3/rss.png)
}

.call-nav {
  background-image: url(../images/menu-mobile-3/phonehook.svg)
}

.text-nav {
  background-image: url(../images/menu-mobile-3/speechbubble4.png)
}

.facebook-nav {
  background-image: url(../images/menu-mobile-3/facebook.png)
}

.twitter-nav {
  background-image: url(../images/menu-mobile-3/twitter.png)
}

.sidebar-bottom-controls {
  background-color: var(--color2);
}

.sidebar-bottom-controls p {
  margin-top: 3px;
}

.sidebar-bottom-controls a {
  font-size: 12px;
  background-repeat: repeat-y;
  text-align: center;
  float: left;
  width: 33%;
  line-height: 10px;
  display: block
}

.facebook-bottom {
  display: block;
  padding-top: 26px;
  background-image: url(../images/menu-mobile-3/facebook.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.twitter-bottom {
  display: block;
  background-image: url(../images/menu-mobile-3/twitter.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.close-bottom-left,
.close-bottom-right {
  display: block;
  padding-top: 26px;
  background-image: url(../images/menu-mobile-3/accessdenied.png);
  background-repeat: no-repeat;
  background-position: center 33px;
  background-size: 16px 16px;
  height: 50px;
  margin-top: -25px
}

.nav-item {
  font-size: 16.2px;
  -webkit-tap-highlight-color: var(--color2);
  background-size: 22px auto;
  background-color: var(--color3);
  height: 60px;
  line-height: 61.5px;
  background-repeat: no-repeat;
  padding-left: 60px;
  background-position: 20px center;
  margin-bottom: 1px;
}

.icon-active {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/location.png);
  background-size: 10px 15px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 240px
}

.icon-page {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 240px
}

.icon-drop {
  position: absolute;
  background-image: url(../images/menu-mobile-3/left-sidebar/godrop.png);
  background-size: 10px 8px;
  background-repeat: no-repeat;
  display: block;
  width: 10px;
  height: 15px;
  top: 19px;
  left: 239px
}

.submenu a {
  text-shadow: 0 2px 0 var(--color4);
  background-image: url(../images/menu-mobile-3/sidebar-deco.png);
  background-repeat: repeat-x;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 25px;
  font-size: 10px;
  color: var(--color3);
  text-transform: uppercase;
  font-weight: 900
}

.submenu a em {
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
  background-size: 8px 11px;
  background-repeat: no-repeat;
  float: left;
  width: 10px;
  height: 15px;
  display: block;
  margin-top: 5px;
  padding-right: 35px
}

.submenu a:first-child {
  background-image: none !important
}

.submenu {
  display: none
}

.submenu-active {
  display: block
}

.sidebar-notifications a {
  margin-bottom: 15px;
  background-repeat: no-repeat;
  background-position: 0 center;
  padding-left: 38px;
  margin-left: 20px;
  font-size: 10px;
  color: var(--color3);
  font-family: var(--font_family_2);
  font-weight: 700;
  text-transform: uppercase;
  line-height: 10px
}

.sidebar-header-right {
  height: 65px;
  background-color: var(--color0);
  position: relative;
}

.close-sidebar-right {
  background-image: url(../images/menu-mobile-3/right-chevron.svg);
  background-size: 45% auto;
  background-repeat: no-repeat;
  background-position: center center;
  height: 65px;
  width: 65px;
  margin-left: 0;
  display: block
}

.sidebar-left .close-sidebar-left,
.sidebar-right .close-sidebar-right {
  position: absolute !important;
}

.right-sidebar-copyright {
  margin: 20px 0
}

.footer-text a {
  padding-top: 10px;
  font-size: 10px;
  color: var(--color3)
}

.copyright-sidebar {
  font-size: 10px;
  text-align: center;
  text-transform: uppercase
}

.menu-mobile-dynamique {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-position: inside;
  list-style-image: none
}

.menu-mobile-dynamique li {
  width: 100%;
  margin-bottom: 1px;
  background: var(--color5) !important;
  var(--color5): 18px;
  padding-left: 18px;
}

.menu-mobile-dynamique .sub-menu li {
  background-color: transparent;
  margin-bottom: 0;
}

.menu-mobile-dynamique .sub-menu li a {
  height: 42px;
  text-transform: none;
}

.menu-mobile-dynamique .sub-menu {
  background-image: linear-gradient(to bottom, var(--color2), var(--color2));
  padding-top: 18px;
  padding-bottom: 18px;
}

.menu-mobile-dynamique li.parent {
  background-image: url(../images/menu-mobile-3/left-sidebar/gopage.svg);
  background-position: 241px 26.2px;
  background-repeat: no-repeat;
  background-size: 9px auto;
}

.menu-mobile-dynamique li a {
  display: table-cell;
  width: 270px;
  vertical-align: middle;
  text-decoration: none !important;
  line-height: 18px;
  font-size: 16.2px;
  background-image: url(../images/menu-mobile-3/bendedright.svg);
  background-size: 8px auto;
  text-transform: uppercase;
  color: var(--color0);
  height: 60px;
  background-repeat: no-repeat;
  padding-left: 29px;
  background-position: 6px 20.9px;
}

.menu-mobile-dynamique ul {
  list-style-image: none;
  list-style-position: inside;
  list-style-type: none;
  padding-left: 0
}

.menu-mobile-dynamique ul li a {
  background: none;
  color: var(--color1)
}

.small-notification p {
  margin: 10px 13px;
  padding-bottom: 2px;
  line-height: 18px
}

.text-input {
  overflow: hidden;
  position: relative;
  font-size: 11px;
  color: var(--color3);
  width: 230px;
  margin-left: 20px;
  height: 30px;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px;
  display: block;
  box-sizing: border-box;
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

#contactEmail {
  margin-bottom: -5px !important
}

#contactMessage {
  display: none
}

#contactName {
  display: none;
  margin-bottom: 10px
}

#left_label_name {
  overflow: hidden;
  position: relative;
  display: none;
  text-align: left;
  margin-left: 200px;
  font-size: 11px;
  color: var(--color3);
  opacity: .3;
  margin-top: -20px;
  padding-bottom: 5px;
  margin-bottom: 10px
}

#name_label {
  overflow: hidden;
  position: relative;
  display: none;
  margin-top: 20px;
  margin-left: 20px;
  font-family: var(--font_family_2);
  font-size: 12px;
  color: var(--color1)
}

#email_label {
  margin-top: 20px;
  margin-left: 20px;
  font-size: 12px;
  color: var(--color1);
  display: block;
  overflow: hidden;
  position: relative
}

#left_label_mail {
  display: block;
  overflow: hidden;
  position: relative;
  line-height: 18px;
  text-align: left;
  margin-left: 200px;
  font-size: 11px;
  color: var(--color3);
  opacity: .3;
  font-family: var(--font_family_2);
  margin-top: -20px;
  padding-bottom: 5px;
  margin-bottom: 10px
}

.contact-button-house {
  line-height: 18px;
  margin-bottom: 20px;
  font-size: 11px;
  display: block;
  overflow: hidden;
  position: relative;
  /*vertical-align:baseline;*/
  outline: none
}

.contactButton {
  display: block;
  overflow: hidden;
  position: relative;
  margin-left: 20px;
  margin-top: 30px;
  height: 36px;
  font-family: var(--font_family_2);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  width: 230px;
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

.buttonWrap {
  padding: 10px !important;
  min-width: 43%
}

.contactSubmitButton {
  display: block !important;
  height: 36px !important;
  margin-right: 4px;
  float: left;
  margin-bottom: 20px
}

.contactNameField {
  padding-bottom: 5px;
  font-size: 12px
}

.contactField {
  font-size: 15px;
  overflow: hidden;
  position: relative;
  color: var(--color0);
  min-width: 100%;
  display: block;
  box-sizing: border-box;
  height: 30px;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg>div.block.block-2>h2 {
  display: none;
}

.contactTextarea {
  font-size: 15px;
  overflow: hidden;
  position: relative;
  color: var(--color0);
  min-width: 100%;
  display: block;
  box-sizing: border-box;
  margin-bottom: 20px;
  line-height: 18px;
  height: 90px;
  padding: 9px 12px
}

.menu-mobile-dynamique input {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0
}

.sidebar-form {
  display: none;
  margin-left: 20px;
  width: 230px;
  box-sizing: border-box
}

.sidebar-form2 {
  display: none
}

.sidebar-form label {
  font-size: 13px;
  border-radius: 0 !important;
  color: var(--color1);
  text-transform: uppercase;
  padding-top: 10px;
  display: block;
  opacity: .8;
  filter: alpha(opacity=80)
}

.sidebar-form label span {
  text-transform: lowercase;
  float: right;
  opacity: .5
}

.sidebar-form input {
  background-color: var(--color2);
  border: solid 1px var(--color3)
}

.sidebar-form textarea {
  background-color: var(--color2);
  border: solid 1px var(--color3);
  margin-bottom: 0
}

.sidebar-send-button {
  font-size: 13px;
  display: block;
  width: 100%;
  color: var(--color1);
  font-family: var(--font_family_2);
  text-transform: uppercase;
  font-weight: 700
}

.success-subscribe {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px
}

.sidebar-form {
  margin-bottom: 0 !important;
  margin-top: -10px !important
}

.sidebar-form .formSuccessMessageWrap {
  width: 230px;
  margin-top: 20px;
  margin-bottom: 0
}

.sidebar-form .small-notification {
  margin-top: 20px
}

.sidebar-form #emailError {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px;
  border-radius: 0;
  height: 36px
}

.sidebar-form #emailError p {
  text-align: center;
  color: var(--color3);
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.sidebar-form #emailError2 {
  margin-top: 20px;
  width: 230px;
  margin-left: 20px;
  border-radius: 0;
  height: 36px
}

.sidebar-form #emailError2 p {
  text-align: center;
  color: var(--color3);
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.subscribe-notification {
  width: 230px !important;
  margin-left: 20px;
  border-radius: 0 !important;
  margin-bottom: -15px !important;
  margin-top: 20px !important;
  background-image: none !important
}

.subscribe-notification p {
  background-image: none !important;
  text-align: center;
  color: var(--color3) !important;
  margin: 8px 0;
  display: block;
  text-transform: uppercase;
  padding-left: 0;
  margin-top: 20px
}

.formValidationError {
  margin-bottom: -15px
}

.sidebar-form .formValidationError div {
  margin-top: 20px;
  width: 230px;
  border-radius: 0 !important;
  height: 36px;
  margin-top: 20px !important
}

.sidebar-form .formSubmitButtonErrorsWrap {
  overflow: visible !important;
  margin-bottom: 20px
}

.sidebar-form .formValidationError p {
  text-align: center;
  color: var(--color3) !important;
  margin: 8px 0;
  display: block;
  background-image: none;
  text-transform: uppercase;
  padding-left: 0
}

.menu-mobile-dynamique label {
  display: block;
  overflow: hidden;
  position: relative;
  border: 0;
  /*vertical-align:baseline;*/
  outline: none
}

.red-notification {
  background-color: var(--color2);
  border-radius: 5px;
  border: solid 1px var(--color3)
}

.formValidationError .red-notification p {
  background-image: none !important;
  display: block !important;
  padding-left: 0 !important;
  text-align: center !important
}

.no-bottom {
  margin-bottom: 0 !important
}

.menu-mobile-dynamique .sub-menu {
  display: none
}

.notification-box {
  text-align: center;
}

.notification-box h4 {
  margin-bottom: 0;
}

.notification-box p {
  color: var(--color0);
}

.formSuccessMessageWrap h4 {
  color: var(--color3);
}

.bodyContent:nth-of-type(odd) {
  direction: ltr;
}

.salon-block {
  position: relative;
  width: 100%;
  height: 492px;
  background: url(../images/img-second.jpeg) no-repeat center / cover;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  z-index: 1;
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
}

.salon-block-box {
  position: relative;
  padding: 0em 0% 0;
  background: var(--color0);
  display: none;
}

.salon-block:before {
  color: ;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--color5);
  position: absolute;
  opacity: .656;
}

.salon-content {
  color: var(--color0);
  position: relative;
}

.salon-content h2 {
  color: var(--color0);
}

.salon-block-box:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: -105px;
  left: 0;
  z-index: 1;
  background-size: contain;
  background-repeat: no-repeat;
}

.datePickerZone .datepicker table tr td.active.active:hover:before {
  background: var(--color5) !important;
  border-color: var(--color0) !important;
}

.salon-block .salon-content h2 span:nth-child(1) {
  margin: 0 !important;
  font-family: var(--font_family_2);
}

.bx-pager.bx-default-pager a:hover,
.bx-pager.bx-default-pager a.active {
  background: var(--color3);
  width: 16px;
  height: 16px;
  border: 3px solid var(--color0);
}

.row.description-galerie.clear {
  margin: 0;
}

.bx-pager.bx-default-pager a {
  background: var(--color0);
  border: 3px solid var(--color0);
  width: 16px;
  height: 16px;
}


.NewsletterBg .h {
  margin: 0px auto 6px;
  color: var(--color4);
  font-size: 25px;
}

.block #newsletter_form input[type="text"] {
  color: var(--color6);
  border-color: var(--color6);
  border-right: 0;
  letter-spacing: 1px;
}

.block #newsletter_form input[type="submit"] {
  padding: 10px 13px 10px;
}

.block.block-2 .form-inline .form-group input {
  background: transparent;
  text-align: left;
  border: 2px solid var(--color0) !important;
  color: var(--color2) !important;
  width: 360px;
  text-align: center;
}

#newsletter_form .form-group+input {
  display: block;
  text-align: center;
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  margin-top: 20px;
  font-family: var(--font_family_2) !important;
  color: var(--color2) !important;
  padding: 10px 30px !important;
  border: 1px solid var(--color0);
}

.block #newsletter_form input[type="submit"] {
  border: 1px solid var(--color2);
  background: var(--color5);
  font-family: var(--font_family_2) !important;
  font-weight: 100 !important;
  border-radius: var(--border-radius);
}

/* ***********service************** */
.services-home {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--color1);
  padding: 5em 0 0em;
}

.services-home-content {
  text-align: center;
}

.title-bloc {
  margin: auto;
  overflow: hidden;
  margin-bottom: 35px;
  width: 78%;
}

.title-bloc .title-bloc {
  text-align: center;
  margin: 0;
}

.reserv-container .title-bloc .h1 {
  text-align: center;
  color: var(--color0);
}

.reserv-container .title-bloc {
  display: flex;
  justify-content: center;
  align-items: center;
}

.services-home-content:before {
  content: '';
  position: absolute;
  background: var(--color1);
  width: 100%;
  height: 100%;
  z-index: 0;
  left: 0;
  bottom: 0;
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.services-home .bx-pager {
  bottom: -50px;
}

.engegements-content {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 40px 3%;
}

.services-home-content .h.hicon {
  color: var(--color4);
  margin-bottom: 4vh;
}

.one-service.item {
  position: relative;
  width: 100%;
  height: 525px;
  background: ;
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
  transition: ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.one-service.item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .65s cubic-bezier(.25, .1, .29, .93);
  will-change: transform;
  transform-origin: 50% 6%;
}
}

.one-service.item:hover img {
  transform: scale(1.024);
}

.service-title {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: end;
  align-items: center;
  flex-direction: column;
  padding: 25px;
  z-index: 10;
  transition: .3s ease-out;
  transition-property: all;
  transition-property: all;
  transition-property: opacity, transform, filter;
}

.service-title h2 {
  font-size: 30px;
  color: var(--color0);
  font-family: var(--font_family_1);
  transform: translateY(50px);
  transition: .3s ease-out;
  transition-property: all;
  transition-property: all;
  transition-property: all;
  transition-property: opacity, transform, filter;
}

.service-title a {
  position: relative;
  text-align: left;
  padding: 11px 15px;
  text-decoration: unset;
  color: var(--color0);
  transition: 0.3s;
  font-family: var(--font_family_1);
  font-size: 18px;
  line-height: ;
  font-weight: normal;
  letter-spacing: 1px;
  background: var(--color4);
  transform: translateY(35px);
  opacity: 0;
  transition: .3s ease-out;
  transition-property: all;
  transition-property: all;
  transition-property: all;
  transition-property: opacity, transform, filter;
  border-radius: var(--border-radius);
}

.service-title:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  background-image: linear-gradient(180deg, #00000000 0%, #000000 100%);
  opacity: 0.5;
  z-index: -1;
}

.service-coor {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  text-align: left;
  padding: 5% 0;
  flex-direction: column;
  justify-content: end;
  transform: translate(0, 0) translate(var(--calc-x), 0) scale(1, 1);
  transition: .3s ease-out;
  transition-property: all;
  transition-property: opacity, transform, filter;
  opacity: 0;
}

.one-service.item:hover .service-coor {
  transform: none;
  opacity: 1;
  display: none;
}

.one-service.item:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity .35s ease-in-out;
  transition: opacity .35s ease-in-out;
  background: rgba(0, 0, 0, .4);
}

.one-service.item:hover:before {
  opacity: 1;
}

.service-img {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transition: .3s;
  display: none;
}

.service-coor h2 {
  position: relative;
  width: 100%;
  margin: 0;
  text-align: left;
  font-size: 28px;
  line-height: 1.5em;
  letter-spacing: .15em;
  font-family: var(--font_family_1);
  padding: 0 0% 4% 5%;
  color: var(--color0);
  font-weight: 500;
}

.center-slide {
  margin-bottom: -42px;
}

.service-coor a {
  position: relative;
  text-align: left;
  padding: 11px 15px;
  text-decoration: unset;
  color: var(--color0);
  transition: 0.3s;
  font-family: var(--font_family_2);
  font-size: 14px;
  line-height: ;
  font-weight: normal;
  letter-spacing: 1px;
  background: var(--color5);
  margin-left: 5%;
}

.service-coor a:hover {}

.one-service.item:hover h2 {
  transform: translate(0);
  z-index: ;
}

.one-service.item:hover a {
  transform: translate(0);
  opacity: 1;
}

.one-service.item a:hover {
  background: var(--color5);
}

.center-dyn {
  display: block;
  width: 100%;
  /*! margin: 0 auto; */
}

.actu-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 20px;
  background: var(--color1);
}

.actu-image {
  position: relative;
  width: 100%;
  height: 100%;
}

.actu-image .blazy {
  height: 390px;
  width: 100%;
  object-fit: cover;
  background-position: top;
}

.actu-image .blazy img {
  position: relative;
  width: 100%;
  height: 100%;
}

span.actu-pubdate {
  position: absolute;
  width: fit-content;
  padding: 10px;
  text-align: center;
  background: var(--color1);
  font-family: var(--font_family_1);
  left: 20px;
  z-index: 9;
}

.date_post {
  font-family: var(--font_family_1) !important;
}

.date_post .day {
  font-size: 18px;
}

.date_post .month,
.date_post .year {
  font-size: 13px;
}

.actuAndNewsletter.actuAndNewsletter01 {
  position: relative;
  width: 39%;
  height: 100%;
  display: none;
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
  position: relative;
  width: 100%;
  height: 100%;
  background: transparent;
}

.actu-heading {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: left;
  padding: 20px 0 10px;
}

.actu-heading h3.h a {
  font-size: 16px;
  color: var(--color2);
  text-decoration: unset;
}

.view .articleContent {
  color: var(--color2);
}

.actu-show-more a {
  font-size: 16px;
  text-transform: unset;
  min-width: 180px;
}

.block #newsletter_form input[type="submit"]:hover {
  background: var(--color4);
  border: 1px solid var(--color4);
  color: var(--color0);
}

.slide-parallax-video:hover .slogan {}

.head-btn>a:hover,
.head-btn>p:hover {}

.owl-theme .owl-nav [class*=owl-] {
  font-size: 34px !important;
}

.owl-theme .owl-nav [class*=owl-]:hover {
  background: unset;
}

.owl-theme .owl-nav [class*=owl-]:hover {
  background: var(--color4) !important;
}

div.blazy.b-error {
  background-image: url(../images/noImage.jpg);
}

.news .item {
  border-color: var(--color0);
}

.NosPlanDAcces02 h3.h {
  text-transform: uppercase;
}

h2,
h3,
h4,
h5,
h6,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--font_family_2);
  font-weight: normal;
  line-height: 1;
  color: var(--color4);
}

.NewsletterBg h2 {
  font-size: 15px;
  margin-top: ;
  font-weight: normal;
  margin-bottom: 0;
  color: var(--color6);
}

.NewsletterBg .block.block-1 {
  margin-top: 7px;
}

.badge-optionnel {
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/badge-optionnel.png) no-repeat top right;
  width: 139px;
  height: 139px
}

.bloc-GMB {
  position: relative;
  display: block;
  padding: 9em 10% 6em;
  background: var(--color3);
  z-index: 1;
  margin-top: 30px;
}

.bloc-GMB .contain-GMB {
  color: var(--color2);
  text-align: center;
  position: relative;
}

.bloc-GMB .contain-GMB h3 {
  margin-bottom: 25px;
}

.bloc-GMB .contain-GMB .etoiles-2 {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: url(../images/etoiles-2.png) no-repeat center left;
}

.bloc-GMB .contain-GMB .zone-etoiles-note {
  position: relative;
  height: 60px;
  width: 264px;
  float: right;
  background: url(../images/etoiles-1.png) no-repeat center right;
}

.note-avis {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}

.nbr-note {
  font-size: 40px;
  margin: 0 2rem;
}

.bloc-GMB .contain-GMB .bouton-principal {
  margin-top: 20px;
  text-align: center;
}

.btn-partage svg.icones path {
  fill: var(--color0);
}

.text-GMB {
  padding: 15px 0;
}

/* ******time-picker********** */
.bootstrap-timepicker {
  position: relative;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
  left: auto;
  right: 0;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
  left: auto;
  right: 12px;
}

.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
  left: auto;
  right: 13px;
}

.bootstrap-timepicker .input-group-addon {
  cursor: pointer;
}

.bootstrap-timepicker .input-group-addon i {
  display: inline-block;
  width: 16px;
  height: 16px;
}

.bootstrap-timepicker-widget.dropdown-menu {
  padding: 4px;
}

.bootstrap-timepicker-widget.dropdown-menu.open {
  display: inline-block;
  z-index: 99999 !important;
}

.bootstrap-timepicker-widget.dropdown-menu:before {
  border-bottom: 7px solid var(--color4);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  content: "";
  display: inline-block;
  position: absolute;
}

.bootstrap-timepicker-widget.dropdown-menu:after {
  border-bottom: 6px solid var(--color0);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  content: "";
  display: inline-block;
  position: absolute;
}

.bootstrap-timepicker-widget.timepicker-orient-left:before {
  left: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-left:after {
  left: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:before {
  right: 6px;
}

.bootstrap-timepicker-widget.timepicker-orient-right:after {
  right: 7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:before {
  top: -7px;
}

.bootstrap-timepicker-widget.timepicker-orient-top:after {
  top: -6px;
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:before {
  bottom: -7px;
  border-bottom: 0;
  border-top: 7px solid var(--color3);
}

.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
  bottom: -6px;
  border-bottom: 0;
  border-top: 6px solid var(--color0);
}

.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
  border-radius: 4px;
}

.bootstrap-timepicker-widget table {
  width: 100%;
  margin: 0;
}

.bootstrap-timepicker-widget table td {
  text-align: center;
  height: 30px;
  margin: 0;
  padding: 2px;
}

.bootstrap-timepicker-widget table td:not(.separator) {
  min-width: 30px;
}

.bootstrap-timepicker-widget table td span {
  width: 100%;
}

.bootstrap-timepicker-widget table td a {
  border: 1px transparent solid;
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 8px 0;
  outline: 0;
  color: var(--color4);
}

.bootstrap-timepicker-widget table td a:hover {
  text-decoration: none;
  background-color: var(--color0);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  border-color: var(--color0);
}

.bootstrap-timepicker-widget table td a i {
  margin-top: 2px;
  font-size: 18px;
}

.bootstrap-timepicker-widget table td input {
  width: 25px;
  margin: 0;
  text-align: center;
  font-size: 18px;
}

.bootstrap-timepicker-widget .modal-content {
  padding: 4px;
}

@media (min-width: 767px) {


  .flex-seoContain .seo-form h2 {
    color: var(--calc-x);
    text-align: center;
    font-size: 70px;
    font-family: var(--font_family_1);
  }

  .NosPlanDAcces01 iframe {
    width: 100%;
    height: 100%;
    left: 0;
    margin-left: 0;
  }

  .contact {
    margin-top: 80px;
    padding: 0;
    display: flex;
    justify-content: center;
    /*! align-items: center; */
  }


  .engegements-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
  }

  .bootstrap-timepicker-widget.modal {
    width: 200px;
    margin-left: -100px;
  }
}

@media (max-width: 767px) {
  .contact_footer_container {
    background: var(--color0);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 0;
    flex-direction: column;
  }

  .realisations-bloc .title-bloc {
    margin-bottom: 30px;
  }

  .title-bloc {
    margin: 0;
    overflow: hidden;
    margin-bottom: 0;
    width: 100%;
    padding-left: 10px;
  }

  .flex-head {
    flex-direction: column-reverse;
    padding: 0 3% !important;
  }

  .body-pageseo #main {
    padding: 3em 0% 0;
  }

  .one-service.item:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    background: rgba(0, 0, 0, .4);
  }

  .one-service.item:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    background: rgba(0, 0, 0, .4);
  }

  .service-coor {
    display: none;
  }

  .one-service.item {
    position: relative;
    width: 100%;
    height: 295px;
    background: ;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: ;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
  }

  .NewsletterBg h2 {
    font-size: 16px;
    margin-top: ;
    font-weight: normal;
    margin-bottom: 0;
    text-align: left;
  }

  .services-home-content .h.hicon {
    color: var(--color4);
    /*! font-size: 3em !important; */
  }

  .salon-block-box {
    position: relative;
    padding: 12em 3% 6em;
    background: var(--color0);
  }

  .bootstrap-timepicker {
    width: 100%;
  }

  .bootstrap-timepicker .dropdown-menu {
    width: 100%;
  }
}


/***/

.typewriter {
  overflow: hidden;
  /* border-right: .15em solid var(--color1); */
  white-space: nowrap;
  margin: 0 auto;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: .15em;
  transition: .3s ease;
  color: var(--color1);
  animation: typing 1s;
  width: 300px;
  /* Set a fixed width to avoid layout shifts */
  scale: 2;
}

.typewriter img {
  min-width: 300px;
  height: auto;
  width: 300px;
}

/* The typing effect */
@keyframes typing {
  from {
    width: 0
  }

  to {
    width: 300px;
  }
}

.right-side {
  width: 50%;
  height: 100%;
  position: absolute;
  background: var(--color0);
  z-index: -1;
  right: 0;
  transition: 1.2s ease;
}

.right-side:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0px, -50%);
  width: 1px;
  height: 0%;
  background: var(--color5);
  transition: 0.8s ease;
}

.left-side {
  width: 50%;
  height: 100%;
  position: absolute;
  background: var(--color0);
  z-index: -1;
  transition: 1.2s ease;
  left: 0;
}

.left-side:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0px, -50%);
  width: 1px;
  height: 0%;
  background: var(--color5);
  transition: 0.8s ease;
}

.timeup::before {
  height: 100%;
}

.cont {
  display: flex;
  align-items: center;
  justify-content: center;
}

.loader {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: var(--color0);
  z-index: 9999999999;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
}





/***/

/*** AOS Animations ***/
[data-aos="aos-animation1"] {
  clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
  -webkit-clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
  transition-property: all;
}

[data-aos="aos-animation1"].aos-animate {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}


[data-aos="aos-animation2"] {
  clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%);
  transition-property: all;
}

[data-aos="aos-animation2"].aos-animate {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}


[data-aos="aos-animation3"] {
  clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%);
  transition-property: all;
}

[data-aos="aos-animation3"].aos-animate {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

@media(min-width:2000px) {

  .footer-coordonnees .tel1 i,
  .footer-coordonnees .tel2 i,
  .flex-address i {
    color: var(--color5);
    padding: 0px 6px 0px 0;
    transform: rotate(0);
    margin: 0 !important;
    font-size: 28px;
  }

  .coord p span i {
    color: var(--color5) !important;
    !i;
    !;
    font-size: 30px;
  }

  .NewsletterBg h2 {
    font-size: 24px !important;
    margin-top: ;
    font-weight: normal;
    margin-bottom: 0;
    color: var(--color6);
  }

  .NewsletterBg span {
    color: red;
    font-size: 24px !important;
    font-family: var(--font_family_2);
  }

  .block #newsletter_form input[type="submit"] {
    padding: 12px 13px 12px;
  }

  .navbar-nav ul.sub-menu {
    position: absolute;
    background: var(--color4);
    padding: 0;
    visibility: hidden;
    left: 50%;
    opacity: 0;
    transform: translate(-50%, 50px);
    transition: .5s;
    width: 14vw;
    margin-top: 15px;
  }

  .navbar-nav ul.sub-menu>li>a {
    padding: 12px 30px;
    font-size: 25px;
    color: var(--color0);
    /*! background-color: var(--color3); */
    text-transform: unset;
    width: 100%;
    text-align: center;
    border-bottom: 1px solid var(--color3);
    font-family: var(--font_family_3);
    text-decoration: none;
  }

  .contact p {
    margin-bottom: 16px;
    font-size: 19px;
    line-height: 1;
  }

  .atouts-card img {
    /*! filter: brightness(0); */
    /* height: 120px; */
    /* padding: 24px; */
  }

  .nos-realisations .row.recup-photo {
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-areas:
      "item5 item5 item3 item2"
      "item5 item5 item1 item4";
    grid-template-rows: 600px 600px;
    grid-gap: 6px;
    position: relative;
    z-index: 5;
    width: 100%;
  }

  .nos-realisations .realisations-bloc .shape.shape-3 {
    width: 266px;
    height: 347px;
    top: -9%;
    right: 6%;
    z-index: 1;
    transform: rotate(58deg) scale(-1, 1);
    left: auto;
  }

  .btns-dream {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    width: 195px;
    height: 50px;
    color: #fff;
    float: right;
    background-color: transparent;
    position: absolute;
    bottom: 92px;
    right: 16%;
  }

  .subtitle-back {
    position: absolute;
    top: 46%;
    /* transform: rotate(90deg); */
    left: 4%;
    font-size: 110px;
    color: var(--color4);
  }

  .titre-secondaire {
    font-size: 38px;
  }

  h1,
  .h1 {
    /* color: var(--color4); */
    font-size: 110px;
    !im;
    !i;
    !;
    line-height: 1;
    font-family: var(--font_family_1);
    text-align: center;
    position: relative;
    display: table;
    letter-spacing: 1px;
    /*! font-weight: bold; */
  }

  .service-title a {
    font-size: 25px;
  }

  .service-title h2 {
    font-size: 48px;
  }


  .flex-head-txt .scroll {
    padding: 0 0 0 0;
    max-height: 455px;
  }

  .swiper-box {
    right: 34px;
    bottom: -4%;
    width: 13vw;
    height: 38vh;
    overflow: hidden;
  }

  .box .swiper-slide img {
    width: 100%;
  }

  .boxSwiper5 {
    height: 100%;
  }

  .box .boxSwiper5 .swiper-slide img {
    width: 100%;
    height: 100%;
  }

  .boxSwiper5 .swiper-slide {}

  .swiper-box2 {
    left: 50px;
    bottom: -3%;
    width: 13vw;
    height: 25vh;
    overflow: hidden;
  }

  .swiper-box3 {
    left: 23%;
    bottom: -6%;
    width: 13vw;
    height: 18vh;
    overflow: hidden;
  }

  .swiper-box4 {
    right: -8%;
    top: 13%;
    width: 11vw;
    height: 19vh;
    overflow: hidden;
  }

  .swiper-box5 {
    /*! right: -8%; */
    top: 0;
    width: 100%;
    height: 100%;
    z-index: ;
    display: none;
  }


  .shape {
    position: absolute;
  }

  .shape img {
    width: 100%;
    height: 100%;
  }

  .shape.shape-1 {
    width: 315px;
    height: 276px;
    top: 11px;
    left: -81px;
    z-index: 1;
    transform: rotate(-10deg);
  }

  .effet-curseur {
    transition: background .3s, border .3s, border-radius .3s, box-shadow .3s, transform var(--e-transform-transition-duration, .4s);
    box-sizing: border-box;
    position: relative;
    width: 100%;
    height: 100%;
  }

  .shape.shape-2 {
    width: 331px;
    height: 288px;
    bottom: -58px;
    right: -35px;
    z-index: 1;
    transform: rotate(-10deg);
  }


  .shape.shape-3 {
    width: 226px;
    height: 280px;
    top: 15%;
    left: 16%;
    z-index: 1;
    transform: rotate(0deg);
  }

  .engegements-content .shape.shape-3 {
    width: 274px;
    height: 363px;
    top: -33%;
    right: 11%;
    z-index: 1;
    transform: rotate(58deg) scale(-1, 1);
    left: auto;
  }

  .shape.shape-4 {
    width: 154px;
    height: 184px;
    bottom: 20%;
    right: 12%;
    z-index: 1;
    transform: rotate(-10deg);
  }

  .shape.shape-5 {
    width: 310px;
    height: 320px;
    bottom: 21%;
    right: 39%;
    z-index: 1;
    transform: rotate(34deg);
  }

  .shape.shape-6 {
    width: 300px;
    height: 300px;
    bottom: 0%;
    left: -98px;
    z-index: 1;
    transform: rotate(34deg);
  }

  .shape.shape-tel {
    width: 234px;
    height: 178px;
    top: -72px;
    left: 100px;
    z-index: 0;
    transform: rotate(-10deg);
    transition: 0.3s;
  }

  .fixed .shape.shape-tel {
    width: 174px;
    height: 111px;
    top: -37px;
    left: 100px;
    z-index: 0;
    transform: rotate(-10deg);
    transition: 0.3s;
  }

  .bouton-principale,
  .bouton-principale:focus {
    position: relative;
    padding: 18px 34px;
    /*! background: var(--color4); */
    text-decoration: none;
    color: var(--color0);
    font-family: var(--font_family_1);
    font-size: 30px;
    margin: 0;
  }

  .sous-titre-top {
    padding-bottom: 50px;
    font-size: 40px;
    color: var(--color6);
    font-family: var(--font_family_1);
  }

  .service-coor a {
    font-size: 15px;
  }

  .service-coor p {
    font-size: 33px;
  }

  .NosPlanDAcces02 .h.hicon {
    font-size: 30px !important;
  }

  .carte .item .item-description,
  .carte .item small {
    color: var(--color4);
    font-size: 12px;
    text-align: justify;
    padding: 3px 3px 0 0;
    display: inline-block;
    width: 100%;
    margin-bottom: 0;
    font-weight: 100;
    text-transform: none;
    color: var(--color4);
    opacity: 0.8;
    font-size: 20px;
    text-align: left;
  }

  .carte .group-title {
    font-size: 50px;
  }

  #contact-form {
    margin-top: 0em;
    margin-bottom: 0em;
    /* padding: 10px 0%; */
  }

  .NewsletterBg p {
    font-size: 45px !important;
    !i;
    !;
    color: #000;
    font-family: var(--font_family_1);
    text-transform: none;
  }

  .img-reservation img {
    width: 60vh;
  }

  .menu_footer li a {
    font-size: 25px;
  }

  .coord p span {
    font-size: 24px !important;
  }

  .title_footer {
    text-transform: none;
    margin-bottom: 30px;
    font-size: 45px;
    font-weight: normal;
  }



  .card-head h3 {
    font-size: 30px;
  }

  .ReservationText {}


  .dream-item-left {
    height: 45vh;
  }

  .dream-item-right {
    padding: 20px 8.9% 20px 14.6%;
  }

  .dream-liste {
    padding: 5em 0% 4em;
  }

  .text-dream p {
    color: var(--color0);
    font-size: 30px;
    margin-top: 40px;
  }

  .dream-text {
    font-size: 30px;
  }

  .dream-content .subtitle {
    font-size: 69px;
    padding-bottom: 24px;
  }

  .dream-content h2 {
    /* font-size: calc(54px * 1.5) !important; */
  }

  .fact-card h2 {
    font-size: 6em;
  }

  .fact-card p {
    /*! font-size: 17px; */
    font-size: 40px;
  }

  h2,
  .h2 {
    font-size: 60px;
    margin-bottom: 20px;
  }



  .itemtext p {}

  h3,
  .h3 {
    font-size: 35px;
  }

  h4,
  .h4 {
    font-size: 19px;
  }

  h5,
  .h5 {
    font-size: 14px;
  }

  h6,
  .h6 {
    font-size: 12px;
  }

  .tel {
    /* text-align: right; */
    width: 90%;
    /* height: 100%; */
    /* display: flex; */
    /* align-content: center; */
    /* justify-content: flex-end; */
    align-items: center;
    font-size: 30px;
    /* margin: 0px 0 0 0; */
    /* white-space: nowrap; */
    line-height: 23px;
    font-weight: 500;
    letter-spacing: 1px;
    font-style: normal;
    padding: 18px 34px;
  }

  .navbar-nav>li>a {
    text-decoration: none;
    position: relative;
    margin: 0 4px;
    font-size: 17px;
    line-height: 23px;
    font-weight: 500;
    letter-spacing: .3em;
    text-transform: uppercase;
    font-style: normal;
    font-family: var(--font_family_1);
  }

  .head-btn>a,
  .head-btn>p {
    position: relative;
    background: transparent;
    font-size: 20px;
    line-height: 2em;
    font-weight: 500;
    letter-spacing: .3em;
    text-transform: uppercase;
    cursor: pointer;
    padding: 9px 20px;
    color: var(--color0);
    text-decoration: none;
    width: auto;
    text-align: center;
    transition: .3s;
    border: 1px solid rgba(255, 255, 255, .6);
    font-family: var(--font_family_1);
  }

  .title-bloc {
    font-size: 34px;
  }

  .engegements-content img {
    /* height: 81rem; */
  }

  .tete .logo-site a img {
    height: auto;
    width: 160px;
  }

  .navh .menu_principal a,
  .navh .menu_principal a:visited {
    padding: 60px 0;
  }

  .certifs .swiper-button-next i,
  .certifs .swiper-button-prev i {
    left: 48%;
    top: 37%;
  }

  .v_box span {
    font-size: 28px !important;

  }

  .page-contenu-home {
    position: relative;
    display: block;
    padding: 1rem 0%;
    height: 526px;
    overflow: hidden;
  }

  .bande_contact_footer {
    padding: 70px 10% 50px;
    background: url(../images/texture3.png)no-repeat;

    background-size: 73% !important;
    background-position-y: 79% !important;
    background-position-x: 35% !important;
  }

  .imgnk {
    position: absolute;
    width: 31%;
    height: 410px;
    background: url(../images/texture1.png) no-repeat;
    z-index: -1;
    top: 30vh;
    background-size: 117%;
    right: calc(-5%);
    opacity: .23635 !important;
  }

  .body-page-1 .title-serv .h1::before,
  .body-page-1 .h1::before,
  .body-page-1 h1::before {
    display: none;
  }

  .first_b img {
    right: -1vw;
    width: initial !important;
  }

  ul li::before {
    top: 8px;
  }

  .intervention .contenu {
    font-size: 24px !important;
  }

  .one-service.item a span {
    font-size: 24px;
  }

  .pied .navf .menu_footer li a,
  .pied .navf .menu_footer li a:visited,
  .pied .horaires,
  .pied .menu_referencement li a,
  .pied .menu_referencement li a:visited,
  .pied address {
    font-size: 24px !important;
  }

  .one-service.item a h3 {
    font-size: 36px;
  }

  a.bouton-principal,
  button.bouton-principal {
    font-size: calc(14px * 1.5);
  }

  .cta a.bouton-principal,
  button.bouton-principal,
  .cta .tel-header,
  .tete .infos .tel,
  .cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal span {
    font-size: 24px;
  }


  .slogan .titre {
    font-size: 110px !important;
    line-height: 133px !important;
  }

  .slogan .sous-titre {
    font-size: 37px !important;
    line-height: 51px !important;
    padding: 0px 10% 40px;
  }

  .fixed .flex-logo a .name {
    bottom: calc(3vh - 3px);
    font-size: 40px;
  }

  .body-page-1 .slogan .titre::before {
    height: 17vh;
    top: 85px;
  }

  .navh .menu_principal a,
  .navh .menu_principal a:visited {
    font-size: calc(var(--taille_font) * 1.5);
  }

  body {
    font-size: 30px;
    line-height: 38px !important;
    !i;
    !;
  }

  .propor.pic-1 {
    height: 732px !important;
  }

  .propor.pic-2 {
    position: absolute !important;
    width: 72% !important;
    height: 517px !important;
    bottom: -30px;
    right: -25px;
    border: 10px solid #fff;
  }

  .one-service.item {
    height: 50vh !important;
  }

  .certifs .swiper-slide .img-swiper {
    background-size: 100% auto;
  }
}

.body-gallery-13 .swiper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.gallery .nav li a.bouton-principal {
  display: flex;
  text-transform: unset;
  font-size: 18px;
  font-family: var(--font_family_1);
  text-align: center;
  text-decoration: none;
  color: var(--color6);
  font-weight: normal;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 0 !important;
  !i;
  !;
}

.gallery .nav li.active a:before {
  opacity: 0.2
}

.gallery .nav li a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: transparent;
  top: 0;
  left: 0;
  z-index: -2;
  opacity: 0.6;
  transition: all .3s ease;
}

.gallery .nav li a {
  display: block;
  text-transform: uppercase;
  font-size: 16px;
  font-family: var(--font_family_3);
  text-align: center;
  border-radius: var(--border-radius);
  background: transparent;
  text-decoration: none;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  /* text-shadow: 0 0 20px #153d49; */
  border: none !important;
  color: white;
  font-weight: bold;
  position: relative;
  z-index: 1;
}

.body-gallery-98 .swiper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.body-gallery-98 .swiper-wrapper {
  display: flex;
  justify-content: center;
  gap: 60px;
}

.image-categorie img {
  width: 100%;
  height: 100%;
}

.image-categorie {
  width: 77px;
  height: 77px;
  position: relative;
  border-radius: 52%;
  border: 1px solid var(--color2);
  margin-bottom: 20px;
  overflow: hidden;
  padding: 7px;
}

.body-gallery-98 .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
}

/*Galery*/
.mySwiperGalAB .swiper-button-prev,
.mySwiperGalAB .swiper-button-next {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color4);
  color: var(--color0);
  border-radius: 50%;
  top: 44%;
  /* border: 5px solid var(--color2); */
  font-size: 13px;
  transition: all .3s ease;
}

.mySwiperGalAB .swiper-button-prev:hover,
.mySwiperGalAB .swiper-button-next:hover {
  /* background-color: var(--color4); */
}

.mySwiperGalAB .swiper-button-prev {
  left: -9px;
}

.mySwiperGalAB .swiper-button-next {
  right: -3px;
}

/******/

.Valeur {
  margin: 3em 0;
}

.valeur-block.reverse-bloc {
  flex-direction: row;
  padding: 0em 3em 0 0;
  margin: 3em 0;
}

.galerie-image-bloc:nth-child(2n+1) {
  margin-top: 30px;
}

.valeur-block {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0em 0em 0 3em;
  gap: 30px;
  background: var(--color1);
  flex-direction: row-reverse;
  border-radius: var(--border-radius);
}

.valeur-image {
  position: relative;
  text-align: right;
  width: 40%;
}

.content-val p {
  font-size: 18px;
  line-height: 1.6;
}

.valeur-image img {
  width: 100%;
  height: 428px;
  object-fit: cover;
  /*! border-radius: 30px; */
}

.content-val {
  width: 119%;
}

.footer-img {
  position: relative;
  width: 98px;
  text-align: left;
}

.footer-img img {
  width: 100%;
  height: auto;
}

.video-2 .video-accueil:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  /*! opacity: 0; */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity .35s ease-in-out;
  transition: opacity .35s ease-in-out;
  background: rgb(0 0 0 / 35%);
  z-index: 1;
}