:root {
    --color0: #fff;
    --color1: #eaf2f9;
    --color2: #428bca;
    --hover: #cdcd05;
    --color3: #ffa5b5;
    --color4: #000000;
    --color5: #bcbc0f;
    --font_family_1: 'Noto_Sans', sans-serif;
    --font_family_2: 'Dancing Script', sans-serif;
    --font_family_3: 'Poppins-Bold';
    --taille_font: 16px
}

::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    border-radius: 10px;
    background-color: #eee
}

::-webkit-scrollbar {
    width: 6px;
    background-color: var(--color2)
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: var(--color2)
}

.logos {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 2% 25%;
    grid-gap: 30px
}

.logos img {
    width: 27%
}

.col-md-4.col-sm-4.col-xs-6.bloc-img .propor {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
    height: 500px;
}

.col-md-4.col-sm-4.col-xs-6.bloc-img {
    height: 570px;
}

.salon-content {
    padding: 0 15%;
    text-align: center;
    font-size: 20px;
    line-height: 1.7
}

.salon-content p {
    color: var(--color0);
    font-size: 18px;
    letter-spacing: 1px;
}

.salon-content .h1 {
    color: #81C3D7;
}

.salon-content .h1:before {
    background: #81C3D7;
}

.body-page-1 .slide-parallax:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: -7vh;
    right: -13vh;
    z-index: -1;
    background: url(../images/before1.png) no-repeat bottom right;
    background-size: 100%
}

.fluid-slider {
    background: var(--color4)
}

.nopadding {
    padding: 0
}

.fluid-contenu {
    position: relative;
    z-index: 8000
}

.fluid-contenu .corps {
    padding: 20px 0 40px 0
}

.sidebar {
    padding-top: 30px;
    text-align: right
}

.sidebar .photoa {
    background: url(../images/photo-accueil.jpg) right top no-repeat;
    height: 187px
}

.view .item {
    padding: 20px 0 20px;
    margin: 0;
    float: left;
    width: 100%
}

.news .item {
    padding: 0 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;
    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
}

.view .item .h::before {
    display: none
}

.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_1)
}

.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: 18px;
    margin: 0 0 20px 0
}

.view .imagefond {
    display: inline-block
}

.paddingCont {
    border: none;
    padding: 30px 0
}

.NewsletterBg {
    padding: 78px 20px 60px;
    background-color: var(--color2);
    text-align: center;
    margin-top: 15px
}

.NewsletterBg .h {
    color: var(--color0);
    font-size: 23px;
    margin: 0 0 30px 0
}

.NewsletterBg p {
    font-size: 20px;
    color: var(--color4);
    margin: 0 0 1px 0
}

.block #newsletter_form {
    display: table;
    width: 100%;
    margin: 0 auto
}

.block #newsletter_form label {
    font-weight: 400;
    display: none
}

.block #newsletter_form input {
    border: none;
    border-radius: 0;
    display: table-cell;
    vertical-align: middle
}

.block #newsletter_form input[type=text] {
    line-height: 1;
    padding: 0 12px;
    width: 70%;
    margin: 0;
    font-size: 16px;
    border: 1px solid var(--color2);
    height: 45px
}

.block #newsletter_form input[type=submit] {
    background: var(--color0);
    border: 2px solid var(--color0);
    color: var(--color4);
    padding: 9px 13px 8px;
    font-weight: 900
}

.blockCenter.gallery-iflex {
    margin: 0 -15px
}

.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: 0;
    background: url(../images/g.png)
}

a.sudolien.suivant {
    right: 0;
    background: url(../images/d.png)
}

a.sudolien.precedent:hover,
a.sudolien.suivant:hover {
    opacity: .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(0)
    }
}

@-moz-keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }
    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@-o-keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }
    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes caption {
    0% {
        opacity: 0;
        transform: translateX(40px)
    }
    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

.news .item .h {
    text-transform: uppercase;
    margin: 15px 0;
    font-size: 19px;
    color: var(--color2);
    font-weight: 900
}

.news .item .h::before {
    display: none
}

.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: 0 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 0;
    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
}

.carte .group-left>ul,
.carte .group-right>ul {
    background-color: transparent
}

.carte ul {
    padding: 0;
    margin: 0 0 40px 0;
    float: left;
    width: 100%
}

.carte td {
    padding: 9px
}

.carte li {
    list-style: none;
    margin: 0 0 2em;
    display: block;
    position: relative;
    width: 100%;
    float: left
}

.carte .group {
    list-style: none;
    float: left;
    width: 100%;
    margin-bottom: 40px;
    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
}

.tel-tracker i {
    padding-right: 10px!important;
    font-size: 18px!important
}

.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(odd) {
    background-color: var(--color0)
}

.carte .itemTr:nth-child(even) {
    background-color: var(--color0)
}

.carte .group.group-title-p {
    margin-bottom: 0
}

.carte li:nth-child(even) .group {
    direction: rtl
}

.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: 0;
    width: 50%
}

.carte li:nth-child(odd) .group .groupContent {
    padding: 0;
    width: 50%
}

.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(--color);
    font-size: 16px;
    padding: 0;
    font-weight: 100;
    text-transform: uppercase
}

.carte .item p {
    margin-bottom: 0;
    background-repeat: repeat-x;
    background-position: 50% 12px
}

.carte .item .item-description,
.carte .item small {
    font-size: 20px;
    text-align: justify;
    padding: 6px 7px 6px 0;
    display: inline-block;
    width: 100%;
    margin-bottom: 0;
    font-weight: 100;
    text-transform: none;
    color: var(--color2);
    opacity: .8
}

.carte .price {
    float: none;
    color: var(--color4);
    font-size: 18px;
    position: relative;
    font-weight: 100;
    text-align: center;
    width: 69px;
    font-family: var(--font_family_3)
}

.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
}

.flex-head-txt h1 {
    text-align: left;
    display: block;
    position: relative;
    padding: 33px 15px;
    font-size: 35px
}

.flex-head-txt h1:after {
    background: #bcbc0f;
    width: 80px;
    height: 80px;
    left: 0;
    z-index: 1;
    top: 12px;
    position: absolute;
    transform: translate(0, 0)
}

.flex-head-txt h1 span {
    display: block;
    position: relative;
    z-index: 100
}

.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
}

.title {
    font-size: 212px;
    text-align: center;
    position: absolute;
    width: 100%;
    top: 10vh;
    text-overflow: clip;
    z-index: -2;
    font-family: abrilfatface;
    color: #ece0d5;
    white-space: nowrap;
    left: -22%
}

.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
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .lightboxOverlay {
        overflow: scroll
    }
    .lightboxOverlay::-webkit-scrollbar {
        width: 0
    }
}

body:after {
    content: url(../images/bx_loader.svg)!important;
    display: none
}

input:-moz-autofill,
input:-webkit-autofill,
select:-moz-autofill,
select:-webkit-autofill,
textarea:-moz-autofill,
textarea:-webkit-autofill {
    background-color: var(--color3)!important;
    background-image: none;
    color: var(--color0)!important
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) {
    direction: rtl
}

.body-service-list .services .tableGrid.row {
    overflow-x: hidden;
    margin: 35px 0;
    height: 530px;
}

.tableGrid.fullWidth {
    width: 100%
}

.tableGrid,
.tableGrid>.row {
    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>.row>[class*=col],
.tableGrid>.table-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>.row>[class*=col],
.tableGrid.nopadding>.table-row>[class*=col],
.tableGrid.nopadding>[class*=col] {
    padding: 0
}

.tableGrid.va-middle>.row>.table-row>[class*=col],
.tableGrid.va-middle>.row>[class*=col],
.tableGrid.va-middle>.table-row>[class*=col],
.tableGrid.va-middle>[class*=col] {
    vertical-align: middle
}

strong {
    font-family: var(--font_family_1)
}

em {
    font-style: italic!important
}

.accroche p strong,
.carte .group-title,
.carteSeeMore,
.datepicker table tr th,
.datepicker table tr th.datepicker-switch,
.formule .prix,
.h,
.leading,
.tel span,
.zone01 ul li,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font_family_1)
}

.gfg,
.navbar-nav>li>a {
    font-family: var(--font_family_1)
}

.address strong {
    font-family: var(--font_family_1);
    font-weight: 700!important
}

.carte .group-subtitle {
    font-family: var(--font_family_1);
    margin: 15px 0;
    font-size: .9em;
    text-align: center;
    color: var(--color2)
}

.container,
.row {
    position: relative
}

.engegements-content .service.row {}

section p img {
    margin: 5px 10px 10px 10px
}

img[style="float:right;"],
section figure.right {
    margin: 0 5px 20px 0
}

img[style="float:left;"],
section figure.left {
    margin: 0 20px 5px 0
}

.sidebar-scroll-right .callTracker {
    width: 100%;
    height: 50px
}

.callTracker {
    position: relative;
    margin-top: -3px
}

.callTracker .t_phone {
    opacity: 0;
    display: none
}

.callTracker .t_affiche {
    cursor: pointer
}

.callTracker.active .t_phone {
    opacity: 1;
    display: inline-block;
    text-decoration: unset
}

footer .callTracker.active .t_phone {
    color: #000
}

.callTracker.active .t_affiche {
    opacity: 0;
    display: none
}

.coordonnees .callTracker a,
.pied .callTracker a {
    position: relative;
    left: 0
}

.coord {
    padding: 0 3%
}

i.fas.fa-phone-alt {
    transform: rotate(95deg);
    margin-right: 6px;
    margin-top: -4px
}

:focus {
    outline: 0
}

html {
    height: 100%;
    font-size: 62.5%;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%
}

