html,
body {
	padding: 0;
	margin: 0;
	width: 100%
}

.piv .row {
  margin:0px;
}

.visuallyHidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px
}

a.passerContenu:focus{
    clip: rect(auto, auto, auto, auto);
    height: inherit;
    margin: inherit;
    position: static;
    color:#fff;
    margin-left:10px;
    width:150px;
    padding-left:10px;
}

.clearfix:after {
	content: " ";
	display: table;
	clear: both
}

.mobile {
	display: block
}

@media screen and (min-width: 1170px) {
	.mobile {
		display: none
	}
}

.desktop {
	display: none
}

@media screen and (min-width: 1170px) {
	.desktop {
		display: block
	}
}

.cacher {
	display: none !important
}

.contenu-fluide {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto
}

@media screen and (min-width: 1170px) {
	.contenu-fluide {
		padding-right: 0;
		padding-left: 0
	}
}

.piv .flex,
.piv .d-flex {
	display: -ms-flexbox !important;
	display: -webkit-box !important;
	display: flex !important
}

.align-items-center {
	-ms-flex-align: center !important;
	-webkit-box-align: center !important;
	align-items: center !important
}

.justify-content-end {
	-ms-flex-pack: end !important;
	-webkit-box-pack: end !important;
	justify-content: flex-end !important
}

.justify-content-start {
	-ms-flex-pack: start !important;
	-webkit-box-pack: start !important;
	justify-content: flex-start !important
}

.ligne {
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px
}

.piv {
	background: #095797;
	color: #fff;
}

.piv *,
.piv--blanc * {
	padding: 0;
	margin: 0;
	font-family: 'Roboto', sans-serif;
	font-size: 1em;
	font-size: 16px
}

.piv--blanc {
	background: #fff;
	color: #000;
	border-top: 8px solid #095797;
	margin-bottom: 2em
}

.piv ul.listePiv,
.piv--blanc ul.listePiv {
	list-style: none
}

.piv a {
	color: #fff;
	text-decoration: none
}

.piv a:hover {
	text-decoration: underline;
	color: #fff;
}

.piv--blanc a {
	color: #000;
	text-decoration: none
}

.piv--blanc a:hover {
	text-decoration: underline
}

.piv #lienOuvre,
.piv--blanc #lienOuvre {
	z-index: 99;
	width: 40px;
	height: 40px;
	text-align: center;
	margin-top: 0.2rem
}

@media screen and (min-width: 1170px) {
	.piv #lienOuvre,
	.piv--blanc #lienOuvre {
		margin-right: 0.7rem;
		margin-top: 0.4rem
	}
}

.piv #lienOuvre img,
.piv--blanc #lienOuvre img {
	width: 60%
}

.piv .titreM,
.piv--blanc .titreM {
	padding-bottom: 2%
}

@media screen and (min-width: 400px) {
	.piv .titreM,
	.piv--blanc .titreM {
		width: calc(100% - 160px)
	}
}

@media screen and (min-width: 460px) {
	.piv .titreM,
	.piv--blanc .titreM {
		width: calc(100% - 200px)
	}
}

@media screen and (min-width: 568px) {
	.piv .titreM,
	.piv--blanc .titreM {
		width: 100%
	}
}

.contenu-fixe {
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
}

@media screen and (min-width: 1170px) {
	.contenu-fixe {
		width: 1170px;
		margin: auto;
	}
}

.zone1,
.zone2,
.zone3 {
	position: relative;
	width: 100%
}

.zone1 {
	-ms-flex: 0 0 45%;
	-webkit-box-flex: 0;
	flex: 0 0 45%;
	max-width: 45%
}

@media screen and (min-width: 568px) {
	.zone1 {
		-ms-flex: 0 0 40%;
		-webkit-box-flex: 0;
		flex: 0 0 40%;
		max-width: 40%
	}
}

@media screen and (min-width: 768px) {
	.zone1 {
		-ms-flex: 0 0 25%;
		-webkit-box-flex: 0;
		flex: 0 0 25%;
		max-width: 25%
	}
}

@media screen and (min-width: 1170px) {
	.zone1 {
		max-width: 22%;
		max-height: 72px
	}
}

@media screen and (max-width: 1170px) {
       .contenu-fluide {
                padding-right: 0px;
                padding-left: 0px;
       }
}

.zone1 img {
	width: 100%
}

.zone2 {
	-ms-flex: 0 0 15%;
	-webkit-box-flex: 0;
	flex: 0 0 15%;
	max-width: 15%
}

@media screen and (min-width: 568px) {
	.zone2 {
		-ms-flex: 0 0 20%;
		-webkit-box-flex: 0;
		flex: 0 0 20%;
		max-width: 20%
	}
}

