/*www.creavolt.fr
Licence CC attribution*/

/* Cookies---------------*/

#info-cookie {
    background: #333;
    color: #aaa;
    padding: 7px;
    width: 100%;
    text-align: center;
    position: fixed;
    bottom: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
}

#info-cookie a {
    white-space: nowrap;
    margin-left: 10px;
    color: #fff;
}

#ok-cookie {
    display: inline-block;
    background: #3bb3a9;
    padding: 4px 10px;
    line-height: 1em;
    cursor: pointer;
}

/* Fonts---------------*/

@font-face {
    font-family: 'open-web';
    src: url('font/open.eot');
    src: url('font/open.eot?#iefix') format('embedded-opentype'), url('font/open.woff') format('woff');
}

@font-face {
    font-family: 'neo-web';
    src: url('font/neo.eot');
    src: url('font/neo.eot?#iefix') format('embedded-opentype'), url('font/neo.woff') format('woff');
}

@font-face {
    font-family: 'neob-web';
    src: url('font/neo-b.eot');
    src: url('font/neo-b.eot?#iefix') format('embedded-opentype'), url('font/neo-b.woff') format('woff');
}

/* GENERAL---------------*/

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

*:focus-visible {
    outline: 3px solid #008888;
}

body {
    font: 1.05em/1.5em open-web, sans-serif;
    background: #fff;
    color: #454;
}

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

iframe {
    max-width: 100% !important;
}



table {
    border-collapse: collapse;
}

ul {
    list-style: none;
    padding-left: 0;
}

hr {
    border: 0;
    height: 1px;
    background: #ccc;
}

iframe {
    border: 0;
}

h1,
h2,
h3,
.contenu ul,
#colonne ul {
    text-align: left;
}

::selection {
    background: #343;
    color: #fff;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
    border: 0;
}

a {
    text-decoration: none;
    color: #2a9;
    /* display: inline-block;
    max-width: 100%;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    vertical-align: bottom; */
}

a:hover {
    opacity: .8;
}

/* a[target=_blank]::after {
    background: #eee !important;
    content: 'nouvelle fenêtre';
    color: #454;
    font-size: .7em;
    font-style: normal;
    font-weight: normal;
    margin-left: 5px;
    padding: 0 5px;
    white-space: nowrap;
} */

.centre {
    width: 980px;
    margin: 0 auto;
    position: relative;
}

.clear {
    clear: both;
}

.tooltip,
.popover {
    display: none !important;
}

.ancre {
    position: absolute;
    margin-top: -60px;
}

/* Inputs---------------*/

button {
    background: none;
    padding: 0;
    border: 0;
    cursor: pointer;
    -webkit-appearance: none;
}

input[type=submit],
main button,
.bouton,
em a,
.ic-back a {
    font: 1.2em neob-web, sans-serif;
    background: #3bb3a9;
    color: #fff !important;
    padding: 10px 30px;
    border-radius: 30px;
    border: 0;
    display: inline-block;
    text-align: center;
    cursor: pointer;
    -webkit-appearance: none;
}

input[type=submit]:hover,
.contenu button:hover {
    opacity: .8;
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
textarea,
select {
    font: 1.2em open-web, sans-serif;
    background: #f8f8f8;
    color: #454;
    padding: 8px 15px;
    border: 0;
    width: 100%;
}

select,
label {
    cursor: pointer;
}

label {
    display: block;
    font-size: .9em;
    text-align: left;
}

textarea {
    height: 150px;
}

input[type=radio] {
    display: inline-block;
    margin: 0 5px 12px 0;
}

fieldset {
    border: 0;
    padding: 0;
}

/* Haut----------------------*/

header {
    height: 180px;
    background: url(img/vague.png) no-repeat;
}

#evitement a {
    position: absolute;
    top: -100px;
    z-index: 10020;
    width: 100%;
    text-align: center;
    background: #454;
    padding: 5px 15px;
    display: inline-block;
    color: #fff;
}

#evitement a:focus {
    top: 0;
}

#logo {
    display: inline-block;
    margin: 15px 0 0 15px;
    position: relative;
    z-index: 10010;
    -webkit-transition: opacity .3s, -webkit-filter .3s;
    transition: opacity .3s, -webkit-filter .3s;
    -o-transition: opacity .3s, filter .3s;
    transition: opacity .3s, filter .3s;
    transition: opacity .3s, filter .3s, -webkit-filter .3s;
}

#logo:hover {
    opacity: 1 !important;
    -webkit-filter: brightness(108%);
    filter: brightness(108%);
}

#barre-haut {
    width: 100%;
    height: 41px;
    position: absolute;
    right: 0;
    background: url(img/bordure.png) no-repeat center bottom;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#pousse {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

#contraste {
    display: block;
    font: 1.2em neob-web, sans-serif;
    width: 40px;
    height: 40px;
    text-align: center;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    color: #454;
    cursor: pointer;
}

#menu-haut {
    height: 40px;
    text-align: right;
    padding: 0 10px;
}

#menu-haut li {
    display: inline;
}

#menu-haut a {
    display: inline-block;
    font: 1.05em neo-web, sans-serif;
    height: 40px;
    padding: 7px 10px 0;
}

#recherche {
    height: 40px;
    width: 41px;
    border-left: 1px solid #ddd;
}

#loupe {
    background: url(img/loupe.png) no-repeat center;
    display: block;
    height: 40px;
    width: 40px;
    cursor: pointer;
}

#recherche form {
    background: #fff;
    border-bottom: 1px solid #ddd;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    z-index: 20000;
}

#recherche .box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#recherche .inputbox {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 40px;
    border-radius: 0;
    background: #fff;
    text-align: center;
    font-size: 1.2em;
}

#recherche button {
    width: 40px;
    height: 40px;
    border-radius: 0;
    padding: 0 0 0;
    text-align: center;
    color: #454;
    font-size: 1.2em;
    cursor: pointer;
}

.social {
    display: block;
    width: 41px;
    height: 40px;
    border-left: 1px solid #ddd;
}

.social::after {
    display: none !important;
}

#contact {
    display: block;
    background: #3bb3a9;
    color: #fff;
    font: 1.05em neob-web, sans-serif;
    height: 40px;
    padding: 8px 25px 0;
}

#loupe:hover,
#fermer:hover,
#fb:hover,
#contact:hover {
    opacity: .8;
}

/* Menu principal---------------*/

#navigation {
    background: #fff;
    width: 100%;
    position: absolute;
    top: 130px;
    z-index: 10000;
    -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .08);
    box-shadow: 0 5px 5px rgba(0, 0, 0, .08);
    text-align: right;
}

#burger {
    display: none;
}

#principal li,
.box-menu {
    display: inline-block;
}

#principal a,
#principal .nav-header {
    display: inline-block;
    position: relative;
    padding: 10px 15px 0;
    height: 50px;
    color: #608846;
    font: 1em neob-web, sans-serif;
    text-transform: uppercase;
    z-index: 200;
}

.opacite {
    opacity: .4;
}

.opacite2 {
    opacity: 1 !important;
}

.deroule::after {
    content: '';
    display: block;
    background: url(img/vague.png) no-repeat center 0;
    background-size: 62px 19px;
    width: 100%;
    height: 19px;
    position: relative;
    z-index: 200;
    -webkit-animation: .2s vague;
    animation: .2s vague;
}

@-webkit-keyframes vague {
    0% {
        background-size: 62px 0;
    }
}

@keyframes vague {
    0% {
        background-size: 62px 0;
    }
}

#principal a:hover {
    opacity: .8 !important;
}

/* Sous-Menu*/

#principal>.parent>ul {
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    padding: 30px;
    background: #3bb3a9;
    display: none;
    -webkit-column-count: 4;
    column-count: 4;
    -webkit-column-gap: 40px;
    column-gap: 40px;
    -webkit-column-rule: 1px solid rgba(255, 255, 255, .4);
    column-rule: 1px solid rgba(255, 255, 255, .4);
    -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .08);
    box-shadow: 0 5px 5px rgba(0, 0, 0, .08);
}

#principal ul li {
    display: inline-block;
    width: 100%;
    margin: 10px 0;
    text-align: left;
}

