@charset "utf-8";

:root {
  --gbx-own-on:    #4144f7; /* 所持中（青） */
  --gbx-own-off:   #f81d1d; /* 追加前（赤） */
  --gbx-own-text:  #fff;
  --gbx-own-ring:  rgba(99,102,241,.35);
}


.pc_side_banner_size {
  width: 28%;
  height: auto;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 1px 5px 0 rgb(0 0 0 / 12%), 0 3px 1px -2px rgb(0 0 0 / 20%);
}



.ranking-tabs {
  margin: 20px 0;
}
.tab-buttons {
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
}
.tab-btn {
  flex: 1;
  padding: 12px 15px;
  font-size: 18px;
  font-weight: bold;
  background: #eee;
  border: 2px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s;
}
.tab-btn:hover {
  background: #ddd;
}
.tab-btn.active {
  background: #0073aa;
  color: #fff;
  border-color: #0073aa;
}
.tab-content {
  display: none;
}
.tab-content.active {
  display: block;
}


.toukou-btn {
    appearance: none;
    border: 0;
    border-radius: 10px;
    background: #2563eb;
    color: #fff;
    padding: 10px 16px;
    font-size: .95rem;
    cursor: pointer;
}
.toukou-btn:hover {
	color: #FFFFFF;
	text-decoration: none;
}
@media screen and (max-device-width: 799.98px){ .toukou-btn {font-size: 1.2rem !important; font-weight: 700; display: inline-block;} }



.gbx-own-bulkbar{
  display:flex; gap:.5rem; margin: 0;
}
.gbx-own-bulkbar button{
  appearance:none; border:1px solid #cbd5e1; background:#fff; padding:.45rem .8rem; border-radius:.5rem; cursor:pointer;
  font-size: 105%; font-weight: 700;
}
.gbx-own-bulkbar button:hover{ background:#f8fafc; }








/* ===== Design System ===== */
:root{
  --c-bg:#fff; --c-card:#fff; --c-border:#e5e7eb; --c-muted:#6b7280; --c-text:#111827; --c-link:#1f2937;
  --c-badge-bg:#eef2ff; --c-badge-fg:#4338ca; --c-accent:#111827;
  --r-12:12px; --r-16:16px;
  --shadow:0 1px 2px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.06);
}
@media (prefers-color-scheme: dark){
  :root{
    --c-bg:#0b0f14; --c-card:#0e141a; --c-border:#1f2937; --c-muted:#9aa4b2; --c-text:#e5e7eb; --c-link:#e5e7eb;
    --c-badge-bg:#1e293b; --c-badge-fg:#93c5fd; --c-accent:#e5e7eb;
    --shadow:0 1px 2px rgba(0,0,0,.2),0 8px 24px rgba(0,0,0,.24);
  }
}

/* ===== コメントセクション ===== */
.gbx-cmts{ margin-top:2rem; color:var(--c-text); }
.gbx-cmts__title{ font-weight:700; margin-bottom:1rem; font-size:1.125rem; }
.gbx-cmts__list{ list-style:none; margin:0; padding:0; }

/* カード＋スレッド線 */
.gbx-cmt{ margin:0; }
.gbx-cmt + .gbx-cmt{ margin-top:12px; }
.gbx-cmt__card{
  background:var(--c-card); border:1px solid var(--c-border); border-radius:var(--r-16);
  box-shadow:var(--shadow); padding:12px 12px 12px 8px; position:relative; overflow:hidden;
}
.gbx-cmt__grid{ display:grid; grid-template-columns:48px 1fr; gap:12px; }
.gbx-cmt__rail{ position:absolute; left:24px; top:64px; bottom:12px; width:2px;
  background:linear-gradient(180deg, rgba(107,114,128,.25), rgba(107,114,128,0)); border-radius:2px; }

/* アバター */
.gbx-cmt__avatarwrap{ display:block; border-radius:9999px; outline:none; }
.gbx-cmt__avatar{ display:block; border-radius:9999px; }

