* {
    padding: 0px;
    margin: 0px;
}

body {
    font-family: 'Assistant', sans-serif;
    line-height: 110%;
    color: #333333;
    background-color: #ffffff;
    margin: 0px;
    padding: 0px;
    line-height: 120%;
}

.italic {
    font-style: italic;
}

.highlight {
    color: #324772;
    font-weight: 700;
}

.clear {
    clear: both;
}

.clearMargin {
    clear: both;
    margin-bottom: 25px;
}

p {
    margin-top: 20px;
    line-height: 120%;
    text-align: justify;
}

h1 {
    font-weight: 700;
    line-height: 130%;
    margin-bottom: 5px;
    color: #324772;
    border-bottom: 1px solid #324772;
}

h2 {
    color: #324772;
    padding-bottom: 10px;
}

.h2_line {
    margin-top: 15px;
    color: #324772;
    padding-bottom: 0px;
    border-bottom: 1px solid #324772;
    margin-bottom: 10px;
}

h3 {
    color: #324772;
    margin-bottom: 5px;
    border-bottom: 1px solid #324772;
}

h4 {
    font-size: 1.1em;
    color: #324772;
    padding-top: 0px;
    padding-bottom: 0px;
}

#h4sort {
    font-size: 1.1em;
    font-weight: 700;
    color: #324772;
    padding-top: 15px;
    padding-bottom: 5px;
}

h5,
h6 {
    color: #324772;
}

#adresse {
    font-size: 1em;
}

.noPaddingMargin {
    margin: 0px;
    padding: 0px;
}

iframe {
    width: 100%;
    min-height: 300px;
}

.trenner {
    border-bottom: 1px solid #324772;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

#oeffnungstable {
    width: 100%;
}

#year {
    display: inline;
}


/*---------- MENU ------------------*/

#left {
    float: left;
}

header {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    background-color: #ffffff;
    background: -webkit-linear-gradient(#ffffff, #c1c1c1);
    background: -o-linear-gradient(#ffffff, #c1c1c1);
    background: -moz-linear-gradient(#ffffff, #c1c1c1);
    background: linear-gradient(#ffffff, #c1c1c1);
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    position: fixed;
    top: 0;
    z-index: 99999;
}

#menu {
    display: block;
    padding-left: 10px;
    padding-right: 10px;
}

.menu_padding {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 1em;
}

#menu_responsive {
    display: none;
}

.menu_links {
    display: block;
    padding-top: 5px;
    padding-left: 20px;
    float: left;
    font-weight: 800;
    font-size: 1.3em;
}

.menu_links li {
    float: left;
    list-style: none;
}

.menu_links li a {
    text-decoration: none;
    color: #333333;
}

.menu_links li a:hover {
    color: #324772;
    cursor: pointer;
    border-bottom: 2px solid #324772;
    -webkit-box-shadow: 0 5px 5px -5px #000000;
    -moz-box-shadow: 0 5px 5px -5px #000000;
    box-shadow: 0 5px 5px -5px #000000;
}

.menu_links li a#active {
    color: #324772;
    cursor: pointer;
    border-bottom: 2px solid #324772;
    -webkit-box-shadow: 0 5px 5px -5px #000000;
    -moz-box-shadow: 0 5px 5px -5px #000000;
    box-shadow: 0 5px 5px -5px #000000;
}

.menu_links li a#activeRES {
    color: #324772;
    cursor: pointer;
    border-bottom: 2px solid #324772;
    -webkit-box-shadow: 0 5px 5px -5px #000000;
    -moz-box-shadow: 0 5px 5px -5px #000000;
    box-shadow: 0 5px 5px -5px #000000;
}

#toplogo {
    float: left;
    width: 220px;
}

#menuButton,
#responsiveMenu,
#responsiveMenu ul {
    display: none;
}


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

.main_content {
    margin-top: 115px;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 30px;
    padding-left: 5px;
    padding-right: 5px;
    font-style: justify;
    line-height: normal;
}

