p {
	margin-top: 1em;
}

@media (min-width: 940px) {
	.thema {
		font-size: 1.1em;
	}
}

h1, h2 {
	font-size: 8vmin;
	font-style: italic;
	font-weight: normal;
	padding: 0 0 5% 0;
}
h1 {
	font-size: 10vmin;
}
h3, h5 {
	font-size: 150%;
	font-style: italic;
	font-weight: normal;
	/*color: #FFFFFF;*/
	color: #000000;
	margin: 0 0 10px 0;
}

h5 {
	font-size: 110%;
}

.weiss h3, .weiss h5 {
	/*color: #000000;*/
}

h4, #ansprechperson em {	
	font-size: 125%;
	#font-style: italic;
	font-weight: normal;
	color: #3332CC;
	margin: 0 0 10px 0;
}


h6 {
	font-size: 100%;
	font-weight: bold;
}

hr {
	width: 85%;
	border: linear-grandient (#C2C2C2 0, #C2C2C2 100%, #C2C2C2 0);
}

#sc_fix {
	position: fixed;
	bottom: 10%;
	width: 100%;
	z-index: 1;
	text-align: center;
}
#sc_fix a {
	position:relativ;
	float: left;
	width: calc(60%/4);
	margin: 0% 2.5% 0% 2.5%;
	padding: 1% 2.5% 1% 2.5%;
	text-align: center;
	border-radius: 5em;
}
#sc_fix img {
	border-radius: 50%;
	width: 100%;
	max-width:100px;
	border: 1px solid #FFFFFF;
}
#sc_fix a:link, #sc_fix a:visited {
	font-size: 100%;
	color:#FFFFFF;
	text-decoration: none;
}
#sc_fix a:hover, #sc_fix a:active {
	background-color: #000000;
	opacity: 0.75;
}
#inhalt {
	position: absolute;
	width: 100%;
	top: 100%;
	z-index: 2;
	border-top: 1px solid #FFFFFF; 
}

.thema a:link, .thema a:visited {
	color:#3332CC;
	text-decoration:none;
}


.thema a:hover, .thema a:active {
	color:#3332CC;
	text-decoration: underline;
}

#breakingnews {
	position: fixed;
	bottom: 0px;
	left: 0 px;
	width: 98%;
	padding: 1%;
	opacity:0.75;
	background-color: #000000;
	color: #FFFFFF;
	border-top: 1px solid #EDEDED;
	z-index: 2;
}

#breakingnews a:link, #breakingnews a:visited {
	color:#FFFFFF;
	font-weight: bold;
	text-decoration: none;
}
#breakingnews a:hover, #breakingnews a:active {
	color:#FFFFFF;
	text-decoration: underline;
}

a:hover #breakingnews b, a:active #breakingnews b {
	color:#3332CC;
	text-decoration: none;
}

.thema {
	padding: 5%;
	width: 90%;
	min-width: 300px;
}

.thema img {
	float: left;
	width:  50%;
	max-width: 700px;
	margin: 0 5% 5% 0;
	border-radius: 5px;
}

.thema img.right {
	float: right;
	margin: 0 0 5% 5%;
}

@media (max-width: 770px) {
	.thema img {
		width: 100%;
	}
}

#error img {
	float: left;
	width: 180px;
	margin: 0 10px 10px 0;
}

#kik_logo, #jfv_logo {
	float: right;
	width: 180px;
	margin: 0 0 10px 10px;
}
#akv_logo, #profil_logo, #familien_logo {
	float: left;
	width: 180px;
	margin: 0 10px 0 10px;
}

.aktuelles {
	width: 40%;
	float: left;
}

@media (max-width: 770px) {
	.aktuelles {
		width: 90%;
	}
}

a.icon:link, a.icon:visited, a.icon:hover, a.icon:active{
	font-weight: normal;
	text-decoration:none;
	float: right;
	padding: 0 0 0 25px;
}

tr a.icon:link, tr a.icon:visited, tr a.icon:hover, tr a.icon:active {
	float: none;
	line-height: 2;
}


.bild {
	background-position: center center;
	background-color: #000000;
	background-size: cover;
	text-align: center;
	color:#FFFFFF;
	text-shadow: black 0.1em 0.1em 0.2em;
	padding: 10% 5% 10% 5%;	
}

.weiss {
	background-color: #FFFFFF;
}
.grau {
	/*background-color: #C2C2C2;*/
	background-color: #DDDDDD;
}

