/* ############################################################################################# 
## VBFA ########################################################################################
############################################################################################# */

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v29-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-500 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/open-sans-v29-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-500.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v29-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v29-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-800 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/open-sans-v29-latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-300italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/open-sans-v29-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-300italic.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/open-sans-v29-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-500italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/open-sans-v29-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-500italic.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-600italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/open-sans-v29-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-600italic.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-700italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/open-sans-v29-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-700italic.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}

/* open-sans-800italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/open-sans-v29-latin-800italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v29-latin-800italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v29-latin-800italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v29-latin-800italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v29-latin-800italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v29-latin-800italic.svg#OpenSans') format('svg'); /* Legacy iOS */
       font-display: swap; 
}






body {
	font-family: 'Open Sans', Times New Roman , Times, serif;
	margin: 0px;
	padding: 0px;
	line-height:150%;
	font-weight:300;
 	font-size: 16px;
	color: rgb(0, 0, 0);
	background:rgb(213, 210, 206);
}

/* ############################################################################################# 
## HEADLINES ###################################################################################
############################################################################################# */

h1 {
	font-size: 35px;
	margin: 25px auto 30px;
	font-family:'Open Sans';
	font-weight:700;
	line-height: 1.2em;
	color:rgb(0, 0, 0);
}
.defaultheadline {
	max-width: 1300px;
	margin: -120px auto 75px;
	width: calc(100% - 100px);
	padding: 0;
	font-weight: 300;
	text-transform: uppercase;
	color: #fff;
}
h2 {
	font-size: 30px;
	margin: 50px 0 25px 0;
	font-family:'Open Sans';
	font-weight:800;
	text-transform:uppercase;
	line-height: 1.2em;
}
.h2single {
	margin-bottom:-75px;
}
h3 {
	font-size:1.2rem;
	margin:25px 0px 20px 0px;
	font-family:'Open Sans';
	font-weight: 700;
	line-height: 1.2em;
}
.h2top h2,
.h3top h3 {
	margin-top:0!important;
	padding-top:0!important;
}
h4 {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 20px 0px 10px;
	font-family:'Open Sans';
    text-transform: none;
	line-height: 1.2em;
}

/* ############################################################################################# 
## GLOBAL THINGS ###############################################################################
############################################################################################# */

a, .link{
	color: rgb(0, 79, 159);
	text-decoration: none;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
main a {
	font-weight:500;
}
a:focus,a:hover,
	.link:focus,.link:hover {
	color: rgb(0, 47, 94);
	text-decoration: none;
}
ul, ol {
	margin: 0;
	padding:0;
}
#content ul, #content ol {
	margin: 20px 0;
	padding:0;
}
li {
	padding:5px 0;
	margin: 0 0 0 15px;
	list-style-type:square;
	border-bottom:1px solid rgba(0,0,0,0.1);
}
.small p {
    font-size: 0.9rem;
}
small, small *{
	font-size: 0.9rem;
	display: inline-block;
}
li:last-child {
	border:none!important;
}
p, table {
	margin: 0 0 15px;
	width:100%;
}
form {
	margin: 0 0 15px;
	width:100%;
}
p {
	  -webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-o-hyphens: auto;
	hyphens: auto;
}
strong {
	font-weight:700;	
}
figure {
	margin:0;
	padding:0;
	overflow:hidden;
}
figure img {
	width:100%;
}
.imgwp figure {
  margin: 0 0 30px;
}
.foerderung .imgxl figure {
	height:120px!important;
}
.foerderung .imgxl figure img {
	height:120px!important;
}
#content figure img {
	-webkit-transition: all 0.3s ease-in;
    -webkit-transform: scale(1); 
    -ms-transition: all 0.3s ease-in;
    -ms-transform: scale(1); 
    -moz-transition: all 0.3s ease-in;
    -moz-transform: scale(1);
    transition: all 0.3s ease-in;
    transform: scale(1); 
	position:relative;	
}
#content figure img:hover {
	-webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);   
    -moz-transform: scale(1.1);
    transform: scale(1.1);
}
hr {
	background: rgba(0,0,0,0.1);
	height:1px;
	margin:40px 0;
	display:inline-block;
	width:100%;
	border:none;
}
.cms_contentblock {
	max-width: 1300px;
	margin: 0 auto;
	width: calc(100% - 100px);
	padding: 0 0 50px;
}
.default .cms_contentblock:first-child {
	padding: 20px 0 50px;
}
.default .cms_contentblock {
	margin:50px auto;
}


/* ############################################################################################# 
## NAVIGATION ##################################################################################
############################################################################################# */
#header #nav_box {
    float:right;
	grid-column: 2 / 4;
	grid-row: 1;
}
#menuToggle input{
	display:none;
}
.black_layer {
		display:none;
}
#header #menu {
	float:right;
	margin-top:0;
}
#header nav {
	height:80px;
}
#header nav li {
	float:left;
	margin:0;
	list-style-type:none!important;
	border:none;
	padding:0;
	position:relative;
	height:80px;
}
#header nav li a {
	padding:0 20px;
	font-size:1rem;
	display:block;
	color:#000;
	font-family:'Open Sans';
	font-weight:700;
	line-height:80px;
}
#header nav li a:hover, nav li.active > a, nav li a:focus {
	color: rgb(0, 79, 159);
}
nav li.active_parent a {
	color: rgb(0, 79, 159)!important;
}
nav li.active_parent li.active a {
	color: #fff!important;
	background:rgb(0, 47, 94)!important;
}
#header nav li ul a:hover, nav li.active ul a, nav li ul a:focus {
	color:#fff!important;
}
#header nav li ul {
	display:none;
	position:absolute;	
	width:250px;
	top:80px;
	margin:0;
	padding:0;
	z-index:1;
}
#header nav li:nth-child(9) ul,
#header nav li:nth-child(10) ul {
	right:0;
}

#header nav li:nth-child(9) ul li,
#header nav li:nth-child(10) ul li {
text-align: right;
}
#header nav li.cms_nav_li_hover ul {
	display:block;
}
#header nav li ul li {
	float:none;
	width:100%;
	margin:0;
	padding:0;
	border-bottom:1px solid #fff;
	height:auto!important;
}
#header nav li ul li:last-child {
	border:none;
}
#header nav li ul a {
	color: #fff!important;
	display: block;
	padding: 8px 10px;
	height: auto;
	line-height: 20px !important;
	font-size: 0.9rem;
	font-family: 'Open Sans';
	font-weight: 400;
	background:rgb(0, 79, 159);
}
#header nav li ul a:hover, nav li ul a:focus, nav li ul li.active a {
	background:rgb(0, 47, 94);
	color:#fff;
}
#header nav li ul li ul,
#header nav li.cms_nav_li_hover ul li ul {
	display: none;
	left: 251px;
	top: 0;
}
#header nav li.cms_nav_li_hover ul li.cms_nav_li_hover ul {
	display: block;
	left: 251px;
	top: 0;
}
.kurse_li {
	background: rgb(0, 79, 159)!important;
	color: #fff !important;
}
.kurse_li:hover {
	background: rgb(0, 47, 94)!important;
	color: #fff !important;
}
.lernplattform {
	background:#fdc100;
}
.lernplattform:hover {
	background:#ff9900;
}