.main_content ul {
    list-style: inherit;
    margin: 0px;
    padding-left: 20px;
}

.main_content ul li {
    padding-top: 3px;
}

#infofield {
    float: right;
    background-color: #ffffff;
    margin-top: 15px;
    margin-left: 20px;
    padding: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 270px;
    border: 3px solid #324772;
    border-radius: 5px;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
}

#infofield h2 {
    text-align: center;
    border-bottom: 1px solid #324772;
    margin-bottom: 10px;
}

#infofield ul {
    list-style: inherit;
    margin: 0px;
    padding-left: 20px;
}

#infofield ul li {
    padding-top: 3px;
}

#infofieldoz {
    float: right;
    background-color: #ffffff;
    margin-top: 15px;
    margin-left: 20px;
    padding: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 270px;
    border: 3px solid #324772;
    border-radius: 5px;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
}

#infofieldoz h2 {
    text-align: center;
    border-bottom: 1px solid #324772;
    margin-bottom: 10px;
}

#infofieldoz ul {
    list-style: inherit;
    margin: 0px;
    padding-left: 20px;
}

#infofieldoz ul li {
    padding-top: 3px;
}


#img_container {
    margin-right: 320px;
}

.img_start {
    width: 31.5%;
    max-width: 390px;
    margin-right: 1%;
    margin-bottom: 1%;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
}

#sortliste {
    width: 100%;
    float: left;
    margin-bottom: 20px;
    margin-right: 20px;
}

#sortliste img {
    width: 20%;
}

.t_kontakt {
    border: none;
    line-height: 130%;
    text-align: left;
    margin-top: 25px;
}

.t_kontakt th {
    color: #324772;
    font-size: 1.1em;
    padding-bottom: 5px;
}

.space {
    float: left;
    min-width: 215px;
    margin-right: 25px;
    padding-top: 5px;
}

#team {
    width: 100%;
    text-align: center;
    padding: 0px;
    padding-top: 10px;
    padding-bottom: 20px;
}

#team p {
    margin: 0px;
    padding: 0px;
    padding-top: 5px;
    text-align: center;
}

#team img {
    padding: 0px;
    margin-right: 1%;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
}

#t-left,
#t-right {
    height: 450px;
    width: auto;
}

#t-middle {
    height: 450px;
    width: auto;
}

.slideshow-container_sort {
     box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
    max-height: 450px;
    position: relative;
    margin: auto;
    padding: 0px;
    overflow: hidden;
    background-color: #e0e0e0;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.75);
}

.slideshow-container_sort table {
    border: none;
    width: 100% padding: 0px;
}

.slideshow-container_sort table td {
    text-align: center;
    padding: 0px;
    border: 0px;
    width: 20%;
}

.slide_sortiment_logo {
    margin: auto;
    width: 60%;
    border: 3px solid #e0e0e0;
}

.slide_sortiment {
    box-sizing: border-box;
    cursor: pointer;
    margin-right: 0px;
    margin-left: 0px;
    width: 100%;
    float: left;
    border: 3px solid #e0e0e0;
}

.slide_sortiment:hover {
    border: 3px solid #324772;
}

.slide_sortiment_full {
    box-sizing: border-box;
    margin-right: 0px;
    margin-left: 0px;
}

#s1,
#s2,
#s3,
#s4,
#s5,
#s6,
#s7,
#s8,
#s9,
#s10,
#s11,
#s12,
#s13 {
    display: none;
}

.sort_full img {
    margin: 0px;
    padding: 0px;
    width: 100%;
    max-width: 1500px;
    vertical-align: bottom;
}

.textSort {
    box-sizing: border-box;
    color: #324772;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 1em;
    padding: 1%;
    position: absolute;
    bottom: 0px;
    width: 100%;
    text-align: right;
}

#sortprev,
#sortnext {
    display: none;
}

