body {
	font-family: Lato Bold;
	font-size: 14px;
	margin: auto;
	width: calc(100% - 10px);
	overflow-x: hidden;
}

section, footer, header {
	/* border: 1px solid black; */
}

header {
	/*
	margin: auto;
	max-width: 1100px;
	height: 100px;
	width: 100%;
	font-size: 17px;
	*/
}

header:after {
    content: "";
    display: table;
    clear: both;
}

#div_section {
	max-width: 1100px;
	width: 100%;
	min-height: calc(100% - 160px);
	margin: auto;
}

section {
	width: 100%;
	/*background-color: #f5fafd;*/
}

section:after {
    content: "";
    display: table;
    clear: both;
}

footer {
	/*
	position: fixed;
	bottom: 0px;
	background-color: white;
	margin: auto;
	*/
	/*max-width: 1100px;*/
	/*
	height: 40px;
	width: 100%;
	padding-top: 20px;
	text-align: center;
	*/
}


/** 2. Specific statements */

/*Se connecter <BUTTON>*/
button {
	padding: 10px 20px;
	/*border-radius: 10px;*/
	cursor: pointer;
}
button:hover {
  	transition-duration: 1s;
}

.button_main {
	background-color: #6dafdb;
	color: #FFFFFF;
  	border: 1px solid #6dafdb;
}

.button_main:hover {
	background-color: #FFFFFF;
	color: #6dafdb;
  	border: 1px solid #6dafdb;
    transition-duration: 1s;
}

.separator {
	background-image: url("../img/line_separator.png");
	background-repeat: repeat-x;
	width: 100%;
	height: 11px;
}

.div_logo  {
	float: left;
}

.div_logo > a > img {
	height: 80px;
	margin-top: 10px;
}

.div_logo > img {
	height: 80px;
	margin-top: 10px;
}

.div_faq  {
	float: right;
	margin: 35px;
}

.div_faq:hover  {
	padding-bottom: 5px;
	border-bottom: 3px solid #6dafdb;
}

.div_faq > img {
	height: 50px;
}

.div_compte {
	float: right;
	margin: 35px;
	margin-right: 0px;
}

.div_compte:hover  {
	padding-bottom: 5px;
	border-bottom: 3px solid #6dafdb;
}

.div_compte > img {
	height: 50px;
}

.div_progress_bar {
	float: left;
	width: calc(100% - 330px);
	padding-top: 40px;
	padding-left: 20px;
	font-size: 12px;
}

.circle {
	border-radius: 50%;
	width: 16px;
	height: 16px;
	float: left;
	border: 2px solid #002953;
	/* width and height can be anything, as long as they're equal */
}

.circle_full {
	background-color: #002953;
}

.circle_empty {
	background-color: #FFFFFF;
}

.sp_txt_circle {
	position: relative;
	text-align: center;
}

.left_txt_1 {
	left: -70px;
}

.left_txt_2 {
	left: -42px;
}

.left_txt_3 {
	left: -10px;
}

.left_txt_4 {
	left: 45px;
}

.hr_bar{
	width: calc(33% - 100px);
	height: 2px;
	background-color: #002953;
	border: none; /*on supprime le style par défaut*/
	float: left;
	margin-left: 5px;
	margin-right: 5px;
}

/** 4. Media Query statements */
@media only screen and (max-width: 860px) {
	body {
		font-size: 13px;
	}
	.circle {
		width: 16px;
		height: 16px;
		/* width and height can be anything, as long as they're equal */
	}
}

@media only screen and (max-width: 800px) {
	body {
		font-size: 12px;
	}
	.circle {
		width: 13px;
		height: 13px;
		/* width and height can be anything, as long as they're equal */
	}
	.div_faq > img {
		height: 44px;
	}
	.div_compte > img {
		height: 44px;
	}
}

@media only screen and (max-width: 750px) {
	body {
		font-size: 11px;
	}
	.circle {
		width: 12px;
		height: 12px;
		/* width and height can be anything, as long as they're equal */
	}
	.sp_txt_circle {
		font-size: 10px;
	}
	.div_faq > img {
		height: 38px;
	}
	.div_compte {
		top: -112px;
	}
	.div_compte > img {
		height: 38px;
	}
}

@media only screen and (max-width: 700px) {
	body {
		font-size: 11px;
	}
	.circle {
		width: 12px;
		height: 12px;
		/* width and height can be anything, as long as they're equal */
	}
	.sp_txt_circle {
		font-size: 10px;
	}
	.div_progress_bar {
		float: inherit;
		width: calc(100% + 24px);
		padding-top: 0px;
		padding-left: 0px;
		position: relative;
		top: 80px;
		left: -38px;
	}
	.div_logo {
		padding-left: 10px;
	}
	.div_logo > img {
		height: 70px;
	}
	.div_faq {
		top: -50px;
	}
	.div_faq > img {
		height: 30px;
	}
	.div_compte {
		top: -84px;
	}
	.div_compte > img {
		height: 30px;
	}
	header {
		height: 135px;
	}
	.hr_bar{
		width: calc(33% - 54px);
		height: 2px;
		border: none; /*on supprime le style par défaut*/
		float: left;
		margin-left: 3px;
		margin-right: 3px;
	}
}


@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)	{
   /* IE10+ CSS */
   #div_declarant_1 {
	   max-width: 350px;
   }
   #div_declarant_2 {
	   max-width: 350px;
   }
   #fieldset_charges_deductibles_principal {
	   max-width: 350px;
   }
   #fieldset_charges_deductibles_conjoint {
	   max-width: 350px;
   }
   #sp_justificatif {
	   max-width: 780px;
   }
   #sp_justificatif_all {
	   max-width: 780px;
   }
}

@supports (-ms-accelerator:true) {
   /* IE Edge 12+ CSS */ 
}
