.tx-ttaddress h3 {
	/*color: #E30012;*/
}

.tx-ttaddress h4 {
	margin-top: 20px;
}

#contentWrap .tx-ttaddress ul {
	margin: 0;
	position: relative;
}

#contentWrap .tx-ttaddress ul.contactInfo li {
    display: block;
    list-style: none;
    margin: 0;
}
.nrwimage {
    max-width:470px;
    max-height:470px;
}

.nrwimage .label_kreis {
    display:none;
}

.nrwimage .regierungsbezirk:hover {
    fill:#ff7a85;
    cursor:pointer;
}

.nrwimage .regierungsbezirk.highlight {
    border:1px solid #000;
    fill:#ffe000;

}
.nrwimage .label_kreis.highlight {
    display:block;
}
.nrwimage .label_kreis.highlight path{
    fill:#E30012;
}

#contentWrap .tx-ttaddress ul.contactInfo li a i {
    color: #5B686F;
}

.tx-ttaddress ul.contactInfo li i {
    display: inline-block;
    width: 26px;
    text-align: center;
    padding-right: 4px;
}

.tx-ttaddress ul.list-inline.social {
	position: relative;
}

#contentWrap .tx-ttaddress ul.list-inline li {
	display: inline-block;
	margin-bottom: 0;
}

.tx-ttaddress ul.list-inline li i {
    display: inline-block;
    font-size: 1.6em;
    padding: 2px 15px 0 0px;
}

.tx-ttaddress .klappelemente ul {
    margin-left: 20px;
}

.tx-ttaddress .klappelemente .item.highlight,
.tx-ttaddress .klappelemente .headerElem {
    background: transparent;
}

.tx-ttaddress a {
    color: #5B686F;
}

.tx-ttaddress a:hover {
    color: #E30012;
}

.frame {
   width: 100%;
   margin: 0 auto;
   max-width: 1365px;
   /* padding: 0 20px; */
   position: relative;  
}

.tt_address_list {
    margin-top: 20px;
    margin-left: 0px;
    margin-right: 0px;
    display: flex;
    flex-flow: row wrap;
}

@media (min-width: 1031px) {
    .contentRight .tt_address_list .vcard {
        width: 100%;
        margin: 0 0 30px;
    }
}

.contentRight .tt_address_list .vcard:last-child {
    margin: 0px;
}

.tt_address_list .vcard {
    /* float: left; */
    margin: 0 1% 2%;
    width: 31.3333%;
    position: relative;
}

.tt_address_list .vcard .position {
    font-family: 'themixextraboldplain', sans-serif;
    font-size: 0.8em;
    letter-spacing: 0.08em;
    /*text-transform: uppercase;*/
    line-height: 1.5em;
    margin: 10px 0;
}

.tt_address_list address {
    font-style: normal;
}

.tt_address_list address p {
    line-height: 1.5em;
}

.tt_address_list .info i {
    position: absolute;
    width: 20px;
    display: block;
    text-align: center;
    top: 0;
}

.tt_address_list .info span{
    padding-left: 30px;
    position: relative;
}

.tt_address_list .divider {
    display: none;
    float: left;
    width: 100%;
}

.tt_address_list .divider.w3 {
    display: block;
}

.tt_address_list ul.f3-widget-paginator {
    float: left;
    width: 100%;
}

.tt_address_list ul.f3-widget-paginator li {
    display: inline-block;
    margin: 0 1%;
}
@media (max-width: 1030px) {
    #contentWrap .tt_address_list .vcard {
        margin: 0 2% 2%;
        width: 46%;
    }
}

/* --------- komplette Spalte --------- */
@media (max-width: 800px) {
    #contentWrap.fullsize .tt_address_list {
        margin-left: -2%;
        margin-right: -2%;
    }
    #contentWrap.fullsize .tt_address_list .vcard {
        margin: 0 2% 2%;
        width: 46%;
    }
    #contentWrap.fullsize .tt_address_list .divider.w3 {
        display: none;
    }
    #contentWrap.fullsize .tt_address_list .divider.w2 {
        display: block;
    }
}

@media (max-width: 700px) {
    #contentWrap.fullsize .tt_address_list {
        margin-left: 0%;
        margin-right: 0%;
    }

    #contentWrap.fullsize .tt_address_list .vcard {
        margin: 0 0 30px;
        width: 100%;
    }

    #contentWrap.fullsize .tt_address_list .divider.w2 {
        display: none;
    }
}

/* --------- // komplette Spalte --------- */

/* --------- Linke Spalte --------- */
@media (max-width: 1120px) {
    #contentWrap .tt_address_list {
        margin-left: -2%;
        margin-right: -2%;
    }
    #contentWrap .tt_address_list .vcard {
        margin: 0 2% 2%;
        width: 46%;
    }
    #contentWrap .tt_address_list .divider.w3 {
        display: none;
    }
    #contentWrap .tt_address_list .divider.w2 {
        display: block;
    }
}

