/**
 * Globale CSS-Definitionen
 *
 * (c) www.lemontree.at
 *
 * @author Gerhard Buchecker <gbuchecker@lemontree.at>
 *
 *********************************************************************************/

/*--------------------------------------------------------------------------------*/
/* Globale Definitionen */

body {
    margin: 0;
    padding: 0;
    text-align: center;
}
body.inline { /* gilt fuer Seiten, die in der Floatbox geoeffnet werden*/
}

input, select, textarea {
    border: 1px solid #cccccc;
}
input[type=submit],
input[type=button],
input[type=reset],
button {
    min-width: 120px;
    margin-top: 0;
    /* padding: 5px 20px; */
    border-radius: 5px;
    box-shadow: 2px 2px 5px #cccccc;
}
input[type=submit]:hover,
input[type=button]:hover,
button:hover {
    opacity: 0.8;
}
input[type=reset],
input.reset {
    border: 1px solid #999999;
    color: #72827F;
    /* padding: 5px 20px; */
}

img {
    border: none;
}

img.noborder {
    border: none;
}

img.left, div.left {
    margin-right: 5px;
    float: left;
}

img.right, div.right {
    margin-left: 5px;
    float: right;
}

img.forward {
    border: none;
    margin: 0 3px 3px 3px;
}

a.mehr {
    white-space: nowrap;
}

a.forward {
    background-image: none;
}
a.forward::before {
    content: " \00BB  ";
}

span.forward {
    background-image: url(../../images/icons/forward.gif);
    background-repeat: no-repeat;
    background-position: 0 center;
    display: inline;
    padding-right: 20px;
}
a.back {
    background-image: none;
}
a.back::before {
    content: " \00AB  ";
}
span.back {
    background-image: url(../../images/icons/back.gif);
    background-repeat: no-repeat;
    background-position: 0 center;
    display: inline;
    padding-right: 20px;
}
a.top {
    /* background-image: url(../../images/icons/up.gif);
    background-repeat: no-repeat;
    background-position: 0 center;
    padding: 0 0 0 15px; */
    background-image: none;
    background-color: #eeeeee;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 20px;
    position: fixed;
    bottom: 120px;
    right: 0;
    margin-right: 60px;
    /* margin-left: -20px; */ /* halbe Breite zum Zentrieren */
    z-index: 1000;
    box-shadow: 0 3px 9px #666666;
    display: none;
    text-align: center;
    text-decoration: none !important;
    font-size: 14px;
}
a.top::before {
    /* content: "^"; */
}
span.top {
    background-image: url(../../images/icons/up.gif);
    background-repeat: no-repeat;
    background-position: 0 center;
    display: inline;
    padding-right: 20px;
}

.clear {
    clear: both;
}
.float_left {
    float: left !important;
}
.float_right {
    float: right !important;
}
.align_left {
    text-align: left !important;
}
.align_right {
    text-align: right !important;
}
.align_center, .center {
    text-align: center !important;
}

.formsc { /* SpamCheck fuer Formulare */
    display: none;
}
.summary, .wcag_info { /* versteckte Zusammenfassungen und Infotexte fuer Screenreader */
    height: 0;
    overflow: hidden;
}

input.securitycode {
    text-transform: uppercase;
    height: 22px;
    width: 83px !important;
    font-size: 18px;
}

.pointer {
    cursor: pointer;
}
.off {
    display: none;
}

td, th {
    vertical-align: top;
}
td *:first-child, th *:first-child {
    margin-top: 0;
}

table.std td {
    padding: 0 10px 0 0;
}

/* Sprungmarke zum Inhalt und zum Menue */
a.link_inhalt {
    position: absolute;
    left: 25px;
    top: -100px;
    background-color: #ffffff;
    z-index: 1000;
    padding: 5px;
}
a.link_inhalt:focus {
    top: 18px;
}
a.link_nav {
    position: absolute;
    left: 25px;
    top: -100px;
    background-color: #ffffff;
    z-index: 1000;
    padding: 5px;
}
a.link_nav:focus {
    top: 18px;
}

/* nur auf Smartphones anzeigen */
.visibility_7 {
    display: none;
}
/* auf Smartphones verbergen */
.visibility_8 {
    display: block;
}

/*--------------------------------------------------------------------------------*/

img {
    border: none;
}

a,
a:hover {
    text-decoration: none;
    color: inherit;
}
a.show_menu {
    display: none;
    padding: 0;
    background-image: url(../../images/hamburger.png);
    background-repeat: no-repeat;
    background-position: 0 center;
    z-index: 2000;
    line-height: 16px;
    text-align: left;
    position: absolute;
    right: 3%;
    top: 10%;
    width: 27px;
    height: 16px;
    overflow: hidden;
}
a.show_menu:hover, a.show_menu:active {
    text-decoration: none;
}
p {
    padding: 0;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
    line-height: 1.2em;
}
h1 {
    font-size: 5em;
}
h2 {
    font-size: 2em;
}
h3 {
    font-size: 1.2em;
}

/*--------------------------------------------------------------------------------*/
/* Layout */

.body_wrapper {
    width: 100%;
    min-height: 100%;
    position: absolute;
    z-index: 0;
}

.main_wrapper {
    margin: 0 auto 0 auto;
    width: 100%;
    text-align: left;
    position: relative;
    z-index: 1;
}

.header_wrapper {
    z-index: 1000;
    width: 100%;
    background-color: #ffffff;
    text-align: left;
}

.div_header {
    height: auto;
    position: relative;
    top: 0;
    margin: 0 auto;
}
.div_header .logo {
    display: inline-block;
    padding: 0;
    margin: 0;
    position: absolute;
    left: 1%;
    top: 2%;
}

.content_wrapper {
    padding: 0;
}
.content_wrapper img {
    max-width: 100%;
    height: auto;
}

.div_links {
}
.div_mitte {
    margin: 0;
    padding: 0 0 0 0;
    float: left;
    width: 100%;
}
.div_rechts {
}

.footer_wrapper {
    z-index: 1000;
    width: 100%;
    text-align: left;
    min-height: 90px;
}
.div_footer {
    clear: both;
    margin: 0 auto;
    padding: 29px 40px 20px 40px;
    position: relative;
    color: #ffffff;
}

/*--------------------------------------------------------------------------------*/
/* Elemente des Headers */

.div_header img {
    display: block;
    width: 100%;
    height: auto;
}
.div_header .logo a {
    display: inline-block;
    box-shadow: 0 0 20px #FFFFFF;
}
.div_header .slogan {
    position: absolute;
    right: 3%;
    bottom: 4%;
}

/*--------------------------------------------------------------------------------*/
/* Elemente des Footers */

.div_footer .copyright {
    width: auto;
    display: inline;
    float: left;
    word-break: break-word;
}

.div_footer .producer {
    /* float: right; */
    opacity: 0.5;
    padding: 1em 0 0 0;
}

/*--------------------------------------------------------------------------------*/
/* Menues */

/* komplettes Menue 01 */

.nav_01 {
    margin: 0 auto;
    padding: 0;
    text-align: left;
    position: absolute;
    top: 58px;
    right: 40px;
    width: 80%;
    text-align: right;
    display: inline-block;
    font-weight: bold;
	color: #555555;
}
.nav_01 ul {
    background-image: none;
    margin: 0;
    padding: 0;
    text-indent: 0;
}
.nav_01 ul li {
    display: inline-block;
    background-image: none;
    padding: 0;
    list-style-type: none;
}


.nav_01 li.ebene1 {
    margin: 0 0 0 25px;
    padding: 0;
}
.nav_01 li.ebene1:first-child {
    margin: 0;
}

.nav_01 li a {
    margin: 0;
    padding: 0;
    display: inline-block;
    text-decoration: none;
}
.nav_01 li a:hover {
    text-decoration: none;
}
.nav_01 li.ebene1 a.ebene1 {
    padding-top: 3px;
    padding-bottom: 1px;
}

.nav_01 li.ebene1 a.aktiv {
    text-decoration: none;
}
.nav_01 li.ebene1:hover a.ebene1,
.nav_01 li.ebene1 a:hover {
    text-decoration: none;
}

.nav_01 ul.ebene2 {
    margin: 0;
    padding: 8px 0 0 0;
    display: none;
}
.nav_01 li.ebene1:hover ul.ebene2,
.nav_01 li.ebene1.aktiv ul.ebene2 {
    display: block;
    position: absolute;
    right: 0;
    background-color: #ffffff;
}
/*.nav_01 ul.ebene2 li.ebene2 {
    margin: 0;
    padding: 0;
}
.nav_01 ul.ebene2 li.ebene2 a.ebene2 {
    display: none;
}*/
.nav_01 li.ebene2 {
    background-image: none;
    padding: 0 0 0 8px;
}
.nav_01 li a.ebene2 {
    padding: 2px 0 2px 0;
    font-size: 80%;
}