@media only screen and (max-width: 1200px) {
	#menuToggle {
		display: block;
		position: relative;
		z-index: 1;
		-webkit-user-select: none;
		user-select: none;
		position:absolute;
		right:20px;
		top:28px;
	}
	#menuToggle input {
		display: block;
		width: 40px;
		height: 32px;
		position: absolute;
		top: -7px;
		left: -5px; 
		cursor: pointer;
		opacity: 0;
		z-index: 2; 
		-webkit-touch-callout: none;
	}
	#menuToggle span {
		display: block;
		width: 33px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		background: #2f2f2f;
		border-radius: 3px;
		z-index: 1;
		transform-origin: 4px 0px;
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				  background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				  opacity 0.55s ease;
	}
	#menuToggle span:first-child {
		transform-origin: 0% 0%;
	}
	#menuToggle span:nth-last-child(2) {
		transform-origin: 0% 100%;
	}
	#menuToggle input:checked ~ span {
		opacity: 1;
		transform: rotate(45deg) translate(-2px, -1px);
		background: #232323;
	}
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
	}
	#menuToggle input:checked ~ span:nth-last-child(2) {
		transform: rotate(-45deg) translate(0, -1px);
	}
	#header #menu {
		position: absolute;
		width: auto;
		margin:0;
		padding: 100px 20px 20px 20px;
		background: #fff;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		transform-origin: 0% 0%;
		transform: translate(100%, 0);
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
		min-width: 350px;
		box-sizing: border-box;
		right: -25px;
		height:500px;
		overflow-y:scroll;
		top:70px;
	}
	.black_layer {
		background: rgba(0,0,0,0.8);
		display:none;
		position: absolute;
		width: 100vw;
		height: 100vh;
		padding: 0;
		margin: -30px 30px 30px -31px;
	}	
	#menuToggle input:checked ~ .black_layer {
		display: block;
		right: -50px !important;
		top: 1px !important;
	}
	#menuToggle input:checked ~ ul {
		transform: none!important;
		margin: -100px 0 0!important;
		right: -20px!important;
	}
	#header nav li ul {
		position:inherit;
		padding:0!important;
		background:none;
		top:0;
		float:none;
	}
	#header nav li.cms_nav_li_hover {
		height:auto;
		background:rgba(0,0,0,0.05);
		display: block;
	}
	#header nav li {
		width:100%;
		float:none;
		border-bottom: 1px solid rgba(0,0,0,0.4);
		height:auto!important;
		padding:0;
		line-height:50px!important;
	}
	#header nav li a  {
		font-size:18px;
		padding: 0 5px 0 10px;
		line-height:50px!important;
		height:50px!important;
		display: block;
		font-weight:400;
		text-transform: uppercase;
		color:#2f2f2f;
	}
	#header nav li ul {
		top:0!important;
		width:100%!important;
		position:inherit;
		left:0!important;
	}
	#header nav li ul li {
		border:none!important;
		margin-left:0!important;
		line-height:30px!important;
		height:auto!important;
	}
	#header nav li a:hover, nav li a:focus, nav li.active a {
		background:rgba(0,0,0,0.05)!important;
		color:#2f2f2f!important;
	}	
	#header nav li ul a {
		color:#fff;
		text-transform:none;
		font-size:0.9rem;
		padding: 5px 5px 5px 10px !important;
		line-height:30px!important;
		height:30px!important;
	}
	#header nav li ul a:hover {
		color:rgb(0, 47, 94)!important;
	}
	#header nav li ul li ul li a {
		height: 20px !important;
		line-height: 20px !important;
		font-weight: 400;
		background: rgba(0,0,0,0.1) !important;
		color:rgb(0, 0, 0)!important;
	}
	.cms_scroll_header_scrolled #menu {
		top:70px!important;
		margin-top: -100px!important;
	}
	.cms_scroll_header_scrolled nav li ul {
		top:0!important;
		margin-top:0!important;
	}
}


/* ############################################################################################# 
## Inhalt ##################################################################################
############################################################################################# */


/* #### HEADER ############################### */

#wrapper {
	width: 100%;
	margin:0 auto;
	padding:0;
	max-width:1600px;
	position: relative;
	background:#fff;
	-webkit-box-shadow: 0px 10px 12px 0px rgba(138,138,138,1);
	-moz-box-shadow: 0px 10px 12px 0px rgba(138,138,138,1);
	box-shadow: 0px 10px 12px 0px rgba(138,138,138,1);
	overflow:hidden;
}
#header {
	margin: 0;
	position:fixed!important;
	margin:0!important;
	background:#fff;
	width:100%;
	max-width:1600px;
	height:80px;
	z-index:9999;
	padding:0 0 0 30px;
	box-sizing:border-box;
	display:block;
}
#logo {
    margin: 20px 0;
    height: 40px;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    position: relative;
    z-index: 1;
	float:left;
}
#logo a {
	display:block;
	height:40px;
}
#logo a img {
	height:40px;
}
.cms_scroll_header_scrolled {
	-webkit-box-shadow: 0px 10px 7px -8px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 10px 7px -8px rgba(0,0,0,0.2);
	box-shadow: 0px 10px 7px -8px rgba(0,0,0,0.2);
	top:0!important;
	margin:0!important;
}

/* #### CONTENT ############################### */
.default {
  	min-height:800px;
	margin: 0 auto -7px!important;
}
#content {
  box-sizing: border-box;
  margin: 0 auto 100px;
  padding: 0;
  width: 100%;
  display: block;
}


/* #### FOOTER ############################### */

#footer {
	margin: 0 auto;
	width: 100%;
	background:rgb(232, 232, 231);
	padding:50px 0;
	box-sizing:border-box;
}
#footer .footer_cont {
	display: grid;
	column-gap: 2%;
	grid-template-columns: 32% 32% 32%;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0;
	width: calc(100% - 100px);
	max-width:1300px;
}
#footer p, #footer li, #footer a, #footer strong, #footer italic, #footer span {
	font-size:14px;
}
#footer .kontakt span, #footer .support span {
    width: 60px !important;
    display: block;
    float: left;
}
#footer h4 {
	padding: 0;
	margin: 30px 0 10px;
	font-weight: 700;
	font-size: 14px;
}
#footer ul {
	margin:0 0 20px;
}
#footer li ul {
	display:none;
}
#footer li {
	list-style-type:none;
	border-bottom:none;
	margin:0;
	line-height:16px;
	padding:3px 0;
}
#footer li a {
	padding:0;
	line-height:16px;
	height:16px;
	font-weight:500;
}
#footer .social a {
	font-family: 'FontAwesome';
	font-size: 40px;
	margin-top: 20px !important;
	display: inline-block;
	margin-right:10px;
}
#copyright {
	width: 100%;
	padding:20px 0;
	margin:0 auto;
	color:#000;
	box-sizing: border-box;
}
.copyright_cont {
	max-width: 1300px;
	margin: 0 auto;
	width: calc(100% - 100px);
	padding: 0;
	font-size:0.8rem;
	height:60px;
}
#copyright .cr {
	float:left;
}
#copyright .fl {
	float:right;
}
#copyright .fl img {
	height:50px;
	width:auto;
	float:left;
}
#copyright .fl img:first-child {
	margin-right:20px;
}


/* #### INDEX ################################## */

#slider {
	height:750px;
	width:100%;
	background:#fff;
	position:relative;
	overflow:hidden;
	margin-top: 80px;
}
#slider:before {
	content: '';
	background: url(../../../res/templates/images/background-yellow.jpg) no-repeat !important;
	width: 50%;
	height: 200px;
	background-size: cover !important;
	display: inline-block;
	position: absolute;
	transform: rotate(-12deg);
	top: -150px;
	left: -30px;
	z-index:1;
}
#slider .cms_contentblock {
	width:100%;
	max-width:none!important;
	padding:0;
	height:750px;
	min-height: 750px;
}
#slider .cms_collectioncontent_slide {
	height:750px;
	min-height: 750px;
}
#slider .bx-wrapper .bx-viewport {
	-moz-box-shadow: none!important;
	-webkit-box-shadow: none!important;
	box-shadow: none!important;
	border: none!important;
	left: 0;
	background: #fff;
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
	-ms-transform: translatez(0);
	-o-transform: translatez(0);
	transform: translatez(0);
	height:750px!important;
}
#slider .cms_collectioncontent_slide .cms_content {
	width: 40%;
	right:50%;
	position: absolute;
	top: 30%;
	padding-right:30px;
	border-right:1px solid #000;
}
#slider h1 {
	text-align:right;
	font-weight:300;
	font-size:40px;
	margin:0!important;
}
#slider h1 span {
	text-transform:uppercase;
	font-weight:800;
	font-size:60px;	
	display:block;
}
#slider h1 strong {
	font-weight:800;
	color:rgb(0, 79, 159)
}
#slider .bx-pager {
	width: 20px;
	right: 50px;
	top: 30%;
}
#slider .bx-pager.bx-default-pager a {
	background: #fff;
	width: 20px;
	height: 20px;
	margin: 5px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
