@font-face {
  font-family: 'open_sansbold';
  src: url('../fonts/opensans-bold-webfont.eot');
  src: url('../fonts/opensans-bold-webfontd41d.eot?#iefix') format('embedded-opentype'),
       url('../fonts/opensans-bold-webfont.woff2') format('woff2'),
       url('../fonts/opensans-bold-webfont.woff') format('woff'),
       url('../fonts/opensans-bold-webfont.ttf') format('truetype'),
       url('../fonts/opensans-bold-webfont.svg#open_sansbold') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'open_sansregular';
  src: url('../fonts/opensans-regular-webfont.eot');
  src: url('../fonts/opensans-regular-webfontd41d.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;
}

.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.se-pre-con {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 999999999999999999999999;
  background: url(../img/Preloader.gif) center no-repeat #fff;
}
    
body {
  background-color: #d9d5d4;
  font-family: open_sansregular, Arial, sans-serif;
}

.ym-wrapall {
  background: #fff url(../img/welle.jpg) no-repeat center top;
}

nav, header {
  background: none;
}

nav {
  height: 80px;
  z-index: 99;
  position: relative;
}

header {
  height: 170px;
}
header img { margin-left:4px; }
main {
  background-color: #fff;
  min-height: 333px;
  line-height: 1.5;
}

footer {
  background: #d9d5d4;
  color: #666;
}

footer .adresse {
  padding: 0 0 0 4em;
  border-left: 1px solid #fed30d;
}

footer .adresse i {
  margin: 0 0 0 -2em;
  padding: 0 1em 0 0;
  width: 1em;
}

footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

footer li {
  margin: 0;
  padding: 0;
}

footer .footerNav li {
  float: left;
}

footer .footerNav ul li+li {
  margin: 0 0 0 3em;
}

footer .footerNav ul.sub-first li+li {
  margin: 0;
}

footer .footerNav ul.sub-first li {
  float: none;
}

footer a {
  color: #fff;
  font-weight: 700;
}

footer .footerNav ul.sub-first li a {
  color: #666;
  font-weight: 400;
}
.MobileAddy { display:none; }
.clear {
  clear: both;
}

.ym-wrapper {
  min-width: 980px;
}

nav .ym-wbox, header .ym-wbox {
  padding: 0;
}

main .ym-wbox {
  padding: 1.5em 0;
}

main .ym-grid {
  padding-bottom: 75px;
}
main .ym-grid h1 {
  margin-bottom:-25px;
}

main .ym-gbox { padding:0 15px; }

h1, h2, h3 {
  font-family: open_sansbold, Arial, sans-serif;
}

h2 {
  padding-bottom: 30px;
}

h3 {
  padding-bottom: 20px;
}

h1 {
  font-size: 63px;
  line-height: 69px;
}

a {
  text-decoration: none;
}

a.button-gelb {
  background: #fed30d;
  color: #000;
  display: inline-block;
  padding: 3px 13px;
}

a.button-gelb::after {
  content: ' \2023';  
}  

a.button-gelb:hover, a.button-gelb:active {
  background: #000;
  color: #fed30b;
}


a.link-pfeil { /* background: url(../img/link-pfeil.png) no-repeat right center; */ color:#000000; display:inline-block; }
a.link-pfeil::after {
  /* content: ' \27b2'; */
  /* content: 'url(../img/link-pfeil.png)'; */
  content: url(../img/link-pfeil.png);
  vertical-align: middle;
  margin-left: 2px;
  margin-right: 2px;
}
a.link-pfeil:hover { text-decoration:underline; }

sup, sub { font-size:75%; line-height:75%; }

ul.contentList { margin:0; }
ul.contentList li { list-style:none; background:url(../img/list-bullet.png) no-repeat 2px 9px; padding: 0 0 4px 15px; margin: 0; }

table { width:100%; }
tbody { /* border-top:5px solid #999999; */ }
table caption { caption-side:bottom; text-align:left; padding:8px 12px; font-size:80%; font-style:italic; color:#396cb0; }
td { background-color:#f3f3f3; border:3px solid #ffffff; border-collapse:separate !important; padding:5px 30px 5px 12px; vertical-align: top; }

table.contenttable th { background-color:#d9d5d5; height:5px !important; line-height:5px !important; font-size:5px !important; color:#d9d5d5;
  border-left:3px solid #ffffff; border-right:3px solid #ffffff; border-bottom:3px solid #ffffff; border-collapse:separate !important; }

td.td-0 { width:35%; }
td.td-1 { font-weight:bold; }

@media screen and (min-width: 767px) {

nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.main-navigation { float:right; }
.sub-first { padding-top:7px; }
nav li { margin-left:0; }
nav ul.main-navigation > li { margin-top:12px; margin-left:10px; }
nav ul.main-navigation > li:last-child { margin-right: 15px; }

nav ul li {
  display: block;
  position: relative;
  float: left;
}
nav li ul { display: none; }
nav ul li a {
  display: block;
  padding: 5px 15px;
  text-decoration: none;
  white-space: nowrap;
  color: #000000;
  background-color:#ffffff;
}
nav ul li.first > a {
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgb(255, 255, 255);
  /* RGBa with 0.6 opacity */
  background: rgba(255, 255, 255, 0.6);
}
nav ul li a:hover { background: #000000; color:#ffffff; }
nav li:hover > ul {
  display: block;
  position: absolute;
}
nav li.last ul.sub-first { right:0; }
nav li:hover li { float: none; padding-bottom:2px; }
nav li:hover a { background: #f4f2f3; }
nav li:hover li a:hover { background: #000000; color: #ffffff; }
nav .main-navigation li ul li { border-top: 0; }
nav ul ul ul {
  left: 100%;
  top: 0;
  padding-left:2px;
}
nav ul:before,
nav ul:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}
nav ul:after { clear: both; }

}


/* FCEs */
.box-bild-text,
.box-text-bild { position:relative; }
.box-bild-text img,
.box-text-bild img { /*max-width:936px !important;*/ }
.box-bild-text .BoxBild {  }
.box-bild-text .BoxText { background-color:#d9d5d5; float:right; width:28%; height:100%; position: relative; }
.box-text-bild .BoxBild {  }
.box-text-bild .BoxText { background-color:#d9d5d5; float:left; width:28%; height:100%; position: relative; }
.BoxText > div { padding: 1.5em; }
.BoxText a.button-gelb { position: absolute; right: 1.5em; margin: 2em 0 0; }


.grauer-rahmen-oben { border-top:5px solid #d9d5d5; padding-top:30px; }

.ym-g33 img { max-width:405px; height:auto; }




.ym-grid img {
  width: 100%;
  max-width: 100%;
  height: auto;
  /* max-height: 90vh; */
}

.csc-textpic-image {
  display: block!important;
  overflow: hidden;
  position: relative;
}

.csc-textpic-image a {
  /* z-index: 99; */
  position: relative;
}

.plus::after {
  content: "+";
  background: #fed30b;
  color: #000;
  font-weight: bold;
  width: 38px;
  height: 38px;
  display: block;
  background-size: cover;
  position: absolute;
  right: 0;
  bottom: 0;
  text-align: center;
  font-size: 1.8em;
  line-height: 1.4;
  pointer-events: none;
}

.csc-textpic-image figcaption {
  opacity: 0;
  background: #fed30b;
  color: #000;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 100%;
  top: 100%;
  transition: opacity .2s ease-out, top .5s ease-out, left .5s ease-out;
  font-weight: 700;
  font-size: 1.3em;
  padding: 1em;
  z-index: 11;
  pointer-events: none;
}


.csc-textpic-image figcaption small {
  font-weight: 400;
  font-size: .9em;
}

.csc-textpic-image a:hover ~ figcaption {
  opacity: .9;
  top: 0%;
  left: 0%;
  transition: opacity .2s ease-out, top .5s ease-out, left .5s ease-out;
}

.csc-textpic-image figcaption.normalFigcaption {
  opacity: 1;
  background: #D9D5D4;
  left: auto;
  bottom: auto;
  top: auto;
  position: relative;
  right: auto;
  font-size: 1em;
  font-weight: 400;
  height: auto;
  width: inherit;
  display: block;
}

.FlexBoxWrapper {
  display: inline-block;
  background: #d9d5d5;
  width: 100%;
  height: 100%;
}

.FlexBox {
  float: left;
  width: 72%;
  position: relative;
}

.box-text-bild .FlexBox {
  float: right;
  width: 72%;
}

.FlexBox ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.FlexBox ul.flex-direction-nav {
  opacity: 0;
  transition: opacity .5s linear;
  position: absolute;
  width: 100%;
  z-index: 999;
  margin: 18% 0 0;
}

.FlexBox:hover ul.flex-direction-nav {
  opacity: 1;
  transition: opacity .5s linear;
}

.FlexBox ul li {
  margin: 0;
  padding: 0;
  line-height: 0;
}

.FlexBox ul.flex-direction-nav a {
  overflow: hidden;
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  outline: 0;
  color: #fff;
  line-height: 1.5;
}

.FlexBox ul.flex-direction-nav li:first-child {
  left: 0;
  position: absolute;
}

.FlexBox ul.flex-direction-nav li:first-child a::before {
  display: inline-block;
  font-size: 40px;
  line-height: 1;
  content: '\f053';
  font-family: fontAwesome;
}

.FlexBox ul.flex-direction-nav li:last-child {
  right: 0;
  position: absolute;
  text-align: right;
}

.FlexBox ul.flex-direction-nav li:last-child a::before {
  display: inline-block;
  font-size: 40px;
  line-height: 1;
  content: '\f054';
  font-family: fontAwesome;
}


.FlexBox ul li img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.FlexBoxWrapper .BoxText {
  z-index: 999999;
  position: relative;
}



.links50 { float:left; width:50%; }
.clear100noHeight { clear:both; height:0px; font-size:0px; line-height:0px; }

.tx-powermail h3,
.powermail_legend { display:none; }
.powermail_label { width:100px; width:20%; display:block; }
.powermail_fieldwrap_select,
.powermail_fieldwrap_input { padding-bottom:6px; width:80%; }

.powermail_select,
.powermail_input,
.powermail_textarea { font-size: 1em; width:98%; padding:5px 1%; border:1px solid #ebebeb; background-color:#ebebeb; }

.powermail_select { width:80%; }

.powermail_textarea { height:142px; }

.powermail_fieldwrap_7 { }

.powermail_fieldwrap_6 { text-align: right; margin-right:0; }

.powermail_submit {
  border: 0px solid #fff;
  background: #fed30d;
  color: #000;
  display: inline-block;
  padding: .5em 1em;
  cursor:pointer;
  font-size: 1em;
}

.powermail_submit::after {
  content: ' \2023';  
}  

.powermail_submit:hover, .powermail_submit:active {
  background: #000;
  color: #fed30b;
}

#c159 .ym-grid {
  padding-bottom: 30px;
}




.slicknav_menu {
  display:none;
}


.back-to-top {
  font-family: fontAwesome;
  background: #fed30d;
  color: #000;
  position: fixed;
  bottom: 20px;
  right: 20px;
  padding: .8em 1em;
  z-index: 999999;
}

.back-to-top:hover {
  font-family: fontAwesome;
  background: #000;
  color: #fed30d;
}

.tx-go-maps-ext img {max-width: none;}

.tx_swbaustellen_entry img { width:auto; height:auto; }


/* BE-SWE */
.id-CookieConsent {
  background: #f1f1f1;
  padding: 10px;
  border: 10px solid #fff;
  position: fixed;
  bottom: 0;
  z-index: 999999;
  display: none;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}

.id-CookieConsent:after {
  clear: both;
}

.id-CookieConsent-button {
  float: right;
  margin: 0 0 0 10px;
  cursor: pointer;
  display: inline-block;
  padding: 0.4em 0.5em;
  border-radius: 0px;
  border: 1px solid #006fb4;
  overflow: hidden;
  background: #006fb4;
  color: #fff;
  font-size: 16px;
  font-size: 1.1428571429rem;
  text-decoration: none;
  vertical-align: bottom;
  -webkit-appearance: none;
}

.id-CookieConsent-button:hover {
  border-color: #3a65a3;
  background: #3a65a3;
  color: #fff;
}

.id-CookieConsent-text {
  color: #000;
  overflow: hidden;
}

.id-CookieConsent-text-moreLink {
  color: #000;
}
.id-CookieConsent-text-moreLink:hover {
  text-decoration: underline;
}


.dce-privacy .note {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #f1f1f1;
  max-width: 30rem;
  margin: 1rem;
  color: #111;
  padding: 1rem;
  box-shadow: 0 3px 9px 0 #000;
  border-radius: 3px;
  font-size: 0.889em;
  z-index: 9999999999;
  text-align: left;
}
.dce-privacy .note a {
  color: #111 !important;
  background-color: inherit;
  text-decoration: underline;
}
.note button {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  background-color: #fff;
  color: #111;
  padding: 0.5rem;
}
.dce-privacy .title {
  font-size: 1.5em;
  display: block;
  margin-bottom: 1rem;
}
  
@media screen and (max-width: 600px) {
  .dce-privacy .note {
    top: 1rem;
    left: 1rem;
    transform: none;
    width: 80%;
  }
}

.dce-privacy .checkbox label span {
    background-color: #f8f8f8;
    color: #111;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Font Awesome 5 Free";
    line-height: 1;
    width: 1rem;
    height: 1rem;
    border: 1px solid #ebebeb;
    padding: 0.25rem;
    margin-right: 1rem;
    cursor: pointer;
}
input[type="checkbox"]:checked + span::before {
    content: '\f00c';
    color: #04323a;
}

.dce-privacy {
  position: relative;
  display: none;
}
.dce-privacy::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  z-index: 10000;
}
.dce-privacy .allcookies {
  margin-right: 1rem;
}
.dce-privacy .checkboxes {
  margin-top: 1rem;
}
.dce-privacy .checkboxes .checkbox label {
  margin-bottom: 0.5rem;
  display: inline-flex;
  align-items: center;
}
.dce-privacy .checkboxes .checkbox label.essential {
  cursor: auto;
}
.dce-privacy .checkboxes .checkbox label.essential span {
  cursor: auto;
  background-color: #ccc;
}
.dce-privacy .checkboxes .checkbox label.essential span::before {
  content: '\f00c';
}
.dce-privacy .checkboxes .checkbox .privacy-info {
  margin-left: 0.5rem;
  vertical-align: top;
  cursor: pointer;
  display: inline-block;
}
.dce-privacy .checkboxes .checkbox .privacy-info ~ .privacy-info-text {
  display: none;
  padding-bottom: 1rem;
}
.dce-privacy .checkboxes .checkbox .privacy-info.open ~ .privacy-info-text {
  display: block;
}
.dce-privacy .checkboxes input {
  margin-right: 0.5rem;
}

button.editCookies {
  text-decoration: none;
  cursor: pointer;
}

body.nobanner .dce-privacy {
  display: none;
}