/*********************************************************************************************************/
/*  TITRES  */
/*********************************************************************************************************/
h1 {
	margin-top: 180px;
	font-size: 30px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 3px;
	text-transform: uppercase;
}

h1 .nomBien{
	display: block;
	padding-bottom: 25px;
	font-size: 35px;
	font-weight: 700;
	text-transform: uppercase;
	line-height: 35px
}



/*********************************************************************************************************/
/*  SLIDER  */
/*********************************************************************************************************/
.sliderContainer{
	position: relative;
	margin: auto 150px;
}

.main-media {
	overflow: hidden;
	width: 100%;
}

.slider-bien-container {
	z-index: 2;
	position: relative;
	height: 100%;
}

.main-media .item {
	display: inline-block;
	float: left;
	height: 100%;
}

.main-media .item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50%;
}

.main-media .navs {
	z-index: 3;
	position: absolute;
	top: 0;
	width: 150px;
	height: 100%;
	text-align: center;
}

.main-media .navs.left {
	left: 0;
}

.main-media .navs.right {
	right: 0;
}

.main-media .navs .fa {
	display: inline-block;
	position: relative;
	top: 50%;
	padding: 0 10px;
	color: #fff;
	font-size: 80px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	cursor: pointer;
}



/*********************************************************************************************************/
/*  THUMBS   */
/*********************************************************************************************************/
.picsContainerGlobal {
	width: 100%;
	padding: 30px 0 0 0;
}

.picsContainerGlobal .picsContainer {
	width: 900px;
	margin: 0 auto;
}

.picsContainerGlobal .tofContainer {
	overflow: hidden;
	float: left;
	width: 25%;
}

.picsContainerGlobal .tofContainer .tofItem {
	margin-right: 5px;
	margin-bottom: 5px;
}

.picsContainerGlobal .tofContainer .tofItem a {
	display: block;
}

.picsContainerGlobal .tofContainer .photo {
	height: 150px;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}




/*********************************************************************************************************/
/*  DESCRIPTIF   */
/*********************************************************************************************************/
.descContainer {
	width: 900px;
	margin: 100px auto;
	text-align: center;
}

.descContainer .h2Desc {
	display: block;
	margin: 0;
	padding-bottom: 30px;
	font-size: 30px;
	font-weight: 500;
	text-transform: uppercase;
	text-align: center;
	line-height: 45px;
}

.descContainer .h2Desc span {
	display: block;
	font-size: 18px;
	font-weight: 300;
	text-align: center;
	letter-spacing: 3px;
	line-height: 25px;
}

.descContainer .descTxt {
	margin-bottom: 50px;
	text-align: justify;
	line-height: 25px;
}

.descContainer .ctaVisite {
	display: block;
	width: 250px;
	margin: 15px auto 25px auto;
	padding: 6px 0 3px 0;
	border: 2px solid #d30a35;
	color: #d30a35;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	text-transform: uppercase;
}

.descContainer .ctaVisite:hover,
.descContainer .ctaVisite:focus{
	text-decoration: none;
	color: #fff;
	background: #d30a35;
}

.descContainer .fa-print{
	color: #d30a35;
	font-size: 30px;
}

.descContainer .fa-brands.fa-facebook{
	padding-left: 30px;
	color: #d30a35;
	font-size: 30px;
}

.descContainer .fa-print:hover,
.descContainer .fa-print:focus{
	text-decoration: none;
	color: #000;
}



/*********************************************************************************************************/
/*  LIST DETAIL PN   */
/*********************************************************************************************************/
.detailPNContainerGlobal{
	overflow: auto;
	width: 1150px;
	margin: 0 auto 100px auto;
}

.detailPNContainer{
	float: left;
	width: 46%;
	margin: 0 2% 60px 2%;
}

.photoDetailPN{
	width: 100%;
	height: 325px;
	background-size: cover;
	background-position: center;
}

.h2Lot{
	min-height: 42px;
	margin: 20px 0 10px 0;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	line-height: 20px;
}

.h3Lot{
	margin: 0;
}

.h3Lot span{
	display: block;
	color: #4d5356;
	font-size: 16px;
	font-weight: 400;
	text-align: left;
	line-height: 20px;
}




/*********************************************************************************************************/
/*  PRESENTATION EN MIROIR   */
/*********************************************************************************************************/
.txtMirrorContainer{
	overflow: auto;
	width: 900px;
	margin: 0 auto 20px auto;
}

.txtMirrorContainer .txtMirror{
	float: left;
	width: 47.5%;
	margin: 0;
	color: #1e1e1e;
}

.txtMirrorContainer .txtLeft{
	margin-right: 1%;
	text-align: right;
}