#principal img {
    border-radius: 5px;
}

#principal ul a,
#principal ul .nav-header {
    display: block;
    color: #fff;
    padding: 5px 15px;
    height: auto;
    text-align: left;
    line-height: 1em;
    opacity: 1 !important;
}

#principal ul .nav-header {
    cursor: default;
}

#principal ul a {
    color: #fff;
}

#principal ul a:hover {
    opacity: .8;
    color: #fff;
}

#principal ul .parent {
    opacity: 1 !important;
}

/* Sous-sous menus*/

#principal ul .box-menu {
    display: inline-block;
    width: 100%;
    margin: 10px 0 8px;
    -webkit-column-count: 1;
    column-count: 1;
}

#principal ul .box-menu li {
    margin: 0;
}

#principal ul .box-menu a {
    font: 1em open-web, sans-serif;
    text-transform: none;
    color: rgba(0, 0, 0, .7);
    padding-left: 30px;
    overflow: visible;
    vertical-align: top;
    background: url(img/puce2.png) no-repeat 15px 12px;
    height: auto !important;
}

/*Menu fixe*/

#navigation.fixe {
    position: fixed;
    top: 0;
}

#navigation.fixe a,
#navigation.fixe .nav-header {
    height: 40px !important;
}

#navigation.fixe ul ul a,
#navigation.fixe ul ul .nav-header {
    height: auto !important;
}

#navigation.fixe .parent ul {
    top: 40px !important;
}

#logo.fixe {
    opacity: 0;
}

#mini-logo {
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    left: 15px;
}

#mini-logo:hover {
    opacity: .8;
}

/*MESSAGES*/

.message-important {
    background: #ff987b;
    color: #343;
    text-align: center;
    padding: 18px 16px;
    /* text-shadow: 0 0 5px #ffb39c; */
    font-size: 1.05em;
}

.message-important a {
    color: #fff;
    font-weight: bold;
    text-shadow: 0 0 5px #ee704c;
}

/*messages d'erreur*/

.alert {
    background: #f0a087;
    padding: 20px;
    position: relative;
}

.close {
    display: none;
}


/* ACCUEIL V2-----------------*/

.centre-accueil  {
    width: 1200px;
    margin: 0 auto;
}

/*recherche*/

#recherche-accueil {
    overflow: hidden;
    height: 500px;
    position: relative;
}

#recherche-accueil img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

#recherche-accueil form {
    position: absolute;
    top: 150px;
    left: 50%;
    transform: translate(-50%);
    width: 676px;
}

#recherche-accueil input {
    background: #fff;
    border-radius: 20px;
    padding: 20px 45px 20px 20px;
    font-size: 1.3em;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
}

#recherche-accueil button {
    position: absolute;
    top: 0;
    right: 0;
    background: url(img/loupe2.svg) no-repeat center;
    background-size: 40%;
    width: 60px;
    height: 100%;
    border-radius: 20px;
}

#recherche-accueil button:hover {
    opacity: .8;
}


/*acces rapides*/

#rapide-2 {
    position: relative;
    padding-bottom: 64px;
}

#rapide-2 ul {
    width: 1200px;
    margin: -120px auto 0;
    padding: 20px;
    background: #fff;
    border-radius: 20px;
    position: relative;
    z-index: 2;
    /* display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; */
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#rapide-2 a {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 230px;
    height: 180px;
    padding: 0 0 50px;
    position: relative;
}

#rapide-2 span {
    text-align: center;
    position: absolute;
    top: 115px;
    left: 0;
    width: 100%;
    height: 50px;
    padding: 0 32px;
    font: 1em neo-web, sans-serif;
    color: #454;
    text-transform: uppercase;
}

#rapide-2::before,
#rapide-2::after {
    display: block;
    content: '';
    width: 20px;
    height: 20px;
    background: url(img/arrondi.svg);
    position: absolute;
    top: 101px;
    left: 50%;
    transform: translateX(-620px);
}

#rapide-2::after {
    transform: translateX(600px) scaleX(-1);
}


/*Actualités*/

#actualites {
    padding: 0 0 120px;
    background: linear-gradient(#fff, #cbeee4);
}

#actualites h2  {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    text-transform: uppercase;
    margin-bottom: 40px;
}

#actualites .grille  {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 64px;
}


#actualites h2,
#actualites a {
    color: #294a15;
}

#actualites .image {
    height: 169px;
    border-radius: 20px;
    display: block;
    overflow: hidden;
    background: #c0e4da;
}

#actualites .image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#actualites .categorie {
    display: inline-block;
    background: #fff;
    padding: 10px 16px;
    border-radius: 10px;
    font: .9em neob-web, sans-serif;
    text-transform: uppercase;
    position: relative;
    top: -20px;
    left: 20px;
}

#actualites .categorie::after {
    display: block;
    content: '';
    background: url(img/bulle.svg) no-repeat;
    width: 18px;
    height: 16px;
    position: absolute;
    margin-top: 7px;
}

#actualites h3 {
    font: 1.6em neob-web, sans-serif;
}

#actualites a:first-child  {
    grid-column-start: 1;
    grid-column-end: 4;
    background: #cbeee4;
    display: flex;
    flex-wrap: wrap;
    border-radius: 20px;
    overflow: hidden;
}

#actualites a:first-child .image {
    width: 778px;
    height: 369px;
    border-radius: 0;
}

#actualites a:first-child .boite {
    flex: 1;
    padding: 32px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

#actualites a:first-child .categorie {
    left: 0;
}

#actualites a:first-child h3 {
    font-size: 1.8em;
}

#actualites .bouton {
    background: #294a15;
    width: 100%;
    font-size: 1.3em;
    margin-top: 10px;
}

/*article en avant*/

#en-avant {
    background: #3bb3a9;
    display: flex;
    flex-wrap: wrap;
}

#en-avant .image {
    flex: 1;
    min-width: 50%;
    height: 23.77vw;
}

#en-avant img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#en-avant .texte {
    flex: 1;
    padding: 32px 7%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

#en-avant h2 {
    font: 2.6em neob-web, sans-serif;
    color: #fff;
    margin-bottom: 28px;
}

#en-avant .intro {
    margin-bottom: 32px;
}

#en-avant span[style*="under"],
#en-avant p {
    font: bold 1.4em open-web, sans-serif;
    color: #fff;
}

#en-avant .bouton {
    background: #fff;
    color: #454 !important;
}

/*Grands projets*/

#grands-projets {
    padding: 64px 100px;
    position: relative;
    overflow: hidden;
}

#grands-projets h2 {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    text-transform: uppercase;
    margin-bottom: 40px;
    color: #82b75f;
}

#slider-gp {
    max-width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 20px 0 0 20px;
}

#slider-gp *::selection {
    background: none;
}

#slider-gp .degrade {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 15%;
    background: linear-gradient(to left, #fff, rgba(255,255,255,0));
    pointer-events: none;
}

#slider-gp-div {
    display: flex;
}

#slider-gp .slide-gp {
    padding-right: 32px;
    min-width: 22%;
}

#slider-gp a {
    display: block;
    height: 34vw;
    background: #00691c;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}

#slider-gp img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .65;
}

#slider-gp h3 {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 16px 16px 25px;
    font: 1.4em neob-web, sans-serif;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 0 15px rgba(0,20,0,.8);
}

.glisse-gp {
    transform: translateX(-22%);
}

#droite-gp,
#gauche-gp {
    background: url(img/fleche1.svg) no-repeat 0 center;
    width: 40px;
    height: 43px;
    position: absolute;
    bottom: calc(34vw / 2 + 64px);
    right: 20px;
    transform: translateY(50%);
    cursor: pointer;
    border-radius: 0;
}

#droite-gp:active,
#gauche-gp:active {
    background-position: 2px center;
}

#gauche-gp {
    right: auto;
    left: 20px;
    transform: translateY(50%) rotate(180deg);
}

/*publications*/

#publications-accueil {
    background: #d6f4eb;
    padding: 64px 100px 80px;
    position: relative;
    overflow: hidden;
}

#publications-accueil h2 {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    text-transform: uppercase;
    margin-bottom: 64px;
    color: #0eb1b6;
}

