body {
	background-image: url("../../images/dots_rouges.png");
}

/*-------------------------------------- Utils ---------------------------------------*/

section#content h2 {
	position: relative;
	width: 100%;
  margin: 30px auto 40px;
	padding: 0;
	font-size: 25px;
  color: var(--second-color);
	background-color: initial;
	text-align: center;
	text-transform: uppercase;
}

section#content h2::after {
	position: absolute;
	display: block;
	content: "";
  width: 20%;
  left: 40%;
	top: 37px;
  border-bottom: 2px solid var(--second-color);
}

section#content article > h3 {
	display: table;
  margin: 0 0 15px -40px;
  padding: 11px 15px 10px;
	background: none;
  background-color: var(--first-color);
	font-size: 19px;
  text-transform: uppercase;
  color: #fff;
}

h4 {
  display: table;
  margin: 0 0 10px -15px;
  padding: 6px 10px;
  font-family: var(--font-bold);
  font-size: 18px;
  color: var(--first-color);
	border: 1.5px solid var(--first-color);
	text-transform: uppercase;
}

h5 {
  margin: 0 0 10px 15px;
  padding-left: 10px;
	font-size: 16px;
	text-transform: uppercase;
	color: var(--second-color);
	background: url("../../images/icons/cercle_gris.png") 0 50% no-repeat;
	background-size: 5px;
	color: var(--second-grey-color);
}

h6 {
  margin: 0 0 15px 0px;
	font-weight: bold;
	color: var(--second-grey-color);
}

div.info {
	margin-bottom: 20px;
	font-family: var(--font-regular-italic);
	color: var(--first-color);
	text-indent: 12px;
	background: url("../../images/icons/fleche_droit_rouge.png") 0 4px no-repeat;
	background-size: 10px;
}

/*-------------------------------------- Wrapper ---------------------------------------*/

#wrapper {
	min-height: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding-bottom: 70px;
	background-color: #fff;;
}

/*-------------------------------------- Header ---------------------------------------*/

header {
	z-index: 10;
	//position: fixed;
	padding: 10px 50px;
  width: 1280px;
  height: 140px;
	top: 0;
  background-color: #fff;
	text-align: center;
}

header #logo {
  display: inline-block;
  width: 120px;
  height: 100%;
	margin: 0 auto;
	padding-right: 20px;
	vertical-align: middle;
	border-right: 1px solid var(--border-color);
}

header #logo > a {
	display: block;
  width: 100%;
  height: 100%;
  background: url("../../images/logo_frontend.png") 50% 0 no-repeat;
  background-size: 100px auto;
}

header #titre {
	display: inline-block;
	margin: 0 0 0 10px;
	vertical-align: middle;
}

header #titre p {
  text-transform: uppercase;
  font-family: var(--font-bold-italic);
  padding: 2px 0 0 0;
  font-size: 20px;
  color: var(--second-grey-color);
	text-align: left;
}

header nav#responsive {
	display: none;
	height: 100%;
	vertical-align: top;
	margin-left: 10px;
	border-left: 1px solid var(--border-color);
}

header nav#responsive ul {
	height: 100%;
}

header nav#responsive ul li {
	float: left;
	height: 100%;
}

header nav#responsive ul li:hover,
header nav#responsive ul li.active {
	background-color: var(--second-color);
}

header nav#responsive ul li:last-child {
	margin-right: 0;
}

header nav#responsive a {
	display: block;
	height: 100%;
}

header nav#responsive a.menu {
	width: 44px;
	background: url("../../images/icons/menu_gris.png") 50% 50% no-repeat;
	background-size: 28px;
}

header nav#responsive li:hover a.menu,
header nav#responsive li.active a.menu {
	background: url("../../images/icons/menu_blanc.png") 50% 50% no-repeat;
	background-size: 28px;
}

header nav#responsive a.profil {
	width: 42px;
	background: url("../../images/icons/candidat_gris.png") 50% 50% no-repeat;
	background-size: 22px;
}

header nav#responsive li:hover a.profil,
header nav#responsive li.active a.profil {
	background: url("../../images/icons/candidat_blanc.png") 50% 50% no-repeat;
	background-size: 22px;
}

