@font-face {
	font-family: 'magnolia_script';
	src: url('fonts/magnolia_script.eot');
	src: url('fonts/magnolia_script.eot?#iefix') format('embedded-opentype'),
		url('fonts/magnolia_script.woff2') format('woff2'),
		url('fonts/magnolia_script.woff') format('woff'),
		url('fonts/magnolia_script.ttf') format('truetype'),
		url('fonts/magnolia_script.svg#magnolia_scriptregular') format('svg');
	font-weight: normal;
	font-style: normal;
}

*{
	margin:0;
	padding:0;
	border:0;
}
.mobile,
.cacher{
	display:none;
}

.flex-container{
	display: flex;
}
.flex-item{
	flex:auto;
}

body{
	font-family:Verdana,Geneva,sans-serif;
	font-size:small;
	color:#000;
	background: #FFF;
}
/* Header */
#h_portail{
	display: flex;
	color:#2e4756;
	border-bottom:5px solid #ffb60b;
}
#h_portail_logo,
#h_portail_horaires{
	flex:2 40%;
	border-right:1px solid #ffb60b;
	padding:15px 0;
}
#h_portail_horaires p{
	padding:15px 2.5%;
}
#h_portail_logo h1,
#h_portail_logo h2{
	padding:0 3% 0 25%;
}
#h_portail_logo h1{
	font-size:2.5em;
}
#h_portail_logo h2{
	font-weight: normal;
	text-transform: uppercase;
	font-size:1em;
}
#h_portail_contact{
	flex:1 20%;
}
#h_portail_contact p{
	padding:30px 15px 0 15px;
}
#h_portail_contact a{
	color:#2e4756;
	text-decoration: none;
}
#h_portail_contact ul{
	display:flex;
	list-style:none;
	justify-content:center;
}
#h_portail_contact img{
	width:30px;
	margin:5px;
}
#h_photo{
	height: 500px;
	background-position: center;
	background-size: cover;
}
#h_photo.accueil{
	background-image:url(../images/ph-accueil.jpg);
}
#h_photo.ville{
	background-image:url(../images/ph-ma_ville.jpg);
}
#h_photo.sports_loisirs{
	background-image:url(../images/ph-sports_loisirs.jpg);
}
#h_photo.patrimoine{
	background-image:url(../images/ph-patrimoine.jpg);
}
#h_photo.tourisme{
	background-image:url(../images/ph-tourisme.jpg);
}
#h_photo h1{
	padding-top:120px;
	text-align:center;
	font-size:6em;
	color:#FFF;
	text-shadow:10px 10px 10px #000;
}
#h_photo h2{
	font-family: 'magnolia_script';
	text-align:center;
	font-size:5em;
	color:#ffb60b;
	text-shadow:10px 10px 10px #000;
}
div.h_triangle_photo{
	position: relative;
	z-index:3;
	margin-top:-30px;
	overflow: hidden;
}
div.h_triangle_photo div{
	height: 0;
	width:0;
	border-top: 15px solid transparent;
	border-right: 50vw solid #2e4756;
	border-bottom: 15px solid #2e4756;
	border-left: 50vw solid transparent;
}
#h_nav_portail{
	padding:0 10px 10px 10px;
	background: #2e4756;
	border-bottom:5px solid #ffb60b;
}
#h_nav_portail nav ul{
	display:flex;
	list-style:none;
	justify-content:center;
}
#h_nav_portail nav ul li{
	margin:0 1%;
	text-align:center;
}
#h_nav_portail a{
	display: block;
	font-weight: bold;
	text-transform: uppercase;
	text-decoration: none;
	color:#FFF;
}
#h_nav_portail nav ul li a img{
	height: 50px;
}
#h_nav_portail li.ville a,
#h_menu ul li.ville a,
#h_menumobile ul li.ville a,
#h_titre h1.ville{
	color:#00abe9;
}
#h_nav_portail li.sports_loisirs a,
#h_menu ul li.sports_loisirs a,
#h_menumobile ul li.sports_loisirs a,
#h_titre h1.sports_loisirs{
	color:#5c931c;
}
#h_nav_portail li.patrimoine a,
#h_menu ul li.patrimoine a,
#h_menumobile ul li.patrimoine a,
#h_titre h1.patrimoine{
	color:#C57041;//#84741e
}
#h_nav_portail li.tourisme a,
#h_menu ul li.tourisme a,
#h_menumobile ul li.tourisme a,
#h_titre h1.tourisme{
	color:#c11ded;
}
div.h_triangle_fin div{
	margin: 0 auto;
	height: 0;
	width:0;
	border-top: 15px solid #ffb60b;
	border-right: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid transparent;
}
#h_nav{
	background: #2e4756;
	padding-bottom:25px;
	border-bottom: 7px solid #ffb60b;
	display:flex;
	position:relative;
	z-index: 3;
}
#menu_bouton{
	flex:initial;
	width:40%;
	margin:25px 0 0 12.5%;
	color:#FFF;
	text-transform: uppercase;
	line-height: 25px;
	font-size: 1.5em;
	cursor: pointer;
}
#menu_bouton img{
	vertical-align: top;
	height: 25px;
}
#h_menu{
	flex:initial;
	width:60%;
}
#h_menu ul{
	display:flex;
	list-style: none;
}
#h_menu ul li{
	border-right:1px solid #FFF;
	padding:0 5px;
}
#h_menu ul li:last-child{
	border-right:0;
}
#h_menu ul li a{
	display: block;
	padding-top:25px;
	line-height: 25px;
	font-weight: bold;
	text-transform: uppercase;
	color:#FFF;
	text-decoration:none;
}
#h_ssmenu{
	position: absolute;
	z-index:2;
	padding:0 3%;
	width: 94%;
	height: 500px;
	display: flex;
	flex-wrap: wrap;
}
#h_ssmenu div.triangle{
	flex:3 100%;
	margin:0;
	padding:0;
}
#h_ssmenu div{
	flex:1 25%;
	margin-left:5%;
}
#h_ssmenu div h3{
	margin-top:40px;
	font-family: 'magnolia_script';
	font-size: 1.8em;
	font-weight: normal;
	color:#FFF;
}
#h_ssmenu div ul{
	list-style: none;
	margin-top:10px;
}
#h_ssmenu div ul li{
	margin-top:10px;
	color:#FFF;
}
#h_ssmenu div ul li:before{
	content:'> ';
}
#h_ssmenu div ul li a{
	color:#000;
	text-decoration: none;
}
#h_ssmenu div ul li a:hover{
	text-decoration: underline;
}
#h_ssmenu.ville{
	background:#00abe9;
}
#h_ssmenu.sports_loisirs{
	background:#5c931c;
}
#h_ssmenu.patrimoine{
	background:#C57041;//#84741e
}
#h_ssmenu.tourisme{
	background:#c11ded;
}
#h_ssmenu.legals{
	background:none;
	height: auto;
}
#h_titre{
	background: #2e4756;
	border-bottom: 7px solid #ffb60b;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	color:#FFF;
	font-family: 'magnolia_script';
	padding: 0 8%;
}
#h_titre h1{
	font-size: 4em;
	text-shadow:10px 10px 10px #000;
}
#h_titre p{
	padding: 25px 0;
	font-size: 1.3em;
	line-height: 30px;
}
#h_titre p img{
	height: 30px;
	margin:0 5px;
	vertical-align:text-bottom;
}
#h_titre p a{
	color: #FFF;
	text-decoration: none;
}
/* Footer */
#f_plume{
	margin:60px 0;
	height: 0;
	border-top:2px solid #2e4756;
	text-align: center;
}
#f_plume span{
	display: block;
	margin:-40px auto 0 auto;
	padding:15px;
	height: 50px;
	width: 50px;
	border:2px solid #2e4756;
	border-radius:50%;
	background: #FFF;
}
#f_plume span img{
	height: 50px;
}
#f_agenda{
	width:98%;
	padding:10px 1%;
	background: url(../images/bg-agenda.jpg);
}
article h1,
footer h2{
	margin:10px auto;
	text-align: center;
	color:#000;
	font-size: 2em;
	text-transform: uppercase;
}
article h2,
footer h3{
	margin:10px auto;
	text-align: center;
	font-family: 'magnolia_script';
	color:#2e4756;
	font-size: 2em;
}
#f_agenda h3{
	color:#FFF;
}
#f_agenda div.flex-container{
	margin:0 10%;
	flex-wrap: wrap;
	justify-content: space-around;

}
#f_agenda div.flex-container div{
	flex:initial;
	width:30%;
	margin:10px 0;
	background: #2e4756;
	color:#FFF;
}
#f_agenda div.flex-container div p{
	padding:5px 10px;;
}
#f_agenda h5{
	position: absolute;
	padding:3px;
	font-size: 1.5em;
	width:auto;
	background: rgba(255,255,255,0.7);
	color:#2e4756;
}
#f_agenda img{
	width:100%;
}
#f_agenda h4{
	padding:5px;
	min-height:30px;
}
#f_agenda a{
	color:inherit;
}
#f_agenda > p{
	text-align:center;
	margin:1em;
}
#f_agenda a.bouton {
	background:#ffb60b;
	border:0;
}
span.agenda_plus{
	float:right;
	display: block;
	margin-left:5px;
	width:30px;
	height:30px;
	background: #ffb60b;
	color:#000;
	font-weight: bold;
	font-size:1.8em;
	border-radius: 50%;
	line-height: 30px;
	text-align: center;
	cursor: pointer;
}
#f_en1clic{
	padding:50px 0;
}
#f_en1clic nav ul{
	width:80%;
	margin:20px auto 0 auto;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