#slider-pub {
    max-width: 100%;
    overflow: hidden;
    position: relative;
}

#slider-pub *::selection {
    background: none;
}

#slider-pub .degrade {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 4;
    width: 15%;
    background: linear-gradient(to left, #d6f4eb, rgba(213, 244, 234, 0));
    pointer-events: none;
}

#slider-pub > div {
    display: flex;
}

#slider-pub .slide-pub {
    padding-right: 80px;
    min-width: 22%;
}

#slider-pub .a4 {
    height: calc(((100vw - 200px) / (100 / 22) - 80px) * 1.4143);
    position: relative;
    background: #0eb1b6;
    padding: 0 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#slider-pub img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#slider-pub .a4:hover img {
    z-index: 1;
    opacity: .04;
    pointer-events: none;
}

#slider-pub h3 {
    font: 1.4em/1.1em neob-web, sans-serif;
    color: #fff;
    position: relative;
    z-index: 2;
    margin-bottom: 10px;
}

#slider-pub a {
    font-size: 1.2em;
    color: #fff;
}

#slider-pub .droptitle {
    font-weight: bold;
    margin-right: 5px;
}

#slider-pub .dropinfos {
    font-size: .85em;
    color: #fff;
}

#slider-pub a::after {
    font-size: .5em;
}

.glisse-pub {
    transform: translateX(-22%);
}

#droite-pub,
#gauche-pub {
    background: url(img/fleche1.svg) no-repeat 0 center;
    width: 40px;
    height: 43px;
    position: absolute;
    bottom: calc(((100vw - 200px) / (100 / 22) - 80px) * 1.4143 / 2 + 40px);
    right: 20px;
    transform: translateY(50%);
    cursor: pointer;
    border-radius: 0;
}

#droite-pub:active,
#gauche-pub:active {
    background-position: 2px center;
}

#gauche-pub {
    right: auto;
    left: 20px;
    transform: translateY(50%) rotate(180deg);
}

/*agenda accueil*/

#flex {
    display: flex;
    flex-wrap: wrap;
}

.ic_eventlist {
    width: 100%;
    text-align: center;
    padding: 64px;
}

.ic_eventlist h2 {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    color: #81B75D;
    text-transform: uppercase;
    margin-bottom: 64px;
}

.ic-section {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 50px 32px;
}

.icrounded_eventlist {
    position: relative;
}

/* .apparition .icrounded_eventlist {
    opacity: 1;
} */

.icrounded_eventlist a {
    display: block;
}

.ic-date-img-box {
    width: 100% !important;
    height: 19.33vw !important;
    background-size: cover !important;
    box-shadow: 0 0 20px #ddd;
}

.iceventlist-title {
    font: 1em neob-web, sans-serif;
    color: #454;
    text-transform: uppercase;
    margin-top: 15px;
}

.ic-date-div {
    background: url(img/date.png);
    width: 82px !important;
    height: 76px !important;
    position: absolute;
    top: calc(19.33vw - 76px);
    right: 0;
    z-index: 3;
    text-align: center;
    padding-top: 18px;
    color: #fff;
    font: 1.1em neob-web, sans-serif;
    text-transform: uppercase;
    text-shadow: 0 0 8px #4c6529;
}

.module-annule {
    font-size: 1em !important;
    line-height: 1em;
    text-align: left !important;
    padding: 0 95px 0 10px !important;
    display: flex;
    align-items: center;
}

.ic_eventlist .bouton {
    background: #81B75D;
    margin: 50px 30px 0;
}

.reinit {
    color: #565 !important;
    background: none !important;
    padding: 10px;
}

.ic-msg-no-event {
    width: 100%;
    text-align: center;
}

/*agenda iframe OT*/

#h4 {
    padding: 32px;
}

#h4 h2 {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    /* color: #81B75D; */
    color: #81ae9d;
    text-transform: uppercase;
    margin-bottom: 20px;
}

#h4 iframe {
    height: 80vh;
    box-shadow: 0 0 15px #ccc;
    border-radius: 8px;
}

/*autres sites*/

.accueil-autres-sites {
    padding: 64px;
    width: 100%;
}

.accueil-autres-sites h2 {
    text-align: center;
    font: 3em/1.1em neo-web, sans-serif;
    text-transform: uppercase;
    margin-bottom: 64px;
    color: #3bb3a9;
}

.accueil-autres-sites p {
    display: flex;
    flex-wrap: wrap;
    gap: 32px 64px;
    justify-content: center;
    align-items: center;
}

.accueil-autres-sites img {
    max-width: 160px;
    max-height: 140px;
}

.accueil-autres-sites a::after {
    display: none;
}

/* ACCUEIL--------------------*/

/*slider*/

.cycle-slideshow {
    background: #ccc;
    height: 32vw;
    overflow: hidden;
    position: relative;
}

.slide {
    width: 100%;
    height: 32vw;
}

.slide img {
    width: 100%;
}

.slide h2 {
    font: 4vw/1.1em neob-web, sans-serif;
    text-transform: uppercase;
    color: #fff;
    position: absolute;
    bottom: 14vw;
    right: 50px;
    z-index: 900;
    width: 48vw;
    text-align: center;
}

.slide .bouton {
    position: absolute;
    bottom: 9vw;
    right: calc(17vw + 50px);
    z-index: 900;
    width: 14vw;
    font-size: 1.5vw;
    background: #fff;
    color: #3bb3a9 !important;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    -o-transition: transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
}

.cycle-slideshow a:hover .bouton {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

#droite,
#gauche {
    background: url(img/droite.png) no-repeat 0 center;
    width: 40px;
    height: 40px;
    position: absolute;
    right: 0;
    top: calc(16vw - 20px);
    z-index: 900;
    cursor: pointer;
    opacity: .5;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s;
}

#droite:active {
    background-position: 2px center;
}

#gauche {
    background: url(img/gauche.png) no-repeat 14px center;
    left: 0;
}

#gauche:active {
    background-position: 12px center;
}

.cycle-slideshow:hover #droite,
.cycle-slideshow:hover #gauche {
    opacity: 1;
}

.calque {
    width: 100%;
    height: 32vw;
    background: url(img/calque.svg);
    background-size: cover;
    position: absolute;
    top: 0;
    z-index: 800;
}

/*acces rapide*/

#rapide {
    background: #81b75d;
    text-align: center;
}

#rapide ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#rapide li {
    border-left: 1px solid #69984a;
    border-bottom: 1px solid #69984a;
    -webkit-box-flex: 1;
    -ms-flex: 1 130px;
    flex: 1 130px;
    -webkit-animation: apparition-inexpliquee 1s;
    animation: apparition-inexpliquee 1s;
}

@-webkit-keyframes apparition-inexpliquee {
    0% {
        opacity: 0;
    }
}

@keyframes apparition-inexpliquee {
    0% {
        opacity: 0;
    }
}

#rapide a {
    display: inline-block;
    width: 100%;
    height: 163px;
    padding-top: 30px;
    vertical-align: middle;
    color: #fff;
    font: 1em/1.1em neob-web, sans-serif;
    text-transform: uppercase;
    -webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s;
    position: relative;
}

#rapide a:hover {
    background: #69984a;
    opacity: 1;
}

#rapide .image-title {
    text-align: center;
    position: absolute;
    top: 100px;
    left: 0;
    width: 100%;
    padding: 0 5px;
}

/*presentation CC*/

#flex-accueil {
    display: flex;
    flex-wrap: wrap;
}

#h2 {
    flex: 3;
}

#h3 {
    flex: 1;
    display: flex;
}

.bonjour {
    text-align: center !important;
    padding: 60px 30px 0 ;
}

.bonjour h1 {
    text-align: center;
    font: 3.5em/1.1em neo-web, sans-serif;
    color: #3bb3a9;
    margin-bottom: 30px;
    text-transform: uppercase;
}

/*
.bonjour iframe {
    width: 300px !important;
}
*/

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