header nav#responsive a.deconnexion {
	width: 45px;
	background: url("../../images/icons/deconnexion_gris.png") 50% 50% no-repeat;
	background-size: 28px;
}

header nav#responsive li:hover a.deconnexion,
header nav#responsive li.active a.deconnexion {
	background: url("../../images/icons/deconnexion_blanc.png") 50% 50% no-repeat;
	background-size: 28px;
}

header nav#responsive a p {
	display: none;
}

/* ---------------------------------------- CONTAINER --------------------------------------- */

header +  #container {
	margin-top: 20px;
}

#container {
	display: block;
	width: 96%;
	margin: 0 auto;
}

#wrapper.visiteur #container {
	width: auto;
	padding-top: 0;
}

/* ------------------------------------------ MENU ------------------------------------------ */
/*-------------------------------------- Menu visiteur ---------------------------------------*/

nav#menu_visiteur {
	position: absolute;
	top: 160px;
	padding: 0 40px;
	width: 1280px;
	height: 47px;
  background-color: var(--first-color);
}

nav#menu_visiteur:before {
	content: "";
	position: absolute;
	width: 25px;
	height: 47px;
	left: -25px;
	background-color: var(--first-color);
}

nav#menu_visiteur:after {
	content: "";
	position: absolute;
	width: 25px;
	height: 47px;
	top: 0;
	right: -25px;
	background-color: var(--first-color);
}

nav#menu_visiteur ul li {
	display: inline-block;
	list-style: none;
}

nav#menu_visiteur ul.level_1 > li:hover,
nav#menu_visiteur ul.level_1 > li.active {
  background-color: var(--second-color);
}

nav#menu_visiteur ul li a {
  display: block;
  width: 100%;
  height: 100%;
}

nav#menu_visiteur ul li:hover > a {
  text-decoration: none;
}

nav#menu_visiteur ul.level_1 {
	font-size: 17px;
}

nav#menu_visiteur ul.level_1 > li > a:hover,
nav#menu_visiteur ul.level_1 > li.active > a {
  color: #fff;
}

nav#menu_visiteur ul.level_1 > li > a {
	padding: 15px 10px;
  font-family: var(--font-regular);
  text-transform: uppercase;
  color: #fff;
}

/*------------------------------------- Connexion -----------------------------------------*/

.connexion {
	padding: 0 !important;
	background-color: initial !important;
	box-shadow: none !important;
	border: none !important;
	height: 400px;
	background: url("../../images/fond.png") 50% 50% no-repeat;
  background-size: 400px;
}

.connexion > div {
	width: 200px;
	margin: 0 auto;
	padding: 80px 0;
}

.connexion form input {
	width: 100%;
}

.connexion form li:last-child {
	margin-bottom: 5px !important;
}

.connexion form a {
	display: block;
	margin-bottom: 5px;
	font-family: var(--font-regular-italic);
	font-size: 16px;
}

.connexion > div > a {
	width: 100%;
	margin-top: 15px;
	text-align: center;
}

/*------------------------------------ Aside + Profil --------------------------------------*/

aside#left {
	display: block;
	float: left;
	width: 22%;
}

section#profil {
	margin-bottom: 10px;
	padding: 10px;
	border: 1.5px solid var(--second-color);
}

section#profil h2 {
	margin: 0 0 10px -10px;
	padding: 10px 10px 7px;
	font-size: 17px;
}

section#profil h3 {
	margin-bottom: 10px;
	background: url("../../images/icons/fleche_droit_rouge.png") 0 35% no-repeat;
	background-size: 12.5px;
	text-transform: initial;
	color: var(--first-color);
}

section#profil table.table tr td,
section#profil table.table tr th {
	padding: 8px 10px 6px;
}

section#profil table.table tr td,
section#profil table.table tr th {
	font-size: 15px;
}

section#profil table.table tr td.upper {
	font-size: 14px;
}

section#profil table tbody > tr > th:first-child {
	border-left: 0;
	text-transform: none;
	font-family: var(--font-regular);
}