/* ヘッダ */
.gbx-cmt__head{ display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.gbx-cmt__meta{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.gbx-cmt__no{ font-weight:700; padding:.1rem .5rem; border-radius:999px; background:rgba(17,24,39,.05); color:var(--c-link); text-decoration:none; }
@media (prefers-color-scheme: dark){ .gbx-cmt__no{ background:rgba(229,231,235,.08); } }
.gbx-cmt__author{ font-weight:700; }
.gbx-cmt__badge{ font-size:12px; background:var(--c-badge-bg); color:var(--c-badge-fg); padding:.1rem .5rem; border-radius:999px; }
.gbx-cmt__dot{ color:var(--c-muted); }
.gbx-cmt__time{ color:var(--c-muted); font-size:12px; }

/* 本文 */
.gbx-cmt__body{ margin-top:.25rem; }
.gbx-cmt__pending{ color:#b45309; margin:0 0 .25rem; font-size:.9rem; }
.gbx-cmt__content{ line-height:1.7; font-size:1rem; word-wrap:break-word; }

/* 操作（#comments 内でスコープ） */
#comments.gbx-cmts .gbx-cmt__actions{ display:flex; gap:8px; flex-wrap:wrap; }
#comments.gbx-cmts .gbx-cmt__actions a{
  display:inline-flex; align-items:center; gap:6px; padding:.35rem .6rem;
  border-radius:999px; border:1px solid var(--c-border); text-decoration:none; color:var(--c-link); font-size:.875rem;
}
#comments.gbx-cmts .gbx-cmt__actions a:hover{ background:rgba(17,24,39,.04); }
#comments.gbx-cmts .gbx-cmt__actions a:focus-visible{ outline:2px solid var(--c-accent); outline-offset:2px; }

/* いいね／通報ボタン（#comments 内でスコープ） */
#comments.gbx-cmts .gbx-cmt__actions .gbx-cmt__like,
#comments.gbx-cmts .gbx-cmt__actions .gbx-cmt__report{
  display:inline-flex; align-items:center; gap:6px; padding:.35rem .6rem;
  border-radius:999px; border:1px solid var(--c-border);
  background:var(--c-card); color:var(--c-link); cursor:pointer; font-size:.875rem;
}
#comments.gbx-cmts .gbx-cmt__actions .gbx-cmt__like:hover,
#comments.gbx-cmts .gbx-cmt__actions .gbx-cmt__report:hover{ background:rgba(17,24,39,.04); }
#comments.gbx-cmts .gbx-like__num, #comments.gbx-cmts .gbx-report__num{ font-weight:700; }
#comments.gbx-cmts .gbx-cmt__like.is-liked{ border-color:#4f46e5; color:#4f46e5; }

/* ページャ */
.gbx-cmts__pager{ margin-top:12px; }

/* 入力フォーム（中央寄せ PC70% / SP100%） */
.gbx-cmtform{ margin-top:24px; border-top:1px solid var(--c-border); padding-top:16px; }
.gbx-cmtform__form{ width:70%; margin-left:auto; margin-right:auto; }
@media (max-width:800px){ .gbx-cmtform__form{ width:100%; } }
.gbx-cmtform__form p{ margin:0 0 12px; }
.gbx-cmtform__form label{ display:block; font-weight:600; margin-bottom:6px; }
.gbx-cmtform__form input,
.gbx-cmtform__form textarea{
  width:100% !important; max-width:100% !important; box-sizing:border-box;
  background:var(--c-card); color:var(--c-text); border:1px solid var(--c-border); border-radius:12px; padding:10px 12px; line-height:1.6;
}
.gbx-cmtform__form input:focus, .gbx-cmtform__form textarea:focus{ outline:2px solid var(--c-accent); outline-offset:2px; }
.gbx-cmtform__hint{ display:inline-block; margin-top:6px; color:var(--c-muted); }
.gbx-cmtform__count{ float:right; margin-top:6px; color:var(--c-muted); }

/* Cookie 同意行（簡略） */
.gbx-cmtform__cookies{
  align-items:center; gap:8px; margin:8px 0 0; color:var(--c-muted); font-size:.95rem; text-align: center !important;
}
.gbx-cmtform__cookies input[type="checkbox"]{ width:18px !important; height:18px !important; accent-color:var(--c-accent); flex:0 0 auto; display: inline-block !important; }
.gbx-cmtform__cookies label{ margin:0; line-height:1.4; display: inline-block !important; font-size: 1.3em; }

/* ===== ボタンのグローバル衝突対策 ===== */
/* 1) もし他所で .gbx-btn / .gbx-btn--primary が使われていても崩さない中立値 */
.gbx-btn{ cursor:auto; } /* 初期化（念のため） */
.gbx-btn--primary{ width:auto; display:inline-block; background:initial; color:inherit; border:initial; padding:initial; border-radius:initial; font-weight:inherit; }

/* 2) コメント欄内だけの見た目（ここで改めて上書き） */
#comments.gbx-cmts .gbx-btn{ cursor:pointer; }
#comments.gbx-cmts .gbx-btn--primary{
  margin-top:8px; background:var(--c-accent); color:#fff; border:0;
  padding:.7rem 1rem; border-radius:12px; font-weight:700; width:auto;
}
#comments.gbx-cmts .gbx-btn--primary:hover{ opacity:.92; }
#comments.gbx-cmts .gbx-btn--primary:focus-visible{ outline:2px solid var(--c-accent); outline-offset:2px; }
/* 送信ボタンだけ横いっぱい */
#comments.gbx-cmts .gbx-cmtform .gbx-cmtform__form .gbx-btn--primary{ width:100%; display:block; }
/* オプション：小サイズ */
#comments.gbx-cmts .gbx-btn--tiny{ padding:.35rem .6rem; font-size:.8125rem; border-radius:10px; }

