*{border:0;}
body{padding:0;margin:0;background:url(/dateien/tpl/bg.png) repeat-x right top #59ffd6;font:12px arial,sans-serif;color:#404040;height:100%;}
* html #body{height:100%;width:100%;background:url(/dateien/tpl/bg.png) repeat-x right top #59ffd6;}
a{color:#404040;text-decoration:underline;}
#page{width:767px;min-height:800px;background:#fff;margin:auto;position:relative;}
#header{height:363px;position:relative;}
#header img{float:left;}
#impressum{position:absolute;top:138px;right:3px;text-decoration:none;}
#impressum:hover,#impressum.active{text-decoration:underline;}
#datenschutz{position:absolute;top:138px;right:80px;text-decoration:none;}
#datenschutz:hover,#datenschutz.active{text-decoration:underline;}
#navi{height:44px;width:767px;background:#e4e4e4;}
#navi ul{list-style:none;}
#navi ul li{float:left;}
#navi ul li a{display:block;float:left;padding:10px 15px 0 15px;text-decoration:none;height:34px;font:18px 'Indie Flower',arial,sans-serif;color:#808080;}
#navi ul li a.active{text-decoration:underline;}
#navi ul li:hover{background:#fff;}
#subnavi{float:left;width:180px;}
#subnavi ul{list-style:none;padding-top:10px;}
#subnavi ul li a{display:block;padding:5px 5px 5px 15px;list-style:none;text-decoration:none;}
#subnavi ul li a.active{text-decoration:underline;}
#subnavi ul li a:hover{text-decoration:underline;}
#subnavi ul li ul{list-style:disc;padding-top:5px;font-size:10px;padding-left:40px;}
#subnavi ul li ul li a{padding:0;padding-bottom:5px;}
#content{float:left;width:537px;padding-top:15px;padding-right:30px;}
#content h1{font-weight:bold;font-size:16px;padding-bottom:10px;}
#content h2{font-weight:bold;font-size:14px;padding-bottom:5px;}
#content h3{font-weight:bold;font-size:12px;padding-bottom:5px;}
#content ul,#content ol{padding-left:30px;line-height:18px;padding-bottom:10px;}
#content p{line-height:18px;padding-bottom:10px;}
#content table td{text-align:left;vertical-align:top;font-size:12px;line-height:18px;}
#content table{padding-bottom:10px;}
#tw_verband{position:absolute;bottom:0;left:15px;}
#footer{clear:both;height:52px;}
.likebox {position:absolute;bottom:4px;left:340px;}
#mnavi {display: none;}
#cookie-message {
    font-family: Arial, Helvetica, sans-serif;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    background: rgba(0, 0, 0, .9);
    padding: 15px;
    color: #d2d2d2;
    font-size: 13px;
    transition: all .5s ease;
    -webkit-transition: all .5s ease;
    box-sizing: border-box;
}

#cookie-message .inner-space {
    max-width: 1140px;
    margin: 0 auto;
}

#cookie-message .cookie-wrapp {
    display: flex;
    justify-content:space-between;
}

.cookie-buttons {
    display: flex;
    align-items: center;
    cursor: pointer;
    padding-left: 1rem;
}

.cookie-btn {
    color: #fff;
    background: rgb(254, 178, 0);
    padding: 6px 15px;
    margin-right: 5px;
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    text-decoration: none;
    white-space:nowrap

}

.cookie-btn:hover {
    opacity: .8;
    color: #fff;
}

.cookie-btn-secondary {
    background: rgb(77, 77, 77);
}

#cookie-message.cookie-hidden {
    bottom: -500px!important;
}