section#profil table.table a > span.voir_blanc {
	display: inline-block;
	width: 25px;
	height: 14px;
	margin-left: 5px;
	vertical-align: -1px;
	background-size: 26px;
}

section#profil table.table a:hover > span.voir_blanc {
	background: url("../../images/icons/oeil_blanc.png") 50% no-repeat;
	background-size: 26px;
}

/*-------------------------------------- Menu candidat ---------------------------------------*/

nav#menu {
	display: block;
	width: 100%;
	border: 1px solid var(--border-color);
	background-color: #fff;
}

nav#menu ul li {
	list-style: none;
	border-bottom: 1px solid #eeeeee;
}

nav#menu ul li:last-child {
	border-bottom: none;
}

nav#menu ul.level_1 > li:hover,
nav#menu ul.level_1 > li.active {
  background-color: var(--second-color);
}

nav#menu ul.level_1 > li.rouge:hover,
nav#menu ul.level_1 > li.active.rouge {
  background-color: var(--first-color);
}

nav#menu ul li a {
  display: block;
  width: 100%;
  height: 100%;
}

nav#menu ul li:hover > a {
  text-decoration: none;
}

nav#menu ul.level_1 {
	font-size: 17px;
}

nav#menu ul.level_1 > li > a:hover,
nav#menu ul.level_1 > li.active > a,
nav#menu ul.level_1 > li.bleu > a:hover,
nav#menu ul.level_1 > li.active.bleu > a,
nav#menu ul.level_1 > li.rouge > a:hover,
nav#menu ul.level_1 > li.active.rouge > a {
  color: #fff;
}

nav#menu ul.level_1 > li > a {
	padding: 11px 0 10px 40px;
  font-family: var(--font-regular);
	font-size: 16px;
  text-transform: uppercase;
  color: var(--second-grey-color);
}

nav#menu ul.level_1 > li.bleu > a {
	color: var(--second-color);
}

nav#menu ul.level_1 > li.rouge > a {
	color: var(--first-color);
}

nav#menu ul.level_2 {
	display: none;
	width: 100%;
	background-color: #f7fcfd;
	font-size: 18px;
}

nav#menu ul.level_1 > li.active > ul.level_2 {
	display: block;
}

nav#menu ul.level_2 > li {
	height: 33px;
	line-height: 33px;
}

nav#menu ul.level_2 > li:first-of-type {
	border-top: 1px solid #d9d9d9;
}

nav#menu ul.level_2 > li a {
	padding-left: 36px;
	list-style: none;
	font-family: var(--font-regular-italic);
	color: var(--second-color);
}

nav#menu ul.level_2 > li:hover > a {
	font-family: var(--font-bold-italic);
}

nav#menu ul.level_2 > li a.active {
	font-family: var(--font-bold-italic);
	border-left: 4px solid var(--second-color);
}

nav#menu ul.level_2 > li a.active.rouge {
	font-family: var(--font-bold-italic);
	border-left: 4px solid var(--first-color);
}

nav#menu ul.level_2 > li a.rouge {
	color: var(--first-color);
}