.txtMirrorContainer .txtRight{
	margin-left: 1%;
	text-align: left;
}

.txtMirrorContainer .infoDetail{
	display: block;
	padding-bottom: 7px;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.txtMirrorContainer .infoDetail sup{
	text-transform: lowercase;
}

.txtMirrorContainer .infoDetail .square{
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: 0 5px 2px 0;
	background: #1a1a1a;
}

.cleContainerGlobal .txtMirrorContainer{
	width: 1105px;
}
.cleContainerGlobal .txtMirrorContainer .txtMirror{
	width: 48%;
}

.cleContainerGlobal .txtMirrorContainer .txtLeft{
	margin-right: 2%;
}

.cleContainerGlobal .txtMirrorContainer .txtRight{
	margin-left: 2%;
}






/*********************************************************************************************************/
/*  POINT CLE   */
/*********************************************************************************************************/
.cleContainerGlobal{
	padding: 100px 0 50px 0;
	background: #f4f3f2;
}

.cleContainer .h2Desc {
	display: block;
	margin: 0;
	color: #1a1a1a;
	font-size: 30px;
	font-weight: 500;
	text-transform: uppercase;
}

.cleContainer .h3Desc {
	margin: 10px 0 50px 0;
	color: #1a1a1a;
	font-size: 18px;
	font-weight: 300;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.cleContainer ul{
	padding-left: 20px
}

.cleContainer ul li{
	list-style: square;
	padding-bottom: 10px;
	color: #1a1a1a;
	font-size: 18px;
}





/*********************************************************************************************************/
/*  NEGO   */
/*********************************************************************************************************/
.negoContainer {
	display: inline-block;
}

/* PHOTO */
.negoContainer .photo {
	float: right;
	display: block;
	width: 250px;
	height: 272px;
	margin: auto;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	-moz-filter: grayscale(1);
	-webkit-filter: grayscale(1);
	-o-filter: grayscale(1);
	-ms-filter: grayscale(1);
	filter: grayscale(1);
}

/* NOM */
.negoContainer .infos {
	position: relative;
	float: right;
	height: 272px;
	padding-right: 20px;
	text-align: right;
}

.negoContainer .infos .nom {
	display: block;
	color: #1a1a1a;
	text-transform: uppercase;
}

.negoContainer .infos .fct {
	display: block;
	margin-bottom: 50px;
	color: #1a1a1a;
	font-size: 18px;
	font-weight: 300;
}

.negoContainer .infos .phone {
	display: block;
	/*margin: 0 0 20px 0;
	padding: 6px 10px 3px 0;
	border: 2px solid #1a1a1a;*/
	color: #1a1a1a;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 2px;
}

.negoContainer .infos .fixe{
	margin-bottom: 20px;
	letter-spacing: 0.08em;
}

.negoContainer .infos .phone:hover,
.negoContainer .infos .phone:focus{
	text-decoration: none;
	color: #d7b56d;
}


.negoContainer .infos .mail {
	display: block;
	margin-bottom: 30px;
	color: #1a1a1a;
	letter-spacing: 0px;
}

.negoContainer .infos .mail:hover,
.negoContainer .infos .mail:focus{
	text-decoration: none;
	color: #d30a35;
}


/* CONTACT */
.negoContainer .contact {
	position: absolute;
	right: 20px;
	bottom: 0px;
	width: 92%;
	padding: 6px 10px 3px 0;
	border: 2px solid #d30a35;
	color: #d30a35;
	font-size: 12px;
	font-weight: 600;
	text-align: right;
	text-transform: uppercase;
}

.negoContainer .contact:hover,
.negoContainer .contact:focus{
	text-decoration: none;
	color: #fff;
	border: 2px solid #d30a35;
	background: #d30a35;
}



/*********************************************************************************************************/
/*  VISITE VIRTUELLE   */
/*********************************************************************************************************/
.vvContainerGlobal{
}

.vvContainer{
	width: 97%;
	margin: 0 auto;
	padding: 30px 0 80px 0;
	text-align: center;
}

.vvContainer .h2Vv {
	margin: 0px 0px 30px 0px;
	color: #1a1a1a;
	font-size: 55px;
	line-height: 45px;
	text-align: center;
}

.vvContainer .h2Vv span{
	display: block;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 30px !important;
}

.vvContainer .h3Vv {
	margin: 0 auto 50px auto;
	padding: 0 30px;
	font-size: 17px;
	font-weight: 600;
	color: #3e3d40;
	text-align: center;
	text-transform: uppercase;
	line-height: 22px;
}

.vvContainer .protecVv{
	opacity: 0.5;
	position: absolute;
	width: 97%;
	height: 550px;
	background-color: #000;
}

.vvContainer .protecVv .txtVv{
	color: #FFF;
	text-transform: uppercase;
	margin-top: 220px;
	font-size: 25px;
}




/*********************************************************************************************************/
/*  VIDEO */
/*********************************************************************************************************/
.videoContainerGlobal{
	width: 900px;
	margin: auto;
	padding: 100px 0 0 0;
}

.videoContainerGlobal .h2Vid{
	margin: 0;
	color: #1a1a1a;
	font-size: 30px;
	font-weight: 500;
	text-transform: uppercase;
}

.videoContainerGlobal .h3Vid{
	margin: 10px 0 50px 0;
	color: #1a1a1a;
	font-size: 18px;
	font-weight: 300;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.videoContainer{
	overflow: hidden;
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
}

.videoContainer .videoDetail {
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	height: 100%;
}







/*********************************************************************************************************/
/*  PEB  */
/*********************************************************************************************************/
.dpeContainerGlobal{
	overflow: auto;
	width: 900px;
	margin: auto;
	padding: 0 0 80px 0;
}

.dpeContainer h2{
	margin: 0 0 15px 0;
	font-size: 30px;
	text-transform: uppercase;
	text-align: center;
}

.dpeContainer h3{
	margin: 0 0 30px 0;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 3px;
	text-transform: uppercase;
	line-height: 23px;
	text-align: center;
}

.dpeContainer .diag{
	float: left;
	width: 48.5%;
	margin: 0 auto 30px auto;
}

.dpeContainer .diagges{
	float: right;
	text-align: right;
}

.dpeContainer .diag .h2Dpe {
	margin: 0px 0px 30px 0px;
	font-size: 30px;
	font-weight: 500;
	text-transform: uppercase;
}

.dpeContainer .diag .h2Dpe span{
	display: block;
	padding-top: 10px;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 3px;
	text-transform: uppercase;
	line-height: 22px;
}

.dpeContainer .diag .h3Dpe{
	margin: 0 0 10px 0;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0px;
}

.dpeContainer .diag .imgDpe img{
	display: inline-block;
	width: 280px;
	padding: 20px;
	background: #fff;
	border: 1px solid #000;
}


/*********************************************************************************************************/
/*  FORM    */
/*********************************************************************************************************/
.contactContainerGlobal{
	overflow: auto;
	width: 100%;
	height: 850px;
	background: url('../images/visuel-contact-blc.jpg') no-repeat center;
	background-size: cover;
}

.contactContainer{
	display: flex;
	float: left;
	width: 50%;
	height: 100%;
}

.formBien{
	width: 700px;
	margin: auto;
	padding: 0 50px;
}

.formBien fieldset{
	overflow: auto;
}

.formBien .field{
	display: block;
	float: left;
	width: 46%;
	margin: 20px 0 20px 2%;
	background: transparent;
	border: none;
	outline: none;
	border-bottom: 1px solid #000;
	color: #000;
	font-size: 18px;
	font-weight: 300;
}

.formBien .field.fieldLeft{
	margin: 20px 2% 20px 0;
}

#modalMater .field.fieldLeft{
	margin: 10px 2% 10px 0;
}

.formBien .field::-webkit-input-placeholder { /* WebKit browsers */ color:#000 !important;}
.formBien .field:-moz-placeholder { /* Mozilla Firefox 4 to 18 */  color:#000 !important;}
.formBien .field::-moz-placeholder { /* Mozilla Firefox 19+ */  color:#000 !important; /* Firefox */}
.formBien .field:-ms-input-placeholder { /* Internet Explorer 10+ */  color:#000 !important; /* Firefox */}
.formBien .field::placeholder { /* Recent browsers */  color:#000 !important; /* Firefox */}

.formBien .fieldArea{
	width: 98%;
	margin: 10px 0;
}

.formBien .recaptchaContainer{
	margin: 20px 1%;
}

.formBien #rgpd{
	display: inline;
	margin: 0 5px 0 0;
	background: transparent;
	border: 1px solid #000;
}

.formBien .rgpd {
	display: inline;
	color: #000;
	font-size: 15px;
	font-weight: 300;
}
#modalMater .rgpd{
	display: inline;
	font-size: 15px;
	font-weight: 300;
}

.formBien .rgpd a{
	color: #000;
	font-weight: 400;
}

.formBien .rgpd a:hover,
.formBien .rgpd a:focus{
	text-decoration: underline;
}

.formBien .g-recaptcha{
	margin: 30px auto 0px auto;
	width: 305px;
}

.formBien .email_rapprochement_auto{
	margin: 20px 0 0 0;
	color: #000;
	font-weight: 400;
}

.formBien #email_rapprochement_auto{
	margin: 0 5px 0 0;
}

.formBien .submitField{
	display: block;
	width: 300px;
	margin: 50px auto 0 auto;
	padding: 10px 20px 7px 20px;
	outline: none;
	border: 2px solid #000;
	background: transparent;
	color: #000;
	font-size: 13px;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 2px;
}

.formBien .submitField:hover,
.formBien .submitField:focus{
	text-decoration: none;
	border: 2px solid #000;
	background: #000;
	color: #fff;
}
#modalMater .recaptchaContainer{

	margin: 20px 0;
}
#modalMater .field {
	padding: 5px;
	display: inline-block;
	position: relative;
	width: 48%;
}
input.submitMater {
	border: 0;
	padding: 8px 20px;
	color: #fff;
	background: #1a1a1a;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}

/*********************************************************************************************************/
/*  COORD    */
/*********************************************************************************************************/
.coordContainer{
	margin: auto;
}

.logoCoord{
	display: block;
	width: 250px;
	height: 100%;
	margin: 0 auto 15px auto;
}

.villeLogo{
	display: block;
	width: 250px;
	margin: 0px auto 0 auto;
	padding: 15px 0 0 0;
	border-top: 1px solid #000;
	color: #000;
	font-size: 15px;
	font-weight: 400;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 0.03em;
}

.socialContainer{
	margin: 50px 0;
	text-align: center;
}

.socialContainer .lkSocial{
	padding: 0 20px;
	color: #d30a35;
	font-size: 22px;
}

.socialContainer .lkSocial:hover,
.socialContainer .lkSocial:focus{
	color: #000;
}

.coord{
	color: #000;
	font-weight: 300;
	text-align: center;
}

.coord a{
	display: inline-block;
	padding-bottom: 5px;
	color: #000;
	font-size: 18px;
	font-weight: 400;
}

.coord a:hover,
.coord a:focus{

}




/*********************************************************************************************************/
/*  MEDIA  */
/*********************************************************************************************************/
@media (max-width: 1200px) {
	/* SLIDER */
	.sliderContainer {
		margin: auto 30px;
	}

	.main-media {
		height: 500px !important;
	}

	/* DESCRIPTIF */
	.descContainer {
		width: 700px;
	}

	.txtMirrorContainer {
		width: 700px;
	}

	/* POINTS CLES + NEGO */
	.cleContainerGlobal .txtMirrorContainer{
		width: 100%;
		padding: 0 30px;
	}

	.cleContainerGlobal .txtMirrorContainer .txtMirror{
		float: none;
		width: 100%;
		text-align: center;
	}

	.cleContainerGlobal .txtMirrorContainer .txtLeft{
		margin: 0 0 50px 0;
	}

	.cleContainerGlobal .txtMirrorContainer .txtRight{
		margin-left: 0;
	}

	.cleContainer .h3Desc {
		margin: 10px 0 40px 0;
	}

	.cleContainer ul {
		display: inline-block;
		margin: auto;
		text-align: left;
	}

	/* DETAIL PROG NEUF */
	.detailPNContainerGlobal{
		width: 80%;
	}

	/* CONTACT FORM */
	.contactContainerForm{
		width: 62%;
	}

	.contactContainerCoord{
		width: 38%;
	}
}


@media (max-width: 992px) {
	/* SLIDER */
	.main-media {
		height: 450px !important;
	}

	.main-media .navs {
		width: 100px;
	}

	.main-media .navs .fa {
		font-size: 60px;
	}


	/* PHOTOS */
	.picsContainerGlobal {
		width: 700px;
		margin: 0 auto;
	}

	.picsContainerGlobal .picsContainer {
		width: 700px;
	}

	/* DESCRIPTIF */
	.descContainer {
		width: 500px;
	}

	.txtMirrorContainer {
		width: 100%;
	}

	/* VIDEO */
	.videoContainerGlobal {
		width: 100%;
		padding: 100px 30px 0 30px;
	}

	/*DPE */
	.dpeContainerGlobal {
		width: 100%;
		padding: 100px 30px;
	}

	/* CONTACT FORM */
	.contactContainerGlobal{
		height: auto;
	}

	.contactContainer {
		display: block;
		float: none;
		width: 100%;
		height: auto;
	}
	.coordContainer {
		padding-bottom: 50px;
	}

	.contactContainerForm{
		width: 100%;
		padding: 70px 0 100px 0;
	}

	.contactContainerCoord{
		width: 100%;
	}

	.formBien {
		width: 600px;
		padding: 0;
	}

	/* DETAIL PROG NEUF */
	.detailPNContainer {
		float: none;
		width: 100%;
		margin: 0 0 60px 0;
	}
}


@media (max-width: 768px) {
	/* SLIDER */
	.main-media .navs {
		width: 60px;
	}

	.main-media .navs .fa {
		font-size: 50px;
	}

	/* PHOTOS */
	.picsContainerGlobal {
		width: 500px;
		margin: 0 auto;
	}

	.picsContainerGlobal .picsContainer {
		width: 500px;
		margin: 0 auto;
	}

	.picsContainerGlobal .tofContainer {
		width: 50%;
	}

	/* DESCRIPTIF */
	.descContainer {
		width: 100%;
		padding: 0 30px;
	}

	.txtMirrorContainer {
		padding: 0 30px;
	}

	/* NEGO */

	/* POINTS CLES */

	/*DPE */
	.dpeContainer .diag {
		float: none;
		width: 280px;
		margin: 0 auto 50px auto;
	}

	.dpeContainer .diagges {
		margin: 0 auto;
	}

	.dpeContainer .diag .imgDpe{
		width: 100%;
	}

	.dpeContainer .diag .imgDpe img{
		width: 100%;
	}

	/* CONTACT FORM */
	.formBien {
		width: 500px;
	}

}

@media (max-width: 580px) {
	/* SLIDER */
	.main-media {
		height: 350px !important;
	}

	.main-media .navs {
		width: 50px;
	}

	.main-media .navs .fa {
		font-size: 40px;
	}

	/* PHOTOS */
	.picsContainerGlobal {
		width: 90%;
		margin: 0 auto;
	}

	.picsContainerGlobal .picsContainer {
		width: 100%;
		margin: 0;
	}

	/* DESCRIPTIF */
	.descContainer .h2Desc {
		padding-bottom: 40px;
	}

	.txtMirrorContainer {
		display: inline-block;
		width: auto;
		margin: 0 auto 40px auto;
		padding: 0;
	}

	.txtMirrorContainer .txtLeft,
	.txtMirrorContainer .txtRight{
		float: none;
		width: auto;
		display: block;
		margin: 0 auto;

	}

	.txtMirrorContainer .infoDetail{
		position: relative;
		padding-left: 20px;
	}

	.txtMirrorContainer .infoDetail .square{
		position: absolute;
		left: 0px;
		top: 6px;
	}

	.txtMirrorContainer .txtLeft {
		text-align: left;
	}

	.descContainer .descTxt {
		text-align: left;
	}

	/* NEGO */

	/* POINTS CLES + NEGO*/
	.cleContainerGlobal .txtMirrorContainer .txtLeft {
		margin: 0 0 80px 0;
	}

	.negoContainer .photo {
		float: none;
		width: 250px;
		margin: 0 auto 30px auto;
	}

	.negoContainer .infos {
		float: none;
		width: 250px;
		height: auto;
		padding-right: 0;
		text-align: left;
	}

	.negoContainer .infos .fct {
		margin-bottom: 20px;
	}

	.negoContainer .infos .phone{
		margin-bottom: 10px;
	}

	.negoContainer .contact {
		display: block;
		position: static;
		width: 100%;
		padding: 6px 0 3px 10px;
		text-align: left;
	}

	/* CONTACT FORM */
	.formBien {
		width: 100%;
		padding: 0 30px;
	}

	.formBien .field,
	.formBien .field.fieldLeft, #modalMater .field.fieldLeft {
		float: none;
		width: 100%;
		margin: 20px 0 40px 0;
	}

	.formBien .submitField, #modalMater .submitField {
		display: inline-block;
		width: 100%;
	}

	.formBien .recaptchaContainer , #modalMater .recaptchaContainer {
		margin: 20px 1% 0 1%;
	}

	.formBien .g-recaptcha, #modalMater .g-recaptcha{
		width: 255px;
	}

	.g-recaptcha{
		transform:scale(0.85);
		-webkit-transform:scale(0.85);
		-moz-transform:scale(0.85);
		-ms-transform:scale(0.85);
		-o-transform:scale(0.85);
		transform-origin:0%;
		-webkit-transform-origin:0%;
		-moz-transform-origin:0%;
		-ms-transform-origin:0%;
		-o-transform-origin:0%;
	}
}

@media (max-width: 400px){
	/* CONTACT */
	.coord a {
		display: block;
	}
}

@media (max-width: 360px){
	/*DPE */
	.dpeContainer .diag {
		float: none;
		width: 100%;
		margin: 0 auto 50px auto;
	}
}
button.impr {
	background: no-repeat;
	border: 0;
}