#f_en1clic nav ul li{
	flex:initial;
	width:15%;
}
#f_en1clic nav ul li a{
	display: block;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: bold;
	color:#000;
}
#f_en1clic nav ul li img{
	width:100%;
	border-radius:50%;
	border:2px solid #2e4756;
	margin-bottom:10px;
}

#f_diaporama .bx-wrapper{
	margin:0;
	border: 0;
	-webkit-box-shadow: none;
  box-shadow: none;
}
#f_diaporama .bx-wrapper .bx-pager {
  bottom:10px;
}
#f_diaporama .bx-wrapper .bx-pager.bx-default-pager a {
  background: #ffb60b;
  border: 2px solid #ffb60b;
	border-radius:50%;
}
#f_diaporama .bx-wrapper .bx-pager.bx-default-pager a:hover,
#f_diaporama .bx-wrapper .bx-pager.bx-default-pager a.active,
#f_diaporama .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #2e4756;
}
#f_diaporama .slider div img {
  width:100%;
}
#f_mentions{
	padding:10px;
	background:#2e4756;
	color:#FFF;
	text-align: center;
}
#f_mentions a{
	color:#FFF;
	text-decoration: none;
}
#f_mentions a:hover{
	text-decoration: underline;
}
/* Portail */

#actualites div.actualite{
	display:none;
}
#actualites div.actualite.active{
	width:100%;
	margin:20px auto;
	display: flex;
	justify-content: space-around;
}
#actualites .actualite_img{
	flex:initial;
	width:60%;
}
#actualites .actualite_txt{
	flex:initial;
	width:35%;
	margin:0 auto;
	height: 500px;
	padding-right:10px;
	overflow: auto;
}
#actualites .actualite_txt h3{
	margin-bottom: 20px;
	font-size: 2em;
	font-weight: normal;
}
#actualites .actualite_txt p{
	margin-bottom: 20px;
	font-size: 1.2em;
}
#actualites_list ul{
	width:100%;
	margin:20px auto 0 auto;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