nav#menu a.accueil {
  background: url("../../images/icons/accueil_gris.png") 10px 40% no-repeat;
  background-size: 20px;
}
nav#menu a.accueil.bleu {
  background: url("../../images/icons/accueil_bleu.png") 14px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.accueil.rouge {
  background: url("../../images/icons/accueil_rouge.png") 14px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.accueil:hover, nav#menu li.active a.accueil {
  background: url("../../images/icons/accueil_blanc.png") 10px 40% no-repeat;
  background-size: 20px;
}
nav#menu a.dossier {
  background: url("../../images/icons/candidat_gris.png") 12px 40% no-repeat;
  background-size: 16px;
}
nav#menu a.dossier.bleu {
  background: url("../../images/icons/candidat_bleu.png") 12px 40% no-repeat;
  background-size: 16px;
}
nav#menu a.dossier.rouge {
  background: url("../../images/icons/candidat_rouge.png") 12px 40% no-repeat;
  background-size: 16px;
}
nav#menu a.dossier:hover, nav#menu li.active a.dossier {
  background: url("../../images/icons/candidat_blanc.png") 12px 40% no-repeat;
  background-size: 16px;
}
nav#menu a.choixdesepreuves {
  background: url("../../images/icons/epreuve_gris.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.choixdesepreuves.bleu {
  background: url("../../images/icons/epreuve_bleu.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.choixdesepreuves.rouge {
  background: url("../../images/icons/epreuve_rouge.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.choixdesepreuves:hover, nav#menu li.active a.choixdesepreuves {
  background: url("../../images/icons/epreuve_blanc.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.choixdaffectation {
  background: url("../../images/icons/liste_gris.png") 12px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.choixdaffectation.bleu {
  background: url("../../images/icons/liste_bleu.png") 12px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.choixdaffectation.rouge {
  background: url("../../images/icons/liste_rouge.png") 12px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.choixdaffectation:hover, nav#menu li.active a.choixdaffectation {
  background: url("../../images/icons/liste_blanc.png") 12px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.piecescomplementaires {
  background: url("../../images/icons/download_gris.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.piecescomplementaires.bleu {
  background: url("../../images/icons/download_bleu.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.piecescomplementaires.rouge {
  background: url("../../images/icons/download_rouge.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.piecescomplementaires:hover, nav#menu li.active a.piecescomplementaires {
  background: url("../../images/icons/download_blanc.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.questionnaires {
  background: url("../../images/icons/question_gris.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.questionnaires.bleu {
  background: url("../../images/icons/question_bleu.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.questionnaires.rouge {
  background: url("../../images/icons/question_rouge.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.questionnaires:hover, nav#menu li.active a.questionnaires {
  background: url("../../images/icons/question_blanc.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.bourse {
  background: url("../../images/icons/bourse_gris.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.bourse.bleu {
  background: url("../../images/icons/bourse_bleu.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.bourse.rouge {
  background: url("../../images/icons/bourse_rouge.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.bourse:hover, nav#menu li.active a.bourse {
  background: url("../../images/icons/bourse_blanc.png") 10px 40% no-repeat;
  background-size: 22px;
}
nav#menu a.amenagementdepreuves {
  background: url("../../images/icons/temps_gris.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.amenagementdepreuves.bleu {
  background: url("../../images/icons/temps_bleu.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.amenagementdepreuves.rouge {
  background: url("../../images/icons/temps_rouge.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.amenagementdepreuves:hover, nav#menu li.active a.amenagementdepreuves {
  background: url("../../images/icons/temps_blanc.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.paiement {
  background: url("../../images/icons/paiement_gris.png") 12px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.paiement.bleu {
  background: url("../../images/icons/paiement_bleu.png") 12px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.paiement.rouge {
  background: url("../../images/icons/paiement_rouge.png") 12px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.paiement:hover, nav#menu li.active a.paiement {
  background: url("../../images/icons/paiement_blanc.png") 12px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.recepisse {
  background: url("../../images/icons/recepisse_gris.png") 10px 45% no-repeat;
  background-size: 21px;
}
nav#menu a.recepisse.bleu {
  background: url("../../images/icons/recepisse_bleu.png") 10px 45% no-repeat;
  background-size: 21px;
}
nav#menu a.recepisse.rouge {
  background: url("../../images/icons/recepisse_rouge.png") 10px 45% no-repeat;
  background-size: 21px;
}
nav#menu a.recepisse:hover, nav#menu li.active a.recepisse {
  background: url("../../images/icons/recepisse_blanc.png") 10px 45% no-repeat;
  background-size: 21px;
}
nav#menu a.convocation {
  background: url("../../images/icons/examen_gris.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.convocation.bleu {
  background: url("../../images/icons/examen_bleu.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.convocation.rouge {
  background: url("../../images/icons/examen_rouge.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.convocation:hover, nav#menu li.active a.convocation {
  background: url("../../images/icons/examen_blanc.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.resultats {
  background: url("../../images/icons/deliberation_gris.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.resultats.bleu {
  background: url("../../images/icons/deliberation_bleu.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.resultats.rouge {
  background: url("../../images/icons/deliberation_rouge.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.resultats:hover, nav#menu li.active a.resultats {
  background: url("../../images/icons/deliberation_blanc.png") 10px 45% no-repeat;
  background-size: 22px;
}
nav#menu a.sedeconnecter {
  background: url("../../images/icons/deconnexion_gris.png") 14px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.sedeconnecter.bleu {
  background: url("../../images/icons/deconnexion_bleu.png") 14px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.sedeconnecter.rouge {
  background: url("../../images/icons/deconnexion_rouge.png") 14px 45% no-repeat;
  background-size: 19px;
}
nav#menu a.sedeconnecter:hover, nav#menu li.active a.sedeconnecter {
  background: url("../../images/icons/deconnexion_blanc.png") 14px 45% no-repeat;
  background-size: 19px;
}

/*-------------------------------------- Main content ---------------------------------------*/

#container #main_content {
	display: block;
	float: right;
	width: 76%;
}

#wrapper.visiteur #container #main_content {
	display: block;
	width: 100%;
	margin-top: 120px;
}

#wrapper.visiteur #container_visiteur #main_content {
	display: block;
	width: 100%;
	margin: 80px auto 0;
}

nav#ariane {
  margin: 10px 0;
}

#container #messages {
	margin: 10px 0;
}

#wrapper #container section#content,
#wrapper.visiteur #container section#content,
#wrapper.visiteur #container_visiteur section#content {
	display: block;
	margin: 0 auto 20px;
}

#wrapper.visiteur #container section#content {
	width: 72%;
}

#wrapper.visiteur #container_visiteur section#content {
	width: 95%;
}

#container section#content {
	width: 100%;
}

div.clearfix section#content {
  width: 100%;
	margin-bottom: 70px;
}

section#content article .left {
	float: left;
	width: 50%;
	padding-right: 30px;
	border-right: 1px solid var(--border-color);
}

section#content article .right {
	float: right;
	width: 50%;
	padding-left: 30px;
}

/*-------------------------------------- Table ---------------------------------------*/

section#content article table.accueil {
	margin: 20px 0 0;
	border: none;
}

section#content article table.accueil tr {
	border-bottom: 5px solid #fff;
}

section#content article table.accueil tr:last-child {
	border-bottom: none;
}

section#content article table.accueil th {
	vertical-align: middle;
}

section#content article table.accueil th,
section#content article table.accueil td {
	border: none;
}

/*-------------------------------------- Footer ---------------------------------------*/

footer {
	position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 55px;
  background-color: #fff;
  border-top: 1px solid var(--border-color);
}

/*-------------------------------------- Responsive ---------------------------------------*/
@media screen and (max-width: 1280px) {
	header {
		padding: 10px 30px;
		width: 100%;
		text-align: left;
	}

	section#profil {
		padding: 0;
		border: none;
	}

	#wrapper {
		max-width: 880px;
	}

	nav#menu_visiteur {
		width: 880px;
	}

	nav#menu ul.level_1 {
		font-size: 15px;
	}

	nav#menu ul.level_2 > li a {
		padding-left: 20px;
		font-size: 16px;
	}
}

@media screen and (max-width: 1024px) {
	h2 {
		margin: 0 0 15px -20px;
		padding: 10px 10px 9px 20px;
		font-size: 18px;
	}

	nav#menu ul.level_1 > li > a {
		padding: 12px 10px;
	}

	nav#menu ul.level_1 > li > a {
		padding: 10px 8px;
		font-size: 14px;
	}

	nav#menu ul.level_1 > li > a,
	nav#menu ul.level_1 > li:hover > a,
	nav#menu ul.level_1 > li.active > a,
	nav#menu ul.level_1 > li.active:hover > a,
	nav#menu ul.level_1 > li.bleu > a,
	nav#menu ul.level_1 > li.bleu:hover > a,
	nav#menu ul.level_1 > li.rouge > a,
	nav#menu ul.level_1 > li.rouge:hover > a {
		background-size: 0;
	}

	nav#ariane {
		margin: 10px 0;
	}

	section#content article {
		padding: 20px;
	}

	section#content article > h3 {
	  margin: 0 0 15px -30px;
	}
}

