@charset "UTF-8";
/* ============================================================
   祇をん 玄松  ―  ご予約（AVP検索フォーム）トンマナ調整
   ※ #AVP スコープに限定。BigCalendar(iframe)には影響しない。
   ============================================================ */

.reserve-embed{
  max-width:640px; margin:0 auto;
  padding:calc(var(--header-h,128px) + clamp(40px,6vw,72px)) var(--gutter) clamp(72px,10vw,120px);
}
/* 2026-07-29 SP FB「ファーストビューでオレンジ枠は見せたくない」対応。
   このページはMVが無くフォームが短いため、初期表示にフッター上端が入り込んでいた。
   ツールバーが引っ込んだ状態(lvh)でもフッターが出ない高さを確保し、
   さらにフォームを画面の上下中央に置く（上下paddingを同値にして中央＝画面中央にする）。 */
@media (max-width:820px){
  .reserve-embed{
    min-height:100vh; min-height:100lvh;
    display:flex; flex-direction:column; justify-content:center;
    padding-top:clamp(72px,16vw,96px);
    padding-bottom:clamp(72px,16vw,96px);
  }
}

/* ---- 見出し ---- */
.reserve-form__head{ text-align:center; margin-bottom:clamp(32px,5vw,52px); }
.reserve-form__label{
  font-family:"Zen Old Mincho","游明朝","Yu Mincho",serif; font-weight:400;
  font-size:22px; letter-spacing:.22em; color:rgba(38,35,41,.5);
}
.reserve-form__ttl{
  font-family:var(--font-mincho); font-weight:700;
  font-size:clamp(24px,3vw,34px); letter-spacing:.1em; line-height:1.4;
  color:#1d1b1a; margin-top:clamp(10px,1.4vw,16px);
}

/* ---- フォーム本体 ---- */
#AVP{ font-family:var(--font-body); color:var(--text-dark); }
#AVP table{ width:100%; border-collapse:collapse; }
#AVP td{
  padding:clamp(14px,2vw,20px) 0; vertical-align:middle; text-align:center;
  font-family:var(--font-mincho); font-size:clamp(15px,1.4vw,17px);
  letter-spacing:.08em; color:#2a2724;
  border-bottom:1px solid var(--line-dark);
}
#AVP tr:nth-last-child(1) td{ border-bottom:0; }   /* ボタン行は罫線なし */

/* ---- ボタン行：検索ボタンの下にキャンセルを縦積み・中央 ---- */
#AVP tr:last-child td{ display:block; width:100%; text-align:center; padding:0; }
#AVP tr:last-child td:first-child{ margin-top:clamp(8px,1.4vw,16px); }
#AVP tr:last-child td:last-child{ margin-top:clamp(16px,2vw,22px); }

/* ---- セレクト（下線スタイル・欧文数字） ---- */
#AVP select{
  font-family:var(--font-en); font-weight:400; font-size:15px; color:#2a2724;
  background:transparent; border:0; border-bottom:1px solid var(--line-dark);
  padding:6px 26px 6px 4px; margin:0 4px; letter-spacing:.04em; cursor:pointer;
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%232a2724' stroke-width='1.2'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 4px center;
  transition:border-color .3s var(--ease);
}
#AVP select:focus{ outline:none; border-bottom-color:var(--matsu); }

/* ---- 検索ボタン／予約リンクボタン（サイト共通の松緑ボタン意匠に統一） ---- */
#AVP input[type="button"],
.reserve-book-btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:clamp(200px,26vw,260px); min-height:56px; padding:0 40px;
  background:var(--matsu); color:#f3efe6; border:0; cursor:pointer;
  font-family:var(--font-gothic); font-weight:400;
  letter-spacing:.22em; font-size:15px; text-decoration:none;
  transition:background .4s var(--ease), letter-spacing .4s var(--ease);
}
#AVP input[type="button"]:hover,
.reserve-book-btn:hover{ background:#4a6530; letter-spacing:.3em; }

/* ---- キャンセルリンク ---- */
#AVP a{
  font-family:var(--font-body); font-size:14px; letter-spacing:.06em;
  color:rgba(42,39,36,.68); text-decoration:none;
  border-bottom:1px solid var(--line-dark); padding-bottom:2px;
  transition:color .3s var(--ease), border-color .3s var(--ease);
}
#AVP a:hover{ color:#2a2724; border-bottom-color:#2a2724; }

/* ---- ボタン行の左右セル ---- */
#AVP td[align="center"]{ text-align:center; }

/* ---- BestPrice ウィジェット枠（中身はiframe内・外枠サイズのみ制御可） ---- */
#be-root{ display:block; width:100%; max-width:340px; height:300px; margin:0 auto; border:0; }

/* ---- 予約サイトへのリンクボタン（中央寄せラッパー） ---- */
.reserve-book-wrap{ text-align:center; margin-top:clamp(28px,4vw,40px); }

/* ---- SP ---- */
@media (max-width:820px){
  #AVP td{ font-size:16px; }
  #AVP input[type="button"],
  .reserve-book-btn{ width:100%; min-width:0; }
}
