@charset "UTF-8";

/* 1回だけ読み込み */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap");

/* =========
共通フォント（日本語メイン）
========= */
html, body{
  font-family: "Noto Serif JP", "游明朝", "Yu Mincho",
               "Hiragino Mincho ProN", "Hiragino Mincho Pro",
               "MS Mincho", serif !important;
  font-weight: 400 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* =========
1カラム
========= */
#main_con .block1,
#main_con .block2{
  display:block;
  width:100%;
}
#main_con .block2{
  padding-left:0%;
}

/* =========
上部ナビ色
========= */
#gnav,
#gnav li,
#top_navi{
  background: #242424 !important;
  background-image: none !important;
}

/* =========
本日の出勤：名前・スリーサイズ部分
========= */
#todayssche-list li a article{
  background: #f7f9f8 !important;
  background-image: none !important;
  padding: 8px 10px !important;
  margin: 0 !important;
  position: static !important;
  bottom: auto !important;
}

/* 名前 */
#todayssche-list li a article h3{
  font-size: 14.3px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  margin: 0 !important;
}

/* スリーサイズ */
#todayssche-list li a article p.body{
  font-size: 13px !important;
  line-height: 1.75 !important;
  font-weight: 400 !important;
  margin: 0 !important;
}

/* =========
本日の出勤：時間帯（グレー帯）を完全固定
ズレる原因 = padding上下 / line-heightバラつき / height無し
→ 高さ25px固定 + 上下padding0
========= */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  box-sizing: border-box !important;

  height: 25px !important;
  line-height: 25px !important;
  padding: 0 6px !important;
  margin: 0 !important;

  background: #f1f1f1 !important;
  background-image: none !important;
  color: #242424 !important;

  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;

  font-family: "EB Garamond", "Noto Serif JP", serif !important;
  font-size: 15.6px !important;
  font-weight: 400 !important;

  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* 2段目との隙間・線を消す */
#todayssche-list li a > p.time + p.time{
  margin-top: 0 !important;
  border-top: 0 !important;
}

/* =========
写真比率を崩さない
========= */
#todayssche-list .ph img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* =========
NEW画像：白背景＋黒文字に反転
========= */
img.list_new{
  filter: invert(1) !important;
}

/* =========
写メ日記(sns01) と 口コミ(sns02)
・スマホだけ細く統一
・片方だけでも100%
========= */

/* 口コミ表示差し替え（このボタンだけ） */
ul.gallist li.list__item article div.sns p.sns02{
  font-size: 0 !important;
}
ul.gallist li.list__item article div.sns p.sns02::before{
  content: "口コミ" !important;
  font-size: 13px !important;
  line-height: 1 !important;
  color: #fff !important;
  display: block !important;
}

/* 口コミボタン色 */
ul.gallist li.list__item article div.sns p.sns02{
  background: #f961b3 !important;
  background-image: none !important;
}

/* スマホ：バナーを細く、必ず整列 */
@media (max-width: 768px){

  ul.gallist li.list__item article div.sns{
    display: flex !important;
    width: 100% !important;
    gap: 0 !important;
    align-items: stretch !important;
  }

  ul.gallist li.list__item article div.sns p.sns01,
  ul.gallist li.list__item article div.sns p.sns02{
    flex: 1 1 0 !important;
    height: 26px !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    border-radius: 0 !important;
  }

  /* 片方だけの時は100% */
  ul.gallist li.list__item article div.sns p.sns01:only-child,
  ul.gallist li.list__item article div.sns p.sns02:only-child{
    flex: 0 0 100% !important;
    width: 100% !important;
  }
}

/* =========
プロフィール下部の見出し変更
========= */
#twitterbox h2.subtitle{
  font-size: 0 !important;
}
#twitterbox h2.subtitle::before{
  content: "ぴゅあらば口コミ" !important;
  font-size: 14px !important;
  color: #000 !important;
}

/* =========================================
追記用（CSS最下部に追加）
目的：
・PC版の英字をEB Garamondに戻す（確実）
・本日の出勤：グレー帯の文字太さをThe Whiteに合わせる
========================================= */


/* ① PC版：英字フォントをEB Garamondへ（確実に戻す） */
@media (min-width: 769px){

  /* サイト全体の基本フォントをEB→Notoの順にする */
  html, body{
    font-family: "EB Garamond","Noto Serif JP","游明朝","Yu Mincho",
                 "Hiragino Mincho ProN","Hiragino Mincho Pro",
                 "MS Mincho",serif !important;
    font-weight: 400 !important;
  }

  /* よく上書きされる主要エリアも“確実に”統一 */
  #wrap, #wrap *,
  #header, #header *,
  #gnav, #gnav *,
  #top_navi, #top_navi *,
  #main_con, #main_con *,
  #footer, #footer *{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 400 !important;
  }
}