.nav_01 ul.ebene3 {
    padding: 0;
    display: none;
}
.nav_01 li.ebene2.aktiv ul.ebene3 {
    display: block;
}
.nav_01 li.ebene3 {
    background-image: none;
}
.nav_01 li a.ebene3 {
    padding: 2px 0 2px 23px;
    background-image: none;
}
.nav_01 li.ebene3 a.aktiv, .nav_01 li.ebene3 a:hover, .nav_01 li.ebene3 a.visted:hover {
    color: #A11013;
    background-image: none;
}


/* Meta Menue */
.nav_02 {
    margin: 0;
    padding: 0;
    float: right;
}
.nav_02 ul {
    background-image: none;
    margin: 0;
    padding: 0;
    text-indent: 0;
    display: inline-block;
}
.nav_02 ul li {
    /* float: left; */
    display: inline-block;
    background-image: none;
    padding: 0 0 0 0;
    list-style-type: none;
}
.nav_02 ul li a {
    display: inline-block;
    /* padding: 0 10px 0 0; */
    margin: 0 10px 0 0;
    /* border-right: 1px solid; */
    text-decoration: none;
    color: inherit;
}
.nav_02 ul li a:hover {
    text-decoration: underline;
}
.nav_02 ul li a.last {
    border: none;
    margin: 0;
    padding: 0;
}


/* Footer Menue */
.nav_footer {
    position: relative;
    margin: 0;
    padding: 10px 0 10px 0;
    clear: both;
    background-color: #F1EEE6;
}
.nav_footer ul {
    text-indent: 0;
    margin: 0 auto;
    padding: 0;
    width: 860px;
    clear: both;
}

.nav_footer ul li.ebene1 {
    float: left;
    list-style-type: none;
    text-align: left;
    margin: 0 10px;
}

.nav_footer ul.ebene2 {
    padding: 10px 0 0 0;
    width: auto;
}
.nav_footer ul li.ebene2 {
    list-style-type: none;
    text-align: left;
    margin: 0;
    padding: 0;
}

.nav_footer ul li a {
    padding: 0;
    font-weight: normal;
    text-decoration: none;
    font-size: 80%;
    line-height: 1.2em;
    color: #72827F;
}
.nav_footer ul li a:hover, .nav_footer ul li a:visited.hover {
    text-decoration: underline;
}

/*--------------------------------------------------------------------------------*/

.div_text {
    width: inherit;
    padding: 0;
    min-height: 300px;
    word-wrap: break-word;
}
.div_text_home {
    /*padding: 20px 0 0 0;*/
}
.div_text a {
    text-decoration: underline;
}
.div_text a:hover {
    text-decoration: underline;
}
.div_text_inline { /* gilt fuer Seiten, die in der Floatbox geoeffnet werden*/
    background-color: rgba(255, 255, 255, 0.5);
    text-align: left;
    padding: 10px;
}
.div_text img {
    /* box-shadow: 5px 5px 15px #666666; */
}

.teaser {
    margin-bottom: 5px;
}

.kurztext {
    font-style:italic;
}

#divBilderleiste {
    width: 220px;
    float: right;
    text-align: left;
    padding: 0 0 0 10px;
}

#divBilderleiste img {
    margin-bottom: 10px;
}

.bildtext {
    padding: 5px 0 15px 0;
    /*font-style:italic;*/
    font-size: 80%;
}

#divLinkBeitrag { /* Link auf einen anderen Menuebeitrag am Ende des Textes */
    margin-top: 10px;
}

/*--------------------------------------------------------------------------------*/
/* Funktionsleiste */

.div_funktionsleiste {
    margin: 0;
    padding: 0;
    text-align: right;
    height: 20px;
}

.div_funktionsleiste img {
    margin: 0 4px 0 0;
}

/*--------------------------------------------------------------------------------*/
/* Definitionen fuer die Navigationsleiste */

div.navigationbar {
    margin: 0 0 10px 0;
    white-space: nowrap;
    background-color: #cccccc;
    padding: 3px 5px 3px 5px;
}

/* extra div fuer neue Zeile mit der Ausgabe der Links fuer das Blaettern (fuer set break = true) */
div.navigationbar div.navigationbar_links {
    margin: 1px 0 0 0;
    padding: 2px 0 3px 0;
    text-align: center;
}

/* Formatierung der Links in der Leiste */
div.navigationbar a {
    padding: 2px 4px 2px 4px;
    text-decoration: none;
    color: #ffffff;
}

div.navigationbar a:hover {
}

/* Formatierung der nicht verlinkten Texte in der Leiste */
div.navigationbar span {
    padding: 2px 4px 2px 4px;
}
div.navigationbar span.hits {
    padding-right: 10px;
}
div.navigationbar span.minus {
    padding: 2px 0;
}

/* Formatierung der aktuellen Seite in der Leiste */
div.navigationbar span.navigationbar_aktuelle_seite {
    padding: 2px 4px 2px 4px;
    background-color: #cccccc;
    color: red;
}

/* spezielle Auszeichnung */
div.navigationbar.reverse {
    background-color: #ffffff;
    color: #116E95;
}
div.navigationbar.reverse a {
    color: #116E95;
}
div.navigationbar.reverse a:hover {
    background-color: #116E95;
    color: #ffffff;
    text-decoration: none;
}
div.navigationbar.reverse span.navigationbar_aktuelle_seite {
    background-color: #116E95;
    color: #ffffff;
    text-decoration: none;
}

div.navigationbar.top {
    border-bottom: 1px dotted #116E95;
}
div.navigationbar.bottom {
    border-top: 1px dotted #116E95;
}

/*--------------------------------------------------------------------------------*/
/* Bloecke mit Text, Bild oder Include */

.content_wrapper .box_wrapper {
    clear: both;
    margin: 0;
    padding: 0 0 0 0;
    width: 100%;
    overflow: hidden;
}
.div_header .box_wrapper {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}
.div_header .box_wrapper .box {
    position: absolute;
    top: 7px;
    margin: 0;
    border-radius: 25px;
    box-shadow: 0 0 20px 3px #ffffff;
    background: rgba(255, 255, 255, 1.0);
}

div.box {
    margin: 0;
    padding: 0;
    text-align: left;
    width: auto;
    border:none;
    float: left;
    /*background: rgba(255, 255, 255, 0.6);*/
}

div.box_bezeichnung {
    display: block;
    margin: 0;
    padding: 10px;
    text-align: inherit;
    font-weight: bold;
}

div.box_content {
    padding: 10px;
}
div.box_content *:first-child {
    margin-top: 0;
}
div.box_content * {
    margin-bottom: 0;
}
div.box_content img {
    /* box-shadow: 5px 5px 10px #111111; */
    margin-bottom: 3px;
}
div.box_include {
    padding: 10px;
}

div.box a.box_content, div.box a.box_content:hover {
    text-decoration: none;
}

div.box_image {
    padding: 10px;
}

div.box_list {
    padding: 10px;
}

div.box a {
    text-decoration: none;
}

div.box a:hover, div.box a:visited.hover {
    text-decoration: none;
}
div.box img {
    max-width: 100%;
    width: auto;
    height: auto;
}

/* Variationen */
div.box.ohne_rahmen {
    border: none;
}
div.box.ohne_rahmen div.box_bezeichnung {
    border: none;
}

div.box.box_1col {
    width: 100%;
    min-width: 250px;
    text-align: left;
}
div.box.box_2col {
    width: 48%;
    min-width: 250px;
    text-align: left;
}
div.box.box_3col {
    width: 31.3%;
    min-width: 250px;
    text-align: left;
}
div.box.box_4col {
    width: 23%;
    min-width: 250px;
    text-align: left;
}
div.box.box_5col {
    width: 18%;
    min-width: 250px;
    text-align: left;
}

div.box.box_l {
    text-align: left;
}
div.box.box_c {
    text-align: center;
}
div.box.box_r {
    text-align: right;
}

/*--------------------------------------------------------------------------------*/
/* Newsletter-Box */

.newsletterbox {
    padding: 5px;
}
.newsletterbox #fieldEmail {
    width: 200px;
}
.newsletterbox div {
    padding: 5px 0 0 0;
    position: relative;
}
.newsletterbox .link_unsubscribe {
    position: relative;
    top: 4px;
}
.newsletterbox .button_subscribe {
    position: absolute;
    right: 0;
}

/*--------------------------------------------------------------------------------*/
/* Breadcrumbmenue */

.div_breadcrumb {
    margin: 0;
    padding: 0 0 0 253px;
    text-align: left;
    color: #999999;
    height: 20px;
    line-height: 40px;
    font-size: 12px;
    overflow: hidden;
    font-family: Arial, Helvetica, sans-serif;
    background-color: #ffffff;
}

.div_breadcrumb a {
    color: #929292;
    text-decoration: none;
    background-color: transparent;
}

.div_breadcrumb a:hover, a:visited.hover {
    color: #929292;
    text-decoration: underline;
    background-color: transparent;
}

/*--------------------------------------------------------------------------------*/
/* Meldungsboxen */

