/* Darstellung html5 im IE8 */
header,
nav,
section,
footer {
  display: block;
}

/*grundlayout -------------------------------------------------------------------------*/

html {
  /*overflow-y: scroll; scrollbar fix (prevent ugly left pull for lower content sites) */
}
body {
  margin: 0;
  /*    height: 100vh;*/
}
header,
nav {
  width: 100%;
  float: left;
  margin: 0;
}
ul {
  padding: 0;
  margin: 0;
}
li {
  margin: 0;
}
a {
  text-decoration: none;
}
footer {
  width: 100%;
  position: relative;
  z-index: 2;
  background: #fff;
}
footer p {
  text-align: right;
}
#content {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
}
* {
  box-sizing: border-box;
}
*::after {
  visibility: hidden;
  display: none;
  content: "";
  clear: both;
}
.container {
  width: 100%;
  clear: both;
  margin: 0;
  position: relative;
}
strong::after,
em::after,
sup::after,
span::after,
a::after {
  clear: both;
  content: "";
  display: inline;
  visibility: hidden;
}
em::after {
  clear: both;
  content: "";
  display: inline;
  visibility: hidden;
}
.responsiv {
  display: none;
  width: 40px;
  margin: 0 20px 0 0;
}

.hidden {
  display: none;
}
.error {
  color: red;
}
.text_center {
  text-align: center;
}
.flex {
  display: flex;
}
.justify_center {
  justify-content: center;
}
.justify_around {
  justify-content: space-around;
}
.justify_between {
  justify-content: space-between;
}
.align_center {
  align-items: center;
}
.flex_column {
  flex-direction: column;
}
.inhalt_30 {
  width: 30%;
  margin: 0 auto;
}
.inhalt_40 {
  width: 40%;
  margin: 0 auto;
}
.inhalt_1024 {
  width: 1500px;
  margin: 0 auto;
  display: flex;
}
.col_20 {
  float: left;
  width: 19%;
  min-height: 1px;
}
.col_25 {
  float: left;
  width: 24%;
  min-height: 1px;
}

.col_33 {
  float: left;
  width: 33%;
  min-height: 1px;
}
.col_40 {
  float: left;
  width: 39%;
  min-height: 1px;
}
.col_50 {
  float: left;
  width: 49%;
  min-height: 1px;
}
.col_60 {
  width: 59%;
  float: left;
  min-height: 1px;
}
.col_66 {
  width: 65%;
  float: left;
  min-height: 1px;
}
.col_75 {
  width: 74%;
  float: left;
  min-height: 1px;
}
.col_100 {
  width: 99%;
  float: left;
  min-height: 1px;
}
.li_re {
  padding: 0 2%;
}
.ob_unt {
  padding: 5% 0;
}
.padd_links {
  padding-left: 5%;
}
.padd_rechts {
  padding-right: 5%;
}
.padd_oben {
  padding-top: 2vh !important;
}
.inhalt {
  position: relative;
}
.absolut {
  position: absolute;
}
.floatright {
  float: right;
}
/*Media-Queries-------------------------------------------*/
@media only screen and (max-width: 1500px) {
  .inhalt_1024 {
    width: 1200px;
  }
}
@media only screen and (max-width: 1200px) {
  .inhalt_1024 {
    width: 100%;
  }
}
@media only screen and (max-width: 980px) {
  /*.col_25,.col_33,.col_40,.col_50,.col_66,.col_75{
   width: 90%;
   margin-left: 5%;
}
.flex{
    display: block!important;
}*/
  .inhalt_30,
  .inhalt_40 {
    width: 70%;
  }
  .top_nav > ul {
    width: 230px !important;
    display: block !important;
    position: absolute;
    top: 10px;
    right: 0;
    background: #fff;
    margin-top: 10px !important;
  }
  .collaps {
    display: none;
    margin: 0 !important;
    width: 220px;
    height: 50px !important;
    padding: 0 0 20px 10px;
    background: #fff;
    float: left;
  }
  .responsiv {
    display: block;
  }
}
@media only screen and (max-width: 590px) {
}
@media only screen and (max-width: 450px) {
  .col_25,
  .col_33,
  .col_40,
  .col_50,
  .col_66,
  .col_75 {
    width: 90%;
    margin-left: 5%;
  }
  .flex {
    display: block !important;
  }
  .inhalt_30,
  .inhalt_40 {
    width: 85%;
  }
}
