/* rei-quickmenu.override.css v1.1
   - ボタン数が 1〜5 のときも常にセンター寄せ（PC/スマホ両対応）
   - PC: Flexでセンター、各ボタンはclampでサイズ自動調整（最大5個で1段に収まる想定）
   - SP: Flexで3列相当（33.33%幅）。2個/1個の段も自動で中央寄せ。
   - 既存のパネル見た目＆“にゅっ”アニメは維持
*/

/* ===== 共通：パネル座標ホスト ===== */
#quickmenu-wrap{ position: relative; }
.fm-panels{ margin-top: 12px; }

/* ===== PC（>=1024px）：ボタンは常に中央揃え ===== */
@media (min-width: 1024px){
  #content-quick-menu{
    display: flex !important;
    flex-wrap: wrap;                 /* 画面幅次第で2段にも対応 */
    justify-content: center;         /* 中央寄せ */
    align-items: flex-start;
    gap: 20px;
    padding: 10px 0;
  }
  /* 各ボタンの幅：最小160px〜最大220pxで画面に応じて伸縮 */
  #content-quick-menu > a{
    display: block;
    flex: 0 1 clamp(160px, 18vw, 220px);
    max-width: clamp(160px, 18vw, 220px);
  }
  #content-quick-menu a img{
    width: 100% !important;
    height: auto !important;
    display: block;
    border-radius: 10px;
    box-shadow: 2px 2px 6px rgba(0,0,0,.2);
  }
}

/* ===== スマホ（<=1023px）：実質3列。行の要素数が減っても自動センター ===== */
@media (max-width: 1023px){
  #content-quick-menu{
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;         /* 2個/1個の段でも真ん中に寄る */
    align-items: flex-start;
    gap: 8px;
    padding: 10px 0;
  }
  /* 3列相当（33.33%）。端末幅で自動折り返し、段が欠けても中央寄せ維持 */
  #content-quick-menu > a{
    display: block;
    flex: 0 1 calc(33.333% - 8px);
    max-width: calc(33.333% - 8px);
  }
  #content-quick-menu a img{
    width: 100% !important;
    height: auto !important;
    display: block;
  }
}

/* ===== パネルの見た目＆アニメ（既存維持） ===== */
.fm-panel{
  position: absolute;
  left: 0; top: 0;
  display: none;
  padding: 16px;
  background: rgba(0,0,0,.85);
  color: #fff;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
  transform-origin: top left;
  opacity: 0;
  transform: translateY(-8px) scale(.98);
  transition: opacity .18s ease, transform .22s ease;
  z-index: 1000;
}
.fm-panel.align-right{ transform-origin: top right; }
.fm-panel.is-active{ display: block; opacity: 1; transform: translateY(0) scale(1); }

.fm-panel a,
.fm-panel a:link,
.fm-panel a:visited{
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.fm-panel a:h