#actualites_list li{
	flex:initial;
	width:23%;
	text-align: center;
	cursor: pointer;
}
#actualites_list li img{
	width:100%;
}
#actualites_list li h4{
font-size: 1.3em;
font-weight: normal;
}
section article{
	width:80%;
	margin:0 auto;
}
section article h3{
	margin:10px auto;
	color:#2e4756;
	font-size: 1.5em;
}
section article div.parag{
	width:100%;
	margin:20px auto;
	display: flex;
	justify-content: space-between;
}
section article div.parag div.paragtxt{
	order:1;
}
section article div.parag a.paragd,
section article div.parag a.paragg{
	order:2;
		margin: 0 0 0 10px;
}
section article div.parag a.paragg{
	order:0;
	margin: 0 10px 0 0;
}
section article ul li{
	list-style-position: inside;
}
/* Agenda */
#agenda{
	width:100%;
}
/* Fichiers */
table.fichiers{
	width:100%;
	margin:10px auto;
	border: 0;
	border-collapse: collapse;
	background-color: #FFF;
}
table.fichiers th{
	color: #FFF;
	font-size: 12px;
	font-weight: bold;
	text-align : left;
	background-color: #2e4756;
	padding:3px;
}
table.fichiers tr{
	border-bottom:1px solid #00abe9;
}
table.fichiers tr:nth-child(even){
	background:#EEF;
}
table.fichiers td{
	border: 0;
	vertical-align : top;
	padding:3px;
}
/* Annuaires */
table.annuaires{
	width:100%;
	margin:10px auto;
	border: 0;
	border-collapse: collapse;
	background-color: #FFF;

}
table.annuaires th{
	color: #FFF;
	font-size: 12px;
	font-weight: bold;
	text-align : left;
	background-color: #2e4756;
	padding:3px;
}
table.annuaires tr{
	border-bottom:1px solid #00abe9;
}
table.annuaires tr:nth-child(even){
	background:#EEF;
}
table.annuaires td{
	border: 0;
	vertical-align : top;
	padding:3px;
	color:inherit;
}
table.annuaires td:nth-child(3){
	width:50%;
}
/* marché publics */
#marches_types{
	text-align:center;
}
#marches_types a{
	margin:5px;
}
table.marchespublics{
	width:100%;
	margin:10px auto;
	border: 0;
	border-collapse: collapse;
	background-color: #FFF;

}
table.marchespublics th{
	color: #FFF;
	font-size: 12px;
	font-weight: bold;
	text-align : left;
	background-color: #3F6992;
	padding:3px;
}
table.marchespublics tr{
	border-bottom:1px solid #00abe9;
}
table.marchespublics tr:nth-child(even){
	background:#EEF;
}
table.marchespublics td{
	border: 0;
	vertical-align : top;
	padding:3px;
}
#marche_details{
	display: flex;
	justify-content:space-between;
}
aside{
	width:30%;
	margin-left:3%;
	border-left:1px solid #3F6992;
}
aside h3{
	padding:10px;
}
#marches_publics_f p{
	margin:0;
	padding:0 10px;
}
#marches_publics_f label{
	text-align:right;
}
#marches_publics_f select,
#marches_publics_f input,
#marches_publics_f textarea{
	width:90%;
	padding: 1px 3px;
	background-color: #FFF;
	border: 1px solid #3F6992;
	font-size: 14px;
	line-height:140%;
	color: #000;
	font-family:inherit;
}
#marches_publics_f p.validation {
	padding-top:20px;
	text-align:center;
}