#slider .bx-pager.bx-default-pager .active {
	background:rgb(0, 79, 159)	
}
.arrow-down {
	display:none;
}
#behindtheteaser {
	display:block;
	position:relative;
	height:1000px;
	width:100%;
}
#behindtheteaser:after {
	content: '';
	background: url(../../../res/templates/images/background-blue.jpg) no-repeat !important;
	width: 120%;
	height: 100%;
	background-size: cover !important;
	display: inline-block;
	position: absolute;
	transform: rotate(-8deg);
	top: -150px;
	left:-100px;
}
#teaser {
	z-index:3;
	width:100%;
	height:1000px;
	margin-top:-1080px;
	position:relative;
}
#teaser .cms_contentblock_21667_90 .flex {
	padding:0!important;
}
#teaser h2,#teaser h3, #teaser strong, #teaser italic, #teaser p, #teaser a {
	color:#fff!important;
}
#teaser .cb_1-4_1-4_1-4_1-4_1,
#teaser .cb_1-4_1-4_1-4_1-4_2,
#teaser .cb_1-4_1-4_1-4_1-4_3,
#teaser .cb_1-4_1-4_1-4_1-4_4,
#teaser .cb_1-3_1-3_1-3_left,
#teaser .cb_1-3_1-3_1-3_middle,
#teaser .cb_1-3_1-3_1-3_right,
#teaser .cb_1-2_1-2_left,
#teaser .cb_1-2_1-2_right  {
	-webkit-transition: all 0.3s ease-in;
	-webkit-transform: scale(1);
	-ms-transition: all 0.3s ease-in;
	-ms-transform: scale(1);
	-moz-transition: all 0.3s ease-in;
	-moz-transform: scale(1);
	transition: all 0.3s ease-in;
	transform: scale(1);
	border:1px solid #fff;
	padding:20px;
	background:none!important;
}
#teaser .cb_1-4_1-4_1-4_1-4_1:hover,
#teaser .cb_1-4_1-4_1-4_1-4_2:hover,
#teaser .cb_1-4_1-4_1-4_1-4_3:hover,
#teaser .cb_1-4_1-4_1-4_1-4_4:hover,
#teaser .cb_1-3_1-3_1-3_left:hover,
#teaser .cb_1-3_1-3_1-3_middle:hover,
#teaser .cb_1-3_1-3_1-3_right:hover,
#teaser .cb_1-2_1-2_left:hover,
#teaser .cb_1-2_1-2_right:hover {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-moz-transform: scale(1.05);
	transform: scale(1.05);	
}
#teaser p {
	margin-bottom:30px;
}
#teaser .cms_content_button {
	background:#fff;
	color: rgb(0, 79, 159)!important;
	position:absolute;
	bottom:-30px;	
}
#teaser .cms_content_button:hover {
	background:#000!important;
	color: #fff!important;
}
#entry {
	background: #fff;
	width:100%;
	height:auto;
	padding:150px 0;
	position:relative;
	z-index:2;
	margin-top:-300px;
}
#entry figure {
	position: absolute;
	left: -250px;
	top: -200px;
	transform: rotate(-12deg);
	-webkit-box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
	-moz-box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
	box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
	max-width: 700px;
}
#entry figure img {
	margin-bottom:-7px;
}
#news {
	background: url(../../../res/templates/images/background-yellow.jpg) no-repeat !important;
	background-size: cover !important;
	width:100%;
	height:auto;
	padding:150px 0;
}
#standorte {
	background: #fff;
	width:100%;
	height:auto;
	padding:150px 0;
	position:relative;
}
#standorte figure {
	position: absolute;
	right: -250px;
	top: -200px;
	transform: rotate(12deg);
	-webkit-box-shadow: -15px 15px 0px 4px rgba(0,0,0,0.1);
	-moz-box-shadow: -15px 15px 0px 4px rgba(0,0,0,0.1);
	box-shadow: -15px 15px 0px 4px rgba(0,0,0,0.1);
	max-width: 700px;
}
#standorte figure img {
	margin-bottom:-7px;
}
#standorte a{
	color: #fff;
	background:rgb(0, 79, 159);;
	font-size:16px;
	width: 800;
	padding: 7px 25px 7px;
	-webkit-appearance: none;
	text-transform:uppercase;
	display:inline-block;
	margin: 10px 10px 0 0;
	position:relative;
	font-weight:700;
	border:none;
	border-radius: 50px;
}
#standorte a:hover {
	color:#fff;
	cursor:pointer;
	background:rgb(0, 47, 94);
}


/* #### DEFAULT ################################## */

#impression {
	width: 100%;
	height: 200px;
	display: block;
	margin-bottom: 50px;
}
#impression .cms_contentblock {
	max-width: none !important;
	margin: 0 auto;
	width: 100%;
	padding: 0;
	height: 200px;
	display: block;
}


/* #### ANIMATION ################################## */

.cms_ani_animated {
	opacity: 0;
}
.cms_ani_fadeInLeftBig,
.cms_ani_fadeInRightBig {
	opacity: 1!important;
}


/* #### PORTRAITS ################################## */

.portrait figure {
  border-bottom: 1px solid rgba(0,0,0,0.1);
  padding-bottom: 20px;
  text-align:right;
}
.portrait figure img {
  max-width:300px;
}



/* #### BACKGROUNDS ################################## */

.blue_background {
	width:100%;
	max-width:none;
	margin:0 auto;
	padding:0 0;
	background:	url(../../../res/templates/images/background-blue.jpg) no-repeat #004f9f;
	background-size:cover;
	display:inline-block;
}
.yellow_background {
	width:100%;
	max-width:none;
	margin:0 auto;
	padding:0;
	background:	url(../../../res/templates/images/background-yellow.jpg) no-repeat #fdc100;
	background-size:cover;
	display:inline-block;
}
.blue_background .cms_contentblock,
.yellow_background .cms_contentblock {
	margin: 50px auto;
}
.blue_background .cms_contentblock:first-child,
.yellow_background .cms_contentblock:first-child {
	margin: 100px auto 50px!important;	
}
.blue_background .cms_contentblock:last-child,	
.yellow_background .cms_contentblock:last-child {
	margin: 50px auto 100px;		
}
.yellow_background ul {
	margin-top:0!important;
}
.blue_background .h2single h2, .blue_background h2, .blue_background p {
	color:#fff;
}


/* #### FLEX ################################## */