#chiffres {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#d1eee6));
    background: -webkit-linear-gradient(#fff, #d1eee6);
    background: -o-linear-gradient(#fff, #d1eee6);
    background: linear-gradient(#fff, #d1eee6);
    padding: 40px 0 60px;
}

.col-chiffre {
    width: 33.33%;
    float: left;
    text-align: center;
    font: 1.5em/1.1em neob-web, sans-serif;
    color: #3f533f;
}

.gros-chiffre {
    font: 3em neo-web, sans-serif;
    color: #3bb3a9;
}

/*vignettes actu*/

.actu {
    background: #f8f8f8;
    padding: 65px 15px 30px;
    text-align: center;
    flex: 1;
}

.actu h2 {
    font: 3em neo-web, sans-serif;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 15px;
}

.actu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    text-align: left;
}

.actu li {
    flex: 1 300px;
    background: #d2eee6;
    padding: 30px 30px;
    margin: 15px;
}

.actu li:nth-child(2),
.actu li:nth-child(5) {
    background: #9fe0cf;
}

.actu li:nth-child(3) {
    background: #a3d97e;
}

.actu li:nth-child(4) {
    background: #8dc567;
}

.actu .categ a {
    font: 1em neob-web, sans-serif;
    color: #454;
    border-bottom: 3px solid #454;
    text-transform: uppercase;
}

.actu .titre {
    display: block;
    margin-top: 20px;
    font: 2em/1em neob-web, sans-serif;
    color: #454;
    white-space: normal !important;
}

.actu .bouton {
    background: #565;
    margin-top: 15px;
}

/*journal*/

.journal {
    background: #b4e3d7;
    width: 25%;
    width: 100%;
    padding: 50px 35px;
    padding: 50px 15px 10px;
    position: relative;
}

.journal h2 {
    font: 3em/1em neo-web, sans-serif;
    color: #3bb3a9;
    text-transform: uppercase;
    margin-bottom: 27px;
}

.journal img {
    max-height: 400px;
    width: auto;
    margin-bottom: 10px;
}

.journal hr {
    background: #3bb3a9;
}

/*ajout COVID*/

.journal table,
.journal tbody,
.journal td {
    display: block;
}

.journal tr {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.journal td {
    margin: 20px;
}

.journal h2 {
    font-size: 1.5em;
    min-height: 60px;
    margin-bottom: 10px;
}





/*lettre accueil*/

.lettre {
    padding: 28px 15px 30px;
    background: #3bb3a9;
    text-align: center;
    -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .2);
    box-shadow: 0 5px 5px rgba(0, 0, 0, .2);
    position: relative;
    z-index: 990;
    overflow: hidden;
}

.lettre a {
    display: block;
    font: 1.8em neob-web, sans-serif;
    color: #fff;
    text-transform: uppercase;
}

.zoom a {
    -webkit-animation: .8s zoom;
    animation: .8s zoom;
}

@-webkit-keyframes zoom {
    50% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes zoom {
    50% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.lettre img {
    position: relative;
    top: 2px;
}


/*ARTICLES-------------------*/

#article,
.perso {
    text-align: justify;
}

#bande {
    position: absolute;
    top: 0;
    width: 100%;
    height: 20vw;
    overflow: hidden;
}

#bande img {
    width: 100%;
}

.decale {
    margin-top: calc(20vw - 30px) !important;
}

.decale2 {
    margin-top: 20vw !important;
}

/*Fil Ariane*/

#fil {
    color: #bbb;
    line-height: 1em;
}

#fil a {
    color: #bbb;
    display: inline;
    vertical-align: baseline;
}

#fil a:hover {
    color: #3ba;
}

#fil li {
    display: inline-block;
    line-height: 1em;
}

#fil .active {
    display: none;
}

#fil .divider,
#fil ul::after {
    font: 1.1em neob-web, sans-serif;
    position: relative;
    top: 2px;
    content: '>';
}

/*date*/

.article-info {
    font-style: italic;
    font-size: .8em;
    color: #999;
    position: absolute;
    margin: 5px 0 0 180px;
}

.article-info a {
    overflow: visible;
}

.articles .article-info {
    margin: 0 0 30px 0;
    position: static;
}

/*imprimer*/

.print-no {
    display: inline-block;
    margin-bottom: 40px;
    background: url(img/imprimer.png) !important;
    width: 161px;
    height: 28px;
    border-radius: 0;
    color: #000;
}

.print-no:hover {
    opacity: .8;
}

/*Partager*/
#partager {
    position: absolute;
    right: 0;
    margin-top: -73px;
}

#bloc-partager {
    display: none;
    border: 1px solid #ddd;
    padding: 20px;
    margin-bottom: 40px;
    text-align: center;
}

#bloc-partager a::after {
    display: none;
}

#partage-fb,
#partage-tw {
    margin-right: 10px;
}

#partage-fb {
    background: #3b5998 !important;
    margin-right: 10px;
}

#partage-fb:hover {
    background: #4c6eb6 !important;
}

#partage-tw {
    background: #55acee !important;
}

#partage-tw:hover {
    background: #6fc1ff !important;
}

#partage-email {
    font-weight: normal;
}

/*titres*/

.contenu h1 {
    font: 3.7em/1.1em neo-web, sans-serif;
    color: #3bb3a9;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.contenu h2,
#colonne h2 {
    font: 1.6em/1.1em neob-web, sans-serif;
    margin-bottom: 30px;
    color: #3bb3a9;
    text-transform: uppercase;
}

.contenu h3,
#colonne h3 {
    font: 1.3em/1.1em neob-web, sans-serif;
    margin-bottom: 30px;
    color: #3f533f;
    padding-bottom: 5px;
    border-bottom: 4px solid;
    display: inline-block;
}

sup {
    display: inline-block;
    margin-top: -5px;
    text-indent: 0;
    position: relative;
    top: 1px;
}

/*chapeau*/

span[style*="under"] {
    font: 1.4em neob-web, sans-serif;
    color: #3f533f;
    text-decoration: none !important;
}

.contenu ul li,
#colonne ul li {
    position: relative;
    padding: 2px 0 10px 18px;
}

.contenu li::before,
#colonne li::before,
.aussi li::before {
    content: '> ';
    color: #3bb3a9;
    font: 1.3em neob-web, sans-serif;
    position: absolute;
    top: 1px;
    left: 0;
}

#fil li,
#elu li,
.tag li,
.pagination li {
    padding: 0 !important;
}

#fil li::before,
#elu li::before,
.tag li::before,
.pagination li::before {
    display: none;
}

.contenu ol,
#colonne ol {
    counter-reset: num;
    padding-left: 0;
}

.contenu ol li,
#colonne ol li {
    list-style: none;
    counter-increment: num;
    position: relative;
    padding: 4px 0 25px 32px;
}

.contenu ol li::before,
#colonne ol li::before {
    content: counter(num);
    margin-right: 6px;
    background: #3bb3a9;
    padding: 2px 8px;
    border-radius: 15px;
    color: #fff !important;
    position: absolute;
    left: 0;
}

/*encard*/

blockquote {
    background: #3bb3a9;
    color: #121;
    padding: 30px;
    border-radius: 10px;
}

blockquote a,
blockquote h2,
#colonne a {
    color: #fff !important;
}

blockquote em a {
    color: #3bb3a9 !important;
    background: #fff !important;
}

blockquote li::before,
table li::before,
#colonne li::before {
    color: rgba(255, 255, 255, .5) !important;
}


/*tableaux*/

.contenu table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

caption {
    text-align: left;
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
}

.contenu tbody {
    background: #3bb3a9;
    display: table;
}

.contenu th,
.contenu td {
    padding: 15px 25px;
    color: #121;
    text-align: left;
}

.contenu th {
    background: #343;
    color: #bbb;
}

.contenu tr:nth-child(2n) td {
    background: rgba(255, 255, 255, .15);
}

.contenu td a,
.contenu th a {
    color: #fff !important;
}

.tel {
    min-width: 160px;
}

/*liens*/

a[href^=tel],
a[href^=mailto] {
    font-weight: bold;
    font-size: 1.1em;
    white-space: nowrap;
}

/*legende images*/

figcaption {
    font-style: italic;
}

/*accordeon*/

/* .sp-accordion.sp-accordion-style3 {
    border: 0 !important;
} */

