/* Allgemeine CSS-Datei */
body {
    width: 980px;
    margin: 0; padding: 0;
    font-size: 10px; font-family: Arial, Helvetica, sans-serif;
    color: #000000; background: #efefef;
}

img {
    border: none;
}

strong {
    font-weight: bold;
}

form {
    margin: 0px; padding: 0px;
}

h1,h2,h3,h4,h5,h6,p,address,table,td, ul,ol,div,a {
    margin: 0; padding: 0;
    font-family: Arial, Helvetica, sans-serif; font-size: 11px; font-weight: normal; font-style: normal;
}

a:link,
a:visited {
    color: #d50000;
    text-decoration: underline;
    font-weight: normal;
}

a:hover,
a:active,
a:focus {
    color: #d50000;
    text-decoration: none;
    font-weight: normal;
}

div.cleaner {
    clear: both;
    height: 1px; overflow: hidden;
}

.bild_links_oben {
	float: left;
	margin: 0 10px 10px 0;
}

.bild_rechts_oben {
	float: right;
	margin: 0 0 10px 10px;
}


/****************************************/
/*Container*/
/****************************************/

#container_head {
    position: relative;
    height: 200px; width: 980px;
    background: url('../../cms_images/maler/bg_head.png') left bottom repeat-x #ffffff;
    border-bottom: 10px solid #002491;    
}

#container_content {
    position: relative;
    width: 980px;
    height: auto;
    background: url("../../cms_images/maler/bg_content.png") repeat-y top left #ffffff;
    color: #000000;
    border-bottom: 10px solid #002491;
}

    #left {
        position: relative;
        width: 220px; height: auto; min-height: 100px;
        float: left;
        padding-bottom: 60px;
        padding-top: 40px;
        
    }
    
    #main {
        position: relative;
        width: 750px; height: auto; min-height: 100px;
        padding: 0 0 50px 0;
        float: left;
    }
    
        div.main_khsstart {
            width: 450px !important;
        }
    
    #right {
        position: relative;
        width: 290px; height: auto; min-height: 100px;
        padding-top: 13px;
        float: left;
    }
    
    div.padding_20 {
        padding: 0px 20px;
    }


/****************************************/
/*Head*/
/****************************************/

#logo {
    position: absolute;
    left: 25px; top: 60px;
}

#claim {
    position: absolute;
    left: 240px; top: 80px;
    font-size: 16px; color: #333333;
    line-height: 100%; font-weight: bold;
}

    #claim span {
        font-size: 11px;
    }

#topnavi {
    list-style-type: none;
    position: absolute;
    top: 20px; right: 30px;
}

    #topnavi li {
        text-align: right;
        margin-bottom: 2px;
    }

        #topnavi li a:link,
        #topnavi li a:visited {
            color: #333333;
            font-size: 11px; font-weight: bold;
            text-decoration: none;
        }
        
        #topnavi li a:hover,
        #topnavi li a:active,
        #topnavi li a:focus,
        #topnavi li.li_selected a:link,
        #topnavi li.li_selected a:visited,
        #topnavi li.li_selected a:hover,
        #topnavi li.li_selected a:active,
        #topnavi li.li_selected a:focus {
            color: #d50000;
            font-size: 11px; font-weight: bold;
            text-decoration: none;
        }

#mainnavi {
    position: absolute;
    bottom: 0px;
    left: 220px;
    list-style-type: none;
    z-index: 3;
}

    #mainnavi li {
        float: left;
        width: 175px;
        max-width: 320px;
        padding: 0 5px 0 5px;
    }
    
    #mainnavi li.li_selected {
        background: #002491;
    }

    #mainnavi li a:link,
    #mainnavi li a:visited {
        display: block;
        font-size: 14px;
        font-weight: normal;
        text-align: center;
        margin: 10px 0 0;
        padding: 5px 0;
        background-color: #ffffff;
        border-top: 1px solid #002491;
        border-left: 1px solid #002491;
        border-right: 1px solid #002491;
        color: #333333;
        text-decoration: none;
        overflow: hidden;
    }

    #mainnavi li a:hover,
    #mainnavi li a:active,
    #mainnavi li a:focus {
        display: block;
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        margin: 10px 0 0;
        padding: 5px 0;
        background-color: #ffffff;
        border-top: 1px solid #002491;
        border-left: 1px solid #002491;
        border-right: 1px solid #002491;
        color: #002491;
        text-decoration: none;
        overflow: hidden;
    }

    #mainnavi li.li_selected a:link,
    #mainnavi li.li_selected a:visited,
    #mainnavi li.li_selected a:hover,
    #mainnavi li.li_selected a:active,
    #mainnavi li.li_selected a:focus {
        display: block;
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        margin: 0;
        padding: 8px 0 13px;
        background-color: #002491;
        border: none;
        color: #ffffff;
        text-decoration: none;
        overflow: hidden;
    }