.flex .cb_1,
.flex .cb_1-2_1-2,
.flex .cb_1-3_1-3_1-3,
.flex .cb_2-3_1-3,
.flex .cb_1-3_2-3,
.flex .cb_1,
.flex .cb_1-2_1-2,
.flex .cb_1-3_1-3_1-3,
.flex .cb_2-3_1-3,
.flex .cb_1-3_2-3,
.flex .cb_1-4_1-4_1-4_1-4 {
	display: -webkit-flex!important;
	display: -ms-flex!important;
	display: flex!important;
	-webkit-flex-wrap: wrap!important;
	-ms-flex-wrap: wrap!important;
	flex-wrap: wrap!important;
}
.flex .cb_1-2_1-2 > div,
.flex .cb_1-3_1-3_1-3 > div,
.flex .cb_2-3_1-3 > div,
.flex .cb_1-3_2-3 > div,
.flex .cb_1 > div,
.flex .cb_1-4_1-4_1-4_1-4 > div {
	background: #fff;
	padding:20px;
	box-sizing:border-box;
	border:1px solid rgba(0,0,0,0.1);
}
.flex .cb_1 > div {
	width:100%;
}
.flex .cb_1-2_1-2 .clear,
.flex .cb_1-3_1-3_1-3 .clear,
.flex .cb_2-3_1-3 .clear,
.flex .cb_1-3_2-3 .clear,
.flex .cb_1 .clear,
.flex .cb_1-4_1-4_1-4_1-4 .clear {
	background:none!important;
	padding:0!important;
	box-sizing: unset!important;
	border:none!important;
}
.default .flex h2 {
	font-size:22px;
	color:#000!important;
}
.flex h3,
.flex .cb_1 .cms_content h3 {
	font-size:22px;
}
.default .flex h3 {
	font-size:18px;
}
.flex h4,
.flex .cb_1 .cms_content h4 {
	font-size:18px;
}
.default .flex h4 {
	font-size:16px;
}
.flex h2:after,
.flex h2:first-child:after {
	content:'';
	margin:15px 0;
	height:3px;
	background: #004f9f; /* Old browsers */
	background: -moz-linear-gradient(left,  #004f9f 0%, #004f9f 37%, #fdc100 56%, #fdc100 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #004f9f 0%,#004f9f 37%,#fdc100 56%,#fdc100 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #004f9f 0%,#004f9f 37%,#fdc100 56%,#fdc100 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004f9f', endColorstr='#fdc100',GradientType=1 ); /* IE6-9 */

	width:100px;
	display:block;
}
.flex h2:first-child,
.flex .cb_1 .cms_content h2:first-child {
	margin:0 0 22px;
}
.flex h3, .flex .cb_1 .cms_content h3 {
    margin: 0 0 10px;
}
.flex p {
	color:rgb(0, 0, 0)!important;
}
.flex ul {
	margin:5px 0 30px!important;
}
.flex figure img {
	margin-bottom: -7px;
}
.flex .cms_video {
	margin:0;
}

/* 2 cols 1/2-1/2 */
.cb_1-2_1-2 > div{
	min-height: 1px;
}
  	.cb_1-2_1-2_left{
		float: left;
		width: 49%;
		margin-right: 2% !important;
	}
  	.cb_1-2_1-2_right{
		float: left;
		width: 49%;
	}



/* 2 cols 1/3-2/3 */
.cb_1-3_2-3 > div{
	min-height: 1px;
}
  	.cb_1-3_2-3_left{
		float: left;
		width: 32%;
		margin-right: 2% !important;
	}
  	.cb_1-3_2-3_right{
		float: left;
		width: 66%;
	}
	


/* 2 cols 2/3-1/3 */
.cb_2-3_1-3 > div{
	min-height: 1px;
}
  	.cb_2-3_1-3_left{
		float: left;
		width: 66%;
		margin-right: 2% !important;
	}
  	.cb_2-3_1-3_right{
		float: left;
		width: 32%;
	}
	


/* 3 cols 1/3-1/3-1/3 */
.cb_1-3_1-3_1-3 > div{
	min-height: 1px;
}
  	.cb_1-3_1-3_1-3_left{
		float: left;
		width: 32%;
		margin-right: 2% !important;
	}
  	.cb_1-3_1-3_1-3_middle{
		float: left;
		width: 32%;
		margin-right: 2% !important;
	}
  	.cb_1-3_1-3_1-3_right{
		float: left;
		width: 32%;
	}


/* #### 4-COLS ############################### */

.cb_1-4_1-4_1-4_1-4 > div {
	min-height: 1px;
}
.cb_1-4_1-4_1-4_1-4_1,
.cb_1-4_1-4_1-4_1-4_2,
.cb_1-4_1-4_1-4_1-4_3 {
	float: left;
	width: 22.75%;
	margin-right: 3%!important;
}
.cb_1-4_1-4_1-4_1-4_4  {
	float: left;
	width: 22.75%;
	margin-right:none;
}

/* #### FÖRDERUNG ############################### */

.foerderung {
	padding: 0 !important;
	margin: 50px auto 40px !important;
}
.foerderung .cb_1-3_2-3_left {
	background:rgba(0,0,0,0.05);
	padding:20px;
	box-sizing:border-box;
}
.foerderung h3 {
	font-size: 1rem;
}
.foerderung p {
	margin:0!important;
}
.foerderung figure {
	height:65px!important;
	width:auto!important;
	float:left; 
	margin-right:20px;
	margin-bottom:20px;
}
.foerderung img {
	height:65px;
	width:auto;
	-webkit-transition: none!important;
	-webkit-transform: none!important;
	-ms-transition: none!important;
	-ms-transform: none!important;
	-moz-transition: none!important;
	-moz-transform: none!important;
	transition: none!important;
}
.foerderung figure img:hover {
  -webkit-transform: none!important;
  -ms-transform: none!important;
  -moz-transform: none!important;
  transform: none!important;
}



/* #### KALENDER/NEWS ############################### */

.cms_content_calendar,
.cms_content_news {
	display: grid;
	grid-template-columns: 32% 32% 32%;
	grid-gap: 2%;
	grid-auto-rows: minmax(100px, auto);
}
.cms_content_calendar .cms_content_calendar_teaser,
.cms_content_news .cms_content_news_teaser {
	background: #fff;
	padding:20px;
	box-sizing:border-box;
	border:1px solid rgba(0,0,0,0.1);
}
.cms_content_calendar .clear,
.cms_content_news .clear {
	display:none!important;
}
.cms_content_calendar a.cms_content_calendar_teaser .cms_content_calendar_teaserimg,
.cms_content_news a.cms_content_news_teaser .cms_content_news_teaserimg {
	float: none;
	width: 100%;
	max-width: none;
	margin-right: 0;
	margin-bottom: 20px;
	display: block;
}
.cms_content_calendar a.cms_content_calendar_teaser .cms_content_calendar_teasertitle,
.cms_content_news a.cms_content_news_teaser .cms_content_news_teasertitle {
	margin-bottom:10px;
	  -webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-o-hyphens: auto;
	hyphens: auto;
}
.cms_content_calendar_teaserdate,
.cms_content_news_teaserdate {
	font-size:18px;
	color:rgb(0, 79, 159)!important;
	margin-bottom:10px;
}
.cms_content_calendar a.cms_content_calendar_teaser .cms_content_calendar_teasertext,
.cms_content_news a.cms_content_news_teaser .cms_content_news_teasertext {
	margin-bottom:20px;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-o-hyphens: auto;
	hyphens: auto;
}
.cms_content_calendar a.cms_content_calendar_teaser .cms_content_calendar_teasermore,
.cms_content_news a.cms_content_news_teaser .cms_content_news_teasermore {
	background:rgb(0, 79, 159);
	color: #fff;
	font-size:16px;
	padding: 7px 25px 7px;
	-webkit-appearance: none;
	text-transform:uppercase;
	display:inline-block;
	margin: 0;
	font-weight:700;
	border:none;
	border-radius: 50px;
	text-decoration:none;
}
.cms_content_calendar a.cms_content_calendar_teaser .cms_content_calendar_teasermore:hover,
.cms_content_news a.cms_content_news_teaser .cms_content_news_teasermore:hover {
	background:rgb(0, 47, 94);
	color: #fff;
}

/* #### KALENDER DETAIL ############################### */

.calendar-news {
	background:rgba(0,0,0,0.05);
	display:inline-block!important;
	margin-bottom:0!important;
	padding-bottom:50px!important;
}
.calendar-news .cms_content_calendar,
.calendar-news .cms_content_news {
	display:inherit!important;
}
.calendar-news .defaultheadline {
	color: #000;
	font-size: 35px;
	display: block;
	margin: 0 auto 50px;
	text-transform: none;
	padding-top: 100px;
}
.calendar-news .cms_content_calendar_detailsimages,
.calendar-news .cms_content_news_detailsimages {
	background:#fff;
	padding:20px;
	width:35%;
	margin-right:20px;
	float:left;
	box-sizing:border-box;
}
.calendar-news .cms_content_calendar_detailsimages img,
.calendar-news .cms_content_news_detailsimages img {
	width:100%;
}
.calendar-news .cms_content_calendar_teasertext,
.calendar-news .cms_content_news_teasertext {
	display:none;
}
.calendar-news .cms_content_calendar_detailstext,
.calendar-news .cms_content_news_detailstext {
	float:right;
	width: calc(65% - 20px);
	background:#fff;
	padding:20px;
	box-sizing:border-box;
}
.calendar-news .cms_content_calendar_data {
	float:right;
	width: calc(65% - 20px);
	background:#fff;
	padding:20px 20px 0 20px;
	margin: 0 0px 25px 0px;
	box-sizing:border-box;
}
.calendar-news .cms_content_calendar .form_label,
.calendar-news .cms_content_news .form_label {
	display:block;
	margin:0;
}
.calendar-news .cms_content_calendar_detailsback,
.calendar-news .cms_content_news_detailsback {
	float:left;
	margin-left:calc(35% + 20px);
	margin-top:20px;
}
.calendar-news .cms_content_calendar_detailsback a,
.calendar-news .cms_content_news_detailsback a {
	color: #fff;
	background:rgb(0, 79, 159);
	font-size:16px;
	width: 800;
	padding: 7px 25px 7px;
	-webkit-appearance: none;
	text-transform:uppercase;
	display:inline-block;
	margin: 10px 0;
	position:relative;
	font-weight:700;
	border:none;
	border-radius: 50px;
}
.calendar-news .cms_content_calendar_detailsback a:hover,
.calendar-news .cms_content_news_detailsback a:hover {
	color:#fff;
	cursor:pointer;
	background:rgb(0, 47, 94);
}
/* #### TELEFONLISTE ############################### */

.telefonliste table img {
	width:70px;
	padding-top:7px;
}
.telefonliste .telefonliste_header {
	margin-top:40px;
}
.telefonliste .telefonliste_header:first-child {
	margin-top:0!important;
}
.telefonliste .telefonliste_header h2 {
	font-size:18px;
	margin-bottom:5px!important;
}
.telefonliste .telefonliste_header h2:after {
	display:none;
}
.telefonliste .telefonliste_header table tr {
	background:none;
}
.telefonliste .telefonliste_header table tr td {
	padding: 0!important;
	vertical-align: top;
	border-bottom: none!important;
}
#telefonliste_suche {
	background: rgba(0,0,0,0.1);
	padding: 5px 10px;
	border-bottom: 1px solid rgba(0,0,0,0.2);
	font-family: 'Open Sans', Times New Roman , Times, serif;
	font-size: 1rem;
	border-left:none;
	border-right:none;
	border-top:none;
}
.telefonliste #telefonliste_suche_btn {
	color: #fff;
	background: rgb(0, 79, 159);
	font-size: 16px;
	width: 800;
	padding: 7px 25px 7px;
	-webkit-appearance: none;
	text-transform: uppercase;
	display: inline-block;
	margin: 10px 0;
	position: relative;
	font-weight: 700;
	border: none;
	border-radius: 50px;
}
.telefonliste #telefonliste_suche_btn:hover {
	color: #fff;
	cursor: pointer;
	background: rgb(0, 47, 94);
}
.telefonliste_active_search .telefonliste_header,
.telefonliste_active_search table {
	margin:0!important;	
}
.telefonliste table {
	width:100%!important;
}
.telefonliste table td:first-child {
	width:300px!important;
}
.telefonliste table td:nth-child(2) {
	width:450px!important;
}
.telefonliste table td:nth-child(3) {
	width:150px!important;
}
.telefonliste #mceResizeHandlenw {
	display:none;
}