.sp-accordion,
.sp-accordion-item,
.sp-accordion-inner,
.sp-accordion-info {
    display: block;
}

.sp-accordion-container {
    display: none;
}

.toggler {
    padding: 15px 0 10px 40px;
    border-bottom: 1px solid #ddd;
    border-radius: 0;
    background: none;
    color: #454 !important;
    display: block;
    width: 100%;
    text-align: left;
    font-family: open-web, sans-serif;
    font-size: 1em;
    position: relative;
}

.toggler::before {
    content: '';
    display: inline-block;
    background: #3bb3a9 url(img/accordeon.png) no-repeat 11px center;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    position: absolute;
    top: 10px;
    left: 0;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    -o-transition: transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
}

.sp-accordion .active::before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.sp-accordion-inner {
    padding: 20px 0 40px;
}

/*miniatures*/

.pull-center {
    width: 150px;
    cursor: pointer;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.pull-center:hover {
    opacity: .8;
}

.pleine {
    width: 100%;
    opacity: 1 !important;
}

/*lien fichier*/

.dropfiles-file-link {
    display: block;
    padding-left: 30px;
    position: relative;
}

.dropfiles-file-link .type {
    display: inline-block;
    width: 23px;
    height: 32px;
    background-image: url(img/ext/neutre.png);
    position: absolute;
    top: 5px;
    /* left: 0; */
    margin-left: -28px;
}

.dropinfos {
    font-size: .6em;
    text-transform: capitalize;
    white-space: nowrap
}

.previsualiser {
    font-style: italic;
    font-size: .9em;
}

/*video*/

.avPlayerWrapper,
.avPlayerContainer,
.avPlayerBlock {
    display: block;
}

/*galerie*/

.sigFreeContainer a[target=_blank]::after,
.sigFreeLink:hover:after {
    display: none !important;
}

.sigFreeLink:hover img {
    opacity: 1 !important;
}

/* COLONNE-------------------*/

#boite {
    min-height: calc(100vh - 180px - 280px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
}

.contenu {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 70px 0 60px;
}

.perso {
    width: 100%;
}

#colonne {
    color: #121;
    padding-top: 80px;
}

#colonne>div {
    background-color: #3bb3a9;
    width: 380px;
    padding: 20px;
    margin-bottom: 20px;
    margin-right: 20px;
    border-radius: 10px;
}

#colonne h2 {
    color: rgba(255, 255, 255, .6) !important;
}

#colonne img {
    max-height: 150px;
    width: auto;
}

#colonne .gmapfp a {
    color: #3bb3a9 !important;
}

.tag li {
    padding-bottom: 15px !important;
}

.tag a {
    font-size: 1.2em;
    line-height: 1.1em;
}

#liste-communes li {
    padding: 0 0 7px !important;
    line-height: 1.16em;
}

#liste-communes li::before {
    display: none;
}

/* VOIR AUSSI----------------*/

.aussi {
    background: #d9f1f1;
    padding: 40px 0;
    width: 100%;
}

.decale3 {
    padding-right: 400px;
}

.aussi .titre {
    font: 2em neo-web, sans-serif;
    margin-bottom: 20px;
}

.aussi li {
    font: 1.2em neob-web, sans-serif;
    padding: 2px 0 10px 18px;
    position: relative;
}

.aussi li::before {
    content: '> ';
    color: #454;
    font: 1.2em neob-web, sans-serif;
}

/* BLOG----------------------*/

.articles {
    margin: 30px 0;
    text-align: justify;
    padding: 30px;
    border: 1px solid #ccc;
    border-radius: 10px;
}

.recrutement .articles {
    margin: 10px 0 25px;
}

.communes .articles {
    padding: 0 !important;
    border: 0;
    border-radius: 0;
    margin: 60px 0;
}

.article-info-term {
    opacity: .5;
}

.articles .item-image {
    margin-bottom: 30px;
}

.articles span[style*="under"] {
    font: 1em open-web, sans-serif;
    color: #454;
}

.readmore a {
    display: inline-block;
    padding-top: 10px;
    font: 1em neob-web, sans-serif;
}

/*pagination*/

.pagination {
    cursor: default;
}

.pagination li {
    display: inline;
}

.pagination li a,
.pagination li span {
    background: #eee;
    display: inline-block;
    padding: 15px 22px;
    text-indent: 0;
    margin-bottom: 5px;
    color: #454;
}

.pagination li span {
    opacity: .5;
}

/* ANCIENNE CARTE INTERACTIVE---------*/

/* .shadow {
    display: none;
}

.accueil {
    margin: -70px 0 -60px;
    position: relative;
}

.accueil .gmapfp-boite>div {
    height: 650px !important;
}

.accueil .toggle-gmapfp {
    background: #8BBD6A !important;
    color: #121 !important;
    border-radius: 0;
    position: absolute;
    left: 50%;
    width: 220px;
    margin-left: -110px;
    z-index: 980;
}

.bouton-carte {
    text-align: center;
    position: absolute;
    left: 50%;
    width: 260px;
    margin: -20px 0 0 -130px;
}

.bouton-carte .bouton {
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .5);
    box-shadow: 0 0 10px rgba(0, 0, 0, .5);
}

.gm-style-mtc button {
    border-radius: 2px;
    color: #343 !important;
    padding: 0px 17px;
}

.gm-style-iw-d {
    overflow-x: hidden !important;
}

.carte .gmapfp-boite>div {
    height: 800px !important;
}

.carte {
    margin-bottom: -60px;
}

#filtres-gmapfp {
    margin-bottom: 10px;
}

#flex-gmap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px 0;
}

#flex-gmap .col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0 15px;
}

#flex-gmap .col:first-child {
    padding-left: 0;
}

#flex-gmap .col:last-child {
    padding-right: 0;
}

#legende {
    margin-top: 20px;
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#legende p {
    -webkit-box-flex: 1;
    -ms-flex: 1 330px;
    flex: 1 330px;
    display: block;
    min-height: 85px;
    padding: 25px 0 0 50px;
    position: relative;
}

#legende img {
    position: absolute;
    top: 0;
    left: 0;
}

.toggle-gmapfp {
    background: none;
    color: #2a9 !important;
    padding: 0;
    font: 1em open-web, sans-serif;
}

.blog-gmapfp {
    background: #f8f8f8;
    display: none;
    padding: 30px;
    margin: 20px 0 50px;
}

.blog-gmapfp p {
    padding-bottom: 20px;
}

.coordonnees {
    float: left;
    width: 350px;
    height: 350px;
    border: 1px solid #ccc;
    margin: 0 -1px -1px 0;
    padding: 20px;
}

#colonne .gmapfp-boite>div {
    height: 520px !important;
}

.gmapfp img {
    max-height: 100000px !important;
}

.gmapfp .gmapfp_marqueur {
    font-size: 1.15em;
}

.gmapfp .titre {
    font: 1.25em neob-web, sans-serif;
    border-bottom: 3px solid;
} */

/* NOUVELLE CARTE INTERACTIVE----------------*/

/*mise en page*/

.accueil {
    display: none;
}

#module-carte {
    background: #c6e4b4;
    /* flex: none; */
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#outils-carte {
    flex: 1;
    width: 25%;
    position: relative;
}

#outils-carte .boite {
    padding: 30px;
}


/*outils*/

#outils-carte h2 {
    font: 2em/1.1em neob-web, sans-serif;
    text-transform: uppercase;
    margin-bottom: 25px;
}

#outils-carte input {
    padding: 10px 10px;
    margin-bottom: 25px;
    border-radius: 50px;
}

.ui-autocomplete {
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
    box-shadow: 0 8px 8px rgba(0, 0, 0, .3);
    border-radius: 30px;
    padding: 10px 0;
}

.ui-menu-item {
    color: #2c9a91 !important;
    padding: 10px !important;
    cursor: pointer;
}

.ui-menu-item:hover {
    color: #3bb3a9 !important;
}

.ui-state-focus {
    background: #3bb3a9 !important;
    color: #fff !important;
    border: 0 !important;
    margin: 0 !important;
}

.ui-helper-hidden-accessible {
    display: none !important;
    opacity: 0 !important;
}

#zhom-menu-advanced {
    margin-bottom: 20px;
}