/* 通報モーダル */
.gbx-report[hidden]{ display:none; }
.gbx-report{ position:fixed; inset:0; z-index:999; display:grid; place-items:center; }
.gbx-report__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.35); z-index:1; }
.gbx-report__dialog{
  position:relative; z-index:2; background:var(--c-card); color:var(--c-text);
  border:1px solid var(--c-border); border-radius:16px; box-shadow:var(--shadow);
  padding:16px; width:min(540px, 92vw);
}
.gbx-report__dialog h3{ margin:0 0 8px; font-size:1.05rem; font-weight:700; }
.gbx-report__desc{ margin:0 0 8px; color:var(--c-muted); }
#gbx-report-reason{
  width:100%; border:1px solid var(--c-border); border-radius:12px; background:var(--c-card);
  color:var(--c-text); padding:10px 12px; line-height:1.6; box-sizing:border-box;
}
.gbx-report__actions{ margin-top:10px; display:flex; gap:8px; justify-content:flex-end; }

/* 自分のコメント・投稿者の視覚的強調（任意） */
.bypostauthor .gbx-cmt__card{ border-color:rgba(67,56,202,.5); }
.comment-author-admin .gbx-cmt__card{ border-color:rgba(59,130,246,.45); }

/* （任意）絵文字フォントのフォールバック */
.gbx-cmt__content, .gbx-cmtform__form textarea, .gbx-cmtform__form input{
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,
               "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji",sans-serif;
}

/* レスポンシブ最適化 */
@media (max-width: 480px){
  .gbx-cmt__grid{ grid-template-columns:40px 1fr; gap:10px; }
  .gbx-cmt__no{ display:none; }
  .gbx-cmt__content{ font-size:.975rem; }
}