blockquote,
body,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
html,
input,
p,
pre {
    margin: 0;
    padding: 0
}

.flex-head.galerie .flex-head-img .img-gallery.noflicker {
    width: 100%;
    height: 100%;
}

.owl-theme .owl-dots {
    position: relative;
    bottom: 50px;
}

.atouts .swiper-container {
    padding: 2% 0
}

.atouts {
    padding: 4% 10% 1%;
    background: #eff8ff;
}

.atout-item {
    text-align: center;
    font-size: 23px;
    height: 200px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    transition: all .3s linear;
    padding: 30px
}

.atout-item p {
    padding-top: 20px;
    font-size: 18px;
    letter-spacing: 1px
}

.atout-item img {
    height: 70px
}

.atout-item:hover {
    transform: translateY(-10px)
}

.atout-item i {
    font-size: 50px;
    opacity: .7;
    color: var(--color2)
}

.atout-item::first-letter {
    text-transform: uppercase
}

address,
caption,
cite,
code,
em,
pre,
strong,
th {
    font-size: 18px;
    font-weight: 400;
    font-style: normal
}

fieldset {
    border: none
}

caption,
th {
    text-align: left
}

.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: 0
}

input[type=search] {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: ''
}

input[type=submit] {
    cursor: pointer
}

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)
}

sub,
sup {
    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
}

body {
    background: var(--color0);
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    font-smoothing: antialiased;
    font-size: 16px;
    color: #232323;
    position: relative;
    font-family: var(--font_family_1)
}

.contact-footer .col-md-8 {
    width: 100%
}

label.checkbox.label-rgpd p {
    font-size: 11px
}

form .col-md-8 {
    width: 100%
}

.body-contact-39 .contact {
    padding: 0
}

p,
ul {
    margin-bottom: 20px
}

a {
    font-size: inherit;
    font-family: inherit;
    color: var(--color2);
    text-decoration: underline
}

.sitemap a {
    color: var(--color4);
    text-decoration: none;
    line-height: 1.5
}

a:focus,
a:hover {
    text-decoration: underline;
    color: #428bca;
}

blockquote {
    border-color: var(--color2)
}

::selection {}

.h,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-style: normal;
    margin: 0 0 25px;
    font-weight: 400;
    display: block;
    margin-top: 0;
    color: var(--color2)
}

.copyright h3 {
    margin: 0 0 10px
}

footer .btn-partage a i {
    margin: 0 5px
}

footer .btn-partage a.insta i {
    font-weight: 600;
    font-size: 20px
}

.h1::first-letter,
.hicon::first-letter,
h1::first-letter {
    text-transform: uppercase!important
}

.h1:before,
.h:before,
h1:before {
    content: "";
    position: absolute;
    width: 50px;
    height: 3px;
    background: #81C3D7;
    top: calc(100% + 5px);
    left: 50%;
    transform: translate(-50%)
}

.banner .h1:before,
.banner .h:before,
.banner h1:before {
    display: none;
}

span.secondaire,.titre-secondaire {
    display: block;
    font-size: 32px;
    color: var(--color4);
    letter-spacing: 1px;
    font-weight: 100;
    text-transform: initial;
    font-family: var(--font_family_2);
    padding: 10px
}

.partenaire {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--color0);
    padding: 80px 0 30px
}

.bannier .banner h1 {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    width: 100%;
    line-height: 1.5
}

.body-pageseo .bannier .banner h1:nth-child(2) {
    display: none
}

.bannier .banner h1 small {
    color: var(--color5)
}

.form h2 {
    margin-bottom: 45px
}

.form h2+p {
    text-align: center
}

.form {
    padding: 0 30%
}

.bannier .banner h1:after,
.h1:after,
.hicon:after,
h1:after {
    content: "";
    position: absolute;
    width: 200px;
    height: 25px;
    left: 50%;
    top: -37px;
    transform: translate(-50%, 0)
}


/* // banner slider */

.body-page-1 .banniere .owl-carousel.owl-theme.owl-loaded.owl-drag {
    position: relative;
    z-index: 2;
    height: 100vh;
}

.body-page-1 .banniere {
    height: 100vh;
}

.body-page-1 .banniere .owl-carousel.owl-drag .owl-item {
    overflow: hidden
}

.banniere .owl-carousel .owl-stage-outer:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    background: linear-gradient(177deg, #00000000, #0000008a);
}

.banniere .owl-carousel .owl-stage-outer {
    position: relative;
    height: 100vh;
}

.body-page-1 .banniere .item-slide {
    height: 105vh;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.body-page-1 .banniere .owl-nav {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    z-index: 9999
}

.body-page-1 .banniere .owl-nav button.owl-next,
.body-page-1 .banniere .owl-nav button.owl-prev {
    background: #ffffff21;
    width: 40px;
    height: 40px;
    color: #fff;
    font-size: 25px;
    border: 2px solid #ffffff38;
    font-weight: 700;
    border-radius: var(--border-radius);
    margin: 0 15px;
    transition: all .3s linear;
}

.body-page-1 .banniere .owl-theme .owl-nav [class*=owl-]:hover {
    background: var(--color2);
    border-color: transparent;
    color: #fff !important;
}

button.owl-prev span,
button.owl-next span {
    position: relative;
    top: -10px;
}

.item-slide {
    animation: zoomInFaster 50s linear infinite 0s;
    -o-animation: zoomInFaster 50s linear infinite 0s;
    -moz-animation: zoomInFaster 50s linear infinite 0s;
    -webkit-animation: zoomInFaster 50s linear infinite 0s
}

@keyframes zoomInFaster {
    0% {
        transform: scale(1);
        -ms-transform: scale(1)
    }
    30% {
        transform: scale(1.25);
        -ms-transform: scale(1.25)
    }
    100% {
        transform: scale(1);
        -ms-transformm: scale(1)
    }
}

@-o-keyframes zoomInFaster {
    0% {
        transform: scale(1);
        -ms-transform: scale(1)
    }
    30% {
        transform: scale(1.25);
        -ms-transform: scale(1.25)
    }
    100% {
        transform: scale(1);
        -ms-transformm: scale(1)
    }
}

@-moz-keyframes zoomInFaster {
    0% {
        transform: scale(1);
        -ms-transform: scale(1)
    }
    30% {
        transform: scale(1.25);
        -ms-transform: scale(1.25)
    }
    100% {
        transform: scale(1);
        -ms-transformm: scale(1)
    }
}

@-webkit-keyframes zoomInFaster {
    0% {
        transform: scale(1);
        -ms-transform: scale(1)
    }
    30% {
        transform: scale(1.25);
        -ms-transform: scale(1.25)
    }
    100% {
        transform: scale(1);
        -ms-transformm: scale(1)
    }
}

.body-page-1 .banniere .item-slide {
    height: 100vh;
    background-position: bottom !important;
}


/* // banner slider */

.h2,
.hicon:after,
h2 {
    font-size: 24px;
    margin-bottom: 20px
}

.h3,
h3 {
    font-size: 22px
}

.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
}

//custom seo
.pageseo .formulaire .form-group input[name=captcha] {
    width: 100%!important;
    margin-right: 0!important;
    text-align: left!important
}

.pageseo .formulaire .form-group input[name=captcha]+a {
    position: absolute;
    width: 140px;
    top: 0;
    right: 0;
    margin-right: 0!important
}

.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;
    transform: translate(0)
}

.flex-seoContain .seo-form {
    width: 44%;
    padding: 1em 3% 3em;
    background: var(--bg-facultatif)
}

.img-seo img {
    width: 100%;
    height: 100%;
}
.imagecont.noflicker.img1 {
    display: block;
    margin: 1vh 0 2vh;
    height: 30vh;
    overflow: hidden;
}

.flex-seoContain .seo-content img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.corps .page-contenu h2:first-of-type, .corps .gallery h2:first-of-type , .corps .seo-content h2:first-of-type , .corps .newsItem h2:first-of-type {
    position: relative;
    padding: 3vh 2vw;
    font-size: calc(var(--taille_font) + .2rem);
    line-height: calc(var(--taille_font) + 1rem);
    border: none;
    font-weight: 700;
    z-index: 1;
}

.corps .page-contenu h2:first-of-type:before, .corps .gallery h2:first-of-type:before , .corps .seo-content h2:first-of-type:before , .corps .newsItem h2:first-of-type:before {
    content: '';
    position: absolute;
    background: var(--color1);
    width: 100%;
    height: 100%;
    opacity: .2;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: var(--border-radius);
}

.corps .page-contenu h2, .corps .gallery h2 , .corps .seo-content h2, .corps .newsItem h2 {
    margin-bottom: 2vh;
}
.corps blockquote {
    font-size: inherit;
    background: var(--bg-facultatif);
    border-radius: var(--border-radius);
    border: 0;
    padding: 3vh 2vw;
    margin: 3vh 0;
}
//custom seo

ol li.niveau2,
ul li.niveau2 {
    margin-left: 30px
}

hr {
    background-color: #d9d9d9;
    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
}

.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
}

.headerAdress p img {
    vertical-align: sub
}

.body-page .header {
    z-index: 2;
    position: relative;
    width: 100%;
    padding: 0 0 0;
    height: 100vh;
    background: linear-gradient(90deg, #f2f9ff, #ffe1e6);
}

.header {
    z-index: 2;
    position: relative;
    width: 100%;
    padding: 0 0 0;
    height: 60vh;
}

.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: 9999;
    position: fixed;
    padding: 17px 2%;
    height: 95px;
    width: -webkit-fill-available;
    top: 0;
    left: 0;
    transition: .3s;
    background: #fff;
}

.body-page-1 .header01bg {
    background: #fff;
}

