@font-face {
    font-family: 'opensans_regular';
    src: url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Regular-webfont.eot');
    src: url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Regular-webfont.woff') format('woff2'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Regular-webfont.ttf') format('woff'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Regular-webfont.svg#opensans_regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'opensans_bold';
    src: url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Bold-webfont.eot');
    src: url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Bold-webfont.woff') format('woff2'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Bold-webfont.ttf') format('woff'),
         url('/fileadmin/es_template/fonts/OpenSans/OpenSans-Bold-webfont.svg#opensans_bold') format('svg');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'roboto_condensed_regular';
    src: url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.eot');
    src: url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.woff2') format('woff2'),
         url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.woff') format('woff'),
         url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.ttf') format('truetype'),
         url('/fileadmin/es_template/fonts/Roboto-Condensed/robotocondensed-regular-webfont.svg#roboto_condensedregular') format('svg');
    font-weight: normal;
    font-style: normal;

}


BODY{
    color:#444;
    margin-bottom:40px;

    /* ----------------------- */
    font-family:opensans_regular;
    font-size:14px;
    /* ----------------------- */


    /* font-family:opensans_bold; */

    /* font-family:roboto_condensed_regular; */


}





/* c */

/* ALLG ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* Brakepoint-Sprünge vermeiden!!! */
.container {
    /* VOLLE BREITE CONTENT UND FOOT */
    width: 100%;
    max-width: 100%;
}



.nav-brand IMG{
     margin:2px 0 0 -15px;
 }

@media screen and (max-width:767px) {
    .nav-brand IMG{
        margin:4px 0 6px 0;
    }
}

/*
.jumbotron {
    padding: 5px 0 0 0px;
}
*/

/*
.container.maincontent > div.row > div.col-md-9{
    padding-left:25px;
    padding-right:25px;
}
*/



/* SIDENAV *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

.card{
    margin-bottom:67px;
    border-radius: 0;
    border: 1px solid rgba(0,0,0,.125);
    border-bottom:0;
    line-height:1.3;
}
.card-block{
    border: 0px solid #ccc;
    padding: 0;
    background-color: #ffffff;
    /*
    -webkit-box-shadow:  6px 8px 5px #aaa;
    -moz-box-shadow:  6px 8px 5px #aaa;
    box-shadow:  6px 8px 5px #aaa;
    */
}

/* LINK ~~~~~~~ */
a.nav-link{
    background-color:#fff;
    color:#000;
    border-bottom:1px solid #ddd;
}
a.nav-link:active,
a.nav-link:focus,
a.nav-link:hover{
    background-color:#f4f4f4;
    color:#000;
}
a.nav-link.current{
    background-color:#eee;
    color:#000;
    font-weight:normal;
}


/* NAV-PILLS/ITEM ~~~~~~~ */
.nav-pills .nav-item + .nav-item {
    margin-bottom:0 !important;
}

li.nav-item{
    padding:0 !important;
    margin:0 !important;
}

.nav-pills .nav-link {
    display: block;
    padding: .5em 1em;
    border-radius: 0;
}
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */




/* JUMBOTRON ------------------------ */

.jumbotron {
    line-height: 110%;
}
.jumbotron .container{
    background-color: transparent;
}




/* RAHMEN ---------------------------- */

.frame-greybox {
    border:1px solid #ccc;
    border-radius:6px;
    background: #f5f5f5;
    padding:14px 18px;
    color: #000;
    margin-bottom:16px;
}
.frame-greybox H2 {
    background-color: transparent;
    border-bottom: 0px solid #ccc;
    margin:0px 0px 6px 0px;
}
.frame-greybox H3 {
    background-color: transparent;
    border-bottom: 0px solid #ccc;
    margin:0px 0px 6px 0px;
}




body{
    padding-bottom: 0px;
    background-color:#ddd;
}