/* ② 本日の出勤：グレー帯の文字太さをThe Whiteに合わせる（ここだけ） */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no{
  font-family: "Noto Serif JP",serif !important; /* The White寄せ */
  font-weight: 700 !important;                  /* 太さを合わせる */
  letter-spacing: 0 !important;
}

/* ③ 帯の中にspan等が入ってても太さが揃う保険 */
#todayssche-list li a > p.time *,
#todayssche-list li a > p.time.latency *,
#todayssche-list li a > p.time.latency_no *{
  font-weight: 700 !important;
}

/* ================================
PC版：口コミ（sns02）文字を中央に揃える
=============================== */
@media (min-width: 769px){

  /* バナー自体を中央寄せの箱にする */
  ul.gallist li.list__item article div.sns p.sns02{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    /* 文字上寄せ対策（余計なpadding/line-heightを潰す） */
    padding: 0 !important;
    line-height: 1 !important;

    /* 高さが既存と違うとズレるので、必要ならここで固定（お好み） */
    height: 30px !important;  /* ←高すぎ/低すぎなら 26〜34 で調整OK */
  }

  /* 「口コミ」疑似要素も中央寄せで見た目を安定 */
  ul.gallist li.list__item article div.sns p.sns02::before{
    display: inline-block !important;
    font-size: 13px !important;
    line-height: 1 !important;
    transform: translateY(0) !important; /* 上下ズレの癖を殺す */
  }
}


/* ================================
PC版：表示切替（grid/list）アイコン文字化け修正
（<i class="fas fa-th"> を確実に出す）
=============================== */

/* FontAwesome5 を読めていない時のための保険（読み込めるなら効きます） */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css");

/* 表示切替ボタンのアイコンだけ、FA5 Solidに固定 */
.switchB i.fas,
.switchB i.fas::before,
.switchB i.fa,
.switchB i.fa::before{
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important; /* solid必須 */
  font-style: normal !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
}

/* ================================
PC版：英字（メニュー等）をEB Garamondで維持
※アイコン類（FontAwesome）には当てない
=============================== */
@media (min-width: 769px){

  /* 英字・数字が出る主要箇所だけEB優先 */
  #header .tel,
  #header .open,
  #gnav,
  #top_navi,
  #daynavi,
  .header_info,
  .tel,
  .open,
  .time{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 400 !important;
  }

  /* FontAwesomeだけは絶対にEBを当てない（文字化け防止） */
  i.fa, i.fas, i.far, i.fab,
  i.fa::before, i.fas::before, i.far::before, i.fab::before{
    font-family: "Font Awesome 5 Free" !important;
  }
}

/* ===========================
  追記（最終）：
  ・PC英字を EB Garamond 優先に戻す
  ・文字の太さを The White 寄せ（全体 400 基準）
  ・PC「口コミ」ボタン文字を上下中央へ
  ・表示切替アイコン（grid/list）文字化け復旧
  ・出勤情報：日付(1/26 MON) と 案内時間バナーを The White と同じ薄グレーへ
=========================== */


/* ---------------------------------
  PC版：英字を EB Garamond 優先に戻す
  （日本語はNotoへ自動フォールバック）
--------------------------------- */
@media (min-width: 769px){
  html, body{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
  }
}


/* ---------------------------------
  文字が太く見えるのを全体で抑える（White寄せ）
--------------------------------- */
html, body{
  font-weight: 400 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

/* 強調だけは少し太く（全部が太くなるのを防ぐ） */
strong, b{
  font-weight: 600 !important;
}


/* ---------------------------------
  PC版：口コミボタンの「口コミ」文字が上寄せ → 上下中央へ
--------------------------------- */
@media (min-width: 769px){

  /* ボタン自体を中央寄せの箱にする */
  ul.gallist li.list__item article div.sns p.sns02{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    /* 高さはサイト側に合わせて「崩れない範囲」で */
    height: 26px !important;
    line-height: 1 !important;
    padding: 0 !important;
  }

  /* 置き換え文字も中央に乗るように */
  ul.gallist li.list__item article div.sns p.sns02::before{
    line-height: 1 !important;
    display: block !important;
    transform: translateY(0) !important;
  }
}


/* ---------------------------------
  PC版：表示切替（grid/list）アイコン文字化け復旧
  ※フォントを “Font Awesome” 側へ戻す
--------------------------------- */
@media (min-width: 769px){

  /* iタグ（fa / fas / far）が全部正しいフォントを使うように固定 */
  .switchB i,
  .switchB i::before,
  .switchB [class^="fa"],
  .switchB [class*=" fa"]{
    font-family: "Font Awesome 5 Free","FontAwesome" !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
  }

  /* solid系（fa-th / fa-th-list）は太さが必要 */
  .switchB i.fas,
  .switchB i.fas::before{
    font-weight: 900 !important;
  }
}


/* ---------------------------------
  出勤情報ページ：日付ナビ「現在(1/26 MON)」を The White と同じ薄グレーへ
  （黒に戻るのを最優先で潰す）
--------------------------------- */
#daynavi a.current,
#daynavi li.current > a,
#daynavi a.current:hover{
  background: #f1f1f1 !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 日付文字（MON等）も黒 */
#daynavi a.current,
#daynavi a.current *{
  color: #242424 !important;
}