#tout-afficher,
.categ-carte {
    cursor: pointer;
    padding: 0;
    background: none !important;
    color: #454 !important;
    font-family: open-web, sans-serif;
    text-align: left;
}

#tout-afficher {
    color: #2ea891 !important;
    font-weight: bold;
}

#tout-afficher:hover {
    color: #24947f !important;
}

.categ-carte {
    margin-top: 5px;
    padding-left: 26px;
    font-size: 1.05em;
    line-height: 1.1em;
}

.categ-carte::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background: #fff;
    border: 3px solid #fff;
    border-radius: 3px;
    position: relative;
    top: 2px;
    margin: 0 6px 0 -26px;
}

.categ-carte.active::before {
    background: #3bb3a9;
}

.geoloc {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    padding-top: 0;
    padding-bottom: 10px;
}

.geoloc:hover {
    background: #4cc3b9;
}

.geoloc span {
    display: inline-block;
    background: url(img/sat.png);
    width: 30px;
    height: 30px;
    margin-right: 10px;
    position: relative;
    top: 7px;
}

.centrer,
.txt-carte {
    background: none !important;
    padding: 0;
    color: #2ea891 !important;
    font: 1em open-web, sans-serif;
}

.centrer:hover,
.txt-carte:hover,
#module-carte a:hover {
    color: #24947f !important;
}

.txt-carte {
    position: absolute;
    bottom: 30px;
    left: 30px;
}

/*carte*/

#carte {
    flex: 3;
    position: relative;
}

.complete #OMapsID {
    height: 830px !important;
}

.simple #OMapsID {
    height: 500px !important;
}


#plein-ecran {
	width: 48px;
	height: 48px;
	background: #fff;
	border: 2px solid rgba(0,0,0,.2);
	background-clip: padding-box;
	cursor: pointer;
	position: absolute;
	top: 10px;
	right: 70px;
	z-index: 800;
	border-radius: 5px;
	padding: 10px;
}

#plein-ecran svg {
	fill: #3bb3a9;
}

.leaflet-container:after {
    background: rgba(198, 228, 180,.8) !important;
    color: #454 !important;
    text-align: center;
}

.leaflet-popup-content-wrapper {
    color: #454 !important;
    font: 1.1em open-web, sans-serif;
}

#module-carte h2 {
    font: 1.4em/1em neob-web, sans-serif;
    margin-bottom: 10px;
    color: #454 !important;
}

#module-carte p {
    padding: 0 !important;
    margin: 0 0 3px !important;
}

#module-carte a {
    color: #3bb3a9 !important;
}

#module-carte em a,
#module-carte a em {
    background: #3bb3a9 !important;
    color: #fff !important;
}

#module-carte em a:hover,
#module-carte a em:hover {
    background: #39c8bc !important;
    color: #fff !important;
}

#OMapsMainRoutePanel,
#OMapsRoutePanel {
    display: none;
}

#module-carte path:hover {
    opacity: .6;
}

/*version texte*/
#OMapsMarkerList {
    height: auto !important;
}

#OMapsMarkerListMain {
    display: none;
}

.zhom-ul-markerList-simple {
    display: flex;
    flex-wrap: wrap;
    padding: 5px;
}

.zhom-li-markerList-simple {
    flex: 1 250px;
    background: #fff;
    padding: 15px;
    margin: 5px;
    border-radius: 5px;
}

.zhom-5-lit-markerList-simple {
    font: 1.2em sbw, sans-serif;
}


/* PAGES IFRAME-------------*/

#iframe {
    width: 100%;
    border: 0;
}

.agenda-elus iframe {
    border: 2px solid #ccc !important;
    margin-top: 15px;
    background: #eee;
}

/* FORMULAIRES PERSO---------*/

.formulaire fieldset {
    border: 1px solid #454;
    border-radius: 10px;
    padding: 30px 30px 0;
}

.formulaire input,
.formulaire select,
.formulaire textarea {
    margin: 5px 0 25px;
}

.vis_mandatory {
    opacity: .5;
    padding-bottom: 20px;
    font-size: .9em;
}

.visCSSlabel::after,
.vflocationlabel::after {
    color: #454 !important;
    padding-left: 3px !important;
}

/* AGENDAS-------------------*/

/*moteur de recherche*/

.ic-filters {
    background: #9cc16c;
    color: #343;
    padding: 30px;
    border-radius: 10px;
    margin-bottom: 15px;
    text-align: center;
}

.ic-filters a {
    color: #fff !important;
}

.ic-filters-label-title-1 {
    display: none;
}

.ic-filters input,
.ic-filters select {
    width: 100%;
}

#filter_search {
    margin-bottom: 2%;
}

.input-append {
    position: relative;
    margin: 0 2% 10px 0;
    width: 32%;
    float: left;
}

#filter_from_btn,
#filter_to_btn {
    position: absolute;
    bottom: 8px;
    right: 7px;
    width: 27px;
    height: 28px;
    padding: 0;
    border-radius: 0;
    background: url(img/calendrier.png) !important;
}

#filter_category {
    margin-bottom: 10px;
    float: left;
    width: 32%;
    height: 44px;
}

#ic-toggle-filters {
    color: #fff;
    cursor: pointer;
    margin-bottom: 20px;
    display: block;
    clear: both;
}

#ic-more-filters {
    width: 100% !important;
    padding-bottom: 20px;
}

#ic-more-filters select {
    margin-bottom: 2%;
}

.ic-filter-submit-btn {
    background: #fff;
    color: #81b75d !important;
    width: 66%;
    margin-right: 2%;
    float: left;
}

.ic-filter-reset-btn {
    width: 32%;
    float: left;
    background: rgba(255, 255, 255, .7);
    color: #81b75d !important;
}

/*liste evenements*/

.ic-list-events {
    padding-bottom: 40px;
}

.event {
    background: #fff;
    width: 316px;
    height: 550px;
    margin: 16px 16px 0 0;
    float: left;
    position: relative;
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
}

.event:nth-child(3n) {
    margin-right: 0;
}

.annule {
    background: #f87;
    font: 1.2em neob-web, sans-serif;
    color: #fff;
    height: 60px;
    margin-top: -60px;
    text-align: center;
    padding-top: 18px;
    position: relative;
    z-index: 2;
}

.event a {
    display: block;
}

.ic-box-date {
    height: 210px;
    background-size: cover;
}

.ic-date {
    display: none;
}

.ic-content {
    padding: 25px;
    height: 280px;
    overflow: hidden;
}

.event h2 {
    font-size: 1.2em;
    padding: 0;
    margin-bottom: 10px;
}

.event .ic-title-cat {
    color: #454 !important;
    font: 1em neo-web, sans-serif;
    margin-bottom: 10px;
}

.ic-content .ic-single-next {
    margin-left: 5px;
}

.nextdate {
    text-transform: capitalize;
}

.ic-single-starttime,
.ic-period-starttime,
.ic-period-endtime {
    font-weight: normal;
}

.ic-descshort {
    height: 136px;
    line-height: 1.3em;
    overflow: hidden;
    margin-top: 15px;
}

.ic-descshort i::after {
    content: '...';
}

.ic-more-info {
    display: block;
    width: calc(100% - 50px);
    padding: 80px 0 30px;
    background: url(img/degrade1.png);
    position: absolute;
    bottom: 0;
}

.ic-more-info a {
    display: block;
    background: #455;
    border-radius: 25px;
    padding: 8px;
    text-align: center;
    font: 1.2em neob-web, sans-serif;
    color: #fff !important;
}

/* CALENDRIERS----------------*/

.js-calendar {
    border-radius: 0 !important;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .4) !important;
    box-shadow: 0 0 10px rgba(0, 0, 0, .4) !important;
    position: absolute;
    display: table;
    background: #fff;
}

.js-calendar tbody {
    display: table-row-group;
}

.js-calendar td {
    background: #fff !important;
    padding: 8px;
}

.js-calendar a {
    color: #454 !important;
}

.othermonth {
    color: #aba;
}

.today {
    background: rgba(255, 255, 255, .5) !important;
}

.day {
    cursor: pointer;
}