@media screen and (max-width: 900px) {
	#wrapper {
		max-width: 100%;
		padding-top: 5px;
		padding-bottom: 0;
	}

	#wrapper.visiteur {
		min-height: 100%;
		margin-top: 0;
		padding-top: 0;
	}

	header {
		position: fixed;
		height: 50px;
		padding: 0;
		border-bottom: 1px solid var(--fourth-color);
	}

	header #logo {
		width: 62px;
		padding-right: 0;
	}

	header #logo > a {
		background-size: 58px auto;
		background-position: 50% 0;
	}

	header #titre {
		margin: 0 0 0 2px;
	}

	header #titre h1 {
		font-size: 18px;
	}

	header #titre p {
		font-size: 15px;
	}

	header nav#responsive {
		display: inline-block;
	}

	header + #container {
		margin-top: 55px;
	}

	#container {
		padding-bottom: 150px;
	}

	#wrapper.visiteur #container {
		width: 94%;
	}

	#wrapper.visiteur #container {
		padding: 50px 0 0 0;
		margin-top: 0;
	}

	aside#left {
		position: fixed;
		z-index: 2;
		overflow: auto;
		left: 0;
		top: 50px;
		width: 300px;
		height: 100%;
		background-color: #f7fcfd;
		border-right: 1px solid var(--fourth-color);
	}

	aside#left section#profil .table,
	aside#left section#profil .table thead tr th,
	aside#left section#profil .table tbody tr th {
		border-left: 0 !important;
		border-right: 0 !important;
	}

	aside#left section#profil .table td.table_in_row {
		border-left: 0 !important;
	}

	aside#left section#profil .table,
	aside#left section#profil .table thead tr td,
	aside#left section#profil .table tbody tr td {
		border-right: 0 !important;
	}

	nav#menu {
		border: 0;
		border-bottom: 1px solid var(--border-color);
	}

	nav#menu ul.level_1 > li > a {
		padding: 10px 8px 10px 40px;
		font-size: 16px;
	}

	nav#menu a.dossier {
		background-size: 16px !important;
	}
	nav#menu a.choixdaffectation,
	nav#menu a.sedeconnecter {
		background-size: 19px !important;
	}
	nav#menu a.accueil,
	nav#menu a.accueil:hover {
		background-size: 20px !important;
	}
	nav#menu a.recepisse {
		background-size: 21px !important;
	}
	nav#menu a.choixdesepreuves,
	nav#menu a.amenagementdepreuves,
	nav#menu a.bourse,
	nav#menu a.paiement,
	nav#menu a.convocation,
	nav#menu a.resultats {
		background-size: 22px !important;
	}

	nav#menu_visiteur {
		position: fixed;
		z-index: 2;
		overflow: auto;
		width: auto;
		height: 100%;
		top: 50px;
		padding: 0;
		background-color: #f7fcfd;
		border-right: 1px solid var(--fourth-color);
	}

	nav#menu_visiteur ul li {
		display: block;
		border-bottom: 1px solid var(--border-color);
		background-color: #fff;
	}

	nav#menu_visiteur ul.level_1 > li > a {
		padding: 10px 15px 10px 8px;
		font-size: 16px;
		color: var(--second-grey-color);
	}

	#container section#main_content {
		width: 100%;
	}

	#wrapper.visiteur #container section#main_content {
		margin: 0 0 140px 0;
	}

	#wrapper.visiteur #container section#content {
		width: 100%;
	}

	nav#ariane {
		margin: 0 0 10px;
	}

	footer {
		position: fixed;
		z-index: 1;
		height: auto;
		bottom: 0;
		border-top: 0;
	}

	footer.visiteur {
		position: fixed;
		bottom: 0px;
	}

	footer #footer_logos {
		float: none;
		width: 100%;
		height: auto;
		padding-top: 0;
	}

	footer #footer_logos li {
		display: block;
	}

	footer #footer_logos li.active > a {
		background-color: var(--first-color);
		color: #fff;
	}

	footer #footer_logos li a {
		height: auto;
	}

	footer #footer_logos .level_2 {
		width: 100%;
		display: none;
		background-color: #f9f9f9;
	}

	footer #footer_logos .level_2 li {
		display: block;
		margin: 0;
		width: 100%;
	}

	footer #footer_logos .level_2 li a {
		width: 100%;
		height: auto;
		margin: 0;
	}

	footer #footer_logos .level_2 li.reseau_scpo a,
	footer #footer_logos .level_2 li.scpo_aix a,
	footer #footer_logos .level_2 li.scpo_lille a,
	footer #footer_logos .level_2 li.scpo_lyon a,
	footer #footer_logos .level_2 li.scpo_rennes a,
	footer #footer_logos .level_2 li.scpo_saintgermain a,
	footer #footer_logos .level_2 li.scpo_strasbourg a,
	footer #footer_logos .level_2 li.scpo_toulouse a {
		margin-left: 0;
		width: 100%;
		background: none;
	}

	footer #footer_logos .level_2 li:hover a {
		background-color: var(--first-color);
	}

	footer #footer_logos .level_2 li.reseau_scpo::after {
		display: none;
	}

	footer #footer_logos li p {
		display: block;
	}

	footer #footer_links {
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
		border: none;
	}

	footer #footer_links ul {
		width: 100%;
	}

	footer #footer_links li {
		display: block;
	}

	footer #footer_logos li a,
	footer #footer_links li a {
		display: block;
		width: 100%;
		padding: 8px 0px 5px;
		text-transform: uppercase;
		border-top: 1px solid var(--border-color);
		font-size: 15px;
		text-align: center
	}

	footer #footer_logos li a:hover,
	footer #footer_links li a:hover {
		background-color: var(--first-color);
		color: #fff;
		text-decoration: none;
	}

	footer #footer_links li a::before {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	header #logo > a {
		background-size: 56px;
		background-position: 50% 2px;
	}

	header #titre h1 {
		font-size: 15px;
	}

	header #titre p {
		font-size: 14px;
		line-height: 12px;
	}

	header nav#responsive {
		margin-left: 5px;
	}

	header nav#responsive a.menu,
	header nav#responsive li:hover a.menu,
	header nav#responsive li.active a.menu {
		width: 38px;
		background-size: 22px;
	}

	header nav#responsive a.profil,
	header nav#responsive li:hover a.profil,
	header nav#responsive li.active a.profil {
		width: 38px;
		background-size: 18px;
	}

	header nav#responsive a.deconnexion,
	header nav#responsive li:hover a.deconnexion,
	header nav#responsive li.active a.deconnexion {
		width: 38px;
		background-size: 25px;
	}

	section#content h2 {
		font-size: 20px;
	}

	section#content h2::after {
		width: 30%;
		left: 35%;
		top: 30px;
	}
}

