/* =====================================================================
   Vertex Plus Sakura ─ アプリ内ブラウザ 再生オーバーレイ非表示レイヤー
   BloomCode-Studio / 2026-06-02
   ---------------------------------------------------------------------
   目的:
   - KakaoTalk等のアプリ内ブラウザで、自動再生が始まるまでの数秒間、
     ポスター画像の「上に」重ねて描画される標準の再生ボタン
     （-webkit-media-controls-overlay-play-button / start-playback-button）
     を抑制する。
   - 対象は全カバーブロック背景動画（FV＋各ページ冒頭3本含む全動画）。
     クラス指定のため動画ごとの記述は不要で一括適用。
   設計上の安全性:
   - これらは装飾用の背景動画（autoplay muted loop playsinline・controls無し）。
     自動再生自体は止めないので、オーバーレイだけ消えて従来どおり再生される。
   - 万一どこかの環境で自動再生がブロックされても、表示されるのはポスター
     （実映像の1コマ）であり、装飾動画としては自然なフォールバックになる。
   配置:
   - 既存追加CSS（910行）に未閉ブレースがあるため、必ず「追加CSSの先頭側」
     ＝ FV動画ポスターのブロック直後に貼ること。末尾追記は無効化される。
     （詳細経緯: PC最適化CSSが末尾だと不発→先頭移動で解決した件と同一原因）
   ===================================================================== */
.wp-block-cover__video-background::-webkit-media-controls,
.wp-block-cover__video-background::-webkit-media-controls-overlay-play-button,
.wp-block-cover__video-background::-webkit-media-controls-start-playback-button,
.wp-block-cover__video-background::-webkit-media-controls-play-button,
.wp-block-cover__video-background::-webkit-media-controls-panel {
  display: none !important;
  -webkit-appearance: none !important;
  opacity: 0 !important;
}