/* MONだけ背景が付く要素が居る場合の保険 */
#daynavi a.current p.dotw,
#daynavi a.current .dotw{
  background: transparent !important;
  color: #242424 !important;
}


/* ---------------------------------
  女の子カード下：案内時間（黒バナー）を薄グレーへ（The White寄せ）
  ※SCHEDULE一覧の time / latency_no / latency 全部対象
--------------------------------- */
#wrap ul.gallist li.list__item a article .timedata p.time,
#wrap ul.gallist li.list__item a article .timedata p.time.latency_no,
#wrap ul.gallist li.list__item a article .timedata p.time.latency{
  background: #f1f1f1 !important;
  background-image: none !important;
  color: #242424 !important;

  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;

  /* 太く見える問題もここで止める */
  font-weight: 400 !important;
}

/* timedata自体に黒い横線背景が戻るのも潰す */
#wrap ul.gallist li.list__item a article .timedata{
  background: #f1f1f1 !important;
  background-image: none !important;
}

/* もし疑似要素で線を出してる場合も殺す */
#wrap ul.gallist li.list__item a article .timedata::before,
#wrap ul.gallist li.list__item a article .timedata::after,
#wrap ul.gallist li.list__item a article .timedata p.time::before,
#wrap ul.gallist li.list__item a article .timedata p.time::after{
  content: none !important;
  display: none !important;
}


/* ---------------------------------
  （念のため）todayssche 側の time も同じ太さ・色に統一
--------------------------------- */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no{
  font-weight: 400 !important;
  background: #f1f1f1 !important;
  background-image: none !important;
  color: #242424 !important;
}

/* ===========================
  出勤一覧：案内時間（自由入力テキスト）
  例）「12:00〜案内可能」 を黒に固定
=========================== */

/* 一番よくある構造：div.timedata > div.time > p */
#wrap ul.gallist li.list__item a article .timedata div.time p{
  color: #242424 !important;
  font-weight: 400 !important;
}

/* span等が入っても黒 */
#wrap ul.gallist li.list__item a article .timedata div.time p *{
  color: #242424 !important;
}

/* もし class="time" のp自体に色が当たってる場合の保険 */
#wrap ul.gallist li.list__item a article .timedata p.time{
  color: #242424 !important;
}

/* =====================================
   追記CSS：ここから（※一番下に貼る）
===================================== */

/* 1) PC版：英字をEB Garamondに戻す（全体）
   ※アイコン系（FontAwesome）には当てない */
@media (min-width: 769px){
  html, body{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
  }
}

/* 2) PC版：口コミボタン「口コミ」が上寄せになるのを中央寄せに修正 */
@media (min-width: 769px){
  ul.gallist li.list__item article div.sns p.sns02{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    /* 高さが小さいと上寄りに見えるので少しだけ安定させる */
    min-height: 22px !important;
    line-height: 1 !important;
    padding: 0 !important;
  }

  ul.gallist li.list__item article div.sns p.sns02::before{
    display: block !important;
    line-height: 1 !important;
    transform: translateY(0.5px) !important; /* 微調整（上寄り防止） */
    font-size: 13px !important;
  }
}

/* 3) PC版：表示切替（grid/list）アイコンの文字化け修正
   ※あなたが全体にEBを当てたことで、iタグのフォントが潰れてるのを戻す */