.header01bg.fixed {
    background: var(--color0);
    transition: .3s;
    box-shadow: 5px 5px 50px #00000012;
    margin: 0;
}

.header02bg {
    z-index: 1;
    position: relative;
    padding: 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;
    height: auto;
    width: 100%;
    overflow: visible
}

.navbar-brand.paddin {
    padding: 30px 0 10px
}

.navbar-brand img {
    position: absolute;
    width: 128px;
    height: auto;
    top: -40px
}

.navbar {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center
}

nav.navbar i {
    font-size: 22px;
    padding-right: 4px
}

.rs {
    display: flex;
    transition: all .4s ease;
    text-align: center;
    justify-content: center;
    align-items: center;
    column-gap: 20px
}

.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 {
    font-size: 18px;
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    color: var(--color4);
    margin: 0 4px;
    letter-spacing: 1px
}

.navbar-nav>li:last-child a {
    border-right: 0 solid var(--color1)
}

.navbar-nav>.active>a,
.navbar-nav>.active>a:focus,
.navbar-nav>.active>a:hover,
.navbar-nav>li>a.active,
.navbar-nav>li>a:focus,
.navbar-nav>li>a:hover {
    color: var(--color2);
    background: 0 0
}

@-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;
    height: 100%
}

.propor:after {
    padding-top: 72%;
    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)
}

.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
}

.propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    height: 100%;
    transition: .3s
}

.propor .propor-cont .imagecont:hover img {
    transform: scale(1.2);
    transition: .3s
}

.news .propor .propor-cont .imagecont:hover img {
    transform: scale(1.1)
}

.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;
    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%;
    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 .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:focus,
.news_avant_apres a:hover {
    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:focus span,
.news_avant_apres a:hover 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: .6;
    transition: .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: .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)
}

.gallery .nav {
    margin: 10px 0;
    padding-right: 10px
}

.gallery .nav li {
    display: inline-block;
    width: 100%;
    margin-bottom: 10px
}

.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: 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
}

.navbar-nav ul.sub-menu {
    position: absolute;
    top: 72px;
    left: 50%;
    width: 160%;
    margin-left: -80%;
    background-color: var(--color3);
    text-align: left;
    z-index: 1;
    padding-top: 12px;
    opacity: 1;
    height: auto;
    padding: 0;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0
}

.navbar-nav>li:hover>ul.sub-menu {
    top: 72px;
    opacity: 1;
    animation-delay: 3s;
    height: auto;
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1)
}

.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(--color3) transparent
}

.hasSubMenu>a {
    background-image: url(../images/subMenuArrow.png);
    background-repeat: no-repeat;
    background-position: 100% 28%
}

.navbar-nav ul.sub-menu>li {
    display: inline-block;
    margin: 0;
    width: 100%;
    list-style: none
}

.navbar-nav ul.sub-menu>li>a {
    padding: 12px 10px;
    font-size: 13px;
    color: var(--color3);
    background-color: var(--color3);
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    display: inline-block;
    border-bottom: 1px solid var(--color3)
}

.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: var(--color3);
    text-decoration: none
}

.sub-menu {
    display: none!important
}

.btn {
    position: relative;
    text-align: center;
    border: none;
    display: inline-block;
    border-radius: 0;
    padding: 10px 20px;
    text-decoration: unset
}

.btn.active,
.btn.active:focus,
.btn:active,
.btn:active:focus,
.btn:focus,
.btn:hover,
.open .dropdown-toggle.btn {
    outline-offset: -2px;
    outline: 0
}

.btn-primary {
    font-size: 22px;
    background-color: transparent;
    border: 1px solid #428bca;
    color: #428bca !important;
    min-width: 240px;
    text-decoration: unset;
    text-transform: inherit
}

.ReservationText .carteSeeMore {
    margin-top: 30px;
    transition: all .3s linear;
    transform: translate(35px)!important
}

.btn-lg {
    padding: 15px 26px;
    font-size: 2.2rem
}

.btn-primary.active,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover,
.open .dropdown-toggle.btn-primary {
    background-color: #428bca;
    border: 1px solid #428bca;
    color: var(--color0)!important;
    transition: .3s
}

.actu-show-more a:hover {
    background: var(--color2)
}

.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.active,
.btn-link:active,
.btn-link:focus,
.btn-link:hover {
    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.active,
.voirtous:active,
.voirtous:focus,
.voirtous:hover {
    background-color: transparent;
    border: 1px solid var(--color4);
    color: var(--color4)
}

.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)
}

.devis {
    padding: 14px 50px;
    float: right;
    margin-top: 20px
}

.tel-tracker {
    width: 20%;
    position: relative;
    margin: 0 0% 0 1px;
    padding: 10px 20px;
    transition: all .3s linear;
    display: flex;
    gap: 10px;
    align-items: center;
}

.tel {
    text-align: center;
    width: 100%;
    height: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    font-size: 1vw;
    color: #000000;
    margin: 0;
    white-space: nowrap
}

.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 {
    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 {
    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: 0 0!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%
}

.banner {
    overflow: hidden;
    margin: 0 auto;
    height: 100%;
    position: relative;
    width: 100%;
    background-size: cover;
    z-index: 1
}

.banner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: #0000006b;
}

.banner img {
    width: 100%;
    margin-left: 0
}

.banner h1:not(.body-page-1 .banner h1) {
    top: 50%;
    transform: translateY(10%);
    color: #fff;
    font-size: 4em;
}

.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
}

.bannier {
    position: relative;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #f2f9ff, #ffe1e6);
    z-index: 1
}

.body-page .bannier {
    position: relative;
    width: 100%;
    height: 90vh;
    background: url(../images/bg-1.jpg);
    background-size: cover;
    z-index: 1
}

#footer:after,
.NosPlanDAccesBg:after,
.actuAndNewsletter-container:after,
.bloc-GMB:after,
.reserv-container:after,
.theReservationText:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: .1
}

.NosPlanDAcces.NosPlanDAcces02.aos-init.aos-animate {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.sliderBg {
    position: relative;
    width: 100%;
    height: calc(100vh - 9vh)
}

.slide-parallax {
    position: absolute;
    width: 45%;
    height: 78vh;
    right: 8%;
    top: 18%
}

.slide-parallax img {
    height: 100%;
    width: 100%;
    object-fit: contain
}

.slogan {
    position: absolute;
    width: 80%;
    top: 49%;
    left: 50%;
    height: auto;
    z-index: 99;
    transform: translate(-50%);
    text-align: center;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.slogan :after {
    display: none
}

.slogan h1 {
    font-size: 8rem;
    font-family: var(--font_family_3);
    text-align: center;
    line-height: 1.2;
    letter-spacing: 1px;
    width: 100%;
    margin: 0;
}

.body-page-1 .banniere .slogan h1 {
    color: var(--color1);
    text-shadow: 3px 4px 10px #00000038;
    text-align: center;
}

.slogan h1::before {
    display: none
}

.slogan h1 span:first-letter {
    text-transform: uppercase
}

.sous-titre {
    text-transform: initial;
    font-family: var(--font_family_2);
    font-size: 30px;
    display: block;
    color: var(--color4);
    padding: 10px;
    margin: 1em 0;
    font-weight: 100
}

.head-btn>a,
.head-btn>p {
    position: relative;
    background: 0 0;
    font-size: 20px;
    padding: 15px 30px;
    color: #fff;
    margin-right: 15px;
    text-decoration: none;
    text-transform: initial;
    width: auto;
    text-align: center;
    transition: .3s;
    border: 1px solid #fdfdfd;
    cursor: pointer;
    font-family: var(--font_family_1);
    white-space: nowrap;
}

.head-btn .tel {
    margin: 0;
    font-size: 20px;
    display: block;
    text-align: center
}

.head-btn {
    position: relative;
    width: 100%;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}

.nav-liste {
    position: relative;
    width: 60%;
    height: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center
}

.nav-logo {
    width: 200px;
    position: relative;
    height: 100%;
    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_bg {
    padding-top: 30px;
    position: relative;
    z-index: 1;
    background-color: var(--color0)
}

.flex-head {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    column-gap: 5%;
    align-content: center;
    align-items: flex-start;
    justify-content: flex-start
}

.flex-head.galerie {
    margin: 6vh 0 8%;
}

.flex-head-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: top
}

.flex-head-img:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../images/home.jpg) no-repeat top right;
    background-size: 100%
}

.flex-head-img {
    position: relative;
    width: 50%;
    height: 50vh!important
}

.flex-head.galerie .flex-head-img {
    position: relative;
    height: 67vh !important;
}

.flex-head-txt::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(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%;
    max-height: 50vh;
    overflow: auto;
    padding: 0 35px 0 0;
    text-align: justify
}

.flex-head.galerie .flex-head-txt {
    max-height: 67vh;
}

.head-img.img-1 {
    width: 50%;
    height: 100%;
    position: relative;
    right: -12%
}

.head-img {
    border: 3px solid var(--color0)
}

.head-img.img-2 {
    width: 50%;
    height: 90%;
    position: relative;
    right: -50%;
    top: -75%;
}

#main {
    padding: 60px 8%;
    width: 100%
}

.body-page-1 #main {
    padding: 60px 8% 10em;
}

.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-page-1 .section,
.body-pageseo .section {
    height: 100%;
    padding: 60px 0 0
}

section.section.row.pageseo {
    padding: 0
}

#main h1 {
    margin-bottom: 70px
}

.carte .itemTr:nth-child(odd) {
    background-color: #f0f3f26b
}

.carte .itemTr:nth-child(even) {
    background-color: #ffffff9c
}

.carte .group .blazy {
    border: 4px solid #81C3D7;
    background-size: cover;
    background-position: center;
    min-height: 55vh;
    display: block
}

