.css-from-less {
  display: none;
}
@-ms-viewport {
  width: auto !important;
}
html,
body {
  height: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  padding: 0px;
  margin: 0 auto;
  position: relative;
}
.d-block {
    display: block;
}
.d-inline-block {
    display: inline-block;
}
.clean-tag-a,
.clean-tag-a:focus,
.clean-tag-a:visited,
.clean-tag-a:active,
.clean-tag-a:hover {
    color: inherit;
    text-decoration: none;
    padding: 0px;
    margin: 0px;
}
.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.flex-direction-column-xs {
    flex-direction: column;
}
@media (min-width: 768px) {
    .flex-direction-column-xs {
        flex-direction: initial;
    }
}
.label-font-weight-normal {
    font-weight: 400;
}
.max-width-200 {
    max-width: 200px;
}
.max-width-330 {
    max-width: 330px;
}
.full-width-xs {
    width: 100%;
}
@media (min-width: 768px) {
    .full-width-xs {
        width: initial;
    }
}
.padding-left-30 {
    padding-left: 30px;
}
.padding-right-30 {
    padding-right: 30px;
}
.padding-left-50 {
    padding-left: 50px;
}
.padding-right-50 {
    padding-right: 50px;
}
.mr-5 {
    margin-right: 5px;
}
.ml-5 {
    margin-left: 5px;
}
.mb-15 {
    margin-bottom: 15px;
}
@media (min-width: 768px) {
    .mb-sm-0 {
        margin-bottom: 0 !important;
    }
}
.cursor-pointer {
    cursor: pointer;
}
.color-green {
    color: green;
}
.color-red {
    color: red;
}
.row {
    margin-left: 0px;
    margin-right: 0px;
}
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, 
.col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, 
.col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, 
.col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, 
.col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, 
.col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, 
.col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}
form [class*='col-'] {
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* Largeur de la ligne : plein écran ou limitée à 80% / 996px */
.line.limited {
  width: 80%;
  max-width: 996px;
  margin: 0 auto;
}
.line.fullscreen >.row {
  width: 80%;
  max-width: 996px;
  margin: 0 auto;
}
.line.fullscreen.rowfullscreen >.row {
  width: 100%;
  max-width: none;
}
@media (max-width: 768px) {
  .line.limited {
    width: 100%;
  }
  .line.fullscreen >.row {
    width: 100%;
  }
}
.line.rowfullscreen div[class*="col"]:first-child {
  padding-left: 0;
}
.line.rowfullscreen div[class*="col"]:last-child {
  padding-right: 0;
}
.rowfullscreen .block {
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}

/* Menu du site */
#section_header .navbar {
  min-height: 0;
  margin: 0 auto;
}
#section_header .sizeBoxed {
  width: 80%;
  max-width: 996px;
}
#section_header .sizeBoxed .prevMenuContent {
  width: 100%;
}
#section_header .sizeFullSize .prevMenuContent {
  left: 10%;
}
@media (max-width: 768px) {
  #section_header  .col-md-4 p {
    margin-left: auto;
    margin-right: auto;
  }
}


.navbar {
  border-radius: 0;
  border:none;
}
.container-fluid {
  margin: 0px;
}
.navbar-collapse {
  padding: 0;
}
.navbar-nav >li >a {
  padding: 5px;
}
.navbar-nav {
  margin: 0px;
}
.navbar-nav > li.dropdown > ul.dropdown-menu > li {
    margin-left: 0px !important;
}
.navbar-nav > li.dropdown > ul.dropdown-menu > li > a {
    font-size: 14px !important;
}
@media (max-width: 991px) {
  .navbar-header {
    float: none;
  }
  .navbar-toggle {
    display: block;
  }
  .navbar-collapse {
    border-top: none;
  }
  .navbar-collapse.collapse {
    display: none !important;
  }
  .navbar-collapse.in {
    display: block !important;
  }
  .navbar-nav {
    float: none !important;
  }
  .navbar-nav >li {
    float: none;
  }
  .navbar-nav >li >a {
    padding: 5px;
  }
  .navbar-text {
    float: none;
    margin: 15px 0;
  }
  .collapsing {
    overflow: hidden !important;
  }
  .prevHeader .block {
      height: auto !important;
  }
}
@media (min-width: 991px) {
  .navbar-nav >li {
    position: relative;
    display: inline-block;
    float: none;
  }
  .navbar-nav >li:first-child {
    margin-left: 0;
  }
  .subhorizontal {
    position: relative;
  }
  .subhorizontal .dropdown-menu {
    left: 0px;
    right: 0px;
  }
  .subhorizontal .dropdown-menu li {
    display: inline-block;
  }
  .subhorizontal >li {
    position: initial;
  }
  .container-fluid {
    padding: 0px;
  }
  .block-menu {
    position: relative;
  }
  .prevMenu .nav.navbar-nav {
    float: none;
    vertical-align: bottom;
  }
  .prevMenu >ul {
    margin: 5px;
    padding-top: 5px;
  }
  .prevMenu.positionTop {
    top: 0;
  }
  .prevMenu.positionBottom {
    bottom: 0;
  }
  .prevMenu.positionLeft {
    right: auto;
  }
  .prevMenu.positionLeft >ul {
    text-align: left;
  }
  .prevMenu.positionRight {
    left: auto;
  }
  .prevMenu.positionRight >ul {
    text-align: right;
  }
}
#navbar .dropdown-menu {
  padding: 0px;
  background-color: #fff;
  margin-top: -5px;
}