.switchB i.fa,
.switchB i.fas,
.switchB i.far,
.switchB i.fa::before,
.switchB i.fas::before,
.switchB i.far::before{
  font-family: "Font Awesome 5 Free","FontAwesome" !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

/* solid（fas）は900が必要 */
.switchB i.fas,
.switchB i.fas::before{
  font-weight: 900 !important;
}

/* regular（far）は400 */
.switchB i.far,
.switchB i.far::before{
  font-weight: 400 !important;
}

/* 4) 出勤情報ページ：日付バナー（1/26 MON）の色をThe Whiteと同じグレーへ */
body#schedule #daynavi a.current,
body#schedule #daynavi li a.current{
  background: #eeeeee !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

body#schedule #daynavi a.current p,
body#schedule #daynavi li a.current p{
  color: #000 !important;
}

/* 5) 出勤情報ページ：女の子プロフィール下の「案内時間」バナーをグレー＋黒文字へ
   （黒に戻った/白で見にくい両方を潰す） */
body#schedule #wrap ul.gallist li.list__item article div.timedata{
  background: #f1f1f1 !important;
  background-image: none !important;
}

/* 予約受付中/予約完売/時間帯（p.time） */
body#schedule #wrap ul.gallist li.list__item article div.timedata p.time,
body#schedule #wrap ul.gallist li.list__item article div.timedata p.time.latency,
body#schedule #wrap ul.gallist li.list__item article div.timedata p.time.latency_no{
  background: #f1f1f1 !important;
  background-image: none !important;
  color: #242424 !important;
  font-weight: 400 !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* 「12:00〜案内可能」など自由入力（div.time内のp）が白くなるのを黒固定 */
body#schedule #wrap ul.gallist li.list__item article div.timedata div.time p,
body#schedule #wrap ul.gallist li.list__item article div.timedata div.time p *{
  color: #242424 !important;
  font-weight: 400 !important;
}

/* 6) 電話番号（TEL）の太さ・大きさをThe White寄せ（2.5rem / 500） */
#header .header_info .tel,
header#header .header_info .tel,
.header_info .tel{
  font-family: "EB Garamond","Noto Serif JP",serif !important;
  font-size: 2.5rem !important;  /* The White側に合わせる */
  font-weight: 500 !important;
  line-height: 1.1 !important;
  letter-spacing: 0.03em !important;
  color: #000 !important;
}

/* =====================================
   追記CSS：ここまで
===================================== */

/* =========================
ENTER / LEAVE ボタン背景を #242424 に固定（最優先）
========================= */
#entrance li.more_btn a,
#entrance li.more_btn a.more_btn,
#entrance li.more_btn a:link,
#entrance li.more_btn a:visited,
#entrance li.more_btn a:hover,
#entrance li.more_btn a:active{
  background: #242424 !important;
  border-color: #242424 !important;
}

/* ボタン文字色は白固定 */
#entrance li.more_btn a,
#entrance li.more_btn a span{
  color: #ffffff !important;
}

/* =========================
18禁マークを「濃いグレー寄せ」に固定
（画像が別色に差し替わっても見え方が揃う）
========================= */
#entrance li.age img,
#entrance li.age a img{
  filter: grayscale(1) brightness(0.25) !important;
}

/* 念のため：親要素の背景も黒寄せ */
#entrance li.age,
#entrance li.age a{
  background: transparent !important;
}

/* =========================================
【最終上書き】英字=EB Garamond を全端末で強制
※日本語はEBに収録が無いので自動でNoto Serif JPにフォールバック
※FontAwesomeだけは絶対にEBを当てない
========================================= */

/* 全体：英字をEB優先にする（PC/スマホ共通） */
html, body,
#wrap, #wrap *,
#header, #header *,
#gnav, #gnav *,
#top_navi, #top_navi *,
#main_con, #main_con *,
#footer, #footer *,
button, input, select, textarea{
  font-family: "EB Garamond","Noto Serif JP","游明朝","Yu Mincho",
               "Hiragino Mincho ProN","Hiragino Mincho Pro","MS Mincho",
               serif !important;
  font-weight: 400 !important;
}

/* スマホメニュー：英字（TOP / CAST / SCHEDULE…）だけ確実にEB */
#gnav_sp .navbox span.en,
#gnav_sp .navbox p.en,
#gnav_sp .navbox li a span.en,
#gnav_sp .navbox li a p.en{
  font-family: "EB Garamond","Noto Serif JP",serif !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
}

/* OPEN/TEL/時間など英数字が出る場所もEB固定（PC/スマホ共通） */
.open, .time, .tel,
.header_info .open, .header_info .time, .header_info .tel,
#header .open, #header .time, #header .tel,
#gnav_sp .open, #gnav_sp .time, #gnav_sp .tel,
#daynavi .dotw, #daynavi p.dotw,
#todayssche-list p.time,
#todayssche-list p.time.latency,
#todayssche-list p.time.latency_no{
  font-family: "EB Garamond","Noto Serif JP",serif !important;
  font-weight: 400 !important;
}

