/*
###################################################################################
  Responsive Website
  Entwicklungsstand: 12.01.2019 Version 19.4

  RoyalArt - Agentur für Softwaregestaltung
  http://www.royalart.de
  http://www.shopsoftware.com
  
  (c) Copyright by Dipl. Des. (FH) Sven Scholz - RoyalArt Agentur

  Copyrightvermerke duerfen NICHT entfernt werden!
  ------------------------------------------------------------------------
  Bei Verstoß gegen die Lizenzbedingungen kann die Lizenz jederzeit entzogen werden.
  Der Kaufpreises wird nicht erstattet. Wer gegen die Lizenzbedingungen verstoesst, muss
  mit einer Vertragsstrafe von 50.000 Euro je Einzeldelikt rechnen!
  ------------------------------------------------------------------------
  Dieses Programm ist eine Software von Dipl. Des. (FH) Sven Scholz, RoyalArt Agentur.
  Diese Software darf nicht veroeffentlicht, weitergeben und/oder modifizieren werden.
  Es gelten die Ihnen mitgeteilten Lizenzbestimmungen.
  Diese Software/Website ist eine Einzellizenz und für den Betrieb auf einem Speicherplatz
  (Webspace) berechtigt.
  Die Veroeffentlichung dieses Programms erfolgt OHNE IRGENDEINE GARANTIE, sogar ohne
  die implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FUER EINEN BESTIMMTEN ZWECK.

##################################################################################
  Copyrightvermerke duerfen NICHT entfernt werden!
*/
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, font, 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 {
   margin:0;padding:0;border:0;outline:0;font-size:100%;background:transparent;
}
:not(.edited) > table, 
:not(.edited) > table caption, 
:not(.edited) > tasble tbody, 
:not(.edited) > tsable tfoot, 
:not(.edited) > tsble thead, 
:not(.edited) > tasble th, 
:not(.edited) > table tr, 
:not(.edited) > tasble td { 
   margin:0;padding:0;border:0;outline:0;font-size:100%;background:transparent; 
}
.edited > table td { padding:1px; }
html {
  scroll-behavior: smooth;
}
body { line-height:1; }
ol,ul { list-style:none; }
blockquote,q { quotes:none; }
blockquote:before,blockquote:after,q:before,q:after { content:''; content:none; }
ins { text-decoration:none; }
del { text-decoration:line-through; }
table { border-collapse:collapse; border-spacing:0; }
div, p, td, li, input, textarea, select, h1, h2, h3, h4, h5, h6, a { color: #444; line-height: 160%; text-align:left }
h1 { font-size: 2em }
h2 { font-size: 1.5em;}
h3 { font-size: 1.17em;}
h4 { font-size: 1em;}
h5 { font-size: .83em;}
h6 { font-size: .50em;}
.container td { border-width:1px; }


#sprachen_wrapper { position: absolute; width:100%; z-index: 500; text-align:right; pointer-events:none; }
#sprachen { position: relative; display:inline-block; list-style: none; }
#sprachen li { display:inline-block; margin-left:15px; pointer-events: auto; }
#sprachen li:first-child {margin-left:0}

#logo { top: 0; bottom: 0; left: 0; width:100%; z-index: 100; display: block; pointer-events:none; overflow:hidden; }
#logo .bg { position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 50; overflow: hidden; }
#logo .logo { position: relative; width: auto; z-index: 1000; pointer-events:all; }
#logo a { display:inline-block; }

nav, #menu, #logo, #logo a { z-index:251 !important; }
nav { min-height: 50px; margin-bottom:0; border-radius:0; background-color:unset; }
nav { position: absolute; width:100%; border:0px; }
nav button { position:absolute; display:none; border:1px solid #dddddd; border-radius:4px; width:32px; height:14px; padding:9px 10px; margin:8px 15px 8px 0; box-sizing:content-box; pointer-events:auto; cursor:pointer } 
nav button .icon-bar { width:32px; height:2px; display:inline-block; vertical-align:top; float:left; }
nav button .icon-bar + .icon-bar { margin-top:4px; }

#mainmenu { position:absolute; z-index: 300; left: 0; pointer-events:auto; }
#mainmenu a { text-decoration:none; }

/* Menü Desktop */
@media (min-width: 1000px) {
   #mainmenu ul.level1 { position:relative; display:inline-block; vertical-align:top; }
   #mainmenu ul.level1 li { display:inline-block; position:relative; float:left; }
   #mainmenu ul.level1 a, #mainmenu ul.level1 span { display: block; position:relative; width:100%; height:46px; line-height:46px; padding:0 20px; }
   #mainmenu ul.level1 li ul { position:absolute; top:46px; left:0; height:0; overflow:hidden; opacity:0; transition:all 0.5s; }
   #mainmenu ul.level1 li:hover ul { height:auto; overflow:unset; opacity:1; }
   #mainmenu ul.level1 li:last-child ul { left:unset; right:0; }

   #mainmenu ul.level2 li { display:inline-block; width:100%; }
   #mainmenu ul.level2 li h2 { white-space:nowrap; max-width:100%; }
   #mainmenu ul.level2 a, #mainmenu ul.level2 span { display: block; position:relative; width:100%; height:46px; line-height:46px; padding:0 20px; }
   
   #mainmenu h2 { display: block; width:auto; text-align: left; }
   #mainmenu h2:first-child { border-top:0;  }
   #mainmenu h2:last-child { border-bottom:0; }
}


/* Menü Mobile */
@media (max-width: 1000px) {


   .wrapper-sticky { display:none; }
   nav button { display:block; }

   #menu { display:none; }
   #mainmenu { display:block; position:relative; margin-left:0; margin-right:0; left:0; float:none !important; width:100% !important; }
   #mainmenu ul.level1 { position:relative; display:block; width:100%; }
   #mainmenu ul.level1 li { display:block; position:relative; width:100%; box-sizing:border-box; }
   #mainmenu ul.level1 li ul { position:relative; left:0; height:0; overflow:hidden; opacity:0; transition:all 0.5s; width:100%; }
   #mainmenu ul.level1 li.hover ul { height:auto; overflow:unset; opacity:1; }
   #mainmenu ul.level1 li a, #mainmenu ul.level1 li span { display: block; position:relative; width:100%; height:100%; padding:12px 20px; }

   #mainmenu ul.level2 li { display:inline-block; width:100%; }
   #mainmenu ul.level2 li h2 { white-space:nowrap; max-width:100%; }
   #mainmenu ul.level2 a, #mainmenu ul.level2 span { display: block; position:relative; width:100%; height:100%; padding-left:36px !important; }
   

   #mainmenu h2 { display: block; position: relative; }
}

#content { position: absolute; box-shadow: 5px 0 5px 0px rgba(0, 0, 0, 0.3); margin-left: 0; overflow-x: hidden; overflow-y: hidden; }
#content.mittig { width: 100%; box-shadow: none;  z-index:220 !important; }
#content .expand { position: absolute; right: -34px; top: 30px; width: 34px; height: 34px; background: url('/img/expand-minus.png') no-repeat 12px center; cursor: pointer; background-color:#fff; border-top-right-radius: 3px; border-bottom-right-radius: 3px; }
#content .expand.close { background: url('/img/expand-plus.png') no-repeat; margin-top: 5px; right: 10px; top: 4px;width: 20px; height: 20px; }
#content.mittig .expand { display: none; }

#content #inner { position:relative; }
#content #inner .container { position:relative; }
#content #inner .m-b { margin-bottom: 20px }

#details { padding-top: 43px !important; position: absolute; top: 0; bottom: 0; right: 0; left: 250px; z-index: 50; display: block; }

.slideshow .carousel-inner .item img { width:100%; }
.slideshow .carousel-inner-single .item { text-align:center; }

#background { position: fixed; top: 0; bottom: 0; left: 0; right: 0 }
#background .google-maps { position: absolute; top: 0; left: 250px; width: 100%; height: 100%; z-index: 1; display: block; overflow-x: hidden; overflow-y: hidden; }

.horizontal #background .google-maps, .horizontal #details { left: 0; }

#details h1 { font-size: 25px; clear: both; padding-top: 20px }
#details .google-maps { height: 500px; border: 1px solid #ccc }

#exposee { position: fixed; bottom: -50px; right: 25%; margin-right:-180px; z-index: 1000; height: 50px; text-align: center; }

@media (max-width:760px) {
   #exposee { right: 50%; }
}

#exposee #btnExposee { height: 50px; padding: 0 50px; font-size: 18px; text-transform: uppercase; border-top-left-radius: 10px; border-top-right-radius: 10px; border-bottom-left-radius: 0; border-bottom-right-radius: 0; border-color: transparent; }
#exposee .inner { border-width: 1px; border-style: solid; border-top-width: 10px; border-bottom: 0; width: 360px; height: 605px; background-color: #fff; padding: 30px; -webkit-box-shadow: 0 0 20px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0 0 20px 0px rgba(0,0,0,0.3); box-shadow: 0 0 20px 0px rgba(0,0,0,0.3); }
#exposee .inner .form-horizontal .control-label { text-align:left; }
#exposeeForm .msg { display: none; }
#exposee_inline label { line-height:34px; }
#exposee_inline label.require {}
#exposee_inline label.require:after { content:''; position:absolute; top:4px; left:0; font-size:18px; font-family:sans-serif; }
#exposee_inline span.require { display:inline-block; width:15px; height:24px; }
#exposee_inline span.require:after { content:'*'; position:relative; top:4px; left:5px; font-size:18px; font-family:sans-serif; }
#exposee_inline label.require_check:after { content:'*'; position:absolute; top:4px; right:20px; font-size:18px; font-family:sans-serif; }
#exposee label.require {}
#exposee label.require:after { content:'*'; position:absolute; top:4px; left:0; font-size:18px; font-family:sans-serif; }
#exposee label.require_check:after { content:'*'; position:absolute; top:4px; left:0; font-size:18px; font-family:sans-serif; }

.carousel-control.left, .carousel-control.right { background-image: none; }

@media (max-width: 1200px) {
   .container { padding:0; margin:0; width: auto !important; }
}

#FormBuilderForm .btn-own-color{width:100%}
.has-error{border-color:red;}

.cbp-popup-lightbox-img{margin-left:auto;}
.cbp-popup-lightbox-img{margin-right:auto;}

.galerie .cbp-l-caption-title{ font-size:14px; }

#picGridFilters { text-align:left; margin-bottom: 15px }
.cbp-caption-defaultWrap img { border: 1px solid #ccc; max-width: 100%; margin:0 auto;}

/* add additional style for bildergalerie and objekt */
.xBildergalerie .cbp-caption-defaultWrap img,
.xObjekte .cbp-caption-defaultWrap img {aspect-ratio: 40 / 27; object-fit: contain;}

.cbp-caption-zoom .cbp-caption-activeWrap { background-color: rgba(0,0,0,.7); text-align: center }
.cbp-l-caption-title, .cbp-l-caption-desc { text-align: center }

.own-objekte-over .cbp-caption-activeWrap:before { content: ''; height: 100%; display: inline-block; vertical-align: middle; }
.own-objekte-over .cbp-l-caption-body { width: 80%; display: inline-block; vertical-align: middle; }

.own-objekte-unten .cbp-l-grid-work-desc, .own-objekte-info .cbp-l-grid-work-desc {
   background: rgb(204,204,204); /* Old browsers */
   background: -moz-linear-gradient(top,  rgba(255,255,255,1) 20%, rgba(204,204,204,1) 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(240,249,255,1)), color-stop(100%,rgba(204,204,204,1))); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 20%,rgba(204,204,204,1) 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top,  rgba(255,255,255,1) 20%,rgba(204,204,204,1) 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top,  rgba(255,255,255,1) 20%,rgba(204,204,204,1) 100%); /* IE10+ */
   background: linear-gradient(to bottom,  rgba(255,255,255,1) 20%,rgba(204,204,204,1) 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#ccc',GradientType=0 ); /* IE6-8 */
}

.own-objekte-info .cbp-item-wrapper { padding:0px; }
.own-objekte-info .cbp-item-wrapper .cbp-caption-defaultWrap img { border:0px; }
.own-objekte-info .cbp-caption { margin-bottom:0 !important; }
.own-objekte-info .cbp-caption-activeWrap{height:65px !important; }
.own-objekte-info .cbp-l-caption-title { display:flex; height:100%; align-items: center; justify-content:center; }
.own-objekte-info .cbp-l-grid-work-desc { height:247px; overflow:hidden; padding:0; white-space: inherit !important; text-transform:none !important; font-size:13px; padding:0 10px; }
.own-objekte-info .cbp-l-grid-work-desc span { display:flex; height:66px; align-items: center; justify-content:center; margin:5px 0 8px; }
.own-objekte-info .cbp-l-grid-work-desc b { display:inline-block; line-height:22px; max-height:66px; text-align:center; overflow:hidden; font-size:16px; }
.own-objekte-info .object_line { position:relative; }
.own-objekte-info .object_line_inner { display:inline-block !important; position:absolute; top:0; right:0; vertical-align:top; margin:0  !important; }

.own-objekte-unten .cbp-item-wrapper { padding:0px; }
.own-objekte-unten .cbp-item-wrapper .cbp-caption-defaultWrap img { border:0px; }
.own-objekte-unten .cbp-caption-activeWrap { height:65px !important;padding-bottom:10px; /** kurzzeitig padding-top:21px;**/padding-top:12px;  }
.own-objekte-unten .cbp-caption { margin-bottom:0px !important; }
.own-objekte-unten .cbp-l-grid-work-desc { height:64px; padding:10px; white-space: inherit !important; text-transform:none !important; font-size:13px; color:#555; }
.own-objekte-unten .cbp-l-grid-work-desc span { display:flex; height:44px; align-items: center; justify-content:center; }
.own-objekte-unten .cbp-l-grid-work-desc b { display:inline-block; line-height:22px; max-height:44px; text-align:center; overflow:hidden; font-size:16px; }
.own-objekte-unten .cbp-l-caption-body { padding-top:10px; }

.wrapper-sticky { z-index: 100;}

@media (max-width: 767px) {
  .own-objekte-unten .cbp-caption-activeWrap { height:55px !important;padding-top:5px;}
  .own-objekte-info .cbp-caption-activeWrap  { height:55px !important;padding-top:5px;}
   .varias .col-sm-4, .varias .col-sm-6{width:50% !important;float:left}
}

@media (max-width: 475px) {
   .own-objekte-info .cbp-l-grid-work-desc b { font-size:14px; }
   .own-objekte-info .cbp-l-grid-work-desc div { font-size:10px !important; }
}

label.inline-content {
    margin-left: 4%;
    width: 90%;
}

.inline-content {
    display: inline-block;
}

input.inline-content{vertical-align: top;}
.resp #copyleft{display:none !important; }
/** HORI MENU **/


.shadowclass{
    pointer-events: inherit;
}

.notmclass{box-shadow:0px 0px 0px !important}

.close{opacity:1}


.carousel .carousel-caption {text-shadow:0 0 0 transparent !important; top:-55px; text-align:center; width:100%; left:0; right:0; padding-left:2%;  height: auto !important; padding-top: 20px;padding-bottom:20px;bottom:auto;opacity:0;}

.vertikal #sprachen{top:-4px}

.left-arrow, .right-arrow {
   position:fixed;
   width:100px;
   height:100px;
   margin-top:-50px;
   top: 50%;
   z-index:500;
}

.left-arrow { left:0; }
.right-arrow { right:0; }

.left-arrow a,.right-arrow a{
   position:relative;
   display:block;
   width:100px;
   height:100px;
   background-position:center center;
   background-size:100% 100%;
   background-repeat:no-repeat;
}

.left-arrow a {
   background-image:url("../img/icons/obj_b_desk.png");
}
.right-arrow a { background-image:url("../img/icons/obj_f_desk.png"); float:right; }

@media (max-width: 1000px) {
   .left-arrow a,.right-arrow a{
      width:49px;
      height:49px;
   }

   .left-arrow a{
      background-image:url("../img/icons/obj_b_mob.png");
      left:0;
   }
   .right-arrow a{
      right:0;
      background-image:url("../img/icons/obj_f_mob.png");
   }
}

/* Modul ModBildtext */
.bildtext .rahmen { border:1px solid; padding:15px; box-sizing:content-box; }
/* .bildtext .rahmen { border-color: #888888 !important; } */

.carousel-indicators li { box-shadow: 0px 0px 7px 1px rgba(0, 0, 0, 0.2); }
.carousel-control.right { position:absolute; top:3px; bottom:3px; right:3px; z-index:2; }
.carousel-control.left { position:absolute; top:3px; bottom:3px; left:3px; z-index:2; }
.bg_scroll_outer { transform: translateZ(0); }
.bg_scroll_outer.fixed{
   transform: unset;
   z-index: 0;
   -moz-transform: none !important;
}
.bildtext3 {width:33.3%; float:left; }
.bildtext4 { width:25%; float:left; }
.bildtext4_outer_oben .clearfix { display:none; }
.bildtext_inner { margin:0 15px; }
.bildtext_outer { width:50%; float:left; }

@media screen and (max-width: 1000px) {
   .bildtext4outer { width:100%; height:auto !important; }
   .bildtext4 { width:50%; }
   .bildtext4_outer_oben .clearfix { display:block; }
   .bildtext4_outer_unten { clear:both; margin-top:30px; }
}

@media (max-width: 767px) {
   .bildtext3 { width:100% !important; height:auto !important; margin-top:30px; }
   .bildtext3:first-child { margin-top:0; }

   .bildtext4 { width:100% !important; height:auto !important; margin-top:30px; }
   .bildtext4_outer_oben .bildtext4:first-child { margin-top:0; }
   .bildtext4_outer_oben .clearfix { display:none; }
   .bildtext4_outer_unten .bildtext4 { margin-top:30px; }
}

.bildtext6 { width:16.66%; float:left; }
.bildtext8 { width:12.5%; float:left; }

/* 3 / 4 Boxen - 2 Reihen */
@media screen and (min-width:767px) and (max-width: 1000px) {
   .bildtext6 { width:33.3% !important; height:auto !important; margin-top:30px; }
   .bildtext6:nth-child(1) { margin-top:0; }
   .bildtext6:nth-child(2) { margin-top:0; }
   .bildtext6:nth-child(3) { margin-top:0; }
   .bildtext6:nth-child(4) { clear:both; }

   .bildtext8 { width:25% !important; height:auto !important; margin-top:30px; }
   .bildtext8:nth-child(1) { margin-top:0; }
   .bildtext8:nth-child(2) { margin-top:0; }
   .bildtext8:nth-child(3) { margin-top:0; }
   .bildtext8:nth-child(4) { margin-top:0; }
   .bildtext8:nth-child(5) { clear:both; }
}

/* 2 / 2 Boxen - 3 / 4 Reihen */
@media screen and (min-width:500px) and (max-width: 767px) {
   .bildtext6 { width:50% !important; height:auto !important; margin-top:30px; }
   .bildtext6:first-child { margin-top:0; }
   .bildtext6:nth-child(2) { margin-top:0; }
   .bildtext6:nth-child(3) { clear:both; }
   .bildtext6:nth-child(5) { clear:both; }

   .bildtext8 { width:50% !important; height:auto !important; margin-top:30px; }
   .bildtext8:first-child { margin-top:0; }
   .bildtext8:nth-child(2) { margin-top:0; }
   .bildtext8:nth-child(3) { clear:both; }
   .bildtext8:nth-child(5) { clear:both; }
   .bildtext8:nth-child(7) { clear:both; }
}

/* Alle Boxen untereinander */
@media screen and (max-width: 500px) {
   .bildtext6 { width:100% !important; height:auto !important; margin-top:30px; }
   .bildtext6:first-child { margin-top:0; }

   .bildtext8 { width:100% !important; height:auto !important; margin-top:30px; }
   .bildtext8:first-child { margin-top:0; }
}

@media (max-width: 992px) {
   .sameheight .col-md-6 { margin-top:30px; }
   .sameheight .col-md-6:first-child { margin-top:0; }
   .col-md-12 .col-md-6 { margin-top:30px; }
   .col-md-12 .col-md-6:first-child { margin-top:0; }
}

.bg_scroll {
   position:absolute;
   width:100%;
   height:100%;
   background-size:100%;
   transform: translateZ(-10px) scale(1);
   background-position: center center;
}
.bg_scroll.fixed{
   position:absolute;
   width:100%;
   height:100%;
   background-size:100%;
   background-attachment: fixed;
   background-position: center;
   background-repeat: no-repeat;
   background-size: cover;

   transform: unset;
   z-index: -10;
   -moz-transform: none !important;
}

@supports (-webkit-touch-callout: none) {
   .bg_scroll.fixed{
      background-position: center top;
      background-attachment: scroll;
      background-size: auto 100vh;
   }    
}
   
.bg_scroll.zoom_out{
   background-size:100%;
}
.bg_scroll.zoom_out{
   background-size:200%;
}

#cookie_check { position: fixed; bottom: 0; width: 100%; z-index: 20000; background-color: rgba(0, 0, 0, 0.7); min-height:100px; }
#cookie_check .col_single { width: 100%; position: relative; }
#cookie_check .col_left { position:relative; width:50%; float: left; padding-top:20px; padding-left: 40px; }
#cookie_check .cookie_text1 { position: relative; line-height: 30px; color: #ffffff; }
#cookie_check .cookie_text2 { position: relative; line-height: 20px; color: #ffffff; }
#cookie_check a { color:inherit; text-decoration:underline; font-size:inherit; }
#cookie_check .col_right { position:relative; text-align:right; width:50%; float: left; padding-top: 28px; padding-right:28px; min-height:80px; }
#cookie_check .cookie_no { position: relative; display:inline-block; width: 180px; height: 42px; background-image: url(../img/btn_cookie_n.png); cursor: pointer; }
#cookie_check .cookie_yes { position: relative; display:inline-block; width: 180px; height: 42px; background-image: url(../img/btn_cookie_y.png); cursor: pointer; }
@media (max-width: 806px) {
   #cookie_check .col_left { width:100%; padding-left:15px; }
   #cookie_check .col_right { width:100%; text-align:center; padding-right:0; }
}

.agb_check.agb_error * { color:#a94442 !important; }
#FormRegForm .text-danger { text-align:center; color:#a94442 !important; }

.mod_linien1  { background-image:url(../module/ModLinien/img/line1.png); }
.mod_linien2  { background-image:url(../module/ModLinien/img/line2.png); }
.mod_linien3  { background-image:url(../module/ModLinien/img/line3.png); }
.mod_linien4  { background-image:url(../module/ModLinien/img/line4.png); }
.mod_linien5  { background-image:url(../module/ModLinien/img/line5.png); }
.mod_linien6  { background-image:url(../module/ModLinien/img/line6.png); }
.mod_linien7  { background-image:url(../module/ModLinien/img/line7.png); }
.mod_linien8  { background-image:url(../module/ModLinien/img/line8.png); }
.mod_linien9  { background-image:url(../module/ModLinien/img/line9.png); }
.mod_linien10 { background-image:url(../module/ModLinien/img/line10.png); }
.mod_linien11 { background-image:url(../module/ModLinien/img/line11.png); }
.mod_linien12 { background-image:url(../module/ModLinien/img/line12.png); }
.mod_linien13 { background-image:url(../module/ModLinien/img/line13.png); }
.mod_linien14 { background-image:url(../module/ModLinien/img/line14.png); }
.mod_linien15 { background-image:url(../module/ModLinien/img/line15.png); }
.mod_linien16 { background-image:url(../module/ModLinien/img/line16.png); }
.mod_linien17 { background-image:url(../module/ModLinien/img/line17.png); }
.mod_linien18 { background-image:url(../module/ModLinien/img/line18.png); }
.mod_linien19 { background-image:url(../module/ModLinien/img/line19.png); }
.mod_linien20 { background-image:url(../module/ModLinien/img/line20.png); }

.varias:last-child { margin-bottom:0; }

#call_check_wrapper { position:absolute; top:30vh; right:0; width:60px; height:62px; line-height:62px; overflow:hidden; z-index:1000; background-image:url(../img/telefon_btn.png); background-size:287px 62px; transition:all 0.5s; cursor:pointer; }
#call_check_wrapper.hover { width:287px; }
#call_check { position:absolute; top:0; left:0; width:60px; height:62px; line-height:62px;z-index:500;  }
#call_check_wrapper a { font-size:24px; display:inline-block; position:absolute; left:60px; width:227px; line-height:62px; top:0; text-align:center; pointer-events:none; }

.edited p span { line-height:100%; }
/* Effekte - Text Einblenden, Scroll unten oder Wippe - OK */
.effekt_text_einblenden {  }
.effekt_text_einblenden.not_animated { opacity:0; }
.effekt_text_einblenden.einblenden { animation:1.2s running effekt_text_einblenden; }
@keyframes effekt_text_einblenden {
   from { opacity:0; } 
   to  { opacity:1; }
}

/* @keyframes Dauer | Timingfunktion | Verzögerung | Anzahl der Iterationen | Richtung | Füllmodus | Abspielstatus | Name */
.effekt_text_unten { overflow:hidden; position:relative; }
.effekt_text_unten.slide_in .animated { transform: translateY(200px); animation:effekt_scroll_unten_slide_in 1.2s ease forwards; }
.effekt_text_unten.slide_in:nth-child(odd) img { animation-duration: 1.0s; }
@keyframes effekt_scroll_unten_slide_in { to { transform: translateY(0); } }

.effekt_text_wippe { overflow:hidden; position:relative; }
.effekt_text_wippe.flip_in .animated { display:inline-block; position:relative; top:0; backface-visibility:visible!important; animation-duration: 1s; animation-fill-mode: both; animation-name:flip_in_text; }
@keyframes flip_in_text {
   0% { transform:perspective(1000px) rotateX(20deg); opacity:0 }
   0%, 50% { animation-timing-function:ease-in }
   50% { transform:perspective(1000px) rotateX(-10deg) }
   65% { transform:perspective(1000px) rotateX(5deg); opacity:1 }
   80% { transform:perspective(1000px) rotateX(-2.5deg) }
   to { transform:perspective(1000px); }
}

/* Effekte - Images Scroll unten oder Wippe - OK */
.effekt_scroll_einblenden { }
.effekt_scroll_einblenden.not_animated .effekt_inner { opacity:0; }
.effekt_scroll_einblenden.einblenden .effekt_inner { animation:1.2s running effekt_scroll_einblenden; }
@keyframes effekt_scroll_einblenden { 
   from { opacity:0; } 
   to  { opacity:1; }
}

.effekt_scroll_unten { overflow:hidden; }
.effekt_scroll_unten.slide_in .effekt_inner { transform: translateY(200px); animation:1.2s ease 0.3s 1 forwards running effekt_scroll_unten_slide_in; }
.animated_block .effekt_scroll_unten:nth-child(odd) .effekt_inner { animation-duration: 1.0s; }
@keyframes effekt_scroll_unten_slide_in { to { transform: translateY(0); } }

.effekt_scroll_wippe.flip_in .effekt_inner { display:inline-block; position:relative; top:0; backface-visibility:visible!important; animation-duration: 1s; animation-name:effekt_scroll_wippe_flip_in; }
@keyframes effekt_scroll_wippe_flip_in {
   0% { transform:perspective(1000px) rotateX(40deg); opacity:0; }
   0%, 40% { animation-timing-function:ease-in }
   40% { transform:perspective(1000px) rotateX(-20deg); }
   60% { transform:perspective(1000px) rotateX(10deg); opacity:1; }
   80% { transform:perspective(1000px) rotateX(-5deg); }
   to { transform:perspective(1000px); }
}

.effekt_scroll_text { display:inline-block; height:0; }
.effekt_inner { position:relative; text-align:center; }

/* Effekte - Images Zoom oder S/W - OK */
.effekt_hover_zoom img { transition: transform 0.5s ease; }
.effekt_hover_zoom .effekt_inner { overflow:hidden; }
.effekt_hover_zoom img:hover { transform:scale(1.25); line-height:50px; }

.effekt_inner .effekt_scroll_text { position:absolute; display:flex; align-items: center; justify-content:center; left:0; right:0; bottom:0; height:0; max-height:100px; font-weight:bold; text-align:center; color:#ffffff; background-color:#000000; opacity:0;  transition: all 0.5s; pointer-events:none; }
.effekt_inner:hover .effekt_scroll_text { opacity:0.75; height:50%; }

.effekt_hover_sw img { transition: filter 0.5s ease; }
.effekt_hover_sw:hover img { filter: grayscale(100%); }

/* Modul Sitemap */
#sitemap #sitemap_menu { position:relative; padding:20px 0 0 0; display: flex; flex-flow: wrap; }
#sitemap .menu_block { position:relative; width:25%; float:left; box-sizing:border-box; min-width:200px; padding-right:20px; margin-bottom:20px; }
#sitemap .menu_titel { width:100%; font-weight:900; margin-bottom:10px; line-height:25px; }
#sitemap .menu_sub {width:100%; line-height:25px; }
#sitemap #sitemap_footer { position:relative; padding-bottom:20px; }
#sitemap #sitemap_kategorien { position:relative; padding-bottom:20px; }
#sitemap #sitemap_objekte { position:relative; padding-bottom:20px; }
#sitemap hr { border-top:1px dotted #888888; }
#sitemap .sitemap_top { position:relative; height:15px; }

#sitemap .sitemap_title { height:25px; line-height:25px; font-weight:900; margin-bottom:10px; }
#sitemap .footer_sub { display:inline-block; height:30px; line-height:30px; padding-right:20px; box-sizing:border-box; width:25%; min-width:200px; float:left; }
#sitemap .ellipsis { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display:inline-block; position:relative; width:100%; }

/* ********* Multibox ********** */
#multibox_bg { position:fixed; top:0; right:0; bottom:0; left:0; opacity:0; z-index:20000; background-color:#2b2b2b; }
.multibox_padding { padding-right:17px; }
.multibox_open { overflow: hidden !important; }
.multibox_open #page { pointer-events:none; }
.multibox_open #bg_wrapper { pointer-events:none; }

#multibox { position:fixed; height:auto; max-width:90%; border: 1px solid #000000; padding: 13px; background-color: #ffffff; box-sizing:border-box; z-index:20001; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); transition: width, height, top, left 0.3s; }
#multibox.empty_box { border:none; padding:0; }
#multibox #multibox_close { position:absolute; width:36px; height:36px; top:-18px; right:-18px; z-index: 10; cursor:pointer; background-image:url(/img/btn_multibox_close.png); }
#multibox .multibox_inner { position:relative; width:100%; max-height:100%; box-sizing:border-box; overflow-y:auto; background-color:#f0f0f0; }
#multibox h1 { position:relative; height:30px; }
#multibox h2 { position:relative; height:30px; line-height:30px; margin:0 0 20px 0; font-size:20px; }
#multibox .close {  position:absolute; top:0; right:0; }
#multibox_content_wrapper { position:relative; height:100%; padding:14px; }
#multibox.empty_box #multibox_content_wrapper { padding:0; }
#multibox_content { position:relative; line-height:25px; }
#multibox img { max-width:100%; vertical-align:top; }
#multibox .buttonzeile { position:relative; width:100%; margin:20px 0 10px 0; text-align:center; }
#multibox .button_left  { display:inline-block; width:120px; margin-right:5px; text-align:center; background-color:#e0e0e0}
#multibox .button_right { display:inline-block; width:120px; margin-left:5px;  text-align:center; }

/* Cookie-Symbol links unten */
#cookie_fixed { position: fixed; bottom: 10px; left: 10px; width: 60px; height: 60px; line-height: 60px; border-radius: 60px; text-align: center; z-index: 300; cursor:pointer; }
#cookie_fixed_bg { position: relative; display: inline-block; top: 8px; width: 44px; height: 44px; background-image: url(/img/kontakt.png); background-size: 176px 88px; background-position: -132px 0; }

#cookie_popup { background-color: #ffffff; }
#cookie_popup .cookie_header { position: relative; height: 60px; line-height: 60px; background-color: #4b4b4b; color:#ffffff; font-size:16px; }
#cookie_popup .cookie_header_symbol { position: absolute; top: 19px; left: 15px; height: 22px; line-height: 30px; width: 22px; background-image: url(/img/kontakt.png); background-size: 89px 44px; background-position: -66px 22px; }
#cookie_popup .cookie_header_title { position: relative; line-height: 60px; width: 100%; box-sizing: border-box; padding: 0 44px; text-align: center; color: #ffffff; font-size:18px; }
#cookie_popup .cookie_header_close { position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; background-image: url(img/schliessen_x.png); background-size: 40px 40px; background-repeat: no-repeat; }
#cookie_popup #cookie_main { position: relative; padding: 18px; }
#cookie_popup #cookie_lang { position: relative; min-height: 50px; }
#cookie_popup .flagge { display: inline-block; position: reltive; width: 30px; height: 19px; cursor:pointer; }
#cookie_popup .cookie_block { position: relative; }
#cookie_popup .cookie_block_center { text-align:center; margin-top:12px; }
#cookie_popup .cookie_open_close { position: absolute; height: 32px; width: 10px; top: 0; left: 0; cursor:pointer; }
#cookie_popup .cookie_open_close.fa { line-height: 32px; width: 10px; text-align: center; font-size: 20px; }
#cookie_popup .cookie_text { position: relative; height: 32px; width: 100%;-webkit-box-sizing: border-box; box-sizing: border-box; line-height: 32px; padding: 0 32px 0 15px; }
#cookie_popup .cookie_check { position: absolute; height: 32px; width: 21px; top: 0; right: 0; }
#cookie_popup .cookie_open { position: relative; padding-left: 15px; font-size: 12px; line-height: 15px; }
#cookie_popup .cookie_footer { position: relative; height: 60px; line-height: 60px; text-align: center; font-size:18px; cursor:pointer; }
#cookie_popup input[type="checkbox"] { opacity: 0; cursor: pointer; width: 19px; height: 19px; display: inline-block; position: relative; top: 3px; }
#cookie_popup input[type="checkbox"] + span.checkbox { vertical-align:top; display: inline-block; position: relative; top: -5px; }
#cookie_popup input[type="checkbox"] + span.checkbox:before { width: 17px; height: 17px; border: 1px solid #888; background-color: #ffffff; display: inline-block; margin-left: -22px; content: ''; pointer-events: none; }
#cookie_popup input[type="checkbox"]:checked + span.checkbox:after { content: '\2714'; color: #333333; font-size: 20px; font-weight: 900; position: absolute; margin-top: -3px; margin-left: -18px; pointer-events: none; }
#cookie_popup input[type="checkbox"]:disabled + span.checkbox:after { color: #aaaaaa !important; }
#cookie_popup a { text-decoration:none; } 
#cookie_popup .close_title_btn { position: absolute; top: 0; right: 4px; width: 60px; height: 60px; background-image: url("../img/ml_close.png"); background-size: 20px; background-repeat: no-repeat; background-position: center; cursor: pointer;}

.google_cookie { text-align:center; }
.google_cookie span{ cursor:pointer; text-decoration:underline; }

.merklist_btn { position:absolute; top: 10px; right:10px; width:50px; height:50px; z-index:5; cursor:pointer; }
.merklist_btn { background-image:url("../img/ml_off.png"); background-size:50px; }
.merklist_btn.on { background-image:url("../img/ml_on.png"); background-size:50px; }
.merkliste_menu_sprache { width:20px; height:20px; background-image:url("../img/ml.png"); background-size:20px; vertical-align: middle; cursor:pointer; box-sizing: border-box; margin-bottom: 2px; display:inline-block; margin-right:15px; pointer-events: auto;}
.merkliste_menu { width:20px; height:20px; background-image:url("../img/ml.png"); background-size:20px; vertical-align: middle; cursor:pointer; box-sizing: border-box; margin-bottom: 2px;  position:absolute; top:10px; right:15px; z-index: 400}
.merkliste_menu { width:20px; height:20px; background-image:url("../img/ml.png"); background-size:20px; vertical-align: middle; cursor:pointer; box-sizing: border-box; margin-bottom: 2px;  position:absolute; top:10px; right:15px; z-index: 400}

#popup_merkliste .send_button { height:50px; line-height:50px; padding:0 20px; background-color: #efefef; color:#555555; display:block; text-align:center; margin-top:10px; cursor:pointer }
#popup_merkliste .merkliste_item { display:block; padding:5px 20px; }
#popup_merkliste .merkliste_item i { float:right; font-size:18px; cursor:pointer; }
#popup_merkliste .merkliste_item a { display: inline-block; width: calc(100% - 20px); }
#popup_merkliste .merkliste_empty { padding:5px 20px 15px 20px; height:40px; display:block; text-align:center; }
#popup_merkliste .title { height:50px; line-height:50px; padding:0 20px 0 20px; background-color:#555555; color: #ffffff; display:block; margin-bottom:10px; }
#popup_merkliste .close_title_btn { position: absolute; top: 0; right: 2px; width: 50px; height: 50px; background-image: url("../img/ml_close.png"); background-size: 20px; background-repeat: no-repeat; background-position: center; cursor: pointer;}

.video-container {
   position: relative;
   padding-bottom: 56.25%;
   padding-top: 0;
   height: 0;
   overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

#scroll_top_wrapper {  position:fixed; display:none; top:100vh; left:calc(50% - 25px); width:32px; pointer-events: none; z-index:500;}
#scroll_top { position:absolute; cursor:pointer; pointer-events:all; top:-70px; text-decoration:none; width:50px; height:50px; border-radius:50px; background-color:rgba(34, 34, 34, 0.6); z-index:500; background-image: url("../img/arrow_scroll_up.png"); background-repeat:no-repeat ; background-position:center}
@media (max-width: 768px) {
  #scroll_top { top:-120px; }
}

.test_desktop, .test_mobile {height:0; width:0; position:absolute; top: -10px; left: -10px}

@media (max-width: 1024px) {
   .test_desktop {
      display:none;
   }
   .test_mobile {
      display:block;
   }
   .bg_scroll.zoom_in{
      background-size:200%;
   }
   .bg_scroll.zoom_out{
      background-size:400%;
   }
}

@media (min-width: 1025px) {
   .test_desktop {
      display:block;
   }
   .test_mobile {
      display:none;
   }
   .bg_scroll.zoom_in{
      background-size:100%;
   }
   .bg_scroll.zoom_out{
      background-size:200%;
   }
}

.gm-style-mot { color: #ffffff !important; text-align: center !important;}
#shop_menu_wrapper { z-index: 500; text-align:right; pointer-events:none; }
#shop_menu_wrapper li { display:inline-block; pointer-events: auto; }
#header_menu_wrapper {position: relative;}