/* #### SPENDE ############################### */

.spende {
	background:#004f9f;
	padding:10px;
	color: #fdc100;
	font-weight:700;
	margin-top:20px;
	display: inline-block;
}
.spende:hover {
	color: #fff;
}


/* #### WEITERBILDUNGEN ############################### */

.termine .cms_content_calendar {
	 display:inherit!important;
}
 ul.weiterbildungen {
	display: grid;
	grid-template-columns: 32% 32% 32%;
	grid-gap: 2%;
	grid-auto-rows: minmax(100px, auto);
}
ul.weiterbildungen li {
	background:#fff;
	padding:20px;
	list-style-type:none;
	margin:0 0 20px;
}
ul.weiterbildungen li .cms_content_calendar_coursedetail_date {
	font-size:1rem;
	border-bottom:1px solid rgba(0,0,0,0.1);
	margin-bottom:10px;
	padding-bottom:10px;
	width:100%;
	color:rgb(0, 79, 159);
	font-weight:700;
}
ul.weiterbildungen li .cms_content_calendar_coursedetail_price {
	border-top:1px solid rgba(0,0,0,0.1);
	margin-top:10px;
	padding-top:10px;
	width:100%;
	font-weight:700;
	display:block;	
}



/* table-styles */

table{
	border-collapse: collapse;
}
	table tr{
	}
		table tr th{
			text-align: left;
		}
		table tr th, table tr th *{
		}
		table tr th,
		table tr td{
			padding: 3px 10px;
			vertical-align: top;
			border-bottom: solid 1px rgba(0,0,0,0.1);
		}
		table tr:nth-child(odd){
			background: rgba(0,0,0,0.05);
		}
		table tr:nth-child(even){
			background: rgba(0,0,0,0.03);
		}
		table tr:hover{
			background: rgba(0,0,0,0.08);
		}


		
		
/* form-styles */

form h2::after, form h2:first-child::after {
    display:none!important;
}