/* FontAwesomeは最優先で元に戻す（ここが無いと文字化けします） */
i.fa, i.fas, i.far, i.fab,
i.fa::before, i.fas::before, i.far::before, i.fab::before,
.switchB i, .switchB i::before,
#week-next i, #week-next i::before,
#week-next .fa, #week-next .fa::before{
  font-family: "FontAwesome","Font Awesome 5 Free","Font Awesome 6 Free" !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
}

/* solid系は太さ必須 */
i.fas, i.fas::before{
  font-weight: 900 !important;
}

/* =====================================
  追記：太字化セット（CSS最下部に追加）
  ① 黒バナー内の文字を太字
  ② 女の子名前下の案内時間を太字
  ③ 各ページのタイトル（SCHEDULE / 出勤情報など）を太字
===================================== */

/* =====================================
  ① 黒バナー内の文字（予約完売/受付中/案内可能など）を太字
  ・todayssche（トップの本日出勤）
  ・gallist（出勤一覧）
===================================== */

/* 本日出勤（トップ）時間バナー */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no,
#todayssche-list li a > p.time *,
#todayssche-list li a > p.time.latency *,
#todayssche-list li a > p.time.latency_no *{
  font-weight: 700 !important;
}

/* 出勤一覧（SCHEDULE）下の案内時間バナー */
#wrap ul.gallist li.list__item a article .timedata p.time,
#wrap ul.gallist li.list__item a article .timedata p.time.latency,
#wrap ul.gallist li.list__item a article .timedata p.time.latency_no{
  font-weight: 700 !important;
}

/* =====================================
  ② 女の子の名前の下の「案内時間（自由入力）」も太字
  例）「12:00〜案内可能」など
===================================== */
#wrap ul.gallist li.list__item a article .timedata div.time p,
#wrap ul.gallist li.list__item a article .timedata div.time p *{
  font-weight: 700 !important;
}

/* =====================================
  ③ 各ページタイトル（SCHEDULE / 出勤情報 等）を太字
  ・h2.subtitle が使われてるページが多い
  ・万一 pagetitle でも出てる場合に保険
===================================== */
h1, h2, h3,
h2.subtitle,
h2.pagetitle,
h2.page_title,
.page_title,
.pagetitle,
.subtitle{
  font-weight: 700 !important;
}

/* タイトル周りで、英字だけ薄くなるのを防ぐ（必要な場合のみ効く） */
h2.subtitle,
h2.pagetitle,
h2.page_title{
  letter-spacing: 0.02em !important;
}

/* FontAwesome（アイコン）だけは太字に巻き込まない */
i.fa, i.fas, i.far, i.fab,
i.fa::before, i.fas::before, i.far::before, i.fab::before{
  font-weight: 900 !important;
}

/* ================================
スマホ版：電話番号をEB Garamondにする
※電話アイコンは文字化けしないように除外
=============================== */
@media (max-width: 768px){

  /* 電話番号（数字だけ） */
  #gnav_sp .tel dd,
  #gnav_sp .tel dd span{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 600 !important;   /* お好みで 500〜700 */
    letter-spacing: 0.02em !important;
  }

  /* OPEN: などの英字もEBに寄せたい場合 */
  #gnav_sp .tel dt{
    font-family: "EB Garamond","Noto Serif JP",serif !important;
    font-weight: 500 !important;
  }

  /* 電話アイコン（ここが文字化け防止の本体） */
  #gnav_sp .tel i.fa,
  #gnav_sp .tel i.fas,
  #gnav_sp .tel i.far,
  #gnav_sp .tel i.fab,
  #gnav_sp .tel i.fa::before,
  #gnav_sp .tel i.fas::before,
  #gnav_sp .tel i.far::before,
  #gnav_sp .tel i.fab::before{
    font-family: "FontAwesome","Font Awesome 5 Free" !important;
    font-weight: 900 !important;
  }
}

/* =====================================
  トップ「本日の出勤」：自由入力の案内時間が
  黒背景＋白文字に戻るのを強制で止める
  （div.time 構造に対応）
===================================== */
#todayssche-list li .time,
#todayssche-list li .time p,
#todayssche-list li .time p.time,
#todayssche-list li .time p.time.latency,
#todayssche-list li .time p.time.latency_no{
  background: #f1f1f1 !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
  background-position: initial !important;

  color: #242424 !important;

  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  text-shadow: none !important;

  font-family: "EB Garamond","Noto Serif JP",serif !important;
  font-weight: 700 !important;   /* 太字にするなら700、太字不要なら400 */
}