/****************************************/
/*container_content*/
/****************************************/                 

     
        
        
/****************************************/
/*left*/
/****************************************/         

#subnavi {
    list-style-type: none;
    margin: 10px 0 0;
    padding: 0;
}

    #subnavi li {
        background: #002491;
        margin-bottom: 5px;
        padding: 7px 0 7px 20px;
    }

    #subnavi li.li_selected {
        background: #d50000;
        margin-bottom: 5px;
        padding: 7px 0 7px 20px;
    }

    #subnavi li a:link,
    #subnavi li a:visited {
        font-size: 11px;
        font-weight: bold;
        color: #ffffff;
        text-decoration: none;
    }

    #subnavi li a:hover,
    #subnavi li a:active,
    #subnavi li a:focus {
        font-size: 11px;
        font-weight: bold;
        color: #d50000;
        text-decoration: none;
    }

    #subnavi li.li_selected a:link,
    #subnavi li.li_selected a:visited,
    #subnavi li.li_selected a:hover,
    #subnavi li.li_selected a:active,
    #subnavi li.li_selected a:focus {
        font-size: 11px;
        font-weight: bold;
        color: #ffffff;
        text-decoration: none;
    }

#left hr {
    margin: 20px; padding: 0;
    height: 2px;
    border: none;
    border-bottom: 1px solid #ffffff;
    color: #002491; background: #002491;
}    

#left #address_information,
#left #openingtimes {
    margin: 20px 0 0;
    padding: 0 20px;
    font-size: 11px;
    color: #333333;
}

    #left #address_information address,
    #left #address_information p,
    #left #openingtimes address,
    #left #openingtimes p {
        padding: 0 0 10px;
        font-size: 11px;
    }

    #left #address_information hr,
    #left #openingtimes hr {
        margin: 10px 0;
    }

/*templatemodule.member_login.php*/
/****************************************/       

#left div.templatemodule_loginform,
#left div.templatemodule_memberinfo {
    padding: 10px 20px;
    font-size: 11px;
    color: #333333;
}

    #left div.templatemodule_loginform #login_name,
    #left div.templatemodule_loginform #login_passwd {
        color: #999999;
        width: 180px;
        border: 1px solid #999999;
        font-size: 11px;
    }
    
    #left div.templatemodule_memberinfo a img {
        vertical-align: middle;
        padding-right: 5px;
        background: #ffffff;
    }

/*templatemodule.search.php*/
/****************************************/ 
/*    
#left div.templatemodule_search {
    padding: 0px 20px 10px;
    font-size: 11px;
    color: #4a4a4a;
}

    #left div.templatemodule_search #templatemodule_search_name {
        color: #999999;
        width: 140px;
        border: 1px solid #999999;
        font-size: 11px;
        float: left;
        margin-right: 22px;
    }
    
    
/****************************************/
/*main*/
/****************************************/  

#main div.contentbox_1 {
	clear: both;
}

#main h1 {
    font-size: 16px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 30px 0 20px; padding: 0 0 5px 0;
    border-bottom: 1px solid #d50000;
}

#main h2 {
    font-size: 14px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 20px 0 10px; padding: 0 0 5px 0;
    border-bottom: 1px solid #002491;
}

#main h3 {
    font-size: 11px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 10px 0 0; padding: 0 0 5px 0;
    border-bottom: 1px solid #cccccc;
}

#main h4,
#main h5,
#main h6 {
    font-size: 11px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 10px 0 0; padding: 0 0 5px 0;
}

#main p,
#main address {
    font-size: 11px; line-height: 150%; font-weight: normal;
    color: #333333;
    margin: 0; padding: 0 0 10px 0;
}

#main ul,
#main ol {
    list-style-type: square;
    font-size: 11px; line-height: 150%; font-weight: normal;
    color: #333333;
    margin: 0 0 10px 20px; padding: 0;
}

