@charset "utf-8";

/* Style Tablette horizontale */
@media screen and (min-width: 992px) and (max-width: 1200px){

.tablette{
	display:block;
}	
}

/* Style Mobile & Tablette verticale */
@media screen and (max-width: 991px){

.mobile{
	display:block;
}
}

html{
	font-size:100%;	/* Permet de gêrer les fonts en em */
	-webkit-text-size-adjust:none;	/* Containte taille de police automatique sur iphone et ipad au changement d'orientation */
}

body{
	margin:0;
	color:#212982;
	font-family:Arial, Helvetica, sans-serif;
	background-color:#fff;
}

.content{
	position:relative;
	width:100%;
	height:auto;
	min-width:320px;
	margin-left:auto;
	margin-right:auto;
	overflow:hidden;
}

p, ul, li, table, tr, th, td, h1, h2, h3{
	padding:0;
	margin:0;
}

a{
	color:#212982;
}

img{
	border:0;
}

:focus{
	outline:0;
}

@font-face{
    font-family : "avantgarde-bold";
	src : url('../font/avantgarde-bold.eot'); /* Pour IE9 Compat mode */
    src : url('../font/avantgarde-bold.eot?#iefix') format('eot'),
		  url('../font/avantgarde-bold.woff') format('woff'),
          url('../font/avantgarde-bold.svg') format('svg'),
          url('../font/avantgarde-bold.ttf') format('truetype');
}

.fontGardeBd{
	font-family: "avantgarde-bold";
	font-weight:normal;
}

@font-face{
    font-family : "avant_garde_medium";
	src : url('../font/avant_garde_medium.eot'); /* Pour IE9 Compat mode */
    src : url('../font/avant_garde_medium.eot?#iefix') format('eot'),
		  url('../font/avant_garde_medium.woff') format('woff'),
          url('../font/avant_garde_medium.svg') format('svg'),
          url('../font/avant_garde_medium.ttf') format('truetype');
}

.fontGardeMe{
	font-family: "avant_garde_medium";
	font-weight:normal;
}

@font-face{
    font-family : "avantgarde-demi";
	src : url('../font/avantgarde-demi.eot'); /* Pour IE9 Compat mode */
    src : url('../font/avantgarde-demi.eot?#iefix') format('eot'),
		  url('../font/avantgarde-demi.woff') format('woff'),
          url('../font/avantgarde-demi.svg') format('svg'),
          url('../font/avantgarde-demi.ttf') format('truetype');
}

.fontGardeDe{
	font-family: "avantgarde-demi";
	font-weight:normal;
}

@font-face{
    font-family : "avantgarde-book";
	src : url('../font/avantgarde-book.eot'); /* Pour IE9 Compat mode */
    src : url('../font/avantgarde-book.eot?#iefix') format('eot'),
		  url('../font/avantgarde-book.woff') format('woff'),
          url('../font/avantgarde-book.svg') format('svg'),
          url('../font/avantgarde-book.ttf') format('truetype');
}

.fontGardeBo{
	font-family: "avantgarde-book";
	font-weight:normal;
}

.bouton{
	float:left;
	width:100%;
	text-align:center;
}

.bouton a{
	display:inline-block;
	width:188px;
	height:auto;
	padding:0;
	margin:0 12px;
	color:#fff;
	font-size:14px;
	line-height:43px;
	text-align:center;
	text-decoration:none;
	background-color:#e04c87;
	border-radius:21px;
	cursor:pointer;
	-webkit-transition:all 0.3s; /* Chrome, Safari */
	-moz-transition:all 0.3s; /* Mozilla */
	-ms-transition:all 0.3s; /* IE */
	-o-transition:all 0.3s; /* Opéra */
	transition:all 0.3s;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	-webkit-box-shadow: 0px 0px 13px 0px rgba(224, 76, 135, 0.4);
	-moz-box-shadow:    0px 0px 13px 0px rgba(224, 76, 135, 0.4);
	box-shadow:         0px 0px 13px 0px rgba(224, 76, 135, 0.4);
}

.bouton a:hover{
	color:#fff;
	background-color:#212982;
}

.rose{
	color:#e04c87;
}

.datepicker-date-display{ /* bloc date */
	display:none;
}

.datepicker-footer button{ /* bouton fermer */
    color:#fff;
	font-size:12px;
	background-color:#e04c87;
	font-family: "avantgarde-demi";
}

.select-dropdown{
	display:none !important;
}