/* 高さと中央寄せ（黒帯の見た目が崩れないように） */
#todayssche-list li .time{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 25px !important;
  line-height: 25px !important;
  padding: 0 6px !important;
  margin: 0 !important;
  box-sizing: border-box !important;

  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* p側の余白を潰す（上寄せ・段ズレ防止） */
#todayssche-list li .time p{
  margin: 0 !important;
  padding: 0 !important;
  line-height: 25px !important;
}

/* =====================================
TOP（#todayssche-list）だけ：重なりを起こさず
「名前＋スリーサイズ」を schedule 風に詰める
※CSS最下部に追加（absolute版は削除）
===================================== */

/* 1) 1カード内を縦積みに固定（画像→article→time） */
#todayssche-list li a{
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

/* 2) 名前・スリーサイズ箱：絶対配置にしない（重なり防止） */
#todayssche-list li a article{
  position: static !important;
  width: 100% !important;

  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;

  /* 2行分を固定して、下の時間帯がズレないようにする */
  height: 34px !important;
  overflow: hidden !important;
}

/* 3) 名前 */
#todayssche-list li a article h3{
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
}

/* 4) スリーサイズ */
#todayssche-list li a article p.body{
  margin: 2px 0 0 0 !important; /* 0〜2で微調整可 */
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
}

/* 5) 時間帯バナー：すでに固定している25pxルールを維持（念のため） */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no{
  position: static !important;
  height: 25px !important;
  line-height: 25px !important;
  margin: 0 !important;
}

/* 6) 画像は崩さない（念のため） */
#todayssche-list .ph img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* =====================================
TOP：受付終了／お休み（li.grayout）
名前・スリーサイズ部分が黒くなるのを強制修正
===================================== */

/* 親側に黒が付いても潰す */
#todayssche-list li.grayout,
#todayssche-list li.grayout > a{
  background: transparent !important;
  background-image: none !important;
}

/* ここは「透明」ではなく、通常と同じ薄い背景色で固定（黒の透けを防止） */
#todayssche-list li.grayout > a > article{
  background: #f7f9f8 !important;
  background-image: none !important;
}

/* 文字色も黒固定（薄くされるのを防ぐ） */
#todayssche-list li.grayout > a > article h3,
#todayssche-list li.grayout > a > article p.body{
  color: #242424 !important;
  opacity: 1 !important;
}

/* 疑似要素で黒帯を被せているケースもあるので殺す */
#todayssche-list li.grayout > a > article::before,
#todayssche-list li.grayout > a > article::after,
#todayssche-list li.grayout > a::before,
#todayssche-list li.grayout > a::after,
#todayssche-list li.grayout::before,
#todayssche-list li.grayout::after{
  content: none !important;
  display: none !important;
}

/* =====================================
  Purelovers：満里奈(3916743) 口コミ iframe（PCだけ）重なり対策
  ・親divを触れなくても効くように src で特定
  ・「中身を広げてから縮小」＝表示サイズはほぼそのまま、内部レイアウトだけ余裕が出る
===================================== */
@media (min-width: 769px){

  /* ① 直接口コミページをiframe表示している場合 */
  iframe[src*="purelovers.com/shop/9746/girl/3916743/reviews"]{
    display: block !important;

    /* 385×441 を想定：中身を480×560にしてから 0.8倍で収める */
    width: 480px !important;
    height: 560px !important;

    transform: scale(0.8) !important;
    transform-origin: 0 0 !important;

    border: none !important;
  }

  /* ② もし api.purelovers 側のURLで表示している場合（保険） */
  iframe[src*="api.purelovers.com"][src*="shop_id=9746"][src*="girl_id=3916743"]{
    display: block !important;
    width: 480px !important;
    height: 560px !important;
    transform: scale(0.8) !important;
    transform-origin: 0 0 !important;
    border: none !important;
  }
}