.messagebox {
    padding: 5px;
    border: 1px solid #cccccc;
    background-color: #ffffff;
    box-shadow: 3px 3px 5px #999999;
}

.messagebox {
    padding:5px;
    border:1px solid #cccccc;
    background-color: #ffffff;
    margin-bottom: 20px;
    box-shadow: 3px 3px 5px #999999;
}

.messagebox div, .messagebox div.li {
    margin: 0;
    padding: 0;
}

.messagebox_error {
    padding:5px;
    border:1px solid #FC0522;
    background-color: #ffffff;
    color: #FC0522;
    margin-bottom: 20px;
    box-shadow: 3px 3px 5px #999999;
}

.messagebox_error div, .messagebox_error div.li {
    margin: 0 0 0 0;
    color: #FC0522;
    text-indent: -9px;
    margin-left: 9px;
}

.messagebox_error a {
    color: #FC0522;
    text-decoration: underline;
}

.messagebox button.close,
.messagebox_error button.close {
    float: right;
    margin: 0 0 5px 5px;
    padding: 0;
    border: none;
    width: 20px;
    height: 20px;
    background-image: url(../../images/close_grey.png);
    background-size: 100% auto;
    background-color: transparent;
    min-width: auto;
}
.messagebox_error button.close {
    background-image: url(../../images/close_red.png);
}

.messagebox_coockie {
    padding:5px;
    border:1px solid #cccccc;
    background-color: #eeeeee;
    margin-bottom: 20px;
    box-shadow: 3px 3px 5px #999999;
}

.messagebox_coockie div,
.messagebox_coockie div.li {
    margin: 0;
    padding: 0;
}
.messagebox_coockie button.ok {
    float: right;
    margin: 0 0 5px 5px;
    padding: 0;
    border: none;
    width: 20px;
    height: 20px;
    background-image: url(../../images/close_grey.png);
    background-size: 100% auto;
}

.message_begin, .message_end {
    display: none;
}

/*--------------------------------------------------------------------------------*/
/* Formulare und Tabellen */

table.formular {
    border-spacing: 0;
    padding: 0;
}
table.formular td {
    padding: 2px 2px 2px 0;
}
table.formular td.bezeichnung {
    vertical-align: top;
    padding: 4px 2px 2px 0;
    width: 50px;
}
table.formular input[type=text], table.formular textarea {
    width: 250px;
}

table.std td {
    padding: 0 10px 0 0;
}


/* Webforms allgemein */
.webform .fehler {
    color: #FC0522;
}
.webform .label {
    min-width: 170px;
}
.webform input[type=text] {
    width: 350px;
}
.webform input {
    font-size: 100%;
}
.webform input[type=text],
.webform textarea,
.webform select {
    font-size: 100%;
    padding: 5px 2px;
}
.webform textarea {
    width: 98%;
}
.webform input[type=submit],
.webform input[type=button],
.webform input[type=reset],
.webform button {
    min-width: 80px;
    margin-top: 15px;
}
.webform input[type=checkbox] {
    float: left;
    padding-top: 5px;
}
.webform span.checkbox_text {
    display: block;
    margin-left: 22px;
}
.webform .space {
    padding-top: 20px;
}
.webform .break {
    height: 1em;
}
.webform th {
    text-align: left;
    font-weight: normal;
}
.webform div.info_pflichtfelder {
    padding-top: 20px;
}
.webform .headline {
    margin: 0 0 5px 0;
    font-size: 120%;
}
.webform th, .webform .label {
    font-weight: normal;
    text-align: left;
    padding: 5px 0;
}
.webform .left {
    float: left;
}
.webform .desc_top {
    padding: 0 0 3px 0;
}
.webform .desc_left {
    float: left;
    padding: 0 3px 0 0;
}
.webform .desc_right {
    float: left;
    padding: 0 0 0 3px;
}
.webform .desc_bottom {
    clear: both;
    padding: 3px 0 0 0;
}
.webform div.break {
    height: 1em;
    overflow: hidden;
}
.webform div.buttons {
    text-align: left;
}

.webform .file-input-wrapper {
    /* @see https://coderwall.com/p/4etjja bzw. http://jsfiddle.net/supershabam/b3WXe/ */
    width: 200px;
    height: 2.5em;
    overflow: hidden;
    position: relative;
    line-height: 1em;
}
.webform .file-input-wrapper > input[type="file"] {
    font-size: 30px;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
}
.webform .file-input-wrapper > .btn-file-input {
    /*display: inline-block;
    width: 200px;
    height: 30px;*/
}

/* Webform Seite empfehlen */

table.formular.seite_empfehlen input[type=text] {
    width: 250px;
}
table.seite_empfehlen textarea {
    width: 400px;
    height: 120px;
}

/* Webform Veranstaltungsanmeldung */
#formVeranstaltungsanmeldung #fieldPlz {
    width: 50px;
}
#formVeranstaltungsanmeldung #fieldOrt {
    width: 190px;
}

/* Webform Passwort vergessen */
#formPasswort_vergessen input[type=button],
#formPasswort_vergessen input[type=submit] {
    margin-top: 0;
}

/*--------------------------------------------------------------------------------*/
/* Signatur bei Druck */

#divSignatur {
    display: none;
    clear: both;
    padding: 20px 0 0 0;
}

/*--------------------------------------------------------------------------------*/
/* Empfehlen */

#divEmpfehlen {
}

#divEmpfehlen .input {
    width: 200px;
}

/*--------------------------------------------------------------------------------*/
/* Text einer Fussnote (Datum eines Artikels usw.) */

.note {
    font-family : Helvetica, sans-serif;
}

/*--------------------------------------------------------------------------------*/
/* Projektfarben und -eigenschaften */

.standard {
}

.web_font_bold {
}
.web_font_size_80p {
    font-size: 80%;
}
.web_font_size_200p {
    font-size: 200%;
    line-height: 120%;
}
.web_font_size_300p {
    font-size: 300%;
    line-height: 150%;
}
.web_shadow {
    box-shadow: 5px 5px 15px #999999;
}
.web_no_shadow {
    box-shadow: none !important;
}

.web_no_margin_top {
    margin-top: 0 !important;
}
.web_no_margin_bottom {
    margin-bottom: 0 !important;
}


.margin_top_1 { margin-top: 1px !important; }
.margin_top_2 { margin-top: 2px !important; }
.margin_top_3 { margin-top: 3px !important; }
.margin_top_4 { margin-top: 4px !important; }
.margin_top_5 { margin-top: 5px !important; }
.margin_top_6 { margin-top: 6px !important; }
.margin_top_7 { margin-top: 7px !important; }
.margin_top_8 { margin-top: 8px !important; }
.margin_top_9 { margin-top: 9px !important; }
.margin_top_10 { margin-top: 10px !important; }
.margin_top_11 { margin-top: 11px !important; }
.margin_top_12 { margin-top: 12px !important; }
.margin_top_13 { margin-top: 13px !important; }
.margin_top_14 { margin-top: 14px !important; }
.margin_top_15 { margin-top: 15px !important; }
.margin_top_16 { margin-top: 16px !important; }
.margin_top_17 { margin-top: 17px !important; }
.margin_top_18 { margin-top: 18px !important; }
.margin_top_19 { margin-top: 19px !important; }
.margin_top_20 { margin-top: 20px !important; }

.margin_bottom_1 { margin-bottom: 1px !important; }
.margin_bottom_2 { margin-bottom: 2px !important; }
.margin_bottom_3 { margin-bottom: 3px !important; }
.margin_bottom_4 { margin-bottom: 4px !important; }
.margin_bottom_5 { margin-bottom: 5px !important; }
.margin_bottom_6 { margin-bottom: 6px !important; }
.margin_bottom_7 { margin-bottom: 7px !important; }
.margin_bottom_8 { margin-bottom: 8px !important; }
.margin_bottom_9 { margin-bottom: 9px !important; }
.margin_bottom_10 { margin-bottom: 10px !important; }
.margin_bottom_11 { margin-bottom: 11px !important; }
.margin_bottom_12 { margin-bottom: 12px !important; }
.margin_bottom_13 { margin-bottom: 13px !important; }
.margin_bottom_14 { margin-bottom: 14px !important; }
.margin_bottom_15 { margin-bottom: 15px !important; }
.margin_bottom_16 { margin-bottom: 16px !important; }
.margin_bottom_17 { margin-bottom: 17px !important; }
.margin_bottom_18 { margin-bottom: 18px !important; }
.margin_bottom_19 { margin-bottom: 19px !important; }
.margin_bottom_20 { margin-bottom: 20px !important; }

