/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/open-sans-v18-latin-regular.eot'); /* IE9 Compat Modes */
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
    url('../fonts/open-sans-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/open-sans-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
    url('../fonts/open-sans-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/open-sans-v18-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/open-sans-v18-latin-700.eot'); /* IE9 Compat Modes */
    src: local('Open Sans Bold'), local('OpenSans-Bold'),
    url('../fonts/open-sans-v18-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/open-sans-v18-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/open-sans-v18-latin-700.woff') format('woff'), /* Modern Browsers */
    url('../fonts/open-sans-v18-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/open-sans-v18-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html, body {
    font-family: "Open Sans", sans-serif;
    font-size: 1em;
    margin: 0;
    padding: 0;
    border: none;
    background: #ECECEC;
}


.container {
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

footer {
    background: #30343F;
}

#main {
    margin-top: 75px;
}

#filter {
    background: #fff;
    padding: 20px 20px;
    margin-bottom: 20px;
    display: flex;
    justify-content: flex-start;
}
#filter label {
    font-size: 1rem;
    font-weight: bold;
    margin:0 0 5px 0;
}

#filter select {
    padding: 10px;
    margin:0 0 20px 0;
    width: 100%;
    border: 1px solid #333333;
    font-size:1rem;
}

button {
    background: #237C42;
    font-size:1rem;
    color: #fff;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
}

#content {
    background: #fff;
    padding: 20px 20px;
    margin-bottom: 20px;
    width: 100%;
}

.accordion {
    background-color: #ececec;
    position: relative;
    color: #000;
    cursor: pointer;
    padding: 10px 20px;
    margin-top: 5px;
    font-size: 1.2rem;
    width: 100%;
    transition: 0.4s;
}
#content .active::after {
    content: '-';
    font-size: 2rem;
    font-weight: bold;
    position: absolute;
    right: 10px;
    top: 2px;
    transition: 0.4s;
}

.accordion::after {
    content: '+';
    font-size: 2rem;
    font-weight: bold;
    position: absolute;
    right: 10px;
    top: 2px;
    transition: 0.4s;
}

.active, .accordion:hover {
    background-color: #237C42;
    color:#fff;
}
.alleauf{
	display: flow-root;
	cursor: pointer;
	font-size: 2rem;
    font-weight: bold;
    text-align:right;
}
.panel {
    padding: 0 20px 20px 20px;
    background-color: #F9F4DE;
    display: block;
    overflow: hidden;
    transition: 0.4s;
}
.hide {
    display: none;
}

dl {
    display: block;
    padding: 10px 0;
}
dt {
    width: 100%;
    padding-bottom: 5px;
    font-weight: bold;
}
dd {
    width: 100%;
    padding-bottom: 20px;
}
.hov-link, .karte-link {
    display: inline-block;
    background:#237C42;
    padding: 10px 20px;
    margin-right: 20px;
    color: #fff;
    text-decoration: none;
}
table {
    width: 100%;
    margin: 10px 0;
}
.table-div {
    width: 100%;
    overflow: auto;
}
th, td {
    text-align: left;
    padding: 10px 5px;
}
th {
    background-color:#ececec;
}
tr:nth-child(even) {
    background-color: #fff;
}
tr:nth-child(odd) {
    background-color: #fcf9ed;
}
#map {
    height: 500px;
    width: 100%;
    margin:30px 0;
}
.footer-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
}
footer ul {
    list-style: none;
}
footer li {
    padding: 10px 0;
    text-align: center;
}
footer ul a {
    color: #fff;
    text-decoration: none;
}
#footer-logo {
    width: 300px;
}
.copyright {
    display: flex;
    justify-content: space-between;
    color: #fff;
    padding: 20px;
    text-align: center;
}
footer hr {
    border: none;
    border-top:1px solid #cccccc;
}
.copyright a{
    color: #fff;
}
@media only screen and (min-width: 768px) {
    .container {
        position: relative;
        width: 100%;
        margin: 0 auto;
        flex-direction: row;
        display: block;
    }

    #filter label {
        margin:0 10px 0 0;
    }
    #filter select {
        margin:0 10px 0 0;
        width: 200px;
    }
    dl {
        display: flex;
        justify-content: flex-start;
        flex-wrap:wrap;
        padding: 10px 0;
    }
    dt {
        width: 20%;
        padding-bottom: 20px;
    }
    dd {
        width: 80%;
        padding-bottom: 20px;
    }
    .footer-info {
        justify-content: space-around;
        display: flex;
    }
    footer li {
        text-align: left;
    }
    .copyright {
        padding: 20px 0;
        text-align: left;
        justify-content: space-around;
        display: flex;
    }
}
@media only screen and (min-width: 1024px) {
    #main {
        margin-top: 150px;
    }
    #content {
        padding: 20px 50px;
    }
    #filter {
        padding: 20px 50px;
    }

    #filter select {
        margin:0 40px 0 0;
    }
}
@media only screen and (min-width: 1200px) {
    .container {
        position: relative;
        width: 1200px;
        margin: 0 auto;
    }
    .footer-info {
        justify-content: space-between;
    }
    .copyright {
        justify-content: space-between;
    }
    #filter label {
        font-size: 1.5rem;
    }
    #filter select {
        width: 300px;
    }

}

li {
	margin-left: 2em;
	line-height: 1.8em;
}
