.mobicon { display: none; position: absolute; right: 20px; top: 38px; height: 24px; width: 30px; }
.mobicon span { position: absolute; width: 30px; height: 4px; left: 0px; background-color: #4a4a4a; }
.mobicon span.first { top: 0px; }
.mobicon span.sec { top: 10px; }
.mobicon span.third { top: 20px; }
.mobicon.open span.sec{ opacity: 0; }
.mobicon.open span.first {-webkit-transform: rotate(45deg); transform: rotate(45deg); margin-top: 10px;   }
.mobicon.open span.third { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-top: -10px; }



@media ( max-width: 1640px ) {
	.header #logo { margin-right: 20px; }
	.header .inner { padding-left: 20px; padding-right: 20px;}
	.blockSearchSocial { right: 20px; }
}

@media ( max-width: 1470px ) {
	.bgImg > .bgImgSrc { display: none; }
	.bgImg > .bgImgText { position: static; left: auto; top: auto; transform: none; }

	.bgImg > .bgImgText > div { width: auto; }

	.header #logo.big img { max-width: 200px; }
	body { margin-top: 122px; }

}

@media ( max-width: 1410px ) {
	.inner-1400 { padding-left: 20px; padding-right: 20px; }
	.inner-1400 .inner-1400 { padding-left: 0; padding-right: 0; }
}

@media ( max-width: 1400px  ) {
	.header #logo { max-width: 250px; }
	#naviMain > ul > li { font-size: 16px; }
	#naviSub > ul > li { font-size: 16px; }
	/*.blockSearchSocial  { top: 15px; }*/
	.layout-gridgapxxl > div[class*="inner-"] > .grid > .row > .col { padding-left: 30px; padding-right: 30px; }
}

@media ( max-width: 1300px ) {
	.banner .banner-text { position: absolute; top: auto; bottom: 20px; transform: none; width: 100%; }
	.landing .banner .banner-text { position: absolute; left: 0; top: 50%; bottom: auto; transform: translateY(calc(-50% + 70px)); }

	.banner .banner-text .bannerShow { float: none; padding-left: 20px; padding-right: 20px; }

	.banner p { font-size: 17px; line-height: 30px; }

	.size-40, .banner h4 { font-size: 30px; }
	.size-107, .banner h3 { font-size: 60px; line-height: 70px;  }
	.size-140, .banner h2 { font-size: 70px; line-height: 80px;  }
	.margin-100, .banner h3 { margin-bottom: 20px; }
	.banner h2, .banner h3 { text-align: center; }

	/* landing page banner (logos) */
	.logosLanding { position: static; width: 100%; z-index: 10; background-color: #4b5056; max-width: none; padding-top: 40px; padding-bottom: 40px; }
	.logosLanding .inner { position: static; width: 100%; bottom: 40px; max-width: 1000px; }


}

@media ( max-width: 1271px ) {
	/*.blockSearchSocial  { top: 38px; }*/

	#naviMain { float: none; display: block; width: 100%; max-width: none; }
	.banner .banner-text .bannerShow { width: 30%; padding-top: 10px; padding-bottom: 10px; }
	.banner h2 { font-size: 50px; line-height: 50px; }
	.banner p { font-size: 11px; }
    .ce-gallery a ~ figcaption.image-caption { font-size: 15px; }
}

@media ( max-width : 1190px ) {
	.inner-1180,  #naviBreadcrumb, #naviFooter, .news-inner { padding-left: 20px; padding-right: 20px; }
	.inner-1180 .inner-1180, .inner .news-inner, .inner-1400 .news-inner { padding-left: 0; padding-right: 0; }

	.inner-1080 > .inner-1080-in { margin-left: 20px; margin-right: 20px; }
	#naviMain > ul > li { font-size: 13px; }
	#naviSub > ul > li { font-size: 13px; }
	.banner p { margin-bottom: 10px; }
	.layout-gridgapxxl > div[class*="inner-"] > .grid > .row > .col { padding-left: 20px; padding-right: 20px; }
}

@media ( max-width : 1050px ) {
	.header #logo.big img { max-width: 150px; }
	.grid_50_50 .grid_50_50 .col { width: 100%; }
}

@media ( min-width: 1011px) {
	.naviOuter { display: block!important; }
}

@media ( max-width : 1010px ) {
	.header .inner { padding-top: 20px; padding-bottom: 20px; }
	.header #logo {  }
	.header #logo img { max-width: 140px; }
	.blockSearchSocial { right: 80px; top: 41px; transform: none; }

	.mobicon { display: block; top: 50px; }
	.landing .mobicon { display: none; }

	.landing .blockSearchSocial { right: 20px; }

	#naviTop,
	.naviOuter { display: none; float: none; margin-right: 0; }

	#naviSocial { margin-right: 5px; }

	.header { /*background-color: #2f2f2f;*/ position: relative; }
	.header:after { }

	.naviOuter { position: absolute; width: 100%; left: 0; top: 100%; padding-top: 0;  }
	#naviMain { margin-bottom: 0; }
	#naviMain > ul  { padding: 20px; padding-bottom: 0; /*background-color: #2f2f2f;*/ background-color: #dedfe0; }
	#naviMain > ul > li  { display: block; width: 100%; }
	#naviMain > ul > li.nav58,
	#naviMain > ul > li.nav59 { display: block; }
	#naviMain > ul > li > a  { padding-left: 0; padding-right: 0;  }

	#naviSub > ul  { padding: 20px; padding-top: 10px; /*background-color: #2f2f2f;*/ background-color: #dedfe0; }
	#naviSub > ul > li  { display: block; width: 100%; }
	#naviSub > ul > li.nav58,
	#naviSub > ul > li.nav59 { display: block; }
	#naviSub > ul > li > a  { padding-left: 0; padding-right: 0;  }

	#naviMain > ul > li > ul > li,
	#naviMain > ul > li > ul > li > ul > li { padding-bottom: 5px; }

	#naviSub > ul > li,
	#naviSub > ul > li > ul > li { padding-bottom: 20px; }

	/* naviMain res reset */
	#naviMain > ul > li > ul,
	#naviSub > ul > li > ul,
	#naviMain > ul > li > ul > li > ul,
	#naviSub > ul > li > ul > li > ul { display: none; opacity: 1; height: auto; overflow: visible; visibility: visible; position: static; top: auto; left: auto; z-index: 50; background-color: transparent; -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none; }
	#naviMain > ul > li:last-child > ul { left: auto; right: auto;  }
	#naviSub > ul > li:last-child > ul { left: auto; right: auto;  }
	#naviMain > ul > li:hover > ul,
	#naviSub > ul > li:hover > ul,
	#naviMain > ul > li > ul > li:hover > ul,
	#naviSub > ul > li > ul > li:hover > ul { opacity: 1; height: auto; overflow: visible; visibility: visible; }


	.inner-1000, .logosLanding { padding-left: 20px; padding-right: 20px;  }
	.inner-1000 .inner-100, .logosLanding .inner { padding-left: 0; padding-right: 0;  }
	.layout-nomargin .grid_25_25_25_25.grid > .row { flex-wrap: wrap; }

	.layout-nomargin .ce-outer { float: none; right: 0; }
	.layout-nomargin .ce-inner { float: none; right: 0; }
	.layout-nomargin .ce-row { width: 100%; }
	.layout-nomargin .ce-column { width: 100%; }
	.layout-nomargin .grid_25_25_25_25 .image { width: 100%; }
	.layout-nomargin .grid_25_25_25_25 .image-embed-item { width: 100%; }
	/*.naviOuter { display: none; position: absolute; }*/
	.banner .banner-text .bannerShow { width: auto; }
	.banner h2 { margin-bottom: 10px; font-size: 70px; line-height: 60px; }
	.banner p { font-size: 20px; line-height: 40px; }
	p { padding-left: 10px; padding-right: 10px; }

	body { margin-top: 0; }
	.header #logo.big img { max-width: 140px; }
}

@media ( max-width : 950px ) {
	.grid_30_20_50 > .row > .col_30 { width: 60%; }
	.grid_30_20_50 > .row > .col_20 { width: 40%; }
	.grid_30_20_50 > .row > .col_50 { width: 100%; }
	blockquote p:first-child:before { left: -75px; }
	blockquote p:first-child:after { right: -75px; }
	.grid_16_16_16_16_16_16 > .row > .col { width: calc(100%/3); }
	.col_16_1.col { padding-bottom: 20px; }
	.col_16_2.col { padding-bottom: 20px; }
	.col_16_3.col { padding-bottom: 20px; }
	.layout-angebot .grid_25_25_25_25 > .row > .col_25_1.col { width: 50%; }
	.layout-angebot .grid_25_25_25_25 > .row > .col_25_2.col { width: 50%; margin-bottom: 35px; }
	.layout-angebot .grid_25_25_25_25 > .row > .col_25_3.col { width: 50%; text-align: center; }
	.layout-angebot .grid_25_25_25_25 > .row > .col_25_4.col { width: 50%; }
	.grid_25_25_25_25 > .row > .col_25_1.col { width: 50%; }
	.grid_25_25_25_25 > .row > .col_25_2.col { width: 50%; }
	.grid_25_25_25_25 > .row > .col_25_3.col { width: 50%; }
	.grid_25_25_25_25 > .row > .col_25_4.col { width: 50%; }
}

@media ( max-width : 800px ) {
	.grid_30_30_30 > .row > .col { width: 100%; margin-bottom: 50px; }
	.grid_30_30_30.grid .col_30_1.col { display: flex; align-items: center; justify-content: center; }
	.grid_30_30_30.grid .col_30_2.col { display: flex; align-items: center; justify-content: center; }
	.grid_30_30_30.grid .col_30_3.col { display: flex; align-items: center; justify-content: center; }
	footer .grid_30_30_30 > .row > .col { margin-bottom: 0; }
	.grid_30_30_30 > .row > .col:last-child { margin-bottom: 0; }
	.grid_30_30_30 > .row > .col .ce-above .ce-gallery { margin-bottom: 0; }

	.layout-angebot .grid_25_25_25_25 > .row > .col_25_1.col, .layout-angebot .grid_25_25_25_25 > .row > .col_25_2.col, .layout-angebot .grid_25_25_25_25 > .row > .col_25_3.col, .layout-angebot .grid_25_25_25_25 > .row > .col_25_4.col { width: 100%; }

	/*.banner .banner-text { padding-top: 30px; padding-bottom: 30px; }*/

	.landing .banner .banner-text { background-color: transparent;  }

	.size-40, .banner h4 { font-size: 25px; }
	.size-107, .banner h3 { font-size: 40px; line-height: 50px;  }
	.size-140, .banner h2 { font-size: 50px; line-height: 60px;  }

	footer,
	#naviFooter { text-align: center; }
	#naviFooter ul > li { float: none; display: inline-block; }

	.layout-leftcoloob .col_25 img {  display: none; }
	.layout-leftcoloob .col_75 { margin-left: 0; width: 100%; }


	.space-after-large { margin-bottom: 50px; }
	.background > .space-after-large { padding-bottom: 60px; margin-bottom: 0; }
	.space-after-extra-large { margin-bottom: 50px; }
	.background > .space-after-extra-large { padding-bottom: 50px; margin-bottom: 0;}

	.space-before-large { margin-top: 50px; }
	.background > .space-before-large { padding-top: 50px; margin-top: 0; }
	.space-before-extra-large { margin-top: 50px; }
	.background > .space-before-extra-large { padding-top: 50px; margin-top: 0; }

	#content .bgImg > .bgImgText a.button { position: static; }

	.col_25,
	.col_75,
	.col_30,
	.col_70 { width: 100%; }

	.banner .banner-text .bannerShow { width: 50%; padding-top: 10px; padding-bottom: 10px; }
	.banner h2 { font-size: 50px; line-height: 50px; }
	.banner p { font-size: 11px; }
    .ce-gallery a ~ figcaption.image-caption { font-size: 18px; }
}

@media ( max-width: 610px) {
	#naviSocial { margin-right: 0; }
	.blockSearchSocial #searchbox { display: none; }

	.grid_25_25_25_25 > .row > .col,
	.grid_50_50 > .row > .col { width: 100%; }
	.layout-nomargin .grid_25_25_25_25 .col > .frame-type-text { position: static; transform: translate(0); padding-top: 90px; padding-bottom: 90px; }
	.banner .banner-text .bannerShow { display: none; }
	.grid_16_16_16_16_16_16 > .row > .col { width: calc(100%/2); }
	.col_16_4.col { padding-bottom: 20px; }
	.grid_30_20_50 > .row > .col_30, .grid_30_20_50 > .row > .col_20 { width: 100%; }
	.grid_25_25_25_25 > .row > .col_25_1.col { width: 100%; }
	.grid_25_25_25_25 > .row > .col_25_2.col { width: 100%; }
	.grid_25_25_25_25 > .row > .col_25_3.col { width: 100%; padding-left: 20px; }
	.grid_25_25_25_25 > .row > .col_25_4.col { width: 100%; }
}

@media ( max-width : 550px ) {
	.header #logo { max-width: 200px; }

}

@media ( max-width : 450px ) {
	.size-20, html, body, .content h6 { font-size: 18px; }
	.size-31, .content h2, #banner .sitetitle h2 { font-size: 22px; }
	.col_75.col .button { margin-bottom: 10px; margin-right: 10px; }
	.col_75.col .button_grey { margin-left: 0; }
	.blockSearchSocial { right: 65px; }

	.landing .banner .banner-text { background-color: #2f2f2f; position: static; height: 100%; transform: none;  }
}

@media ( max-width: 350px ) {
	.mobicon { top: 33px; }
	.blockSearchSocial { top: 26px; }
	.header #logo { max-width: 180px; }
	.col_25_2.col h4 { font-size: 20px; }
	.col_25_3.col h4 { font-size: 20px; }
}