/* =============================
   Entrance Page SAFE BASE
============================= */

body.page-template-two-column-profile-php {
  overflow: hidden;
}

/* Layout */
body.page-template-two-column-profile-php .split-hero {
  display: flex;
  width: 100%;
}

body.page-template-two-column-profile-php {
  margin-top: 0;
}

body.page-template-two-column-profile-php .custom-header {
  position: fixed;
  top: 0;
}


body.page-template-two-column-profile-php .split-block {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background-size: cover;
  background-position: center;
}

/* Background */
body.page-template-two-column-profile-php .split-left {
  background-image: url("https://u-s-u.com/wp-content/themes/kadence-child/images/left01.jpg");
}

body.page-template-two-column-profile-php .split-right {
  background-image: url("https://u-s-u.com/wp-content/themes/kadence-child/images/right01.jpg");
}

/* Logo */
body.page-template-two-column-profile-php .logo-image {
  width: 200px;
  height: auto;
}

/* Mobile */
@media (max-width: 768px) {
  body.page-template-two-column-profile-php .split-hero {
    flex-direction: column;
  }
}

/* Mobile: 確実に上下にする */
@media (hover: none) and (pointer: coarse) {
  body.page-template-two-column-profile-php .split-hero {
    flex-direction: column;
  }
}

@media (hover: none) and (pointer: coarse) {
  body.page-template-two-column-profile-php .logo-image {
    width: 850vw;
    max-width: 380px;
  }
}

@media (max-width: 1024px) and (orientation: portrait) {
  body.page-template-two-column-profile-php .split-hero {
    flex-direction: column;
  }
}

@media (hover: none) and (pointer: coarse) {

  body.page-template-two-column-profile-php .split-content {
    display: flex;
    align-items: center;
    justify-content: center;
  }

}

/* ロゴのフェード演出 */
body.page-template-two-column-profile-php .logo-image {
  transition: opacity 0.4s ease, transform 0.4s ease;
}

/* クリック後の状態 */
body.page-template-two-column-profile-php .split-block.is-tapped .logo-image {
  opacity: 0;
  transform: scale(0.96);
}

/* ロゴクリック時：一瞬沈む */
.two-column-entrance .logo-link.is-clicked .logo-image {
  opacity: 0.7;
  transform: scale(0.98);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

body.page-template-two-column-profile-php .split-hero {
  padding-bottom: env(safe-area-inset-bottom);
}


/* =============================
   Entrance Logo Interaction
============================= */

.two-column-entrance .split-content {
  pointer-events: none;
}

/* ロゴだけクリック可 */
.two-column-entrance .logo-link {
  pointer-events: auto;
  display: inline-block;
}

/* 初期状態：うっすら下から */
.two-column-entrance .logo-image {
  opacity: 0;
  transform: translateY(6px) scale(0.98);
  transition: opacity 1.4s ease, transform 1.4s ease;
}

/* ページ侵入後 */
.two-column-entrance.is-loaded .logo-image {
  opacity: 0.9;
  transform: translateY(0) scale(1);
}

/* ホバー：ほんの気配だけ */
.two-column-entrance .logo-link:hover .logo-image {
  opacity: 1;
  transform: scale(1.02);
}

.logo-image {
  filter: blur(0.25px);
  mix-blend-mode: screen;
}


body.page-template-two-column-profile-php {
  overflow: hidden;
}

/* ヘッダーは被せる */
body.page-template-two-column-profile-php .custom-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

/* heroは純粋に画面いっぱい */
body.page-template-two-column-profile-php .split-hero {
  display: flex;
  width: 100%;
  height: 100svh;
}


/* =============================
   Entrance Background Layers FIX
============================= */

.page-template-two-column-profile-php .split-block {
  position: relative;
  overflow: hidden;
}

/* 背景ラッパー */
.page-template-two-column-profile-php .bg-wrap {
  position: absolute;
  inset: 0;
  z-index: 0;
}

/* 背景レイヤー */
.page-template-two-column-profile-php .bg-layer {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 2.5s ease;
}

/* 表示中 */
.page-template-two-column-profile-php .bg-layer.is-active {
  opacity: 1;
}

/* ロゴは最前面 */
.page-template-two-column-profile-php .split-content {
  position: relative;
  z-index: 2;
}

/* =============================
   Entrance FINAL HEIGHT FIX
============================= */

body.page-template-two-column-profile-php .split-hero {
  display: flex;
  width: 100%;
  height: 100vh;          /* ← PCはこれが一番安定 */
  max-height: 100vh;
  overflow: hidden;
}

/* モバイルだけ dvh */
@media (hover: none) and (pointer: coarse) {
  body.page-template-two-column-profile-php .split-hero {
    height: 100dvh;
    padding-bottom: env(safe-area-inset-bottom);
  }
}

/* 常に均等 */
body.page-template-two-column-profile-php .split-block {
  flex: 1;
}

body.page-template-two-column-profile-php .custom-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
