/* 
	STILE DELLA STRUTTURA GENERALE DELLE PAGINE DEL SITO
	Ver 1.00a del 23/08/2017 

	font-family: 'Roboto Condensed', sans-serif;
	font-family: 'Roboto', sans-serif;
	font-family: 'Open Sans', sans-serif;
	font-family: 'Open Sans Condensed', sans-serif;
*/

@charset "utf-8";

/* CSS RESET */
	html, body, p, ul ,li, div, header, nav, section, article, aside, footer, hgroup, span, h1, h2, h3, h4, h5, h6, a{
		margin: 0;
		padding: 0;
		font-family: 'Roboto', sans-serif;
		font-size: 16px;
		color: #222;
	}

/* IMPOSTAZIONI GENERALI DELLA PAGINA */
	body, textarea {
		background-color: #fff;
	}
	body{
		min-width: 320px;
		max-width: 1300px;
		margin: 0 auto;
		overflow-x: hidden;
	}
	img{
		border: 0;
		margin: 0;
		padding: 0;
		max-width: 100%;
		display: block;
	}
	ul, ol{
		list-style: none;
	}
	ul.elenco_punti{
		list-style: square;
		font-family: 'Open Sans', sans-serif;
		margin-left: 30px;
	}
	.elenco_punti li{
		font-family: 'Open Sans', sans-serif;
		font-size: 1em;
		line-height: 1.4em;
	}
	li{
		font-size: .8em;
	}
	p{
		line-height: 1.4em;
	}
	a{
		text-decoration: none;
		font-family: 'Roboto Condensed', sans-serif;
		font-weight: normal;
		font-style: normal;
	}
	a:hover{
		text-decoration: underline;
	}

	.testo_nascosto{
		position: absolute;
		left: -9999px;	
	}

	.menu_inline li{
		display: inline;
		padding-right: 1.4em;
	}
	.menu_inline li:last-of-type{
		padding-right: 0;
	}
	.menu_inline a:hover{
		text-decoration: underline;
		cursor: pointer;
	}
	.menu_inline li:hover{
		cursor: default;
	}


/* ICONA DI CARICAMENTO O OPERAZIONE IN CORSO */
	.loading{
		height: 20px;
		width: 20px;
		border: 4px solid #666;
		border-top: 4px solid #aaa;
		border-radius: 50%;
		animation: spin 1.2s linear infinite;
	}
	@keyframes spin{
		0% {
			transform: rotate(0deg);
		}
		100% {
			transform: rotate(360deg);
		}
	}
	.loader{
		position: absolute;
		right: 20px;
		top: 0px;
		z-index: 95;
		display: none;
	}
	.loader_container{
		position:relative; 
		margin: 0 auto;
	}

/* BANNER COOKIES */
	#banner_cookie{
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
		background-color: #4ea844;
		z-index: 500;
		display: none;
	}
	#cookie_container{
		max-width: 570px;
		margin: 20px auto;
	}
	#cookie_container img{
		width: 80px;
		float: left;
	}
	#banner_cookie a{
		display: inline-block;
		margin-right: 30px;
		color: #000;
		margin-top: 25px;
		font-size: .8em;
	}
	#banner_cookie p{
		font-size: .7em;
		color: #fff;
	}
	#cookies_info{
		margin-left: 90px;
	}

/* Intestazione */
#corpo_intestazione{
	position: relative;
	height: 250px;
}
#nome{
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 10;
}
#nome p{
	font-size: 3.2em;
	text-transform: uppercase;
	line-height: .9em;
	margin-left: -2px;
}
#nome span{
	text-transform: uppercase;
	font-size: 1.25em;
	font-family: 'Open Sans Condensed', sans-serif;
	font-weight: bold;
	margin-bottom: 15px;
	display: inline-block;
}
#nome p.testo_piccolo{
	font-size: .9em;
	margin-bottom: 10px;
	text-transform: none;
	line-height: 1.2em;
}
#nome span.br_block{
	display: block;
	line-height: 0;
	margin: 0;
	padding: 0;
}
#cerchio{
	width: 210px;
	height: 227px;
	opacity: 0.6;
	float: right;
	overflow: hidden;
}
#cerchio img{
	width: 210px;
	height: 227px;
	margin-top: -5px;
	margin-left: 15px;
}
#icona_menu{
	width: 32px;
	position: absolute;
	z-index: 15;
	right: 20px;
	top: 20px;
}
#icona_menu:hover{
	cursor: pointer;
}

/* Menu Fisso Header */
#menu_fisso{
	position: absolute;
	top: 20px;
	right: 20px;
	text-align: right;
	z-index: 50;
	display: none;
}
#menu_fisso a{
	text-transform: uppercase;
	line-height: 1.8em;
}
#menu_fisso a:hover{
	color: rgb(28, 141, 153);
	text-decoration: none;
}
.menu_fisso_sel{
	border-bottom: 2px solid rgb(28, 141, 153);
	color: rgb(30, 112, 121);
}

/* Corpo Pagina */
#corpo_pagina{
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 60px;
}
#corpo_pagina h1{
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 1.6em;
	color: #00a1be;
	margin-bottom: .6em;
}
#corpo_pagina h2{
	font-weight: bold;
	text-transform: uppercase;
	font-size: 1.2em;
	font-family: 'Roboto Condensed', sans-serif;
	margin-bottom: .4em;
	margin-top: .4em;
	color: #00a1be;
}
#corpo_pagina p{
	font-family: 'Open Sans', sans-serif;
}
#corpo_pagina span.testo_piccolo{
	font-size: .8em;
}
#corpo_pagina strong{
	font-weight: 700;
}
#corpo_pagina a{
	font-size: 1.1em;
	color: #107586;
}