#pagewrap{
    max-width:1117px;
    margin: 0 auto;
    background-color: #fff;
    padding-bottom: 0px;

    padding-top: 18px;
    margin-top: 20px;

    border: 0px solid #fff;
    /*
    -webkit-box-shadow: 0px 10px 29px -10px rgba(0,0,0,1);
    -moz-box-shadow: 0px 10px 29px -10px rgba(0,0,0,1);
    box-shadow: 0px 10px 29px -10px rgba(0,0,0,1);
    */
}


/* TABELLE --------------------------- */

.es_content table.contenttable td{
    border:1px solid #aaa;
    padding:5px;
}



/* SCHRIFTGRÖSSE --------------------- */

.h2, h2 {
    font-size: 1.75rem;
    font-weight: 600;
    margin-top:24px;

    font-size: 1.55rem;
    font-weight: normal;
    margin-top:20px;
}

.h3, h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-top:18px;
}


/* FARBEN ---------------------------- */
.h2, h2 {
    color: #45aa72;
    color: #45aa72;
}

@media screen and (min-width: 768px) {
    .es_content {
        min-height: 300px;
        padding-bottom: 120px;
        padding-right: 40px;
        padding-left: 40px;
    }
}



.es_content a,
.es_content a:hover,
.es_content a:link,
.es_content a:visited,
.es_content a:active,
.es_content a:focus{
    color:#45aa72;
    font-weight:normal;
}


p strong{
    color: #000;
    font-weight:500;
}


/* --------------------------- */
/* TARIF-AUSWAHL ------------- */
/* --------------------------- */
@media screen and (min-width: 768px) {
    .es_content #c84 {
        padding-right: 40px;
        padding-left: 40px;
    }

    .es_content #c48 {
        padding-right: 40px;
        padding-left: 40px;
    }

    .es_content #c49 {
        padding-right: 40px;
        padding-left: 40px;
    }
}
/* --------------------------- */




/* -------------------------------------------------- */
/* KARTE --------------------- */
.page_40 .es_content{
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 0px;
}
.page_40 .col-md-12{
    padding-right: 0px;
    padding-left: 0px;
}
.page_40 div.container.rootline{
    display:none;
}
#c51{
/*  background-color: #dc0c15; */
    background-color: #e8e8e8;
}


/* KARTE --------------------- */
.page_49 .es_content{
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 0px;
}
.page_49 .col-md-12{
    padding-right: 0px;
    padding-left: 0px;
}
.page_49 div.container.rootline{
    display:none;
}
#c59{
    /* KARTE */
    background-color: #F4F4F4;
}
/* -------------------------------------------------- */



/* 44 Erste Suchseite ----------*/
.page_44 .liste_1 {display:none}
/* ---------------------------- */

/* 39 Ergebnisliste Suchseite */
/*
.page_39 .filterbox {display:none}s
*/

/* ---------------------------- */








/* --------------------------- */
/* ----NAVI ------------------ */
/* --------------------------- */

#main-menu {
    margin-top: 0em;
}

.main-menu-btn {
    display:none; /* <<<<<<<<<<<<<<<<<< ################################### */
}

.main-menu-btn {
    float: right;
    margin: 0 20px 0 5px;
    background-color: #45aa72;
    width: 62px;
    height: 47px;
    text-indent: 65px;
}

.main-menu-btn-icon{
    left: 10px;
}
.main-menu-btn-icon::after {
    content: '';
    top: 11px;
    left: 0px;
    background-color: #fff;
}
.main-menu-btn-icon::before {
    content: '';
    top: -11px;
    left: 0px;
    background-color: #fff;
}

.main-menu-btn-icon,
.main-menu-btn-icon::before,
.main-menu-btn-icon::after {
    height: 4px;
    width: 40px;
    background-color: #fff;
}
.main-menu-btn-icon{
    color:#fff;
}

.main-nav{
   background-color: #45aa72;
   border-bottom: 0px solid #999;
}
/* --------------------------- */
/* ---/NAVI ------------------ */
/* --------------------------- */


