@charset "utf-8";
@font-face {
	font-family: "open_reg";
	src: url("../fonts/OpenSans-Regular.woff2") format("woff2"), 
	url("../fonts/OpenSans-Regular.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "open_bold";
	src: url("../fonts/OpenSans-Bold.woff2") format("woff2"),
	url("../fonts/OpenSans-Bold.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "open_medium";
	src: url("../fonts/OpenSans-Medium.woff2") format("woff2"),
	url("../fonts/OpenSans-Medium.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "open_semi";
	src: url("../fonts/OpenSans-SemiBold.woff2") format("woff2"),
	url("../fonts/OpenSans-SemiBold.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "open_light";
	src: url("../fonts/OpenSans-Light.woff2") format("woff2"),
	url("../fonts/OpenSans-Light.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
/*---------- Generales */
* {
	margin: 0px;
	padding: 0px;
	border-collapse:collapse;
	font-family: 'open_reg', Arial, Helvetica;
	font-weight:normal;
	font-size:1em;
	line-height: 1em;
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box;    
	box-sizing: border-box;
}
strong {
	font-family: 'open_bold' !important;
}
ins {
	text-decoration: none;
}
a img {
	border: none;
}
a:hover {
	cursor: pointer;
}
input {
	border: 0px inset;
}
h1, h2, h3, h4, h5, h6, h7, h8, em, p, form, textarea, input, label, legend, fieldset, select, seccionquote {
	font-weight: normal;
	float: left;
	width: 100%;
	text-align: left;
}
input[type="submit"], input[type="button"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	float: none;
}
a p,
a:hover p,
a img,
a:hover img,
a,
a:hover,
input[type="submit"],
input[type="submit"]:hover,
button, button:hover {
	-webkit-transition: all 0.15s ease-in-out;
	-moz-transition: all 0.15s ease-in-out;
	transition: all 0.15s ease-in-out;
}
ul {
	list-style-type: none;
}
fieldset {
	border: 0px;
}
.centrado {
	text-align: center !important;
}
.autowidth{
	width: auto !important;
}
body, html {
	width: 100%;
	height: 100%;
	position: relative;
	min-width: 300px;
	padding: 0px !important;
	margin: 0px !important;
	/* background-color: #fff; */
	background-position: center center;
	background-size: cover;
}
@media screen and (max-width: 979px) {
	body {
		overflow-x: hidden;
	}
}
hr {
	border-top: 0px;
	border-right: 0px;
	border-bottom: solid 0px #eee;
	border-left: 0px;
	float: left;
	width: 100%;
	position: relative;
	height: 1px;
	margin: 0px 0 20px 0;
}
hr::after {
	content: "";
	position: absolute;
	height: 1px;
	top: 0px;
	left: calc(50% - 65px);
	width: 130px;
	background-color: #ccc;
	border-radius: 10px;
	display: inline-block;
}
hr.normal {
	border-bottom: solid 1px #ddd;
}
hr.normal::after{
	display: none;
}
body.sin_scroll {
	overflow: hidden;
}
.invisible {
	display: none !important;
}
.padless{
	padding: 0px !important;
}
/*---------- Atras */
.atras {
	position: relative;
	background-image: url(../images/flecha_volver.svg);
	background-repeat: no-repeat;
	background-position: center left 0px;
	background-size: initial;
	z-index: 100;
	line-height: 25px;
	text-decoration: none;
	font-size: 25px !important;
	color: #fff;
	float: left;
	padding: 0 0 0 35px;
	text-transform: uppercase;
}
.atras:hover {
	color: #2ea5b0 !important;
}
/*---------- Subir */
#subir {
	position: fixed;
	background-image: url(../images/subir.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 25px auto;
	width: 56px;
	height: 56px;
	background-color: rgba(0, 0, 0, 0.4);
	display: none;
	float: none;
	text-indent: -9999px;
	bottom: 10px;
	right: 10px;
	border-radius: 100%;
	z-index: 1000;
}
#subir:hover {
	opacity: 0.85;
}
@media screen and (min-width: 980px) {
	.rspnsv {
		display: none !important;
	}
}
@media screen and (max-width: 979px) {
	.rspnsv {
		display: block !important;
	}
	.desk {
		display: none !important;
	}
}
/*---------- Maqueta General */
.fila {
	width: 100%;
	float: left;
	text-align: center;
	position: relative;
	font-size: 0px;
}
.fila.border{
	border: solid 1px #ccc;
	padding: 20px;
}
.fila.border.link{
	border: solid 1px #ccc;
	padding: 0px;
}
.fila.limit{
	border-top: solid 1px #ddd;
	padding-top: 40px;
}
.fila.limit.smallpad{
	padding: 25px 0;
}
.fila.gris{
	background-color: #eee;
	padding: 28px 0;
}
.to_left {
	text-align: left;
}
.to_right {
	text-align: right;
}
/*---------- Margenes*/
.thinmargen{
	margin-bottom: 1px !important;
}
.nanomargen {
	margin-bottom: 5px !important;
}
.tinymargen {
	margin-bottom: 10px !important;
}
.minimargen {
	margin-bottom: 15px !important;
}
@media screen and (max-width: 979px){
	.minimargen_rspnsv {
		margin-bottom: 15px !important;
	}
}
.tweetmargen{
	margin-bottom: 20px !important;
}
.smallmargen {
	margin-bottom: 25px !important;
}
.trimargen{
	margin-bottom: 30px !important;
}
.mediamargen {
	margin-bottom: 35px !important;
}
.semimargen {
	margin-bottom: 45px !important;
}
.margen {
	margin-bottom: 50px !important;
}
.goodmargen {
	margin-bottom: 60px !important;
}
.supermargen {
	margin-bottom: 75px !important;
}
.granmargen {
	margin-bottom: 100px !important;
}
@media screen and (max-width: 979px) {
	.margen {
		margin-bottom: 50px !important;
	}
	.supermargen {
		margin-bottom: 75px !important;
	}
	.granmargen {
		margin-bottom: 50px !important;
	}
}
.tinymargen_top {
	margin-top: 10px !important;
}
.minimargen_top {
	margin-top: 15px !important;
}
.smallmargen_top {
	margin-top: 25px !important;
}
.mediamargen_top {
	margin-top: 35px !important;
}
.cuarimargen_top {
	margin-top: 45px !important;
}
.goodmargen_top {
	margin-top: 60px !important;
}
.supermargen_top {
	margin-top: 75px !important;
}
.granmargen_top {
	margin-top: 100px !important;
}
/*---------- Columnas*/
.cols {
	float: none;
	display: inline-block;
	width: 100%;
	max-width: 1180px;
	font-size: initial;
	position: relative;
	vertical-align: top;
	padding: 0 10px;
}
.cols.border{
	border: solid 1px #ddd;
	padding: 25px;
}
.cols.base{
	vertical-align: baseline;
}
@media screen and (max-width: 979px) {
	.cols {
		padding: 0 18px;
	}
}
.cols .cols {
	padding: 0px;
}
.cols img {
	max-width: 100%;
	height: auto;
	width: auto;
}
.cols.wide {
	max-width: 1210px;
}
@media screen and (min-width: 980px) {
	.cols {
		width: 100%;
		float: none;
		margin: auto;
		text-align: center;
		padding: 0 15px;
		font-size: 0px;
	}
	.cols.left {
		text-align: left;
	}
}
#sb-row * {
	font-size: 12px;
}
.col img {
	max-width: 100%;
	height: auto;
}
.col img.to_left {
	float: left;
}
.col img.to_right {
	float: right;
}
@media screen and (max-width: 979px) {
	.col.vacia {
		display: none !important;
	}
}
/*---------- Columna*/
.col {
	font-size: initial;
	display: inline-block;
	vertical-align: top;
	position: relative;
	background-size: cover;
	background-position: center center;
}
.col.border{
	border: solid 1px #ddd;
	padding: 20px 20px !important;
}
.cols.base .col{
	vertical-align: bottom;
}
.centrado,
.col.centrado * {
	text-align: center !important;
}
.to_right {
	text-align: right !important;
}
@media screen and (max-width: 979px) {
	.to_right {
		text-align: left !important;;
	}
}
.to_left {
	text-align: left !important;
}
.col a {
	display: inline-block;
	text-decoration: underline;
	color: #333;
	font-family:inherit;
}
.col a:hover {
	color: #2ea5b0;
	text-decoration: none !important;
}
.col a.download{
	font-size: 16px;
	color: #666;
	text-decoration: none;
	width: 100%;
	text-align: left;
	float: left;
	display: block;
	background-image: url(../images/ico_download.svg);
	background-repeat: no-repeat;
	background-size: auto 20px;
	background-position: left 15px center;
	padding: 10px 0 10px 40px !important;
	min-height: 20px;
	line-height: 25px;
}
.col .link a.download:hover{
	background-color: #eee;
}
.col a.download:hover{
	color: #2ea5b0;
}
.col a.ex{
	position: absolute;
	right: 0px;
	display: grid;
	place-content: center;
	top: 0px;
	width: 50px;
	height: 100%;
	border-left: solid 1px #ccc;	
}
.col a.ex:hover{
	background-color: #eee;
}
.col_1 {
	width: 100%;
}
.col_2 {
	width: 50% !important;
}
.flx .col_2{
	width: 49% !important;
	justify-content: space-between !important;
}
.cols .col_2:first-child {
	padding-right: 10px;
}
.cols .col_2:last-child {
	padding-left: 10px;
}
@media screen and (max-width: 979px) {
	.cols .col_2:first-child,
	.cols .col_2:last-child {
		padding: 0px !important;
	}
}
@media screen and (max-width: 979px) {
	.cols .col_4,
	.cols .col_4:nth-child(3),
	.cols .col_4:nth-child(2),
	.cols .col_4:first-child,
	.cols .col_4:last-child {
		padding: 0 0px 0 0px !important;
	}
}
.col_3 {
	width: 33.3%;
}
.flx .col_3 {
	width: 33.3% !important;
	justify-content: space-between !important;
}
.flx.valign-top .col_3 {
	justify-content: flex-start !important;
}
.col_4 {
	width: 25%;
}
.flx .col_4 {
	width: 23.5% !important;
	justify-content: space-between !important;
}
.col_5 {
	width: 20%;
}
.flx .col_5 {
	width: 19% !important;
	justify-content: space-between !important;
}
.col_6 {
	width: 16.66%;
}
.flx .col_6{
	width: 16.66% !important;
	justify-content: space-between !important;
}
.col_7 {
	width: 14.28%;
}
.col_8 {
	width: 12.5%;
}
.col_9 {
	width: 11.11%;
}
.col_10 {
	width: 10%;
}
.col_11 {
	width: 9.09%;
}
.col_12 {
	width: 8.33%;
}
.col_1_3 {
	width: 33%;
}
.col_1_4 {
	width: 25%;
}
.flx .col_1_4 {
	width: 23.5%;
	justify-content: space-between !important;
}
.col_1_5 {
	width: 20%;
}
.col_2_5 {
	width: 40%;
}
.col_3_4 {
	width: 75%;
}
.flx .col_3_4 {
	width: 74.5% !important;
	justify-content: space-between !important;
}
.col_3_5 {
	width: 60%;
}
.col_2_4 {
	width: 50%;
}
.col_2_3 {
	width: 67%;
}
.col_4_5 {
	width: 80%;
	padding: 0 0 !important;
}
@media screen and (max-width: 979px) {
    .col_2,
    .col_3,
    .col_4,
    .col_5,
    .col_6,
    .col_7,
    .col_8,
    .col_9,
    .col_10,
    .col_11,
    .col_12,
    .col_1_3,
    .col_1_4,
    .col_1_5,
    .col_2_5,
    .col_3_4,
    .col_3_5,
    .col_2_4,
    .col_2_3,
    .col_4_5 {
    	width:100%;
    }
	.col fieldset.inline{
		width:100%;	
	}
}
/*---------- Columna: generales p y li*/
.col p, .col li {
	font-size: 16px;
	color: #666;
	line-height: 25px;
}
.col p {
	text-align: justify;
}
.col p {
	text-align: justify;
}
@media screen and (max-width: 979px){
.col p {
	text-align: left;
}
}
.col p a, .col li a {
	font-size: 1em;
	color: #666;
	/* line-height: 19px; */
	display: inline-block;
	text-decoration: none;
}
.col p a:hover, .col li a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 979px) {
	.cols .col_2,
	.cols .col_3,
	.cols .col_4 {
		width: 100% !important;
	}
	.cols .col_2.celda {
		width: 100% !important;
		float: left !important;
		display: block !important;
		margin: 0 0 25px 0 !important;
	}
	.cols .col_2.celda.desk {
		display: none !important;
	}
	.col {
		width: 100%;
		text-align: center !important;
	}
	.col.to_left{
	    text-align: left !important;	
	}
}
.cols.flx{
	display: flex !important;
	justify-content: space-between !important;
	padding: 0 15px;
}
@media screen and (max-width: 979px){
.cols.flx{
	flex-direction: column;
	display: inline-block !important;
	text-align: left !important;
}
}
.cols .cols.flx{
	padding: 0px;
}
.fila.clear{
	background-color:#fff;
	padding: 25px 25px 5px 25px !important;
	margin: 0 0 25px 0;
	border-radius: 10px;
	border: solid 1px #ccc;
}
.fila.cyan{
	background-color: rgba(66,196, 221, 10%);
	padding: 25px 25px 5px 25px !important;
	margin: 0 0 25px 0;
	border-radius: 10px;
	border:none;
}
.cols.cyan{
	background-color: rgba(66,196, 221, 10%);
	padding: 15px 15px 15px 15px !important;
	margin: 0 0 10px 0;
	border-radius: 10px;
	justify-content: space-between;
}
.cols.cyan .col{
	margin: 0 0 0 0;
}
.cols.cyan *{
	margin: 0px;
}
.fila.clear textarea,
.fila.cyan textarea{
	min-height: 65px !important;
	background-color: #fff !important;
}
.cols.flx .col{
	display: flex !important;
	flex-direction: column;
	padding: 0px;
}
.cols.flx.top .col{
	justify-content: flex-start !important;
}
@media screen and (max-width: 979px){
.cols.flx .col{
	display: inline-block !important;
	flex-direction: column;
	padding: 0px;
	width: 100% !important;
	justify-content: flex-start !important;
	text-align: left;
}
}
.cols.flx .col.inline.middle{
	display: flex !important;
	flex-direction: column;
	padding: 0px;
	align-items: center;
	justify-content: flex-start !important;
}
@media screen and (max-width: 979px){
.cols.flx .col.inline.middle{
	display: inline-block !important;
	width: 100% !important;
	text-align: left;
}
}
.cols .col.division{
	padding: 0 25px 0 25px;
}
.cols .col.division:before{
	width: 1px;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	content: "";
	display: inline-block;
	background-color: #ccc;
}
@media screen and (max-width: 979px){
.cols .col.division{
	padding:15px 0 ;
	text-align: left !important;
}
.cols .col.division:before{
	height: 1px;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	content: "";
	display: inline-block;
	background-color: #ccc;
}
.cols .col.division *{
	display: inline-block;
	vertical-align: middle;
}
.cols .col.division fieldset{
	margin: 0 5px 0 0;
}
}
/*---------- Header*/
.header{
	z-index: 100;
	position: absolute;
	left: 0px;
	top: 0px;
}
header{
	text-align: center;
	width: 100%;
	float: left;
	min-height: 90px;
	z-index: 200;
	/* overflow: visible; */
	background-color: rgba(0,0,0,0);
}
.clear header{
	position: absolute;
	top: 0px;
	left: 0;
	z-index: 10;
}
header .logo{
	float: left;
	width:auto;
	margin: 10px 0 0 0;
	display: inline-block;
	vertical-align: middle;
}
header .logo.black{
	display: inline-block;
}
.clear header .logo.black{
	display: none;
}
.clear header .logo.white{
	display: inline-block;
}
@media screen and (max-width: 1179px){
header .cols{
	max-width: 100%;
	padding: 0 0px !important;
}
}
header .cols{
	max-width: 1600px;
	padding: 0 20px;
	min-height: 140px;
}
@media screen and (max-width: 1179px){
.clear header{
	position: relative;
	background-color: #000;
}
header .logo{
	margin: 15px 0 15px 15px;
}
header .logo img{
	height: 110px;
}
}
header .logo img{
	max-height: 120px !important;
	/* height: 0px; */
	width: auto;
	max-width: 100% !important;
}
@media screen and (max-width: 579px){
header .logo{
	margin-left: 10px;
	margin-top: 10px;
}
header .logo img{
	max-width: 170px !important;
	float: left;
}
}
header ul.menu{
	width: auto;
	float: right !important;
	display: block;
	margin: 45px 0 0 0;
	text-align: right;
	position: relative;
}
@media screen and (max-width: 1179px){
	header ul.menu{
		width: 100%;
		display: none;
		position: absolute;
		left: 0;
		top: 0px;
		height: 100vh !important;
		float: none !important;
		margin: 0px 0 0 0;
		text-align: left;
		padding: 70px 15px 25px 15px;
		background: rgba(255,255,255,1);
		-webkit-transition: all .1s ease-in-out !important;
		-moz-transition: all .1s ease-in-out !important;
		transition: all .1s ease-in-out !important;
		overflow:auto;
	}
	header ul.menu.active{
		display:inline-block;
		position:fixed;
		top:0;
		left:0;
	}
}
header ul.menu li{
	width: auto  !important;
	display: inline-block;
	float: none;
	margin: 0 0 0 25px;
	vertical-align: middle;
    text-decoration: none;
	position: relative;
	font-size: 17px;
}
@media screen and (max-width: 1179px){
header ul.menu li{
	width: 100%  !important;
	display: inline-block;
	float: left;
	margin: 0px;
	padding: 0 0px;
	font-size: 17px;
}
header ul.menu li li{
	padding: 0px;
}
}
header ul.menu li a{
	text-align: left !important;
}
header ul.menu .dropdown{
	position: absolute; 
	top: 0px;
	display: none;
	right: 0px;
	width: 276px;
	height: auto;
	padding: 50px 0 0 0;
	z-index: 0;
}
@media screen and (max-width: 1179px){
header ul.menu .dropdown{
	position: relative;
	top: 0px;
	display: none;
	left: 0px;
	width: 100%;
	height: auto;
	padding: 0px 0 0 0;
	z-index: 0;
}
}
header ul.menu .dropdown ul{
	background-color:#fff;
	width: 100%;
	float: left;
	display: block;
	padding: 13px;
	box-shadow: 3px 3px 10px rgba(0,0,0,0.3);
	position: relative;
	border-radius: 10px;
}
@media screen and (max-width: 1179px){
header ul.menu .dropdown ul{
	background-color: #fff;
	box-shadow: 3px 3px 10px rgba(0,0,0,0);
	margin: 0 0 18px 0;
}
}
header ul.menu li a{
	text-decoration: none !important;
	color: #fff;
	font-size: 1em;
	line-height: 45px;
	margin: 0 0 0 0px;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	font-weight: 600 !important;
}
header ul.menu li a.user{
	position: relative;
	margin: 0 0 0 25px;
	background-image: url(../images/flecha_baja.svg);
	background-repeat: no-repeat;
	background-position: right center;
	padding: 0 20px 0 0;
}
header ul.menu li a.user:after{
	position: absolute;
	content: "";
	float: none;
	display: inline-block;
	left: -25px;
	top: 0px;
	background-color: #ccc;
	height: 52px;
	width: 1px;
}
@media screen and (max-width: 1179px){
	header ul.menu li a.user{
		position: relative;
		margin: 20px 0 0 0px;
		background-image: url(../images/flecha_baja.svg);
		background-repeat: no-repeat;
		background-position: right center;
		padding: 0 00px 0 0;
		width: 100%;
	}
	header ul.menu li a.user:after{
		position: absolute;
		content: "";
		float: none;
		display: inline-block;
		left: 0px;
		top: 0px;
		background-color: #ccc;
		height: 1px;
		width: 100%;
		margin-left: 0px !important;
	}
	header ul.menu li a{
		color: #fff;
		text-align: left !important;
		width:100%;
	}
	header ul.menu li a.parent span{
		margin-left: -3px;
	}
}
@media screen and (min-width: 980px){
	.clear header ul.menu li a{
		color: #fff;
	}
}
header ul.menu li a.parent{
	background-image: url(../images/flecha_baja.svg);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 19px;
}
.clear header ul.menu li a.parent{
	background-image: url(../images/flecha_baja.svg);
}
header ul.menu li a.parent.activo{
	background-image: url(../images/flecha_sube.svg);
}
.clear header ul.menu li a.parent.activo{
	background-image: url(../images/flecha_sube_w.svg);
}
header ul.menu ul li{
	width: 100% !important;
	text-align: left;
	float: left;
	margin: 8px 0;
}
header ul.menu ul li a{
	color: #fff;
	text-align: left !important;
	float: left;
	line-height: initial !important;
	margin: 0px !important;
	padding: 0 10px;
	text-transform: uppercase !important;
}
header ul.menu ul li li a{
	line-height: 20px !important;
}
@media screen and (max-width: 1179px){
header ul.menu ul li a{
	color: #333;
}
}
header ul.menu li a img{
	vertical-align: middle;
	margin: 0 7px 0 0;
}
@media screen and (max-width: 979px){
header ul.menu li a img{
	width: 30px !important;
	margin-right: 10px !important;
}
}
header ul.menu li a.user img{
	vertical-align: middle;
	margin: 0 0px 0 7px;
}
header ul.menu li a span{
	text-decoration: none !important;
	font-size: 1em;
	line-height: 20px;
	display: inline-block;
	color: #777;
	font-size: 15px;
	font-weight: 600 !important;
	position: relative;
	vertical-align: middle;
	float: none;
	cursor: pointer !important;
	-webkit-transition: all .2s ease-in-out !important;
	-moz-transition: all .2s ease-in-out !important;
	transition: all .2s ease-in-out !important;	
}
header ul.menu li a:hover span{
	color: #ccc !important;
	-webkit-transition: all .2s ease-in-out !important;
	-moz-transition: all .2s ease-in-out !important;
	transition: all .2s ease-in-out !important;	
}
header ul.menu li li a:hover span{
	color: #ccc !important;
}
/*---------- Hamburguer Responsive*/
#pull {
	display: none !important;
}
@media screen and (max-width: 1279px) {
	#pull {
		display: block !important;
		text-decoration: none;
		color: inherit;
		position: absolute !important;
		right: 10px;
		top: 20px;
		cursor: pointer;
		z-index: 10;
		width: 22px !important;
		height: 19px;
		border-bottom: 3px solid #00607c;
		-webkit-transition: all 0.5s ease-in-out;
		-moz-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
		-webkit-transition-property: color, border;
		-moz-transition-property: color, border;
		transition-property: color, border;
		color: #00607c;
	}
}
@media screen and (max-width: 579px) {
	#pull {
		right: 10px;
		top: 40px;
	}
}
#pull:before, #pull:after {
	content: "";
	display: inline-block;
	width: 100%;
	border-bottom: 3px solid #00607c;
	position: absolute;
	left: 0;
	-webkit-transition: transform 0.5s ease-in-out;
	-moz-transition: transform 0.5s ease-in-out;
	transition: transform 0.5s ease-in-out;
}
#pull:after {
	top: 8px;
}
#pull.active {
	border-color: transparent;
	line-height: 0;
	transition: right 500ms ease;
	color: #00607c;
}
#pull.active:before, #pull.active:after {
	top: 7px;
}
#pull.active:before {
	transform: rotateZ(45deg);
}
#pull.active:after {
	transform: rotateZ(-45deg);
}
/*---------- Slider*/
.slider {
	margin: 0px 0 0px 0;
	/* overflow: hidden !important; */
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
	/*background-attachment: fixed;*/
}
/*---------- Boton Telefono*/
a.telefono {
	float: left;
	margin: 0 0 20px 0;
	color: #18453b;
	font-size: 25px;
	background-image: url(../images/ico_tel_contacto.svg);
	background-repeat: no-repeat;
	min-height: 35px;
	line-height: 35px;
	padding: 0 0 0 45px;
}
/*---------- Generales Formulario*/
.formulario {
	text-align: center;
}
.formulario h1{
	text-align: center;
	margin: 0px 0 20px 0;
	font-size: 18px;
	color: #fff;
}
.formulario h1 strong{
	font-size: 25px;
	color: #3FC4DD;
	margin: 7px 0 0;
	display: inline-block;
}
.formulario .fila {
	margin: 0 0 15px 0;
}
.formulario .fila.date {
	margin: 0 0 0px 0;
}
.formulario p.etiqueta {
	width: auto;
	float: none;
	display: inline-block;
	vertical-align: middle;
	margin: 0px 0 0 3px;
}
.formulario form {
	float: left;
	text-align: center;
}
@media screen and (max-width: 979px) {
	.formulario form .cols {
		margin: 0px !important;
	}
	.formulario form input[type="text"], .formulario form input[type="password"] {
		margin: 0 0 10px 0 !important;
		width: 100% !important;
	}
}
.formulario input,
.formulario select,
.formulario textarea {
	font-size: 16px;
}
.formulario label,
.formulario em {
	float: left;
	width: 100%;
	margin: 0 3px 6px 0;
	color: #333;
	font-size: 16px;
	text-align: left !important;
	font-style: normal;
	vertical-align: middle;
}
.formulario label.short{
	width: calc(100% - 40px);
	font-size: 16px;
	line-height: 18px;
}
.formulario label.red {
	color: #d80000;
}
.formulario .auto {
	width: auto;
	float: none;
	margin: 0 3px 0 0;
	display: inline-block;
	vertical-align: middle;
}
.formulario em {
	font-size: 13px;
}
.formulario label span {
	float: none;
	width: auto;
	margin: 0 0 0px 0;
	color: #000;
	font-size: 14px;
	text-align: left !important;
	vertical-align: baseline;
	display: inline-block;
}
.formulario label a {
	font-size: 1em;
	color: #999;
	display: inline-block;
	float: none;
	margin: 0px;
	text-decoration: none;
	float: right;
	vertical-align: baseline;
}
.formulario label a:hover {
	text-decoration: underline;
}
.formulario .check label {
	width: auto;
	margin: 0 0 10px 0;
	line-height: 25px;
}
.formulario label * {
	margin-top: 4px !important;
	float: left;
}
.formulario label strong {
	margin-top: 0px !important;
	float: none;
}
.formulario input, .formulario select {
	height: 45px;
	color: #000;
	padding: 3px 9px;
	background-color: #eee;
	margin: 0 0 0px 0;
	font-size: 18px;
	border: solid 1px #ddd;
	text-align: left;
	position: relative;
}
.formulario input.white,
.formulario select.white{
	background-color: #fff;
}
.formulario .date{
	position: relative;
}
.formulario .date input[type="text"]{
	background-image: url(../images/ico_calendario.svg) !important;
	background-repeat: no-repeat  !important;
	background-position: right 12px center  !important;
	padding-right: 46px
}
.formulario .date:before{
	content: "";
	width: 1px;
	height: calc(100% - 4px);
	position: absolute;
	right: 47px;
	top: 2px;
	z-index: 10;
	background-color: #ddd;
	display: inline-block;
}
.login .formulario input, .login .formulario select {
	margin: 0 0 10px 0;
}
.formulario input.fecha,
.formulario input.datepicker {
	background-image: url(../images/ico_calendario_gris.svg);
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 40px;
}
.formulario input[type="radio"] {
	width: 20px;
	height: 20px;
}
.formulario input[type="password"] {}
.formulario input[type="submit"], .formulario button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	box-sizing: border-box !important;
	cursor: pointer;
}
.formulario select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../images/flecha_baja.svg);
	background-repeat: no-repeat;
	background-position: right 12px center;
}
.gris select,
.gris input{
	background-color: #fff;
}
.formulario select.white{
	background-color: #fff;
}
.formulario select option {
	font-size: 1em;
}
.formulario textarea {
	min-height: 271px;
	color: #000 !important;
	padding: 6px 6px;
	background-color: #eee;
	margin: 0 0 5px 0;
	font-size: 18px;
	text-align: left !important;
	border: solid 1px #ddd;
}
.formulario textarea.breve {
	min-height: 120px;
}
.formulario textarea.muybreve {
	min-height: 80px;
}
.formulario textarea.ckeditor, .cke {
	border: solid 0px #ddd !important;
}
.formulario .inline, .formulario .inline * {
	display: inline-block;
	width: auto;
	text-align: left;
	float: none;
	vertical-align: middle;
	margin: 0 5px 0px 0;
}
.formulario .inline.top, .formulario .inline.top * {
	vertical-align: top;
}
.formulario .inline{
	margin: 0 0 0 0;
}
.formulario .cupon fieldset.inline {
	width: 100% !important;
}
.formulario .cupon h3 {
	font-size: 14px !important;
}
.formulario b{
	font-family: "open_semi"
}
.formulario .inline * {
	margin: 0 5px 0px 0 !important;
}
::-webkit-input-placeholder {
	color: #7a867d;
}
:-moz-placeholder {
	/* Firefox 18- */
	color: #7a867d;
}
::-moz-placeholder {
	/* Firefox 19+ */
	color: #7a867d;
}
:-ms-input-placeholder {
	color: #7a867d;
}
.formulario #fant {
	position: absolute;
	left: -9999px;
}
::-moz-placeholder {
	/* Firefox 19+ */
	color: #aaa;
}
:-ms-input-placeholder {
	color: #aaa;
}
.formulario div.aviso_privacidad {
	display: inline-block;
	float: left;
	width: 100%;
	text-align: left;
	border-bottom: solid 0px #ccc;
	height: auto;
	text-align: left;
	padding: 0 0 20px 0;
	margin: 5px 0 00;
}
@media screen and (max-width: 979px) {
	.formulario div.aviso_privacidad {
		text-align: center;
	}
}
.formulario div.aviso_privacidad div {
	float: left;
	width: 100%;
	text-align: left;
}
.formulario div.aviso_privacidad h5 {
	text-transform: uppercase;
	font-family: "Lato";
	color: #fff;
	font-size: 12px;
}
@media screen and (max-width: 979px) {
	.formulario div.aviso_privacidad h5 {
		margin: 0 0 5px 0;
	}
}
.formulario div.aviso_privacidad p.etiqueta {
	margin: 0px 0 0px 0px !important;
	float: none !important;
	text-align: left;
	display: inline-block;
	color: #7a867d;
	vertical-align: middle;
	text-align: left !important;
	font-size: 16px !important;
	font-family: "Lato";
	-o-width: calc(93% - 22px) !important;
	-moz-width: calc(93% - 22px) !important;
	-webkit-width: calc(93% - 22px) !important;
	width: calc(93% - 22px) !important;
	line-height: 16px !important;
}
.formulario div.aviso_privacidad p a {
	width: auto !important;
	color: #79857d;
	display: inline-block !important;
	text-decoration: none;
	vertical-align: baseline;
	font-size: 1em !important;
	line-height: 14px !important;
}
.formulario div.aviso_privacidad p a:hover {
	color: #000;
	font-size: 1em;
}
.formulario div.aviso_privacidad :before {
	display: none !important;
}
.formulario input[type="radio"] {
	height: 22px;
	width: 22px !important;
	float: none;
	display: inline-block;
	vertical-align: middle;
	margin: 0 4px 0 0 !important;
	border: solid 1px #ccc !important;
}
.formulario input[type="radio"]:checked{
	font-family: "open_semi";
}
.formulario input[type="checkbox"] {
	height: 22px;
	width: 22px !important;
	float: none;
	display: inline-block;
	vertical-align: middle;
	margin: 0 4px 0 0 !important;
	border: solid 1px #ccc !important;
}
@media screen and (max-width: 979px) {
	.formulario input[type="checkbox"],
	.formulario input[type="radio"] {
		vertical-align: top;
	}
}
.formulario input:disabled,
.formulario input:disabled:hover,
.formulario select:disabled,
.formulario select:disabled:hover,
.formulario textarea:disabled,
.formulario textarea:disabled:hover{
	opacity:0.5 !important;
	cursor: default !important;
	pointer-events:none !important;
}
.formulario .disabled,
.formulario .disabled-click{
	cursor: default !important;
	pointer-events:none !important;	
}
.formulario .disabled{
	opacity:0.5 !important;
}
.formulario .politica {
	text-align: center;
	font-size: 14px;
	color: #999;
	margin: 0 0 0px 0;
}
.formulario .politica a {
	text-align: center;
	font-size: 1em;
	color: #999;
}
.formulario .politica a:hover {
	color: #666;
}
.formulario .criterio-cumplimiento{
	width:100%;
	display:inline-block;
}
.formulario .criterio-cumplimiento label{
	width:calc(100% - 40px);
	font-size:18px;
}
.formulario .criterio-cumplimiento label.resaltado{
	font-family: "open_bold";
}
/*---------- Sin margen abajo*/
.marginless {
	margin-bottom: 0px !important;
}
/*---------- Titulos*/
.title {
	text-align: center !important;
	position: relative !important;
	margin: 0 0 50px 0 !important;
	color: #444 !important;
	font-size: 16px !important;
}
.title::after {
	content: "";
	position: absolute;
	height: 1px;
	bottom: -15px;
	left: calc(50% - 45px);
	width: 90px;
	background-color: #ccc;
	border-radius: 10px;
	display: inline-block;
}
/*----------Columnas formulario*/
.formulario .cols {
	max-width: 1200px !important;
}
.formulario .col {
	padding: 0 10px;
	margin: 0 0 20px 0;
}
.formulario .col.contiene_imagen {
	position:relative;
}
.formulario .col.contiene_imagen a.remove{
	position:absolute;
	top:20px;
	right:25px;
	width:45px !important;
	height:45px !important;
	z-index:10;
}
/*------Swal overwrite-----*/
.swal2-popup .swal2-title {
	display: inline-block !important;
}
/*------Resalto campos requeridos Admin-----*/
form input.requerido ,
form select.requerido ,
form textarea.requerido {
	border:solid 1px red !important;
}
form p.bajo_input{
	font-size:17px;
	background-color:#EEE;
	padding:10px 15px;
	color:#000;
}
.login {
	background-image: url(../images/fondo_login.jpg);
	height:100vh !important;
}
.login hr{
	margin: 0 0 20px 0 !important;
}
.login .fila{
	height: 100vh;
}
.login .cols{
	text-align: left;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	height: 100vh;
}
.login .cols .col{
	display: flex;
	flex-direction: column;
	align-items:center;
	justify-content: center;
	height: 100%;
}
.login .cols .col img{
	margin: 0 0 30px 0;
}
.login h1{
	margin: 20px 0 40px 0 !important;
}
.login form{
	margin: 0 0 30px 0;
	background-color: #fff;
	padding: 20px;
	border-radius: 15px;
}
.login p{
	text-align: center;
}
.login p a{
	display: inline-block;
	color: rgba(255,255,255,0.6);
	text-decoration: underline;
}
input[type="submit"],
.boton{
	background-color: #42C4DD;
	width: auto;
	min-width: 180px;
	border: 0px;
	text-align: center;
	padding: 17px 20px;
	border-radius: 16px 0;
	color: #fff;
	font-family: "open_bold";
	font-size: 20px;
	width: auto !important;
	height: auto !important;
	text-decoration: none !important;
	display: inline-block !important;
	color: #ffff !important;
	place-content: center !important;
}
input[type="submit"]:hover,
.boton:hover{
	background-color: #1F395D;
}
.fila .titulo{
	text-align: center;
	margin: 0 0 17px 0;
	display: inline-block;
	float: none;
	font-size: 18px;
	text-align: center;
}
.fila .titulo span{
	display: inline-block;
	vertical-align: middle;
}
.fila .titulo .ico{
	margin-right: 10px;
}
.fila .ico{
	background-color: #42C4DD;
	width: 40px !important;
	height: 40px;
	border-radius: 100%;
	content: "";
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
}
.fila .ico:hover{
	background-color: #1F395D;
}
.fila .col.numeric{
	background-color: #42C4DD;
	text-align: center;
	width: 40px !important;
	height: 40px;
	border-radius: 100%;
}
.fila .col.desc{
	width: calc(100% - 45px);
	padding: 0 0 0 10px;
}
@media screen and (max-width: 979px){
.fila .col.desc{
	width: 100%;
	padding: 0 0 0 0px;
}
}
.fila .numeric p{
	display: grid !important;
	place-content: center !important;
    float: none;
	width: 40px;
	height: 40px;
	text-align:center;
}
.fila .numeric p strong{
	margin:0 !important;
}
@media screen and (max-width: 979px){
.fila .numeric{
	float: left;
	margin: 0 0 10px 0 !important;
}
}
.fila .ico.nuevo{
	background-image: url(../images/ico_nuevo.svg);
}
.fila .ico.view{
	background-image: url(../images/ico_eye.svg);
}
.fila .ico.edit{
	background-image: url(../images/ico_pencil.svg);
}
.fila .ico.delete{
	background-image: url(../images/ico_trash.svg);
}
.fila h2{
	color: #1F395D;
	font-size: 22px;
	font-family: "open_bold";
}
.fila h2.cyan{
	color: #41C4DD;
}
.fila h2.gran{
	font-size: 23px !important;
}
.fila h3{
	color: #333;
	font-size: 28px;
}
.fila h4{
	color: #1F395D;
	font-size: 16px;
	float: none; 
	display: inline-block;
	vertical-align: middle;
	width: auto;
}
.fila h4.padleft{
	padding: 0 0 0 10px;
}
.fila h6{
	color: #1F395D;
	font-size: 16px;
	font-family: "open_semi";
	line-height: 21px;
}
.fila h6 span{
	color: #999;
	font-size: inherit;
	line-height: 23px;
	font-family: "open_reg";
}
.fila p{
	color: #333;
	font-size: 18px;
	font-family: "open_reg";
	line-height: 1.3em;
	margin-bottom: 20px;
}
.fila p.contratista-info{
	font-size: 16px;
	text-align:left;
	line-height: 1.4em;
}
.fila p.contratista-info strong{
	font-size: inherit;
	line-height: inherit;
	vertical-align: top;
	margin:0 !important;
}
@media screen and (min-width: 980px){
	.fila p.contratista-info{
		padding-right:20px;
	}
}
.fila p.activo,
.fila p.inactivo{
	background-color: #42C4DD;
	width: 85px;
	color: #fff;
	padding: 5px 10px;
	text-align: center;
	margin-left: -28px;
	display: inline-block !important;
}
.fila p.inactivo{
	background-color: #d50000;
	width: 100px;
}
.fila p.nota{
	font-size: 14px;
}
.fila p strong{
	color: #000;
	font-size: 18px;
	font-family: "open_semi" !important;
	display: inline-block;
	vertical-align: middle;
	margin: 0px 10px 0 0 !important;
	line-height:inherit;
}
.fila .centro{
	text-align: center;
}
.fila p.small{
	font-size: 13px;
}
.fila p.space{
	margin-right: 7px !important;
}
.fila p a{
	font-size: 1em;
	text-decoration: underline !important;
}
.fila p a.atras{
	background-image: url(../images/flecha_atras.svg);
	background-repeat: no-repeat;
	background-position: left center;
	padding: 10px 0 10px 38px;
	font-size: 18px;;
	text-decoration: underline !important;
}
.fila p a.atras span{
	font-size: 18px;
	text-decoration: underline !important;
	font-family: "open_semi";
	display: inline-block;
	vertical-align: middle;
	text-transform: capitalize;
	margin-bottom: 3px !important;
}
.fila p a.mail{
	background-image: url(../images/ico_mail.svg);
	background-repeat: no-repeat;
	background-position: left center;
	padding: 10px 0 10px 38px;
	text-decoration: none !important;
}
.fila p a span{
	font-size: 1em;
	text-decoration: underline !important;
	margin-bottom: 2px;
}
.fila p span{
	font-size: 1em;
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 0;
}
.fila p span.medium{
	font-size: 16px !important;
}
.fila p *{
	font-size: 1em;
}
.fila ul.list{
	text-align: left;
	padding: 0 0 0 0px;
	float: left;
	width: 100%;
}
.fila ul.list li{
	position: relative;
	padding: 0 0 0 20px;
}
.fila ul.list.contratista-actividades li{
	line-height:1em;
	margin-bottom:15px;
}
.fila ul.list li:before{
	width: 8px;
	height: 8px;
	display: inline-block;
	position: absolute;
	border-radius: 100%;
	border: solid 1px #42C4DD;
	content:"";
	left: 0px;
	top: 6px;
}
@media screen and (max-width: 979px){
.fila ul.list li{
	width: 100% !important;
}
}
.inline{
	text-align: left;
	vertical-align: middle !important;
	flex-direction: row !important;
}
.inline *{
	display: inline-block !important;
	float: none;
	vertical-align: middle;
}
.inline.base *{
	vertical-align: bottom !important;
}
fieldset.inline *{
	display: inline-block;
	vertical-align: middle;
	width: auto;
	margin-right: 10px;
}
.col.inline *{
	width: auto;
	vertical-align: middle;
}
@media screen and (max-width: 979px) {
.col.inline *{
	width: auto !important;
	display: inline-block !important;
	vertical-align: middle;
}
}
.inline a img{
	margin: 0 9px 0 0 !important;;
}
fieldset.conCheck{
	width:100% !important;
}
fieldset.conCheck label{
	width:calc(100% - 40px) !important;
}
h2.subtituloForm{
	width:100%;
	display:inline-block;
	margin-bottom:30px;
	font-size:20px;
	padding-top:10px;
}
@media screen and (min-width: 980px) {
	h2.subtituloForm{
		padding-left:10px;
	}
}