#main hr {
    margin: 5px 0 10px; padding: 0;
    clear: both;
    height: 1px;
    border: none;
    background-color: #d50000; color: #d50000;
}

#main a:link,
#main a:visited {
    font-size: 11px;
    color: #d50000;
    text-decoration: underline;
    font-weight: normal;
}

#main a:hover,
#main a:active,
#main a:focus {
    font-size: 11px;
    color: #d50000;
    text-decoration: none;
    font-weight: normal;
}

#main table {
    width: 100%;
    font-size: 11px;
    border-spacing: 0;
}

    #main table tr td {
        padding: 2px;
        font-size: 11px;
        vertical-align: top;
    }
    
        #main table tr td.td_grey {
            padding: 10px 5px;
            background-color: #dfdfdf;
            width: 240px;
        }
        
        #main table tr td.td_photo {
            width: 170px;
            padding: 0px;
        }
    
        #main table tr td h1,
        #main table tr td h2,
        #main table tr td h4,
        #main table tr td h5,
        #main table tr td h6,
        #main table tr td p,
        #main table tr td address {
            padding: 0; margin: 0;
        }
        
        #main table tr td h3 {
            border: none;
            padding: 0 0 2px 0;
            margin: 0;
        }
        
        #main table tr td ul {
            margin: 5px 0 5px 20px;
            padding: 0;
            font-size: 11px;
        }
        
        #main table tr td li {
            padding: 0 0 2px 0;
            font-size: 11px;
        }
        

        #main table.tbl_termine,
        #main table.tbl_partner {
            font-size: 11px;
            border-spacing: 1px;
            width: 100%;
        }

            #main table.tbl_termine tr th {
                background-color: #dfdfdf;
                color: #000000;
                text-align: left;
                padding: 3px 5px;
            }

            #main table.tbl_termine tr td {
                padding: 3px 5px;
                border-top: 1px solid #dfdfdf;
            }

            #container_content #main table.tbl_partner tr td {
                padding: 5px;
                border-top: 1px solid #dfdfdf;
                vertical-align: middle;
            }

/*modul.innung_members.php*/
/****************************************/  

div.contentbox_innung_member div.div_infobox {  
    clear: both;     
    background: #efefef;
    padding: 15px 5px; margin-top: 20px;
    height: auto;
    border-top: 3px solid #ffffff;
    color: #333333;
}

    div.contentbox_innung_member div.div_infobox_left {
        width: 50%; 
        float: left; 
        height: auto;
    }

    div.contentbox_innung_member div.div_infobox_right {
        width: 50%; 
        float: left; 
        height: auto;
    }

div.contentbox_innung_member div.div_pager a:link,
div.contentbox_innung_member div.div_pager a:visited,
div.contentbox_innung_member div.div_pager a:hover,
div.contentbox_innung_member div.div_pager a:active,
div.contentbox_innung_member div.div_pager a:focus {
    text-decoration: none !important;
    color: #d50000 !important;
}

div.contentbox_innung_member div.div_pager a.a_selected {
    color: #333333 !important;
}  

/* modul.gglmaps_innung_members.php */
/************************************************/ 


div.contentbox_gglmaps_innung_members div.div_search_form {
    background: #efefef;
    padding: 10px 10px; margin: 20px 0;
}

div.contentbox_gglmaps_innung_members div.div_search_form div.div_input {
    margin-bottom: 10px;
}

div.contentbox_gglmaps_innung_members div.div_search_form label {
    color: #333333;
    font-weight: bold;
    font-size: 11px;
    display: block; float: left;
    width: 140px;
}

div.contentbox_gglmaps_innung_members div.div_search_form input {
    color: #000000; background-color: #ffffff;
    font-size: 11px;
    width: auto;
    border: 1px solid #cccccc;
} 

    div.contentbox_gglmaps_innung_members div.div_search_form input.input_submit {
        border: 1px solid #cccccc;
        background: #ffffff; color: #d50000;
        margin-left: 140px;
        font-weight: bold;
    }
    
/* modul.contact_form.php */
/************************************************/ 

div.contentbox_contactform {
    background: #efefef;
    padding: 20px 10px;
    width: 450px;
}

div.contentbox_contactform div.div_input {
    margin-bottom: 10px;
}