/* ===== 追記：フォロー系ボタンはグローバルで“プライマリ”に戻す ===== */
.gbx-btn--primary[data-gbx-follow]{
  background: var(--c-accent);
  color: #fff;
  border: 0;
  padding: .55rem 1rem;
  border-radius: 12px;
  font-weight: 700;
  width: auto;          /* コメント欄の送信のように100%にはしない */
  display: inline-block;
  cursor: pointer;
}
.gbx-btn--primary[data-gbx-follow]:hover{ background: #2563eb; }
.gbx-btn--primary[data-gbx-follow]:focus-visible{
  outline: 2px solid var(--c-accent);
  outline-offset: 2px;
}
/* 無効状態（disabled/aria-disabled） */
.gbx-btn--primary[data-gbx-follow][disabled],
.gbx-btn--primary[data-gbx-follow][aria-disabled="true"]{
  opacity: .6;
  cursor: not-allowed;
}

/* “あなたです”表示など、自己ボタンの見た目を少し落ち着かせたい場合（任意） */
.gbx-btn--primary[data-gbx-follow].is-self{
  background: linear-gradient(0deg, rgba(0,0,0,.04), rgba(0,0,0,.04)) , var(--c-accent);
}

/* 固定ページフォーム：関連商品サジェスト */
.rcs-swk-rel { margin: 12px 0 16px; }
.rcs-swk-rel__box { position: relative; }
.rcs-swk-rel__input {
  width:100%; padding:.6rem .7rem; border:1px solid #ccc; border-radius:8px; font-size:14px; box-sizing:border-box;
}
.rcs-swk-rel__list{
  position:absolute; left:0; right:0; top:100%; z-index:9990;
  background:#fff; border:1px solid #ddd; border-radius:8px; margin-top:6px;
  max-height:260px; overflow:auto; list-style:none; padding:6px 0;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.rcs-swk-rel__item{ padding:.5rem .75rem; cursor:pointer; display:flex; gap:.5rem; }
.rcs-swk-rel__item:hover{ background:#f6f7fb; }
.rcs-swk-rel__item-title{ font-weight:600; }
.rcs-swk-rel__item-type{ color:#777; font-size:12px; }


/* RCS SWK - scoped */
.rcs-swk{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Noto Sans JP","Helvetica Neue",Arial,sans-serif;color:#111}
.rcs-swk-form {
  max-width: 70%;
  margin: 0 auto; /* 中央寄せ */
}


/* カード内の著者ボックス（一覧・詳細と構造合わせ） */
.rcs-swk-authorbox{
  display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:center;
  margin:.35rem 0 .5rem;
}
.rcs-swk-avatar{
  width:40px; height:40px; border-radius:999px; object-fit:cover; display:block; background:#f1f1f1;
}
.rcs-swk-authorwrap{ display:flex; flex-direction:column; gap:2px; }
.rcs-swk-authorname{ font-size:13px; font-weight:600; line-height:1.1; }
.rcs-swk-date{ font-size:12px; color:#666; }


/* Toggle button centered & larger */
.rcs-swk-toggle-wrap{display:flex;justify-content:center;margin:10px 0 14px}
.rcs-swk--form .rcs-swk-toggle{padding:16px 28px;font-size:1.15rem;border:0;border-radius:12px;background:#111;color:#fff;cursor:pointer}
.rcs-swk--form .rcs-swk-form.is-collapsed{display:none}

.rcs-swk--form .rcs-swk-form{border:1px dashed #cbd5e1;border-radius:12px;padding:14px;background:#fafafa}
.rcs-swk-field{margin-bottom:14px}
.rcs-swk-field--row{display:flex;gap:12px}
.rcs-swk-label{display:block;font-size:.9rem;margin-bottom:6px;font-weight:600}
.rcs-swk-input,.rcs-swk-textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:10px;padding:10px;font-size:14px;background:#fff}
.rcs-swk-textarea{min-height:120px;resize:vertical}
.rcs-swk-upload{border:2px dashed #cbd5e1;border-radius:12px;background:#fff;padding:16px;text-align:center;cursor:pointer}
.rcs-swk-upload.dragover{background:#eef6ff;border-color:#60a5fa}
.rcs-swk-upload__hint{font-size:.85rem;color:#555}
.rcs-swk-previews{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.rcs-swk-previews .rcs-swk-thumbwrap{position:relative}
.rcs-swk-previews img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}
.rcs-swk-previews .rcs-swk-del{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:#ff4d6d;color:#fff;cursor:pointer;font-size:.8rem;line-height:22px;text-align:center}

.rcs-swk-submit{justify-content:flex-end;align-items:center;gap:10px}
.rcs-swk-btn{appearance:none;border:0;border-radius:10px;background:#2563eb;color:#fff;padding:10px 16px;font-size:.95rem;cursor:pointer}
.rcs-swk-msg{font-size:.9rem;color:#155724}

/* Grid */
.rcs-swk--grid .rcs-swk-grid{display:grid;gap:16px}
.rcs-swk--grid.cols-5 .rcs-swk-grid{grid-template-columns:repeat(5,1fr)}
.rcs-swk--grid.cols-4 .rcs-swk-grid{grid-template-columns:repeat(4,1fr)}
.rcs-swk--grid.cols-3 .rcs-swk-grid{grid-template-columns:repeat(3,1fr)}
.rcs-swk--grid.cols-2 .rcs-swk-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:1200px){.rcs-swk--grid .rcs-swk-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.rcs-swk--grid .rcs-swk-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.rcs-swk--grid .rcs-swk-grid{grid-template-columns:1fr}}

/* Slider */
.rcs-swk--slider{position:relative}
.rcs-swk-slider{position:relative}
.rcs-swk-track{display:flex;gap:16px;overflow:hidden;scroll-behavior:smooth}
.rcs-swk--slider .rcs-swk-card{flex:0 0 calc((100% - (var(--gap,16px) * (var(--cols,4) - 1))) / var(--cols,4));}
.rcs-swk-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:0;background:#111;color:#fff;width:38px;height:38px;border-radius:50%;cursor:pointer;opacity:.9}
.rcs-swk-prev{left:-6px}
.rcs-swk-next{right:-6px}

.rcs-swk-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.rcs-swk-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#f4f4f4;overflow:hidden}
.rcs-swk-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rcs-swk-noimg{display:flex;align-items:center;justify-content:center;height:100%;color:#aaa;font-size:.9rem}
.rcs-swk-body{padding:12px}
.rcs-swk-h3{font-size:1rem;margin:0 0 6px}
.rcs-swk-h3 a{text-decoration:none;color:#111}

/* 解説 2行省略（line-clamp） */
.rcs-swk-ex{
  font-size:.9rem;color:#333;margin:0 0 10px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis;
}

.rcs-swk-meta{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#555}
.rcs-swk-mini{margin-top:6px; display:flex; align-items:center; gap:8px; font-size:.8rem; color:#444}
.rcs-swk-like{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;cursor:pointer}
.rcs-swk-like[aria-pressed="true"], .rcs-swk-like.is-liked{background:#ffe6ea;border-color:#ffafbf}
.rcs-swk-like-icon{font-size:.85rem;line-height:1}
.rcs-swk-like-count{font-variant-numeric:tabular-nums}
.rcs-swk-mini-sep{opacity:.6}




/* === v1.3.2-r1: responsive tuning & slider snap === */
@media (max-width: 800px){
  .rcs-swk--grid.cols-5 .rcs-swk-grid{grid-template-columns:repeat(3,1fr)}
  .rcs-swk--grid.cols-4 .rcs-swk-grid{grid-template-columns:repeat(2,1fr)}
  .rcs-swk--grid.cols-3 .rcs-swk-grid{grid-template-columns:repeat(2,1fr)}
  .rcs-swk--grid.cols-2 .rcs-swk-grid{grid-template-columns:repeat(1,1fr)}
  .rcs-swk--grid.cols-1 .rcs-swk-grid{grid-template-columns:repeat(1,1fr)}
  .rcs-swk-h3{font-size:.95rem}
  .rcs-swk-ex{font-size:.85rem}
  .rcs-swk-meta{font-size:.8rem}
  .rcs-swk-mini{font-size:.78rem}
  .rcs-swk--form .rcs-swk-toggle{font-size:1rem;padding:14px 22px}
}

/* Snap each card at start */
.rcs-swk-track{scroll-snap-type:x mandatory}
.rcs-swk-track .rcs-swk-card{scroll-snap-align:start}


/* === v1.3.2-r3: robust mobile columns + fonts === */
@media (max-width: 800px){
  /* Grid shortcode (class-based cols) */
  .rcs-swk .rcs-swk--grid.cols-5 .rcs-swk-grid{grid-template-columns:repeat(3,1fr) !important}
  .rcs-swk .rcs-swk--grid.cols-4 .rcs-swk-grid{grid-template-columns:repeat(2,1fr) !important}
  .rcs-swk .rcs-swk--grid.cols-3 .rcs-swk-grid{grid-template-columns:repeat(2,1fr) !important}
  .rcs-swk .rcs-swk--grid.cols-2 .rcs-swk-grid{grid-template-columns:repeat(1,1fr) !important}
  .rcs-swk .rcs-swk--grid.cols-1 .rcs-swk-grid{grid-template-columns:repeat(1,1fr) !important}

  /* Slider shortcode (attribute-based cols) */
  .rcs-swk [data-rcs-swk-slider][data-cols="5"] .rcs-swk-grid{grid-template-columns:repeat(3,1fr) !important}
  .rcs-swk [data-rcs-swk-slider][data-cols="4"] .rcs-swk-grid{grid-template-columns:repeat(2,1fr) !important}
  .rcs-swk [data-rcs-swk-slider][data-cols="3"] .rcs-swk-grid{grid-template-columns:repeat(2,1fr) !important}
  .rcs-swk [data-rcs-swk-slider][data-cols="2"] .rcs-swk-grid{grid-template-columns:repeat(1,1fr) !important}
  .rcs-swk [data-rcs-swk-slider][data-cols="1"] .rcs-swk-grid{grid-template-columns:repeat(1,1fr) !important}

  /* Font tuning on mobile */
  .rcs-swk .rcs-swk-h3{font-size:0.95rem !important; line-height:1.35}
  .rcs-swk .rcs-swk-ex{font-size:0.85rem !important; line-height:1.5}
  .rcs-swk .rcs-swk-meta{font-size:0.8rem !important}
  .rcs-swk .rcs-swk-mini{font-size:0.78rem !important}
  
  .rcs-swk-form {
    max-width: 100%;
    width: 100%;
    padding: 0 10px; /* 端がくっつかないように余白 */
    box-sizing: border-box;
   }
}
/* viewport 800 aligned */


/* シェアボタンの基本 */
.domestic-share{ display:flex; gap:8px; align-items:center; margin:0; }
.domestic-share .ds-btn{ display:inline-flex; align-items:center; gap:8px; padding:8px 10px; border-radius:8px; text-decoration:none; font-size:14px; line-height:1; border:1px solid rgba(0,0,0,0.06); background:white; box-shadow:0 1px 2px rgba(0,0,0,0.03); color:inherit; transition:transform .08s ease, box-shadow .08s ease; }
.domestic-share .ds-btn svg{ display:block; width:18px; height:18px; }

/* 色分け（好みで調整） */
.domestic-share .ds-x{ color:#1d9bf0; border-color: rgba(29,155,240,0.12); }
.domestic-share .ds-fb{ color:#1877f2; border-color: rgba(24,119,242,0.12); }
.domestic-share .ds-line{ color:#00c300; border-color: rgba(0,195,0,0.12); }
.domestic-share .ds-mail{ color:#555; border-color: rgba(0,0,0,0.06); }

/* hover */
.domestic-share .ds-btn:hover{ transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,0,0,0.06); }

/* ラベル（必要なら非表示にできる） */
.domestic-share .ds-label{ display:none; } /* アイコンだけで良ければ hidden、表示したければ block に */
@media (min-width: 900px) {
  .domestic-share .ds-label{ display:inline-block; font-size:13px; color:inherit; }
}



.gbx-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;font-size:12px;background:#eef2ff}
.gbx-badge-main{background:#fde68a}
.gbx-badge-count{background:#e0f2fe}


/* カード本体 */
.eventListItem{
  width: 60%; min-width: 600px;
  margin: 10px auto !important;
  position:relative; display:flex; gap:16px; align-items:flex-start;
  padding:14px 44px 14px 16px; margin:10px 0;
  border:1px solid #e5e7eb; border-radius:12px; background:#fff;
  text-decoration:none; color:inherit;
}
.eventListItem:hover{ box-shadow:0 8px 20px rgba(0,0,0,.06); border-color:#dbe0e6 }

/* 左側：日付・時間・県 */
.eventListItem .left{ min-width:190px; display:flex }
.eventListItem .eventDate .date{ font-weight:700; font-size:1.15rem; line-height:1.15 }
.eventListItem .eventDate .day{ letter-spacing:.5px }
.eventListItem .eventDate .time{ margin-left:8px; font-size:.95rem; color:#333 }
.eventListItem .eventDate .pref{
  display:inline-block; margin-top:4px; padding:2px 8px; border-radius:999px;
  background:#f3f4f6; color:#374151; font-size:.85rem;
}

/* 右側：タイトル・詳細・住所 */
.eventListItem .right{ flex:1 1 auto }
.eventListItem .title{ font-weight:700; font-size:1.05rem; margin-bottom:6px; color:#111827 }
.eventListItem .detail{ font-size:.95rem; color:#374151 }
.eventListItem .detail .regulation{ font-weight:600 }
.eventListItem .address-box{ margin-top:6px; color:#4b5563; line-height:1.4 }
.eventListItem .shop{ font-weight:600; margin-bottom:2px }

/* 右端の山括弧（＞） */
.eventListItem .chevron{
  position:absolute; right:14px; top:50%; transform:translateY(-50%);
  font-size:20px; color:#9ca3af;
}

/* モバイル調整 */
@media (max-width:640px){
  .eventListItem{ flex-direction:column; padding:12px 38px 12px 12px }
  .eventListItem .left{ min-width:auto }
  .eventListItem .eventDate .time{ display:inline-block; margin-left:6px }
  .eventListItem .eventDate .pref{ margin-top:6px }
}


.gbx-pager{display:flex;gap:12px;align-items:center;justify-content:center;margin:14px 0}
.gbx-pager a{padding:.4rem .7rem;border:1px solid #d1d5db;border-radius:.5rem;text-decoration:none;background:#fff;color:#111}
.gbx-pager .disabled{padding:.4rem .7rem;border:1px dashed #e5e7eb;border-radius:.5rem;color:#9ca3af}
.gbx-pager .page-now{min-width:90px;text-align:center;color:#374151}


/* ===== Pokeka Single (gbx_pokeka_event) ===== */
body.single-gbx_pokeka_event {
  --gbx-bg: #fff;
  --gbx-text: #111827;
  --gbx-sub: #374151;
  --gbx-muted: #6b7280;
  --gbx-border: #e5e7eb;
  --gbx-pill: #f3f4f6;
  --gbx-head: #f8fafc;
  --gbx-gold: #f59e0b;
  --gbx-silver: #9ca3af;
  --gbx-bronze: #d97706;
  --gbx-link: #2563eb;
}

/* = Header block (event info) = */
.single-gbx_pokeka_event .eventListItem{
  width: 60%; min-width: 600px;
  margin: 10px auto !important;
  display:flex; gap:16px; align-items:flex-start;
  padding:16px; margin:12px 0 18px;
  background:var(--gbx-bg); color:var(--gbx-text);
  border:1px solid var(--gbx-border); border-radius:12px;
  box-shadow: 0 1px 0 rgba(17,24,39,.03);
}
.single-gbx_pokeka_event .eventListItem .left{ min-width:200px }
.single-gbx_pokeka_event .eventDate .date{ font-weight:700; font-size:1.15rem; line-height:1.2 }
.single-gbx_pokeka_event .eventDate .time{ margin-left:8px; color:var(--gbx-sub) }
.single-gbx_pokeka_event .eventDate .pref{
  display:inline-block; margin-top:6px; padding:2px 10px;
  border-radius:999px; background:var(--gbx-pill); color:var(--gbx-text);
  font-size:.9rem;
}
.single-gbx_pokeka_event .eventListItem .right{ flex:1 1 auto }
.single-gbx_pokeka_event .eventListItem .title{ font-weight:800; font-size:1.2rem; margin:2px 0 8px }
.single-gbx_pokeka_event .eventListItem .detail{ color:var(--gbx-sub); font-size:.95rem }
.single-gbx_pokeka_event .eventListItem .detail > span + span{ margin-left:.6em }
.single-gbx_pokeka_event .address-box{ margin-top:8px; color:var(--gbx-muted); font-size:.95rem }
.single-gbx_pokeka_event .address-box .shop{ font-weight:600; color:var(--gbx-text) }
.single-gbx_pokeka_event .address-box .building{ white-space:normal; word-break:break-word }

/* = Rank table = */
.single-gbx_pokeka_event .rankSection{ margin:8px 0 24px; overflow-x:auto }
.single-gbx_pokeka_event .c-rankTable{
  width:60%; min-width:500px; border-collapse:collapse;
  background:var(--gbx-bg); border:1px solid var(--gbx-border);
  border-radius:10px; overflow:hidden;
  margin: 0 auto;
}
.single-gbx_pokeka_event .c-rankTable thead th{
  background:var(--gbx-head); text-align:left; font-weight:700;
  padding:10px 12px; font-size:.95rem; color:var(--gbx-text);
  border-bottom:1px solid var(--gbx-border);
}
.single-gbx_pokeka_event .c-rankTable td{
  padding:10px 12px; border-bottom:1px solid var(--gbx-border);
  vertical-align:middle; color:var(--gbx-text);
}
.single-gbx_pokeka_event .c-rankTable tbody tr:nth-child(odd){ background:#fbfdff }

/* rank badge */
.single-gbx_pokeka_event td.rank span{
  display:inline-block; min-width:2.1em; text-align:center; font-weight:800;
  padding:.1em .4em; border-radius:8px; background:var(--gbx-pill);
}
.single-gbx_pokeka_event td.rank.rank-1 span{ background:rgba(245,158,11,.15); color:var(--gbx-gold) }
.single-gbx_pokeka_event td.rank.rank-2 span{ background:rgba(156,163,175,.18); color:var(--gbx-silver) }
.single-gbx_pokeka_event td.rank.rank-3 span{ background:rgba(217,119,6,.15);  color:var(--gbx-bronze) }

.single-gbx_pokeka_event td.point{ color:var(--gbx-sub) }
.single-gbx_pokeka_event td.user .user-name{ font-weight:700; margin-right:.4em }
.single-gbx_pokeka_event td.user .user-id,
.single-gbx_pokeka_event td.user .user-area{ color:var(--gbx-muted); margin-left:.4em }
.single-gbx_pokeka_event td.area{ color:var(--gbx-text) }

/* deck link → button-ish */
.single-gbx_pokeka_event .deck-link{
  display:inline-block; text-decoration:none; color:#fff; background:var(--gbx-link);
  padding:.45em .8em; border-radius:8px; font-weight:700; line-height:1.1;
  box-shadow: 0 1px 0 rgba(37,99,235,.2);
}
.single-gbx_pokeka_event .deck-link:hover{ filter:brightness(0.95) }

/* utility: hide <br> on desktop, show on sp like official */
.single-gbx_pokeka_event .u-display-sp{ display:none }
@media (max-width: 768px){
  .single-gbx_pokeka_event .eventListItem{ flex-direction:column; gap:10px; padding:14px }
  .single-gbx_pokeka_event .eventListItem .left{ min-width:auto }
  .single-gbx_pokeka_event .eventDate .date{ font-size:1.05rem }
  .single-gbx_pokeka_event .eventListItem .title{ font-size:1.05rem }
  .single-gbx_pokeka_event .u-display-sp{ display:inline }
  .single-gbx_pokeka_event .c-rankTable{ min-width:600px }
}

/* dark mode (任意) */
@media (prefers-color-scheme: dark){
  body.single-gbx_pokeka_event{
    --gbx-bg:#0b0e15; --gbx-text:#e5e7eb; --gbx-sub:#c7cbd1; --gbx-muted:#9aa0a6;
    --gbx-border:#1f2937; --gbx-pill:#111827; --gbx-head:#0f1420;
  }
  .single-gbx_pokeka_event .deck-link{ color:#0b0e15 }
}



/* ===== Breadcrumb ===== */
.breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;                    /* 余白 */
  font-size:.92rem;
  line-height:1.6;
  color:#6b7280;              /* グレー */
}
.breadcrumb a{
  color:#2563eb;              /* ブルー */
  text-decoration:none;
  transition:opacity .15s ease;
}
.breadcrumb a:hover{ opacity:.8; text-decoration:underline; }

/* 区切り（›）を CSS で自動挿入 */
.breadcrumb a + a::before,
.breadcrumb a + span::before{
  content:"›";
  color:#9ca3af;              /* 区切りは薄め */
  margin:0 6px 0 2px;
}

/* 現在地は強調＆黒寄り */
.breadcrumb [aria-current="page"]{
  color:#111827;
  font-weight:600;
}

/* モバイルは中間を省略（例：トップ › … › 詳細） */
@media (max-width: 480px){
  .breadcrumb a:nth-of-type(2){
    display:none;
  }
  .breadcrumb a:nth-of-type(1)::after{
    content:"…";
    color:#9ca3af;
    margin:0 6px;
  }
}

.breadcrumb{
  display:flex; align-items:center; flex-wrap:wrap; gap:6px;
  font-size:.92rem; line-height:1.6; color:#6b7280;
}
.breadcrumb a{ color:#2563eb; text-decoration:none }
.breadcrumb a:hover{ text-decoration:underline }
.breadcrumb .sep{ color:#9ca3af; margin:0 4px }  /* 矢印は非リンク */
.breadcrumb [aria-current="page"]{ color:#111827; font-weight:600 }

.img_box {
  position: relative;
}

.card-meta .card-qty{
  position: absolute; bottom: 10px; right: 10px;
  display:inline-block; margin-top:6px; padding:2px 10px;
  border-radius:999px; background: #1877f2; color: #fff;
  font-size:.9rem; font-weight: 700;
}
@media screen and (max-device-width: 799.98px){ .card-meta .card-qty{font-size:2rem !important;}; }



@media screen and (max-device-width: 799.98px){ 
  .gbx-btn {font-size: 1.5rem !important; font-weight: 700;}
  #gbx_deck_desc {font-size: 1.5rem !important;}
  .sakurei-sort a {font-size: 1.3rem !important;}
  .sakurei-title a {font-size: 1.3rem !important; font-weight: 700;}
  .sakurei-authorname {font-size: 1.2rem !important;}
  .sakurei-date {font-size: 1.2rem !important;}
  .sakurei-related {font-size: 1.2rem !important;}
  .item_list_box2 .title { margin-bottom: 10px;}
  .domestic-share .ds-btn svg { width: 25px; height: 25px;}
  .gbx-qa__btn {font-size: 1.5rem !important; font-weight: 700;}
  .gbx-qa__field input[type=text], .gbx-qa__field input[type=email], .gbx-qa__field textarea  {font-size: 1.5rem !important; font-weight: 700;}
  .rcs-label {font-size: 1.2rem !important;}
  .rcs-percent {font-size: 1.2rem !important;}
  .rcs-count-lg {font-size: 1.2rem !important;}
  .rcs-stars-input {font-size: 2rem !important;}
  #respond.rcs-respond label {font-size: 1.2rem !important;}
  .eventListItem{ width: 100% !important; box-sizing: border-box;}
  .single-gbx_pokeka_event .c-rankTable{width: 100% !important; box-sizing: border-box;}
  .single-gbx_pokeka_event .eventListItem .title {font-size: 1.5rem !important;}
  .single-gbx_pokeka_event .address-box .shop span {font-size: 1rem !important;}
  .eventListItem .title {font-size: 1.5rem !important;}
  .eventListItem .shop {font-size: 1rem !important;}
  .gbx-deck__grid{grid-template-columns:repeat(auto-fill,minmax(600px,1fr)) !important;}
}



.gbx-ulike-btn {
  position: absolute;
  bottom: 5px;
  right: 5px;
    display: inline-flex;
    align-items: center;
    gap: 0.25em;
    padding: 4px 8px;
    border: 1px solid #ddd;
    border-radius: 20px;
    background: #fff;
    cursor: pointer;
    font-size: 0.9rem;
}

.gbx-ulike-btn .gbx-ulike-icon {
    line-height: 1;
}

.gbx-ulike-btn.is-liked .gbx-ulike-icon {
    color: #e60033; /* お好みで */
}

.gbx-ulike-btn[disabled],
.gbx-ulike-btn.gbx-ulike-loading {
    opacity: 0.6;
    cursor: default;
}

.cart_img {
  width: 100px;
  height: auto;
}
.cart_img img {
  width: 100%;
  height: auto;
}