/* FV動画ポスター（KakaoTalk等アプリ内ブラウザのロード遅延対策）BloomCode-Studio 2026-06-02 */
video[src*="X4g3BQok"] {   /* トップページFV */
  background-image: url(https://vertexgallerycafe.org/wp-content/uploads/2026/06/fv-poster-top.webp);
  background-size: cover; background-position: center; background-repeat: no-repeat;
}
video[src*="1uKChITF"] {   /* 下層4カ国ページFV */
  background-image: url(https://vertexgallerycafe.org/wp-content/uploads/2026/06/fv-poster.webp);
  background-size: cover; background-position: center; background-repeat: no-repeat;
}




/* =====================================================================
   Vertex Plus Sakura ─ PC・大型モニタ表示最適化レイヤー
   BloomCode-Studio / 2026-06-02
   ---------------------------------------------------------------------
   設計方針:
   - すべて @media (min-width:…) のみ。スマホ/タブレット縦は一切不変更
     （モバイル無干渉：実機390px のピクセル差分0%で実証済）
   - テキスト・画像・動画そのものは変更しない（表示幅・文字サイズ・余白の最適化のみ）
   - テーマ標準の構造（content-size / カバーブロック）に対して上から足すだけ。
     既存の追加CSS（旧クラス群）には触れない
   - 主レバー = テーマ変数 --content-size（既定 650px）を大画面でのみ拡張
     → 本文・ヒーローが中央650pxに収束して間延びする現象を解消
   - 値は実レンダリング検証済の安全域。ライブプレビューで微調整可（推奨レンジを各所に明記）
   ===================================================================== */


/* ============================================================
   L2 ── PC標準（1280px〜1919px）
   目的: 視認性向上。本文コラム幅を広げ、ヘッダーロゴを適度に拡大
   ============================================================ */
@media (min-width: 1280px) {

  /* 本文コラムの最大幅を 650px → 880px に拡張（推奨レンジ 820–920px）
     constrained ブロック全体に効くため、ヒーロー(constrainedカバー)も連動して拡大 */
  .wrapper.colorful_content .entry-content {
    --wp--style--global--content-size: 880px;
  }

  /* ヘッダーロゴ（エンブレム）拡大: inline max-width:420px を上書き（推奨 520–600px） */
  .entry-content > div:first-child img[style*="max-width:420px"] {
    max-width: 560px !important;
  }

  /* CTAボタン（DIRECT MESSAGE TO YAMASHITA）拡大: 420 → 500px（フォーム導線・中盤/下部両方） */
  .entry-content a[href*="contact-form"] img {
    max-width: 500px !important;
  }

}


/* ============================================================
   L3 ── 大型モニタ（1920px〜）
   目的: コンテンツ幅の上限制御＋左右余白の最適化（無限に間延びさせない）
   ============================================================ */
@media (min-width: 1920px) {

  /* 上限を 1040px に設定（推奨レンジ 1000–1120px）。
     これ以上画面が広くても本文は中央1040pxで固定＝「上限制御」 */
  .wrapper.colorful_content .entry-content {
    --wp--style--global--content-size: 1040px;
  }

  .entry-content > div:first-child img[style*="max-width:420px"] {
    max-width: 620px !important;
  }

  /* CTAボタン拡大: 大型モニタは 560px */
  .entry-content a[href*="contact-form"] img {
    max-width: 560px !important;
  }

}


/* ============================================================
   タイポグラフィの大画面スケール（PC視認性の本丸）
   ------------------------------------------------------------
   先方ご依頼の核心＝「PCで文字が小さすぎて読みにくい」への対応。
   本文は inline で個別 font-size 指定（実測の主役は 13px が227箇所）。
   PC幅でのみ各サイズを底上げ。スマホは @media 外なので一切不変更。
   ※ letter-spacing / line-height は既存維持（世界観・可読性を崩さない）
   ※ 12px（コピーライト等の細字）は意図的に据え置き
   ※ 値はライブプレビューで微調整可（推奨レンジを併記）
   ============================================================ */
@media (min-width: 1280px) {
  .entry-content [style*="font-size:13px"] { font-size: 16px !important; } /* 主役の本文（+1px・気持ち大きめ） */
  .entry-content [style*="font-size:14px"] { font-size: 17px !important; }
  .entry-content [style*="font-size:15px"] { font-size: 18px !important; }
  .entry-content [style*="font-size:17px"] { font-size: 20px !important; }
  .entry-content [style*="font-size:18px"] { font-size: 21px !important; }
  .entry-content [style*="font-size:20px"] { font-size: 23px !important; }
  .entry-content [style*="font-size:22px"] { font-size: 26px !important; }
}
@media (min-width: 1920px) {
  .entry-content [style*="font-size:13px"] { font-size: 18px !important; } /* 大型モニタ本文＝18px */
  .entry-content [style*="font-size:14px"] { font-size: 19px !important; }
  .entry-content [style*="font-size:15px"] { font-size: 20px !important; }
  .entry-content [style*="font-size:17px"] { font-size: 22px !important; }
  .entry-content [style*="font-size:18px"] { font-size: 23px !important; }
  .entry-content [style*="font-size:20px"] { font-size: 25px !important; }
  .entry-content [style*="font-size:22px"] { font-size: 28px !important; }
}







.logo-fade img {
  display: block;
  margin: 0 auto;
  opacity: 0;
  transform: translate3d(0, 32px, 0);
  animation: logoFadeSoft 4.2s cubic-bezier(0.23, 1, 0.32, 1) forwards;
  will-change: opacity, transform;
  backface-visibility: hidden;
}

@keyframes logoFadeSoft {
  from {
    opacity: 0;
    transform: translate3d(0, 32px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fade-in-logo {
  opacity: 0;
  transform: translateY(30px);
  animation: fadeUp 0.9s ease-out forwards;
  animation-delay: 0.9s;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.wp-block-button.vision-button {
  filter: drop-shadow(0 12px 28px rgba(0,0,0,0.35));
}
.fade-up 
.fade-up {
.vps-sakura-reveal {
  opacity: 0;
  filter: brightness(1.8) blur(3px);
  transform: translateY(18px) scale(0.98);
  animation: vpsSakuraReveal 5.5s ease-out forwards;
}

@keyframes vpsSakuraReveal {
  0% {
    opacity: 0;
    filter: brightness(1.8) blur(3px);
    transform: translateY(18px) scale(0.98);
  }

  45% {
    opacity: 0.45;
    filter: brightness(1.35) blur(1.5px);
  }

  100% {
    opacity: 1;
    filter: brightness(1) blur(0);
    transform: translateY(0) scale(1);
  }
}
  opacity: 0;
	float-logo {
  animation: floatUpDown 3s ease-in-out infinite;
}

@keyframes floatUpDown {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-12px);
  }
  100% {
    transform: translateY(0px);
  }
}
  transform: translateY(40px);
  transition: opacity 1.8s ease-out, transform 1.8s ease-out;
}

.fade-up.show {
  opacity: 1;
  transform: translateY(0);
}
.sub-link-box {
fade-all {
  opacity: 0;
  transform: translateY(-40px);
  animation: simpleFade 1.5s ease forwards;
}

@keyframes simpleFade {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
  max-width: 720px;
  margin: 24px auto 60px auto;
  padding: 28px 24px;
  background: #F8F6F2;
  text-align: center;
  border: 1px solid rgba(0,0,0,0.06);
}

.sub-link-title {
  font-family: "Playfair Display", serif;
  font-size: 28px;
  line-height: 1.4;
  letter-spacing: 0.03em;
  color: #222;
  margin-bottom: 14px;
}

.sub-link-text {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 1.8;
  color: #555;
  margin-bottom: 22px;
}

.sub-link-button {
  display: inline-block;
  padding: 12px 26px;
  font-family: "Montserrat", sans-serif;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
  background: #1F1F1F;
}

.sub-link-button:hover {
  opacity: 0.85;
}

@media (max-width: 768px) {
  .sub-link-box {
    margin: 18px 16px 42px 16px;
    padding: 22px 18px;
  }

  .sub-link-title {
    font-size: 22px;
    line-height: 1.5;
  }

  .sub-link-text {
    font-size: 15px;
    line-height: 1.7;
  }

  .sub-link-button {
    font-size: 12px;
    padding: 11px 22px;
  }
}
.lang-switcher-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 30px 0 20px;
}

.lang-switcher {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lang-switcher a {
  position: relative;
  display: inline-block;
  padding: 0 16px;
  font-size: 14px;
  color: #333;
  text-decoration: none; /* ←これ超重要（下線消す） */
  letter-spacing: 0.03em;
  white-space: nowrap;
}

/* 区切り線（高級感のポイント） */
.lang-switcher a:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 1px;
  height: 14px;
  background: rgba(0,0,0,0.25);
  transform: translateY(-50%);
}

/* ホバー（上品に） */
.lang-switcher a:hover {
  opacity: 0.7;
}	
	/* 基本：ゆっくり浮かす */
.art-frame {
  display: inline-block;
  animation: floatSlow 5.5s ease-in-out infinite;
  will-change: transform;
}

/* 影で浮遊感を出す */
.art-frame img {
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}
[contact-form-7 id="7681547" title="コンタクトフォーム 1"]

/* 時間差用（遅れて動く） */
.art-frame.delay {
  animation-delay: 1.8s;
}

/* 浮かす動き */
@keyframes floatSlow {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-5px); }
  100% { transform: translateY(0px); }
}
  opacity: 0;
  transform: translateY(20px);
  animation: fadeUp 1.5s ease forwards;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 基本：ゆっくり浮かす */
.art-frame {
  display: inline-block;
  animation: floatSlow 5.5s ease-in-out infinite;
  will-change: transform;
}

/* 影で浮遊感を出す */
.art-frame img {
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

/* 時間差用（遅れて動く） */
.art-frame.delay {
  animation-delay: 1.8s;
}

/* 浮かす動き */
@keyframes floatSlow {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-5px); }
  100% { transform: translateY(0px); }
}
.video-wrap {
  position: relative;
  width: 100vw;
  height: 100vh;
  margin-left: calc(-50vw + 50%);
  overflow: hidden;
}

.bg-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120%;
  height: 120%;
  object-fit: cover;
  transform: translate(-50%, -50%);
}

