/* --- 1280px --------------------------------------------- */
/* -- iPad --------------------------------------------- */
/* --- 980px --------------------------------------------- */
@media only screen and (max-width: 979px) {
  .frontpage #keyvisual .headline_box h1 {
    font-size: 60px;
  }
  .section.quote .quote, .section.img_full_quote .quote {
    font-size: 32px;
  }
  #nav_mobile li a {
    font-size: 24px;
  }
  #meta_minimenu {
    display: none;
  }
}
/* --- widescreen laptop? --------------------------------------------- */
/* --- 768px --------------------------------------------- */
@media only screen and (max-width: 767px) {
  .frontpage #keyvisual .headline_box h1 {
    font-size: 50px;
  }
  #keyvisual .headline_box, .frontpage #keyvisual .headline_box {
    position: relative;
    left: 5% !important;
    right: auto;
    width: 90% !important;
    max-width: 90%;
  }
  #keyvisual .textblock {
    position: relative !important;
    left: 0px !important;
    width: 100% !important;
    margin-top: 0px !important;
  }
  .section.img_text .container .headlinebox, .section.img_full_text .headlinebox {
    left: 5% !important;
    width: 90%;
    max-width: 100% !important;
  }
}
/* --- 650px --------------------------------------------- */
@media only screen and (max-width: 650px) {
  #meta_minimenu {
    display: none;
  }
  #social_icons {
    left: 10px;
    flex-direction: column;
  }
  #mobilmenu_trigger {
    right: 10px;
  }
  .section.img_text .container, .section.img_text_small .container, .section.tiles_big .textcontainer {
    flex-wrap: wrap;
  }
  .section.img_text .container > *, .section.img_text_small .container > *, .section.tiles_big .textcontainer > * {
    width: 100% !important;
    text-align: left;
    margin-bottom: 20px;
  }
  .section.img_text .container .right .textbox, .section.img_text_small .container .right .textbox, .section.tiles_big .textcontainer .right .textbox {
    padding: 0px;
  }
  .section.img_full_text .textbox {
    position: relative;
    top: 0px !important;
    left: 0px !important;
    max-width: 100% !important;
    width: 100%;
    box-sizing: border-box;
    padding: 0px;
  }
  .section.img_text .container .headlinebox, .section.img_full_text .headlinebox {
    position: relative;
    top: 0px !important;
    left: 0px !important;
  }
  #social_icons {
    display: none;
  }
  #mobilemenu_container {
    height: 100vh;
    flex-direction: column;
    justify-content: flex-start;
  }
  #nav_mobile {
    flex-wrap: wrap;
    max-height: 9999px;
    margin-bottom: 0px;
    margin-top: 120px;
  }
  #nav_mobile li.lvl1 {
    width: 100%;
    margin-bottom: 0px;
    text-align: center;
  }
  #nav_mobile li.lvl2 a {
    font-size: 24px;
  }
  #nav_mobile li.lvl2 {
    margin-bottom: 20px;
  }
  #nav_mobile li.lvl2 a span {
    display: none;
  }
  #nav_mobile li.smalllink a span {
    display: block;
  }
  #nav_mobile .smalllink > div a {
    font-size: 16px;
  }
  .section.text .textbox, .section.text .headlinebox {
    max-width: 100% !important;
  }
  .section.img_full_quote .headlinebox {
    position: relative;
    max-width: 100%;
    margin: auto;
    left: 0px !important;
  }
  .section.img_full_text .container {
    padding-bottom: 0px;
    padding-top: 0px;
  }
  .section.tiles_big .textcontainer .headlinebox {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px;
  }
  .section.tiles_big .tiles_container .item {
    width: calc(100% - 12px) !important;
    padding-bottom: 50%;
  }
  .section.tiles_text .tiles_container .item {
    width: calc(50% - 10px);
  }
  .text p:empty {
    display: none;
  }
}
/* --- 580px --------------------------------------------- */
@media only screen and (max-width: 584px) {
  body {
    font-size: 15px;
  }
  .frontpage #keyvisual .headline_box h1 {
    font-size: 36px;
  }
  h1, .h1, h2, .h2 {
    font-size: 30px;
  }
  h2 {
    transform: translateY(0px) !important;
  }
  .section.quote .quote, .section.img_full_quote .quote {
    font-size: 25px;
  }
  .section.quote .quote:before, .section.img_full_quote .quote:before {
    width: 100px;
    height: 100px;
  }
  #logo {
    width: 150px;
  }
  #keyvisual {
    padding-top: 50px !important;
  }
  #footer .container .footer_textbox, #footer .container .footer_logo {
    justify-content: center;
    padding-left: 0px;
    text-align: center;
  }
  #footer .container .footer_textbox a {
    display: block;
    text-align: center;
    margin-bottom: 10px;
  }
  #footer .container .footer_textbox span {
    display: none;
  }
  .section.image_slider .item img {
    width: 75vw;
  }
  .slick-arrow.prev {
    left: -5px;
    z-index: 5;
  }
  .slick-arrow.next {
    right: -5px;
    z-index: 5;
  }
  .section.img_text .container .left img:last-Child {
    display: none;
    /* good? */
  }
  .section.tiles_small .tiles_container .item {
    width: calc(100% - 12px);
    padding-bottom: 75%;
  }
  .section.tiles_small .tiles_container .titlebox .title {
    padding: 20px;
  }
  .section.tiles_small .tiles_container .titlebox {
    max-height: 9999px;
  }
  .section.tiles_small .tiles_container .titlebox .text {
    font-size: 15px;
  }
}
/* --- 480px --------------------------------------------- */
/* --- 380px --------------------------------------------- */
/* mobile LANDSCAPE ---------------------------------------------*/