.group-description {
    color: var(--color2)
}

.carte .group-title {
    color: var(--color4);
    border: 0;
    background-color: transparent;
    font-size: 28px;
    margin: 0 0 22px;
    text-align: left;
    display: inline-block;
    text-transform: uppercase;
    padding: 0;
    z-index: 0;
    font-family: var(--font_family_3)
}

.carte .itemTr:nth-child(odd) {
    background-color: var(--color1)
}

.carte .itemTr:nth-child(even) {
    background-color: #ffffff9c
}

.datepicker table tr td.today.active.focus,
.datepicker table tr td.today.active:focus,
.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:hover {
    background-color: var(--color1);
    color: var(--color0)
}

.datepicker table tr td.today {
    color: var(--color0);
    background: var(--color1)
}

.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active:active {
    background: var(--color3)
}

.title_footer {
    text-transform: inherit;
    margin-bottom: 16px;
    font-size: 25px;
    color: var(--color2);
    letter-spacing: 1px;
    font-family: var(--font_family_3)
}

footer .scrollbars {
    height: 199px;
    overflow-Y: scroll;
    padding-right: 20px
}

.flex-address {
    display: flex
}

.footer-coordonnees>i {
    color: var(--color2);
    padding: 6px 11px 0 0
}

.flex-address,
.footer-coordonnees .tel1,
.footer-coordonnees .tel2 {
    display: flex
}

.flex-address i,
.footer-coordonnees .tel1 i,
.footer-coordonnees .tel2 i {
    color: var(--color2);
    padding: 4px 10px 0 0;
    transform: rotate(0);
    margin: 0!important
}

.flex-horaires .horaires {
    float: left
}

.flex-horaires .horaires i {
    padding: 0 10px 0 0;
    color: var(--color2);
    margin-right: 8px;
    display: none;
}

#footer {
    position: relative;
    z-index: 1;
    background: #ceeaff;
}

.footer {
    position: relative;
    height: auto;
    padding: 0;
    margin: 0
}

.footer1_bg {
    position: relative;
    padding: 30px 10%
}

.container-fluid.footer1_bg .row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

.footer2_bg {
    background: #eff8ff;
    padding: 6px 0 6px;
    margin-top: 100px;
    z-index: 2;
    width: 85%;
    position: relative;
    top: -40px;
    box-shadow: -1px 0 10px #00000017
}

.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_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: 8px;
    position: relative;
    text-align: center;
    border-right: 0 solid var(--color3);
    line-height: 1.1;
    color: var(--color3)
}

.menu_footer>li:first-child:before {
    display: none
}

.menu_footer li a {
    font-size: 18px;
    color: var(--color4);
    line-height: normal;
    text-decoration: none;
    font-weight: 100;
    padding: 0 3px 0;
    text-transform: inherit;
    font-family: var(--font_family_3);
    letter-spacing: 1px;
    transition: all .3s linear
}

.menu_footer li a:focus,
.menu_footer li a:hover,
.menu_footer li.active a {
    color: var(--color2);
    text-decoration: none
}

.menu_footer li:last-child,
.menu_footer li:last-child a {
    border-right: none
}

.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 {
    text-decoration: none;
    text-transform: none;
    color: var(--color4);
    font-size: 16px;
    font-weight: 100;
    letter-spacing: 1px
}

.menu_referencement li a:focus,
.menu_referencement li a:hover,
.menu_referencement li.active a {
    text-decoration: underline;
    color: var(--color2)
}

.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(--color2)
}

#logoFD svg {
    width: 220px
}

.form-group .label-rgpd strong,
.info-rgpd a,
.info-rgpd a:visited,
.info-rgpd strong {
    color: var(--color2)
}

label.checkbox.label-rgpd {
    font-size: 11px;
    text-align: left
}

.contact_footer_container {
    background: var(--color0);
    padding-top: 4em;
}

#contact-form {
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 10px 20%
}

.contact p {
    margin-bottom: 16px;
    font-size: 15px
}

.form-group,
input[name=captcha] {
    margin-bottom: 10px;
    position: relative
}

.form-control {
    height: auto;
    padding: 4px 10px 4px 10px;
    font-size: 14px;
    color: var(--color4);
    background-color: transparent;
    border: 1px solid #aeaeae63;
    border-radius: 0;
    box-shadow: unset
}

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(--color2)
}

label {
    font-size: 13px;
    color: var(--color4);
    font-weight: 100;
    padding-top: 0;
    margin: 0
}

.body-contact label,
.contact label {
    display: none
}
@media (min-width:768px) {
    .form-horizontal .control-label {
        text-align: left
    }
}

textarea.form-control {
    resize: vertical;
    height: 110px!important;
    padding: 15px 10px!important
}

.pageseo textarea.form-control {
    resize: vertical
}

.form-group .btn-primary {
    float: left;
    width: 100%;
    line-height: 0;
    font-weight: 400!important
}

.form-group .btn-primary:active,
.form-group .btn-primary:focus,
.form-group .btn-primary:hover {
    outline: 0
}

.form-group .btn-primary:active {
    color: var(--color4)
}

::-webkit-input-placeholder {
    color: var(--color4)!important;
    opacity: 1!important;
    font-size: 14px
}

::-moz-placeholder {
    color: var(--color4)!important;
    opacity: 1!important
}

::-ms-input-placeholder {
    color: var(--color4)!important;
    opacity: 1!important
}

.form-control:active,
.form-control:focus {
    background-color: transparent;
    border: 1px solid var(--color2)!important;
    color: var(--color2);
    padding: 4px 10px;
    -webkit-box-shadow: 0 0 0 var(--color3);
    -moz-box-shadow: 0 0 0 var(--color3);
    -ms-box-shadow: 0 0 0 var(--color3);
    -o-box-shadow: 0 0 0 var(--color3);
    box-shadow: 0 0 0 var(--color3);
    outline: 0
}

.required {
    color: var(--color3);
    font-size: 14px
}

.form-actions {
    color: red;
    font-size: 13px;
    font-style: italic
}

legend {
    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-control,
.form-group .btn-primary,
input[name=captcha],
input[name=captcha]+a {
    height: 50px!important
}

.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
}

.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(--color4); */
    font-weight: 100;
    margin-bottom: 35px
}

.contact .h span {
    font-family: var(--font_family_3);
    text-transform: uppercase
}

.footer_address {
    position: relative;
    margin-bottom: 0
}

.footer_address a,
.footer_address p {
    font-size: 1.4rem;
    color: var(--color1);
    font-weight: 700;
    letter-spacing: 0
}

.footer_address p {
    padding-top: 13px
}

.body-gallery .main_bg {
    overflow-x: hidden
}

.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
}

.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
}

.nav-pills>li.active>a,
.nav-pills>li.active>a:focus,
.nav-pills>li.active>a:hover,
.nav-pills>li>a:focus,
.nav-pills>li>a:hover {
    color: var(--color0);
    background-color: var(--color2);
    border: 1px solid var(--color2);
    text-decoration: none
}

.tab-content>.tab-pane {
    display: block
}

#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;
    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: 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: .5;
    border: 0 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 {
    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)
}

.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(--color2)!important
}

.header-sidebars,
.sidebar-left,
.sidebar-right {
    background-color: var(--color3);
    letter-spacing: 1px
}

.contactButton,
.nav-item-active,
.sidebar-bottom-controls a,
.sidebar-divider-text,
.sidebar-form label,
.sidebar-left a,
.sidebar-right a,
.sidebar-send-button {
    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;
    background: var(--color0)
}

.top-logo img {
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 100px
}

.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(--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-mail {
    border-left: 1px var(--color0) solid;
    display: table-cell;
    background-color: var(--color2);
    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(--color2);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/telephone.svg);
    background-repeat: no-repeat;
    height: 68px;
    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_1)!important;
    width: 270px;
    z-index: 9999;
    top: 0;
    left: -270px;
    bottom: 0;
    overflow: hidden;
    position: fixed;
    box-shadow: 3px 0 3px 0 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_1)!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
}

.salon-content span.subtitle {
    padding: 0 24vh;
    display: block;
    line-height: 36px;
    font-size: 20px;
    text-transform: none
}

.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: 23px;
    right: 14px;
    display: none;
    max-width: 161px;
    float: right;
    max-height: 37px;
    position: relative
}

.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(--color4)!important;
    font-weight: 900;
}

.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_1);
    font-weight: 700;
    text-transform: uppercase;
    line-height: 10px
}

.sidebar-header-right {
    height: 65px;
    background-color: var(--color2);
    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(--color0)!important;
    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: 0 0;
    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_1);
    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_1);
    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: 0
}

.contactButton {
    display: block;
    overflow: hidden;
    position: relative;
    margin-left: 20px;
    margin-top: 30px;
    height: 36px;
    font-family: var(--font_family_1);
    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;
    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
}

.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_1);
    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 {
    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: 0
}

.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%;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    z-index: 1;
    padding: 5% 10%;
    background-image: url(../images/bg.jpg);
    background-position: center;
    background-attachment: fixed;
    background-color: #000000ad;
    background-blend-mode: soft-light;
    transition: all .3s linear;
}

.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_1)
}

.bx-pager.bx-default-pager a.active,
.bx-pager.bx-default-pager a:hover {
    background: var(--color2);
    width: 16px;
    height: 16px;
    border: 3px solid var(--color0)
}

.row.description-galerie.clear {
    margin: 0
}

.bx-pager.bx-default-pager a {
    background: var(--color4);
    border: 3px solid var(--color0);
    width: 16px;
    height: 16px
}

.NewsletterBg .h {
    margin: 30px auto;
    color: var(--color2);
    font-size: 40px
}

