@charset "UTF-8";

/* フォント設定 */
.font-serif {
  font-family: 'Times New Roman', serif;
}
.font-sans {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* スクロールアニメーション */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* 背景画像 */
.bg-hero {
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}
.bg-closing {
  background-image: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.8)), url('../img/office_bg_2.webp');
  background-size: cover;
  background-position: center;
}

/* その他ユーティリティ */
.border-fine {
  border-color: rgba(255,255,255,0.1);
}

/* iPhoneのバグ対応 */
@media screen and (min-width: 769px) {
  .bg-hero {
    background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.9)), url('../img/office_bg_3.webp');
  }
}
@media screen and (max-width: 768px) {
  section:not(.bg-hero) {
    background-color: #0a0a0a;
  }

  .bg-hero {
    position: relative;
    z-index: 0;
    background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.9));
  }

  body::after {
    content: "";
    display:block;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background-image: url('../img/office_bg_3.webp');
    background-size: cover;
    background-position: center;
    z-index: -1;
  }
}