.navbar-nav > li > .dropdown-menu {
    border: none;
}
.navbar-nav > li > .dropdown-menu li > a {
    border-top-width: 0;
    border-bottom-width: 0;
}
.navbar-nav > li > .dropdown-menu li:last-child > a {
    border-bottom-width: initial;
}
.navbar-header {
    float: none !important;
  }
.navbar-toggle {
  background-color: #fff;
  margin-right: 0;
  border: 1px solid #424242;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
  -ms-border-radius: 1px;
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  -o-border-radius: 1px;
}
.icon-bar {
  background-color: #424242;
}

.nav.navbar-nav.vertical.pull-right .dropdown-menu {
    left: auto;
    right: 0;
}
/* retire du css bootstrap */
.nav.navbar-nav > li {
    margin-left: 5px;
    margin-right: 5px;
}
.btn.active, .btn:active {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.open > .dropdown-menu {
    min-width: 100%;
    padding: 0;
    background: none;
}

#main_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
#section_content {
    flex-grow: 1;
}
#section_footer {
    margin-top: auto;
}

.prevBtn {
  padding: 0px 8px !important;
  line-height: 32px !important;
  vertical-align: baseline;
  display: inline-block;
  margin-bottom: 5px;
}
.dropdown-menu .prevBtn {
  margin-bottom: 0px;
}


body div.nomargin {
  padding: 0;
  border-spacing: 0px !important;
}
body div.nomargin .block-title {
  margin-top: 0px;
}
div.verticalalign {
  display: table;
  table-layout: fixed;
}
@media (max-width: 991px) {
    div.verticalalign + div[data-type="7"] {
      border-spacing: 0px 5px;
    }
    div:not(.verticalalign) div[data-type="7"] .navbar-collapse.collapse.in {
        padding-top: 10px;
    }
    .navbar-collapse ul > li {
        margin-left: 0px;
    }
}
div.verticalalign .block,
div.verticalalign .blockHeader,
div.verticalalign .blockFooter {
  display: table-cell;
  float: none;
  width: 100%;
}
div.verticalalign-top .block,
div.verticalalign-top .blockHeader,
div.verticalalign-top .blockFooter {
  vertical-align: top;
}
div.verticalalign-middle .block,
div.verticalalign-middle .blockHeader,
div.verticalalign-middle .blockFooter {
  vertical-align: middle;
}
div.verticalalign-bottom .block,
div.verticalalign-bottom .blockHeader,
div.verticalalign-bottom .blockFooter {
  vertical-align: bottom;
}
.block-title {
  padding: 5px 0px;
  margin-top: 0px;
  margin-bottom: 0px;
}
.block-title+*,
.block-title+.media+* {
  margin-top: 15px !important;
}
.block {
  /*float: left;
  width: 100%;*/
  padding: 5px;
  margin-top: 5px;
  margin-bottom: 5px;
}
.block img {
  max-width: 100%;
}
.block p:last-child {
  margin-bottom: 0;
}