@media screen and (max-width: 500px) {
	p {
		margin-bottom: 5px;
	}

	h4 {
		margin: 0 0 10px -5px;
		padding: 8px 10px 5px;
		font-size: 15px;
	}

	header #logo {
		border-right: 0;
	}
	header #titre {
		display: none;
	}

	header nav#responsive {
		margin-left: 0;
	}

	nav#menu ul.level_1 > li > a {
		padding: 8px 8px 6px 35px;
		font-size: 15px;
	}

	nav#menu a.dossier {
		background-size: 13px !important;
	}
	nav#menu a.choixdaffectation,
	nav#menu a.sedeconnecter {
		background-size: 16px !important;
	}
	nav#menu a.accueil,
	nav#menu a.accueil:hover {
		background-size: 17px !important;
	}
	nav#menu a.recepisse {
		background-size: 18px !important;
	}
	nav#menu a.choixdesepreuves,
	nav#menu a.amenagementdepreuves,
	nav#menu a.bourse,
	nav#menu a.paiement,
	nav#menu a.convocation,
	nav#menu a.resultats {
		background-size: 19px !important;
	}

	section#content h2 {
		margin: 10px auto 25px;
		font-size: 18px;
	}

	section#content h2::after{
		display: none;
	}

	section#content article > h3 {
		margin: 0 0 15px -20px;
		padding: 9px 10px 7px 15px;
		font-size: 17px;
	}

	section#content article table.accueil {
		margin: 10px 0 0;
	}

	footer #footer_logos li a,
	footer #footer_links li a {
		padding: 6px 0 4px;
		font-size: 14px;
	}
}