.block #newsletter_form input[type=submit] {
    padding: 10px 13px 8px
}

.block.block-2 .form-inline .form-group input {
    background: 0 0;
    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_1)!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(--color2);
    font-family: var(--font_family_1)!important;
    font-weight: 100!important;
    color: var(--color0)
}

.services-home {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--color0);
    padding: 7em 0 30px;
}

.services-home .bx-pager {
    bottom: -50px
}

.engegements-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 40px 8%
}

.one-service.item {
    position: relative;
    height: 410px;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: .3s;
    margin: 0 0 35px 0;
}

.one-service.item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s
}

.one-service.item:hover img {
    transform: scale(1.1);
    transition: .3s
}

.service-coor {
    position: relative;
    width: 100%;
    height: 30%;
    background: #eff8ff;
    display: flex;
    align-content: center;
    align-items: center;
    text-align: left;
    flex-wrap: wrap;
    padding: 0 15px;
    justify-content: space-evenly
}

.service-img {
    position: relative;
    width: 100%;
    height: 80%;
    overflow: hidden;
    transition: .3s
}

.service-coor p {
    position: relative;
    width: 50%;
    margin: 0;
    text-align: left;
    font-size: 20px
}

.service-coor a {
    position: relative;
    width: auto;
    text-align: center;
    background: 0 0;
    padding: 10px 20px;
    border: 1px solid #4169E1;
    text-decoration: unset;
    text-transform: inherit;
    color: #4169E1;
    transition: .3s;
    font-size: 18px
}

.service-coor a:hover {
    background: #4169E1;
    color: var(--color0);
    transition: .3s
}

.center-dyn {
    display: block;
    width: 50%;
    margin: 0 auto
}
/* 
.actu-container {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background: var(--color1)
}

.actu-image {
    position: relative;
    width: 100%;
    height: 100%
}

.actu-image .blazy {
    height: 390px;
    width: 100%;
    background-size: 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%
}

.actuAndNewsletter.actuAndNewsletter02.NewsletterBg {
    position: relative;
    width: 40%;
    height: 100%;
    background: beige;
    border: 1px solid #bcbc0f85
}

.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
}

.actu-show-more a {
    font-size: 22px;
    text-transform: unset;
    min-width: 140px
}
 */
 .etoiles .fa {
    color: #FFCC00;
}
.AvisClientsBg {
    position: relative;
    z-index: 8000;
    background: var(--color0);
    background-size: 50% 1px;
    text-align: center;
    padding: 3% 0% 5%;
}
.AvisClientsBg .contenu {
    padding: 0em 7%;
    position: relative;
}
.AvisClientsBg .bouton-principal {
    min-width: 210px;
}

.AvisClientsList {
    margin: 0;
    padding: 0;
}

.AvisClientsList li {
    list-style: none;
    background: none;
}

.avisClientsBg .h {
    text-align: center;
}

.AvisClients:link,
.AvisClients:visited,
.AvisClients {
    position: relative;
    background-color: var(--color1);
    padding: 80px 20px 20px;
    text-align: center;
    height: 300px;
    display: block;
    text-decoration: none;
    color: #000;
    transition: all .3s linear;
}

.AvisClients:active,
.AvisClients:hover {transform: scale(1.05);}

.AvisClients .h {
    font-size: 18px;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 0;
}

.AvisClients p {
    font-size: 14px;
    margin-bottom: 0;
    color: var(--color4);
    line-height: 1.7;
}

.AvisClients .blazy {
    font-size: 16px;
    color: #fff;
    width: 128px;
    margin: 0 auto;
    border-radius: 50%;
    margin-bottom: 20px;
    position: absolute;
    top: -70px;
    left: 50%;
    margin-left: -64px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #F6F6F6;
    display: none;
}

.AvisClientsBg .bx-pager {
    bottom: 17px;
}

.avisContent:before {
    content: '\00AB';
    display: inline-block;
    margin-right: 5px;
}

.avisContent:after {
    content: '\00BB';
    display: inline-block;
    margin-left: 5px;
}

.temoignageScroll {
    max-height: 109px;
    text-align: center;
    overflow: hidden;
}

.temoignageScroll .scrollbar-content {
    padding: 0 10px 0 0;
    width: 100%;
}

.temoignageScroll .scrollbar-path-vertical {
    right: 0;
}

.date_post {
    font-size: 12px;
    padding: 4px 0;
    text-align: center;
    color: var(--color0);
    font-weight: 800;
    font-size: 14px;
    font-size: clamp(12px, .5vw, 14px);
    line-height: 18px;
    text-transform: uppercase;
    display: block;
    background-color: var(--color2);
    position: absolute;
    left: 0;
    top: 0;
    padding: 4% 4% 4%;
    z-index: 50;
    margin: 0;
    border-radius: var(--border-radius) 0 0;
    font-family: var(--font2);
    font-weight: 100;
    letter-spacing: 1px;
}

.AvisClientsBg .bx-controls.bx-has-pager {
    display: block;
    position: relative;
    height: 70px;
}

.livre-elements {
    padding: 8vh 0 0;
    margin-bottom: 40px;
    text-align: center;
}

.livre-elements .blazy {
    margin: 0 auto 10px;
    border-radius: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #F6F6F6;
    width: 115px;
    height: 115px;
    display: none;
}

.livre-elements .pseudo {
    margin-bottom: 10px;
}

.livre-elements .date {
    margin-bottom: 10px!important;
}

.livre-elements .etoiles {
    margin-bottom: 0!important;
}

.livre-elements .temoignage {
    text-align: justify;
}

.livre-elements .temoignage:before {
    content: '\00AB';
    display: inline-block;
    margin-right: 5px;
}

.livre-elements .temoignage:after {
    content: '\00BB';
    display: inline-block;
    margin-left: 5px;
}

.divAvis {
    padding: 30px 20px;
    margin-bottom: 60px;
    background-color: var(--color0);
    border-radius: 2px;
    border: 1px solid #00000029;
}

.divAvis p.temoignage {
    color: var(--color2);
    font-size: 15px;
}

.divAvis .pseudo {
    text-align: center;
    margin-top: 1vh;
}

.btn-avis {
    margin-bottom: 30px;
}

/* Modal/* ****************************** */

.modal-content {
    background-color: var(--color0);
}

.modal-header {
    border-bottom: 1px solid var(--color2);
}

.modal-header .h1 {
    text-align: center;
    margin-bottom: 40px;
    font-size: 30px;
}

.modal {
    display: none;
    overflow: auto;
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0;
}

.modal {
    z-index: 9999;
    font-size: 16px;
    color: var(--color3);
}

.modal-dialog {
    /* margin: 80px 10px 10px; */
}

.modal-backdrop.in {
    z-index: 0;
}

.modal-open .modal {
    z-index: 99997;
    background: rgba(27, 27, 27, 0.8);
}

.modal-content .btn-close {
    border: 0;
    background: none;
}

.modal-content .btn-close i.fa {
    color: var(--color2) !important;
}

.modal-content .submit-review {
}

.modal-content .email-block {
    color: #A2A2A2;
}

.modal-content label.control-label {
    display: none;
    padding-top: 0 !important;
}

.modal-content label.control-label.label-note,
.modal-content label.control-label.label-photo {
    display: block;
    padding-top: 14px !important;
    color: var(--color4);
}

#add-review {
    text-align: center;
}

#add-review .form-group {
    text-align: left;
}

#add-review input[type="file"] {
    display: block;
    width: 100%;
    height: 50px;
    background-color: #000;
    border: 1px solid #fff;
}

#add-review #stars-existing {
    margin: 0 auto 10px;
    display: block;
    text-align: left;
    padding-top: 15px;
}

#add-review .form-group #captcha {
    height: 46px !important;
}

#add-review .submit-review {
    margin: 15px auto;
}

#add-review .submit-review {
    /* left: -20px; */
    position: relative;
}

#add-review .body-review {
    height: 100px;
}

#add-review .form-group.form-group-1 .col-md-10,
#add-review .form-group.form-group-2 .col-md-10,
#add-review .form-group.form-group-4 .col-md-10 {
    width: 100%;
}
/***************** Actualites***************************/

.actualites,
.block .actualites article {
    display: table;
    width: 100%;
    position: relative;
    z-index: 8000;
    padding: 0em 0%;
}

.actualites:nth-child(even+1) {
    direction: rtl
}

.actualites .cell.photo {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    background-position: center center;
    position: relative;
}

.actualites .cell.photo.cover img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%;
}

.actualites .cell.photo:hover {
    opacity: 0.95;
    filter: alpha(opacity=95);
}

.actualites .cell.texte {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    border-bottom: 2px solid #e6e6e6;
}

.actualites:last-child .cell.texte {
    border-bottom: none;
}
   .titre-secondaire a {
    text-decoration: none;
    line-height: 1.4;
    color: var(--color4);
    }
.actualites .cell.texte .contenu {
    padding: 40px 10%;
    text-align: justify;
    direction: ltr
}

.actualites .cell.texte .contenu ul {
    padding: 0;
    margin: 0;
}

.actualites .cell.texte .contenu ul li {
    padding: 5px 0 5px 20px;
    background: url(../images/puce.png) no-repeat 0 9px;
}

.actualites .cell.texte .contenu ul li .bouton-principal {
    display: block;
}

.actualites a.bouton-principal,
.news a.bouton-principal {
    min-width: 190px;
    margin: 30px 0 0;
    padding: 13px 20px 13px 20px;
}

.actualites a.bouton-principal:hover, .news a.bouton-principal:hover {
    color: var(--color0) !important;
}