/* =====================================
  PC：口コミ本文だけに寄せる（上部/左メニューを大きく切る）
  対象：purelovers 満里奈 3916743 reviews iframe
===================================== */
@media (min-width: 769px){

  /* 表示枠（右カラム側） */
  #twitterbox div:has(> iframe[src="https://purelovers.com/shop/9746/girl/3916743/reviews/"]){
    width: 100% !important;
    max-width: 520px !important;  /* 必要なら 420〜560で調整 */
    height: 620px !important;     /* 表示したい分だけ増減 */
    overflow: hidden !important;  /* 切り抜き */
    position: relative !important;
  }

  /* iframe本体：大きく描画→縮小 */
  #twitterbox iframe[src="https://purelovers.com/shop/9746/girl/3916743/reviews/"]{
    display: block !important;
    width: 1200px !important;
    height: 1200px !important;

    transform: scale(0.55) !important;
    transform-origin: 0 0 !important;

    border: none !important;
  }

  /* 重要：上と左を強めに切る（本文領域へ寄せる） */
  #twitterbox div:has(> iframe[src="https://purelovers.com/shop/9746/girl/3916743/reviews/"])
  > iframe{
    position: relative !important;
    top: -220px !important;   /* 上部をもっと切る：-180〜-320 */
    left: -180px !important;  /* 左メニューを切る：-180〜-360 */
  }
}

/* =====================================
  全キャスト共通：ぴゅあらば口コミ（#twitterbox）の表示サイズを統一（PC）
  ・:has() 不使用
  ・girl_id を固定しない
===================================== */
@media (min-width: 769px){

  /* 表示枠（外側）を固定：ここが「同じ大きさ」になる */
  #twitterbox > div{
    width: 385px !important;   /* 表示幅（今のままなら385） */
    height: 441px !important;  /* 表示高さ（今のままなら441） */
    overflow: hidden !important;
    position: relative !important;
  }

  /* 口コミiframe（ぴゅあらば側のページ or api側）をまとめて対象 */
  #twitterbox iframe[src*="purelovers.com/shop/9746/girl/"][src*="/reviews"],
  #twitterbox iframe[src*="api.purelovers.com"][src*="shop_id=9746"]{
    display: block !important;
    border: 0 !important;

    /* 中身を大きく描画してから縮小（文字の重なり対策） */
    width: 1200px !important;
    height: 1200px !important;

    transform: scale(0.55) !important;   /* 中身の縮小率：小さくしたいなら 0.50〜0.58 */
    transform-origin: 0 0 !important;

    /* 上と左を切って本文に寄せる（必要に応じて微調整） */
    position: relative !important;
    top: -220px !important;    /* 上をもっと切る：-180〜-320 */
    left: -180px !important;   /* 左をもっと切る：-160〜-360 */
  }
}

/* ===== 横並び崩れの根本対策（最下部に追加）===== */

/* 3カラムの1カラム幅を超えないようにする */
#twitterbox > div,
#twitterbox .purelovers_iframe_wrap{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* 高さは必要なら固定（いったん現状踏襲） */
#twitterbox .purelovers_iframe_wrap{
  height: 441px !important;
  overflow: hidden !important; /* auto だと横スクロールが出て実幅が増える場合があるため */
}

/* iframeは枠にぴったり */
#twitterbox .purelovers_iframe_wrap iframe{
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  display: block !important;
}

/* 写メ日記（#diarybox）と口コミ（#twitterbox）の「固定385px」を潰して、はみ出しを止める */
@media (min-width: 769px){

  /* カラム幅に合わせて必ず収める */
  #diarybox > div,
  #twitterbox > div,
  #twitterbox .purelovers_iframe_wrap{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* 写メ日記：縦スクロールは許可、横スクロールは完全禁止（はみ出し原因を遮断） */
  #diarybox > div{
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  /* iframe自体も“箱にぴったり”で固定（余計な隙間や横溢れ防止） */
  #diarybox iframe,
  #twitterbox iframe{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
  }
}

@media (min-width: 769px){

  /* ① 写メ日記：外枠を横スクロール許可 */
  #diarybox > div{
    overflow-x: auto !important;
    overflow-y: hidden !important; /* 縦も残したいなら auto に */
    -webkit-overflow-scrolling: touch !important;
  }
  #diarybox > div iframe{
    display: block !important;
    border: 0 !important;

    /* 横スクロールさせたい分だけ横幅を増やす（好みで調整） */
    width: 1200px !important;
    height: 100% !important;
  }

  /* ② ぴゅあらば口コミ：外枠を横スクロール許可 */
  #twitterbox > div,
  #twitterbox .purelovers_iframe_wrap{
    overflow-x: auto !important;
    overflow-y: hidden !important; /* 縦も残したいなら auto に */
    -webkit-overflow-scrolling: touch !important;
  }
  #twitterbox iframe{
    display: block !important;
    border: 0 !important;

    /* 横スクロールさせたい分だけ横幅を増やす（好みで調整） */
    width: 1200px !important;
    height: 100% !important;
  }

  /* ③ 横スクロールバーが“下に少しはみ出る”のを止める（見た目の保険） */
  #diarybox, #twitterbox{
    overflow: hidden !important; /* セクション自体からはみ出さない */
  }
}

