/* Formulaire contact */
.contact_form{
	font-family:Arial, Helvetica, sans-serif;
	font-size:90%;
	max-width:970px;
	margin:0 auto;
	background-color:rgba(0,0,0,0.2);
	padding:10px;
	}
.contact_form .ligne{
	overflow:hidden;
	margin-bottom:10px;
}
.contact_form .label{
	float:left;
	display:block;
	box-sizing:border-box;
	width:30%;
	padding:10px;
}
*:focus {
    outline: none; /* fix pour chrome (contours bleus) */
}
.contact_form input,
.contact_form select,
.contact_form textarea,
.contact_form button
{
	float:right;
	display:block;
	box-sizing:border-box;
	width:70%;
	font-family:inherit;
	font-size:inherit;
	border:solid 1px #CCC;
	padding:10px;
	transition:border ease 200ms;
	-webkit-appearance: none; /* fix pour ios (boutons arrondis) */
	border-radius: 0; /* fix pour ios (boutons arrondis) */
}
.contact_form textarea{
	height:200px;
}
.contact_form input:focus,
.contact_form select:focus,
.contact_form textarea:focus
{
	border:solid 1px #666;
}
.contact_form .btn_valider{
	
	color:#000;
	border:none;
	border:solid 1px #333;
	padding:20px 0;
}
.contact_form .btn_valider:hover{
	background-color:#333;
	color:#fff;
}
.contact_form .notice{
	font-size:80%;
	font-style:italic;
}
.contact_form .req_sign{
	color:red;
	font-weight:bold;
}
@keyframes anim_message{
	0%{opacity:0;}
	100%{opacity:1;}
}
.contact_form .champ_erreur input,
.contact_form .champ_erreur select,
.contact_form .champ_erreur textarea
{
	border-left:solid 1px red;
}
.contact_form .message_erreur{
	font-size:70%;
	font-style:italic;
	display:block;
	float:right;
	clear:both;
	color:red;
	animation:anim_message 1 700ms ease;
}
.messageOK{
	animation:anim_message 1 700ms ease;
}
.messageNOK{
	animation:anim_message 1 700ms ease;
	color:red;
}
/* responsive */
@media screen and (max-width:600px){
.contact_form .ligne{
	overflow:hidden;
	margin-bottom:20px;
}
.contact_form .label,
.contact_form input,
.contact_form select,
.contact_form textarea,
.contact_form button
{
	float:none;
	width:100%;
}
.contact_form .label{
	padding:0;
}
}