.actualites .date_post,
.news .date-article {
        text-align: center;
        color: var(--color0);
        font-weight: 800;
        font-size: 14px;
        font-size: clamp(12px, .5vw, 14px);
        line-height: 18px;
        text-transform: uppercase;
        display: block;
        background-color: var(--color2);
        position: absolute;
        left: 0;
        top: 0;
        padding: 7% 4% 4%;
        z-index: 50;
        margin: 0;
        border-radius: var(--border-radius) 0 0;
}
.actualites .date_post span,.news .date_post span {
    display: block;
    line-height: 13px;
    min-width: 84px
}

.actualites .date_post .s1,.news .date_post .s1 {
    font-size: 50px;
    line-height: 35px;
    padding-bottom: 5px;
    font-size: clamp(40px,2vw,50px)
}

.news .ligne-actus .date-article {
    margin-top: 18px;
    margin-bottom: 0px;
}

.news .ligne-actus .contenu-article {
    margin-top: 0;
}

.news .contenu-article {
    margin-top: 21px;
}

.news hr {
    width: 50%;
}

.date-article-time {
    display: inline-block;
    padding-top: 13px;
}

.actualites.bg-optionnel .cell.texte {
    border-top: 1px solid #20274f;
    border-bottom: 1px solid #20274f;
}
.head-btn>a:hover,
.head-btn>p:hover {
    background: #4169E1;
    border-color: #4169E1;
    transition: .3s;
    color: var(--color0)
}

.owl-theme .owl-nav [class*=owl-] {
    font-size: 34px!important
}

.owl-theme .owl-nav [class*=owl-]:hover {
    background: 0 0;
    color: initial!important
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: #2196F3 !important;
}

div.blazy.b-error {
    background-image: url(../images/noImage.jpg)
}

.news .item {
    border-color: var(--color0)
}

.NosPlanDAcces02 h3.h {
    text-transform: uppercase
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font_family_3);
    line-height: 1.5;
    color: var(--color4)
}

.h1,
.hicon,
h1 {
    color: #81C3D7;
    font-size: 40px;
    line-height: 1;
    font-family: var(--font_family_3);
    text-align: center;
    text-transform: uppercase;
    position: relative;
    display: table;
    margin: auto;
    padding-bottom: 14px;
    margin-bottom: 30px;
    font-weight: 700;
    letter-spacing: 1px
}

.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(--color2)
}

.text-GMB {
    padding: 15px 0
}

.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
}

.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
}

.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,
.encart:focus:after,
.encart:hover,
.encart:hover:after {
    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;
    -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
}

.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.section .group-mobile .group {
    width: 100%;
    margin-bottom: 0
}

.carte.section .group-mobile .group .titreetdescription {
    padding: 10px;
    background-color: var(--color3);
    color: var(--color0)!important
}

.carte.section .group-mobile .group .titreetdescription * {
    color: var(--color4)!important;
    font-family: var(--font_family_3)
}

.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;
    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: 0 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: 2em 8%;
    background: var(--color0);
    position: relative;
    z-index: 1
}

.NosPlanDAcces {
    position: relative;
    padding: 0 0;
    width: 100%;
    height: 66vh
}

.plan-d-acces {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%
}

.NosPlanDAcces02 {
    float: right;
    padding: 10% 10% 5%;
    background: #fff;
    position: relative;
    z-index: 1;
    box-shadow: 1px 1px 40px #00000012
}

.NosPlanDAcces01 {
    float: left;
    position: relative;
    z-index: 1
}

.NosPlanDAcces01 iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    border: none;
    left: 0;
    margin-left: 0;
    z-index: 1
}

footer .horaire-mention {
    text-align: left;
}

footer .horaires .horaire-table {
    text-align: left;
}

.horaire-table tr td {
    font-size: 16px;
    letter-spacing: 1px
}

.horaires {
    text-align: center;
    justify-content: center;
    align-items: center;
}

.NosPlanDAcces.NosPlanDAcces02 hr {
    margin: 19px 0;
    background: #d1baae8c
}

.NosPlanDAcces02 p {
    font-size: 16px;
    color: var(--color4);
    margin-bottom: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.NosPlanDAcces02 .h.hicon {
    font-size: 18px;
    color: var(--color4);
    margin-bottom: 10px;
    font-weight: 900;
    text-transform: uppercase;
    text-align: center;
    display: block;
    letter-spacing: 1px;
    font-family: var(--font_family_3)
}

.NosPlanDAcces02 i {
    color: var(--color2);
    padding-right: 10px;
    font-size: 15px;
    position: relative;
}

.NosPlanDAcces02 .h.hicon:before {
    display: none
}

.NosPlanDAcces.NosPlanDAcces02 .fas {
    display: block;
    font-size: 15px;
    float: left;
    color: var(--color2);
    position: relative;
}

.NosPlanDAcces.NosPlanDAcces02 .fas.fa-clock {
    float: none;
    text-align: center;
    padding-bottom: 15px;
}

.NosPlanDAcces.NosPlanDAcces02 .fas.fa-map-marker-alt {
    top: 5px;
}

.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 {
    position: relative;
    padding: 0 10% 0;
    background: url(../images/bg-atout.jpg);
    background-position: center;
    background-attachment: fixed;
    background-color: #000000ad;
    background-blend-mode: soft-light
}

.ReservationBg .h,
.datepicker-container .h {
    padding-bottom: 15px;
    color: #81C3D7;
    line-height: 1;
    font-family: var(--font_family_3)
}

.ReservationBg .h:before {
    background: #81C3D7;
}

.datePickerZone .datepicker table tr th {
    color: var(--color5)
}

.datePickerZone .datepicker table tr td.today.day {
    color: var(--color5)!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(--color0);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 10px
}

.datepicker-container,
.reserv-container {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 30px
}

.reserv-container {
    z-index: 1;
    padding: 5% 10% 5%
}

.datepicker-container h3,
.reserv-container h3 {
    margin-top: 0
}

.ReservationText {
    text-align: center;
    width: 100%;
    padding: 0 5% 0 0;
    position: relative;
    color: var(--color0)
}

.ReservationText .h {
    font-size: 18px;
    color: var(--color3);
    text-transform: uppercase
}

.ReservationText p {
    text-align: center;
    width: 100%;
    padding: 0 70px;
    line-height: 2;
    font-size: 14px;
    color: var(--color4);
    margin-bottom: 50px
}

#index .ReservationText p {
    font-size: 18px;
    margin: 0;
    padding: 0;
    color: var(--color0);
    letter-spacing: 1px
}

.body-contact-100 .ReservationBg {
    position: relative;
    padding: 0 0 0
}

.theReservationText {
    position: relative;
    width: auto;
    height: auto;
    z-index: 0;
    background: var(--color3);
    padding: 70px
}

.ReservationBg .theReservationText .h {
    text-align: center;
    font-size: 24px;
    color: var(--color2);
    border: none;
    text-transform: uppercase;
    line-height: 1.5
}

.theReservationText p {
    color: var(--color2);
    font-size: 16px
}

.theReservationText ol {
    padding-left: 10px;
    color: var(--color2);
    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: var(--color0);
    border-color: var(--color0)
}

.datePickerZone .datepicker table tr td.disabled,
.datePickerZone .datepicker table tr td.disabled:hover {
    color: var(--color5)!important;
    cursor: no-drop;
    opacity: .8
}

.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)
}

.datePickerZone .datepicker table tr td.old {
    color: var(--color2);
    opacity: .6
}

.datePickerZone .datepicker table tr td.new.day {
    color: var(--color2);
    opacity: .6
}

.datePickerZone .datepicker table tr td.day:hover:before,
.datePickerZone .datepicker table tr td.focused:before {
    background: var(--color5)
}

.datePickerZone .datepicker .datepicker-switch,
.datePickerZone .datepicker .next,
.datePickerZone .datepicker .prev,
.datePickerZone .datepicker tfoot tr th {
    color: var(--color5)
}

.datePickerZone .datepicker table tr td.active.active:before {
    background: var(--color5)
}

.datePickerZone {
    padding: 20px 0
}

.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: 0;
    padding: 30px;
    background: var(--color0);
}

.modal-content .h {
    margin-bottom: 50px;
    font-size: 25px;
    color: var(--color4);
    text-transform: none;
    text-align: center
}

.modal-content .h:after {
    display: none
}

.modal-content .form-control {
    height: 50px;
    padding: 0 0 0 12px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #00000033;
    background-color: transparent;
    font-size: 14px;
    line-height: normal
}

.modal-content .form-group:after {
    clear: both;
    display: table;
    content: " "
}

.modal-content .form-control,
.modal-content input[name=captcha]+a {
    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 #00000033;
    resize: vertical;
    height: 150px!important
}

.modal-content input[type=number] {
    padding-right: 0
}

.modal-content label {
    padding-left: 0;
    font-size: 15px;
    padding-top: 13px;
    font-weight: 400;
    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: 0;
    font-size: 14px;
    text-decoration: none;
    transition: all .4s 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: 2em 8%;
    background-color: var(--color0);
}

.block #newsletter_form input[type=submit] {
    padding: 10px 13px 8px;
    font-size: 17px
}

.actuAndNewsletter-container {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 4% 40px;
    display: flex;
    align-content: center;
    justify-content: space-evenly;
    align-items: start;
    z-index: 1;
    background-color: var(--color0);
}

.modal-header {
    padding: 0;
    border-bottom: 0 solid var(--color1);
    min-height: 16.42857143px
}

.modal-header .btn {
    margin-top: 0;
    background-color: transparent;
    font-size: 25px;
    color: var(--color4);
    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
}

#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 .checkbox,
.form-horizontal .radio {
    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
}

.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%
}

.hvr-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    background-color: transparent;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.services .hvr-shutter-out-horizontal:hover:before {
    background: var(--color3)
}

