form{
    width: 100%;
    float: left;
}

.flex-container{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
}

label{
	float:left;
	width: 100%;
    height: 20px;
}

/* BOTONES */

button.button{
	height: 40px;
	line-height: 40px;
	margin:0 auto;
    color: #FFF;
	border-radius: 5px;
	border: 1px solid #8ec542;
	padding:0 20px;
	background-color: #8ec542;
	display: block;
}

button.button:hover{
	background-color: #6ea81e;
	cursor: pointer;
}

.formulario_separador{
    width: 100%;
    padding: 5px;
    margin-bottom: 30px;
    margin-top: 30px;
    border-bottom: 1px solid #8ec542;
    text-transform: uppercase;
    font-weight: bold;
    float: left;
}

.campoFormulario{
	width: 100%;
	clear: both;
	margin-bottom: 0px;
	position: relative;
	display: inline-block;
	overflow: hidden;
	border-radius: 5px;
	height: 65px;
}

.campoFormularioTextarea{
	width: 100%;
	clear: both;
	margin-bottom: 0px;
	position: relative;
	display: inline-block;
	overflow: hidden;
	border-radius: 5px;   
}

.campoFormularioTextarea textarea{
	border:0;
	width: 100%;
	height: 140px;
	line-height: 40px;
	padding: 8px;
	display: block;
	float: left;
	background-color: transparent;
	text-indent: 0px;
	border: 1px solid #cdcdcd;
	border-radius: 5px;
}

.campoFormularioTextarea textarea.textoDescripcion{
    height: 300px;
}

.campoCheckBox{
    
}

.box-header-interno{
  color: #444;
  display: block;
  padding: 5px 0px;
  position: relative;
  float: left;
  width:100%;
  border-bottom: 2px solid #444;
  margin-bottom: 10px;
}

.box-header-titulo{
  float:left;
  font-size: 25px;
  height: 34px;
  line-height: 34px;
}

.box-header-acciones{
  float:right;
}

.foto_inmueble{
  width: 300px;
  height:240px;
  float:left;
  margin: 20px;
  border:3px solid #eeeeee;
  border-radius: 3%;
  overflow: hidden;
  background-color: white;
}

.foto_inmueble_imagen{
    width:300px;
    height: 170px;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
    
}

.foto_principal{
  border:3px solid #8ec542;
  border-radius: 3%;
  overflow: hidden;
}

.foto_principal .botonPrincipal{
    display:none;
}

.foto_principal .botonEliminar{
    width: 48%;
    margin:5% 26%;
}

.foto_inmueble img{
    width: 100%;
    float:left;
}

button.botonFoto{
    width: 48%;
    margin:5% 1%;
    float:left;
}

.campoFormulario input{
	border:0;
	width: 100%;
	height: 40px;
	line-height: 40px;
	padding: 5px;
	display: block;
	float: left;
	background-color: transparent;
	text-indent: 30px;
	border: 1px solid #cdcdcd;
	border-radius: 5px;
}

.campoFormulario.obligatorio::after{
	font-weight: 900;
    font-family: "Font Awesome 5 Free";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 30px 30px 0;
	border-color: transparent #cdcdcd transparent transparent;
	display: block;
	content: "\f069";
	position: absolute;
	top: 0px;
	right: 0px;
	font-size: 8px;
	line-height: 20px;
	text-indent: 17px;
	color:#666;
}



/*********** FOCUS ******************/

.campoFormulario.focus input{
	border: 1px solid #909090;
}

.campoFormulario.focus::before{
	color:#909090;
}

.campoFormulario.focus::after{
	border-color: transparent #909090 transparent transparent;
	color:white;
}

.campoFormulario.focus input{
	border: 1px solid #909090;
}


/*********** ERRRORES ******************/

.campoFormulario.error input,.campoFormulario.error select{
	border: 1px solid #cd0000;
}

.campoFormulario.error::before{
	color:#cd0000;
}

.campoFormulario.error::after{
	border-color: transparent #cd0000 transparent transparent;
	color:white;
	content:"\f00d";
}

/*********** OK ******************/

.campoFormulario.ok input, .campoFormulario.ok select{
	border: 1px solid #008800;
}

.campoFormulario.ok::before{
	color:#008800;
}

.campoFormulario.ok::after{
	border-color: transparent #008800 transparent transparent;
	color:white;
	content: "\f00c";
}

/************* CAMPO DE ERROR ****************/

.campoFormularioError{
	position: absolute;
	top: 32px;
	right: 12px;
	font-size: 14px;
	background: white;
	padding: 0px 5px;
	color: #cd0000;
}

