/* =========================================================
   o-kura.co.jp 本体用の追加スタイル（common/css/style.css の後に読む）
   ========================================================= */

/* 文字を大きく（高齢のお客様向け） */
.gnav{font-size:16.5px}
.burger small{font-size:12px;white-space:nowrap}
.burger{width:56px}
.fixbar small{font-size:13px!important}
.logo small,.logo .lg-top{font-size:13px}
.lic{font-size:14.5px;color:#cfc4b2}
.st{font-size:15px!important}
.cp .after{font-size:15px!important}
.telnum{font-family:var(--mincho);font-size:22px;font-weight:700}
.telnum{line-height:1.3;margin:4px 0}
.telnum a{color:inherit;text-decoration:none;font-size:clamp(22px,6.4vw,28px);letter-spacing:.02em;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.telnum a svg{width:.8em;height:.8em;flex:none}
.callpanel.dark .telnum,.page-hero .telnum{color:#fff}
.after.others{background:var(--ai-2);color:var(--ai);padding:8px 10px;border-radius:6px}
.after.others a{color:var(--ai);font-weight:700;white-space:nowrap}
.f-simple .discreet{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:15.5px;line-height:1.6;cursor:pointer}
.f-simple .discreet input{width:20px;height:20px;margin-top:3px;accent-color:var(--ai);flex:none}

/* ---------- トップ：店内の写真を画面いっぱいに ---------- */
.kv-photo .kv-bg{position:absolute;inset:0;z-index:0}
.kv-photo .kv-bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.kv-photo::before{z-index:1;background:linear-gradient(90deg,rgba(22,18,15,.94) 0%,rgba(22,18,15,.82) 42%,rgba(22,18,15,.35) 75%,rgba(22,18,15,.2) 100%)}
.kv-photo .kv-in{z-index:2}
.kv-one .card.c1{width:78%;height:auto;aspect-ratio:3/2;right:4%;top:auto;bottom:10%;transform:rotate(2deg)}
.kv-one .kv-seal{left:6%;top:12%}
.kv-photo-cap{position:absolute;right:16px;bottom:10px;z-index:2;color:rgba(255,255,255,.7);font-size:12px}
/* 中くらいの画面でボタンの文字が折り返さないように */
@media (max-width:1180px) and (min-width:901px){
  .fv-cta .b{padding:12px 10px}
  .fv-cta .b-tel .n,.fv-cta .b-form-big .n{font-size:20px;white-space:nowrap}
  .fv-cta .b small{font-size:13px}
}
@media (max-width:900px){
  .kv-photo::before{background:linear-gradient(180deg,rgba(22,18,15,.35) 0%,rgba(22,18,15,.75) 34%,rgba(22,18,15,.94) 60%)}
  .kv-one{height:auto!important;min-height:0}
  .kv-one .card.c1{position:relative;display:block;width:72%;margin:18px auto 6px;right:auto;bottom:auto;transform:rotate(-2deg)}
  .kv-one .kv-seal{left:auto;right:4%;top:auto;bottom:-8px}
  .kv-photo-cap{display:none}
}

/* ヘッダーの「店舗に電話」ボタン */
.hd-call{display:flex;align-items:center;gap:8px;background:var(--ai);color:#fff;text-decoration:none;font-weight:700;font-size:16px;padding:11px 18px;border-radius:8px;border:none;cursor:pointer;font-family:inherit;white-space:nowrap}
.hd-call svg{width:20px;height:20px}
.hd-call:hover{background:#243a49}
@media (max-width:520px){.hd-call{display:none}}

/* 店舗ごとの電話パネル */
.callpanel{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cp{background:var(--washi);border:1px solid var(--line);border-radius:10px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:8px}
.cp-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cp-h b{font-family:var(--mincho);font-size:20px}
.cp .hours{font-size:14.5px;color:var(--sumi-2);line-height:1.6}
.st{display:inline-block;font-size:13px;font-weight:700;padding:2px 10px;border-radius:999px;white-space:nowrap}
.st.open{background:#e3f4e8;color:#1d6b35}
.st.closed{background:#f3e6e3;color:var(--aka)}
.cp .b{padding:12px 10px;font-size:17px}
.cp .b-tel .n{font-size:24px}
.cp .after{font-size:14px;color:var(--sumi-2);line-height:1.6}
.callpanel.dark .cp{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.callpanel.dark .cp .hours,.callpanel.dark .cp .after{color:#d9cfbe}
@media (max-width:900px){.callpanel{grid-template-columns:1fr}}

/* 店舗選択のポップアップ */
.cmodal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}
.cmodal[hidden]{display:none}
.cmodal-box{position:relative;width:100%;max-width:960px;max-height:calc(100svh - 32px);overflow:auto;background:#fff;border-radius:14px;padding:22px 22px 24px;box-shadow:0 30px 70px -20px rgba(0,0,0,.6);animation:fmIn .25s ease-out}
.cmodal-box h2{font-size:22px;text-align:center;margin:0 40px 6px}
.cmodal-box .sub{text-align:center;color:var(--sumi-2);font-size:15px;margin-bottom:16px}
@media (max-width:520px){.cmodal{padding:0;align-items:flex-end}.cmodal-box{border-radius:16px 16px 0 0;max-height:94svh}}

/* 店舗ページの「この店舗に電話」 */
.storecall{max-width:520px}
.storecall .st{margin-bottom:8px}
.storecall .b{width:100%}
.storecall .after{font-size:15px;color:inherit;opacity:.9;margin-top:8px}

/* 売る・預けるの比較 */
.compare{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:16.5px}
.compare th,.compare td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.compare thead th{background:var(--sumi);color:#fff;font-family:var(--mincho);font-size:18px}
.compare thead th:nth-child(3){background:var(--ai)}
.compare tbody th{background:var(--kinari-2);width:22%;font-weight:700}
.compare tr:last-child th,.compare tr:last-child td{border-bottom:none}

/* 質の条件の表示（Google広告の個人ローン規定・質屋営業法の掲示事項に対応） */
.disclosure{background:#fff;border:2px solid var(--ai);border-radius:10px;padding:22px 24px}
.disclosure h3{font-size:20px;color:var(--ai);margin-bottom:10px}
.disclosure dl{display:grid;grid-template-columns:200px 1fr;gap:8px 18px;font-size:16.5px}
.disclosure dt{font-weight:700}
.ratetbl{width:100%;max-width:460px;border-collapse:collapse;margin:4px 0 2px;font-size:16.5px;background:#fff}
.ratetbl th,.ratetbl td{border:1px solid var(--line);padding:8px 12px;text-align:center}
.ratetbl thead th{background:var(--ai);color:#fff;font-weight:700;font-size:15px}
.ratetbl td:first-child{text-align:left}
.ratetbl b{font-size:19px;color:var(--ai)}
.disclosure .ex{margin-top:12px;background:var(--ai-2);padding:12px 14px;border-radius:6px;font-size:15.5px}
@media (max-width:620px){.disclosure dl{grid-template-columns:1fr}.disclosure dt{margin-top:6px}}

/* 約束リスト */
.promises{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pr{background:var(--washi);border:1px solid var(--line);border-top:4px solid var(--kincha);padding:20px 20px 18px}
.pr b{font-family:var(--mincho);font-size:19px;display:block;margin-bottom:6px}
.pr p{font-size:16px;color:var(--sumi-2);line-height:1.8}
@media (max-width:900px){.promises{grid-template-columns:1fr}}

/* 店舗カード（一覧用） */
.stcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.stcard{background:var(--washi);border:1px solid var(--line);display:flex;flex-direction:column;text-decoration:none;color:inherit}
.stcard .ph{aspect-ratio:4/3}
.stcard .bd{padding:18px 20px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.stcard b{font-family:var(--mincho);font-size:21px}
.stcard p{font-size:15.5px;color:var(--sumi-2);line-height:1.75}
.stcard .more{margin-top:auto;font-weight:700;color:var(--ai)}
@media (max-width:900px){.stcards{grid-template-columns:1fr}}

/* お知らせ帯 */
.notice-bar{background:var(--kinari-2);border-bottom:1px solid var(--line);font-size:15px;padding:8px 0;text-align:center}
.notice-bar a{color:var(--ai);font-weight:700}

/* 道順 */
.route{counter-reset:r;list-style:none}
.route li{counter-increment:r;position:relative;padding:8px 0 8px 40px;border-bottom:1px dashed var(--line);font-size:16.5px}
.route li::before{content:counter(r);position:absolute;left:0;top:9px;width:28px;height:28px;border-radius:50%;background:var(--ai);color:#fff;font-size:14px;font-weight:700;display:grid;place-items:center}
.map{aspect-ratio:16/10;border:1px solid var(--line);width:100%}

/* フッターの店舗一覧 */
.ft-stores{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:26px}
.ft-stores div{border:1px solid #3d3631;padding:14px 16px;font-size:14.5px;line-height:1.75}
.ft-stores b{font-size:17px}
.ft-stores a{font-weight:700;color:#fff}
@media (max-width:900px){.ft-stores{grid-template-columns:1fr}}

/* スマホ下部の固定ボタン：電話（店舗を選ぶ）とフォーム */
.fixbar .t{border:none;font:inherit}
.fixbar button.t{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:9px 4px 11px;color:#fff;font-weight:700;font-size:15px;line-height:1.3;cursor:pointer}