#login_topdiv {
  z-index: 1000;
  position: absolute;
  top: 0px;
  right: 5px;
  background: #BBB;
  border: 1px inset #666;
  border-top: none;
  padding: 5px;
  filter: alpha(opacity=50);
  opacity: 0.5;
  border-radius: 0px 0px 6px 6px;
  -ms-border-radius: 0px 0px 6px 6px;
  -webkit-border-radius: 0px 0px 6px 6px;
  -moz-border-radius: 0px 0px 6px 6px;
  -o-border-radius: 0px 0px 6px 6px;
}
#login_topdiv:hover {
  cursor: pointer;
  filter: alpha(opacity=100);
  opacity: 1;
}
#login_topdiv.dropdown {
  padding: 0;
}
.modal-body {
  color: #000 !important;
}
#login_modal label:not(.control-label) {
  margin-bottom: 2px;
  margin-top: 5px;
}
#login_modal .form-group {
  margin-bottom: 10px;
}
#login_modal input {
  padding: 6px;
}
.blockHeader {
  float: left;
  width: 100%;
}
.footer {
  margin: 0 auto;
  padding: 0;
  position: relative;
  bottom: 0;
  width: 100%;
}
.footer.sizeBoxed {
  width: 80%;
  max-width: 996px;
}
.footer.sizeBoxed .footerContent {
  width: 100%;
}
.footer.sizeFullSize .footerContent {
  left: 10%;
}
.footerContent {
  width: 80%;
  max-width: 996px;
  margin: 0 auto;
}
.footerContent a {
  text-decoration: none;
}
.footerContent a:hover {
  text-decoration: underline;
}
.mentions {
  float: right;
  text-align: right;
}
.socialLinks {
  font-size: 32px;
  line-height: 32px;
}
.socialLinks a {
  margin-right: 10px;
}
.positionRight {
  float: right;
}
.positionTop {
  margin: 0 auto;
  clear: both;
  width: 100%;
}
.media {
  margin-top: 0px;
}
.media img {
  max-width: 100%;
}