.cubetto{
	width: 9px;
	height: 9px;
	display: inline-block;
	background-color: #56bcce;
	margin-right: 7px;
	margin-bottom: 2px;
}

/* Fascia Footer */
#fascia{
	height: 44px;
	background-color: #56BCCE;
	margin-bottom: 20px;
	margin-top: 35px;
}
#fascia_linea{
	height: 6px;
	background-color: #00A2BC;
	border-top: 30px solid #56BCCE;
}

/* Corpo Footer */
#corpo_footer{
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 50px;
}
#corpo_footer h2{
	font-size: .8em;
	color: #666;
}
#contatti_footer{
	text-align: center;
}
#contatti_footer h3{
	font-size: 1.4em;
	font-weight: bold;
	font-family: 'Roboto Condensed', sans-serif;
}
#contatti_footer p{
	font-size: .9em;
}
#mappa_sito_footer{
	display: none;
}
#mappa_sito_footer li{
	line-height: 1.5em;
}
#mappa_sito_footer a{
	font-size: 1em;
}

/* Cassetto Menu */
#cassetto_menu{
	background-color: #56BCCE;
	transition: 0.1s ease all; 
	-moz-transition :0.1s ease all; 
	-webkit-transition: 0.1s ease all;
	text-align: center;
	padding: 0;
	margin-bottom: 0;
	height: 0;
	overflow: hidden;
} 
#cassetto_menu a{
	color: #fff;
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 2.3em;
	
}


/* Tabella */

h4{
	font-family: 'Roboto Condensed', sans-serif;
	font-size: .9em;
	font-weight: bold;
	margin-top: -6px;
	margin-bottom: 20px;
}
h5{
	text-transform: uppercase;
	font-size: 1.2em;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	margin-bottom: 8px;
}
h6{
	text-transform: uppercase;
	font-size: .8em;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	color: #666;
	margin: 8px;
}
table{
	width: 100%;
}
td{
	border: 1px solid #00a2bc;
	margin: 0;
	padding: 5px;
	font-family: 'Roboto Condensed', sans-serif;
}
.ore{
	width: 70px;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
}
.orario_lezioni{
	width: 100px;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
}
.rt{
	display: block;
}
#corpo_pagina .vai_scheda{
	width: 36px;
	text-align: center;
}
#corpo_pagina .vai_scheda a{
	font-family: 'Roboto Condensed', sans-serif;
	font-size: .9em;
	cursor: pointer;
	line-height: 0em;
	font-weight: bold;
}

.titoletto{
	display: block;
	font-size: .8em;
	font-weight: bold;
	color: #00a2bc;
	margin-top: 8px;
	margin-bottom: 6px;
}
.rientro{
	margin-left: 20px;
}

/* Immagine e Testo */
.col_immagine {
	width: 280px;
	margin: 0 auto;

}
.col_testo {
	margin-top: 30px;
}

/* MAPPA */
#map_canvas {
	width: 100%;
	height: 500px;
	border: 1px solid black;
}

/* Griglia Calendario */
.col_desc{
	width: 65px;
	text-align: right;
	font-family: "Roboto Condensed",sans-serif;
	font-size: .8em;
}

/* Form Ricerca */
#form_ricerca{
	max-width: 500px;
}
#ricerca_container{
	position: relative;
	width: 100%;
}
#icn_ricerca{
	position: absolute;
	top: 4px;
	right: 5px;
	width: 24px;
	height: 24px;
}
#icn_ricerca:hover{
	cursor: pointer;
}


/* VARIE */
	/* Testo che sostituisce un controllo in sola visualizzazione */
	.testo_libero{
		font-size: 1.4em;
		line-height: 1.6em;
		margin-bottom: 8px;
	}

	/* Testo di separazione di gruppi di controlli */
	.testo_intestazione_form_prima_riga{
		font-size: .8em;
		font-weight: bold;
		color: #000;
		padding: 0px 0 8px 0;
		text-transform: uppercase;
	}
	.testo_intestazione_form{
		font-size: .8em;
		font-weight: bold;
		color: #000;
		padding: 18px 0 8px 0;
		text-transform: uppercase;
	}


.gruppo_link a{
	display: block;
	line-height: 1.6em;
}

.due_colonne{
	margin-top: 30px;
}
.clear_fix::after {
	content: "";
	clear: both;
	display: table;
}


.colonna_sx{
	float: none;
	text-align: center;
	
}
.colonna_dx{
	float: none;
	text-align: center;
	margin-top: 25px;
}

.didascalia_img{
	font-size: .8em;
	color: #666;
	margin: 5px 15px 0 15px;
}


.attenzione{
	border: 5px solid red;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 20px;
}

.spazio_centrato{
	max-width: 600px;
	margin: 0 auto;
}


/* 
	MENU SEZIONI 
*/
	#menu_sezioni{
		margin-bottom: 20px;
	}
	#menu_sezioni ul{
		list-style: none;
		margin-bottom: 1.3em;
	}
	#menu_sezioni li{
		font-size: 1em;
		color: #666;
		padding-right: .9em;
		padding-left: .6em;
		border-right: 1px solid #5e94b6;
		text-decoration: none;
		display: inline;
		cursor: default;
	}
	#menu_sezioni li:last-child{
		border-right: none;
	}
	#menu_sezioni li:first-of-type{
		padding-left: 0;
	}
	#menu_sezioni a{
		text-decoration: none;
	}
	#menu_sezioni a:hover{
		text-decoration: underline;
	}


.link_gotomeeting{
	font-family: "Roboto Condensed",sans-serif;
}