.video-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.25);
  top: 0;
  left: 0;
}

.video-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 36px;
  font-family: serif;
  z-index: 2;
}
.voice-player {
  text-align: center;
  margin-top: 40px;
}

.voice-title {
  font-size: 20px;
  color: #d4af37;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.play-btn {
  font-size: 50px; /* ←三角の大きさ */
  color: white; /* ←白に変更 */
  cursor: pointer;
  transition: 0.3s;
}

.play-btn:hover {
  transform: scale(1.2);
  opacity: 0.8;
}
vps-float-wrap
.vps-cover-float {
  animation: vpsCoverFloat 5s ease-in-out infinite;
}

@keyframes vpsCoverFloat {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}
.vps-float-wrap {
  animation: vpsFloatWrapFix 1.2s ease-in-out infinite !important;
}

@keyframes vpsFloatWrapFix {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0px);
  }
}
.vps-float-wrap {
  animation: vpsFloatLuxury 6s ease-in-out infinite !important;
}

@keyframes vpsFloatLuxury {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-4px);
  }
  100% {
    transform: translateY(0px);
  }
}
.vps-float-wrap {
  animation: vpsCoverFloat 8s ease-in-out infinite !important;
}

@keyframes vpsCoverFloat {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(0px);
  }
}
.vps-float-wrap {
  animation-name: vpsFloatEditor !important;
  animation-duration: 8s !important;
  animation-timing-function: ease-in-out !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running !important;
  transform: translateY(0) !important;
}

