/*
 * Generio Store ヘッダーのPC表示（2026-10-04）
 * 1024px以上では、ハンバーガー・虫眼鏡で開く引き出しの代わりに、検索欄・会員・カート・カテゴリを並べて出す。
 * 1023px以下（スマホ・タブレット縦）はこれまでどおり。Block/header.twig と対。
 */
.gs-pc-only { display: none !important; }

@media (min-width: 1024px) {
  .gs-sp-only { display: none !important; }
  .gs-pc-only { display: revert !important; }
  .gs-search.gs-pc-only { display: flex !important; }
  .gs-pcnav.gs-pc-only { display: block !important; }

  .gs-header { height: 76px; padding: 0 32px; }

  .gs-search--pc { margin: 0; width: 100%; max-width: 340px; gap: 0; }
  .gs-search--pc .gs-search__input { height: 40px; font-size: 14px; border-radius: 2px 0 0 2px; }
  .gs-search--pc .gs-search__btn { height: 40px; padding: 0 14px; border-radius: 0 2px 2px 0; }

  .gs-header__side--right { gap: 22px; }
  .gs-header__btn { width: auto; height: auto; gap: 6px; font-size: 18px; }
  .gs-header__label { display: inline !important; font-size: 13px; font-weight: 600; letter-spacing: .02em; }
  .gs-header__cart .gs-header__badge { top: -8px; right: auto; left: 12px; }

  .gs-pcnav { border-bottom: 1px solid var(--gs-border); background: var(--gs-bg); }
  .gs-pcnav__list { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; max-width: 1200px; margin: 0 auto; padding: 0 24px; list-style: none; }
  .gs-pcnav__list li { margin: 0; }
  .gs-pcnav__list a { display: block; padding: 13px 20px; font-size: 14px; font-weight: 600; color: var(--gs-text); text-decoration: none; letter-spacing: .04em; }
  .gs-pcnav__list a:hover { color: var(--gs-accent); }
  .gs-pcnav__sub a { font-weight: 400; color: #666; }

  /* トップのスライド画像: PCでは画面いっぱいに広げず、最大1200pxで中央に（大きすぎるため。2026-10-04） */
  .gn-kv { width: min(1200px, calc(100vw - 64px)); margin: 24px 0 0 calc(50% - min(600px, 50vw - 32px)); border-radius: 4px; }
}

/* 見出し（H1）を検索エンジン・読み上げ向けにだけ置くとき（2026-10-04 SEO） */
.gs-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* よくある質問・監修医師（2026-10-04） */
.gn-faq__list { max-width: 880px; margin: 0 auto; padding: 0 16px; text-align: left; }
.gn-faq__item { border-bottom: 1px solid var(--gs-border, #e5e5e5); }
.gn-faq__q { cursor: pointer; padding: 16px 28px 16px 0; font-weight: 700; font-size: 15px; list-style: none; position: relative; }
.gn-faq__q::-webkit-details-marker { display: none; }
.gn-faq__q::before { content: 'Q.'; color: var(--gs-accent, #df7f0d); margin-right: 8px; }
.gn-faq__q::after { content: '+'; position: absolute; right: 4px; top: 14px; font-size: 18px; color: #999; }
.gn-faq__item[open] .gn-faq__q::after { content: '−'; }
.gn-faq__a { margin: 0 0 16px; padding: 0 0 0 26px; font-size: 14px; line-height: 1.8; color: #444; }
.gn-supervisor__card { max-width: 560px; margin: 0 auto; padding: 20px 24px; border: 1px solid var(--gs-border, #e5e5e5); border-radius: 4px; text-align: left; background: #fff; }
.gn-supervisor__role { margin: 0; font-size: 13px; color: #666; }
.gn-supervisor__name { margin: 4px 0 8px; font-size: 20px; font-weight: 700; }
.gn-supervisor__name span { font-size: 13px; font-weight: 400; color: #666; }
.gn-supervisor__career { margin: 0; font-size: 14px; line-height: 1.8; color: #444; }
.gn-supervised { margin: 16px 0 0; padding: 10px 12px; font-size: 12px; color: #555; background: #f7f7f7; border-radius: 3px; }
.gn-supervised a { margin-left: 6px; }