.bouton,
#marches_publics_f .bouton,
#f_contact .bouton{
	width:auto;
	padding:5px;
	background-color:#3F6992;
	border: 2px solid #00abe9;
	font-weight: bold;
	font-family: inherit;
	font-size: 14px;
	color: #FFF;
	text-decoration:none;
	cursor: pointer;
}
.bouton.active,
.bouton:hover,
#marches_publics_f .bouton:hover{
	background:#00abe9;
}

#f_contact p{
	margin:10px 0;
	display: flex;
	flex-wrap: wrap;
}
#f_contact p label{
	width:20%;
}
#f_contact select,
#f_contact input,
#f_contact textarea{
	width:70%;
	padding: 1px 3px;
	background-color: #FFF;
	border: 1px solid #3F6992;
	font-size: 14px;
	line-height:140%;
	color: #000;
	font-family:inherit;
}

article a{
	color:#3F6992;
}
article a:hover{
	color:#00abe9;
}

@keyframes anim-rgpd {
	from {bottom: -100px;}
	to {bottom: 0;}
}
#rgpd{
	position:fixed;
	background-color:rgba(46,71,86,1);
	color:#fff;
	bottom:0;
	width:100%;
	min-height:50px;
	z-index:9999;
	animation-name: anim-rgpd;
	animation-duration: 1s;
}
#rgpd span.rgpd-fermer{
	position:absolute;
	display:block;
	right:0;
	top:0;
	margin:5px;
	padding:3px;
	width:auto;
	cursor:pointer;
}
#rgpd>div{
	max-width:1200px;
	padding:10px 20px 10px 10px;
	margin:0 auto
}
#rgpd p a{
	text-decoration:underline;
	color:#fff;
}
#rgpd_f button{
	border:1px solid #000;
	padding:3px;
}
#rgpd_f p{
	margin:10px 0;
}