.datepicker-controls select{
	display:block;
	width:auto;
	height:30px;
    padding:0 15px;
	margin:0 5px;
	font-size:14px;
	font-family: "avantgarde-demi";
	text-transform:uppercase;
	border:1px solid #f2f2f2;
	-webkit-border-radius:0;   
	-moz-border-radius:0;
	border-radius:0;	
	background:none;
}


/* HEADER */

#div_header{
	z-index:+1;
	position:relative;
	width:100%;
	background-color:#fff;
}

#header{
	width:100%;
	min-height:68px;
}

#m_logo{
	position:relative;
	left:50%;
	float:left;
	width:98px;
	height:auto;
	margin-top:8px;
	margin-bottom:9px;
	margin-left:-49px;
}

#icon_menu{
	position:absolute;
	top:25px;
	right:5%;
    cursor:pointer;
}

#icon_menu .bar{
    display:block;
    width:26px;
    height:3px;
    margin:0 auto;
    background:#e04c87;
	-webkit-transition:all .7s ease;
	-moz-transition:all .7s ease;
	-ms-transition:all .7s ease;
	-o-transition:all .7s ease;
	transition:all .7s ease;
}

#icon_menu .middle{
    margin:5px auto;
}

#icon_menu.open{
}

#icon_menu.open .top{
	-webkit-transform: translateY(8px) rotateZ(45deg);
	-moz-transform: translateY(8px) rotateZ(45deg);
	-ms-transform: translateY(8px) rotateZ(45deg);
	-o-transform: translateY(8px) rotateZ(45deg);
	transform: translateY(8px) rotateZ(45deg);
}
 
#icon_menu.open .bottom{
	-webkit-transform: translateY(-8px) rotateZ(-45deg);
	-moz-transform: translateY(-8px) rotateZ(-45deg);
	-ms-transform: translateY(-8px) rotateZ(-45deg);
	-o-transform: translateY(-8px) rotateZ(-45deg);
	transform: translateY(-8px) rotateZ(-45deg);
}
 
#icon_menu.open .middle{
	width:0;
}

#menu{
	z-index:+1;
	position:relative;
	display:none;
	float:left;
	width:100%;
	padding-bottom:60px;
	background-color:#edf1ff;
}

#menu li{
	float:left;
	width:90%;
	margin:0 5%;
	list-style:none;
	text-align:left;
	border-bottom:1px solid #dcdfeb;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#menu li a{
	float:left;
	width:100%;
	padding-left:27px;
	color:#303030;
	font-size:16px;
	line-height:60px;
	text-decoration:none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#menu a:hover{
	text-decoration:underline;
}


/* CONTENU */

#contenu{
	position:relative;
	width:100%;
	height:auto;
}

#bl_contenu{
	width:100%;
	max-width:700px;
	padding:20px 4% 40px 4%;
	margin:0 auto;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	overflow:hidden;
}

h1{
	font-size:22px;
	line-height:1.2em;
	text-align:center;
}

.text1{
	font-size:14px;
	line-height:1.2em;
}

.hr{
	width:74%;
	height:1px;
	margin:0 auto;
	background-color:#909090;
}

#bandeau{
	position:relative;
	width:100%;
	height:auto;
}

#bandeau img{
	z-index:+1;
	position:relative;
	display:block;
	margin:0 auto;
	width:100%;
	max-width:640px;
	height:auto;
}

#bandeau_bgleft{
	position:absolute;
	left:0;
	width:50%;
	height:100%;
	background-color:#e04c87;
}

#bandeau_bgright{
	position:absolute;
	right:0;
	width:50%;
	height:100%;
	background-color:#212982;
}

#bandeau_bgleft.debugbleu{
	background-color:#212982;
}

#bandeau_bgright.debugrose{
	background-color:#e04c87;
}

#mentions{
	float:left;
	color:#909090;
	font-size:10.5px;
	line-height:1.2em;
	font-style:italic;
	text-align:justify;
}


/* PAGE: Accueil */

#page_home h1{
	font-size:18px;
	line-height:1.1em;
}

#page_home #form_code{
	margin-top:10px;
}

#page_home #form_code label{
	width:100%;
	line-height:32px;
	text-align:center;
}

#page_home #code_unique{
	text-align:center;
}

#page_home #code_erreur{
	float:left;
	width:100%;
	margin-top:4px;
	color:#ff0000;
	font-size:14px;
	text-align:center;
}

#page_home #bt_valider{
	margin-top:25px;
}

#page_home #mentions{
	margin-top:30px;
}


/* PAGE: Sélection thème */

#page_theme #bl_contenu form{
	margin-top:23px;
}

#page_theme #bl_theme{
	width:100%;
	text-align:center;
}

#page_theme .theme_cadre{
	margin:14px 0;
}