.day:hover {
    background: none !important;
    color: #fff;
    font-weight: bold;
}

.wn {
    color: #ddd;
}

.wn:hover {
    background: #fff !important;
    color: #ddd;
}

.js-btn {
    display: none;
}

/* PAGE DE L'EVENEMENT ------*/

.ic-event-view .ic-title-cat {
    color: #454 !important;
    font: 1.6em neob-web, sans-serif;
    margin-bottom: 30px;
}

.ic-event-view .ic-image {
    margin-bottom: 25px;
}

.ic-event-view .annule {
    margin-bottom: 30px;
}

/*date*/

.ic-details {
    background: url(img/montre.png) 0 2px no-repeat;
    padding: 0 0 5px 36px;
    font: 1.4em neob-web, sans-serif;
    text-transform: capitalize;
    margin-bottom: 30px;
}

.ic-details .ic-single-starttime,
.ic-details .ic-period-starttime,
.ic-details .ic-period-endtime {
    font-family: neo-web, sans-serif;
}

.ic-single-next {
    text-indent: -5px;
    display: inline-block;
}

.ic-detail-desc {
    text-align: justify;
}

/*map*/

#detail-map {
    margin-bottom: 30px;
}

/*infos*/

.ic-info-box {
    background: #3bb3a9;
    color: #232;
    border-radius: 10px;
    padding: 20px 30px 30px;
    margin: 20px 0 10px;
    line-height: 1.2em;
}

.ic-info-box a {
    color: #fff !important;
}

.ic-label {
    font-weight: bold;
    margin-top: 10px;
}

/*liste dates*/

#detail-date-list {
    border: 1px solid;
    padding: 30px;
    border-radius: 10px;
}

#detail-date-list h3 {
    background: url(img/calendrier.png) 0 0 no-repeat;
    border-bottom: 0;
    padding: 3px 0 0 38px;
    height: 28px;
}

.ic-back a {
    background: #454;
    margin-top: 30px;
}

/* RESULTATS RECHERCHE--------*/

#search-searchword {
    width: 80%;
    float: left;
    font-size: 1.3em;
}

#searchForm .btn {
    width: 20%;
    float: left;
    margin-bottom: 20px;
    border-radius: 0;
}

.searchintro {
    margin-bottom: 20px;
}

.counter {
    margin-bottom: 20px;
    font-size: .9em;
    color: #888;
}

.result-created,
.result-category {
    margin: 5px 0;
    font-size: .9em;
    font-style: italic;
    color: #888;
}

.result-created {
    margin-bottom: 40px;
}

.result-title a {
    font: 1.4em neob-web, sans-serif;
    text-transform: capitalize;
}

.highlight {
    background: #fa8;
    color: #343;
}

/*MOTEUR DE RECHERCHE DECISIONS--------*/

.only-file,
.calendrier {
    position: relative;
}

#flex-drop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#flex-drop .col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0 20px 20px;
}

#flex-drop .col:first-child {
    padding-left: 0;
}

#flex-drop .col:last-child {
    padding-right: 0;
}

.categories-filtering {
    margin: 0 !important;
}

.calendrier button {
    position: absolute;
    top: 7px;
    right: 7px;
    width: 27px;
    height: 28px;
    padding: 0;
    border-radius: 0;
    background: url(img/calendrier.png) !important;
    cursor: pointer;
}

.chk-tags-filtering {
    margin-bottom: 20px;
}

.chk-tags-filtering label {
    display: inline-block;
    float: left;
    width: 130px;
}

/* #reinit-decisions {
    background: none;
    border: 0;
    color: #2a9;
    font: 1em open-web, sans-serif;
    cursor: pointer;
} */

#btnsearchbelow {
    margin: 0 20px 30px 0;
}

#btnsearch {
    visibility: hidden;
}

/* résultats*/

#dropfiles-results tbody {
    width: 100% !important;
    margin-bottom: 20px;
}

#dropfiles-results td {
    position: relative;
}

#dropfiles-results .title {
    padding-left: 50px;
}

#dropfiles-results .poids {
    font-size: .8em;
    text-transform: capitalize;
    white-space: nowrap;
}

#dropfiles-results .file-icon {
    display: inline-block;
    width: 23px;
    height: 32px;
    background-image: url(img/ext/neutre.png);
    position: absolute;
    margin: -5px 0 0 -30px;
}

.csv {
    background-image: url(img/ext/csv.png) !important;
}

.doc {
    background-image: url(img/ext/doc.png) !important;
}

.docx {
    background-image: url(img/ext/docx.png) !important;
}

.exe {
    background-image: url(img/ext/exe.png) !important;
}

.jpg {
    background-image: url(img/ext/jpg.png) !important;
}

.mp3 {
    background-image: url(img/ext/mp3.png) !important;
}

.mp4 {
    background-image: url(img/ext/mp4.png) !important;
}

.otf {
    background-image: url(img/ext/otf.png) !important;
}

.pdf {
    background-image: url(img/ext/pdf.png) !important;
}

.png {
    background-image: url(img/ext/png.png) !important;
}

.ppt {
    background-image: url(img/ext/ptt.png) !important;
}

.pptx {
    background-image: url(img/ext/pttx.png) !important;
}

.txt {
    background-image: url(img/ext/txt.png) !important;
}

.xls {
    background-image: url(img/ext/xls.png) !important;
}

.xlsx {
    background-image: url(img/ext/xlsx.png) !important;
}

.zip {
    background-image: url(img/ext/zip.png) !important;
}

#limit {
    margin: 0 0 10px 10px;
    width: auto;
}

.icon-first,
.icon-previous,
.icon-next,
.icon-last {
    padding: 0 !important;
    margin-bottom: 0 !important;
    opacity: 1 !important;
}

.icon-first::before {
    content: 'Début';
}

.icon-previous::before {
    content: 'Précédent';
}

.icon-next::before {
    content: 'Suivant';
}

.icon-last::before {
    content: 'Fin';
}

/*INSCRIPTION LETTRE------------*/

#acymodifyform input[type=text],
#acymodifyform select {
    margin-bottom: 15px;
}

/*CONNEXION ELUS----------------*/

.login-description {
    margin-bottom: 30px;
}

.control-group {
    margin-bottom: 10px;
}

#souvenir {
    display: inline-block;
    padding: 10px 0;
    position: relative;
    top: -2px;
}

#oublie {
    margin-top: 15px;
    font-size: .9em;
}

/*module deconnection*/

#deconnexion {
    margin-top: 0px;
    padding-left: 22px;
    background: url(img/bonhomme.png) no-repeat;
    margin-bottom: 10px;
}

.login-greeting {
    float: left;
}

.logout-button {
    float: right;
}

.logout-button .btn {
    font-size: 1em;
    padding: 0;
    background: none;
    color: #2a9 !important;
}

/*MENU ELUS---------------------*/

#elu {
    background: #eee;
    height: 45px;
    margin-bottom: 30px;
    position: relative;
    z-index: 200;
    text-align: center;
    border-radius: 10px;
}

#elu li {
    display: block;
    float: left;
}

#elu a,
#elu .nav-header {
    display: block;
    position: relative;
    padding: 10px 20px 10px;
    height: 45px;
    background: none;
    font: 1em neob-web, sans-serif;
    text-align: left;
    border-radius: 0;
    color: #454 !important;
    border-right: 1px solid #ddd;
}

#elu a {
    padding-top: 12px;
}

/* Sous-Menu----------------------*/

#elu ul ul {
    position: absolute;
    top: 45px;
    width: 300px;
    background: #e8e8e8;
    display: none;
}

#elu ul ul li {
    display: block;
}

#elu ul ul a {
    display: block;
    width: 100%;
    height: auto;
    padding: 10px 15px;
    color: #fff;
    border: 0;
    font: 1em open-web, sans-serif;
}

/*COULEURS PAGES----------------*/

.vivre h1,
.vivre h2,
.vivre li::before,
.vivre a {
    color: #66c5cd;
}

.item-128 ul,
.vivre blockquote,
.vivre .bouton,
.vivre .btn,
.vivre em a,
.vivre tbody,
.vivre .toggler::before,
.vivre ol li::before,
.vivre .ic-info-box,
#colonne.vivre>div {
    background-color: #74cad1 !important;
}