div.contentbox_contactform label {
    color: #000000;
    font-weight: bold;
    font-size: 11px;
}

div.contentbox_contactform div.dbl_label {
    color: #000000;
    font-weight: bold;
    font-size: 11px;
    display: block; float: left;
    width: 140px;
}

    div.contentbox_contactform label.label_input {
        display: block; float: left;
        width: 140px;
    }
    
    div.contentbox_contactform label.label_textarea {
        display: block; float: left;
        width: 140px;
        vertical-align: top;
    }
    
div.contentbox_contactform input {
    color: #000000; background-color: #ffffff;
    font-size: 11px;
    width: 300px;
    border: 1px solid #cccccc;
} 

div.contentbox_contactform select {
    color: #000000; background-color: #ffffff;
    font-size: 11px;
    border: 1px solid #cccccc;
} 

div.contentbox_contactform option {
    color: #000000; background-color: #ffffff;
    font-size: 11px;
}

    div.contentbox_contactform input.input_checkbox {
        width: auto;
        border: none;
        background: none;
        margin-right: 5px;
    }
    
    div.contentbox_contactform input.input_submit {
        border: 1px solid #cccccc;
        background: #ffffff; color: #d50000;
        margin-left: 140px;
        font-weight: bold;
    }

div.contentbox_contactform textarea {
    color: #000000; background-color: #ffffff;
    font-size: 11px;
    width: 300px;
    border: 1px solid #cccccc;
} 

div.contentbox_contactform div.div_input_error {
    border: 1px solid #ff0000;
    background: #fff0f0;
    width: 400px;
    padding: 0 20px;
    margin: 20px 0;
}

    div.contentbox_contactform div.div_input_error h3 {
        color: #ff0000 !important;
        margin-top: 10px !important;
        margin-bottom: 5px !important;
        border-bottom: 1px solid #ff0000 !important;
        font-style: italic !important;
    }
    
    div.contentbox_contactform div.div_input_error p {
        font-style: italic;
        color: #ff0000 !important;
    }


div.contentbox_contactform label.label_error {
    color: #ff0000;
}

div.contentbox_contactform input.input_error, 
div.contentbox_contactform textarea.input_error {
    border: 1px solid #ff0000;
}     
            
/****************************************/
/*right*/
/****************************************/                

#right h1 {
    font-size: 16px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 30px 0 20px; padding: 0 0 5px 0;
    border-bottom: 1px solid #d50000;
}

#right h2 {
    font-size: 14px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 20px 0 10px; padding: 0 0 5px 0;
    border-bottom: 1px solid #002491;
}

#right h3 {
    font-size: 11px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 10px 0 0; padding: 0 0 5px 0;
    border-bottom: 1px solid #cccccc;
}

#right h4,
#right h5,
#right h6 {
    font-size: 11px; line-height: 150%; font-weight: bold;
    color: #333333;
    margin: 10px 0 0; padding: 0 0 5px 0;
}

#right p,
#right address {
    font-size: 11px; line-height: 150%; font-weight: normal;
    color: #333333;
    margin: 0; padding: 0 0 10px 0;
}

#right ul,
#right ol {
    list-style-type: square;
    font-size: 11px; line-height: 150%; font-weight: normal;
    color: #333333;
    margin: 0 0 10px 20px; padding: 0;
}

#right hr {
    margin: 0; padding: 0;
    height: 1px;
    border: none;
    background-color: #d50000; color: #d50000;
}

#right a:link,
#right a:visited {
    font-size: 11px;
    color: #d50000;
    text-decoration: underline;
    font-weight: normal;
}

#right a:hover,
#right a:active,
#right a:focus {
    font-size: 11px;
    color: #d50000;
    text-decoration: none;
    font-weight: normal;
}

#right table {
    width: 100%;
    font-size: 11px;
    border-spacing: 0;
}

    #right table tr td {
        padding: 2px;
        font-size: 11px;
        vertical-align: top;
    }
    
/* modul.termien_teaser.php */
/************************************************/     
    
    
div.contentbox_termineteaser h2 {
    margin-bottom: 20px !important; 
}    

/* modul.fancy_gallery.php */
/************************************************/ 

div.contentbox_fancy_gallery div.container_thumbnail {
    float: left;
    height: 100px; width: 100px;
    margin: 0 20px 20px 0;
    background: #dfdfdf;
    text-align: center;
}