@media (max-width:700px) { 
.titre_main							{ display: none}
.chapo 								{ display: none}
}


/***** champs formulaire *****/ 
label								{ font: 400 14px/28px "Quicksand"; display: block; margin: 15px 0 15px 0;}
label span							{ color: #e81e3f;}
select,
input[type="text"],
input[type="email"],
input[type="date"],
textarea 							{ width: 100%; height: 60px; font: 400 14px/22px "Quicksand"; letter-spacing: 0.6px; padding: 0 25px; border-radius: 10px; background: #fff; border: 1px solid #ccc; margin-bottom: 15px;}
select								{ -webkit-appearance: none; appearance: none; background: url("../images/arrow_select.svg") calc(100% - 25px) 50% no-repeat #fff; padding-bottom: 0;}
textarea							{ min-height: 160px; padding: 20px 25px; display: block;}
input[type=checkbox] 				{ -webkit-appearance: checkbox; -ms-appearance: checkbox; appearance: checkbox; -moz-appearance: checkbox; -o-appearance: checkbox; width: 20px; height: 20px; display: block; float: left; padding: 0; margin: 0;}
::-webkit-calendar-picker-indicator { background: url(../images/calendar.svg) 50% 100% no-repeat; cursor: pointer; height: 24px; outline: none;}

@media (max-width:700px) { 
select,
input[type="text"],
input[type="email"],
input[type="date"] 					{ height: 55px;}
}
@media (max-width:700px) { 
label								{ font-size: 12px; line-height: 24px; margin: 10px 0 10px 0;}
select,
input[type="text"],
input[type="email"],
input[type="date"],
textarea 							{ font-size: 12px; height: 50px; padding: 0 20px; border-radius: 5px; margin-bottom: 10px;}
select								{ background-position: calc(100% - 20px) 50%;}
textarea							{ padding: 15px 20px;}
}


/** formulaire **/
.formulaire 						{ position: relative;}
.formulaire .label 					{ margin-bottom: 15px;}
.formulaire .grid 					{ display: grid; grid-template-columns: 1fr 1fr; grid-gap: 15px; margin-bottom: 20px;}
.formulaire .grid * 				{ margin: 0;}
.formulaire .grid_adresse_1 		{ display: grid; grid-template-columns: 1fr 30%; grid-gap: 15px;}
.formulaire .grid_adresse_2 		{ display: grid; grid-template-columns: 30% 1fr; grid-gap: 15px;}
.formulaire form .link 				{ border: none; /*width: 100%; text-align: center; border: none; background-image: linear-gradient(to top, #239e98 0% 50%, #46b6b1 50% 100%); cursor: url("../images/cursor_white.svg"), auto;*/}

@media (max-width:700px) { 
.formulaire .label 					{ margin-bottom: 10px;}
.formulaire .grid 					{ grid-template-columns: 1fr; grid-gap: 10px; margin-bottom: 15px;}
.formulaire .grid_adresse_1,
.formulaire .grid_adresse_2 		{ grid-template-columns: 1fr; grid-gap: 0;}
}


/***** confirmation formulaire *****/
.confirmation_form			 		{ text-align: center;}
.confirmation_form p			 	{ margin: 5px 0 20px 0;}



/***** RGPD *****/
#rgpdForm 							{ font: 400 13px/24px "Quicksand"; padding: 0 15px; letter-spacing: 0.8px;}
#rgpdForm input[type=checkbox]		{ width: 20px; height: 20px; display: block; float: left; padding: 0; margin: 6px 0 0 0; -webkit-appearance: checkbox; -ms-appearance: checkbox; appearance: checkbox; -moz-appearance: checkbox; -o-appearance: checkbox;}
#rgpdForm label						{ display: block; margin: 0; padding-left: 40px; font: 400 13px/24px "Quicksand"; letter-spacing: 0.6px;}
#rgpdForm a							{ position: relative; color: #239e98;}
#rgpdFormAcceptError				{ padding: 5px 0 0 30px; color: #e81e3f;}

@media (min-width:1201px) {
#rgpdForm a:hover 					{ color: #fff;}
}
@media (max-width:700px) { 
#rgpdForm 							{ padding: 0;}
#rgpdForm input[type=checkbox]		{ width: 16px; height: 16px; margin: 4px 0 0 0;}
#rgpdForm label						{ padding-left: 30px; font-size: 11px; line-height: 20px;}
}


/* custom */
.rgpd 								{ margin: 20px 0 30px 0;}

@media (max-width:700px) { 
.rgpd 								{ margin: 15px 0 25px 0;}
}


/***** pages formulaires *****/
.page_form .wrapper 				{ padding: 180px 0 140px 0;}
.page_form .formulaire 				{ background: #104946; padding: 60px; border-radius: 15px; color: #fff;}
.page_form .formulaire .from_hp 	{ font-size: 14px; margin-bottom: 15px; color: #239e98;}

@media (max-width:1400px) { 
.page_form .wrapper 				{ padding: 180px 0 120px 0;}
}
@media (max-width:1200px) { 
.page_form .wrapper 				{ padding: 180px 0 100px 0;}
.page_form .formulaire 				{ padding: 40px; border-radius: 10px;}
}
@media (max-width:1000px) { 
.page_form .wrapper 				{ padding: 140px 0 80px 0;}
}
@media (max-width:700px) { 
.page_form  						{ background: #ebf3f3;}
.page_form .wrapper 				{ padding: 80px 0 0 0;}
.page_form .bloc_texte 				{ margin: 0 -7vw; background: #104946; border-bottom: 1px solid #00938c50;}
.page_form .formulaire 				{ padding: 40px 7vw; border-radius: 0;}
}




/***** page contact *****/
#contact .bloc_contact 						{ position: relative; margin-top: 80px;}

#contact .bloc_contact .titre_main 			{ font-size: 35px; line-height: 45px;}
#contact .bloc_contact .titre_main span 	{ font-size: 22px; display: block;}

#contact .bloc_contact .grid				{ display: grid; grid-template-columns: 1fr 1fr; grid-gap: 80px; margin-top: 40px;}
#contact .bloc_contact .grid .item			{ position: relative; background: #fff; border-radius: 20px; box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1); padding: 60px;}


#contact .bloc_contact p					{ margin-top: 8px;}
#contact .bloc_contact p.adresse			{ padding-left: 30px; background: url("../images/pointer_blue.svg") 1px 50% no-repeat;}
#contact .bloc_contact p a  				{ border: none; padding: 0;}
#contact .bloc_contact p a.tel				{ padding-left: 30px; background: url("../images/tel_blue.svg") 0 50% no-repeat;}
#contact .bloc_contact p a.email			{ padding-left: 30px; background: url("../images/email_blue.svg") 1px 50% no-repeat;}

#contact .bloc_contact .horaire  			{ margin: 30px 0 0 0;}
#contact .bloc_contact .horaire .titre		{ padding: 20px 30px; line-height: 20px; font-weight: 500; z-index: 10;}
#contact .bloc_contact .horaire .titre:after { width: 16px; height: 100%; position: absolute; top: 0; right: 25px; background: url("../images/arrow_down_blue.svg") 50% no-repeat; margin: 0;}
#contact .bloc_contact .horaire .titre.active { background: #d0f2f7;}
#contact .bloc_contact .horaire .titre.active:after	{ transform: rotate(-180deg);}
#contact .bloc_contact .horaire .hide		{ width: 100%; padding: 0 30px 20px 30px; border-radius: 10px; position: absolute; left: 0; top: 40px; background: #d0f2f7;}
#contact .bloc_contact .horaire .hide p		{ margin: 20px 0 0 0; line-height: 20px;}


@media (min-width:1201px) {
#contact .bloc_contact .horaire .titre:hover			{ background: #d0f2f7;}
}
@media (max-width:1200px) { 
#contact .bloc_contact 				{ padding-top: 50px; border-radius: 10px; margin-bottom: 40px;}
#contact .bloc_contact .grid 		{ grid-gap: 50px; }
#contact .bloc_contact .titre_main 	{ font-size: 30px; line-height: 35px;}
#contact .links .tel 				{ line-height: 53px;}
}
@media (max-width:1000px) { 
#contact .bloc_contact .titre_main 	{ font-size: 25px; line-height: 30px;}
#contact .bloc_contact .grid 		{ grid-template-columns: 1fr; grid-gap: 40px;}
#contact .bloc_contact .grid .item	{ border-radius: 10px; padding: 50px 5vw;}
}
@media (max-width:700px) { 
#contact .top_page                  { padding-top: 120px;}

#contact .bloc_contact 				{ padding: 20px 7vw 0; border-radius: 0; margin: 0 -7vw;}
#contact .bloc_contact .titre_main	{ font-size: 18px; line-height: 26px;}
#contact .bloc_contact .titre 		{ font-size: 14px; line-height: 22px; margin: 15px 0 0 0;}
#contact .bloc_contact .chapo 		{ margin: 15px 0 0 0;}
#contact .links 					{ grid-template-columns: auto auto 1fr; grid-gap: 0; margin-top: 20px;}
#contact .links .link 				{ padding: 0 25px;}
#contact .links .tel 				{ padding: 0 25px 0 50px; font-size: 13px; line-height: 48px; margin-right: 10px;}
#contact .links .tel:after 			{ width: 16px; left: 20px; top: 0; background-size: 16px auto;}
#contact .bloc_contact .grid      	{ grid-gap: 20px; margin: 0;}
#contact .bloc_contact .grid .item	{ border-radius: 5px; padding: 40px 7.5vw; z-index: 90}
#contact .bloc_contact .grid .item.ghlin  { z-index: 120;}
}