.form_row {
	display: block;
	margin:5px;
}
.form_row_header {
	padding:0;
	color:rgb(0, 0, 0);
	height:auto!important;
	margin: 50px 0 0px!important;
	clear: both;
}
.form_row_header h2 {
	margin:0 0 10px 0!important;
	position:inherit;
	text-transform:inherit;
}
.form_field {
	margin-bottom:20px;
}
 .form_label {
	display:none;
   margin-left:30px;
}
.form_label:last-child {
	display:block!important;
}
.form_field input, 
.form_field textarea,
.form_field select {
	padding: 5px 10px;
    width: 100%;
	box-sizing:border-box;
	border: none;
	background: rgba(0,0,0,0.05);
	border-left:none;
	border-right:none;
	border-top:none;
	border-bottom:1px solid rgba(0,0,0,0.2);
	font-family: 'Open Sans', Times New Roman , Times, serif;
	font-size:1rem;
}
.form_fild input {
	height: 50px;
	line-height: 50px;
	font-family: 'Open Sans', Times New Roman , Times, serif;
}
.form_field textarea {
	height:150px;
	font-family: 'Open Sans', Times New Roman , Times, serif;
}
.form_field input::-ms-input-placeholder,
.form_field textarea::-ms-input-placeholder
{
    color: rgba(0,0,0,0.8) !important;
}
.form_field input::placeholder, 
.form_field textarea::placeholder
{
    color: rgba(0,0,0,0.8) !important;
    font-family: 'Open Sans', Times New Roman , Times, serif;
}
.form_field input::-webkit-input-placeholder,
.form_field textarea::-webkit-input-placeholder {
    color: rgba(0,0,0,0.8) !important;
}
.form_field input:hover, 
.form_field textarea:hover,
.form_field select:hover {
	background: rgba(0,0,0,0.1);	
}
.form_field input.checkbox {
	float: left;
	height: auto;
	margin: 8px 2% 0 0;
	width: auto;
	padding: 0px;
}
.form_field button,
.form_field input[type="submit"],
.form_field input[type="button"],
.button,
.cms_content_button,
a.cms_content_button{
	color: #fff;
	background:rgb(0, 79, 159);
	font-size:16px;
	width: 800;
	padding: 7px 25px 7px;
	-webkit-appearance: none;
	text-transform:uppercase;
	display:inline-block;
	margin: 10px 0;
	position:relative;
	font-weight:700;
	border:none;
	border-radius: 50px;
}
.form_field button:before,
.form_field input[type="submit"]:before,
.form_field input[type="button"]:before,
.button:before,
input.button:before,
.cms_content_button:before,
a.cms_content_button:before {
	content:'';
	font-family: 'FontAwesome';
	font-size:20px;
	float: left;
	margin-right: 10px;
	display:block;	
}
button:hover ,
.form_field input[type="submit"]:hover ,
.form_field input[type="button"]:hover ,
.button:hover ,
.cms_content_button:hover ,
a.cms_content_button:hover {
	color:#fff;
	cursor:pointer;
	background:rgb(0, 47, 94);
}
.yellow_button .cms_content_button {
	background:#fdc100;
	color:rgb(0, 79, 159);
}
.cms_content_form_submit {
	position:relative;
	padding:20px 0 40px;
}
.cms_content_form_submit input.button {
	position: absolute;
	left: 0;
    font-family: 'Open Sans', Times New Roman , Times, serif;
}
.mce-menubtn button,
.mce-btn button{
	color: #333 !important;
}

a.button{
	padding: 10px 20px;
	transition: none;
	-webkit-appearance: none;
}


.form_label .invalid{
	color: #f00;
}

.form_field input.invalid,
.form_field textarea.invalid,
.form_field select.invalid{
	border: solid 1px #f55;
}
.form_field div.field_errors{
	display: none;
}

.form_help{
	position: relative;
	display: inline-block;
	padding: 1px 5px;
	border-radius: 20px;
	background: #666;
	color: #fff;
	font-size: 10px;
	margin: 0px 0px 0px 5px;
}
.form_help span{
	display: none;
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 10px;
	border: 1px solid #ddaa33;
	background: #ffdd99;
	color: #2f2f2f;
	width: 300px;
	font-weight: normal;
	z-index: 100;
}
.form_help:hover span{
	display: inline-block;
}
	
	
	
	
/* common classes */

.clear{
	clear: both;
}

.message,
.cms.cms_message_success,
.cms.cms_message_errors{
	margin-bottom: 20px;
	padding: 10px;
	display: inline-block;
}
.message ul,
.cms.cms_message_success ul,
.cms.cms_message_errors ul{
	margin-bottom: 0px;
	margin-left: 15px;
}
	
.cms.cms_message_success,
.cms.cms_message_errors{
	display: none; /* normally not displayed because they will be displayed in a popup */
	position: absolute;
	z-index: 1000;
	width: 400px;
	margin-left:-200px;
	left:50%;
	top: 200px;
	padding-top: 20px;
}
.cms .cms_message_close{
	font-weight: bold;
	font-size: 20px;
	padding: 5px 10px;
	cursor: pointer;
	float: right;
	position: absolute;
	right: 0px;
	top: 0px;
}
.cms.cms_message_success.active,
.cms.cms_message_errors.active{
	display: block;
}
.errors,
.cms.cms_message_errors{
	background: #fdd;
	color: #f00;
}
.errors *,
.cms.cms_message_errors *{
	color: #f00;
}	
.warnings{
	background: #fea;
	color: #b70;
}
.warnings *{
	color: #b70;
}	
.success,
.cms.cms_message_success{
	background: #dfd;
	color: #080;
}
.success *,
.cms.cms_message_success *{
	color: #080;
}
.cms_content figcaption {
	font-size: 10px;
}
.cms_picture_credits .cms_picture_credit_image:nth-child(2n){
	background: rgba(0,0,0,0.05);
}
.cms_content_collection_content_title {
	font-weight:700;
	font-size:20px;
	color:rgb(0, 0, 0);
}
.cms_content_accordion_accordion p, .cms_content_accordion_accordion h2 {
	color:rgb(0, 0, 0)!important;	
}
.cms_content_accordion_accordion .cms_collectioncontent_accordion .cms_content_collection_content_title {
	width: calc(100% + 20px);
	margin: 0 -20px 0px -20px !important;
}
.cms_content_accordion_accordion .cms_collectioncontent_accordion {
	padding:0!important;
}
.yellow_background .cms_content_accordion_accordion .cms_collectioncontent_accordion .cms_content_collection_content_title,
.blue_background .cms_content_accordion_accordion .cms_collectioncontent_accordion .cms_content_collection_content_title {
	width: 100%;
	margin: 0 !important;
}
.cms_collectioncontent_accordion .cms_collectioncontent_data,
.cms_collectioncontent_accordion .cms_content_collection_content_title {
	background: #fff;
}
.cms_content_collection_content_title {
	box-sizing: border-box;
}
.yellow_background .cms_content_accordion_accordion .cms_collectioncontent_accordion,
.blue_background .cms_content_accordion_accordion .cms_collectioncontent_accordion {
	margin-bottom: 5px !important;
	margin-top:0!important;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
.cms_content_accordion_accordion,
.cms_collectioncontent_accordion {
	width:100%!important;
	box-sizing:border-box;
	border:none;
}
.cms_collectioncontent_accordion {
	border:none!important;
	padding:0!important;
}
.cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded {
	background:#fff;
	border:none;
	padding:0!important;
	box-sizing:border-box!important;
}
.yellow_background .cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded
.blue_background .cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded {
	background:#fff!important;
}
.cms_content_collection_content_title:after {
	content:'';
	font-family: 'FontAwesome';
	display:block;
	float:right;
	font-size:22px;
	color:rgb(0, 79, 159);
}
.cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded .cms_content_collection_content_title {
	box-sizing: border-box;
	color:rgb(0, 0, 0);
	width: calc(100% + 40px);
	margin: -10px -20px 0px -20px !important;
	border-bottom:1px solid rgb(0, 0, 0);
}
.yellow_background .cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded .cms_content_collection_content_title,
.blue_background .cms_content_accordion_accordion .cms_collectioncontent_accordion.cms_collectioncontent_accordion_expanded .cms_content_collection_content_title {
	width: 100%!important;
	margin: 0!important;
}
.cms_collectioncontent_accordion .cb_1,
.cms_collectioncontent_accordion .cb_1-2_1-2,
.cms_collectioncontent_accordion .cb_1-3_2-3,
.cms_collectioncontent_accordion .cb_2-3_1-1 {
	padding:10px!important;
}
.cms_opening_hours_state_closed_today, .cms_opening_hours_state_open, .cms_opening_hours_state_will_open {
	color: #fff;
    margin-bottom: 10px;
    padding: 10px 0;
    text-align: center;
}
.cms_content_map {
	height:300px!important;
}
.cms_content_map_marker_layer {
	z-index:99;
    color:#2f2f2f;
    line-height:120%;
}
.cms_content_map_marker_layer b {
    color:#2f2f2f;
}
.bx-wrapper .bx-controls-direction a {
    z-index: 9998!important;
	height:42px;
	-webkit-transition: none!important;
	-moz-transition: none!important;
	-ms-transition: none!important;
	-o-transition: none!important;
	transition: none!important;
}
.bx-wrapper .bx-prev {
	background: url(../../../res/templates/images/controls.png) no-repeat 0 -43px!important;
}
.bx-wrapper .bx-prev:hover {
	background-position: 0 0!important;
}
.bx-wrapper .bx-next {
	background: url(../../../res/templates/images/controls.png) no-repeat -43px -43px!important;
}
.bx-wrapper .bx-next:hover {
	background-position: -43px 0!important;
}

/* ###### LIGHTBOX ###### */

#cboxLoadedContent {
  border: 5px solid #fff;
  background: #fff;
}
#cboxPrevious {
	position: absolute;
	top: 50%;
	left: 5px;
	margin-top: -32px;
	background: url(../../../res/templates/images/controls-lb.png) no-repeat top left !important;
	width: 28px;
	height: 65px;
	text-indent: -9999px;
}
#cboxNext {
	position: absolute;
	top: 50%;
	right: 5px;
	margin-top: -32px;
	background: url(../../../res/templates/images/controls-lb.png) no-repeat top right !important;
	width: 28px;
	height: 65px;
	text-indent: -9999px;
}
#cboxClose {
	position: absolute;
	top: 5px;
	right: 5px;
	display: block;
	background: url(../../../res/templates/images/controls-lb.png) no-repeat top center !important;
	width: 38px;
	height: 19px;
	text-indent: -9999px;
}
#cboxCurrent {
	position: absolute;
	top: -27px;
	right: 0px;
	color: #fff;
	font-size: 14px;
}
#cboxTitle {
	position: absolute;
	top: -27px;
	left: 0;
	color: #fff;
	font-size: 14px;
}