#page_theme .theme_cadre label{
	float:none;
	display:inline-block;
	width:100%;
	max-width:286px;
	height:132px;
	color:#fff;
	cursor:pointer;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	opacity:0.85;
}
#page_theme .theme_cadre label:hover {
	opacity:1;
}
#page_theme #theme_cadre1.theme_cadre label{
	background-color:#e04c87;
	border:4px solid #e04c87;
}

#page_theme #theme_cadre2.theme_cadre label{
	background-color:#212982;
	border:4px solid #212982;
}

#page_theme #theme_cadre1.theme_cadre label.checked{
	opacity:1;
	border:4px solid #212982;
}
#page_theme #theme_cadre2.theme_cadre label.checked{
	opacity:1;
	border:4px solid #e04c87;
}
#page_theme .theme_visuel{
	width:162px;
	height:auto;
}

#page_theme .theme_cadre input{
	display:none;
}

#page_theme #bt_valider{
	margin-top:15px;
}


/* PAGE: Coordonnées et Contact */

#page_coord #bl_contenu form{
	margin-top:30px;
}

#page_coord #bl_civil{
	float:left;
	width:100%;
}

#page_coord .civil_cadre{
	float:left;
	width:47%;
}

#page_coord .civil_cadre:first-child{
	margin-right:6%;
}

#page_coord .civil_cadre label{
	float:left;
	width:100%;
	height:43px;
	max-width:300px;
	padding:0;
	color:#212982;
	font-size:14px;
	line-height:41px;
	text-align:center;
	background-color:transparent;
	border:1px solid #212982;
	border-radius:8px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	cursor:pointer;
}

#page_coord .civil_cadre input{
	display:none;
}

#page_coord .civil_cadre label.checked{
	color:#fff;
	background-color:#212982;
}

#page_coord label{
	padding:7px 0 3px 0;
	line-height:16px;
}

#page_coord #dateNais{
	background: url(../img/icon_calendar.png) no-repeat right 16px top 13px;
	background-size:14px 14px;
}

#page_coord #mail{
	text-transform:lowercase;
}

#page_coord .bl_checkbox{
	float:left;
	width:100%;
	margin-top:17px;
}

#page_coord #bl_checkbox1{
	margin-top:25px;
}

#page_coord #bt_valider{
	margin-top:25px;
}

#page_coord #mentions{
	margin-top:30px;
}

#page_coord #bl_contenu form#form_contact{
	margin-top:22px;
}


/* PAGE: Téléphone */

#page_tel #bl_contenu{
	padding-top:30px;
	text-align:center;
}

#page_tel h1{
	font-size:17.5px;
	line-height:1.1em;
}

#page_tel h1 .sstitre{
	font-size:14px;
}

#page_tel .bl_checkbox{
	float:left;
	width:100%;
	margin-top:2em;
	margin-bottom:1.5em;
}

#page_tel .check_label{
	font-size:14px;
	text-align:center;
}

#page_tel #tel{
	text-align:center;
}

#page_tel #bt_valider{
	margin-top:25px;
}

#page_tel #ignorer{
	float:left;
	width:100%;
	margin-top:15px;
}


/* PAGE: Quiz */

#page_quiz #preload{
	display:flex;
    flex-direction:column;
	flex-wrap:wrap;
    align-content:center;
    justify-content:center;
	z-index:+1;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	position:fixed;
}

#page_quiz #preload.preload_mariage{
	background-color:#e04c87;
}

#page_quiz #preload.preload_naissance{
	background-color:#212982;
}

#page_quiz #preload img{
	position:relative;
	top:34px;
	width:285px;
	max-width:100%;
	height:auto;
}

#page_quiz .bl_question{
	display:none;
}

#page_quiz .question_titre{
	margin-bottom:12px;
	font-size:14px;
	line-height:1.2em;
	text-align:center;
}

#page_quiz .question_cadre{
	position:relative;
	float:left;
	width:100%;
}

#page_quiz .question_cadre label{
	float:none;
	display:block;
	width:100%;
	max-width:285px;
	height:auto;
	padding:11px 25px;
	margin:5px auto;
	font-size:14px;
	line-height:1.2em;
	background-color:#fff;
	border:2px solid #eee;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	cursor:pointer;
}

#page_quiz .question_cadre label.checked{
	border:2px solid #212982;
}

#page_quiz .question_disabled{
	z-index:+1;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:transparent;
}

#page_quiz .answer_fasle{
	color:#f04545;
	border:2px solid #f04545 !important;
}

#page_quiz .answer_true{
	color:#47c796;
	border:2px solid #47c796 !important;
}

