@charset "utf-8";

/*			Fonts			*/

@font-face {
    font-family: 'open_sansregular';
    src: url('../fonts/OpenSans-Regular-webfont.eot');
    src: url('../fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Regular-webfont.woff2') format('woff2'),
         url('../fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sanssemibold';
    src: url('../fonts/OpenSans-Semibold-webfont.eot');
    src: url('../fonts/OpenSans-Semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Semibold-webfont.woff2') format('woff2'),
         url('../fonts/OpenSans-Semibold-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Semibold-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Semibold-webfont.svg#open_sanssemibold') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* Clear Floated Elements */
.clear {clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0;}
.clear:after, .ce_text:after {clear:both;content:' ';display:block;font-size:0;
line-height:0;visibility:hidden;width:0;height:0;}
* html .clear {height:1%;}
.invisible {display: inline;left: -1000px;overflow: hidden;position: absolute;top: -1000px;}
a.invisible {display:none;}

body {background-color:#FFF;color:#333;font-family: 'open_sansregular', Helvetica, sans-serif;}

h1,h2,h3,h4,h5,h6 {color: #333;font-family:'open_sanssemibold', sans-serif;}
h2 {font-size:30px;margin-bottom:40px;}
.logo h2 {font-size:50px;margin-bottom:8px;color:#333;
text-decoration: underline; text-decoration-thickness: 1px;}
/*h1 + h3 {margin-top:-16px;}*/
.logo h2 .smaller{font-size:32px;}
.logo h4 {color:#333;}

p {font-size:16px;line-height:1.6em;color:#333;}
a, table th {}

table td {font-size:16px;line-height:1.6em;color:#333;}
table {width:100%;border-collapse:collapse;margin-bottom:24px;}
table th,table td {padding:6px 0;line-height: 1.5em;vertical-align: top;}
table th {font-weight:600;text-align:left;}
th *:first-child,td *:first-child {margin-top: 0;}
thead th {text-align: left;color: #000;border-bottom: 1px #000 solid;}
tbody th, td {text-align: left;border-top: 1px solid #ccc;}
tbody tr:hover th,tbody tr:hover td {background: #e3d8a9;}
tfoot {border-top: 4px solid #ccc;}
table.preisliste th {display:none;}

ul li {font-size:16px;line-height:1.6em;color:#333;}

a {font-weight:400;color:#535353;
transition: .1s ease-in;outline:0;text-decoration:underline;}
a:hover {color:#999999;text-decoration:none;}

em,i {font-weight:600;}
.rechts {text-align:right;}
.mitte {text-align: center;}

.container hr {position:relative;display:block;width:100%;
height:2px;border:0;border-top: 1px; border-style: dashed;
margin:20px 0 20px 0;}
.linie.col-md-12.col-sm-12.col-xs-12 {margin: 0;padding: 0 !important;display: inline-block;}

.zitat {color:#000055;font-family: 'Lucida-Handwriting-Italic';}

::-moz-selection {color: #000055;background: #FFF;}
::selection {color: #000055;background: #FFF;}

.ce_gallery {margin: 16px 0;padding: 5px 0;
display: inline-block;}
.ce_gallery ul {display: inline;list-style: outside none none;}
.ce_gallery ul li {float: left;list-style: outside none none;
margin-left: 4px;margin-bottom: 4px;padding: 0;}
.ce_gallery li::before {font-family:'Font Awesome 5 Free';content:" \f0fe";/*plus-square*/
position: absolute;margin-left: 16px;margin-top: 16px;}

.caption {background-color:#d9d9ff; padding: 12px;color: #006;}
.caption .fas, .far {font-weight: 600;font-size: 1.25em;color:#FFF;}
.caption .rechts {float:right;margin-right:16px;color:#FFF; background-color: #000044;
padding-right:8px;padding-left:8px;border: 5px solid #000044;border-radius: 8px;margin-top: -4px;}
.caption .rechts a {color:#FFF;}

/* ####### CSS Hilfsklassen ####### */

.text-big {font-size:1.3em;}
.text-normal {text-transform:none;}
.text-small {font-size:0.88em;}
.text-left {text-align:left;}
.text-center {text-align:center;}
.text-right {text-align:right;}

.bg-clear {background:transparent;}
.bg-white {background:#fff;}


.full-width {width:100%;
	padding:20px;
	text-align:center;}
.btn.full-width {background:transparent;
	border:1px solid #2d3e15;
	text-align:center;}
.zero-padding {
	padding-left:0 ;
	padding-right:0;
}
.btn{border-radius:0 !important;background:#FFF !important;
color:#FFFFFF;font-size:18px;margin:20px 0;padding:10px;}

.icon {
	width:30px;
	height:30px;
	display:inline-block;
	float:left;
	margin-right:10px;
	background:#A8D5BF;
	padding:5px;
	border-radius:40px;
}
a.icon-big {
	width:50px;
	height:50px;
	display:inline-block;
	margin-right:10px;
	background:transparent;
	border:1px solid #A8D5BF;
	padding:5px;
	margin:30px 0px 0 10px;
	border-radius:40px;
	text-align:center !important;
}
a.icon-big:hover {
	background-color:#A8D5BF;
}
.spacer-icon {
	position:relative;
	width:60px;
	height:60px;
	margin:-50px auto 0;
	display:block;
	background:#fffcf2;
	text-align:center;
	border-radius:60px;
}
.padded-top {padding-top:32px;}
.padded-bottom {padding-bottom:32px;}

/* ####### CSS spezifisch ####### */
#header {display:block;background-color:#FFFFFF;color:#333333;}
#header .container {padding-right: 0;padding-left: 0;}
#page {background-color:#FFFFFF;color:#333333;}
/*#content .container .row {background-color:#FFF;}*/
.logo {display:block;margin-bottom: 16px;}
#content .logo img {width: auto;
display: block;height: auto;border-right: 0 solid #FFF;}

img.float_left {float:left; margin-right:16px;}
.image_container.float_right {float: right;}
.image_container.float_left {float: left;}
#teaser .image_container.float_left {float: left;margin-right: 32px;}

#teaser .fill .image_container img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover;
  object-position: 50%;
  max-width: 100%;
}
#teaser .fill figure {
  margin: 0;
  display: block;
  overflow: visible;
  position: relative;
  object-fit: contain;
  width: 100%;
  height: 100%;
}
figure.image_container img {
  display: block;
  margin: 0 auto;
}

.pfad {font-size: 14px;margin-left: 0;margin-top: 40px;margin-bottom: 8px;}
.pfad a {background-color: transparent;color: #333333;text-decoration: none;font-size: 14px;}
.pfad a:hover,.pfad a.aktiv {background-color: #000transparent;color: #ffc000;text-decoration: underline;}
.pfad ul, .pfad ul li {display: inline;font-size: 14px;}
.pfad li:after { content: " > "; }
.pfad li.active:after { content:""; }

.desktop {display:block;}
.fa-stack-2x { font-size: 0.5em; }

.navbar-brand {
  float: right;
  height: auto;
  padding: 5px 15px;
  font-size: 18px;
  line-height: 20px;
  margin: 0 auto;
}
.navtop {float: right;}
.navtop li ul {
width:100%;list-style: none;float: right;position: relative;}
.navtop li a {color: #333;font-size:14px;
padding-right:8px;}
.navtop li {float: left;position: relative;padding-right:8px;}
.navtop a {padding-right:16px;text-decoration: none;}
.navtop li.last {display:none;}

.navbar-nav {float: left;}
#main-nav #jaddatz-nav {
	position:relative;
	max-width:1170px;
	margin:0 auto;
	left:-15px;
	right:0;
}
.navbar-default {background-color: transparent;border-color: transparent;}

#main-nav {
	z-index:10000;width: 100%;position: relative;
	margin:0;
	padding:0;
	background-color:#333333;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 1px, rgba(0, 0, 0, 0.1) 0px 4px 2px, rgba(0, 0, 0, 0.1) 0px 8px 4px, rgba(0, 0, 0, 0.1) 0px 8px 8px, rgba(0, 0, 0, 0.1) 0px 8px 8px;
}
#main-nav li a.sf-with-ul.active, #main-nav li a.sf-with-ul.trail {
  padding-right: 2em;
  background-image: url(../img/arrow-down-active.svg);
  background-position: 95% center;
  background-repeat: no-repeat;
  background-size: 20px auto;
}
#main-nav li a.has-subnav, #main-nav li a.sf-with-ul {
  padding-right: 2em;
  background-image: url(../img/arrow-down.svg);
  background-position: 95% center;
  background-repeat: no-repeat;
  background-size: 20px auto;
}
#main-nav li a {
	font-size:18px;
	padding-left:16px;
	padding-right:32px;
}
.mobilansicht {display:none;}
#navmobil, .navmobil {display:none;}
#access {padding:0;background:rgba(0,130,129,1);overflow: hidden;display:inline;
position: relative;z-index: 1;width: 1170px;margin: 0 auto;}
.navdesk a {font-size: 21px;}

#teaser {max-height:680px;overflow:hidden;background:#FFF;}
#teaser img{width:100%;margin-top:0;display: block;height: auto;}
#content img{width:100%;margin-top:0;display: block;height: auto;}
#teaser .col-md-8 , #teaser .col-sm-8, #teaser .col-xs-12 {padding-left:0;}
#teaser .col-md-4 , #teaser .col-sm-4, #teaser .col-xs-12 {padding-right:0;}
#teaser p, #teaser h3 {color:#FFF; padding:0 32px;margin-top: 36px;}

.logos {padding: 32px 0 16px 0;}

.row {
display: flex;
flex-wrap: wrap;
margin-right: -15px;
margin-left: -15px;
}

.site-title {
	margin-top:-140px;
	display:inline-block;
	padding:20px;
	background:#eaeef8 !important;
}

.table-heading {
	padding:10px;
	background:#eaeef8 !important;
	margin-bottom:20px;
	opacity:.7;
}
ul {
	list-style:none;
	margin:0;
	padding:0;
}

#footer {
	padding:16px;
	color:#FFF;
	background-color:#393F43;
	border-top: 1px solid #333333;
	position: relative;
	overflow: hidden;
	display: block;
}

#footer p, #footer a {
	font-size:14px;
	color:#FFF;
	text-transform:none;
}
#footer .copyright > p {
	margin-top:0;
	color:#FFF;
	padding:16px 80px 16px 0;
	font-size:0.9em !important;
	text-align:right;
}
#footer .row {margin-right: 0;}

/* HR Footer */
#footer hr {
  border: 0 solid #eeedef;
  border-top-width: 2px;
  height: 0;
  margin: 10px auto;
  clear: both;
  display: block;
  width: 100%;
  position: relative;
  margin-right: 40%;
}

#nav-toggle {
	background:transparent;
	width:80px;
	height:80px;
	padding:0;
	border:0;
}

/* Toplink */
#footer {margin-top:32px;}
#footer a {text-decoration:none;}
#footer .nach_oben_link{position:fixed;bottom:93px;right:33px;z-index:15;opacity:0.9}
#footer a .nach_oben_link .fas {color:#A8D5BF;background-color:transparent;height:40px;width:40px;display:block;font-size:4.8em;text-align:center;text-decoration:none}
#footer a:hover .nach_oben_link,
#footer a:focus .nach_oben_link{text-decoration:none;}
#footer a:hover .nach_oben_link .fas {color:#999999;}
#footer .nach_oben_link a:before{font-family:'Font Awesome 5 Free';content:" \f139";}
#footer h2 {color:#535353;font-size:24px;margin-bottom:16px;margin-top:0;}

.modal-content {
	background:transparent !important;
	border-radius:0 !important;
	box-shadow:none !important;
}
.preview_pics_wrap {
width:760px;
height:120px;
float:left;
overflow:hidden;
margin:0 0 10px 0;
}
.preview_pics {
padding:10px;
float:left;
}
.fas, .far {font-weight: 600;font-size: 6.5em;color:#000055;line-height: 1;display: inline-block;}
.fas:hover, .far:hover {color:#B1B3B4;}
/*   Termine   */
.place {margin-top: -47px;}
.place .fas {font-size: .88em;font-weight: 600;}
.time {float: right;}
.termin .fas.fa-caret-right {font-size: 1.6em;font-weight: 600;}
.termin {text-align:right;}


.teaser {width: 86%;margin-left: 12%;padding-left:8px;}
.teaser :after {clear:both;content:' ';display:block;font-size:0;
line-height:0;visibility:hidden;width:0;height:0;}

button.rahmen {background-color:transparent;color:#FFF;border: 2px solid #FFF;
padding: 16px;margin-bottom:16px;}
button.rahmen a {color:#FFF;font-size: 18px;}

.hamburger {font-family:'Font Awesome 5 Free';content:" \f0c9";}
.desktop {display:block;}
.mobilansicht {display: none;}

fieldset {border:#EEE 0 solid;padding:0;}
input[type="text"], input[type="password"], input[type="tel"], input[type="email"]
, textarea, select,input[type="search"] {padding:0.5%;margin-bottom: 4px;font-size:13px;
box-shadow:inset 1px 1px 5px rgba(0, 0, 0, .05);background:#FCFCFC;
border:#999 1px solid;color:#333;font-family:"Droid Sans", sans-serif;}
input[type="text"]:focus,input[type="password"]:focus,textarea:focus {
background:#FFF;border:#ddd 1px solid;color:#333;outline: none;}
input[type="radio"], input[type="checkbox"] {width: 5%;float: left;}
.radio_container label {width: 10%;}
textarea {font-size:15px;}
button[type=submit],input[type=submit],input[type=reset],input[type=button] {padding:4px 15px;
border-radius:5px;box-shadow:0 0 5px rgba(0, 0, 0, .1);background:#FFC000;color:#FFFFFF;
border:none;font-family:"GillSans", sans-serif;font-size:18px;width: auto;}
button[type=submit]:hover, input[type=submit]:hover,input[type=reset]:hover,input[type=button]:hover {
color:#333;}
button[type=submit]:focus,input[type=submit]:focus,input[type=reset]:focus,input[type=button]:focus {color:#333;}
label, legend {display: block;float: left;position: relative;width: 35%;font-weight: normal;}
label.mandatory {font-weight: bold;}
legend {font-size: 16px;}
.checkbox_container label {width: 98%;}
input, textarea {width: 40%;}
span.captcha_text {font-weight: normal;font-size: 1em;float: left;}
.captcha_text {margin-left: 0;}
.captcha_text {display: flex;height: 3em;margin-left: 35%;}
input.captcha {width: 48px;margin-left: 16px;}
legend {font-size: 14px; color: #FFF; border-bottom: 0px solid #e5e5e5;}
.widget-submit {display: flex;justify-content: center;align-items: center;}


/*    Animation     */
.counter, .bg_grau {background-color: #ECEDED;color: #393F43;}
.display-4 {color: #A8D5BF;font-size: 70px; font-weight:bold;line-height: normal;}
.counter p {color: #393F43;font-size: 28px; font-weight:bold;}
.counter:after {clear:both;content:' ';display:block;font-size:0;
line-height:0;visibility:hidden;width:0;height:0;}
.counter {margin-bottom:32px;padding-top: 16px;padding-bottom: 16px;}
.bg_grau {padding: 16px;}

/*     Gründe    */
.gruende div {border-left:#A8D5BF solid 2px;}
.gruende h2 {font-size: 70px;font-family: 'open_sanssemibold'; color:#A8D5BF;margin-bottom: 16px;}
.gruende h2 .small {font-size: 24px;font-family: 'open_sanssemibold'; color:#A8D5BF;}

#teaser figcaption {text-align: center;
position: absolute;
color: #FFF;
margin: 0 auto;
width: 100%;
font-size: 28px;
display: block;
overflow: visible;
top: 160px;}

.rsts-skin-default .rsts-next {
background-image:  url(../img/arrow-left.svg);
background-size: 50px,60px;
right: 90%;bottom: 35%;width: 40px;height: 60px;
}
.rsts-skin-default .rsts-prev {
  position: absolute;
  right: 5%;
  bottom: 35%;
  overflow: hidden;
  width: 30px;
  height: 60px;
  border: 0;
  border-radius: 0;
  outline: none;
  line-height: 0;
  text-align: center;
  text-decoration: none;
  text-indent: -9999px;
  background-clip: padding-box;
  background-image: url(../img/arrow-right.svg);
  background-size: 50px,60px;
  box-shadow: 0;
  background-position: 50% 50%;
  transition: opacity 0.05s linear;
}
.rsts-skin-default .rsts-next:hover, .rsts-skin-default .rsts-prev:hover {
	background-color:transparent;
}
.mm-page {min-height: auto !important;}

@media screen and (max-width: 1100px){
	#teaser {max-height: none;}
}

@media screen and (max-width: 992px){
	#main-nav li a {font-size:14px;}
	.site-title {font-size:24px;}
	#teaser {max-height: none;}
}

@media screen and (max-width: 767px){
	img#logo {width:100%;height:auto;margin-top:10px;}
	#phone-btn img.icon{width:50px;height:50px;}
	.phone {margin:0 -15px 0 0;}
	#main-nav {width:100%;margin:0;float:none !important;}

/* Force table to not be like tables anymore */
	table, thead, tbody, th, td, tr { display: block; }
	/* Hide table headers (but not display: none;, for accessibility) */
	thead { position: absolute;top: -9999px;left: -9999px;}
	tr { border: 1px solid #ccc; margin-bottom: 20px;}
	td { /* Behave  like a "row" */border: none;
	/*border-bottom: 1px solid #eee; */position: relative;}
	td:before { /* Label the data */content: attr(data-title);
	display: inline-block;width: 35%; padding-right: 10px; white-space: nowrap;}
	td {padding-left: 45%;}
	td:before {width: 40%;}
	td:first-child {font-weight:bold;}
		td:first-child:before {font-weight:normal;}
	#teaser {max-height: none;}
	#header {display: block;background: #FFF;position: relative;
	overflow: visible;}
	.text-welcome {font-size: 2.4em;}
	.text-small {font-size: 0.6em;}
	.text-yellow {margin-left: 2px;}
	#content {margin-top: 0;padding: 0;display: block;
	overflow: visible;position: relative;}
	#teaser h2 {top: 20px;}
	.padded-top {padding-top: 16px;}
	#teaser img {margin-top: 0;}
	#teaser h2.teaser-headline {font-size: 22px;left: auto;top: 70px;}
	#footer img {max-width: 119px;}
	.navbar-default .navbar-toggle {border-color: transparent;}
	#navmobil {display: flex;margin: 0;z-index: 999999;}
	#navmobile {display: flex;/*margin: 0 19px 0 0;*/}
	#navmobile a {font-size: 30px;/*font-size: 14px;*/padding: 0 8px; margin: 0; 
	color: #000055;text-decoration:none;font-weight: bold;}
	.navbar-toggle {padding:0;}
	.btn.navbar-toggle {margin: 8px;}
	.navdesk.mod_navigation.block {display: none;}
/* All the following are for the div.menu-icon (pure CSS) */
	.icon-align-justify {font-size: 30px; /*icon size*/display: block;
	position: relative;	width: 36px;height: 34px;text-align: center;cursor: pointer;
	background-color: transparent;border-radius: 3px;margin-bottom:6px;}
	.icon-align-justify::before {border-bottom: 0.25em solid #000055;
	border-top: 0.65em double #000055;box-sizing: content-box;content: "";
	height: 0.25em;left: 4px;position: absolute;top: 0.25em;width: 1.5em;}
	#header .col-md-8 {display:none;}
	#header .col-xs-4 {width: 34.33%;}
	#footer p, footer nav {padding-left:16px;}
	input, textarea {width: 90%;}
	label, legend {float: none;width: 100%;}
	input[type="submit"], input[type="reset"], input[type="button"] {margin-left: 0;}
	input, textarea {width: 90%;}
	.mobilansicht {display: block;}
	.caption .rechts {float: none;padding-right: 0;padding-left: 0;}
	#teaser figcaption {color: #FFF;top: 40%;font-size:20px;}

}
