@charset "UTF-8";
/* ==========================================================================
   global-cta.css — 全ページ共通 追従CTA (PC: 右側固定 / SP: 後日)
   読み込み: header.php (全ページ常時)
   寸法: 1440px ベースの相対値 — calc(N * var(--u) / 1440)
   ========================================================================== */

:root {
  --u: min(100vw, 1440px);
  --gcta-c-ink: #544b42;
  --gcta-c-base: #fcfcfc;
  --gcta-ff-en: 'Roboto', 'Noto Sans JP', sans-serif;
}

.global-cta {
  position: fixed;
  right: 0;
  top: calc(305 * var(--u) / 1440);
  z-index: 80;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  pointer-events: none;
}

.global-cta__btn {
  pointer-events: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(5 * var(--u) / 1440);
  padding: calc(10 * var(--u) / 1440);
  font-family: var(--gcta-ff-en);
  font-weight: 700;
  font-size: calc(16 * var(--u) / 1440);
  line-height: 1;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  transition: opacity .2s ease;
}

.global-cta__btn:hover { opacity: .85; }

.global-cta__btn--web {
  width: calc(92 * var(--u) / 1440);
  background: rgba(124, 191, 8, 0.85);
  color: var(--gcta-c-ink);
}

.global-cta__btn--tel {
  width: calc(136 * var(--u) / 1440);
  margin-top: calc(20 * var(--u) / 1440);
  background: rgba(84, 75, 66, 0.85);
  color: var(--gcta-c-base);
}

.global-cta__icon {
  display: block;
  width: calc(33 * var(--u) / 1440);
  height: calc(33 * var(--u) / 1440);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.global-cta__icon--web { background-image: url('images/cta_icon-web.svg'); }
.global-cta__icon--tel { background-image: url('images/cta_icon-tel.svg'); }

.global-cta__label { display: block; }

/* SP/タブレット (1024px以下) は front-page の home-cta-sp 等が担当するため非表示 */
@media (max-width: 1024px) {
  .global-cta { display: none; }
}