.back {
    cursor: pointer;
    position: absolute;
    top: 2%;
    width: auto;
    margin-top: 0px;
    padding: 15px;
    color: #ffffff;
    font-weight: bold;
    font-size: 1em;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    background-color: rgba(50, 71, 114, 0.8);
}

.back:hover {
    color: #324772;
    background-color: rgba(255, 255, 255, 0.8);
}


#googleMap {
    border: none;
    width: 100%;
    height: 450px;
}

#map_notLoaded {
    text-align: center;
    font-style: italic;
    
}

/*----------- confirm box ------------------*/

.dialog-ovelay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.50);
    z-index: 999999
}
.dialog-ovelay .dialog {
    width: 400px;
    margin: 100px auto 0;
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0,0,0,.2);
    border-radius: 3px;
    overflow: hidden
}
.dialog-ovelay .dialog header {
    padding: 10px 8px;
    background-color: #f6f7f9;
    border-bottom: 1px solid #e5e5e5
}
.dialog-ovelay .dialog header h3 {
    font-size: 14px;
    margin: 0;
    color: #555;
    display: inline-block
}
.dialog-ovelay .dialog header .fa-close {
    float: right;
    color: #c4c5c7;
    cursor: pointer;
    transition: all .5s ease;
    padding: 0 2px;
    border-radius: 1px    
}
.dialog-ovelay .dialog header .fa-close:hover {
    color: #b9b9b9
}
.dialog-ovelay .dialog header .fa-close:active {
    box-shadow: 0 0 5px #673AB7;
    color: #a2a2a2
}
.dialog-ovelay .dialog .dialog-msg {
    padding: 12px 10px
}
.dialog-ovelay .dialog .dialog-msg p{
    margin: 0;
    font-size: 15px;
    color: #333
}
.dialog-ovelay .dialog footer {
    border-top: 1px solid #e5e5e5;
    padding: 8px 10px
}
.dialog-ovelay .dialog footer .controls {
    direction: rtl
}
.dialog-ovelay .dialog footer .controls .button {
    padding: 5px 15px;
    border-radius: 3px
}
.button {
  cursor: pointer
}
.button-default {
    background-color: rgb(248, 248, 248);
    border: 1px solid rgba(204, 204, 204, 0.5);
    color: #5D5D5D;
}
.button-danger {
    background-color: #f44336;
    border: 1px solid #d32f2f;
    color: #f5f5f5
}
.link {
  padding: 5px 10px;
  cursor: pointer
}


/*----------- footer ------------------*/

footer {
    clear: both;
    height: 9em;
    margin-top: 0px;
    margin-left: 10px;
    margin-right: 10px;
    padding-top: 0px;
    padding-bottom: 5px;
    border-top: 3px solid #324772;
}

footer {
    font-size: 0.7em;
}

#f_sitemap {
    width: 120px;
    float: left;
    margin-top: 5px;
    padding-top: 0px;
}

.footer_links {
    margin: 0px;
    padding-left: 5px;
}

.footer_links li {
    list-style: none;
}

.footer_links li a,
.f_link {
    
    white-space: nowrap;
    color: #333333;
}

.footer_links li a:hover,
.f_link:hover {
    color: #324772;
}

#f_kontakt {
    width: 160px;
    margin: 5px;
    float: right;
    text-align: right;
    padding-right: 0px;
}

#f_impressum {
    height: auto;
    margin-top: 5px;
    margin-bottom: 0px;
    text-align: center;
}

#footerlogo {
    width: 150px;
}


/*------ Responsive Elements --------*/

@media only screen and (max-width: 1400px) {
    #t-left,
    #t-right {
        width: 22%;
        height: auto;
    }
    #t-middle {
        width: 49.5%;
        height: auto;
    }
}