#derokv {
	background-image: url(/bilder/banner/verein.jpg);
}
#derokv em {
	font-size:200%;
}
#neugierig_kontakt:link, #neugierig_kontakt:visited {
	font-size: 150%;
	border: 1px solid #FFFFFF;
	border-radius: 10px;
	margin: 0 0 0 5%;
	padding: 1% 5% 1% 5%;
	color: #FFFFFF;
	text-decoration:none;
}
#neugierig_kontakt:hover, #neugierig_kontakt:active {
	border-color: #3332CC;
	color:#3332CC;
}

#termin * div {
	float: left;
	margin: 2.5%;
	width: calc(100% / 3 - 5%);
	min-width: 300px;
}

* {
	--spaltenanzahl: 3;
	--spaltenanzahl2: 2;
 }
@media (min-width:760px) and (max-width: 1199px) {
 #termin * div{
	width: 45%;
 }
 * {
	--spaltenanzahl: 2;
	--spaltenanzahl2: 1;
 }
}
@media (max-width: 759px) {
 #termin * div {
	width: 95%;
 }
  * {
	--spaltenanzahl: 1;
	--spaltenanzahl2: 1;
 }
}

.spalten {
	display: flex;
	flex-flow: row wrap;
#	justify-content: space-around;

}
.spalten.eins > div, .spalten.eins > a {
	margin: 2%;
	width: calc(100% - 4%);
}
.spalten.zwei > div, .spalten.zwei > a {
	margin: 2%;
	width: calc(100% / var(--spaltenanzahl2) - 4%);
	min-width: 300px;
}

.spalten.drei > div, .spalten.drei > a {
	margin: 2%;
	width: calc(100%/ var(--spaltenanzahl) - 4%);
	min-width: 300px;
	max-width: 600px;
}
.spalten.sechs > div, .spalten.sechs > a {
	margin: 1%;
	width: calc(100%/ (2*var(--spaltenanzahl)) - 2%);
	min-width: 150px;
	max-width: 300px;
}
.spalten a > div {
	color: #000000;
}

.spalten a > div.textgrau, .spalten a > div.textgrau > h4 {
	color: #C2C2C2;
}

.spalten.nolink a:link {
	text-decoration: none;
}

.spalten a:hover > div, .spalten a:hover > div > h4 {
	color: #3332CC;
}

.spalten img {
	width: 100%
}

#ansprechperson .spalten > div, #ansprechperson .spalten > a {
	width: 145px;
	margin: 2.5%;
	color: #000000;
}
#ansprechperson .spalten > a:hover {
	color: #3332CC;
}
fieldset {
	padding: 2% 5% 2% 5%;
	color: #000000;
	border: 1px solid #FFFFFF;
	border-radius: 5px;
}

.weiss fieldset {
	border-color: #C2C2C2;
}

.thema input:not([type=checkbox]):not([type=radio]), .thema textarea, .thema select {
	width: 100%;
	appearance: none;
	background-color: #DDDDDD;
	border: none;
	border-bottom: 1px solid #FFFFFF;
	border-radius: 5px;
	color: #000000;
	padding: 2px 5px;
}

.weiss input:not([type=checkbox]):not([type=radio]):not([type=submit]), .weiss textarea, .weiss select {
	background-color: #FFFFFF;
	border-bottom: 1px solid #C2C2C2;
}

input[type=radio] ~ label {
	margin: 0 20px 0 5px;
}

input[type=submit] {
	border: 1px solid #C2C2C2;
	background-color: #FFFFFF !important;
	color: #000000;
	width: 100%;
}
.weiss input[type=submit] {
	background-color: #DDDDDD !important;
}

input.disable_anmeldung:checked ~ #set_anmeldung {
	display:none;
}

.button, .button:link, .button:hover, .button:visited, .button:active {
	text-decoration: none !important;
}

.button div {
	text-decoration: none;
	color: #000000;
	background: #DDDDDD;
	padding: 1%;
	margin: 2%;
	text-align: center;
	border-radius: 10px;
	width: calc(100% - 6%);
}
.button div {
	color: #FFFFFF;
}
.button:hover div {
	background-color: #C2C2C2;
	text-decoration: none;
}
.button.anmelden:hover div {
	background-color: green;
	text-decoration: none;
}
.button.abmelden:hover div {
	background-color: red;
	text-decoration: none;
}

#mitglied table {
	border-spacing: 3px;
	text-align: center;
	max-width: 400px;
	margin: 0 auto; 
}
#mitglied th {
	width: 97px;
}