/* =====================================
  案内時間（手入力）を「latency」と同じサイズに統一
  対象：SCHEDULE一覧（gallist）
  ※CSS最下部に追加
===================================== */

/* まず「基準になるサイズ」を明示（latency側） */
#wrap ul.gallist li.list__item a article .timedata p.time.latency,
#wrap ul.gallist li.list__item a article .timedata p.time.latency_no{
  font-size: 18.2px !important;   /* ←あいら側に合わせる。18でもOKだが一致させるなら18.2 */
  line-height: 1.3 !important;
}

/* 手入力（div.time の中の p）も同じにする */
#wrap ul.gallist li.list__item a article .timedata div.time p,
#wrap ul.gallist li.list__item a article .timedata div.time p *{
  font-size: 18.2px !important;   /* ←ここが本命 */
  line-height: 1.3 !important;
}

/* =====================================
  TOP（#todayssche-list）：
  「手入力の案内時間」と「あいら側(p.time.latency)」の文字サイズを統一
===================================== */

/* あいら側（既存の latency 系） */
#todayssche-list li a > p.time,
#todayssche-list li a > p.time.latency,
#todayssche-list li a > p.time.latency_no{
  font-size: 15.6px !important;   /* ←あいら側の実サイズに合わせる */
  line-height: 25px !important;
}

/* 手入力側（div.time の中に出る p） */
#todayssche-list li a .timedata .time > p,
#todayssche-list li a .timedata .time > p *{
  font-size: 15.6px !important;   /* ←ここが本命 */
  line-height: 25px !important;
}

/* =====================================
TOP（#todayssche-list）だけ：
手入力の案内時間（div.time > p）を
あいら（p.time.latency）と同じ見た目に揃える
===================================== */

/* まず箱（div.time）の癖：line-height:1.1 を上書きして固定 */
#todayssche-list li div.time{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 25px !important;
  padding: 0 6px !important;
  box-sizing: border-box !important;

  line-height: 25px !important;   /* ← ここが重要（1.1を潰す） */
  background: #f1f1f1 !important;
  color: #242424 !important;

  overflow: hidden !important;
  white-space: nowrap !important;
}

/* 手入力テキスト本体（p と p.on）を “あいら側” と同じにする */
#todayssche-list li div.time > p,
#todayssche-list li div.time > p.on{
  margin: 0 !important;
  padding: 0 !important;

  font-family: "Noto Serif JP", serif !important; /* ← あいら側に寄せる */
  font-size: 15.6px !important;                  /* ← あいら側と同値にする */
  font-weight: 700 !important;                   /* ← 太さも揃える */
  line-height: 25px !important;

  color: #242424 !important;
}

/* 一覧カード（ul.gallist）側の “案内可能” を 1枚目と同じ見た目に統一 */
#wrap ul.gallist li.list__item a article .timedata p.time.latency,
#wrap ul.gallist li.list__item a article .timedata p.time.latency_no{
  font-family: "Noto Serif JP","游明朝","Yu Mincho",
               "Hiragino Mincho ProN","Hiragino Mincho Pro","MS Mincho",serif !important;
  font-size: 15.6px !important;
  font-weight: 700 !important;

  /* 1枚目が 25px 揃えなので、見た目も寄せる（不要なら削除OK） */
  height: 25px !important;
  line-height: 25px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 6px !important;
  box-sizing: border-box !important;
}

/* ===========================
待ち時間（WAIT TIME）だけ：
「21:30〜案内可能」「14:00-24:00」を
同じフォント(15.6px)に統一
=========================== */
body#waiting #wrap ul.gallist li.list__item a article .timedata p.time,
body#waiting #wrap ul.gallist li.list__item a article .timedata p.time.latency,
body#waiting #wrap ul.gallist li.list__item a article .timedata p.time.latency_no{
  font-family: "Noto Serif JP","游明朝","Yu Mincho",
               "Hiragino Mincho ProN","Hiragino Mincho Pro",
               "MS Mincho",serif !important;
  font-size: 15.6px !important;   /* ←基準(1枚目)に合わせる */
  font-weight: 700 !important;
  line-height: 25px !important;
  height: 25px !important;
}

/* 旧Twitter 表記を非表示（見た目だけ） */
#twitterbox h2.subtitle span,
#twitterbox .subtitle span{
  display: none !important;
}