:root {
  --topicsSectionHeight:90px; }

body:not(.scrolled) #head::before {
  opacity: 0;
  filter: Alpha(opacity=0); }
body:not(.scrolled) #head .logo_wrap .logo .icon {
  background-image: url(../images/home/logo.png); }

#contents {
  padding-top: 0 !important; }

#mv {
  height: 100svh; }
  #mv .bg_wrap img,
  #mv .bg_wrap source {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  #mv .mark .icon,
  #mv .copy .icon,
  #mv .en .icon {
    width: 100%;
    height: 100%; }
  #mv .mark {
    mix-blend-mode: color-dodge;
    width: 90%;
    aspect-ratio: 472/498;
    max-width: 472px; }
    #mv .mark .icon {
      background-image: url("../images/common/logo_mark.png"); }
  #mv .wappen {
    position: absolute;
    bottom: calc( var(--space2) + 80px );
    left: var(--space2);
    width: 100px;
    height: 100px; }
    #mv .wappen .icon {
      width: 100%;
      height: 100%;
      background-image: url("../images/common/wappen_10th.png"); }
  #mv .inner {
    position: relative;
    height: 100%;
    z-index: 1;
    box-sizing: border-box;
    padding-top: calc( var(--headHeight) + var(--space4) );
    padding-bottom: var(--space4);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    #mv .inner .copy {
      aspect-ratio: 13/44;
      width: 130px; }
      #mv .inner .copy .icon {
        background-image: url("../images/home/mv_copy_sp.png"); }
    #mv .inner .en {
      position: absolute;
      bottom: var(--space4);
      left: 0;
      right: 0;
      margin: auto;
      aspect-ratio: 98/6;
      width: 100%;
      max-width: 490px; }
      #mv .inner .en .icon {
        background-image: url("../images/home/mv_eng_name.png"); }
  @media (min-width: 768px) {
    #mv {
      height: calc( 100svh - var(--topicsSectionHeight) ); }
      #mv .inner {
        padding-top: var(--space4); }
        #mv .inner .copy {
          aspect-ratio: 91/15;
          width: 100%;
          max-width: 910px; }
          #mv .inner .copy .icon {
            background-image: url("../images/home/mv_copy.png"); }
      #mv .wappen {
        bottom: var(--space2); } }
  @media (min-width: 768px) {
    #mv .wappen {
      left: var(--space4); } }

#topics {
  padding: var(--space4) 0; }
  #topics .section_body_wrap {
    height: 100%;
    display: flex;
    align-items: center; }
  #topics .list_wrap.list_news_wrap {
    width: 100%;
    grid-gap: var(--space1); }
    #topics .list_wrap.list_news_wrap .list {
      border-bottom: 0px; }
  @media (min-width: 768px) {
    #topics {
      padding: var(--space1) 0;
      box-sizing: border-box;
      height: var(--topicsSectionHeight); }
      #topics .list_wrap.list_news_wrap .list > .inner {
        padding: 0;
        align-items: center; }
        #topics .list_wrap.list_news_wrap .list > .inner .cont .text {
          line-height: 1.5;
          font-size: var(--fontSize_n); } }

#corporate {
  height: fit-content;
  min-height: 100svh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: calc( var(--headHeight) + var(--space4) ) !important; }
  #corporate::before {
    content: "";
    width: 90%;
    aspect-ratio: 472/498;
    max-width: 472px;
    background: url(../images/common/logo_mark.png) no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 40%;
    left: 0;
    right: 0;
    margin: auto; }
  #corporate .block {
    margin-left: auto;
    margin-right: auto; }
    #corporate .block.block_outline .picture {
      max-width: 719px;
      margin: var(--space4) auto 0 auto; }
  #corporate .section_body_wrap {
    z-index: 1; }
  @media (min-width: 1280px) {
    #corporate .block.block_outline .body {
      position: relative;
      min-height: 347px; }
    #corporate .block.block_outline .picture {
      position: absolute;
      top: 0;
      margin-top: 0;
      right: 0; } }

#course .sub_block {
  background: var(--colorGray);
  box-sizing: border-box;
  padding: var(--space3) var(--space2); }
  #course .sub_block .head {
    margin-bottom: var(--space3); }
    #course .sub_block .head .flex .helvetica.h4 {
      font-size: 1.5rem; }
  #course .sub_block .picture {
    max-width: 1012px;
    margin-left: auto;
    margin-right: auto; }
@media (max-width: 1279px) {
  #course .title_wrap {
    align-items: center;
    text-align: center; } }
@media (min-width: 768px) {
  #course .sub_block {
    padding: var(--space4); } }

#networking .columns {
  --columnColumnGap:var(--space3);
  --columnRowGap:var(--space4); }
  #networking .columns .column {
    position: relative; }
    #networking .columns .column .inner {
      display: flex;
      flex-direction: column;
      grid-gap: var(--space2);
      align-items: center;
      position: relative;
      z-index: 1; }
      #networking .columns .column .inner .text {
        width: 100%; }
    #networking .columns .column::before {
      width: 90%;
      aspect-ratio: 1/1;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      background: url("../images/common/logo_mark.png") no-repeat center center;
      background-size: contain;
      content: ""; }
    #networking .columns .column::after {
      width: 1px;
      height: 100%;
      position: absolute;
      top: 0;
      left: calc( 100% + var(--columnColumnGap) / 2 );
      background: #FFF;
      content: "";
      display: none; }
  @media (max-width: 767px) {
    #networking .columns .column:nth-child(odd):not(:last-child)::after {
      display: block; } }
  @media (min-width: 768px) {
    #networking .columns .column:not(:last-child)::after {
      display: block; } }
  @media (min-width: 1280px) {
    #networking .columns {
      --columnColumnGap:var(--space4); } }