@media screen and (min-width: 768px) {
	.zone2 {
		-ms-flex: 0 0 35%;
		-webkit-box-flex: 0;
		flex: 0 0 35%;
		max-width: 35%
	}
}

@media screen and (min-width: 868px) {
	.zone2 {
		-ms-flex: 0 0 35%;
		-webkit-box-flex: 0;
		flex: 0 0 35%;
		max-width: 35%
	}
}

@media screen and (min-width: 1170px) {
	.zone2 {
		-ms-flex: 0 0 45%;
		-webkit-box-flex: 0;
		flex: 0 0 45%;
		max-width: 45%
	}
}

@media screen and (min-width: 1170px) {
	.zone2 .identite {
		width: 100%
	}
}

.zone3 {
	-ms-flex: 0 0 40%;
	-webkit-box-flex: 0;
	flex: 0 0 40%;
	max-width: 40%
}

@media screen and (min-width: 1170px) {
	.zone3 {
		-ms-flex: 0 0 30%;
		-webkit-box-flex: 0;
		flex: 0 0 33%;
		max-width: 33%
	}
}

@media screen and (max-width: 1170px) {
	.toggle_btn {
		height: 40px;
		width: 35px;
		position: relative;
		float: right;
		margin-top: 15px;
		cursor: pointer;
		z-index: 99
	}
	.toggle_btn span {
		height: 3px;
		background: #fff;
		width: 25px;
		position: absolute;
		top: 15px;
		left: 10px;
		border-radius: 100px
	}
	.toggle_btn span:before,
	.toggle_btn span:after {
		content: '';
		height: 3px;
		background: #fff;
		width: 100%;
		position: absolute;
		left: 0;
		top: -8px;
		border-radius: 100px
	}
	.toggle_btn span:after {
		top: 8px
	}
	.toggle_btn_open span {
		height: 0
	}
	.toggle_btn_open span:before,
	.toggle_btn_open span:after {
		content: '';
		height: 4px;
		background: #fff;
		width: 100%;
		position: absolute;
		left: 0;
		top: 0px;
		border-radius: 100px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg)
	}
	.toggle_btn_open span:after {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg)
	}
	.toggle_btn_open span,
	.toggle_btn_open span:before,
	.toggle_btn_open span:after {
		background: #fff
	}
	.piv--blanc .toggle_btn span,
	.piv--blanc .toggle_btn_open span,
	.piv--blanc .toggle_btn span:before,
	.piv--blanc .toggle_btn_open span:before,
	.piv--blanc .toggle_btn span:after,
	.piv--blanc .toggle_btn_open span:after {
		background: #000
	}
	.menu_mobile {
		padding-bottom: 5px;
		padding-top: 72px;
		background-color: #08416f;
		border-left: 3px solid #095797;
		width: 300px;
		position: absolute;
		right: -50px;
		top: 0;
		z-index: 90
	}
	.menu_mobile--site {
		background-color: #08416f
	}
	.menu_mobile--piv {
		background-color: #08497f;
		border-top: 1px solid #fff
	}
	.piv--blanc .menu_mobile {
		background: #ebebeb;
		border: none;
		padding-bottom: 0
	}
	.piv--blanc .menu_mobile--site {
		background: #ebebeb
	}
	.piv--blanc .menu_mobile--site a {
		color: black
	}
	.piv--blanc .menu_mobile--piv {
		background-color: #08497f;
		border-top: 1px solid #fff
	}
	.menu_mobile a {
		color: #fff;
		text-align: left;
		display: block;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-left: 20px;
		text-decoration: none
	}
	.nav {
		display: none;
		-webkit-transition-duration: 0.2s;
		transition-duration: 0.2s
	}
	.nav_open {
		display: block;
		-webkit-transition-duration: 0.2s;
		transition-duration: 0.2s
	}
}

.menu_mobile a {
	text-align: left;
	display: block;
	text-decoration: none
}

.pivFooter {
	text-align: center;
	margin-top: 1em;
	font-family: 'Roboto', sans-serif;
	font-size: 1em;
	font-size: 16px
}

.pivFooter ul {
	list-style: none;
	padding: 0;
	margin: 0
}

.pivFooter ul li {
	margin: 1% 0;
	font-size: 0.875em;
	font-size: 14px
}

@media only screen and (min-width: 1170px) {
	.pivFooter ul li {
		display: inline-block;
		margin: 0;
		margin-right: 10px
	}
}

.pivFooter a {
	color: gray;
	line-height: 25px
}

.pivFooter small {
	font-size: 0.625em;
	font-size: 10px
}

.pivFooter small a {
	color: black;
	text-decoration: none
}