.margin_left_1 { margin-left: 1px !important; }
.margin_left_2 { margin-left: 2px !important; }
.margin_left_3 { margin-left: 3px !important; }
.margin_left_4 { margin-left: 4px !important; }
.margin_left_5 { margin-left: 5px !important; }
.margin_left_6 { margin-left: 6px !important; }
.margin_left_7 { margin-left: 7px !important; }
.margin_left_8 { margin-left: 8px !important; }
.margin_left_9 { margin-left: 9px !important; }
.margin_left_10 { margin-left: 10px !important; }
.margin_left_11 { margin-left: 11px !important; }
.margin_left_12 { margin-left: 12px !important; }
.margin_left_13 { margin-left: 13px !important; }
.margin_left_14 { margin-left: 14px !important; }
.margin_left_15 { margin-left: 15px !important; }
.margin_left_16 { margin-left: 16px !important; }
.margin_left_17 { margin-left: 17px !important; }
.margin_left_18 { margin-left: 18px !important; }
.margin_left_19 { margin-left: 19px !important; }
.margin_left_20 { margin-left: 20px !important; }

.margin_right_1 { margin-right: 1px !important; }
.margin_right_2 { margin-right: 2px !important; }
.margin_right_3 { margin-right: 3px !important; }
.margin_right_4 { margin-right: 4px !important; }
.margin_right_5 { margin-right: 5px !important; }
.margin_right_6 { margin-right: 6px !important; }
.margin_right_7 { margin-right: 7px !important; }
.margin_right_8 { margin-right: 8px !important; }
.margin_right_9 { margin-right: 9px !important; }
.margin_right_10 { margin-right: 10px !important; }
.margin_right_11 { margin-right: 11px !important; }
.margin_right_12 { margin-right: 12px !important; }
.margin_right_13 { margin-right: 13px !important; }
.margin_right_14 { margin-right: 14px !important; }
.margin_right_15 { margin-right: 15px !important; }
.margin_right_16 { margin-right: 16px !important; }
.margin_right_17 { margin-right: 17px !important; }
.margin_right_18 { margin-right: 18px !important; }
.margin_right_19 { margin-right: 19px !important; }
.margin_right_20 { margin-right: 20px !important; }

/*--------------------------------------------------------------------------------*/
/* Trennung bei Auflistungen (z.B. News) */

.spacer {
    height: 10px;
    overflow: hidden;
}

/* Markierung von Suchwoertern */
span.suchwort {
    background-color: #ffff9c;
}

/*--------------------------------------------------------------------------------*/
/* Suche */

#divSearch {
    position: absolute;
    right: 15px;
    bottom: -38px;
    width: 200px;
    text-align: right;
}
#divSearch form {
    margin: 0;
    padding: 0;
}
#divSearch input {
    margin: 0;
    padding: 2px 0 0 8px;
    border-top: 1px solid #919191;
    border-right: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    border-left: 1px solid #919191;
    height: 20px;
}

#divSearch .button {
    background-color: #96abd5;
    color: #ffffff;
    margin-right: 0;
    padding: 0 5px;
    height: 23px;
    border: 1px solid #878484;
    display: none;
}

/*--------------------------------------------------------------------------------*/
/* Layouts */

.section_wrapper {
    text-align: left;
    margin: 0;
    padding: 0;
}
.section_wrapper:first-child {
    margin-top: 0;
}

.one_page_wrapper {
    margin-top: 20px;
}
.section_wrapper .section_wrapper {
    padding: 0;
}
.section_wrapper .section {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    clear: both;
}
.layout_2col_links {
    float: left;
    width: 47.5%;
}
.layout_2col_rechts {
    float: right;
    width: 47.5%;
}
.layout_21col_links {
    float: left;
    width: 65%;
}
.layout_21col_rechts {
    float: right;
    width: 30%;
}
.layout_12col_links {
    float: left;
    width: 30%;
}
.layout_12col_rechts {
    float: right;
    width: 65%;
}
.layout_3col_links {
    float: left;
    width: 30%;
    margin-right: 5%;
}
.layout_3col_mitte {
    float: left;
    width: 30%;
    margin-right: 5%;
}
.layout_3col_rechts {
    float: left;
    width: 30%;
}

.layout_full {
    max-width: none;
}
.layout_full .section {
    max-width: none;
}
.layout_no_margin {
    margin: 0;
}
.layout_no_padding {
    padding: 0;
}
.layout_no_padding_top {
    padding-top: 0;
}
.layout_no_padding_bottom {
    padding-bottom: 0;
}
.layout_margin_top_10 {
    margin: 10px 0 0 0;
}
.layout_margin_top_25 {
    margin: 25px 0 0 0;
}
.layout_margin_top_50 {
    margin: 50px 0 0 0;
}

.layout_blau {
    background-color: rgba(60, 59, 110, 1);
    color: #ffffff;
}
.layout_blau_hell {
    background-color: rgba(197, 231, 251, 1);
}
.layout_weiss {
    background-color: rgba(255, 255, 255, 1);
    color: inherit;
}

.empty_col {
    clear: both;
    overflow: hidden;
    height: 1px;
}

/*--------------------------------------------------------------------------------*/
/* Definitionen verschiedener Elemente */

/* Liste der aktuellen Beitraege und Artikel */
.templ_aktuelles {
    clear: both;
}

/* Listenblock */
.templ_liste {
    clear: both;
}
.templ_liste ul, .templ_liste ul li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.templ_liste a.title {
    display: block;
    text-decoration: none;
    /*margin-bottom: 7px;*/
}
.templ_liste .text {
    padding-bottom: 20px;
    position: relative;
}
.templ_liste .item_left .image {
    float: left;
    width: 160px;
}
.templ_liste .item_left .text {
    clear: none;
    margin-left: 175px;
}
.templ_liste .item_right .image {
    float: right;
    width: 160px;
}
.templ_liste .item_right .text {
    clear: none;
    margin-right: 175px;
}
.templ_liste .more {
    padding-left: 10px;
    display: inline;
}

/* Link zum Seitenbeginn und zurueck */
.div_linkleiste {
    clear: both;
    padding: 15px 17px 10px 0;
}
.div_linkleiste a {
    text-decoration: none;
}
.div_linkleiste a:hover {
    text-decoration: underline;
}
.div_linkleiste.ll_1col div {
    float: left;
    text-align: center;
}
.div_linkleiste.ll_2col div {
    width: 50%;
    float: left;
    text-align: center;
}
.div_linkleiste.ll_3col div {
    width: 33.3%;
    float: left;
    text-align: center;
}
.div_linkleiste.ll_4col div {
    width: 25%;
    float: left;
    text-align: center;
}
.div_linkleiste.ll_5col div {
    width: 20%;
    float: left;
    text-align: center;
}

/* Newsletter Archiv */
.templ_newsletter_archiv {
    clear: both;
}

/*--------------------------------------------------------------------------------*/
/* Floatbox Optionen */

#fbBox #fbInfoLink, #fbBox #fbPrintLink {
    font-weight: normal !important;
    padding-left: 20px !important;
    background: url(../../images/icons/print.gif) no-repeat;
}

/*--------------------------------------------------------------------------------*/
/* Media-Queries */

@media only screen and (max-width:1250px) {

    .section_wrapper .section {
        padding: 0 2%;
        width: 96%;
    }
}

@media only screen and (max-width:1000px) {

    body {
    }

    .main_wrapper {
        margin: 0 auto;
        box-shadow: 0 0 0 #111111;
    }
    .header_wrapper {
        height: auto;
    }
    .div_header {
        top: inherit;
    }
    .div_header img {
        height: auto;
        width: 100%;
    }
    .div_header .div_header_right {
        width: 100%;
    }
    .content_wrapper {
        padding-top: 20px;
        padding-left: 3px;
        padding-right: 3px;
    }
    .content_wrapper img {
        max-width: 100%;
        height: auto;
    }

    .div_funktionsleiste {
        display: none;
    }

    a.show_menu {
        display: inline-block;
    }
    a.show_menu:hover, a.show_menu:active {
        text-decoration: none;
    }

    .div_links {
        display: none;
        background-color: #ffffff;
        box-shadow: 0 5px 10px #333333;
        padding: 0 5px 5px 5px;
        position: absolute;
        left: 0;
        z-index: 1000;
    }
    .nav_01 {
        display: none;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 3000;
    }
    .nav_01 ul li {
        display: block;
        margin: 0 !important;
    }
    .nav_01 li a {
        color: #ffffff;
    }
    .nav_01 li.ebene1 a.ebene1 {
        padding: 10px 30px 30px 10px;
    }
    .nav_01 li.ebene1 a.aktiv {
        border: none;
        text-decoration: underline;
    }
    .nav_01 li.ebene1 a:hover {
        border: none;
    }
    .nav_01 li.ebene1:hover ul.ebene2,
    .nav_01 li.ebene1.aktiv ul.ebene2 {
        display: block;
        position: relative;
        right: auto;
        background-color: transparent;
        padding: 0;
    }
    .nav_01 li.ebene2 {
        padding: 0;
    }

    .div_mitte {
        margin: 0 auto;
        padding: 0;
        float: none;
    }
    .div_mitte .div_text {
        padding: 0;
    }
    .div_rechts {
        margin: 0;
        width: 100%;
    }
    .div_rechts .box {
        margin-right: auto;
        margin-left: auto;
    }


    div.box {
        text-align: center !important;
        margin-left: auto;
        margin-right: auto;
        float: none;
    }

    h1 {
        font-size: 4em;
    }
}