@media (max-width: 400px) {
/* Halbjahr bei schmalen Monitoren ausblenden*/
	 #mitglied .hj {
		display: none;
	 }
}

.bericht img {
	float: left;
	margin: 0 10px 10px 0;
}
#aktuelles {
	background-image: url(/bilder/banner/aktuelles.jpg);
}

#main_fix {
	position:fixed;
	top: 0;
	background-image: url(/bilder/hintergrund/sonnenuntergang.jpg);
	height: 100%;
	z-index:-1;
}
@media (max-width: 450px) {
	#main_fix {
		margin: 60px 0 0 0;
	}
}
#meinokv {
	background-image: url(/bilder/banner/meinokv.jpg);
}
#intern {
	background-image: url(/bilder/banner/login.jpg);
}
#termine, #vw_kontakt{
	background-image: url(/bilder/banner/termine.jpg);
}
#anmelden_jugend{
	background-image: url(/bilder/banner/anmelden_jugend.jpg);
}
#termin_tn, #anmeldung {
	background-image: url(/bilder/banner/termin_tn.jpg);
}
#vorstandsbereich{
	background-image: url(/bilder/banner/vorstand.jpg);
}
	
}
.textgrau {
	color: #C2C2C2;
}

#aktivitaet {
	background-image: url(/bilder/banner/rueckblick.jpg);
}

div.bericht a > img, .nl_rueckblick {
	width: 300px;
}

#galerie div {
	height: 200px;
	width: 300px;
	float: left;
	padding: 10px 10px 0 0;	
}

#galerie div img {
	width: 100%;
	float: none;
	padding: 0;
}

@media (min-width: 400px) {
	#galerie div img:hover {
		height: auto;
		width: 100%;
		max-width: 600px;
		position: absolute;
		margin: -5% 0 0 -5%;
	}
}	

#vw_overview table, #ort_overview table, #strecke_overview table {
	border-spacing: 1em;
}
td.center {
	text-align: center;
}


.term_head {
	clear: both;
	width: 100%;
	padding-top: 2%;
}
#term_more {
	clear: both;
	width:100%;
	text-align: center;
	font-size: 125%;
	font-weight: normal;
	color: #3332CC;
	padding-top: 2%;
}

.term h4 {
	width: 100%;
}
.term h4 i, #term_open h4 i , #term_open_liste h4 i{
	float: right;
}

.spalten h4 i {
	float: right;
}

#term_open h6, #term_open_liste h6 {
	font-size: 110%;
	font-weight: normal;
	font-style: italic;
	color: #C2C2C2;
}

.term, #term_open, #term_open > div, #term_open_liste, #term_open_liste > div  {
	padding: 2%;
	width: 94%;
	float: left;
	min-width: 265px;
	color: #000000;
}

#term_open, #term_open_liste {
	border-top: #3332CC solid 1px;
	border-bottom: #3332CC solid 1px;
}

#term_open h5 {
	clear: both;
}

.tgrau, .tgrau > h4 {
	color: #C2C2C2;
}
.trot > h4 {
	color: red;
}
.tgruen > h4 {
	color: green;
}

.textrot {
	color: red;	
}

.textgruen, a.textgruen:link  {
	color: green;
}

.tcancel, .tcancel > h4 {
	text-decoration: line-through;
}

.term:hover, .term:hover > h4 {
	color: #3332CC;
}

@media (min-width: 650px) {
	.term, #term_open > div, #term_open_liste > div {
		width: 46%;
	}
	
	.term.t1 {
		text-align: right;
	}
	
	.term.t1 h4 i {
		float: left;
	}

}

#term_open > div > div, #term_open_liste > div > div {
	float:left;
	width: 10%;
	min-width:110px;
	font-weight: bold;
}

#term_open table, #term_open_liste table {
	width: 100%;
}
#term_open th, #term_open_liste th {
	text-align: left;
	vertical-align: top;
	width: 15%;
	padding-right: 1em;
}

.fehler {
	width: 90% !important;
	padding: 1% 5% 1% 5% !important;
	margin: 1% 0 1% 0 !important;
	color: #9C0006 !important;
	background-color: #FFC7CE !important;
	border: 1px solid !important;
	border-radius: 5px !important;
}
div.ok {
	width: 90% !important;
	padding: 1% 5% 1% 5%  !important;
	margin: 1% 0 1% 0  !important;
	color: #006100 !important;
	background-color: #C6EFCE !important;
	border: 1px solid !important;
	border-radius: 5px !important;
}