@charset "UTF-8";
/**
 * ViewPort Mixin and setting rem to pixel.
 */
/** ここでデザインファイルのサイズを入力 */
/**
 * mixin
 */
/**
 * pxをvwで返す関数
 */
/** デスクトップ上でpxをvwを返す */
/** モバイル上でpxをvwを返す */
/** largeDisplay（1536px以上）でウィンドウサイズサイズに追従するための関数 */
/**
 * Colors
 */
.main--company .firstview {
  position: relative;
  width: 100%;
}
@media (max-width: 768px) {
  .main--company .firstview {
    height: 125vw;
    margin-top: 75rem;
  }
}
.main--company .firstview video, .main--company .firstview .vimeo-container {
  width: 100%;
  line-height: 0;
}
@media (max-width: 768px) {
  .main--company .firstview video, .main--company .firstview .vimeo-container {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
  }
}
@media (max-width: 768px) {
  .main--company .firstview video {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.main--company .firstview .vimeo-container {
  aspect-ratio: 16/9;
  overflow: hidden;
}
@media (max-width: 768px) {
  .main--company .firstview .vimeo-container {
    aspect-ratio: 4/5;
  }
}
.main--company .firstview .vimeo-container .vimeo-player {
  width: 100%;
  height: 100%;
}
@media (max-width: 768px) {
  .main--company .firstview .vimeo-container .vimeo-player {
    width: 224%;
    height: 100%;
  }
}
.main--company .firstview .heading1 {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 43rem;
  transform: translate(-50%, -50%);
  filter: drop-shadow(0 0 24px rgba(0, 0, 0, 0.12));
}
@media (max-width: 768px) {
  .main--company .firstview .heading1 {
    width: 36rem;
  }
}
.main--company .firstview .youtube {
  position: absolute;
  bottom: 36rem;
  left: 45rem;
  z-index: 1;
  width: 300rem;
}
@media (max-width: 768px) {
  .main--company .firstview .youtube {
    display: none;
  }
}