/* --------------------------- */
/* DROPDOWN TOP */
.btn-group .btn{
    margin-right:-15px;
    height: 38px;
    width: 66px;
    border: none;
    background-color: #45aa72;
    color:#fff;
    border-radius:0;
    margin-top:33px;
}

.hamb{
    background-color: #45aa72;
    text-align:center;
}
.hamb div {
/*    display:inline-block; */
    width: 31px;
    height: 3px;
    background-color: #fff;
    margin: 2px 0 5px 0;
}


/* PFEIL nach Ham */
#c22 .dropdown-toggle::after {
    display: none;
}



#c22 .btn-secondary.active,
#c22 .btn-secondary:active,
#c22 .open .btn-secondary.dropdown-toggle {
    color: #fff;
    background-color: #45aa72;
}

/* --------------------------- */
#c22 .dropdown-menu{
    padding: 15px;
    border-radius: 0rem;
    box-shadow: 7px 7px 9px rgba(0, 0, 0, 0.32);
    width: 310px;
    margin-right: -15px;
    color: #45aa72;
}
#c22 .dropdown-menu b{
    color: #333;
    font-weight: normal;
}
#c22 .dropdown-menu a{
    color: #45aa72;
/*    font-weight:600; */
    text-decoration:none;
}
#c22 .dropdown-backdrop{
    background-color: rgba(0, 0, 0, 0.20)
}
/* --------------------------- */






/*
@media screen and (min-width: 767px) {
    .jumbotron {
        border-bottom: 0px solid #ccc;
        padding: 8rem 2rem !important;
    }
    #pagewrap {
        padding-top: 30px;
    }
}

@media screen and (min-width: 1023px) {
    .jumbotron {
        border-bottom: 0px solid #ccc;
        padding: 0rem 2rem !important;
        height:283px;
        margin-bottom: 0.5rem;
    }
}
*/


@media screen and (min-width: 23px) {
    .jumbotron {
        border-bottom: 0px solid #ccc;
        padding: 0rem 0rem !important;
        padding-top: calc(100% * 25 / 112 ) !important; /* 1:1 Aspect Ratio */
        margin-top: 0px;
        margin-bottom: 0rem;
    }
}
.mainnav {
    border: 0px solid #999;
    padding-top:0px;
/*  height:71px; */
/*  background-image:url(''); */
/*  background-size: 7px 72px; */
}
.nav-brand IMG{
    margin: 1px 0 0 0;
    /* height: 70px; */
}

.main-nav {
    background-color: transparent;
}

/*
.main-nav .container {
    background-color: transparent;
    background-color:url('https://asl01.index01.de/fileadmin/es_template/LOGOZEILE_HG.png');
}
*/




/* LOGIN-FORM */
#c8 LABEL{
    width:110px;
}




/* Fußzeile */
.pagefooter{
/*  background-color: #45aa72;*/
    color:#777;
    font-weight:bold;
    font-size:12px;

    margin: 0 -15px;
    padding: 10px 30px 0 30px;
}
.pagefooter a{
    color:#777;
    text-decoration:none;
    font-size:12px;
}

/* Fußzeilentext */
#c19{
    padding-top:10px;
/*    font-weight:bold;*/
    font-size:16px;
}

/* HOME */
#c55{
    padding: 0 5% 0 5%;
    color: #45aa72;
    margin-top: -40px;
}

/* TOP-BACKLINK */
.btn_back {
    float:right;
    font-weight:bold;
    color:#fff;
    margin-top:7px;
}
.btn_back a{
    font-weight:bold;
    color:#fff;
    text-decoration:none;
    padding:3px 5px 3px 5px;
    border:1px solid #fff;
}
.btn_back button{
    font-weight: normal;
    color: #45aa72;
    text-decoration: none;
    padding: 2px 5px 3px 5px;
    border: 1px solid #45aa72;
    border-radius: 3px;
    background-color: #fff;
    padding-bottom: 1px;
    margin-top: 31px;
    line-height: 160%;
}