.hvr-shutter-out-horizontal:active:before,
.hvr-shutter-out-horizontal:focus:before,
.hvr-shutter-out-horizontal:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.btn-service a:before {
    background: 0 0
}

.btn-service a:hover:before {
    background: var(--color3)
}

a.bouton-principal,
button.bouton-principal {
    text-align: center;
    color: var(--color2);
    border: 1px solid var(--color2);
    text-decoration: none;
    padding: 10px 20px;
    font-size: 18px;
    background: 0 0;
    text-transform: inherit;
    transition: all .3s linear;
    letter-spacing: 1px
}

a.bouton-principal:hover,
button.bouton-principal:hover {
    border-color: var(--color2);
    background: var(--color2);
    color: var(--color0)
}

.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: center;
    margin-bottom: 15px;
    font-size: 35px
}

.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: center;
    padding: 5vw 5vw
}

.isServiceList #main {
    width: 100%
}

.bodyContent p {
    margin: 30px 0
}

.body-service-list .main_bg {
    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)
}

.nosServicesBg .bx-viewport li,
.services .bx-viewport li {
    height: 100%;
    list-style: none
}

.mainSectionSliderBg .bx-pager,
.services .bx-pager {
    z-index: 99
}

#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: 0 0;
    border: .5px solid var(--color5);
    border-left: transparent
}

span.input-group-addon {
    background: 0 0;
    border: .5px solid var(--color5)
}

.input-group.bootstrap-timepicker.timepicker input,
.input-group.date.datepicker2 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
}

.remonter {
    position: fixed;
    z-index: 9999;
    display: none;
    bottom: 30px;
    right: 30px;
    width: 60px
}

.remonter button {
    display: block;
    padding: 8px;
    text-align: center;
    background: 0 0;
    border-radius: 3px;
    border: none
}

.remonter button:hover {
    opacity: .8
}

.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
}

.contact .form-actions {
    text-align: left
}

.g-recaptcha {
    display: inline-block;
    margin: 0 auto
}

.contact .form-group .btn-primary {
    float: right;
    width: auto;
    min-width: 140px;
    vertical-align: top;
    display: table-cell;
    line-height: 0;
    font-weight: 400!important;
    color: var(--color2);
    margin-top: 0;
    height: 55px!important;
    background: 0 0;
    border-color: var(--color2);
    position: relative;
    top: -115px;
    font-style: normal;
    font-size: 20px;
    letter-spacing: 1px
}

.form-group .btn-primary:hover {
    background-color: var(--color2);
    border: 1px solid var(--color2);
    color: var(--color0)
}

@media (min-width:768px) {
    .modal-lg {
        width: 900px
    }
}

@media (min-width:1200px) {
    .modal-content label.visible {
        display: block
    }
}

@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 0
    }
    .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
    }
    .h1,
    .hicon,
    h1 {
        font-size: 25px
    }
    .LeRestaurantCarousselBg {
        background-image: none
    }
    .banner img {
        width: 100%;
        margin-left: 0
    }
}

.datePickerZone .datepicker table tr td.active.active:before,
.datePickerZone .datepicker table tr td.active.highlighted.active:before,
.datePickerZone .datepicker table tr td.active.highlighted:active:before,
.datePickerZone .datepicker table tr td.active:active:before,
.datePickerZone .datepicker table tr td.today.active.focus:before,
.datePickerZone .datepicker table tr td.today.active:focus:before,
.datePickerZone .datepicker table tr td.today.active:hover:before,
.datePickerZone .datepicker table tr td.today:active.focus:before,
.datePickerZone .datepicker table tr td.today:active:focus:before,
.datePickerZone .datepicker table tr td.today:active:hover:before,
.open>.dropdown-toggle.datepicker table tr td.active.highlighted:before,
.open>.dropdown-toggle.datepicker table tr td.active:before,
.open>.dropdown-toggle.datepicker table tr td.today.focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:focus:before,
.open>.dropdown-toggle.datepicker table tr td.today:hover:before {
    background: var(--color0);
    color: var(--color3);
    border-color: var(--color0)
}

@media (max-width:1440px) {
    body.body-service-list.body-service-list-0 #main {
        padding: 20px;
    }
    .head-btn {
        justify-content: center;
    }
    .body-service-list .services .tableGrid.row {
        height: 400px;
    }
    .NosPlanDAccesBg {
        padding: 2rem 5%;
    }
    .footer1_bg {
        padding: 30px 5%;
    }
    .ReservationBg {
        padding: 0 0!important
    }
    .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 h1 {
        font-size: 6rem;
    }
    .header01bg {
        padding: 0 2%
    }
    .slide-parallax {
        right: 3%;
        width: 40%
    }
}

@media (max-width:1300px) {
    .logos {
        padding: 2% 10%
    }
    .NosPlanDAcces {
        height: 72vh
    }
    .tel-tracker {
        display: none
    }
    .nav-logo {
        width: 15%;
        padding-left: 8px
    }
    .nav-liste {
        width: 85%;
        justify-content: flex-end
    }
}

@media (max-width:1023px) {
    .salon-block:after {
        width: 63px
    }
    .salon-block:before {
        width: 100px
    }
    .container-fluid.ReservationBg:before {
        width: 150px
    }
    .container-fluid.ReservationBg:after {
        width: 100px
    }
    .logos {
        grid-template-columns: 1fr 1fr
    }
    .actuAndNewsletterBg {
        padding: 60px 0
    }
    .header {
        height: 40vh
    }
    .flex-head-img {
        display: flex;
        justify-content: center;
        height: 100%!important;
        width: 50%
    }
    .NosPlanDAcces02 .h {
        margin-bottom: 10px
    }
    .body-page .header {
        height: 50vh
    }
    .body-page .bannier {
        height: 100%;
        display: flex;
        flex-direction: row-reverse
    }
    .slide-parallax {
        position: static;
        width: 60%;
        height: 100%;
        border: 0
    }
    .slogan {
        width: 80%;
        padding: 15px 2%;
        top: 50%;
        transform: translate(-50%, -50%)
    }
    .body-page-1 .banniere .owl-nav {
        top: 43%;
    }
    .slogan h1 {
        text-align: left;
        margin: 0 0!important;
        font-size: 40px
    }
    .body-page-1 #main {
        padding: 0;
        margin: 0
    }
    .sous-titre {
        padding: 10px 0 10px;
        text-align: left;
        margin: 0
    }
    .head-btn>a,
    .head-btn>p {
        width: fit-content;
        padding: 10px;
        font-size: 16px!important
    }
    .body-page-1 .section,
    .body-pageseo .section {
        padding: 60px 5vw!important
    }
    .flex-head {
        flex-direction: column-reverse;
        padding: 0 10%
    }
    .flex-head-txt {
        width: 100%;
        margin-bottom: 20px
    }
    .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: 40px 5px
    }
    .datepicker-container {
        padding: 0
    }
}

