@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Roboto:400,700,900');
/*
	font-family: 'Roboto', sans-serif;
*/

* { margin: 0; padding: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-text-size-adjust: none; font-weight: normal; }


img { border:none; max-width: 100%; height: auto; }
.ce-gallery img:not([src$=".svg"]){ width: 100%;  }


html, body { font-family: 'Roboto', sans-serif; font-weight: 400; height: 100%; }
html{ overflow-y: scroll; }


:focus { outline: none; }
a[href^=tel] { color: inherit; text-decoration: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; }
h1, h2, h3, h4, h5 { font-weight: 400; }
fieldset { border: none; }
iframe { max-width: 100%; }


select{ border-radius: 0; }
textarea,input[type=text],input[type=input],input[type=email],select { font-family: 'Roboto', sans-serif; -webkit-appearance: none; border-radius: 0; }
::-webkit-input-placeholder { color: #e5e5e5; } .parsley-error::-webkit-input-placeholder { color: red; }
:-moz-placeholder { color: #e5e5e5; opacity: 1; } .parsley-error:-moz-placeholder { color: red; opacity: 1; }
::-moz-placeholder { color: #e5e5e5; opacity: 1; } .parsley-error::-moz-placeholder { color: red; opacity: 1; }
:-ms-input-placeholder { color: #e5e5e5; } .parsley-error:-ms-input-placeholder { color: red; }


b, strong { font-weight: 700; }
a b, a strong { font-weight: 700; }


hr { height: 1px; border-width: 1px 0 0 0; border-style: solid; border-color: #000000; }


a { color: inherit; text-decoration: none; }

.text-left, .ce-headline-left { text-align: left; }
.text-right, .ce-headline-right { text-align: right; }
.text-center, .ce-headline-center { text-align: center; }
.text-justify { text-align: justify; }


/* buttons */
#naviMain ul.content a.contact { padding: 2px 15px; border: 1px solid #0065ad; font-weight: 400; border-radius: 4px; }
/*#naviMain li.layout2 ul.content a.contact { border: 1px solid #000; }*/
#content .tx-powermail .powermail_fieldwrap_type_submit input,
.button { background-color: transparent; border: 1px solid #0065ad; padding: 5px 15px; cursor: pointer; border-radius: 4px; display: inline-block; }
.button:hover, #content a.button:hover { background-color: #0065ad; color: #FFF; text-decoration: none; }
.button:after { content:''; font-family: Verdana, Arial, sans-serif; } /* safari line-height hack */


/* displays */
main, header, footer, nav, section, article { display: block; }


/* limiters */
.inner, #naviMain > ul,
.inner-1140 { max-width: 1140px; margin: 0 auto; }
#naviMain > ul > li > ul > li,
.inner-1160 { max-width: 1160px; margin: 0 auto; }


/* clearer */
.clear { line-height: 0; font-size: 0; height: 0; text-indent: -999px; clear: both; }
#footer:after, #header:after, #content:after, #header > .inner:after, #naviMain > ul:after, #contact .tx-powermail .powermail_fieldwrap:after, #content .tx-powermail .powermail_fieldwrap:after, #naviMain > ul > li > ul > li:after,
.row:after { clear: both; content: ''; display: table; }
nav ul, .frame-type-menu_subpages ul,
#content ul { list-style: none; }


/* effects */
#naviMain a, #naviMain ul, #naviTop a, #content a, .mobicon span, #naviMain > ul > li > ul > li > ul > li, .swiper-pagination .swiper-pagination-bullet, #contact .tx-powermail .powermail_fieldwrap_type_submit input, #contact .tx-powermail .powermail_fieldwrap_type_reset input, #content .tx-powermail .powermail_fieldwrap_type_submit input, #content .tx-powermail .powermail_fieldwrap_type_reset input, .tx-indexedsearch-search-submit input,
.effect { -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }


/* font-sizes */
.size-16, #tx-indexedsearch-searchbox-sword, #naviTop { font-size: 16px; }
.size-18, html, body, #contact .tx-powermail .powermail_fieldwrap input, #contact .tx-powermail .powermail_fieldwrap textarea, #content .tx-powermail .powermail_fieldwrap input, #content .tx-powermail .powermail_fieldwrap textarea, .tx-indexedsearch-form label { font-size: 18px; }
.size-24, .tx-indexedsearch-search-submit input { font-size: 24px; }
.size-28,footer h3, #content h3, #content h4, footer h4, #naviMain > ul > li > ul > li > ul > li > a, #naviMain h3, #naviMain ul.content a.contact, #contact .tx-powermail .powermail_fieldwrap label, #contact .tx-powermail .powermail_fieldwrap_type_submit input, #contact .tx-powermail .powermail_fieldwrap_type_reset input { font-size: 28px; }
.size-48, #content h1, #content h2 { font-size: 48px; }


/* line-heights */
.line-height-1, .button { line-height: 1.2; }
.line-height-28, #content p, #naviMain p, #contact p, .frame-type-menu_subpages ul li, footer p, #naviTop a, #content .tx-powermail .powermail_fieldwrap label.powermail_label { line-height: 28px; }
.line-height-34, #content h3 { line-height: 34px; }

/* font-weights */
#content h3 { font-weight: 700; }

/* colors */
.tx-indexedsearch-search-submit input:hover, #contact, #contact .tx-powermail .powermail_fieldwrap_type_submit input, #contact .tx-powermail .powermail_fieldwrap_type_reset input, #content .tx-powermail .powermail_fieldwrap_type_submit input:hover, #content .tx-powermail .powermail_fieldwrap_type_reset input:hover, footer, footer a, #naviTop a, #naviMain > ul > li > ul > li > ul > li:hover > a, #naviMain ul.content a.button:hover, #naviMain > ul > li > ul > li > ul > li.active:hover > a, #naviMain > ul > li.layout1 > ul > li > ul > li:hover > a, #naviMain > ul > li.layout1 > ul > li > ul > li.active:hover > a, #naviMain > ul > li.layout2 > ul > li > ul > li:hover > a, #naviMain > ul > li.layout2 > ul > li > ul > li.active:hover > a, #naviMain > ul > li > ul > li > ul > li.active > a, #naviMain > ul > li.layout2 > ul > li > ul > li.active > a, #naviMain > ul > li.layout1 > ul > li > ul > li.active > a,
.color.white { color: #FFF; }
/*#naviMain > ul > li.layout2 > ul > li > ul > li > a, #naviMain > ul > li.layout2 > ul > li > ul.content, #naviMain > ul > li.layout2 > ul > li > ul > li:hover > a, #naviMain > ul > li.layout2 > ul > li > ul > li.active > a,*/
.color.black, #content h1, #content h2, #content h3, .color.yellow, #content, #content .tx-powermail .powermail_fieldwrap_type_reset input, #naviMain > ul > li > ul > li > ul.content { color: #000; }
.color.grey, html, body, #content h4 { color: #1c1c1b; }

.color.blue, .tx-indexedsearch-search-submit input, #naviBreadcrumb a, #content a, .frame-type-menu_subpages ul li:before, #contact .tx-powermail .powermail_fieldwrap_type_submit input:hover, #contact .tx-powermail .powermail_fieldwrap_type_reset input:hover, #naviMain li.layout0 ul.content a.contact:hover, #naviMain > ul > li > ul > li > ul > li > a, #naviMain ul.content a.button, #content .tx-powermail .powermail_fieldwrap_type_submit input { color: #0065ad; }

.color.red, #naviMain li.layout1 ul.content a.contact:hover, #naviMain > ul > li.layout1 > ul > li > ul > li > a { color: #cd1719; }
.color.yellow { color: #ffeb01; }
.color.green, #naviMain li.layout2 ul.content a.contact:hover, #naviMain > ul > li.layout2 > ul > li > ul > li > a { color: #009641; }


/* background-colors */
.background.black { background-color: #000;}
.background.white, #contact .tx-powermail .powermail_fieldwrap_type_submit input:hover, #contact .tx-powermail .powermail_fieldwrap_type_reset input:hover, #naviMain li.layout2 ul.content a.contact:hover, #naviMain > ul > li > ul, #naviMain > ul > li.layout1 > ul > li > ul.content > li:hover, #naviMain > ul > li.layout2 > ul, #naviMain > ul > li.layout2 > ul > li > ul.content > li:hover, #content .tx-powermail .powermail_fieldwrap_type_submit input { background-color: #FFF; }
.background.grey { background-color: #ececec; }
.background.blue, #contact, .tx-indexedsearch-search-submit input:hover, .tx-indexedsearch-search-submit input:hover, #content .tx-powermail .powermail_fieldwrap_type_submit input:hover, #content .tx-powermail .powermail_fieldwrap_type_reset input:hover, footer, #naviTop, #naviMain > ul > li > ul > li > ul > li:hover, #naviMain ul.content a.contact:hover, #naviMain > ul > li > ul > li > ul > li.active { background-color: #0065ad; }
.background.red, #naviMain > ul > li.layout1 > ul > li > ul > li:hover, #naviMain > ul > li.layout1 > ul > li > ul > li.active { background-color: #cd1619; }
.background.yellow, #naviMain { background-color: #ffeb01; }
.background.green, #naviMain > ul > li.layout2 > ul > li > ul > li:hover, #naviMain > ul > li.layout2 > ul > li > ul > li.active { background-color: #009641; }


/* margins */
.margin-30, #content p, #content ul, #content ol, footer p, .frame-type-menu_subpages ul { margin-bottom: 28px; }
.margin-40, .space-after-40, .empty_banner { margin-bottom: 40px; }
.margin-70, .space-after-70, .news-single { margin-bottom: 70px; }
.margin-100, .space-after-100 { margin-bottom: 100px; }
#content .ce-bodytext p:last-child, #content .csc-default p:last-child, .grid .ce-intext.ce-right .ce-gallery, .grid .ce-intext.ce-left .ce-gallery, .grid .ce-above .ce-gallery,
.margin-0 { margin-bottom: 0; }


#wrapper { position: relative; height: auto !important; height: 100%; min-height: 100%; }

/* header */
#header { position: relative; }

/* navi top */
#naviTop { display: block; padding-top: 3px; padding-bottom: 2px; }
#naviTop .inner { text-align: right; }
#naviTop ul > li { display: inline-block; margin-left: 25px; }
#naviTop ul > li > a[href="/suche/"] { background-image: url(../img/lupe.svg); width: 14px; height: 18px; background-repeat: no-repeat; background-size: 14px; background-position: center; font-size: 0; display: block; }

/* naviMain */
#naviContent { display: none; }
#naviMain { max-height: 79px; }
#naviMain > ul > li { float: left; padding-right: 50px; }
#naviMain > ul > li > a span.img:nth-child(2) { position: absolute; top: 0; left: 0; opacity: 0; }
#naviMain > ul > li > a span.img img { width: auto; padding-top: 19px; padding-bottom: 18px; }
#naviMain > ul > li > a[href="/"] img { margin-right: 30px; }
#naviMain > ul > li > a[href="/"] span.img img, #naviMain > ul > li:last-child > a span.img img { height: 79px; padding-top: 9px; padding-bottom: 8px; }
#naviMain > ul > li:last-child { float: right; padding-right: 0; }
/*#naviMain > ul > li > a span.img img { border-radius: 24px; -webkit-box-shadow: 0px 0px 15px 1px rgba(0,0,0,0.25); -moz-box-shadow: 0px 0px 15px 1px rgba(0,0,0,0.25); box-shadow: 0px 0px 15px 1px rgba(0,0,0,0.25); }*/
#naviMain > ul > li.hover > a span.img:nth-child(2),
#naviMain > ul > li.active-none > a span.img:nth-child(2) { opacity: 0; }
#naviMain > ul > li.active-hover > a span.img:nth-child(2) { opacity: 1; }
#naviMain > ul > li > a { position: relative; z-index: 55; display: block; font-size: 0; }

#naviMain > ul > li > ul { opacity: 0; height: 0; overflow: hidden; visibility: hidden; position: absolute; top: 100%; left: 0; width: 100%; z-index: 50; -webkit-box-shadow: inset 0px 2px 20px 0px rgba(0,0,0,0.5); -moz-box-shadow: inset 0px 2px 20px 0px rgba(0,0,0,0.5); box-shadow: inset 0px 2px 20px 0px rgba(0,0,0,0.5); }
#naviMain.toggle > ul > li > ul{ height: 0px!important; overflow: hidden!important; visibility: hidden!important; z-index: -1!important; }
#naviMain > ul > li:hover > ul { opacity: 1; height: auto; overflow: visible; visibility: visible; }
#naviMain > ul > li > ul > li { padding-top: 65px; padding-bottom: 10px; }

/* naviMain first level */
#naviMain > ul > li > ul > li > ul { float: left; width: 75%; }
#naviMain > ul > li > ul > li > ul > li { position: relative; float: left; width: 32.56%; margin-right: 1.16%; padding: 10px; border-radius: 4px; margin-bottom: 10px; }
#naviMain > ul > li > ul > li > ul > li:nth-child(3n) { margin-right: 0; }
#naviMain ul.content { width: 25%; padding-left: 20px; }
#naviMain ul.content > li { float: none; width: auto; margin-right: 0; padding: 0; border-radius: 0; margin-bottom: 0; }
#naviMain ul.content > li:hover { background-color: transparent; }
#naviMain ul.content h3 { margin-bottom: 5px; }
#naviMain ul.content a { font-weight: 700; }
#naviMain ul.content a.button { font-weight: 400; }
#naviMain ul.content .csc-default { margin-bottom: 50px; }
#naviMain ul.content p { margin-bottom: 20px; }
#naviMain > ul > li > ul > li > ul > li > a span.img { display: block; }
#naviMain > ul > li > ul > li > ul > li > a span.img img { border-radius: 4px; }


/*banner */
#banner .swiper-wrapper > .csc-default { width: 100%; height: 100%; position: relative; -webkit-flex-shrink: 0; -ms-flex: 0 0 auto; flex-shrink: 0; }
#banner .ce-gallery img { width: 100%; }
/* typo3 banner resets */
#banner .ce-gallery, #banner .ce-row, #banner .ce-column { margin: 0; float: none; }
#banner .ce-outer, #banner .ce-inner { float: none; position: static; right: 0; }
#banner .ce-gallery figure { display: block; }
#banner .ce-textpic, #banner .ce-image { overflow: visible; }

#banner .ce-textpic .ce-bodytext { position: absolute; top: 0; left: 0; width: 100%; display: none; }
#banner .ce-right .ce-bodytext .bannerShow { float: left; }
#banner .ce-left .ce-bodytext .bannerShow { float: right; }
#banner .swiper-button-next,
#banner .swiper-button-prev { width: 48px; height: 82px; margin-top: -24px; background-size: 48px 82px; }
#banner .swiper-button-next { right: 85px; background-image: url(../img/pfeil_rechts.svg); }
#banner .swiper-button-prev { left: 85px; background-image: url(../img/pfeil_links.svg); }
#banner .swiper-pagination-out { position: absolute; bottom: 25px; left: 0; width: 100%; text-align: center; z-index: 5; line-height: 22px; }
#banner .swiper-pagination { position: static; transform: none; -webkit-transform: none; -ms-transform: none; -o-transform: none; }
#banner .swiper-pagination .swiper-pagination-bullet { height: 22px; width: 22px; margin-left: 5px; margin-right: 5px; background: #FFF; opacity: 0.6; }
#banner .swiper-pagination .swiper-pagination-bullet-active { background: #FFF; opacity: 1; }


/* contact */
#content > .inner { margin-top: 100px; }
#content h1 { font-weight: 900; margin-bottom: 50px; }
#content .tx-powermail { position: relative; }
#content .tx-powermail h3,
#content .tx-powermail legend { display: none; }
#content .tx-powermail .powermail_fieldwrap { width: 100%; margin-bottom: 10px; }
#content .tx-powermail .powermail_fieldwrap.powermail_fieldwrap_type_check { margin-bottom: 20px; }
#content .tx-powermail .powermail_fieldwrap label { float: none; width: 100%; display: block; line-height: 43px; cursor: pointer; }
#content .tx-powermail .powermail_fieldwrap_type_check label{ float: none; width: 100%; }
#content .tx-powermail .powermail_fieldwrap .powermail_field { float: none; width: 100%; }
#content .tx-powermail .powermail_fieldwrap_type_check .powermail_label { font-weight: 700; }
#content .tx-powermail .powermail_fieldwrap_type_check.powermail_fieldwrap_kontaktaufnahme .powermail_label { font-weight: 400; }
#content .tx-powermail .powermail_fieldwrap_type_check .powermail_field{ float: none; width: 100%; padding-right: 0; margin-bottom: 0; }
#content .tx-powermail .powermail_fieldwrap_type_check .powermail_field:after{ clear: both; content:''; display:table; }
#content .tx-powermail .powermail_fieldwrap_type_check .powermail_field .checkbox { float: left; margin-right: 10px; margin-left: 25px; position: relative; width: calc(100%/3 - 35px); }
#content .tx-powermail .powermail_fieldwrap_type_check.powermail_fieldwrap_kontaktaufnahme .powermail_field .checkbox { width: calc(100% - 35px); }
#content .tx-powermail .powermail_fieldwrap_type_check .powermail_field .checkbox input[type=checkbox] { height: 20px; width: 20px; position: absolute; left: -25px; top: 50%; transform: translate(0, -50%); }
#content .tx-powermail .powermail_fieldwrap input[type=text], #content .tx-powermail .powermail_fieldwrap input[type=email],
#content .tx-powermail .powermail_fieldwrap textarea { padding: 8px 20px; width: 100%; border-radius: 4px; border: 1px solid #000; }
#content .tx-powermail .powermail_fieldwrap input[type=file] { width: 100%; }
#content .tx-powermail .powermail_fieldwrap_type_submit input, #content .tx-powermail .powermail_fieldwrap_type_reset input { padding: 4px 20px; }
#content .tx-powermail .powermail_fieldwrap textarea { max-height: 145px; }
#content .tx-powermail .powermail_fieldwrap_type_submit { top: auto; bottom: 15px; }
#content .tx-powermail .powermail_fieldwrap_type_reset { top: auto; bottom: 75px; }
#content .tx-powermail .powermail_fieldwrap_adresse .powermail_field,
#content .tx-powermail .powermail_fieldwrap_type_submit .powermail_field  { text-align: right; float: none; width: auto; padding-right: 0; }
#content .tx-powermail .powermail_fieldwrap_type_submit input { cursor: pointer; margin-top: 20px; }

.powermail_form_1:after { content: ''; display: table; clear: both; }
.powermail_form_1 .powermail_fieldset { float: left; width: calc(50% - 15px); }
.powermail_form_1 .powermail_fieldset_1 { margin-right: 15px; }
.powermail_form_1 .powermail_fieldset_3 { margin-left: 15px; }

#content .tx-powermail ul.parsley-errors-list { padding-left: 0; color: red; margin-top: 10px; margin-bottom: 10px; }

.powermail_create {  }
.powermail_create tr > td:first-child { padding-right: 20px; }

/* breadcrumb */
#naviBreadcrumb { padding-top: 30px; margin-bottom: 45px; }
#naviBreadcrumb span.trenner { margin: 0 10px; }


/* content */
#content h1,
#content h2 { margin-bottom: 40px; font-weight: 900; }
#content h3 { margin-bottom: 40px; }
#content h4 { margin-bottom: 15px; }
#content ul, #content ol { padding-left: 22px; }
#content a:hover { text-decoration: underline; }


/* news */
.news-container { margin-left: -15px; margin-right: -15px; overflow: hidden; }
.news-container .article { float: left; width: 33.33%; padding-left: 15px; padding-right: 15px; }
#content .news-container .article h3 { margin-bottom: 25px; }
.news-container .article .img > img { margin-bottom: 20px; }
#content .news-container .teaser-text p { margin-bottom: 0; }
.news-container .img { position: relative; }
.news-container .img .icon { position: absolute; top: 0; left: 0; }

/* search */
.tx-indexedsearch-searchbox fieldset{ text-align: center; }
#tx_indexedsearch legend { display: none; }
.tx-indexedsearch-form { margin-bottom: 10px; display: inline-block;}
.tx-indexedsearch-form label { padding-right: 10px;  }
#tx-indexedsearch-searchbox-sword { border: 1px solid #0065ad; border-radius: 4px; height: 31px; }
.tx-indexedsearch-search-submit { display: inline-block; margin-left: 10px; }
.tx-indexedsearch-search-submit input { background-color: transparent; border: 1px solid #0065ad; padding: 1px 15px; cursor: pointer; border-radius: 4px; padding-bottom:0px; position: relative; top:2px; }
.tx-indexedsearch-search-submit input:hover { border: 1px solid #FFF; }

.news-single .news-img-wrap{ float: left; width: 30%; }
.news-single .news-img-wrap .outer{ display: none; }
.news-single .news-img-wrap .outer:first-child{ display: block; }
.news-single .news-text-wrap{ float: left; width: 70%; padding-right: 30px;  }
.news-single .news-text-wrap img{ display: block; }
.news-single:after{ clear: both; content:''; display:table; }


/* grids */
.grid { overflow: hidden; }
.grid > .row { margin-left: -15px; margin-right: -15px; }
.grid > .row > .col { float: left; padding-left: 15px; padding-right: 15px;}
.grid_30_30_30 > .row > .col { width: 33.33%; }
.grid_25_25_25_25 > .row > .col { width: 25%; }
.grid_20_20_20_20_20 > .row > .col { width: 20%; }
.grid_50_50 > .row > .col {  width: 50%; }
.grid_70_30 > .row > .col_70 { width: 70%; }
.grid_70_30 > .row > .col_30 { width: 30%; }
.grid_30_70 > .row > .col_30 { width: 30%; }
.grid_30_70 > .row > .col_70 { width: 70%; }
.grid_40_60 > .row > .col_40 { width: 40%; }
.grid_40_60 > .row > .col_60 { width: 60%; }
.grid_60_40 > .row > .col_40 { width: 40%; }
.grid_60_40 > .row > .col_60 { width: 60%; }

/* light box */
.layout-lightbox .ce-gallery { position: relative; }
.layout-lightbox .ce-row  { display: none; }
.layout-lightbox .ce-row:first-child { display: block; }
.layout-lightbox a.lightbox, .news-single .news-img-wrap a.lightbox{ position: relative; display: block; }
.layout-lightbox a.lightbox:after, .news-single .news-img-wrap a.lightbox:after {  content:""; position: absolute; top: 50%; left: 50%; margin-top: -42px; margin-left: -42px; width: 95px; height: 95px; background-image: url(../img/bildgallery.svg); background-repeat: no-repeat; }

/* footer */
footer { padding-top: 30px; padding-bottom: 15px; }
footer h3 { margin-bottom: 15px; }
footer h4 {  }
.frame-type-menu_subpages ul {}
.frame-type-menu_subpages ul li, footer td { line-height: 28px; }
footer td:first-child { padding-right: 15px; }
/*
.frame-type-menu_subpages ul li { position: relative; padding-left: 15px; }
.frame-type-menu_subpages ul li:before { content: ">"; position: absolute; top: 0; left: 0; }*/


.swiper-wrapper .hide-on-desktop { display: none; }