@media only screen and (max-width : 768px) {
    #cookie-message .cookie-wrapp {
        display: block;
        padding: 0 1rem;
    }

    .cookie-buttons {
        width: 100%;
        margin-top: 1rem;
        padding-left: 0;
    }
}
@media screen and (max-width: 567px) { 
    
    #page {
        height: auto;
        width: auto;
        margin: 0;
    }
    
    #wrap {
        width: 100%;
        padding: 0 10px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
    }
    
    #navi, #subnavi {
        display: none;
    }
    
    #header {
        width: 100%;
        height: auto;
    }
    
    #impressum {
        display: inline-block;
        top: 5px !important;
    }
    
    #datenschutz {
        display: inline-block;
        top: 5px !important;
    }
    
    #header #logo {
        float: none;
        display: inline-block;
        height: 100px !important;
        width: auto;
        position: relative !important;
    }
    
    #header #headergrafik {
        float: none;
        position: relative !important;
        width: 100%;
    }
    
    #logo {
        z-index: 100;
        position: relative;
        display: block;
        height: 100px !important;
        float: none;
        padding: 0;
        width: 50%;
        background: none;
    }
    
    #logo a {
        display: inline;
    }
    
    #logo img {
        float: none;
        display: block;
        height: 100% !important;
    }

    #text {
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
    }
    
    #shadow {
        display: none;
    }
    
    #content {
        width: 100%;
        height: 100%;
        float: none;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        padding: 10px;
        box-sizing: border-box;
    }

    .logos {
        text-align: center;
    }
    
    #tw_verband {
        position: relative;
        left: 0;
        top: 0;
        right: auto;
        bottom: auto;
    }
    
    .tw_contents img {
        display: block;
        max-width: 100%;
    }
    
    .tw_contents table tr td {
        box-sizing: border-box;
    }
    
    .tw_contents .tmbl-nofloat td.left {
        width: 30%;
        padding-right: 10px;
    }
    
    .tw_contents .tmbl-nofloat td.left img {
        display: block;
        width: 100%;
        margin-right: 10px;   
    }
    
    .tw_contents .tmbr-nofloat td.right {
        width: 30%;
        padding-left: 10px;
    }
    
    .tw_contents .tmbr-nofloat td.right img {
        display: block;
        width: 100%;
        margin-left: 10px;   
    }
    
    .tw_contents .tmbr-float img {
        display: block;
        max-width: 50% !important;
    }
    
    .tw_contents .myForm form {
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
    }
    
    .tw_contents .myForm form label {
        display: block;
        float: none;
        width: 100%;
        height: auto;
        margin: 10px 0 0 0;
    }
    
    .tw_contents .myForm form .eingabe {
        float: none;
        width: 95% !important;
    }
    
    .tw_contents .myForm form input.button {
        margin-left: 0;
    }
    
    .tw_contents .map {
        width: 100%;
    }
    
    .tw_contents .route {
        width: 100%;
    }
    
    .tw_contents .route .quote-hilite label {
        float: none;
    }
    
    .tw_contents .route .quote-hilite .inputbox {
        width: 90%;
    }
    
    .tw_contents .route .quote-hilite {
        width: 100%;
        height: auto;
        border: 0 none;
    }
    
    .tw_contents .route .ziel {
        float: none !important;
        display: block;
        margin-top: 5px;
        width: 100%;
    }
    
     .tw_contents .route .slideBtn {
        position: relative;
    }
    
    .tw_contents .youtube iframe {
        width: 100%;
    }
    
    .likebox {
        float: none;
        padding: 20px 0;
        position: relative !important;
        left: 0;
        top: 0;
        right: auto;
        bottom: auto;
        padding: 20px;
    }
    
    #mnavi {
        display: block;
        width: 26px;
        height: 26px;
        background: url("/dateien/tpl/menu_btn.png") no-repeat left top;
        position: absolute;
        top: 30px;
        right: 30px;
        z-index: 1000;
    }
    
    #mnavi ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    

    #mnavi > ul {
        position: fixed;
        right: -250px;
        top: 0;
        margin: 0;
        padding: 50px 0 0 0;
        z-index: 500;
        width: 250px;
        height: 100%;
        background: #fff;
        -webkit-transition: right 0.6s;
        -moz-transition: right 0.6s;
        -o-transition: right 0.6s;
        transition: right 0.6s;
    }
    
    #mnavi.open > ul {
        right: 0;
        box-shadow: -2px -2px 4px 0 rgba(0, 0, 0, 0.3);
        -webkit-transition: right 0.6s;
        -moz-transition: right 0.6s;
        -o-transition: right 0.6s;
        transition: right 0.6s;
    }
    
    #mnavi.open ul ul a.active,
    #mnavi.open ul ul a:hover {
        background: #9c9c9c;
    }
    
    #mnavi > ul li {
        margin: 0;
        padding: 0;
    }
    
    #mnavi > ul li a {
        text-decoration: none;
        display: block;
        border-bottom: 1px solid #ebebeb;
        -webkit-transition: all 0.3s ease 0s;
        -moz-transition: all 0.3s ease 0s;
        -o-transition: all 0.3s ease 0s;
        transition: all 0.3s ease 0s;
        padding: 10px 20px;
    }

    #mnavi > ul li a:hover,
    #mnavi > ul li a.active {
        text-decoration: none;
        background: #59ffd6;
        color: #fff;
    }
    
    #navclose {
        display: none;
        position: fixed;
        top: 15px;
        right: 15px;
        width: 26px;
        height: 26px;
        background: url("/dateien/tpl/menu_btn.png") no-repeat left bottom;
        z-index: 1500;
    }
} form.kontaktformular .loading_icon { float:right; background:url(/dateien/ajax-loader.gif) no-repeat 1px; height:30px; width:30px; display:none; position:relative; }
form.kontaktformular .done { background: no-repeat 2px; padding-left:20px;font-size:12px; width:70%; margin:20px auto; display:none }
form.kontaktformular { padding:10px; width:360px; background:#e7e7e7; border:1px #c4c4c4 solid;}
form.kontaktformular label { width:110px; height:22px; margin-top:5px; display:block; float:left; }
form.kontaktformular .eingabe { width:248px; height:20px; margin-top:5px; border:1px #c4c4c4 solid; float:left; }
form.kontaktformular .checkbox { margin-top:5px; float:left; }
form.kontaktformular textarea { width:248px; height:98px; border:1px #c4c4c4 solid; margin-top:5px; font-family:arial; font-size:12px; float:left; } 
form.kontaktformular input.button { height: 23px; width: 112px; margin-top:10px;  margin-left: 240px; background:#FFF; border:1px #c4c4c4 solid; }
form.kontaktformular br { clear:both; }
form.kontaktformular textarea {resize:none;}
form.kontaktformular .fields_required_info { color:#888; }
input[type="text"],input[type="password"],textarea { 
    -webkit-appearance:none; /* schatten etc entfernen */ 
    -webkit-border-radius:0; /* runde ecken entfernen */
    -webkit-box-sizing: border-box; /* css-box modell umstellen */
}.gbloading_icon { float:right; background:url(/dateien/ajax-loader.gif) no-repeat 1px; height:30px; width:30px; display:none; }
.gbdone { background: no-repeat 2px; padding-left:20px;font-size:12px; width:70%; margin:20px auto; display:none }
form.gaestebuch{ padding:10px; width:95%; background:#ffffff;}
form.gaestebuch label { width:100px; height:22px; margin-top:5px; display:block; float:left; }
form.gaestebuch .eingabe { width:350px; height:20px; margin-top:5px; border:1px #c4c4c4 solid; float:left; }
form.gaestebuch .checkbox { margin-top:5px; float:left; }
form.gaestebuch textarea { width:248px; height:98px; border:1px #c4c4c4 solid; margin-top:5px; font-family:arial; font-size:12px; float:left; } 
form.gaestebuch input.button { height: 23px; width: 112px; margin-top:10px; margin-left: 0px; background:#FFF; border:1px #c4c4c4 solid; }
form.gaestebuch br { clear:both; }
form.gbeintraege{ padding:10px; width:95%; background:#fff; border:1px #000 solid;}

.gbeintraege{ padding:10px; width:95%; border-bottom:1px #c4c4c4 solid;}
.myFormular{ border:1px solid #c4c4c4; background:#e7e7e7; padding:4px; margin:4px; }.map { position: relative; width: 525px; height: 270px; border:1px solid #000; }

.route { color:#000; position: relative; width:527px; padding-bottom:30px; }

.quote-hilite { display:none; position: relative; width:511px; height:35px; padding:7px; background: #fff; border:1px solid #000; border-top:0px; }

.slideBtn { color:#fff; position:absolute; right:0; background:#000; width:120px; height:20px; vertical-align:center; text-align:center; padding-top:5px; cursor:pointer; }

form { margin: 0; padding: 0; }

form label {cursor: pointer; width:90px; height:22px; margin-top:5px; display:block; float:left; }

.ziel { float:left; width:300px; }

.inputbox { background: none repeat scroll 0 0 #fff; width:290px; border:1px solid #000; }

form button { background: none repeat scroll 0 0 #fff; border:1px solid #000; }

.inputbox:hover, .inputbox:focus { background: none repeat scroll 0 0 #E1EDF7; }