@media (max-width:991px) {
    .col-md-4.col-sm-4.col-xs-6.bloc-img .propor,.col-md-4.col-sm-4.col-xs-6.bloc-img{height: auto;}
     .flex-head {padding: 0%;}
     .body-page-1 #main,main{padding-top: 0vh;}
    .banniere .owl-carousel .owl-stage-outer,
    .body-page-1 .banniere,
    .body-page-1 .banniere .owl-carousel.owl-theme.owl-loaded.owl-drag {
        height: 50vh;
    }
    .body-service-list .services .tableGrid.row {
        height: 250px;
    }
    .footer-coordonnees {
        display: flex;
        flex-direction: column;
        grid-gap: 50px
    }
    .body-service-list .services .tableGrid.row .h {
        font-size: 25px
    }
    .flex-head-img {
        display: none
    }
    .NosPlanDAcces02 {
        height: auto;
        padding: 75px 20px 10px
    }
    .sous-titre {
        font-size: 27px
    }
    .flex-seoContain {
        flex-wrap: wrap
    }
    .salon-content {
        padding: 17px 2vh!important
    }
    .slide-parallax img {
        border-radius: 0;
        padding: 5%
    }
    .salon-content span.subtitle {
        padding: 0 0!important;
        display: block;
        line-height: 24px!important;
        font-size: 15px!important;
        text-transform: none
    }
    .body-page .bannier:before {
        width: 100px;
        height: 100px
    }
    .flex-seoContain .seo-content {
        width: 100%;
        background: 0 0
    }
    .flex-seoContain .seo-form {
        width: 100%
    }
    .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: 41vh;
        margin-bottom: 15px
    }
    .note-avis {
        flex-direction: column
    }
    .contact .form-group .btn-primary,
    .contact .formulaire .form-group input.btn-primary {
        width: auto;
        margin-top: 8px;
        float: right
    }
    #contact-form,
    .body-pageseo .contact,
    .form {
        padding: 0 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 .blazy,
    .nosServicesBg .mainSectionSlider .show,
    .services .mainSectionSlider .blazy,
    .services .mainSectionSlider .show {
        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
    }
    .mainSectionSliderBg .bx-pager,
    .services .bx-pager {
        z-index: 9999
    }
    .modal-content label {
        padding-top: 10px!important
    }
    .menu_referencement h2 {
        text-align: center;
        font-size: 20px
    }
    .h,
    .h1,
    .hicon,
    h1 {
        font-size: 35px
    }
    .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 0
    }
    .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%;
        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:767px) {
    .swiper-button-prev, .swiper-button-next{font-size: 25px;}
    .copyright-footer{text-align: center;}
    .block .actualites article{display: grid}
    .bloc-GMB .contain-GMB .bouton-principal {
        padding: 15px 5px
    }
    .bannier:after {
        display: none
    }
    .btn-partage {
        text-align: center!important
    }
    #main {
        padding: 60px 4px
    }
    .services-home {
        padding: 60px 0 20px!important
    }
    .head-btn {
        flex-direction: row;
        justify-content: center
    }
    .head-btn .callTracker .t_phone:hover {
        color: var(--color0);
    }
    .flex-head-img {
        width: 100%;
        height: 100%!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,
    .nav-pills li+li {
        margin: 0
    }
    .banner img {
        width: 100%;
        margin-left: 0
    }
    .NewsletterBg {
        padding: 50px 20px 36px
    }
    .beforeFooter .storeLinks {
        padding: 15px 0
    }
    .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: 0
    }
    .news .item .h {
        margin: 0 0 20px 0
    }
    .slide a img {
        opacity: 0
    }
    .nosRealisations .bx-controls.bx-has-controls-direction {
        bottom: 0
    }
    .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 .form-control,
    .modal-content input[name=captcha]+a {
        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 .item small,
    .carte .item-title,
    .carte .labels .label,
    .carte .yesLabels .price {
        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: 100%;
        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,
    .tableGrid>.row {
        display: block;
        margin: 0;
        padding: 0;
        position: relative;
        height: 100%
    }
    .tableGrid .table-row {
        height: 100%
    }
    .tableGrid .table-row>[class*=col],
    .tableGrid [class*=col],
    .tableGrid>.row>.table-row>[class*=col],
    .tableGrid>.row>[class*=col] {
        display: block;
        vertical-align: top;
        float: left;
        height: 100%;
        position: relative
    }
    .noPaddingCells .table-row>[class*=col],
    .noPaddingCells [class*=col],
    .noPaddingCells>.row>.table-row>[class*=col] {
        padding: 0
    }
    .tableGrid.nopadding .table-row>[class*=col],
    .tableGrid.nopadding [class*=col],
    .tableGrid.nopadding>.row>.table-row>[class*=col],
    .tableGrid.nopadding>.row>[class*=col] {
        padding: 0
    }
    .tableGrid.va-middle .table-row>[class*=col],
    .tableGrid.va-middle [class*=col],
    .tableGrid.va-middle>.row>.table-row>[class*=col],
    .tableGrid.va-middle>.row>[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 .blazy,
    .nosServicesBg .mainSectionSlider .show,
    .services .mainSectionSlider .blazy,
    .services .mainSectionSlider .show {
        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: 240px!important;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none
    }
    .nosServicesBg .bx-viewport li,
    .services .bx-viewport li {
        height: 100%;
        list-style: none
    }
    .mainSectionSliderBg .bx-pager,
    .services .bx-pager {
        z-index: 9999
    }
    .nosServicesBg .bx-controls-auto,
    .nosServicesBg .bx-pager {
        bottom: 25px
    }
    .linkList li a {
        min-width: 100%
    }
    .mainSectionSlider img {
        width: 100%
    }
    .headerTel {
        font-size: 30px
    }
    .h,
    .h1,
    .hicon,
    h1 {
        font-size: 18px!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
    }
}

@media (max-width:480px) {
    .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: 13px 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 .item small,
    .carte .item-title,
    .carte .labels .label,
    .carte .yesLabels .price {
        font-size: 12px
    }
    .datepicker table tr td,
    .datepicker table tr th {
        padding: 8px 0;
        font-size: 14px
    }
    .form-control,
    .form-group .btn-primary,
    input[name=captcha],
    input[name=captcha]+a {
        height: 36px!important
    }
    .datepicker table tr th.datepicker-switch {
        font-size: 16px
    }
    #index .ReservationText p {
        padding: 0 0;
        line-height: 1.7;
        text-align: justify;
        font-size: 20px
    }
    .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: 18px
    }
    .beforeFooter ul li {
        font-size: 16px;
        line-height: 2
    }
    .bx-controls-auto,
    .bx-pager {
        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 40px;
        background-color: var(--color1)
    }
    .headerTel {
        font-size: 30px
    }
    .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
}

.btn-liens-rs {
    text-align: right;
    padding: 0rem 0 0;
    display: flex;
    justify-content: flex-end;
    position: relative;
    gap: 0.4vw;
}

.btn-liens-rs .btnrs {
    width: 3rem;
    height: 3rem;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: transform 0.4s ease, background-color 0.4s ease;
}

.btn-liens-rs .btnrs svg {
    fill: var(--color2);
    width: 3rem;
    height: 3rem;
    transition: all .4s ease;
}

.fixed .btn-liens-rs .btnrs svg {
}

.btn-liens-rs .btnrs:hover svg {opacity: .5;}

.hidden {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.btn-view-more {
    display: flex;
    align-items: center;
    margin-top: 0;
    cursor: pointer;
    font-size: 16px;
}

.plus-icon {
    font-size: 20px;
    margin-right: 8px;
}

.extra-socials-container {
    position: absolute;
    display: none;
    transition: all 0.4s ease;
}

.extra-socials-container.show {
    display: flex !important;
    flex-direction: column;
    width: 3.3rem;
    top: 72px;
    right: 0;
    gap: 0.4vw;
}

.view-more-text {
    font-size: 16px;
    font-weight: bold;
    color: var(--color2);
    background: var(--color0);
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.4s ease, background-color 0.4s ease;
}

.view-more-text:hover {
    transform: rotate(360deg);
    background-color: var(--color1);
}

.btn-liens-rs .btnrs.extra-social {
    display: none;
}

.btn-liens-rs .btnrs.extra-social.show {
    display: inline-flex !important;
    animation: fadeIn 0.3s ease;
    opacity: 1;
    margin: 0 0 6px;
}

.btn-liens-rs .btnrs svg.picto.darkpicto {
    filter: drop-shadow(0px 0px 4px #00000082);
    transition: all .4s ease;
}

.btn-liens-rs.btn-rs-center {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    padding: 1vh 0;
    height: 100%;
}

.btn-liens-rs.btn-rs-center .btnrs svg {
}

.btn-liens-rs.btn-rs-center .btnrs:hover svg {
}
@media (max-width: 767px) {
    .actualites .cell.photo,.actualites .cell.texte{width: 100%;min-height: 45vh;}
    .btn-liens-rs.btn-rs-center {
        justify-content: center;
    }
}

@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 (min-width:767px) {
    .bootstrap-timepicker-widget.modal {
        width: 200px;
        margin-left: -100px
    }
}

@media (max-width:767px) {
    .bootstrap-timepicker {
        width: 100%
    }
    .bootstrap-timepicker .dropdown-menu {
        width: 100%
    }
}

@media (max-width:576px) {
    .body-page-1 .banniere .owl-nav {
        top: 70%;
    }
    .contact {
        margin-top: 0;
        padding: 0 2%
    }
    .body-page-1 .services ul.mainSectionSlider li {
        height: 280px
    }
    .swiper-button-next,
    .swiper-container-rtl .swiper-button-prev {
        right: 30px
    }
    .swiper-button-prev,
    .swiper-container-rtl .swiper-button-next {
        left: 30px
    }
    .atouts {
        padding: 10% 2% 2%
    }
    .reserv-container {
        padding: 10% 5%
    }
    .ReservationText .carteSeeMore {
        transform: translate(0)!important
    }
    .salon-block {
        padding: 5% 10px
    }
    .salon-content p {
        text-align: justify
    }
    .sous-titre {
        font-size: 32px;
        text-align: center
    }
    .flex-head-img:before {
        display: none
    }
    .slide-parallax {
        display: none
    }
    .logos {
        grid-template-columns: 1fr
    }
    .callTracker .t_phone:hover {
        color: var(--color4)
    }
    .flex-head.galerie {
        padding: 12vh 5%;
    }
    .btn-primary {
        min-width: 130px;
        font-size: 20px
    }
    .NosPlanDAcces02::before {
        display: none
    }
    .flex-horaires .horaires i {
        font-size: 20px
    }
    .contact .form-group .btn-primary,
    .contact .formulaire .form-group input.btn-primary {
        margin-top: 90px
    }
    .contact .h span {
        font-size: 30px
    }
    #main {
        padding: 0
    }
    .slogan {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }
    .slogan h1 {
        text-align: center
    }
    .head-btn>a,
    .head-btn>p {
        width: fit-content;
        padding: 10px 20px;
        margin: 5px;
    }
    .flex-head-txt {
        padding: 0;
    }
    .one-service.item {
        height: 300px;
    }
    .body-service-list .services .tableGrid.row {
        height: 100%;
    }
    .header {
        height: 30vh;
    }
    .banner h1:not(.body-page-1 .banner h1) {
        transform: translateY(-50%);
    }
}

@media (max-width: 375px) {
    .services .mainSectionSlider {
        height: 202px!important;
    }
}

@media (max-width: 320px) {
    .services .mainSectionSlider {
        height: 170px!important;
    }
    .service-coor p {
        text-align: center;
        width: 100%;
    }
    .service-coor {
        height: 60%;
        grid-gap: 20px;
    }
}

form em {
    font-size: inherit
}

@media (min-width: 2000px){
    .body-service-list .services .tableGrid.row .h{font-size: 50px;}
    .h1, .hicon, h1{font-size: 55px;}
    .service-coor p{font-size: 25px;}
    .NosPlanDAcces02 .h.hicon{font-size: 28px;}
    .swiper-button-prev, .swiper-button-next{font-size: 30px}
    .atout-item p{font-size: 30px}
    .tel-tracker i{font-size: 30px !important}
    .navbar-nav>li>a{font-size: 22px}
                           .atout-item img{width: 100px;height: auto}
    .navbar-brand img{width: 200px;top:0;position: relative;}
                           .header01bg{height: 150px}
}