.campoFormulario.campoCheckbox{
	margin-top: 20px;
}

.campoFormulario.campoRadio{
	width:auto;
	margin-right: 40px;
}

.campoFormulario.campoCheckbox .campoFormularioError{
	position: absolute;
	top: 34px;
	left: 0px;
	font-size: 14px;
	background: white;
	padding: 0px;
	color: #cd0000;
}

.campoFormulario.campoSelect{
    margin-top: 0px;
}


.campoFormulario.campoCheckbox::before,.campoFormulario.campoRadio::before{
	display: none;
}


.campoFormulario select{
	border:0;
	width: 100%;
	height: 40px;
	line-height: 40px;
	padding: 0px 5px;
	display: block;
	float: left;
	background-color: transparent;
	text-indent: 15px;
	border: 1px solid #cdcdcd;
	border-radius: 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	color:#666;
}

.campoFormulario::before{
	font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f303';
    display: block;
    height: 40px;
	line-height: 40px;
    position: absolute;
    left: 5px;
	top:0px;
    z-index: 1;
	color:#cdcdcd;
	font-size:14px;
	width: 26px;
	text-align: center;
}


select {
    background-image: url('./images/triangulo.png');
    background-position: 98% center;
    background-repeat: no-repeat;
}



.campoFormulario.correo::before{
    content: '\f1fa';
}

.campoFormulario.clave::before{
	content: '\f13e';
}

.campoFormulario.lapiz::before{
    content: '\f303';
}

.campoFormulario.casa::before{
    content: '\f015';
}

.campoFormulario.telefono::before{
    content: '\f3cd';
}

.campoFormulario.ciudad::before{
    content: '\f64f';
}

.campoFormulario.pais::before{
    content: '\f57c';
}

.campoFormulario.buscar::before{
    content: '\f002';
}

.campoFormulario.tabla::before{
    content: '\f0ce';
}

.campoFormulario.dinero::before{
    content: '\f51e';
}






/***************** CHECKBOXES ***********************/
/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
	position: absolute;
	left: -9999px;
}
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
	position: relative;
	padding-left: 30px;
	cursor: pointer;
	line-height: 40px;
}

/* checkbox aspect */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 20px;
	height: 20px;
	border: 2px solid #ccc;
	background: #fff;
	border-radius: 4px;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}
/* checked mark aspect */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
	content: '\f00c';
	position: absolute;
	top: -3px;
	left: 2px;
	font-size: 26px;
	line-height: 40px;
	color: #008800;
	transition: all .2s;
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
}
/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + label:after {
	opacity: 0;
	transform: scale(0);
}
[type="checkbox"]:checked + label:after {
	opacity: 1;
	transform: scale(1);
}
/* disabled checkbox */
[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bbb;
	background-color: #ddd;
}
[type="checkbox"]:disabled:checked + label:after {
	color: #999;
}
[type="checkbox"]:disabled + label {
	color: #aaa;
}
/* accessibility */
[type="checkbox"]:checked:focus + label:before,
[type="checkbox"]:not(:checked):focus + label:before {
	border: 2px dotted blue;
}


/***************** RADIO ***********************/
/* Base for label styling */
[type="radio"]:not(:checked),
[type="radio"]:checked {
	position: absolute;
	left: -9999px;
}
[type="radio"]:not(:checked) + label,
[type="radio"]:checked + label {
	position: relative;
	padding-left: 30px;
	cursor: pointer;
	line-height: 40px;
}

/* radio aspect */
[type="radio"]:not(:checked) + label:before,
[type="radio"]:checked + label:before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 20px;
	height: 20px;
	border: 2px solid #ccc;
	background: #fff;
	border-radius: 50%;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}
/* checked mark aspect */
[type="radio"]:not(:checked) + label:after,
[type="radio"]:checked + label:after {
	content: '\f111';
	position: absolute;
	top: -2px;
	left: 3px;
	font-size: 18px;
	line-height: 40px;
	color: #008800;
	transition: all .2s;
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
}
/* checked mark aspect changes */
[type="radio"]:not(:checked) + label:after {
	opacity: 0;
	transform: scale(0);
}
[type="radio"]:checked + label:after {
	opacity: 1;
	transform: scale(1);
}
/* disabled radio */
[type="radio"]:disabled:not(:checked) + label:before,
[type="radio"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bbb;
	background-color: #ddd;
}
[type="radio"]:disabled:checked + label:after {
	color: #999;
}
[type="radio"]:disabled + label {
	color: #aaa;
}
/* accessibility */
[type="radio"]:checked:focus + label:before,
[type="radio"]:not(:checked):focus + label:before {
	border: 2px dotted blue;
}