.amenager h1,
.amenager h2,
.amenager li::before,
.amenager a {
    color: #6f9938;
}

.item-176 ul,
.amenager blockquote,
.amenager .bouton,
.amenager .btn,
.amenager em a,
.amenager tbody,
.amenager .toggler::before,
.amenager ol li::before,
.amenager .ic-info-box,
#colonne.amenager>div {
    background-color: #73a154 !important;
}

.entreprendre h1,
.entreprendre h2,
.entreprendre li::before,
.entreprendre a {
    color: #c8a82e;
}

.item-180 ul,
.entreprendre blockquote,
.entreprendre .bouton,
.entreprendre .btn,
.entreprendre em a,
.entreprendre tbody,
.entreprendre .toggler::before,
.entreprendre ol li::before,
.entreprendre .ic-info-box,
#colonne.entreprendre>div {
    background-color: #c8a82e !important;
}

.decouvrir h1,
.decouvrir h2,
.decouvrir li::before,
.decouvrir a {
    color: #81b75d;
}

.item-188 ul,
.decouvrir blockquote,
.decouvrir .bouton,
.decouvrir .btn,
.decouvrir em a,
.decouvrir tbody,
.decouvrir .toggler::before,
.decouvrir ol li::before,
.decouvrir .ic-info-box,
#colonne.decouvrir>div {
    background-color: #9cc16c !important;
}

.contraste h1,
.contraste h2,
.contraste li::before,
.contraste a,
.contraste #principal a,
.contraste #principal .nav-header,
#fil.contraste,
#fil.contraste a,
.contraste .gros-chiffre,
.contraste .article-info,
.contraste #reinit-decisions {
    color: #078;
}

.contraste#grands-projets h2,
.contraste#publications-accueil h2,
.contraste .ic-filter-submit-btn,
.contraste .ic-filter-reset-btn,
.contraste .toggle-gmapfp,
.contraste #tout-afficher,
.contraste .centrer,
.contraste .txt-carte,
.contraste #carte a {
    color: #078 !important;
}

.contraste a,
.contraste .toggle-gmapfp,
.contraste #reinit-decisions {
    text-decoration: underline;
}

.contraste a:hover,
.contraste .toggle-gmapfp:hover,
.contraste #reinit-decisions:hover {
    text-decoration: none;
    opacity: 1 !important;
}

.contraste .bouton,
.contraste em a {
    text-decoration: none;
}

.contraste blockquote,
.contraste .bouton,
.contraste .btn,
.contraste em a,
.contraste tbody,
.contraste .toggler::before,
.contraste ol li::before,
.contraste .ic-info-box,
.contraste#colonne>div,
.contraste .parent ul,
.contraste #contact,
.contraste.aussi,
.contraste .ic-filters,
.contraste#rapide,
.contraste.journal,
.contraste.message-important,
.contraste#en-avant .texte,
.contraste#grands-projets h3,
.contraste #slider-pub .a4,
footer.contraste,
.contraste #horaires,
.contraste #menu-footer,
.contraste #btnsearchbelow,
.contraste.actu li,
.contraste.lettre,
.contraste.accueil .toggle-gmapfp,
.contraste .filtrer,
.contraste .geoloc {
    background-color: #078 !important;
}

.contraste blockquote,
.contraste td,
#colonne.contraste,
#colonne.contraste h2,
.contraste #principal ul .nav-header,
.contraste.aussi,
.contraste th,
.contraste .ic-info-box,
.contraste .ic-filters,
.contraste.journal,
.contraste.journal h2,
.contraste.message-important,
footer.contraste,
footer.contraste h3,
.contraste.lettre a {
    color: #fff !important;
}

.contraste#en-avant .bouton {
    background-color: #fff !important;
}

.contraste blockquote a,
.contraste td a,
.contraste th a,
#colonne.contraste a,
#navigation.contraste a,
.contraste.aussi a,
.contraste .ic-info-box a,
.contraste .ic-filters a,
.contraste.journal a,
.contraste.actu li a,
.contraste.message-important a,
.contraste #slider-pub a,
footer.contraste a,
.contraste.accueil .toggle-gmapfp,
.contraste .btn,
.contraste#elu ul ul a {
    color: #ff0 !important;
}

.contraste tr:nth-child(2n) td {
    background: rgba(0, 0, 0, .15);
}

.contraste.lettre a {
    color: #fff !important;
}

.contraste .ic-date-div {
    background: #078;
}

.contraste *:focus-visible {
    outline: 4px solid #f00;
}

.egg {
    color: #454 !important;
    text-decoration: none !important;
    cursor: text;
}

/* TROMBINOSCOPES----------------*/

.trombi tbody {
    background: none !important;
}

.trombi tr {
    display: inline;
}

.trombi td {
    display: block;
    float: left;
    width: 166px;
    height: 390px;
    margin-right: 30px;
    padding: 0 !important;
    text-align: center;
    font-size: .85em;
    line-height: 1.1em;
    color: #454 !important;
    background: none !important;
}

.trombi img {
    margin-bottom: 5px;
}

.trombi strong {
    font-size: 1.15em;
    line-height: 1em;
    display: block;
    padding-bottom: 10px;
}

/* FOOTER---------------------*/

footer {
    background: #58c7be;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    color: #232;
}

footer a {
    color: #fff;
}

#adresse {
    -webkit-box-flex: 3;
    -ms-flex: 3;
    flex: 3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center;
}

#adresse h3 {
    font: 1.3em/1.1em neob-web, sans-serif;
    margin-bottom: 20px;
    padding-bottom: 5px;
    border-bottom: 4px solid;
    display: inline-block;
    text-align: center;
    color: #343;
}

#adresse .custom {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-right: 1px solid #3bb3a9;
    border-bottom: 1px solid #3bb3a9;
    padding: 30px 15px;
}

.adresse-v2 {
    text-align: left;
    padding: 32px 32px 32px 194px !important;
    position: relative;
}

.adresse-v2 p:first-child {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    overflow: hidden;
    position: absolute;
    top: 32px;
    left: 48px;
}

.adresse-v2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.adresse-v2 h3 {
    font: 1.6em/1.1em neob-web, sans-serif !important;
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    display: block !important;
    text-align: left !important;
    color: #343;
    max-width: 200px;
}

.adresse-v2 a {
    color: #343;
}

.adresse-v2 a[href*=mailto] {
    font-weight: normal;
    font-size: 1em;
}

#horaires {
    -webkit-box-flex: 100%;
    -ms-flex: 100%;
    flex: 100%;
    font: 1.3em/1.1em neob-web, sans-serif;
    background: #3bb3a9;
    color: #fff;
    padding: 15px 15px 18px;
}

#horloge {
    display: inline-block;
    background: url(img/horloge.png);
    width: 25px;
    height: 25px;
    margin-right: 5px;
    position: relative;
    top: 5px;
}

#menu-footer {
    flex: 1;
    padding: 28px 32px 30px;
    background: #1ca398 url(img/logo-bas.svg) no-repeat right bottom;
}

#menu-footer h3,
#menu-footer label {
    font: 1.05em/1.1em neob-web, sans-serif;
    margin-bottom: 8px;
    color: #fff;
}

#menu-footer .flex {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 28px;
}

#email-newsletter {
    flex: 1;
    border-radius: 8px 0 0 8px;
    font-size: .9em;
}

#menu-footer .bouton {
    padding: 12px;
    border-radius: 0 8px 8px 0;
    font-size: .9em;
    background: #58c7be;
}

.footer-droite img {
    margin-right: 8px;
}

.footer-droite a {
    font-size: .8em;
    color: #343;
}

.footer-droite a::after {
    display: none;
}

#haut {
    background: rgba(88, 199, 190,.7);
    width: 45px;
    height: 40px;
    padding: 0 5px 2px 0;
    position: fixed;
    bottom: 140px;
    right: 0;
    z-index: 20000;
    opacity: 0;
    border-radius: 5px 0 0 5px;
    transition: opacity .3s;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 10px rgba(0,0,0,.15);
}

#haut:hover {
    background: rgba(88, 199, 190,.9);
}