/* BOTOTM PBUTTON */
/* TOP-BACKLINK */
.btn_back_bottom {
    /*float:right;*/
    font-weight:bold;
    color:#fff;
    margin-top:7px;
    padding-left:15px;
}
.btn_back_bottom a{
    font-weight:bold;
    color:#fff;
    text-decoration:none;
    padding:3px 5px 3px 5px;
    border:1px solid #fff;
}
.btn_back_bottom button{
    font-weight:normal;
    color:#fff;
    text-decoration:none;
    /*padding:3px 5px 3px 5px;*/
    border:1px solid #45aa72;
    border-radius: 3px;
    background-color: #45aa72;
    padding-bottom:1px;
    margin-top: 31px;
    line-height:220%;
}


.page_44 .col-md-1,
.page_44 .col-md-2,
.page_44 .col-md-3,
.page_44 .col-md-4,
.page_44 .col-md-5,
.page_44 .col-md-6,
.page_39 .col-md-1,
.page_39 .col-md-2,
.page_39 .col-md-3,
.page_39 .col-md-4,
.page_39 .col-md-5,
.page_39 .col-md-6 {
    padding-right: 5px;
    padding-left:  0px;
}
.page_44 .form-check + .form-check,
.page_39 .form-check + .form-check {
    margin-top: 0.2rem;
}
.page_44 .form-check,
.page_39 .form-check{
    margin-top:    0.2rem;
    margin-bottom: 0.2rem;
}
.page_44 .filter_1,
.page_39 .filter_1 {
    padding-top:    0px;
    padding-bottom: 8px;
}




.tx-srfeuserregister-pi1 h4 {
    color: #45aa72 !important;
}

.tx-srfeuserregister-pi1 dt {
    width: 30% !important;
}
.tx-srfeuserregister-pi1 dd {
     width: 50% !important;
}

.rech_empf {
    width: 100%;
}
.rech_empf .tx-srfeuserregister-pi1 dt {
    width: 30% !important;
}
/*
.rech_empf .tx-srfeuserregister-pi1 dd {
    width: 70% !important;
}
*/







#pagewrap{
    padding-top:0px;
}
.jumbotron{
    display:none;
}


/*
#mainnav_wrap {
    position: fixed;
    top: 0;
    width: 100%;
    transition: position 0.8s;
    transition: top 0.8s;
}
#mainnav_wrap {
    max-width:1117px;
    border-bottom: 0px solid #e7dfce;
    z-index: 3000;
    background: transparent;
}

#mainnav_wrap{
    -webkit-box-shadow: 0px 7px 10px 0px rgba(0,0,0,0.2);
    -moz-box-shadow:    0px 7px 10px 0px rgba(0,0,0,0.2);
    box-shadow:         0px 7px 10px 0px rgba(0,0,0,0.2);

}
*/









a.btn._btn-primary.collapsed::before{
    content: "";
}
a.btn._btn-primary::before{
    content: " ";
}