.positionCenter {
  text-align: center;
}
.positionCenter>ul {
  display: inline-block;
}
.box-header:before,
.box-body:before,
.box-footer:before,
.box-header:after,
.box-body:after,
.box-footer:after {
  content: " ";
  display: table;
}
.box-header:after,
.box-body:after,
.box-footer:after {
  clear: both;
}
body:after,
.box-footer:after {
  content: " ";
  display: table;
}
.prevReadMore {
  clear: both;
  text-align: right;
}
.carousel-control .right,
.carousel-control .left {
  background: none;
}
.carousel-inner > .item > a {
  display: block;
  height: 100%;
}
.carousel-inner:not(.carousel-inner-pro-detail) > .item >img,
.carousel-inner:not(.carousel-inner-pro-detail) > .item >a > img {
  margin: auto;
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
.carousel-inner-pro-detail > .item >img,
.carousel-inner-pro-detail > .item >a > img {
  margin: auto;
  position: relative;
}
.carousel-indicators {
  bottom: 0px;
}
.carousel-indicators .active {
    width: initial;
    height: initial;
    /*margin: inherit;*/
    background-color: none;
}
.bloc_carousel_indicators {
  bottom: initial;
}
.map-container {
  min-height: 350px;
  height: 100%;
}
.horaires {
  margin: 10px auto 0px;
  border-collapse: collapse;
}
.horaires tr:first-child td {
  text-align: center;
  border-bottom-width: 1px;
  font-style: italic;
}
.horaires td {
  border-style: solid;
  border-width: 0px;
  padding: 1px 5px 0px;
}
.horaires tr.today {
  border-width: 1px;
  border-style: solid;
}
.block-contact {
  margin: 10px;
}
.block-contact label {
  font-weight: normal;
  margin-bottom: -3px;
}
.block-contact .form-group {
  margin-bottom: 5px;
}
.block-contact .btn {
  margin-top: 10px;
}
.block-gallery a div {
  width: 100%;
  padding-bottom: 75%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.ekko-lightbox.modal .modal-header {
  padding-top: 0px;
  padding-bottom: 0px;
  border-bottom: none;
}
.ekko-lightbox.modal .modal-header .close {
  margin-top: 5px;
}
.ekko-lightbox.modal .modal-header .modal-body {
  padding-top: 0px;
}
.cookieNotification {
  background-color: #AAA;
  border-bottom: 1px solid #b1b1b1;
  color: #000;
  font-family: 'Arial';
  font-size: 12px;
  text-align: center;
  padding: 3px 0px;
  line-height: 17px;
  bottom: 0;
  width: 100%;
  z-index: 10000;
  position: fixed;
}
.cookieNotification .closeNotification {
  display: block;
  position: absolute;
  top: 4px;
  right: 15px;
  width: 15px;
  height: 15px;
  z-index: 1200;
  font-size: 22px;
  cursor: pointer;
}
ul {
  list-style-position: inside;
}
.btn-file {
  position: relative;
  overflow: hidden;
}
.btn-file input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  outline: none;
  background: white;
  cursor: inherit;
  display: block;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.sitemapBloc a {
  text-decoration: none !important;
  border-bottom: 1px dashed;
}
.sitemapBloc a:hover {
  border-bottom: 1px solid;
}
.sitemapBloc section {
  padding: 10px 20px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #ddd;
}
.sitemapBloc section .col-sm-6 {
  border-left: 1px solid #ccc;
}
.sitemapBloc section .col-sm-4 {
  border-left: 1px solid #ccc;
}
.sitemapBloc .summary {
  font-size: 90%;
  text-align: justify;
  max-height: 100px;
  padding: 5px 10px;
  overflow: auto;
}
.sitemapBloc h2 {
  font-size: 130%;
  margin: 10px 0 5px;
}
.sitemapBloc .submenu h2 {
  font-size: 110%;
}
.sitemapBloc .catalog a {
  border-bottom: none;
}
.sitemapBloc .catalog a:hover {
  border-bottom: 1px solid;
}
div.carousel-caption {
  background-color: rgba(0,0,0,0.8);
  right: 0;
  left: 0;
  bottom: 0;
  padding: 10px;
}

/*a {
    color: inherit;
    text-decoration: inherit;
}
a:hover {
    color: inherit;
    text-decoration: inherit;
}
a:visited {
    color: inherit;
    text-decoration: inherit;
}*/

.cursor_pointer {
    cursor: pointer;
}

.mini-row {
    margin-left: -2px;
    margin-right: -2px;
}

.mini-col {
    padding-left: 2px !important;
    padding-right: 2px !important;
}

[id^='divthumbmode'] > .paginate_button > a {
    color: #999;
    background-color: #fff;
    border: none;
}

[id^='divthumbmode'] > .paginate_button:hover > a,
[id^='divthumbmode'] > .paginate_button.active > a {
    color: #333;
    background-color: #fff;
    border: none;
}

.btn-group.pagination.list_pagination > .btn.btn-group {
    background-color: #fff;
    color: #999;
}

.btn-group.pagination.list_pagination > .btn.btn-group {
    background-color: #fff;
    color: #999;
}

.btn-group.pagination.list_pagination > .btn.btn-group:hover,
.btn-group.pagination.list_pagination > .btn.btn-group.active {
    background-color: #337ab7;
    color: #fff;
}

.btn-group.pagination.list_pagination > .btn.btn-group.disabled:hover {
    background-color: #fff;
    color: #333;
}
.btn-group.pagination.list_pagination > .btn.btn-group.disabled {
    opacity: 0.8;
}

/************************ INPUT RECHERCHE *************************/
.input--with-icon {
    position: relative;
    width: 100%;
}
/* Insertion de la loupe(icon) dans le select */
.input--with-icon .fa-search {
    position: absolute;
    color:#555;
    padding-top: 10px;
    padding-left: 10px;
    z-index:1000;
}
/* Insertion de la loupe(icon) dans le select */
.input--with-icon-before {
    position: absolute;
    color:#555;
    top: 10px;
    left: 10px;
    z-index:1000;
    line-height: 1;
}
/* Insertion de la loupe(icon) dans le select */
.input--with-icon-after {
    position: absolute;
    color:#555;
    top: 10px;
    right: 10px;
    z-index:1000;
    line-height: 1;
}
.input--with-icon-after + .input--with-icon-after {
    right: 30px;
}

/******************* FORMULAIRE ********************/
.alert {
    position: relative;
}
.alert-warning {
    background-color: #ffc107 !important;
    color: #fff !important;
}
.alert .close {
    position: absolute;
    display: block;
    top: 0;
    right: 5px;
}

/************************ ICONE PERSO STYLE FONTAWESOME *************************/
.fa-icon-perso {
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/****************** SELECT2 ******************/
.select2-search { /* masque le champ recherche dans le select */
    display: none !important;
}

.text-line-through {
    text-decoration: line-through;
}