@media (max-width: 800px) {
    #contentWrap .tt_address_list {
        margin-left: 0%;
        margin-right: 0%;
    }
    #contentWrap .tt_address_list .vcard {
        margin: 0 0 30px;
        width: 100%;
    }
    #contentWrap .tt_address_list .divider.w2 {
        display: none;
    }
}
/* --------- // Linke Spalte --------- */

.row.maps img {
    margin: 0 0 5px;
}

/* --------- vcards Klapp-Elemente --------- */
.vcardsKlappWrap {
    position: relative;
    float: left;
    width: 100%;
}

.tt_address_list .vcardsKlappWrap .vcard.item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.tt_address_list .vcardsKlappWrap .addressImage {
    width: 30%;
    float: right;
}

.tt_address_list .vcardsKlappWrap .undSonst {
    margin: 20px 0 0;
}

.tt_address_list .vcardsKlappWrap .vcard .position {
    margin: 0;
}

.tt_address_list .vcardsKlappWrap .space {
    margin: 0 0 10px;
}

.tt_address_list .vcardsKlappWrap .klappelemente .item {
    margin-top: 12px !important;
}

.tt_address_list .vcardsKlappWrap .klappelemente .headerElem .icon {
    width: 27px;
    height: 27px;
    line-height: 27px;
    background-color: #5B686F;
}

.tt_address_list .vcardsKlappWrap .klappelemente .highlight .headerElem .icon {
    background-color: #E30012;
}

.tt_address_list .vcardsKlappWrap .klappelemente .headerElem i.fa {
    top: 12px;
    left: 7px;
    width: 13px;
    height: 3px;
    line-height: 28px;
}

.tt_address_list .vcardsKlappWrap .klappelemente .headerElem i.fa:after {
    width: 13px;
    height: 3px;
}

.tt_address_list .vcardsKlappWrap .klappelemente .headerElem {
    padding-top: 0;
    padding-bottom: 11px;
}

/* first-Plus */
.vcardsKlappWrap .bezirk_wrap {
    margin-bottom: 40px;
    margin-top: -17px;
}

.vcardsKlappWrap .bezirkHeader .icon {
    position: absolute;
    top: 0;
    left: 0;
    /*background-color: #E30012;*/
    background-color: #5B686F;
    color: #fff;
    width: 37px;
    height: 37px;
    line-height: 37px;
    text-align: center;
}

.vcardsKlappWrap .bezirkHeader.highlight .icon {
    background-color: #E30012;
}

.vcardsKlappWrap h3.bezirkHeader {
    padding: 4px 0 25px 50px;
    position: relative;
    margin: -10px 0 30px;
}

.vcardsKlappWrap .bezirkHeader i.fa {
    position: absolute;
    top: 16px;
    left: 10px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    background-color: #fff;
    width: 17px;
    height: 4px;
    line-height: 37px;
    text-align: center;
}

.vcardsKlappWrap .bezirkHeader i.fa:after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    background-color: #fff;
    width: 17px;
    height: 4px;
    line-height: 37px;
    text-align: center;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

.vcardsKlappWrap .bezirkHeader.highlight i.fa {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.vcardsKlappWrap  h3.bezirkHeader {
    color: #5B686F;
    border-bottom: 1px solid #BCBABA;
}

.vcardsKlappWrap  h3.bezirkHeader.highlight {
    color: #E30012;
    border-color: #E30012;
}

.vcardsKlappWrap .elem2 {

}
/* first-Plus */
/* --------- // vcard Klapp-Elemente --------- */

.nrwdot {
    position: absolute;
    background-color:#ffe000;
    border-radius:10px;
    width:10px;
    height:10px;
    display:block;
}
.nrwdot.active {
    background: #fff;
    animation-name: colorChange;
    animation-duration: 1s;
    animation-iteration-count: infinite;
}

.nrwdot.active:after {
    content: "";
    display: block;
    width: 19px;
    height: 19px;
    border: 2px solid #fff;
    margin: -6px;
    border-radius: 50%;

    animation-name: pulse;
    animation-duration: 1s;
    animation-iteration-count: infinite;
}

@keyframes colorChange {
    0% {
        color: rgb(255, 224, 0);
    }
    100%; {
        color: #fff;
    }
}

@keyframes pulse {
    0% {
        width: 4px;
        height: 4px;
        margin: 0px;
        border: 2px solid yellow;
    }
    100%; {
        width: 19px;
        height: 19px;
        margin: -6px;
        border: 2px solid #fff;
    }
}