@media only screen and (max-width:750px) {

    .layout_2col_links,
    .layout_2col_rechts,
    .layout_21col_links,
    .layout_21col_rechts,
    .layout_12col_links,
    .layout_12col_rechts,
    .layout_3col_links,
    .layout_3col_mitte,
    .layout_3col_rechts {
        width: 100%;
        margin: 0;
    }

    h1 {
        font-size: 3em;
    }
}

@media only screen and (max-width:570px) {

    .webform table {
        width: 100%;
    }
    .webform input[type=text],
    .webform textarea {
        width: 98%;
    }

    .webform form.step01 th, .webform form.step01 td {
        display: block;
        padding-right: 0;
    }
    .layout_3col_links {
        max-width: 100%;
        margin-right: 0;
    }
    .layout_3col_mitte {
        max-width: 100%;
        margin-right: 0;
    }
    .layout_3col_rechts {
        max-width: 100%;
    }
    .header_wrapper .box_wrapper.pos-5 {
        display: none;
    }
    .header_wrapper .div_header a.show_menu {
        /* top: 47px; */
    }
    .content_wrapper .box_wrapper.pos-5 {
        display: block;
    }

    .footer_wrapper {
        min-height: auto;
    }
    .div_footer {
        font-size: 80%;
        text-align: center;
        padding: 15px 0;
    }
    .div_footer .copyright {
        float: none;
    }
    .div_footer .nav_02 {
        float: none;
    }

    h1 {
        font-size: 2em;
    }
}
@media only screen and (min-width:570px) {

    .header_wrapper .box_wrapper.pos-5 {
        display: block;
    }
    .content_wrapper .box_wrapper.pos-5 {
        display: none;
    }
}

@media only screen and (max-height:400px) and (orientation:landscape) {

    .header_wrapper {
        position: relative;
    }
    .content_wrapper {
        padding-top: 20px !important;
    }
}

@media only screen and (orientation:portrait) {

    body {
        background-image: none;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* theme styles */

/*--------------------------------------------------------------------------------*/

body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.2em;
    color: #555555; /*#1f1f1f;*/
}

input, select, textarea {
    color: inherit;
    font-family: Arial, Helvetica, sans-serif;
}
input[type=submit],
input[type=button],
button {
    border:   1px solid #3c3b6e;
    background-color: #3c3b6e;
    color: #ffffff;
}
input.reset {
    border: 1px solid #999999;
    background-color: rgb(240,240,240);
    color: #72827F;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: bold;
}

h1 {
    font-family: Arial, Helvetica, sans-serif;
    text-align: center;
}
h2 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.8em;
}
a.show_menu {
    display: inline-block;
    background-image: url(../../themes/vmjv_v01/images/hamburger.png);
}

/*--------------------------------------------------------------------------------*/
/* Layout */

.header_wrapper {
    /* position: fixed; */
}
.footer_wrapper {
    background-color: #3c3b6e;
}

.section_wrapper {
    padding: 1em 0px 0px 0px;
}

/*--------------------------------------------------------------------------------*/
/* Header elements */

.div_header .logo {
    width: 20vw;
    max-width: 200px;
}

.div_header .slogan {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10vw;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #3c3b6e;
    right: 3%;
    bottom: 4%;
    text-shadow: 0px 0px 20px #999999;
}

/*--------------------------------------------------------------------------------*/
/* Footer elements */

.div_footer {
    font-family: Arial, Helvetica, sans-serif;
}

/*--------------------------------------------------------------------------------*/
/* Navigation */

.nav_01 {
    font-size: 1.4em;
    font-variant: small-caps;
    display: none;

    background-color: rgba(60, 59, 110, 0.9);
    background-image: url(../../images/menu_close.png);
    background-repeat: no-repeat;
    background-position: 97% 25px;
    box-shadow: 0px 1px 5px #cccccc;
    padding: 70px 0px 0px 0px;
    text-align: center;
    width: 100%;
}
.nav_01 {
    display: none;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 3000;
}
.nav_01 ul li {
    display: block;
    margin: 0px !important;
}
.nav_01 li a {
    color: #ffffff;
}
.nav_01 li.ebene1 a.ebene1 {
    padding: 10px;
    display: block;
}
.nav_01 li.ebene1 a.aktiv{
    text-decoration: underline;
}
.nav_01 li.ebene1:hover a.ebene1,
.nav_01 li.ebene1 a:hover {
    text-decoration: underline;
}
.nav_01 li.ebene1:hover ul.ebene2,
.nav_01 li.ebene1.aktiv ul.ebene2 {
    display: block;
    position: relative;
    right: auto;
    background-color: transparent;
    padding: 0px;
}
.nav_01 li.ebene2 {
    padding: 0px;
}

/*--------------------------------------------------------------------------------*/
/* Navigationbar */

div.navigationbar {
    background-color: #3c3b6e;
    color: #ffffff;
}
div.navigationbar a:hover {
    background-color: #dbdfe2;
    color: #3c3b6e;
}
div.navigationbar span.navigationbar_aktuelle_seite {
    background-color: #dbdfe2;
    color: #3c3b6e;
}

/*--------------------------------------------------------------------------------*/
/* Wechsel der Sprache */

ul.div_lang {
    position: absolute;
    right: 6.2%;
    top: 9%;
    text-align: right;
    margin: 0px;
}
ul.div_lang li {
    list-style-type: none;
    float: left;
}
ul.div_lang li a {
    display: inline-block;
    min-width: 20px;
    color: #ffffff;
    font-size: 85%;
    padding: 3px 5px;
    border: 1px solid #ffffff;
    text-align: center;
    text-decoration: none;
}
ul.div_lang li a.de {
    position: relative;
    left: 1px;
}
ul.div_lang li a.active, ul.div_lang li a:hover {
    background-color: #3c3b6e;
}

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

.div_text {
    line-height: 1.2em;
}
.div_text a {
    text-decoration: none;
    color: #3c3b6e;
}
.newsletterbox .link_unsubscribe {
    color: #3c3b6e !important;
}
.webform .headline {
    color: #3c3b6e;
}

/*--------------------------------------------------------------------------------*/
/* Projektfarben und -eigenschaften */

.web_schwarz {
    color: #1f1f1f !important;
    border-color: #1f1f1f !important;
}
.web_grau {
    color: #555555 !important;
    border-color: #555555 !important;
}
.web_grau_hell {
    color: #babcbb !important;
    border-color: #babcbb !important;
}
.web_blau {
    color: #3c3b6e !important;
    border-color: #3c3b6e !important;
}
.web_button_blau {
    border: 1px solid #3c3b6e;
    background-color: #3c3b6e;
    color: #ffffff !important;
    padding: 5px 20px;
    /* border-radius: 5px;
    box-shadow: 3px 3px 5px #999999; */
    display: inline-block;
    text-decoration: none !important;
}
.web_button_blau:hover {
    opacity: 0.8;
}
.web_button_blau_rund {
    color: #ffffff !important;
    background-color: #3c3b6e;
    display: inline-block;
    width: 36px;
    height: 36px;
    line-height: 33px;
    border-radius: 18px;
    text-align: center;
    font-size: 130%;
    font-weight: bold;
    text-decoration: none !important;
}
.web_button_forward {
    color: #ffffff !important;
    background-color: #3c3b6e;
    display: inline-block;
    text-align: center;
    font-size: 22px;
    text-decoration: none !important;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    line-height: 30px;
    font-weight: normal;
}

/*--------------------------------------------------------------------------------*/
/* Media Queries */

@media only screen and (max-width:1000px) {

/*     .nav_01 {
        background-color: rgba(60, 59, 110, 0.9);
        background-image: url(../../images/menu_close.png);
        background-repeat: no-repeat;
        background-position: 25px 25px;
        box-shadow: 0px 1px 5px #cccccc;
        padding: 70px 0px 0px 0px;
        text-align: center;
        width: 100%;
    } */
    ul.div_lang {
        right: 7.5%;
        top: 8.5%;
    }
}

@media only screen and (max-width:768px) {

    ul.div_lang {
        right: 9.5%;
        top: 8.0%;
    }
}