@keyframes vpsFloatEditor {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-3px); }
  100% { transform: translateY(0px); }
}
.vps-float-wrap {
  animation-name: vpsFloatTest !important;
  animation-duration: 1s !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running !important;
}

@keyframes vpsFloatTest {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-20px); }
  100% { transform: translateY(0px); }
}
body {
  animation: fadeDownAll 1.5s ease;
}

@keyframes fadeDownAll {
  from {
    opacity: 0;
    transform: translateY(-40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.topnew-float img {
  display: block;
  margin: 0 auto;
  animation: topnewFloat 6.5s ease-in-out infinite;
  will-change: transform, opacity;
}

@keyframes topnewFloat {
  0% {
    transform: translateY(0px);
    opacity: 0.96;
  }
  50% {
    transform: translateY(-10px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0.96;
  }
}
.topnew-float img {
  display: block;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(30px) scale(0.92);
  animation: topnewAppear 1.8s ease-out forwards, topnewFloat 7s ease-in-out 1.8s infinite;
  will-change: transform, opacity;
}

@keyframes topnewAppear {
  0% {
    opacity: 0;
    transform: translateY(30px) scale(0.92);
  }
  60% {
    opacity: 1;
    transform: translateY(-6px) scale(1.02);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes topnewFloat {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-6px);
  }
  100% {
    transform: translateY(0px);
  }
}
.topnew-fadeup img {
  display: block;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(22px) scale(0.97);
  animation: topnewFadeUpElegant 1.8s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
  will-change: transform, opacity;
}

@keyframes topnewFadeUpElegant {
  0% {
    opacity: 0;
    transform: translateY(22px) scale(0.97);
  }
  60% {
    opacity: 1;
    transform: translateY(-2px) scale(1.01);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
transition: opacity 2.2s ease-out, transform 2.2s ease-out;
.top-copy {
  text-align: center;
  font-size: clamp(34px, 7vw, 64px);
  line-height: 1.12;
  letter-spacing: 0.01em;
  margin: 34px 0 18px 0;
}

.top-copy br {
  display: none;
}

@media (max-width: 768px) {
  .top-copy {
    font-size: 24px;
    line-height: 1.18;
    margin: 26px 0 8px 0;
  }

  .top-copy br {
    display: block;
  }

  .hero-boy {
    margin-top: -8px;
  }
}
.float-soft {
  opacity: 0;
  transform: translateY(38px);
  animation: softRise 1.6s ease-out forwards;
  will-change: transform, opacity;
}

@keyframes softRise {
  0% {
    opacity: 0;
    transform: translateY(38px);
  }
  100% {
    opacity: 1;
    transform: translateY(0)
vps-gateway-reveal .wp-block-cover__image-background {
  opacity: 0;
  filter: brightness(1.8) blur(4px);
  transform: scale(1.04);
  animation: vpsGatewayReveal 6s ease-out forwards;
}

@keyframes vpsGatewayReveal {
  0% {
    opacity: 0;
    filter: brightness(1.8) blur(4px);
    transform: scale(1.04);
  }

  50% {
    opacity: 0.55;
    filter: brightness(1.35) blur(2px);
  }

  100% {
    opacity: 1;
    filter: brightness(1) blur(0);
    transform: scale(1);
  }
}
		
.vps-contact-box {
  max-width: 680px;
  margin: 60px auto;
  padding: 48px 34px;
  background: #fbfaf6;
  border-radius: 28px;
  border: 1px solid #e8e1d4;
  box-sizing: border-box;
}

.vps-contact-title {
  text-align: center;
  font-family: Georgia, serif;
  font-size: 40px;
  letter-spacing: 12px;
  font-weight: 400;
  margin-bottom: 40px;
  color: #222;
}

.vps-contact-box label {
  display: block;
  font-size: 18px;
  margin-bottom: 26px;
  color: #222;
}

.vps-contact-box label span {
  color: #b23b3b;
}

.vps-contact-box label em {
  color: #999;
  font-style: normal;
}

.vps-input,
.vps-message,
.vps-select {
  width: 100%;
  box-sizing: border-box;
  margin-top: 8px;
  padding: 18px 22px;
  border-radius: 10px;
  border: none;
  background: #2d2f33;
  color: #fff;
  font-size: 20px;
}

.vps-select {
  background: linear-gradient(90deg, #d7b878, #9b6f2f);
}

.vps-message {
  min-height: 220px;
}

.vps-note {
  background: #f5f3ee;
  border-left: 2px solid #c9a35d;
  padding: 24px 26px;
  margin: 28px 0 34px;
  font-size: 15px;
  line-height: 1.8;
  color: #444;
}

.vps-submit {
  width: 100%;
  padding: 20px;
  border-radius: 14px;
  border: none;
  background: linear-gradient(90deg, #d7b878, #9b6f2f);
  color: #fff;
  font-size: 20px;
  letter-spacing: 5px;
}

@media (max-width: 600px) {
  .vps-contact-box {
    margin: 35px auto;
    padding: 34px 22px;
    border-radius: 22px;
  }

  .vps-contact-title {
    font-size: 34px;
    letter-spacing: 9px;
  }
}
	.vps-contact-box{
  max-width:92%;
  margin:0 auto;
  padding:28px 22px;
  background:rgba(0,0,0,.88);
  border:1px solid rgba(212,175,55,.55);
  border-radius:18px;
  color:#fff;
}

.vps-contact-title{
  text-align:center;
  color:#fff;
  letter-spacing:.18em;
  font-size:24px;
  margin-bottom:26px;
}

.vps-field-label{
  color:#fff;
  font-size:14px;
  margin:18px 0 8px;
}

.vps-field-label span{
  color:#d4af37;
}

.vps-input,
.vps-select,
.vps-message{
  width:100% !important;
  box-sizing:border-box;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border:1px solid rgba(212,175,55,.45) !important;
  border-radius:10px;
  padding:13px 14px;
  font-size:16px;
}

.vps-message{
  min-height:180px;
}

.vps-note{
  color:rgba(255,255,255,.82);
  font-size:13px;
  line-height:1.8;
  margin-top:18px;
}

.vps-submit{
  width:100%;
  margin-top:22px;
  padding:14px 0 !important;
  background:linear-gradient(135deg,#111,#2b2413) !important;
  color:#fff !important;
  border:1px solid #d4af37 !important;
  border-radius:999px !important;
  letter-spacing:.16em;
  font-size:13px;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 select,
.wpcf7 textarea{
    width:100% !important;
    background:#111 !important;
    color:#fff !important;
    border:1px solid #d4af37 !important;
    border-radius:12px !important;
    padding:14px !important;
    font-size:16px !important;
    box-sizing:border-box !important;
}

.wpcf7 textarea{
    min-height:220px !important;
}

.wpcf7-submit{
    width:100% !important;
    background:#111 !important;
    color:#fff !important;
    border:1px solid #d4af37 !important;
    border-radius:999px !important;
    padding:16px !important;
    letter-spacing:.15em !important;
    font-size:13px !important;
}

.wpcf7-form p,
.wpcf7-form label,
.wpcf7{
    color:#fff !important;
}

.wpcf7{
    background:#000 !important;
    padding:30px !important;
    border-radius:20px !important;
}		
body.page-id-8271 .vps-contact-box,
body.page-id-8271 .wpcf7,
body.page-id-8271 form.wpcf7-form{
  background:#000 !important;
  color:#fff !important;
  padding:28px 22px !important;
  border:1px solid #d4af37 !important;
  border-radius:18px !important;
}

body.page-id-8271 .wpcf7 input,
body.page-id-8271 .wpcf7 textarea,
body.page-id-8271 .wpcf7 select{
  background:#111 !important;
  color:#fff !important;
  border:1px solid #d4af37 !important;
  border-radius:10px !important;
  width:100% !important;
  box-sizing:border-box !important;
}

body.page-id-8271 .wpcf7-submit{
  background:#111 !important;
  color:#fff !important;
  border:1px solid #d4af37 !important;
  border-radius:999px !important;
}		

/* VPS Singapore Contact - Final Mobile Luxury Form */
body.page-id-8271 .vps-contact-box{
  width:calc(100vw - 40px) !important;
  max-width:520px !important;
  margin:0 auto !important;
  padding:26px 20px !important;
  box-sizing:border-box !important;
  background:linear-gradient(180deg,#080808,#15110a) !important;
  border:1px solid rgba(212,175,55,.65) !important;
  border-radius:20px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.28) !important;
  color:#fff !important;
  overflow:hidden !important;
}

body.page-id-8271 .vps-contact-title{
  text-align:center !important;
  color:#fff !important;
  font-size:22px !important;
  letter-spacing:.18em !important;
  margin:0 0 24px !important;
}

body.page-id-8271 .vps-field-label{
  color:#fff !important;
  font-size:14px !important;
  font-weight:500 !important;
  margin:16px 0 7px !important;
}

body.page-id-8271 .vps-field-label span{
  color:#d4af37 !important;
}

body.page-id-8271 .vps-input,
body.page-id-8271 .vps-select,
body.page-id-8271 .vps-message{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border:1px solid rgba(212,175,55,.55) !important;
  border-radius:12px !important;
  padding:13px 14px !important;
  font-size:16px !important;
  outline:none !important;
}

body.page-id-8271 .vps-message{
  min-height:180px !important;
  resize:vertical !important;
}

body.page-id-8271 .vps-note{
  color:rgba(255,255,255,.78) !important;
  font-size:12.5px !important;
  line-height:1.75 !important;
  margin:18px 0 0 !important;
}

body.page-id-8271 .vps-submit{
  width:100% !important;
  margin-top:22px !important;
  padding:15px 0 !important;
  box-sizing:border-box !important;
  background:linear-gradient(135deg,#111,#2a210f) !important;
  color:#fff !important;
  border:1px solid #d4af37 !important;
  border-radius:999px !important;
  letter-spacing:.16em !important;
  font-size:13px !important;
  font-weight:600 !important;
}

body.page-id-8271 .wpcf7,
body.page-id-8271 .wpcf7-form{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}

body.page-id-8271 .wpcf7 form p{
  margin:0 !important;
}
	selector{
background-position:center center !important;
background-size:cover !important;
background-repeat:no-repeat !important;
}	
selector{
background-position:center center !important;
background-size:cover !important;
background-repeat:no-repeat !important;
}		
	html, body {
  max-width: 100%;
  overflow-x: hidden !important;
}

img {
  max-width: 100%;
  height: auto;
}	
	.grecaptcha-badge {
    visibility: hidden !important;
}	
	.grecaptcha-badge {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: -9999 !important;
}

iframe[src*="recaptcha"] {
    display: none !important;
}
image:url('https://vertexgallerycafe.org/wp-content/uploads/2026/06/ChatGPT-Image-2026年6月12日-03_59_47.png');
	