@media screen and (max-width: 960px) { /* Tablettes */
	/*.mobile{
		display:block;
	}
	.mobile_no{
		display:none !important;
	}*/
	#h_portail_logo{
		flex:2 30%;
	}
	#h_portail_logo h1,
	#h_portail_logo h2{
		padding: 0 3% 0 10%;
	}
	#h_portail_contact{
		width:30%;
	}
	#actualites div.actualite.active{
		display:block;
	}
	#actualites .actualite_img{
		width:100%;
	}
	#actualites .actualite_txt{
		width:100%;
	}
}
@media screen and (max-width: 600px) { /* Smartphones */
	.mobile{
		display:block;
	}
	.mobile_no{
		display:none !important;
	}

	#h_portail{
		flex-direction:column;
	}
	#h_portail_logo{
		padding:5px;
		border-right:0;
		border-bottom:1px solid #ffb60b;
	}
	#h_portail_logo h1,
	#h_portail_logo h2{
		padding:5px 0;
		text-align: center;
	}
	#h_portail_horaires{
		display:none;
	}
	#h_portail_contact{
		width:100%;
	}
	#h_portail_contact p{
		padding:5px;
		line-height: 30px;
	}
	#h_portail_contact ul{
		float:right;
		margin-top:-40px;
	}
	#h_photo h1 {
		font-size:3.5em;
		margin:0 5%;
		text-shadow: 6px 6px 10px #000;
	}
	#h_photo h2 {
		font-size: 4em;
		white-space: pre;
	}
	#h_nav_portail a {
		font-size:0.8em;
	}
	#h_nav{
		background: #2e4756;
		padding-bottom:25px;
		border-bottom: 7px solid #ffb60b;
		display:flex;
		justify-content:space-between;
	}
	#h_nav h1{
		color:#FFF;
		margin:25px 3% 0 3%;
		line-height: 25px;
	}
	#menu_bouton{
		margin:25px 3% 0 3%;
		width:auto;
	}
	#h_ssmenu{
		z-index:5;
		height:auto;
		padding:0 0 20px 0;
		width:100%;
	}

	#h_menumobile{
		width:100%;
		background: #2e4756;
	}
	#h_menumobile ul li{
		border-bottom:1px solid #FFF;
		padding:0 5px;
	}
	#h_menumobile ul li:last-child{
		border-right:0;
	}
	#h_menumobile ul li a{
		display: block;
		padding:5px;
		line-height: 25px;
		font-weight: bold;
		text-transform: uppercase;
		color:#FFF;
		text-decoration:none;
	}
	#h_ssmenu div{
		flex:1 80%;
		margin:0 5%;
	}
	#h_ssmenu div h3{
		margin-top:10px;
	}
	#h_ssmenu p{
		margin:20px auto 0 auto;
		color:#FFF;
	}
	#h_ssmenu p img{
		height: 30px;
		margin:0 5px;
		vertical-align:text-bottom;
	}
	#h_ssmenu p a{
		color: #FFF;
		text-decoration: none;
	}
	#h_titre{
		flex-direction: column;
		text-align: right;
	}
	#actualites div.actualite.active{
		width:94%;
	}
	#f_agenda div.flex-container {
		margin:0 4%;
	}
	#f_agenda div.flex-container div {
		width:100%;
	}
	#f_en1clic nav ul {
		width:94%;
	}
	#f_en1clic nav ul li {
		width:40%;
	}
	#actualites_list ul {
		width: 94%;
	}
	#actualites_list li {
		width:45%;
	}
	#actualites_list li h4{
		font-size:1em;
		margin-bottom:10px;
	}

	section article div.parag{
		width:98%;
		flex-direction: column;
	}
	section article div.parag a.paragd,
	section article div.parag a.paragg{
		order:0;
		margin:0 0 5px 0;
		width:100%;
		text-align: center;
	}
	section article div.parag a.paragd img,
	section article div.parag a.paragg img{
		width:100%;
	}
	/*
	article div.parag a.paragd{
		order:0;
	}
	*/

	table.fichiers,
	table.annuaires{
		width:100%;
	}
	table.annuaires td:nth-of-type(2){
		word-break: break-all;
	}

	#marche_details{
		flex-wrap: wrap;
	}
	aside{
		width:100%;
		margin-left:0;
		border-left:0;
	}


	#f_contact p label{
		width:100%;
	}
	#f_contact select,
	#f_contact input,
	#f_contact textarea{
		width:100%;
	}
}