@media only screen and (max-width:425px) {

    ul.div_lang {
        right: 14.5%;
        top: 7.0%;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_text */

.templ_text {
    clear: both;    
}
.layout_full_padding .templ_text {
    padding-left: 50px;
    padding-right: 50px; 
}

@media only screen and (max-width:1000px) {

    .layout_full_padding .templ_text {
        padding-left: 0px;
        padding-right: 0px; 
    }
}

/*--------------------------------------------------------------------------------*//**
 * Standard CSS-Definitionen fuer templ_abstand
 *
 *********************************************************************************/

/*--------------------------------------------------------------------------------*/

/* Abstand */
.templ_abstand {
    clear: both;
    overflow: hidden;   
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bild */

div.templ_bild {
    clear: both;
    width: 100%;
}
div.templ_bild.more_in_row {
    clear: none;
    width: auto;
    float: left;
    margin-right: 1%;
}
div.templ_bild img {
    max-width: 100%;
    height: auto;
    margin: 0px;
}

div.bild_legende_top {
}
div.bild_legende_bottom {
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bild_text */

div.templ_bild_text {
    clear: both;
    width: 100%;
}
div.templ_bild_text img {
    max-width: 100%;
    height: auto;
}

/*--------------------------------------------------------------------------------*/
/* Media Queries */

@media only screen and (max-width:1000px) {
    
    div.templ_bild_text img {
        max-width: 50%;
    }
    div.templ_bild_text div {
        margin-right: 0px !important;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bildbox */

.templ_bildbox {
    clear: both;
    width: 100%;
    display: flex;
    align-items: stretch;
}
.templ_bildbox .templ_bildbox_text {
    width: 48%;
    padding: 2% 2%;
    flex: 1 1 auto;
}
.templ_bildbox .templ_bildbox_text *:first-child {
    margin-top: 0;
}
.templ_bildbox .templ_bildbox_text *:last-child {
    margin-bottom: 0;
}
.templ_bildbox .templ_bildbox_image {
    width: 50%;
    flex: 1 1 auto;
    line-height: 0;
}
.templ_bildbox .templ_bildbox_image img {
    max-width: 100%;
    height: auto;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bildbox */

.templ_bildbox {
    background-color: #eeeeee;
    margin-bottom: 1em;
    box-shadow: 7px 7px 20px #999999;
}
.templ_bildbox:hover {
    background-color: #cccccc;
    opacity: 0.9;
}

.templ_bildbox .templ_bildbox_text h1 + p,
.templ_bildbox .templ_bildbox_text h2 + p,
.templ_bildbox .templ_bildbox_text h3 + p,
.templ_bildbox .templ_bildbox_text h4 + p {
    margin-top: 0px;
}

.templ_bildbox .templ_bildbox_image img {
    /* filter: sepia(0.9) hue-rotate(155deg); */
}

/*--------------------------------------------------------------------------------*/
/* Media Queries */

@media only screen and (max-width:1200px) {
    
    .templ_bildbox .templ_bildbox_text p {
        font-size: 2vw;
        line-height: 2vw;
    }
}

@media only screen and (max-width:750px) {
    
    .templ_bildbox .templ_bildbox_text p {
        font-size: inherit;
        line-height: inherit;
    }
}

@media only screen and (max-width:500px) {
    
    .templ_bildbox {
        display: block;
    }
    .templ_bildbox .templ_bildbox_text {
        width: 96%;
        padding: 2% 2%;
        flex: none;
    }
    .templ_bildbox .templ_bildbox_image {
        width: 100%;
    }
    .templ_bildbox .templ_bildbox_image img {
        width: 100%;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_textbox */

.templ_textbox {
    position: relative;
    display: inline-block;
    margin: 0px;
    vertical-align: top;
}
.templ_textbox:last-child {
    margin-right: 0px !important;
}

.templ_textbox .textbox_titel {
}
.templ_textbox .textbox_titeltext {
    padding: 0px;
}
.templ_textbox .textbox_content {
    padding: 0px;
}

.templ_textbox img {
    max-width: 100%;
    height: auto;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bildergalerie */

div.templ_bildergalerie {
    clear: both;
}
div.templ_bildergalerie div.galerie {
    clear: both;
    margin-top:5px;
	line-height: 0em;
}

div.templ_bildergalerie div.galerie.left {
    margin-right: 0px;
}
div.templ_bildergalerie div.galerie.right {
    text-align: right;
	margin-left: 0px;
}
div.templ_bildergalerie div.galerie.center {
    text-align: center;
}
div.templ_bildergalerie div.galerie img {
    margin: 0px;
}
div.templ_bildergalerie div.galerie img.bild_rahmen {
    border: 1px solid #cccccc;
}

div.templ_bildergalerie div.galerie a {
    border: none;
    position: relative;
    display: inline-block;
    line-height: 0px;
}
div.templ_bildergalerie .bild_auswaehlen {
	font-size: 80%;
	padding: 0px 0px 5px 0px;
    text-align: left;
}
div.templ_bildergalerie .bild_auswaehlen a {
	position: relative;
	bottom: 1px;
}
div.templ_bildergalerie .bildtext {
    text-align: left;
    word-wrap: break-word;
	line-height: 1em;
}

div.templ_bildergalerie ul {
    width: auto;
    margin: 0px auto;
    padding: 0px;
    list-style-type: none;
}
div.templ_bildergalerie ul li {
    display: inline-block;
    padding: 0px 1% 1% 0px;
}
div.templ_bildergalerie ul.li_100p li {
    width: 100%;
}
div.templ_bildergalerie ul.li_75p li {
    width: 75%;
}
div.templ_bildergalerie ul.li_67p li {
    width: 66.7%;
}
div.templ_bildergalerie ul.li_50p li {
    width: 49.5%;
}
div.templ_bildergalerie ul.li_33p li {
    width: 32.66%;
}
div.templ_bildergalerie ul.li_25p li {
    width: 24.25%;
}
div.templ_bildergalerie ul.li_20p li {
    width: 19.2%;
}
div.templ_bildergalerie ul.li_100p li, 
div.templ_bildergalerie ul.li_75p li, 
div.templ_bildergalerie ul.li_67p li {
    padding-right: 0px !important;
}
div.templ_bildergalerie ul.li_50p li:nth-child(even) {
    padding-right: 0px !important;
}
div.templ_bildergalerie ul.li_33p li:nth-child(3n+0) {
    padding-right: 0px !important;
}
div.templ_bildergalerie ul.li_25p li:nth-child(4n+0) {
    padding-right: 0px !important;
}
div.templ_bildergalerie ul.li_20p li:nth-child(5n+0) {
    padding-right: 0px !important;
}

/* Optionen fuer ein einzelnes Thumbnail */
div.templ_bildergalerie div.galerie.single a {
    background-color: #333333;
}
div.templ_bildergalerie div.galerie.single a img {
    margin: 0px;
    line-height: normal;
}
div.templ_bildergalerie div.galerie.single a:hover img {
    opacity: 0.3;
}
div.templ_bildergalerie div.galerie.single a:hover .bildergalerie_titel {
    display: table-cell;
}

div.templ_bildergalerie div.galerie.single .bildergalerie_titel {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 40%;
    color: #ffffff;
    text-decoration: none;
    font-size: 150%;
    text-transform: uppercase;
    text-align: center;
    display: none;
    vertical-align: middle;
}
div.templ_bildergalerie div.galerie.single .bildergalerie_titel .bildergalerie_subtitel {
    position: relative;
    font-size: 75%;
    font-style: italic;
    text-transform: none;
    top: 30px;
}

div.templ_bildergalerie .links {
    clear: both;
	padding: 20px 0px 0px 0px;
}
div.templ_bildergalerie .links a {
	padding-right: 10px;
}
div.templ_bildergalerie .links a.alle_auswaehlen {
    padding: 0px;
}
div.templ_bildergalerie .links a.auswahl_loeschen {
    margin: 0px 20px 20px 0px;
}
div.templ_bildergalerie .links .delimiter {
    padding: 0px 2px;
    color: inherit;
}

/*--------------------------------------------------------------------------------*/
/* Floatbox */

.fbx.fbFooter div {
    text-align: center;
    padding: 6px 0px 0px 0px;
}
.fbx.fbFooter div a {
    color: #ffffff;
    font-size: 80%;
    padding: 0px 3px;
    position: relative;
    top: -1px
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_bildergalerie_cycle */

.templ_bildergalerie_cycle {
    clear: both;
    height: auto;
    max-width: 100%;
    margin: 0px;
    padding: 0px;
    position: relative;
}
.templ_bildergalerie_cycle ul, .templ_bildergalerie_cycle li {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}
.templ_bildergalerie_cycle img {
    margin: 0px;
    border: 0px;
    max-width: 100%;
    height: auto;
}

/* controls = Navigationsleiste */
.templ_bildergalerie_cycle .controls {
    position: absolute;
    bottom: 0px;
    z-index: 200;
    text-align: center;
    width: 100%;
    padding: 3px 0px;
    color: #000000;
    background-color: #ffffff;
    opacity: 0.5;
    font-size: 12px;
    overflow: hidden;
}
.templ_bildergalerie_cycle .controls a {
    line-height: 16px;
    color: #003366;
}
.templ_bildergalerie_cycle .controls a.resume,
.templ_bildergalerie_cycle .controls a.stop {
    padding: 0px 0px 0px 2px;
    position: relative;
    top: 1px;
}

.templ_bildergalerie_cycle .controls a.prev {
    width: 7px; 
    height: 1.4em;
    padding: 0px;
    background: url(../../templ/templ_bildergalerie_cycle/images/prev.png) center center no-repeat;
    position: absolute;
    left: 5px;
    bottom: 5px;
}
.templ_bildergalerie_cycle .controls a.next {
    width: 7px;
    height: 1.4em;
    padding: 0px;
    background: url(../../templ/templ_bildergalerie_cycle/images/next.png) center center no-repeat;
    position: absolute;
    right: 5px;
    bottom: 5px;
}


/* caption = Bild x von y */
.templ_bildergalerie_cycle .caption {
    position: relative;
    top: 1px;
    padding: 0px 2px;
}

/* slidenav = pager */
.templ_bildergalerie_cycle .slidenav {
    
}
.templ_bildergalerie_cycle .slidenav a {
    margin: 0 2px; 
    padding: 0px; 
    border: 1px solid #003366;
    border-radius: 8px; 
    background: #ffffff; 
    text-decoration: none;
    text-align: center;
    width: 15px; 
    height: 15px; 
    font-size: 9px;
    display: inline-block;
    z-index: 501;
    cursor: pointer;
}
.templ_bildergalerie_cycle .slidenav a:hover, 
.templ_bildergalerie_cycle .slidenav a.active_slide {
    background: #003366; 
    color: #ffffff;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_webformular */

.ui-datepicker {
    font-size: 75% !important;
}

/* Webforms allgemein */
.webform table {
    border-spacing: 0px;
    padding: 0px;
    /* width: 100%; */
}
.webform th {
    font-weight: normal;
    text-align: left;
	padding: 0px 10px 0px 0px;
}

.webform .headline {
    margin: 0px 0px 5px 0px;
    font-size: 120%;
}
.webform .fehler {
    color: #fc0522;
}
.webform .label {
    max-width: 370px;
	font-weight: normal;
    text-align: left;
}
.webform input[type=text] {
    width: 350px;
}
.webform input[type=text].date_eu {
    width: 150px;
}
.webform input[type=text].date_us {
    width: 150px;
}
.webform input {
    font-size: 100%;
}
.webform input[type=text],
.webform input[type=password],
.webform textarea,
.webform select {
    font-size: 100%;
    padding: 5px 2px;
}
.webform textarea {
    width: 98%;
    max-width: 98%;
}
.webform input[type=submit],
.webform input[type=button],
.webform input[type=reset],
.webform button {
    min-width: 120px;
    margin-top: 15px;
    padding: 5px 20px;
    color: #ffffff;
}
.webform input[type=submit]:hover,
.webform input[type=button]:hover,
.webform button:hover {
    cursor: pointer;
}
.webform input[type=reset] {
    background-color: #dddddd;
    border: 1px solid #cccccc;
    color: #444444;
}
.webform input[type=checkbox] {
    float: left;
    padding-top: 5px;
}
.webform span.checkbox_2col {
    display: inline-block;
    white-space: nowrap;
    min-width: 48%;
}
.webform span.checkbox_3col {
    display: inline-block;
    white-space: nowrap;
    min-width: 32%;
}
.webform span.checkbox_4col {
    display: inline-block;
    white-space: nowrap;
    min-width: 24%;
}
.webform span.checkbox_5col {
    display: inline-block;
    white-space: nowrap;
    min-width: 19%;
}
.webform span.checkbox_text {
    display: block;
    margin-left: 22px;
}
.webform span.checkbox_text {
    display: block;
    margin-left: 22px;
}
.webform .space {
    padding-top: 20px;
}
.webform .break {
    height: 1em;
}
.webform .info_pflichtfelder {
    padding-top: 20px;
}
.webform .left {
    float: left;
}
.webform .desc_top {
    padding: 0px 0px 3px 0px;
}
.webform .desc_left {
    float: left;
    padding: 0px 3px 0px 0px;
}
.webform .desc_right {
    float: left;
    padding: 0.3em 0px 0px 0.5em;
}
.webform .desc_bottom {
    clear: both;
    padding: 3px 0px 0px 0px;
}
.webform div.break {
    height: 1em;
    overflow: hidden;
}
.webform div.buttons {
    text-align: center;
}

.webform .file_input_wrapper {
    /* @see https://coderwall.com/p/4etjja bzw. http://jsfiddle.net/supershabam/b3WXe/ */
    width: 200px;
    height: 2.5em;
    overflow: hidden;
    position: relative;
    line-height: 1em;
}
.webform .file_input_wrapper > input[type="file"] {
    font-size: 30px;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
}
.webform .file_input_wrapper > .button_file_input {
    /*display: inline-block;
    width: 200px;
    height: 30px;*/
}


table.formular {
    border-spacing: 0px;
    padding: 0px;
}
table.formular td {
    padding: 2px 2px 2px 0px;
}
table.formular td.bezeichnung {
    vertical-align: top;
    padding: 4px 2px 2px 0px;
    width: 50px;
}
table.formular input[type=text], table.formular textarea {
    width: 250px;
}

/* Webform Seite empfehlen */
table.formular.seite_empfehlen input[type=text] {
    width: 250px;
}
table.seite_empfehlen textarea {
    width: 400px;
    height: 120px;
}

/* Webform Veranstaltungsanmeldung */
#formVeranstaltungsanmeldung #fieldPlz {
    width: 50px;
}
#formVeranstaltungsanmeldung #fieldOrt {
    width: 190px;
}

/* Webform Passwort vergessen */
#formPasswort_vergessen input[type=button],
#formPasswort_vergessen input[type=submit] {
    margin-top: 0px;
}

/* Webform Veranstaltungsanmeldung */
#formVeranstaltungsanmeldung #fieldPlz {
    width: 50px;
}
#formVeranstaltungsanmeldung #fieldOrt {
    width: 190px;
}

/* Webforms Newsletter */
#formNewsletter_aktivieren div {
    margin-top: 8px;
    display: inline-block;
}
#formNewsletter_aktivieren div.buttons {
    margin-top: 0px;
    vertical-align: top;
}
#formNewsletter_aktivieren div:last-child {
     display: block;
}

#formNewsletter_abmelden table {
    margin-top: 6px;
    display: inline-block;
}
#formNewsletter_abmelden div.buttons {
    display: inline-block;
    vertical-align: top;
}

/*--------------------------------------------------------------------------------*/
/* Media-Queries */

@media only screen and (max-width:630px) {
    
    .webform input[type=text] {
        width: 98%;
    }
    
    .webform form.step01 th, .webform form.step01 td {
        display: block;
        padding-right: 0;
    }
	.webform form.step01 th {
        font-weight: bold;
        width: auto;
    }
	
    .webform span.checkbox_3col {
        display: inline-block;
        white-space: nowrap;
        min-width: 49%;
    }
    .webform span.checkbox_4col {
        display: inline-block;
        white-space: nowrap;
        min-width: 32%;
    }
    .webform span.checkbox_5col {
        display: inline-block;
        white-space: nowrap;
        min-width: 24%;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_googlemaps */

.templ_googlemaps {
    clear: both;
}
.templ_googlemaps .map_canvas {
    max-width: 100%;
    height: 250px;
}
.templ_googlemaps img {
	box-shadow: none;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_openstreetmap */

.templ_openstreetmap {
    clear: both;
}
.templ_openstreetmap .map_canvas {
    max-width: 100%;
    height: 250px;
}
.templ_openstreetmap .routeplaner {
    padding: 5px 0px;
}
.templ_openstreetmap img {
	box-shadow: none;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_inhaltsverzeichnis */

div.templ_link {
    clear: both;
    width: 100%;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_menue */

.templ_menue {
    clear: both;
    margin: 0px;
    /* padding: 10px;
    background-color: #eeeeee; */
}

.templ_menue .nav_00 ul {
    /* margin: 0px;
    padding: 0px; */

}
.templ_menue .nav_00.no_style ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}
.templ_menue .nav_00 ul li {
    margin: 0px;
    padding: 0px;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_sitemap */

.templ_sitemap {
    clear: both;
}

.templ_sitemap ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_suche */

.div_form_suche {
    position: absolute;
    right: 0px;
    bottom: 7px;
    width: 188px;
    text-align: right;
}
.div_form_suche form {
    margin: 0px;
    padding: 0px;
}
.div_form_suche input {
    color: #ffffff;
    border: 1px solid #dddddd;
    margin: 0px;
    padding: 2px 3px;
    z-index: 2000;
    position: relative;
    width: 180px;
    background-color: #333333;
    font-size: 80%;
}

.div_form_suche .button {
    display: none;
}

.templ_suche form div {
    display: inline-block;
}
.templ_suche table.resultlist td {
    display: table-cell;
}

/*--------------------------------------------------------------------------------*/
/* Media Queries */

@media only screen and (max-width:1100px) {
    
    .div_form_suche {
        right: 2%;    
    }
}

@media only screen and (max-width:630px) {
    
    .div_form_suche {
        width: 156px;
    }
    .div_form_suche input {
        width: 150px;
    }
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_video */

.templ_video {
}
.templ_video.thumbnail_center div {
    background-position: center;
    text-align: center;
}
.templ_video.thumbnail_right div {
    background-position: right;
    text-align: right;
}
.templ_video a {
    display: inline-block !important;
}
.templ_video img {
    box-shadow: none;
}

/*--------------------------------------------------------------------------------*//*--------------------------------------------------------------------------------*/
/* templ_wechselbilder (Slider */

.templ_wechselbilder {
    width: 100%;
    margin: 0px auto 0px auto;
    position: relative;
}
.templ_wechselbilder .slideshow {
    width: 102%;
    overflow: hidden;
}
.templ_wechselbilder .slideshow_item {
    float: left;
    width: 100%;
}
.templ_wechselbilder .slideshow_item img {
    box-shadow: none;
}
.templ_wechselbilder .slideshow_text {
    /*background:url(../../images/slide-overlay.png) repeat;*/
    top: 0px;
    left: 0px;
    color: #fff;
    font-size: 20px;
    position: absolute;
    width: 96%;
    height: 96%;
    padding: 3%;
    z-index:100;
}
.templ_wechselbilder .slideshow_text h2, 
.templ_wechselbilder .slideshow_text div.slideshow_header {
    color:#ffffff;
    padding-bottom:0px!important;
    margin:0!important;
}
.templ_wechselbilder .slideshow_text p {
    color:#ffffff;
    margin: 2px 0px 0px 0px;
}
.templ_wechselbilder .slideshow_text a.button, .slideshow_text a.button:hover {
    background-color: #00abde;
    padding: 8px 10px;
    border-radius: 9px;
    color: #ffffff;
    text-decoration: none;
}


.templ_wechselbilder .controls {
    bottom: 7px;
    position: absolute;
    right:1%;
    z-index:100;
}

.templ_wechselbilder .controls .slidenav {
    float: left;
}

.templ_wechselbilder .controls .slidenav a {
    margin: 0 2px; 
    padding: 0px; 
    border: 1px solid #003366;
    border-radius: 8px; 
    background: #ffffff; 
    text-decoration: none;
    text-align: center;
    font-size: 9px;
    color: #003366;
    line-height: 16px; 
    width: 15px; 
    height: 15px; 
    overflow: hidden; 
    display: inline-block;
    z-index: 501;
}
.templ_wechselbilder .controls .slidenav a:hover, 
.templ_wechselbilder .controls .slidenav a.active_slide {
    background: #003366; 
    color: #ffffff;
}

.templ_wechselbilder .controls .slidenav_resume,
.templ_wechselbilder .controls .slidenav_stop {
    line-height: 18px;
    font-size: 12px;
    float: left;
    padding-left: 2px;
    text-shadow: 0px 0px 2px #ffffff;
}

.templ_wechselbilder .big_link{
    bottom: 0;
    cursor: pointer;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index:100px;
    background: url(../../images/blank.png) repeat;
}

.templ_wechselbilder .slider_text_align_right { text-align: right; }
.templ_wechselbilder .slider_text_align_center { text-align: center; }
.templ_wechselbilder .slider_text_align_left { text-align: left; }

.templ_wechselbilder .slideshow_text .slider_font_size_8  { font-size: 8px;  line-height: 12px; }
.templ_wechselbilder .slideshow_text .slider_font_size_9  { font-size: 9px;  line-height: 13px; }
.templ_wechselbilder .slideshow_text .slider_font_size_10 { font-size: 10px; line-height: 14px; }
.templ_wechselbilder .slideshow_text .slider_font_size_11 { font-size: 11px; line-height: 15px; }
.templ_wechselbilder .slideshow_text .slider_font_size_12 { font-size: 12px; line-height: 16px; }
.templ_wechselbilder .slideshow_text .slider_font_size_13 { font-size: 13px; line-height: 17px; }
.templ_wechselbilder .slideshow_text .slider_font_size_14 { font-size: 14px; line-height: 18px; }
.templ_wechselbilder .slideshow_text .slider_font_size_15 { font-size: 15px; line-height: 19px; }
.templ_wechselbilder .slideshow_text .slider_font_size_16 { font-size: 16px; line-height: 20px; }
.templ_wechselbilder .slideshow_text .slider_font_size_17 { font-size: 17px; line-height: 21px; }
.templ_wechselbilder .slideshow_text .slider_font_size_18 { font-size: 18px; line-height: 22px; }
.templ_wechselbilder .slideshow_text .slider_font_size_19 { font-size: 19px; line-height: 23px; }
.templ_wechselbilder .slideshow_text .slider_font_size_20 { font-size: 20px; line-height: 24px; }
.templ_wechselbilder .slideshow_text .slider_font_size_21 { font-size: 21px; line-height: 25px; }
.templ_wechselbilder .slideshow_text .slider_font_size_22 { font-size: 22px; line-height: 26px; }
.templ_wechselbilder .slideshow_text .slider_font_size_23 { font-size: 23px; line-height: 27px; }
.templ_wechselbilder .slideshow_text .slider_font_size_24 { font-size: 24px; line-height: 28px; }
.templ_wechselbilder .slideshow_text .slider_font_size_25 { font-size: 25px; line-height: 29px; }
.templ_wechselbilder .slideshow_text .slider_font_size_26 { font-size: 26px; line-height: 30px; }
.templ_wechselbilder .slideshow_text .slider_font_size_27 { font-size: 27px; line-height: 31px; }
.templ_wechselbilder .slideshow_text .slider_font_size_28 { font-size: 28px; line-height: 32px; }
.templ_wechselbilder .slideshow_text .slider_font_size_29 { font-size: 29px; line-height: 33px; }
.templ_wechselbilder .slideshow_text .slider_font_size_30 { font-size: 30px; line-height: 34px; }
.templ_wechselbilder .slideshow_text .slider_font_size_31 { font-size: 31px; line-height: 35px; }
.templ_wechselbilder .slideshow_text .slider_font_size_32 { font-size: 32px; line-height: 36px; }
.templ_wechselbilder .slideshow_text .slider_font_size_33 { font-size: 33px; line-height: 37px; }
.templ_wechselbilder .slideshow_text .slider_font_size_34 { font-size: 34px; line-height: 38px; }
.templ_wechselbilder .slideshow_text .slider_font_size_35 { font-size: 35px; line-height: 39px; }
.templ_wechselbilder .slideshow_text .slider_font_size_36 { font-size: 36px; line-height: 40px; }
.templ_wechselbilder .slideshow_text .slider_font_size_37 { font-size: 37px; line-height: 41px; }
.templ_wechselbilder .slideshow_text .slider_font_size_38 { font-size: 38px; line-height: 42px; }
.templ_wechselbilder .slideshow_text .slider_font_size_39 { font-size: 39px; line-height: 43px; }
.templ_wechselbilder .slideshow_text .slider_font_size_40 { font-size: 40px; line-height: 44px; }
.templ_wechselbilder .slideshow_text .slider_font_size_41 { font-size: 41px; line-height: 45px; }
.templ_wechselbilder .slideshow_text .slider_font_size_42 { font-size: 42px; line-height: 46px; }
.templ_wechselbilder .slideshow_text .slider_font_size_43 { font-size: 43px; line-height: 47px; }
.templ_wechselbilder .slideshow_text .slider_font_size_44 { font-size: 44px; line-height: 48px; }
.templ_wechselbilder .slideshow_text .slider_font_size_45 { font-size: 45px; line-height: 49px; }
.templ_wechselbilder .slideshow_text .slider_font_size_46 { font-size: 46px; line-height: 50px; }
.templ_wechselbilder .slideshow_text .slider_font_size_47 { font-size: 47px; line-height: 51px; }
.templ_wechselbilder .slideshow_text .slider_font_size_48 { font-size: 48px; line-height: 52px; }
.templ_wechselbilder .slideshow_text .slider_font_size_49 { font-size: 49px; line-height: 53px; }
.templ_wechselbilder .slideshow_text .slider_font_size_50 { font-size: 50px; line-height: 54px; }
.templ_wechselbilder .slideshow_text .slider_font_size_51 { font-size: 51px; line-height: 55px; }
.templ_wechselbilder .slideshow_text .slider_font_size_52 { font-size: 52px; line-height: 56px; }
.templ_wechselbilder .slideshow_text .slider_font_size_53 { font-size: 53px; line-height: 57px; }
.templ_wechselbilder .slideshow_text .slider_font_size_54 { font-size: 54px; line-height: 58px; }
.templ_wechselbilder .slideshow_text .slider_font_size_55 { font-size: 55px; line-height: 59px; }
.templ_wechselbilder .slideshow_text .slider_font_size_56 { font-size: 56px; line-height: 60px; }
.templ_wechselbilder .slideshow_text .slider_font_size_57 { font-size: 57px; line-height: 61px; }
.templ_wechselbilder .slideshow_text .slider_font_size_58 { font-size: 58px; line-height: 62px; }
.templ_wechselbilder .slideshow_text .slider_font_size_59 { font-size: 59px; line-height: 63px; }
.templ_wechselbilder .slideshow_text .slider_font_size_60 { font-size: 60px; line-height: 64px; }

/*--------------------------------------------------------------------------------*/