/*----------Clase tabla*/
.table {
	float: left;
	width: 100%;
	margin: 0 0 35px 0 !important;
}
@media screen and (max-width: 979px) {
	.table {
		display: block !important;
	}
}
.ui-datepicker {
	padding: 5px !important;
}
.ui-datepicker .table {
	float: none !important;
	display: inline-block;
	max-width: 100% !important;
}
.table thead {
	background-color: #2ea5b0;
	padding: 0px !important;
	width: 100% !important;
	max-width: 100% !important;
}
.table thead th {
	font-size: 17px;
	color: #fff;
	font-family: "open_semi" !important;
	padding: 15px 10px !important;
	text-align: left;
}
.table tbody {
	border-right: solid 1px #ddd;
	border-bottom: solid 1px #ddd;
	border-left: solid 1px #ddd;
}
.table tbody td * {
	vertical-align: middle;
}
@media screen and (max-width: 979px) {
	.table tbody td span {
		display: inline-block;
		vertical-align: middle;
	}
}
.table tbody td {
	font-size: 15px;
	color: #333;
	padding: 0px 10px !important;
	text-align: left;
	background-color: #eee;
	border-top: solid 1px #ddd;
	padding: 10px 10px !important;
	text-align: left;
	vertical-align: middle;
}
@media screen and (max-width: 979px) {
	.table * {
		width:100%;
		display:inline-block;
	}
	.table tbody {
		border:none;
	}
	.table tbody tr {
		display:inline-block;
		width: 100% !important;
		float: left !important;
		margin-bottom:25px;
	}
	.table tbody td {
		width: 100% !important;
		max-width: 100% !important;
		float: left;
		display: block !important;
	}
	.table span {
		margin: 0 0 3px 0;
	}
	.table thead {
		display: none !important;
	}
}
.ui-datepicker table tbody td {
	font-size: 17px;
	color: #333;
	padding: 0px 0px !important;
	text-align: left;
	background-color: #eee;
	border-top: solid 0px #ddd;
	padding: 0px 0px !important;
	text-align: left;
}
.ui-datepicker table {
	margin: 0 0 0 0 !important;
}
.table tbody tr.alt td {
	background-color: #fff;
}
.table tbody tr td.imagenEnTabla img,
.table tbody tr td.bannerEnTabla img {
    width:100%;
	height:auto;
}
.table tbody tr td.imagenEnTabla img {
	max-width:150px;
}
.table tbody tr td.bannerEnTabla img {
	max-width:450px;
}
/*----------Tabla filtrable*/
@media screen and (max-width: 979px) {
	.table.tabla_filtrable thead,
	.table.tabla_filtrable tbody,
	.table.tabla_filtrable tfoot{
		float:left;
		width:100%;
	}
}
.tabla_filtrable thead {
	background-color: #fff;
	padding: 0px !important;
	margin-bottom: 15px !important;
}
.tabla_filtrable thead th {
	font-size: 17px;
	color: #333;
	padding: 0px 0px 0 0px !important;
	text-align: left;
}
@media screen and (max-width: 979px) {
	table.tabla_filtrable thead th {
		padding: 0px !important;
	}	
}
.tabla_filtrable thead th {
	padding: 0px 15px 0 0 !important;
}
.tabla_filtrable thead th:last-child {
	padding: 0px 0px 0 0 !important;
}
.tabla_filtrable thead th input {
	height: 45px;
	border: solid 1px #ddd;
	padding: 0 9px;
	margin-bottom: 10px !important;
	background-color: #eeeeee;
}
.tabla_filtrable thead th a {
	font-size: 17px;
	color: #333;
	text-transform: uppercase;
	margin: 0 0 10px 0;
	text-align: left;
	text-decoration: none;
	font-family:inherit;:
}
.tabla_filtrable tfoot tr {
	width: 100%;
}
.tabla_filtrable tfoot tr td {
	text-align: center;
	padding: 25px 0px 15px 0px;
	text-align: center !important;
}
.tabla_filtrable tfoot tr td a {
	font-size: 1em;
	text-decoration: none;
	color: #2ea5b0;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	display: inline-block !important;
	margin:0 10px 0 10px !important;
    float:none !important;
}
.tabla_filtrable tfoot tr td a:hover {
	color: #00607c;
}
.table.tabla_filtrable tfoot tr td a.active {
	background-color: #a5d8f2;
	color: #00607c;
}
.tabla_filtrable{
	margin: 0 0 50px 0;
	width: 100%;
}
.tabla_filtrable thead td{
	padding-bottom: 13px;
}
.tabla_filtrable td,
.tabla_filtrable td span{
	font-size: 17px;
	color: #333;
	line-height: 1em;
}
.tabla_filtrable tbody td{
	padding: 10px 0 10px 0px;
	border-top: solid 1px #ddd;
}
@media screen and (max-width: 979px) {
	.tabla_filtrable tbody td {
		border-top: none;
		padding: 5px !important;
	}	
}
.tabla_filtrable tbody td.small{
	width: 70px !important;
}
.tabla_filtrable tbody td h6{
	display: none;
}
@media screen and (max-width: 979px){
	.tabla_filtrable tbody td h6{
		display: inline-block;
		margin-bottom: 2px;
	}
}
.tabla_filtrable tbody tr td:first-child{
	padding-left: 10px;
	border-top: solid 1px #ddd;
}
@media screen and (max-width: 979px){
	.tabla_filtrable tbody tr td:first-child{
		border-top: none;
	}
}
.tabla_filtrable tbody{
	border-bottom: solid 1px #ddd;
}
.tabla_filtrable tbody tr{
	border-right: solid 1px #ddd;
	border-left: solid 1px #ddd;
}
@media screen and (max-width: 979px){
	.tabla_filtrable tbody tr{
		border: solid 1px #ddd;
		padding:10px;
	}	
	.tabla_filtrable td span{
		display: inline-block;
		vertical-align: middle;
	}
}
.tabla_filtrable td span.light{
	display: inline-block;
	width: 30px;
	height: 30px;
	vertical-align: middle;
	border-radius: 100%;
	margin-right: 10px;
}
.tabla_filtrable td .lupa{
	width: 40px;
	height: 40px;
	background-color: #2EA5B0;
	display: inline-block;
	border-radius: 100%;
	background-image: url(../images/ico_lupa_mayo.svg);
	background-repeat: no-repeat;
	background-position: center center;
}
.tabla_filtrable td .lupa:hover{
	background-color: #999;
}
.tabla_filtrable tbody tr{
	background-color: #f5f5f5;
}
.tabla_filtrable tbody tr.alt{
	background-color: #fff;
}
.tabla_filtrable .buttons{
	width: 15% !important;
	text-align: right;
}
@media screen and (max-width: 979px){
.tabla_filtrable .buttons{
	width: 100% !important;
	text-align: right;
}
.tabla_filtrable .buttons{
	text-align: left;
}
}
.tabla_filtrable .buttons a{
	margin-left: 6px;
}
.tabla_filtrable .buttons a:first-child{
	margin-left: 0px;
}
.tabs,
.tabs_2{
	text-align: center;
	display: flex;
	justify-content: space-between;
}
.tabs.start,
.tabs_2.start{
	justify-content: flex-start;
}
.tabs li,
.tabs_2 li{
	float: none;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding-right: 20px;
	border-bottom: solid 6px #eee;
	height: 100px;
}
@media screen and (max-width: 979px){
	.rspnsv_tabs{
		width: 100%;
		float: none;
		display: inline-block;
		z-index: 3;
		text-align: left;
		border: solid 1px #ccc;
		padding: 15px 25px 15px 10px;
		font-size: 19px;
		text-decoration: none!important;
		background-image: url(../images/flecha_baja.svg);
		background-repeat: no-repeat;
		background-position: right 10px center;
		font-family: "open_bold" !important;
	}
	.rspnsv_tabs.activo{
		background-image: url(../images/flecha_sube.svg);
	}
	.rspnsv_tabs:hover{
		background-color: #eee;
	}
	.tabs,
	.tabs_2{
		text-align: left;
		display: none;
	}
	.tabs li,
	.tabs_2 li{
		/* width: auto; */
		float: none;
		display: inline-block;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 10px 0;
		width: 100% !important;
		border-bottom: solid 6px #eee;
		height: auto;
	}
}
.tabs li:before,
.tabs_2 li:before{
	display: none !important;
}
.tabs li.activo,
.tabs li.activo *,
.tabs_2 li.activo,
.tabs_2 li.activo *{
	cursor:default !important;
}
.tabs li.activo,
.tabs_2 li.activo{
	border-bottom:solid 6px #1F395D;
}
.tabs li a,
.tabs_2 li a{
	float: none;
	display: flex;
	align-items: center;
	flex-direction: row;
	justify-content: flex-start;
}
section .tabs li a,
section .tabs_2 li a{
	float: none;
	display: flex !important;
	align-items: center;
	flex-direction: row !important;
	justify-content: flex-start;
}
.tabs li a:hover span,
.tabs_2 li a:hover span{
	font-family: "open_semi";
}
.tabs li a *,
.tabs_2 li a *{
	float: none;
	font-size: 0px;
	display: inline-block;
	flex-direction: row;
	vertical-align: middle;
}
.tabs li a *,
.tabs_2 li a *{
	float: none;
	font-size: 0px;
	display: inline-block;
	flex-direction: row;
}
.tabs li a span,
.tabs_2 li a span{
	font-size: 16px;
	color: #999;
	width: calc(100% - 50px);
	font-size: 15px;
	text-align:left;
		align-items: flex-start;
}
.tabs li.activo a span,
.tabs_2 li.activo a span{
	font-family: "open_semi";
}
.tabs li a span,
.tabs_2 li a span{
	font-size: 18px !important;
	color: #888;
	display: inline-block;
	width: calc(100% - 50px) !important;
	text-align:left;
	flex-direction: column;
	align-items: flex-start;
	/*width: 100% !important;*/
	text-transform: initial !important;
}
.tabs li.activo a span,
.tabs_2 li.activo a span{
	color: #333;
}
.tabs li a span em,
.tabs_2 li a span em{
	font-size: inherit;
	color: inherit;
	display:block;
	width: 100% !important;
	float: left !important;
	font-style: initial !important;
}
.tabs li a:hover span em,
.tabs_2 li a:hover span em{
	color: #000 !important;
}
.tabs li a span b,
.tabs_2 li a span b{
	width: 100% !important;
	display: inline-block;
	color: #203A5D;
	font-size: 1em;
	display: inline-block;
	font-family: "open_semi";
}
.tabs li a span b.red,
.tabs_2 li a span b.red{
	color: red
}
.tabs li i,
.tabs_2 li i{
	display: inline-block;
	width: 40px;
	height: 40px !important;
	margin: 0 10px 0 0;
	background-position: center;
	background-size: 100% auto;
	vertical-align: middle;
	background-repeat: no-repeat;
}
section .tabs li.col i,
section .tabs_2 li.col i{
	display: inline-block !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 10px 0 0;
	background-position: center;
	vertical-align: middle;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.tabs li i.ok,
.tabs_2 li i.ok{
	background-image: url(../images/ico_check.svg);
}
.tabs li i.not_ok,
.tabs_2 li i.not_ok{
	background-image: url(../images/circle_grey.svg);
}
.tab_content{
	border: solid 1px #ddd;
	padding: 35px 28px 28px 28px;
	margin: 0 0 50px 0;
}
@media screen and (max-width: 979px){
	.tab_content{
		border: solid 1px #ddd;
		padding: 15px;
		margin: 20px 0 50px 0;
	}
}
section{
	border: solid 1px #ddd;
	border-radius: 6px;
	box-shadow: 0 0 7px rgba(0,0,0,0.2);
	margin: 0 0 30px 0;
	padding: 22px 15px;
	float: none;
	display: inline-block;
	width: 100%;
	vertical-align: top;
}
section .cols{
	text-align: left;
	vertical-align: middle !important;
	display: flex;
	height: auto;
	flex-direction: row;
	justify-contents: flex-start !important;
	align-items: flex-start;
}
@media screen and (max-width: 979px){
section .cols{
	flex-direction: column;
}
}
section .cols.tabs,
section .cols.tabs_2{
	display: flex;
	width: 100% !important;
}
section .col_4_5 .cols.tabs,
section .col_4_5 .cols.tabs_2{
	display: flex;
	width: 100% !important;
	justify-content: left;
}
section .cols .col{
	padding: 0 20px !important;
	min-height: 40px;
	text-align: left;
	vertical-align: middle !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	flex-basis: auto !important;
}
section .cols .col_4_5{
	padding-left: 0px !important;
}
section .cols.tabs li.col,
section .cols.tabs_2 li.col{
	display: flex !important;
	width: auto !important;
	flex-direction: row;
	align-items: flex-start;
	padding-left: 0px !important;
	border: 0px;
	height: auto;
}
@media screen and (max-width: 979px){
	section .cols.tabs li.col,
	section .cols.tabs_2 li.col{
		display: flex !important;
		width: 100% !important;
		flex-direction: row;
		align-items: flex-start;
		padding-left: 0px !important;
		border: 0px;
		height: auto;
		margin: 0 0 20px 0;
	}
	section .cols.tabs li.col *,
	section .cols.tabs_2 li.col *{
		text-align: left;
	}
}
section .tabs li.col p,
section .tabs_2 li.col p{
	display: inline-block !important;
	width: 100% !important;
	margin: 0 10px 0 0;
	background-position: center;
	vertical-align: middle;
}
section .cols .col *{
	vertical-align: middle !important;
	display: inline-block;
	width: auto !important;
	float: none !important;
	margin-bottom: 0px;
}
section .cols .col .ico{
	width: 40px !important;
}
section .cols .col.first-child{
	padding: 0 20px 0 0 !important;
}
section .cols .col.division{
	padding: 0 0px 0 20px;
	border-left: solid 1px #ccc;
}
@media screen and (max-width: 979px){
section .cols .col.division{
	padding: 0 0px 0 0px !important;
	border-left: solid 0px #ccc;
}
}
section .cols .col.division:before{
	display: none;
}
.cols .col.col_info{
	width: calc(100% - 40px);
	padding-left: 0px !important;
}
section .cols .col.col_id{
	width: 7%;
	padding-left: 0px !important;
}
section .cols .col.col_fecha{
	width: 20%;
}
section .cols .col.col_title{
	width: calc(73% - 40px);
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
}
section .cols .col.col_title *{
	margin: 0 10px 0 0;
}
.cols .col.col_eye{
	padding: 0px !important;
	width: 40px;
}
@media screen and (max-width: 979px){
.cols .col.col_info{
	width: 100%;
	padding-left: 0px !important;
	margin: 0 0 0px 0;
}
.cols .col.col_eye{
	margin: 0 0 20px 0;
	float: left;
}
}
section .tabs li.col span,
section .tabs_2 li.col span{
	display: inline-block !important;
	width: calc(100% - 40px) !important;
	margin: 0 10px 0 0;
	background-position: center;
	vertical-align: middle;
}
section .tabs li.col span.red,
section .tabs_2 li.col span.red{
	color:red;
}
section .tabs li.col span span,
section .tabs_2 li.col span span{
	font-family: "open_bold";
}
section .cols .col.big{
	padding-right: 00px !important;
}
section .cols .col .big h5{
	font-size: 45px;
	font-family: "open_semi" !important;
	width: 100% !important;
}
.big h5 img{
	height: 50px;
	margin: 0 5px 0 0;
	vertical-align: middle;
}
.big h5 span{
	font-size: 45px;
	color: #888;
	font-family: "open_semi" !important;
	vertical-align: middle;
}
.big h5 span em{
	font-size: 25px !important;
	font-style: normal !important;
	width: auto;
	float: none;
	display: inline-block;
}
.big h5 span.menor-puntaje{
	font-size: 35px;	
}
.big h5 span.menor-puntaje em{
	font-size: 16px !important;	
}
/*-----Porcentaje Ponderado Total */
#ponderado-total{
	display:inline-block;
	text-align:left;
	font-size:0;
	vertical-align:middle;
	margin-bottom:25px;
}
#ponderado-total .porcentaje,
#ponderado-total .texto{
	display: inline-block;
	vertical-align:middle;
}
#ponderado-total .porcentaje{
	width: 130px;
	height: 130px;
	border-radius: 50%;
	position: relative;
}
#ponderado-total .porcentaje.grey{
	border: solid 8px #CCCCCC;
}
#ponderado-total .porcentaje.green{
	border: solid 8px #00B900;
}
#ponderado-total .porcentaje.yellow{
	border: solid 8px #FFBF00;
}
#ponderado-total .porcentaje.red{
	border: solid 8px #FF0000;
}
#ponderado-total .porcentaje div,
#ponderado-total .porcentaje span{
	width:100%;
	height:100%;
}
#ponderado-total .porcentaje div{
	display:table;
}
#ponderado-total .porcentaje span{
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	font-size:30px;
	font-family: "open_bold";
	color: #666;
}
#ponderado-total .porcentaje span em{
	display:inline-block;
	width:auto;
	float:none;
	font-size:18px;
	font-family: "open_light";
}
#ponderado-total .texto{
	width:calc(100% - 130px);
	padding-left:10px;
	font-size:18px;
	line-height:1.4em;
}
#ponderado-total .texto strong{
	font-size:27px;
}
/*---------- Mensaje centrado */
.mensaje_centrado{
	padding-bottom:80px;
}
.mensaje_centrado *{
	width:100%;
	display:inline-block;
	text-align:center;
}
.mensaje_centrado h1{
	font-size:28px;
	font-family: "open_semi";
	color:#41C4DD;
}
/*---------- Lista tareas */
.lista_tareas{
	padding-bottom:20px;
	text-align:center;
	font-size:0;
}
.lista_tareas li{
	display: inline-block;
	vertical-align:top;
	padding:0 15px 30px;
}
.lista_tareas li a{
	display: flex;
	align-items: center;
	justify-content: center;
	width:200px;
	height:200px;
	border-radius:50%;
	font-size:22px;
	font-family: "open_medium";
	background-color:#42C4DD;
	color:#FFF;
	padding:25px;
	text-align:none;
}
.lista_tareas li a:hover{
	background-color:#1F395D;
	color:#FFF;
}
/*---------- Calificacion */
.seccion-boton-enviar,
.seccion-boton-enviar p{
	text-align:center;
	display:inline-block;
}
.seccion-boton-enviar{
	padding-top:20px !important;
}
.seccion-boton-enviar p{
	margin-top:10px;
	font-size:15px;
	color:red;
}
/*---------- Admin Error */
.fila .error-titulo{
	margin-bottom:40px;
	color:#1F395D;
}
.fila  .error-texto{
	background-color:#fec9c9;
	border-radius:10px;
	text-align: center;
	padding:30px;
	margin-bottom:50px;
	display:inline-block;
}
.fila .error-atras{
	display:inline-block;
	border:solid 1px #CCC;
	width:auto;
	padding:15px 40px;
	border-radius:5px;
	margin-bottom:30px;
	text-decoration:none;
	font-size:18px;
}
.fila .error-atras:hover{
	background-color:#1F395D;
	color:#FFF;
}
/*---------- Histogramas */
h3.histograma-titulo{
	margin-bottom:15px;
	font-size:22px;
	color:#41C4DD;
	text-align:left;
	font-family: "open_semi";
}
.histograma-area{
	display:inline-block;
	width:100%;
	/*height:400px;*/
	padding:20px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.3);
	margin-bottom:35px;
	position: relative;
}
.histograma{
	width:100%;
	height:100%;
}