/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('/css/fonts/montserrat-v25-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/css/fonts/montserrat-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/css/fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/css/fonts/montserrat-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/css/fonts/montserrat-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/css/fonts/montserrat-v25-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}



* { 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; }
a[href^=tel]{ color:inherit; text-decoration: inherit; font-size:inherit; font-style:inherit; font-weight:inherit; }
iframe{ max-width: 100%; }
picture img{ width: 100%!important; }
img { border:none; }
img { max-width: 100%; height: auto; /* width auto needs ie8 in typo*/ }
html, body { font-weight: 400; height: 100%; font-family: 'Montserrat', sans-serif; font-size: 20px; color: #232323; line-height:28px; }
html{ overflow-y: scroll; }
ul { margin: 0px; }
a:focus { outline: none; }
h1, h2, h3, h4, h5 { font-weight: 700; line-height: 1.4; text-transform: uppercase;  }
fieldset { border: none; }
:focus {outline:none;}
textarea,
input[type="text"],
input[type="password"],
input[type="submit"],
select{ font-family: 'Montserrat', sans-serif; padding:10px; width:100%; font-size: 20px;}

::-webkit-input-placeholder { color: #000000; } .parsley-error::-webkit-input-placeholder { color: red; }
:-moz-placeholder { color: #000000; opacity: 1; } .parsley-error:-moz-placeholder { color: red; opacity: 1; }
::-moz-placeholder { color: #000000; opacity: 1; } .parsley-error::-moz-placeholder { color: red; opacity: 1; }
:-ms-input-placeholder { color: #000000; } .parsley-error:-ms-input-placeholder { color: red; }

b,strong{ font-weight: 700; }

.button{ font-size: 15px; line-height: 15px; text-transform: uppercase; display: inline-block; min-width: 370px; text-align: center; padding-top: 17px; padding-bottom: 17px; border: 4px solid #009fe3;   }
#content .button{ text-decoration: none; }
.button:after{content: ''; font-family: Verdana, Arial, sans-serif; }
.button:hover{ background-color: #009fe3; color: #FFF;  }

p{ line-height: 1.4em; margin-bottom: 1.4em; }
hr{ height: 1px; border-width: 1px 0 0 0; border-style: solid; border-color: #000000;  }

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

.align-left{ text-align: left; }
.align-right{ text-align: right; }
.align-center{ text-align: center; }

/* limiters */
.inners{ max-width: 1600px; margin: 0 auto; }
.inners:after, .row_20_80:after, .row_70_30:after, .row_80_20:after, .row_25_25_25_25:after { clear: both; content:''; display:table; }

.swiper-slide{ overflow: hidden; }


#header { background-color: #FFF; border-bottom: 5px solid #005221}
#header .inners{ position: relative; padding-top: 25px; padding-bottom: 25px; }
#header .logo{ float: left; display: block; line-height: 0px; font-size: 0px; padding-top:15px; }
#header #social { position: absolute; top: 30px; right: 15%; margin-right: 40px; z-index:1;}
#header.homeHeader #social { right: 40px; }
#header #social a { float: left; display: block; margin-left: 14px; }
#header #social a:nth-child(2) { margin-top: 4px; }
#header #sticker{ position: absolute; right: 0px; z-index: 25; width: 15%; top: 0; }
#header #nav{ float: right; margin-right: 15%; padding-right: 40px; padding-top: 51px; position: relative; z-index:200; }
#header #nav ul{ list-style: none; list-style-type: none; }
#header #nav > ul{ text-align: right; }
#header #nav > ul > li{ display: inline-block; position: relative; margin-left: 50px; }
#header #nav > ul > li.hassub > a:after{ content:'>'; position: absolute; left: 100%; margin-left: 10px; top: 0%;     -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -webkit-transform: rotate(90deg); }
#header #nav > ul > li > a{ color: #121215; font-size: 18px;}
#header #nav > ul > li > ul{ position: absolute; left: 0px; top: 100%; padding-top: 25px; text-align: left; opacity: 0; overflow-y: hidden; height: 0px;  }
#header #nav > ul > li:hover > ul{ overflow: visible; height: auto; opacity: 1; }
#header #nav > ul > li > ul > li{ color: #232323; background-color: #ffffff; padding-left: 10px; padding-right: 10px; padding-top: 5px; padding-bottom: 5px; }
#header #nav > ul > li > ul > li > a{ display: block; white-space: nowrap; font-size: 18px; }

#header.homeHeader #nav{ margin-right: 0px;  }
#header.homeHeader #sticker{ display: none; }

#banner{ position: relative; width: 100%; }
#banner .swiper-slide{ width: 100%; position: relative; }
#banner .swiper-slide .imgslide{ line-height: 0px; font-size: 0px; }
#banner .swiper-slide .infobox{ position: absolute; left: 20%; width: 100%; top: 50%; color: #FFF; font-size: 30px; }
#banner .swiper-slide .infobox p{ line-height: 50px; }
#banner .swiper-slide .textrechts .infobox{ text-align: right; right: 20%;}
#banner .swiper-slide img{ width: 100%; }


.content{ padding-top: 60px; padding-bottom: 64px; text-align:left;}
.content ul{ margin-left: 18px; list-style-type: square;}
.content_start{margin-top:100px;}

.row_20_80 .col_20{ width: 16%; float: left; margin-right: 2%; }
.row_20_80 .col_80{ width: 82%; float: left; }

.row_70_30 .col_30{ float: left; width: 47%; padding-left: 100px; padding-right: 100px; padding-top: 70px; }
.row_70_30 .col_70{ float: left; width: 53%; }

.row_80_20 .col_80{ float: left; width: 75%; }
.row_80_20 .col_20{ float: left; width: 25%; }
.row_80_20 img{ width: 100%; display: block; }
.row_80_20 .row_70_30 .col_30{ width: 35%; padding-left: 30px; padding-right: 30px; }
.row_80_20 .row_70_30 .col_30.img{ padding-left: 0px; padding-right: 0px; padding-top: 0px; }
.row_80_20 .row_70_30 .col_70{ width: 65%; }

.row_25_25_25_25 .col_25{ width: 25%; float: left; display: block; position: relative; }
.row_25_25_25_25 .col_25 > img{ width: 100%; display: block; }
.row_25_25_25_25 .col_25 .frsticker{ position:absolute; left: 0px; top: 0px; width: 100%; height: 100%; background-color: rgba(55,55,55,0.5); }
.row_25_25_25_25 .col_25 .hover{ position: absolute; left: 0px; bottom: 8%; width: 100%; text-align: center; opacity: 0; }
.row_25_25_25_25 .col_25 .frsticker img{ position: absolute; left: 0px; top: 80%; margin-top: -105px; }
.row_25_25_25_25 .col_25:hover .frsticker{ background-color: rgba(0,0,0,0); }
.row_25_25_25_25 .col_25:hover .hover{ opacity: 1; }

.slider-banner_con{ position: relative; }
.slider-banner_con .swiper-slide img{ width: 100%; }
.slider-banner_con .swiper-slide{ font-size: 0px; line-height: 0px; }
.slider-banner_con .arrow-left{ position: absolute; left: 2%; width: 10px; height: 100%; top: 0px; z-index: 24; cursor:pointer; background-image: url(../img/slideLeft.png); background-repeat: no-repeat; background-position: center; }
.slider-banner_con .arrow-right{ position: absolute; right: 2%; width: 10px; height: 100%; top: 0px; z-index: 24; cursor:pointer; background-image: url(../img/slideRight.png); background-repeat: no-repeat; background-position: center; }
.slider-banner_con .pagination{ position:absolute; bottom: 15px; left: 0px; width: 100%; z-index: 25; text-align: center; }
.slider-banner_con .pagination span{ display: inline-block; height: 8px; width: 8px; background-color: #131312; margin-left: 10px; margin-right: 10px; cursor:pointer; border-radius: 100%; }
.slider-banner_con .pagination span.swiper-active-switch{ background-color: #FFF; }

.prevBanner{ position: absolute; left: 2%; width: 56px; height: 100%; top: 0px; z-index: 24; cursor:pointer; background-image: url(../img/slideLeftTop.png); background-repeat: no-repeat; background-position: center; background-size: 100%; }
.nextBanner{ position: absolute; right: 2%; width: 56px; height: 100%; top: 0px; z-index: 24; cursor:pointer; background-image: url(../img/slideRightTop.png); background-repeat: no-repeat; background-position: center; background-size: 100%;  }
.slider-banner .pagination{ position:absolute; bottom: 15px; left: 0px; width: 100%; z-index: 25; text-align: center; }
.slider-banner .pagination span { display: inline-block; height: 16px; width: 16px; background-color: #FFFFFF; margin-left: 10px; margin-right: 6px; cursor:pointer; border-radius: 100%; border: 2px solid #CCCCCC; }
.slider-banner .pagination span.swiper-active-switch{ background-color: #ffed00; }




.black{ background-color: #131312; color: #FFF; }
.grey{ background-color: #f6f6f6; }
.orange{ background-color: #fabe40; }
.orange2{ background-color: #fbcf71; }
.red{ background-color: #551e21; color: #FFF; }
.green{ background-color: #005221; color: #FFF; }

h1{ font-weight: 700; font-size: 30px; padding-top:1.5em; padding-bottom:1.5em; text-align: center;}
h2{ font-weight: 700; font-size: 30px; text-transform: none; margin-bottom: 0.5em; }
h3{ font-weight: 700; font-size: 18px; text-transform: none; margin-bottom: 0.3em; }

#footer{ background-color: #262930; color: #ffffff; }
#footer span.trenner{ display: inline-block; padding-left: 15px; padding-right: 15px; }
#footer .inners{ position: relative;  padding-top: 60px; padding-bottom: 70px; }

#footer2 .icon_footer{margin-bottom:10px;}

#footer2{ }
#footer2 .inners{ position: relative;  padding-top: 60px; padding-bottom: 70px; }

.threecols_footer{margin-bottom:4px;}
.threecols_footer:after{ content: ''; display: table; line-height: 0px; font-size: 0px; clear: both; }
.threecols_footer div.three_1{ float: left; width: 31%; margin-right: 3.4%; text-align:center;}
.threecols_footer div.three_2{ float: left; width: 31%; margin-right: 3.4%;  text-align:center;}
.threecols_footer div.three_3{ float: left; width: 31%;  text-align:center;}

.threecols{margin-bottom:4px;}
.threecols:after{ content: ''; display: table; line-height: 0px; clear: both; }
.threecols div.three_1{ float: left; width: 31%; margin-right: 3.4%;}
.threecols div.three_2{ float: left; width: 31%; margin-right: 3.4%; }
.threecols div.three_2_grau{ float: left; width: 31%; margin-right: 3.4%; background-color:#4a4b4d; height:100%;}
.threecols div.three_3{ float: left; width: 31%; }

.threecols2{margin-bottom:4px;}
.threecols2:after{ content: ''; display: table; line-height: 0px; clear: both; }
.threecols2 div.three_1{ float: left; width: 23.5%; margin-right: 1.5%; text-align:left; }
.threecols2 div.three_2{ float: left; width: 23.5%; margin-right: 1.5%; text-align:left;}
.threecols2 div.three_3{ float: left; width: 50%; text-align:left;}

.twocols2{overflow:hidden; margin-bottom:4px;}
.twocols2:after{ content: ''; display: table; line-height: 0px; clear: both; }
.twocols2 .two1, .twocols2 .two2_gelb{padding-bottom:1000px; margin-bottom:-1000px;}
.twocols2 .two1{ float: left; width: 66%;  }
.twocols2 .two2{ float: left; width: 33%; margin-left: 1%;}

.twocols{margin-bottom:4px;}
.twocols:after{ content: ''; display: table; line-height: 0px; clear: both; }
.twocols div.two1{ float: left; width: 33%; margin-right: 1%; }
.twocols div.two2{ float: left; width: 66%; }

.twocols_50_50 {margin-bottom:4px;}
.twocols_50_50:after{ content: ''; display: table; line-height: 0px; font-size: 0px; clear: both; }
.twocols_50_50 .col_50_1{ float: left; width: 48%; text-align: left; margin-right: 2%;}
.twocols_50_50 .col_50_2{ float: left; width: 50%; text-align: left;}
.twocols_50_50 .col_50_2_center{ float: left; text-align: center; width: 50%;}
.twocols_50_50 .col_50_2_right{ float: left; width: 50%; text-align: right; padding-right: 2%;}

.twocols_50_50_start {}
.twocols_50_50_start:after{ content: ''; display: table; line-height: 0px; font-size: 0px; clear: both; }
.twocols_50_50_start .col_50_1{ float: left; width: 50%; text-align: center; font-size:20px; }
.twocols_50_50_start .col_50_2{ float: left; width: 50%; text-align: center; font-size:20px; }
.twocols_50_50_start .text{padding-left:3em;padding-right:3em;padding-top:8em;padding-bottom:3em;}

.twocols_50_50_broschure{}
.twocols_50_50_broschure .col_50_1{ float: left; width: 79%; margin-right: 1%; margin-top:38px; margin-bottom:25px;}
.twocols_50_50_broschure .col_50_2{ float: left; width: 20%; text-align:center; margin-top:25px; margin-bottom:25px;}

.fourcols{ }
.fourcols:after{ content: ''; display: table; line-height: 0px; font-size: 0px; clear: both; }
.fourcols div.cols{ text-align:left; text-decoration: none; display: block; width: 22.5%; padding-right:2.5%; vertical-align: left; float: left;}
.fourcols .clearerforresponsive{ display: none; }

.text1{font-size:30px; font-weight:600; }
.text2{font-size:24px; font-weight:600; }
.text3{font-size:30px; color:#005221; font-weight:600;}
.text4{font-size:24px; color:#005221;  font-weight:600;}
.text5{color:#005221;  font-weight:600;}


/* effekte */
.effekt, a, .row_25_25_25_25 .col_25 .frsticker,.row_25_25_25_25 .col_25 .hover, #header #nav > ul > li > ul{ -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; }


#header a.mobicon{ display: none; height: 49px; width: 49px; font-size: 0px; background-color: #005221; float: right; margin-top: 5px; }
#header a.mobicon span{ display: block; margin-top: 18px; margin-left: 9px; width: 30px; height: 30px; background-image: url(../img/mobil_icon.png); background-repeat: no-repeat; -webkit-background-size: 100%; -moz-background-size: 100%; -o-background-size: 100%; background-size: 100%; }

@media ( max-width : 1700px ) {
        .inners{ padding-left: 10px; padding-right: 10px; }
        .col_30{ padding-left: 30px; padding-right: 30px; }
        html, body { font-size: 16px; }
}
@media ( max-width : 1560px ) {
        html, body { font-size: 14px; }
        h2 { font-size: 20px; }
        .row_70_30 .col_30{ float: left; width: 47%; padding-left: 50px; padding-right: 50px; padding-top: 40px; }

}
@media ( max-width : 1250px ) {
        #footer .inners{ font-size: 16px; padding-top: 30px; padding-bottom: 20px; text-align: center; line-height: 30px;  }
}
@media ( max-width : 1170px ) {
        #header #sticker{ display: none; }
        #header #nav{ margin-right: 0; padding-right: 10px; }
        .content_row .col_20{ float: none; width: 100%; margin-bottom: 30px; }
        h2{ margin-bottom: 16px; }
        .content_row .col_80{ float: none; width: 100%; }
        html, body { font-size: 12px; }
        h2 { font-size: 16px; }
        .row_70_30 .col_30{ float: left; width: 47%; padding-left: 30px; padding-right: 30px; padding-top: 20px; }

}
@media ( max-width : 1100px ) {
        #header #nav{ display: none; position: absolute; left: 0px; top: 100%; z-index: 100; background-color: #ffffff; padding-top: 0px; width: 100%; padding: 10px; padding-bottom: 3px; }
        #header #nav > ul{ text-align: left; }
        #header #nav > ul > li{ display: block; margin-left: 0px; margin-bottom: 7px; margin-left: 0px; }
        #header #nav > ul > li > a{ font-size: 18px; }
        #header a.mobicon{ display: block; }
        #header #nav > ul > li > ul{ position: static; height: auto; opacity: 1; padding-top: 10px; display: none; -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none; }
        #header #nav > ul > li.hassub > a:after{ right: 0px; left: auto; top: 0px; }
        #header .inners{ padding-top: 30px; }
        #header.homeHeader #social,
        #header #social { top: 45px; right: 6.6%; }
        .content{ padding-top: 30px; padding-bottom: 20px; }
        .col_30{ padding-top: 30px; }
        #footer #totop{ display: none; }
}
@media ( max-width : 1020px ) {
         .row_70_30 .col_30{ float: left; width: 100%; padding-left: 100px; padding-right: 100px; padding-top: 70px; }
         .row_70_30 .col_70{ float: left; width: 100%; }
        .row_80_20 .row_70_30 .col_70{ width: 100%; }
        .row_80_20 .row_70_30 .col_30{ width: 100%; }
        #banner .swiper-slide .infobox{ display: none; }
        .fourcols div.cols{ width: 95%; padding-bottom:30px; }
        .fourcols span.clearerforresponsive{ display: none!important; }
        .row_25_25_25_25 .col_25{ width: 50%; }
}
@media ( max-width : 700px ) {
        html, body{ font-size: 16px; }
        p{ margin-bottom: 25px; line-height: 25px; }
        main > .row_80_20 .col_20{ display: none; }
        main > .row_80_20 .col_80{ width: 100%; }
        #header #nav > ul > li > ul { position: static; padding-top: .8em; padding-bottom: .8em; }
        #header #nav > ul > li > ul > li { border-bottom: 1px solid #FFFFFF; line-height: 2em; padding-left: 1em; }
       .threecols div.three_1{ float: left; width: 100%; margin-right: 0%; margin-bottom:30px; }
         .threecols div.three_2{ float: left; width: 100%; margin-right: 0%; margin-bottom:30px;}
         .threecols div.three_2_grau{ float: left; width: 100%; margin-right: 0%; background-color:#4a4b4d; height:100%;}
         .threecols div.three_3{ float: left; width: 100%; margin-bottom:30px;}

       .threecols_footer div.three_1{ float: left; width: 100%; margin-right: 0%; margin-bottom:30px; }
         .threecols_footer div.three_2{ float: left; width: 100%; margin-right: 0%; margin-bottom:30px;}
         .threecols_footer div.three_3{ float: left; width: 100%; margin-bottom:30px;}

         .threecols2 div.three_1{ float: left; width: 100%; margin-right: 0%;  }
         .threecols2 div.three_2{ float: left; width: 100%; margin-right: 0%; }
         .threecols2 div.three_3{ float: left; width: 100%; }

         .twocols_50_50_start .col_50_1{ float: left; width: 100%; text-align: center; }
         .twocols_50_50_start .col_50_2{ float: left; width: 100%; text-align: center;}


         .twocols_50_50 .col_50_1{ float: left; width: 100%; }
         .twocols_50_50 .col_50_2{ float: left; width: 100%; }
        #header .logo{max-width:80%; padding-top:0px;}
}
@media ( max-width : 500px ) {
        html, body{ font-size: 15px; }
        h1, h2{ font-size: 20px; margin-bottom: 20px; }
        .row_25_25_25_25 .col_25{ width: 100%; }
        footer span { display: block;}
        footer .trenner { display: none!important; }
       .row30_70 .col_70{ float: none; width: 100%; padding-left: 0; }
        .row30_70 .col_30{ float: none; width: 100%; margin-left: 0; }
        .fourcols div.cols{ width: 95%; padding-bottom:30px; }
        .fourcols span.clearerforresponsive{ display: none!important; }
}
@media ( max-width : 420px ) {
        #header #social { display: none; }
}