/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v15-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../fonts/open-sans-v15-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v15-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('../fonts/open-sans-v15-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-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-v15-latin-800.eot'); /* IE9 Compat Modes */
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
       url('../fonts/open-sans-v15-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: square;
	margin-left: 20px;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	margin: 10px  0 10px 0;
	font-size: 15px;
	line-height: 22px
}

td{ 
	border-top: 2px solid #8889be;
	border-top: 5px solid #8889be
	}

sub, sup {
 /* Specified in % so that the sup/sup is the
   right size relative to the surrounding text */
 font-size: 50%;

 /* Zero out the line-height so that it doesn't
   interfere with the positioning that follows */
 line-height: 0;

 /* Where the magic happens: makes all browsers position
   the sup/sup properly, relative to the surrounding text */
 position: relative;

 /* Note that if you're using Eric Meyer's reset.css, this
   is already set and you can remove this rule */
 vertical-align: baseline;
}

sup {
 /* Move the superscripted text up */
 top: -1em!important;
}

sub {
 /* Move the subscripted text down, but only
   half as far down as the superscript moved up */
 bottom: -0.25em;
}

em{ font-style: italic; font-weight: 300}

/* Content ---------------------------------------------------------- */



body{
	font-family: 'Open Sans', sans-serif;
	background-color: #003576;
	font-size:100%;
	line-height: 33px;
	font-size: 22px;
	color: #333;
	font-weight: 300;
}

pre{
	font-family: 'Open Sans', sans-serif;
	display: block;
	padding: 9.5px;
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 20px;
	word-break: break-all;
	word-wrap: break-word;
	white-space: pre;
	white-space: pre-wrap;
	background-color: whiteSmoke;
	border: 1px solid #CCC;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

h1,h2{
	font-family: 'Open Sans', sans-serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.4em;
  padding-bottom: 30px;
  margin: 30px 0 10px 0;
  color: #003576;
}

h3{
  font-family: 'Open Sans', sans-serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.4em;
  padding-bottom: 30px;
  color: #003576;
  margin: 20px 0 0 0;
}

#datenschutz h3{
 font-family: 'Open Sans', sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4em;
    padding-bottom: 30px;
    color: #797976;
    margin-top: 30px;
  color: #797976;
}



.links h2{
	color: #908e5d;
	margin: 0;
}

.mitte h2{
	color: #a97672;
	margin: 0;
}

.rechts h2{
	color: #988b86;
	margin: 0;
}

.footerlinks h2{
	color: #988b86
}

pre + h2{
	margin-top: 80px;
}

a {
	text-decoration: none;
	color: #003576;
	margin: 10px 0 0 0;
 }

a:hover {
 color: #d38d13;	
}

#content a{
	color: #003576;
}

#content a:hover, #content a:hover h2{
	color: #db8805;
}

.footerlinks a{
	margin: 0;
	display: inline;
}
	

hr{ 
	margin: 60px 0 80px 0;
	border: none;
	border-bottom: dashed 1px #8889be;
	height: 1px;
}

hr.blau{ 
	margin: 30px 0 30px 0;
	border: none;
	border-bottom: dashed 1px #777;
	height: 1px;
}
	
strong{ color: #003576!important; font-weight: 600;}

/* Container ------------------------------------------------------ */


#container{
	position: relative;
	max-width: 100%;
	margin: 0 auto;
	padding: 60px;
	z-index: 10000;
}

#header{ 	
 max-width: 1300px!important;
 padding:40px 0 40px 0;
 background-color: #fff;
 position: relative;
 height: auto;
 font-size: 1.2em;
 margin: 0 auto;
 border-bottom: 10px solid #fff;
 -webkit-border-radius: 30px 30px 0px 0px;
 -moz-border-radius: 30px 30px 0px 0px;
 border-radius: 30px 30px 0px 0px;
 text-align: center
	}

#content {
 max-width: 1300px!important;
 background-color: #fff;
 padding: 0 0 30px 0;
 position: relative;
 height: auto;
 background-color: #fff;
 max-width: 100%;
 margin: 0 auto;
 -webkit-border-radius: 0px 0px 30px 30px;-moz-border-radius: 0px 0px 30px 30px;border-radius: 0px 0px 30px 30px;
 }
 
#inhalt {
 max-width: 100%;
 text-align: left;
 padding: 50px 30px 50px 50px;
 }

blockquote.sprechzeitenresponsive{ display:none}

.bildlinks{ max-width: 20%; height: auto; float: left; display: inline-block}
img.bildlinks{ max-width: 30%; height: auto; float: left; display: inline-block; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; margin: 0 30px 0 0!important; }
.teamrechts { font-size: 18px; line-height: 30px;  max-width: 70%; height: auto; float: left; margin-left: 35px}
.team ul{ font-size: 18px; line-height: 30px; list-style: circle; padding-left: 25px; margin-top: -10px}
.team{ width: 95%; height: auto; display: block}

/* Header ---------------------------------------------------------- */