@media only screen and (max-width: 920px) {
    h1 {
        font-size: 1.6em;
    }
    h2 {
        font-size: 1.4em;
    }
    .main_content {
        margin-top: 90px;
    }
    #toplogo {
        width: 150px;
    }
    .menu_padding {
        padding-left: 10px;
        padding-right: 10px;
    }
    #menuButton,
    #responsiveMenu {
        display: none;
    }
    .menu_links {
        display: block;
        padding-top: 0px;
        padding-left: 5px;
        float: left;
        font-weight: 600;
        font-size: 1.1em;
    }
    #img_container {
        margin-right: 0px;
        clear: both;
        width: 100%;
        display: inline-block;
    }
}

@media only screen and (max-width: 750px) {
    .menu_links {
        display: none;
    }
    #toplogo {
        float: none;
        padding-bottom: 5px;
    }
    #responsiveMenu {
        width: 97%;
        display: none;
    }
    header {
        padding-bottom: 0px;
        margin-bottom: 0px;
        padding-right: 0px;
    }
    #responsiveMenu ul {
        display: block;
        width: 100%;
        margin-top: 0px;
        margin-bottom: 0px;
        margin-left: 0px;
        padding-left: 0px;
        opacity: 0.8;
        width: 100%;
        text-align: right;
        font-weight: 400;
        font-size: 1.3em;
    }
    #responsiveMenu ul li {
        clear: both;
        list-style: none;
        border-bottom: solid 1px #707070;
        padding-top: 7px;
        padding-bottom: 7px;
    }
    #responsiveMenu ul li:first-child {
        border-top: solid 2px #324772;
    }
    .res_menu_links li a {
        text-decoration: none;
        color: #333333;
    }
    .res_menu_links li a:hover {
        color: #324772;
        cursor: pointer;
        border-bottom: 2px solid #324772;
        -webkit-box-shadow: 0 5px 5px -5px #000000;
        -moz-box-shadow: 0 5px 5px -5px #000000;
        box-shadow: 0 5px 5px -5px #000000;
    }
    .res_menu_links li a#active {
        color: #324772;
        cursor: pointer;
        border-bottom: 2px solid #324772;
        -webkit-box-shadow: 0 5px 5px -5px #000000;
        -moz-box-shadow: 0 5px 5px -5px #000000;
        box-shadow: 0 5px 5px -5px #000000;
    }
    #menuButton {
        display: block;
    }
    #menuButton {
        margin-right: 20px;
        position: absolute;
        right: 2%;
        top: 0%;
        padding: 0px;
        float: right;
        font-weight: 400;
        font-size: 1.3em;

        text-decoration: none;
        color: #333333;
    }
    #menuButton:hover {
        color: #324772;
        cursor: pointer;
        border-bottom: 2px solid #324772;
        -webkit-box-shadow: 0 5px 5px -5px #000000;
        -moz-box-shadow: 0 5px 5px -5px #000000;
        box-shadow: 0 5px 5px -5px #000000;
    }
    .back:hover {
        color: #ffffff;
        background-color: rgba(50, 71, 114, 0.8);
    }
    .slide_sortiment {
        border: 0px solid #e0e0e0;
    }
    
    .slide_sortiment:hover {
        border: 0px solid #e0e0e0;
    }
  
}

@media only screen and (max-width: 500px) {
    #infofield {
        float: none;
        width: auto;
        margin-left: 0;
        margin-right: 0;
    }
    
     #infofieldoz {
        float: none;
        width: auto;
        margin-left: 0;
        margin-right: 0;
    }
    
    .img_start {
        width: 100%;
        max-width: none;
        margin-bottom: 4%;
    }
    .back {
        padding: 5px;
        font-size: 0.75em;
    }
      .textSort {
        font-size: 0.8em;
    }
}

@media only screen and (max-width: 450px) {
    h1 {
        font-size: 1.3em;
    }
    h2 {
        font-size: 1.2em;
    }
    #toplogo {
        width: 40%;
    }
    #footerlogo {
        width: 40%;
    }
    #f_sitemap {
        display: none;
    }
    #f_impressum {
        text-align: left;
    }
}