/* ############################################################################################# 
## RWD ##################################################################################
############################################################################################# */


@media only screen and (min-width: 2000px) {
	#slider,
	#slider .cms_collectioncontent_slide,
	#slider .cms_contentblock {
		height:850px!important;
	}
}
@media only screen and (min-width: 1300px) {
	#behindtheteaser::after {
		top: -225px;
	}	
}
@media only screen and (max-width: 1300px) {
	#behindtheteaser::after {
		width: 215%;
		top: -250px;
	}
	#teaser {
	  height: 950px;
	  margin-top: -1000px;
	}
	#entry, #news, #standorte {
		padding:75px 0;
	}
	#entry figure {
		width: 90%;
		left: -125px;
		top: -125px;
	}
	#standorte figure {
		width: 90%;
		right: -125px;
		top: -125px;		
	}
	.cb_1-4_1-4_1-4_1-4_1, .cb_1-4_1-4_1-4_1-4_3 {
		float: left;
		width: 47.5%;
		margin-right: 5% !important;
		margin-bottom: 40px;
	}
	.cb_1-4_1-4_1-4_1-4_4, .cb_1-4_1-4_1-4_1-4_2 {
		float: left;
		width: 47.5%;
		margin-right: 0!important;
		margin-bottom: 40px;
	}
}
@media only screen and (max-width: 1200px) {
	#cms_privacy_layer_open_config_button {
		border-radius:0;
		left:0;
		font-size:12px;
	}
	#entry figure {
		width: 90%;
		left: -125px;
		top: 0;
	}
	#standorte figure {
		width: 90%;
		right: -125px;
		top: 0;		
	}
	#slider h1 span {
		font-size: 50px;
	}
}


@media only screen and (max-width: 900px) {	
	.defaultheadline {
		font-size:35px;
		margin: -160px auto 75px;
	}
	#behindtheteaser:after {
		background:rgb(0, 79, 159)!important;
	}
	#teaser {
		margin-top: -1100px;
		height: auto!important;
		background:rgb(0, 79, 159)!important;
		z-index: 2;
		padding-bottom:50px;
	}
	#teaser .cb_1,
	#teaser .cb_1-2_1-2_left,
	#teaser .cb_1-2_1-2_right,
	#teaser .cb_1-3_2-3_left,
	#teaser .cb_2-3_1-3_left,
	#teaser .cb_2-3_1-3_right,
	#teaser .cb_1-3_2-3_right,
	#teaser .cb_1-3_1-3_1-3_left,
	#teaser .cb_1-3_1-3_1-3_middle,
	#teaser .cb_1-3_1-3_1-3_right {
		margin:0 0 40px!important;
	}
	#teaser .cms_contentblock {
		padding-bottom:0;
	}
	#entry {
		margin-top:0;
	}
	.cb_1,
	.cb_1-2_1-2_left,
	.cb_1-2_1-2_right,
	.cb_1-3_2-3_left,
	.cb_2-3_1-3_left,
	.cb_2-3_1-3_right,
	.cb_1-3_2-3_right,
	.cb_1-3_1-3_1-3_left,
	.cb_1-3_1-3_1-3_middle,
	.cb_1-3_1-3_1-3_right {
		width:100%;
		margin:0 0 20px!important;
		float:none!important;
	}
	#content #content-container .cms_contentblock {
	  padding: 0 0 20px;
	}
	#slider::before {
	  width: 50%;
	  height:175px;
	}
	#slider .cms_collectioncontent_slide .cms_content {
		width: 70%;
		max-width: 600px;
		left: 15%;
		top: 40%;
		padding: 20px;
		margin: 0;
		border: none;
		background: rgba(255,255,255,0.8);
		box-sizing: border-box;
	}
	#slider h1 {
		text-align: center;
		font-weight: 300;
		font-size: 40px;
		line-height: 100%!important;
	}
	#slider .bx-pager {
	  right: 5%;
	}
	#entry figure {
		position: inherit;
		left: auto;
		right:auto;
		top: auto;
		width: 300px;
		height:300px;
		margin:50px 20px 20px;
		display:inline-block;
		-webkit-box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
		-moz-box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
		box-shadow: 15px 15px 0px 4px rgba(0,0,0,0.1);
		max-width:none!important;
	}
	#standorte figure {
		display:none;
	}
	#entry figure img {
		height:100%;
		width:auto;
		position: absolute;
	}
	.footer_cont {
		display:inherit!important;
	}
	#footer .col {
		width:100%;
		margin:40px auto;
		padding:20px;
		border:1px solid rgba(0,0,0,0.2);
		box-sizing:border-box;
	}
	#footer h4 {
		margin: 0 0 10px;
	}
	#footer ul {
		margin: 0;
	}
	.calendar-news .cms_content_calendar_detailsimages,
	.calendar-news .cms_content_news_detailsimages	{
		width:100%;
		float:none;
		margin:0 0 20px 0!important;
	}
	.calendar-news .cms_content_calendar_detailstext,
	.calendar-news .cms_content_calendar_data, 
	.calendar-news .cms_content_news_detailstext {
		width:100%;
		float:none;
		padding:20px;
	}
	.calendar-news .cms_content_calendar_detailsback,
	.calendar-news .cms_content_news_detailsback {
		float: none;
		margin-left: 0;	
	}
	.yellow_background h2, .yellow_background h4, .yellow_background h3, .yellow_background p {
		text-align:left!important;
	}
	#cms_iframe_layer.popup {
	  margin: 200px 20%!important;
	  width: 60%!important;
	  padding: 10px!important;
	}
	#cms_iframe_layer.popup .close {
	  margin: -10px 0 0 calc(60% - 10px)!important;
	}
}
@media only screen and (max-width: 769px) {
	[class*="col-"] {
		float: none;
		padding: 10px;
		width:100%;
		box-sizing:border-box;
	}
	.flex .cb_float-right_left, .flex .cb_float-left_right, .flex .cb_1-2_1-2_left, .flex .cb_1-2_1-2_right, .flex .cb_1-3_2-3_left, .flex .cb_1-3_2-3_right, .flex .cb_2-3_1-3_left, .flex .cb_2-3_1-3_right, .flex .cb_1-3_1-3_1-3_left, .flex .cb_1-3_1-3_1-3_middle, .flex .cb_1-3_1-3_1-3_right, .flex .cb_1-4_1-4_1-4_1-4_1, .flex .cb_1-4_1-4_1-4_1-4_2, .flex .cb_1-4_1-4_1-4_1-4_3, .flex .cb_1-4_1-4_1-4_1-4_4  {
		margin: 0 0 30px 0!important;
	}
	.cb_1-4_1-4_1-4_1-4_1, .cb_1-4_1-4_1-4_1-4_3, .cb_1-4_1-4_1-4_1-4_4, .cb_1-4_1-4_1-4_1-4_2 {
		float: none;
		width: 100%;
		margin-right: 0 !important;
		margin-bottom: 40px;
	}
	#wrapper {
		width:100%;
		/* padding:0 1%; */
		margin:0;
		border:none;
		position:relative;
	}
	#header {
		max-width:767px;
	}
	.flex .cb_1-2_1-2 .clear, .flex .cb_1-3_1-3_1-3 .clear, .flex .cb_2-3_1-3 .clear, .flex .cb_1-3_2-3 .clear, .flex .cb_1 .clear, .flex .cb_1-4_1-4_1-4_1-4_1 .clear {
		display:none;
	}
	#slider,
	#slider .cms_contentblock,
	#slider .cms_collectioncontent_slide,
	#slider .bx-wrapper .bx-viewport {
		height:700px!important;
		min-height: none;
	}
	#behindtheteaser {
		height: 1600px;
	}
	#behindtheteaser::after {
		top: -200px!important;		
	}
	#teaser {
		margin-top: -1700px;
	}
	#teaser .cb_1-4_1-4_1-4_1-4_1,
	#teaser .cb_1-4_1-4_1-4_1-4_2,
	#teaser .cb_1-4_1-4_1-4_1-4_3,
	#teaser .cb_1-4_1-4_1-4_1-4_4 {
		-webkit-transition: none;
		-webkit-transform: none;
		-ms-transition: none;
		-ms-transform: none;
		-moz-transition: none;
		-moz-transform: none;
		transition: none;
		transform: none;	
	}
	#teaser .cb_1-4_1-4_1-4_1-4_1:hover,
	#teaser .cb_1-4_1-4_1-4_1-4_2:hover,
	#teaser .cb_1-4_1-4_1-4_1-4_3:hover,
	#teaser .cb_1-4_1-4_1-4_1-4_4:hover {
		-webkit-transform: none;
		-ms-transform: none;
		-moz-transform: none;
		transform: none;	
	}
	#teaser p {
		margin-bottom: 10px;
	}
	#teaser .cms_content_button {
	  position: inherit;
	}
	.cms_anav_minimizable {
		display:none;
	}
	.cms_content_collection_content_title {
		font-size:16px;
		padding-right: 30px !important;
	}
	.cms_content_collection_content_title::after {
		margin-right: -20px;
		font-size:12px;
	}
	.copyright_cont {
		height:100px;
	}
	#copyright .fl {
		float: left;
		clear: both;
		margin-top: 20px;
	}
	.cms_content_calendar,
	.cms_content_news,
	.weiterbildungen {
		grid-template-columns: 100%;
		grid-gap: 10px;
	}
}