#logo{
	float: right;
	width: 350px;
	padding: 0 50px 0 0;
	margin-top: -60px;
	text-align: right;
	color: #fff;
	height: auto;
}

#logo .subline{
	font-size: 20px;
	margin-top: 10px;
	font-weight: 100;
}

#logo a, #logo a:hover{
	text-decoration: none;
	color: #fff!important;
}

#logo a img{
    margin-right: 10px;
	max-width: 100%

}

/* Diverse Klassen ------------------------------------------------- */

.clear{ clear:both; }
.linie{ 
	width: 98%;
	height: 1px;
	border-bottom: 1px dashed #888;
	margin: 0 0 50px 0;
	padding: 40px 0 0 0;
	clear: both;
	}
	
#links{
	width: 60%;
	height: auto;
	padding-right: 3%;
	float: left;
	text-align: left;
	}
	
#unten{
	width: 100%;
	height: auto;
	text-align: center;

	}

#rechts{
	width: 25%!important;
	height: auto;
	padding-right: 0;
	margin-top: 20px;
	float: none;
	position: relative;
	
	}
		
#rechts a{ color: #fff}

#footer {
 position: relative;
 height: auto;
 padding: 40px;
 text-align: center;
 margin:0 auto;
 height: auto;
 max-width:1000px;
 font-size: 15px;
 line-height: 22px; 
 color: #FFF
  }
 
 #footer a{ color: #fff; text-decoration:underline}
 
.footerlinks{ 
	margin: 20px;
	float: left;
	width: 40%;
	}
	
.footermitte{ 
	margin-top: 50px;
	float: left;
	width: 25%;
	}
	
.footermitte img{ 
	margin-bottom: 4px;
	
	}
	

	
.footerrechts{ 
	margin: 50px 30px 60px 0;
	float: right;
	text-align: right;
	width: 20%;
	}


a.button {
  position: relative;
  display: inline-block;
  width: auto;
  margin: 20px 20px 60px 0;
  padding: 40px 60px 40px 60px;
  font-size: 24px;
  background-color: #003576;
  color: #fff!important;
  border: 1px solid #003576;
  font-weight: 600;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  text-decoration: none;
  text-align: center;
  letter-spacing: 0.05em;
}

a.button:hover{
	background-color: #FFF;
	color: #003576!important;
}

blockquote{ 
	background-color: #8889be; 
	padding: 30px;
	width: 100%;
	margin: 10px 0 20px 0;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
  	border-radius: 20px;
	font-size: 16px;
	color: #fff;
	}

.kontaktbox { margin-top: 20px; line-height: 22px; }

#inhalt img { width: 100%; height:auto; margin: 0 0 40px 0; border-radius: 8px }
#inhalt img.galeriefotos { float: left; width: 30%; height:auto; margin: 40px 20px 40px 0 }

img.imageleft{ max-width: 25%; height: auto; float: left; padding-right: 30px; display:block}
	
/* ---------------------- MENU ---------------------------- */

#menu {
float: left;
width: auto;
 position: relative;
 margin: 40px 30px;
 display: block;
 width: auto;
 height: auto;
 text-align: center;
 color: #fff;
 z-index: 10000;
 }


	
#menu ul {
 margin: 0;
 padding: 0;
  list-style: none;
}
#menu li {
 margin: 0;
 padding: 0;
}
#menu a {
 margin: 0;
 padding: 0;
}

#menu a {
 text-decoration: none;
}

#menu > ul > li {
 position: relative;
 display: inline;
}

#menu > ul > li > a {
 color: #003576;
 font-family: 'Open Sans', sans-serif;
 font-weight: 300;
 font-size: 24px;
 height: auto;
 padding: 10px;
  background-color: #fff;
 border-radius: 8px;
 border: 1px solid #003576;
  margin-right: 10px
}

#menu > ul > li:after {
	
	content: "";
}
	
#menu > ul > li > a:hover, #menu > ul > li > a:focus, #menu > ul > li > a.aktiv {
 color: #fff;
 background-color: #003576;
}



#menu > ul > li > ul {
 opacity: 0;
 visibility: hidden;
 padding: 16px 0 20px 0;
 background-color: #fafafa;
 text-align: left;
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -90px;
 width: 180px;
 -webkit-transition: all .3s .1s;
 -moz-transition: all .3s .1s;
 -o-transition: all .3s .1s;
 transition: all .3s .1s;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
 -moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
 box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
}
#menu > ul > li:hover > ul {
 opacity: 1;
 top: 25px;
 visibility: visible;
}
#menu > ul > li > ul:before {
 content: '';
 display: block;
 border-color: transparent transparent #fafafa transparent;
 border-style: solid;
 border-width: 10px;
 position: absolute;
 top: -20px;
 left: 50%;
 margin-left: -10px;
}
#menu > ul ul > li {
 position: relative;
}
#menu ul ul a {	
 color: #323232;
 font-family: 'PT Sans Narrow', Verdana;
 font-size: 24px;
 background-color: #fafafa;
 padding: 5px 8px 7px 16px;
 display: block;
 -webkit-transition: background-color 0.1s;
 -moz-transition: background-color 0.1s;
 -o-transition: background-color 0.1s;
 transition: background-color 0.1s;
}
#menu ul ul a:hover {
 background-color: #b6b3d6;
}
#menu ul ul ul {
 visibility: hidden;
 opacity: 0;
 position: absolute;
 top: -16px;
 left: 206px;
 padding: 16px 0 20px 0;
 background-color: #fafafa;
 text-align: left;
 width: 180px;
 -webkit-transition: all .3s;
 -moz-transition: all .3s;
 -o-transition: all .3s;
 transition: all .3s;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
 -moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
 box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4);
}
#menu ul ul > li:hover > ul {
 opacity: 1;
 left: 190px;
 visibility: visible;
}
#menu ul ul a:hover {
 background-color: #a7a6a6;
 color: #f0f0f0;
}