#page_quiz .question_cadre input{
	display:none;
}

#page_quiz .question_btn{
	margin-top:25px;
}

#page_quiz .question_btn .icon_fleche{
	position:relative;
	top:1px;
	width:auto;
	height:12px;
	margin-left:10px;
}

#page_quiz .question_next{
	display:none;
}
#page_quiz .info_plus{
	clear: both;
	display:none;
	padding: 10px;
}


/* PAGE: Remerciement */

#page_remerciement #bl_contenu{
	padding-top:25px;
	text-align:center;
}

#page_remerciement h1{
	margin-bottom:1em;
	font-size:18px;
	line-height:1.1em;
}

#page_remerciement #bt_quiz{
	margin-top:1em;
	margin-bottom:30px;
}

#page_remerciement #bt_quiz a{
	width:auto;
	padding:0 18px;
	margin:0;
	font-size:13px;
}

#page_remerciement .hr{
	clear:both;
	margin-top:22px;
	margin-bottom:22px;
}

#page_remerciement #social img{
	display:inline-block;
	width:40px;
	height:auto;
	margin-top:13px;
	margin-bottom:11px;
}

#page_remerciement #serviceappel{
	display:block;
	width:185px;
	height:auto;
	margin:0 auto;
	margin-top:10px;
}


/* PAGE: Attente et Fin */

#page_out #bl_contenu{
	text-align:center;
}

#page_out h1{
	margin:20vh 0;
	font-size:18px;
}


/* LIGHTBOX */

#lightbox{
	z-index:99;
	display:none;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	position:fixed;
	background:rgba(0,0,0,0.7);
}

#lightbox_bg{
	width:100%;
	height:100%;
}

#lightbox_load{
	position:absolute;
	left:50%; 
	top:50%;
	width:60px;
	height:60px;
	margin-top:-38px;
	margin-left:-38px;
	border:8px solid #f3f3f3;
	border-top:8px solid #e04c87;
	border-radius:50%;
	-webkit-animation: spin 2s linear infinite; /* Safari */
	animation: spin 2s linear infinite;
}

@-webkit-keyframes spin{ /* Safari */
	0%{-webkit-transform: rotate(0deg);}
	100%{-webkit-transform: rotate(360deg);}
}

@keyframes spin{
	0%{transform: rotate(0deg);}
	100%{transform: rotate(360deg);}
}

.lightbox_content{
	display:none;
	position:absolute;
	left:50%;
	top:50%;
	width:92%;
	max-width:450px;
	height:auto;
	max-height:90%;
	padding:3.5em 4% 2.5em 4%;
	background-color:#fff;
	overflow:auto;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}

.lightbox_close{
	position:absolute;
	top:0;
	right:13px;
	cursor:pointer;
}

.lightbox_close .bar{
	display:block;
	width:20px;
	height:4px;
	margin:14px auto;
	background:#e04c87;
	border-radius:0;
}

.lightbox_close .top{
	-webkit-transform: translateY(9px) rotateZ(45deg);
	-moz-transform: translateY(9px) rotateZ(45deg);
	-ms-transform: translateY(9px) rotateZ(45deg);
	-o-transform: translateY(9px) rotateZ(45deg);
	transform: translateY(9px) rotateZ(45deg);
}

.lightbox_close .bottom{
	-webkit-transform: translateY(-9px) rotateZ(-45deg);
	-moz-transform: translateY(-9px) rotateZ(-45deg);
	-ms-transform: translateY(-9px) rotateZ(-45deg);
	-o-transform: translateY(-9px) rotateZ(-45deg);
	transform: translateY(-9px) rotateZ(-45deg);
}

.lightbox_titre{
	margin-bottom:15px;
	font-size:18px;
	line-height:1.2em;
	text-align:center;
}

.lightbox_text{
	max-width:100%;
	margin:0 auto;
	font-size:14px;
	line-height:1.2em;
	text-align:center;
}

.lightbox_content .bouton{
	margin-top:2em;
}

.lightbox_content .bouton a{
}


/* FOOTER */

#footer{
	position:relative;
	float:left;
	width:100%;
	height:auto;
	padding-top:8px;
	padding-bottom:10px;
	background-color:#212982;
}

#footer ul{
	float:left;
	width:100%;
	height:auto;
	text-align:center;
}

#footer li{
	display:inline;
	list-style:none;
}

#footer li a{
	float:left;
	width:100%;
	color:#fff;
	font-size:11px;
	line-height:17px;
	text-decoration:none;
}

#footer a:hover{
	text-decoration:underline;
}