@media only screen and (max-width: 700px) {
	.foerderung .imgxl figure {
		height:auto!important;
		width:100%;
	}
	.foerderung .imgxl figure img {
		height:auto!important;
		width:100%;
	}
}

@media only screen and (max-width: 650px) {
	h2 {
		font-size: 25px;
		margin: 50px 0 20px 0;
	}
	#slider h1 span {
		font-size: 40px;
	}
	#slider .bx-pager {
		top: 50%;
	}
	#entry figure {
		width: 200px;
		height:200px;
	}
}
@media only screen and (max-width: 500px) {
	.cms_contentblock {
		width: 90%;
		padding: 0 5% 50px;
	}
	#header {
		max-width:500px;
		top:0;
	}
	#slider::before {
		width: 70%;
		height: 180px;
	}
	#slider h1, 
	#slider h1 span {
		font-size: 30px;
	}
	h2 {
		font-size: 22px;
	}
	.arrow-down {
		position: absolute;
		z-index: 999;
		width: 60px;
		margin: 0 auto;
		left: calc(50% - 30px);
		top: 510px;
		height: 60px;
		display: block;
		border-radius: 50%;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border: 2px solid #004f9f;
		-webkit-animation: pulsate 1.5s ease-out;
		-webkit-animation-iteration-count: infinite; 
		opacity: 0.0;
		background:#fff;
	}
	@-webkit-keyframes pulsate {
		0% {-webkit-transform: scale(0.05, 0.05); opacity: 0.0;}
		50% {opacity: 1.0;}
		100% {-webkit-transform: scale(1.0, 1.0); opacity: 0.0;}
	}
	.arrow-down figure {
		width:60px;
		height:60px;
	}
	.defaultheadline {
		width:90%;
	}
	.arrow-down img {
		width:100%;
	}
	.flex .cb_1-2_1-2 > div, .flex .cb_1-3_1-3_1-3 > div, .flex .cb_2-3_1-3 > div, .flex .cb_1-3_2-3 > div, .flex .cb_1 > div, .flex .cb_1-4_1-4_1-4_1-4_1 > div {
		padding:20px;
	}
	#footer .footer_cont,
	#copyright .copyright_cont {
		width: calc(100% - 10%);
	}
	#cms_iframe_layer.popup {
	  margin: 200px 10%!important;
	  width: 80%!important;
	  padding: 10px!important;
	}
	#cms_iframe_layer.popup .close {
	  margin: -10px 0 0 calc(80% - 10px)!important;
	}
}

/* ##### DATENSCHUTZLAYER ##### */

#cms_privacy_layer_text_layer_text {
	font-size:14px;
	line-height:120%;
}
#cms_privacy_layer_text_legal_links a {
	font-size:14px;
	line-height:120%;
}
#cms_privacy_layer_open_config_button {
	border-radius:0;
}
#cms_privacy_layer_open_config_button,
#cms_privacy_layer p,
#cms_iframe_layer h2,
#cms_iframe_layer h3 {
		color:#2f2f2f!important;
}
#cms_iframe_layer h3 label {
		color:#2f2f2f;  
}
#cms_privacy_layer #cms_privacy_layer_accept_button {
		background:#2f2f2f;
}
#cms_privacy_layer .button:hover {
		background: rgb(0, 79, 159)!important;
}
#cms_privacy_layer #cms_privacy_layer_config_button,
#cms_privacy_layer #cms_privacy_layer_only_needed_button {
 		background:rgba(0,0,0,0.2);
}
#cms_iframe_layer button {
		color:#2f2f2f;  
}
#cms_privacy_layer_buttons .button {
    padding: 3px 10px;
    margin-bottom: 0;
    font-size: 14px !important;
	font-weight:400;
	text-transform:none;
}
#cms_privacy_layer_buttons .button:before {
    font-size: 14px !important;
}
#cms_privacy_layer_configurations * {
		color:#2f2f2f; 
}
.cms_privacy_consent_required {
		background:rgba(255,255,255,0.8)
}
.cms.popup {
	margin-top: 190px!important;
}
.cms_popupcontent img{
	width:100%;
	margin-bottom:-7px;
}
@media only screen and (min-width: 900px) {	
	#cms_iframe_layer.popup .close {
	  margin: -25px 0 0 calc(30% - 25px) !important;
	}
}