.responsiveContainer {
 position: relative;
 padding-bottom: 56%;
 height: 0;
 overflow: hidden;
}

.responsiveContainer iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}

.slicknav_menu {
	display:none;
}

.map-responsive{
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
}
.map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

.weiterbildung{ 
 position: relative;
  display: none;
 opacity: 0;
 background-color: #fff;
 }
  
.weiterlesen{ margin-top: 20px; cursor: pointer; display: block}
.weiterlesen:hover > .weiterbildung { display: block; opacity: 1;  transition: opacity .25s ease-in-out;
   -moz-transition: opacity .25s ease-in-out;
   -webkit-transition: opacity .25s ease-in-out;}
.weiterbildung ul{ color: #777 }

@media screen and (max-width: 1200px) {

#menu > ul > li > a {
 font-size: 20px;
 padding: 10px!important;
}

.js .slicknav_menu { display: none}

}


@media screen and (max-width: 1020px) {
	
#logo{
	width: 250px;
}
#menu{
	margin-top: 0px;
}
a.button {
  width: 40%;
  margin: -20px 20px 60px 0;
}

img.bildlinks { max-width: 40%;}
}


@media screen and (max-width: 900px) {

#menu {
		display: none; 
	}
	
.slicknav_menu {
		display:block;
	}

#telefon{
	witdh: 240px;
	}

	
#telefon img{ 
	width: 70%; 
	height: 70%; 
}

#logo{ float: none; width: 100%; text-align: center;}
			
#logo a img { 
	width: 80%; 
	height: auto; 
	float: none;

}

#links{
	width: 30%;
	height: auto;
	padding-right: 0;
	float: none;
	}
	
#rechts{
	width: 25%!important;
	height: auto;
	padding-right: 0;
	margin-top: 20px;
	float: none;
	position: relative;
	
	}

table {	font-size: 16px; line-height: 24px}

td{ width: 80px; margin-bottom: 5px}

.team{ width: 100%;}
.teamlinks { max-width: 170px; height: auto; float: left; margin-bottom: 30px;}
.teamrechts { width: 60%; height: auto; float: left; margin-left: 25px}
a.button {
  width: 80%;
}

a.button:nth-child(1) {
  margin: -40px 0 0 0;
}

a.button:nth-child(2) {
  margin: 20px 0 40px 0;
}

img.bildlinks { max-width: 100%; margin: 0 0 40px 0!important}
}




@media screen and (max-width: 730px) {
#logo{ float: left; width: 100%; text-align: center; margin: 0 auto}


#container{
	padding:20px;
}

#content .textrechts{ float: left; }
#telefon img{ 
	width: 60%; 
	height: 60%; 
}

p.bjqs-caption{ visibility: hidden; }


#menu {
 position: absolute;
 right: 0;
}


#menu > ul{
	margin-right: 10px;
	margin-left: 10px;
}

#menu > ul > li > a {
 font-size: 20px;
 line-height: 60px;
 padding: 0 5px 5px 5px;
}



.teamlinks {max-width: 400px; height: auto; float: none; margin-bottom: 30px;}
.teamrechts { width: 100%!important; max-width: 100%!important; height: auto; float: none; margin-left: 0}
.team ul{ font-size: 20px; line-height: 30px; list-style: circle; padding-left: 25px; margin-top: 0}
.teamlinks img{ width: 100%}
}

@media screen and (max-width: 600px) {
#container{
	padding:10px;
}

h1, h2{
	font-size: 30px;
	line-height: 38px;
	margin:0;
	
}

h3{
	font-size: 24px;
	line-height: 30px;
	margin: 0 0 10px 0;
	}
	
#logo{
	font-size: 30px;
}

#logo .subline{
	font-size: 20px;
	margin-top: 10px;
}


p.bjqs-caption{ visibility: hidden; }


#menu {
 position: absolute;
 right: 0;
}


#menu > ul{
	margin-right: 10px;
	margin-left: 10px;
}

#menu > ul > li > a {
 font-size: 20px;
 line-height: 60px;
 padding: 0 5px 5px 5px;
}

}