.plus{color:#aaa;}
.collapsed .plus{color:#aaa;}


._btn-primary .minus{color:#ccc; display:none;}
._btn-primary .collapsed .minus{color:#000; display:inline-block;}



/* ANMELDUNG */
.tx-felogin-pi1 LEGEND{
    display:none;
}
.tx-felogin-pi1 div{
    margin-bottom:7px;
}




.span_1_of_2 p{
    text-align:justify;
    hyphens:auto;
}



/* 50-50 INNERER ABSTAND */
/* LINKS */
.col.span_1_of_2{
    border-left:  0px solid #ccc;
    border-right: 0px solid #777;
    padding-left: 0px;
    padding-right:15px;
}
/* RECHTS */
.col.span_1_of_2 + .col.span_1_of_2{
    border-left:  0px solid #ccc;
    border-right: 0px solid #777;
    padding-left: 15px;
    padding-right:0px;
}
/* 50-50 INNERER ABSTAND */




/* REGISTRIEREN BUTTON */
.tx-srfeuserregister-pi1 input{
    padding:3px 7px 5px 7px !important;
    font-weight:normal;
    border-radius: 3px;
}

input.tx-srfeuserregister-pi1-submit{
    background-color: #45aa72;
    color:#fff;
    border:none;
}


.tx-srfeuserregister-pi1 input[type="submit"],
.tx-felogin-pi1 FORM INPUT[type="submit"]{
    background-color: #45aa72;
    color:#fff;
    border:none;
    padding:3px 7px 5px 7px !important;
    font-weight:normal;
    border-radius: 3px;
}

.tx-felogin-pi1 h3{
    font-weight:600;
    color: #45aa72;
}

.tx-felogin-pi1 LABEL,
.page_9 #c8 .tx-felogin-pi1 LABEL{
    width:130px;
}



/* ACCORDEON A */
.accordion {
    background: linear-gradient(to bottom right, white, #F8F8F8);
    max-width: 400px;
    background: white;
    margin: 0 auto;
    box-shadow: 0 15px 20px -15px rgba(0, 0, 0, 0.3), 0 35px 50px -25px rgba(0, 0, 0, 0.3), 0 85px 60px -25px rgba(0, 0, 0, 0.1);
}

.accordion-header {
    border-bottom: 1px solid #DDE0E7;
    color: #2a313a;
    cursor: pointer;
    font-weight: 700;
    padding: 1.5rem;
}

.accordion-header:hover {
    background: #F6F7F9;
}

.accordion-content {
    display: none;
    border-bottom: 1px solid #DDE0E7;
    background: #F6F7F9;
    padding: 1.5rem;
    color: #4a5666;
}

.accordion-header::before {
    content: '';
    vertical-align: middle;
    display: inline-block;
    width: .75rem;
    height: .75rem;
    border-radius: 50%;
    background-color: #B1B5BE;
    margin-right: .75rem;
}

.active.accordion-header::before {
    background-color: #FC6468;
}

/* ENDE ACCORDEON A */


input[type="submit"],
.tx-srfeuserregister-pi1 input[type="submit"],
.tx-felogin-pi1 FORM input[type="submit"] {
     cursor: pointer;
 }


.addbox{float:right}


/* mob */
@media screen and (max-width: 768px) {
    .es_content {
        padding-right: 10px;
        padding-left: 10px;
    }
    .container {
        padding-left: 5px;
        padding-right:5px;
    }
    .col.span_1_of_2{
        padding-left: 0px;
        padding-right:0px;
    }
    .col.span_1_of_2 + .col.span_1_of_2 {
        padding-left: 0px;
        padding-right:0px;
    }



    .addbox{display:none !important;}
    .add{display:none !important;}

}

@media screen and (max-width: 400px) {
    .nav-brand IMG {
        margin: 6px 0 0 0;
        height: 60px;
        width: auto;
    }
    /*FOOTER*/
    #c19 {
        font-weight: bold;
        font-size: 14px;
    }
}


.btn.btn-default{
    background-color: #45aa72;
}
a.btn.btn-default{
    color:#fff;
}


@media screen and (max-width: 767px) {
    .img_wrap img {
        max-width:180px;
        float:left;
        margin: 5px;
    }
    #kontakt_button{
        margin-top:20px;
    }
    .img_block {
        padding-left: 10px;
    }
}

.form-check.reset{
    margin-left:10px !important;
/*    background-color: #a4a4a4 !important;*/
}



@media screen and (max-width: 768px) {
    .card{
        margin:0px;
    }
}

.container.maincontent{
    margin-top:0px;
}


/* WENN ALS IFRAME VERWENDET */
body{
    padding:0;
    margin:0;
    background-color: #fff;
}
#pagewrap {
    max-width: 100%;
    border:none;
    margin-top:0;
}


.tx-felogin-pi1 FORM input {
    margin-bottom: 10px;
    padding: 4px;
    border: 1px solid #45aa72;
    border-radius: 5px;
    width:270px;
}



label{
    width:130px;
}