/* =============================================
   SAN'IN TABLE — 改善版 共通スタイルシート
   ※ futureshop オリジナルCSS欄に直接貼り付け用
   ============================================= */
/* ほとんどのページ要素、ヘッダー、サイドメニュー、フッターを明朝体で固定 */
body,
body.fs-body-top,
body.fs-body-custom,
body.fs-body-product,
body.fs-body-category,
body.fs-body-category-itemlist,
body.fs-body-cart,
body.fs-body-search,
.fs-l-header,
.fs-p-sideMenu,
footer,
#fs-l-footer,
.fs-l-footer {
    font-family: "Noto Serif JP", "BIZ UDPMincho", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
    color: #111111 !important; /* 【改善】#333333から、よりはっきりとした漆黒に変更 */
    font-weight: 500 !important; /* 【改善】明朝体の横線がかすれないよう、標準よりやや太めに設定 */
    font-size: 1.6rem; /* PC：約16px相当 */
}

@media screen and (min-width: 769px) {
    .fs-l-header__contents {
        grid-template-columns: 30% 40% 30%;
    }
}
/:root {
  --head-gold: #CBA23F;
  --head-clay: #9B3B2B;
  --head-ink: #2B241D;
  --head-ink-soft: #5B5347;
  --head-line: #E4DCC8;
}

/* ユーティリティバー */
.util-bar {
  background: linear-gradient(180deg, #CBA23F, #B0872A);
  color: #3B2A0E; text-align: center; font-size: 13px; font-weight: 700;
  padding: 9px 12px; letter-spacing: .03em;
}
/* ヘッダー全体：背景無地でシンプルに */
.tokuda-header-simple {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 30px;
  background-color: ##f9f9eb; 
  border-bottom: 1px solid #e0e0e0; /* 下部にうっすらと境界線を入れて引き締める */
  box-sizing: border-box;
  width: 100%;
}

/* ① ロゴ・テキストエリア */
.tk-header-logo-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.tk-header-logo-area img {
  max-height: 80px; /* ロゴのサイズを品よく調整 */
  width: auto;
  margin-bottom: 5px;
}
.tk-brand-subtext {
  font-size: 11px;
  color: #666666;
  margin: 0;
  letter-spacing: 0.05em;
}

/* ② 中央：検索窓（シャープな角丸長方形） */
.tk-header-search-area {
  flex: 1;
  max-width: 500px;
  margin: 0 30px;
}
.tk-header-search-area .fs-c-search-form {
  display: flex;
  border: 1px solid #22110E; /* 徳田商店のテーマカラーで引き締める */
  border-radius: 4px; /* 甘すぎない緩やかな角丸 */
  overflow: hidden;
  background: #ffffff;
}
.tk-header-search-area .fs-c-search-form__input {
  border: none;
  padding: 12px 15px;
  flex: 1;
  font-size: 13px;
  outline: none;
  color: #333333;
}
.tk-header-search-area .fs-c-search-form__button {
  background-color: #6A2D25; /* 深みのある茶赤（山陰の温かみ） */
  border: none;
  color: #ffffff;
  padding: 0 20px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.tk-header-search-area .fs-c-search-form__button:hover {
  background-color: #4a1f19; /* ホバー時に少し暗くしてクリック感を出す */
}

/* ③ 右：ユーザーエリア */
.tk-header-user-area {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.tk-user-status-row {
  font-size: 12px;
  color: #444444;
  margin-bottom: 10px;
}
.tk-user-status-row strong {
  color: #6A2D25; /* ログイン中の会員名を強調 */
}
.tk-user-action-nav {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.tk-user-action-nav li {
  margin-left: 25px;
}
.tk-user-action-nav li a {
  text-decoration: none;
  color: #22110E;
  font-size: 11px;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: opacity 0.2s;
}
.tk-user-action-nav li a:hover {
  opacity: 0.7;
}
.tk-user-action-nav li i {
  font-size: 28px; /* アイコンをやや大きめにして押しやすく */
  margin-bottom: 5px;
  color: #22110E;
}

/* カートバッジ */
.tk-cart-badge-wrap {
  position: relative;
}
.tk-cart-badge-count {
  position: absolute;
  top: -5px;
  right: -8px;
  background-color: #6A2D25;
  color: #ffffff;
  border-radius: 10px;
  padding: 1px 5px;
  font-size: 9px;
  font-weight: bold;
  line-height: 1;
}

/* =============================================
   2. バナー・レイアウト設定
   ============================================= */

.fv-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.top-set-banners {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 10px;
    gap: 15px;
}

.banner-item {
    width: 100%;
}

.banner-item img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}

@media screen and (min-width: 769px) {
    .top-set-banners {
        max-width: 1200px;
        margin: 0 auto;
        padding: 40px 0;
    }

    .banner-item {
        width: calc(50% - 8px);
    }
}
/* =============================================
   3. 商品説明（LPパーツ）共通スタイル（視認性強化版）
   ============================================= */

.st-lp-container,
.st-lp-section {
    max-width: 1000px;
    margin: 0 auto 80px;
    padding: 0 20px;
    line-height: 2.0;
}

/* 本文テキスト */
body .st-product-desc,
body .st-lp-container p,
body .st-lp-section p,
body .st-brand-story p {
    font-size: 1.6rem;
    color: #111111 !important; /* 【改善】商品説明文もくっきり見える黒に変更 */
    margin-bottom: 1.8em;
    font-weight: 500; /* 読みやすい中太 */
    line-height: 2.0; /* 行間をしっかり空けて可読性を担保 */
}

/* =============================================
   4. 共通パーツ・インタラクション
   ============================================= */

a img {
    transition: opacity 0.4s ease;
}

a:hover img {
    opacity: 0.7;
}

/* サイドメニュー（枠線リセットとホバー効果） */
.fs-p-sideMenu .fs-pt-menu__heading--lv1,
.fs-p-sideMenu .fs-pt-menu__heading--lv2,
.fs-p-sideMenu .fs-pt-menu__heading--lv3 {
    border: none;
    border-bottom: none;
}

.fs-p-sideMenu a:hover {
    background: #c39809;
    color: #ffffff;
    transition: background 0.2s ease, color 0.2s ease;
}


/* =============================================
   5. フッター基本設定
   ============================================= */

#fs-l-footer,
.fs-l-footer,
footer {
    background-color: #2a2a2a;
    color: #cccccc;
    font-size: 0.6875rem; /* 11px */
    line-height: 1.8;
    font-weight: 400;
    padding: 50px 20px;
}

.fs-c-footer__address,
.fs-c-footer__copyright,
#fs-l-footer p,
.fs-l-footer p,
footer p {
    color: #cccccc;
    font-size: 0.6875rem;
    line-height: 1.8;
    font-weight: 400;
    margin-bottom: 0.5em;
}

#fs-l-footer a,
.fs-l-footer a,
footer a,
.fs-c-footer__link,
.fs-c-footer__navItem a {
    color: #ffffff;
    font-weight: bold;
    text-decoration: none;
    font-size: 0.6875rem;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#fs-l-footer a:hover,
.fs-l-footer a:hover,
footer a:hover,
.fs-c-footer__link:hover,
.fs-c-footer__navItem a:hover {
    color: #c39809;
    text-decoration: none;
    opacity: 1;
}

#fs-l-footer hr,
.fs-l-footer hr,
footer hr {
    border: none;
    border-top: 1px solid #444444;
    margin: 20px 0;
}


/* =============================================
   6. 高級感コンテナ（tokuda-premium）
   ============================================= */

.tokuda-premium-container,
.tokuda-premium-container * {
    font-family: "Times New Roman", "Yu Mincho", "YuMincho",
                 "Hiragino Mincho ProN", "Hiragino Mincho Pro",
                 "MS PMincho", serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.tokuda-premium-container .price,
.tokuda-premium-container .gold-label,
.tokuda-premium-container .green-label {
    font-family: "Georgia", "Times New Roman", serif !important;
}

.tokuda-premium-container {
    color: #333333;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.tokuda-premium-container h1,
.tokuda-premium-container h2,
.tokuda-premium-container .hero-title {
    font-weight: 600;
    letter-spacing: 0.1em;
}


/* =============================================
   7. 徳田商店様オリジナル・フッターカスタマイズ
   ============================================= */

/* 全体のフォントサイズと【明朝体】の強制適用 */
#fs-l-footer .tokuda-footer-nav,
.fs-l-footer .tokuda-footer-nav,
footer .tokuda-footer-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 45px 20px !important;
  color: #ffffff !important;
  font-size: 18px !important;
  font-family: "Noto Serif JP", "BIZ UDPMincho", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}

/* 各メニューブロックの横幅調整 */
#fs-l-footer .tokuda-footer-nav__group,
.fs-l-footer .tokuda-footer-nav__group,
footer .tokuda-footer-nav__group {
  flex: 1;
  min-width: 260px;
  margin-bottom: 35px;
}

/* 見出し設定（商品を探す、など） */
#fs-l-footer .tokuda-footer-nav__title,
.fs-l-footer .tokuda-footer-nav__title,
footer .tokuda-footer-nav__title {
  font-weight: bold !important;
  font-size: 20px !important;  
  color: #ffffff !important;
  border-bottom: 1px solid #666666 !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
  letter-spacing: 0.05em;
}

.tokuda-footer-nav__list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.tokuda-footer-nav__list li {
  margin-bottom: 12px !important;
  line-height: 1.5 !important;
}

/* リンク文字の設定 */
#fs-l-footer .tokuda-footer-nav__list a,
.fs-l-footer .tokuda-footer-nav__list a,
footer .tokuda-footer-nav__list a {
  color: #dddddd !important;   
  font-weight: normal !important;
  font-size: 17px !important;   
  text-decoration: none !important;
  transition: color 0.2s ease;
}

#fs-l-footer .tokuda-footer-nav__list a:hover,
.fs-l-footer .tokuda-footer-nav__list a:hover,
footer .tokuda-footer-nav__list a:hover {
  color: #c39809 !important;
  text-decoration: underline !important;
}

/* 下部の会社情報エリア */
.tokuda-footer-info {
  margin-top: 35px !important;
  padding-top: 20px !important;
  border-top: 1px dashed #555555 !important;
}

#fs-l-footer .tokuda-footer-info__company,
.fs-l-footer .tokuda-footer-info__company,
footer .tokuda-footer-info__company {
  font-weight: bold !important;
  font-size: 18px !important;
  color: #ffffff !important;
  margin-bottom: 10px !important;
}

#fs-l-footer .tokuda-footer-info__text,
.fs-l-footer .tokuda-footer-info__text,
footer .tokuda-footer-info__text {
  font-size: 15px !important;  
  color: #aaaaaa !important;  
  line-height: 1.6 !important;
  font-weight: normal !important;
}


/* =============================================
   8. 商品一覧：商品名・価格（意図的にゴシックにする箇所）
   ============================================= */

.fs-c-productName,
.fs-c-productName__name,
.fs-p-itemListItem__name,
.fs-c-itemListItem__name {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif !important;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 1.6;
    color: #333333;
}

.fs-c-price,
.fs-c-price__value,
.fs-p-itemListItem__price,
.fs-c-itemListItem__price,
.fs-c-price--special,
.fs-c-price__value--special {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif !important;
    font-size: 1.4rem;
    font-weight: bold;
    color: #B22222;
}


/* =============================================
   9. レスポンシブ調整（スマホ：～768px）
   ============================================= */
@media (max-width: 768px) {

    body,
    body.fs-body-top,
    body.fs-body-custom,
    body.fs-body-product,
    body.fs-body-category,
    body.fs-body-category-itemlist,
    body.fs-body-cart,
    body.fs-body-search {
        font-size: 1.45rem;
    }

    body .st-product-desc,
    body .st-lp-container p,
    body .st-lp-section p,
    body .st-brand-story p {
        font-size: 1.45rem;
        line-height: 1.8;
    }

    body .st-product-title,
    body .st-lp-title {
        font-size: 1.7rem;
    }

    .st-icon-row {
        gap: 15px;
        padding: 25px 10px;
        flex-wrap: wrap;
    }

    .st-icon-item {
        flex: 0 0 calc(50% - 8px);
    }

    body .st-icon-item span {
        font-size: 1rem;
    }

    #fs-l-footer,
    .fs-l-footer,
    footer {
        padding: 20px 10px;
    }

    #fs-l-footer p,
    .fs-l-footer p,
    footer p,
    .fs-c-footer__address,
    .fs-c-footer__copyright {
        font-size: 0.625rem;
    }

    .fs-l-footer a,
    #fs-l-footer a,
    footer a,
    .fs-c-footer__link,
    .fs-c-footer__navItem a {
        font-size: 0.625rem;
    }

    /* カスタムフッター（スマホ） */
    #fs-l-footer .tokuda-footer-nav,
    .fs-l-footer .tokuda-footer-nav,
    footer .tokuda-footer-nav {
        flex-direction: column;
        padding: 40px 20px !important;
        font-size: 16px !important;
    }
    
    #fs-l-footer .tokuda-footer-nav__list a,
    .fs-l-footer .tokuda-footer-nav__list a,
    footer .tokuda-footer-nav__list a {
        font-size: 16px !important;
    }

    #fs-l-footer .tokuda-footer-nav__title,
    .fs-l-footer .tokuda-footer-nav__title,
    footer .tokuda-footer-nav__title {
        font-size: 18px !important;
    }

    .tokuda-footer-nav__group {
        width: 100% !important;
        min-width: 100% !important;
        margin-bottom: 30px !important;
    }

    .tokuda-footer-info__company,
    .tokuda-footer-info__company a {
        font-size: 16px !important;
    }
}

/* 件数表示の非表示 */
.fs-c-pageCount {
    display: none !important;
}


/* =============================================
   10. 【限定】商品詳細ページ専用：価格表示（拡大 ＆ ￥調整）
   ※ body.fs-body-product（商品詳細ページ）の時だけ動くように厳密に固定しました
   ============================================= */

/* 1. 商品詳細ページだけの金額エリアを強制拡大（他のページには影響しません） */
body.fs-body-product .fs-c-price,
body.fs-body-product .fs-c-price__value {
  font-family: "Helvetica Neue", Arial, sans-serif !important; 
  font-size: 34px !important;  /* 金額を大きく */
  font-weight: bold !important;
  color: #B22222 !important;   /* 赤色をキープ */
  line-height: 1.2 !important;
}

/* 2. 商品詳細ページだけの「￥」マークを個別に小さく・美しく調整 */
body.fs-body-product .fs-c-price__currencyMark {
  font-family: "Helvetica Neue", Arial, sans-serif !important; /* 明朝体から変更して巨大化を防止 */
  font-size: 28px !important;        /* 数字より一回り小さく */
  font-weight: bold !important;
  color: #B22222 !important;
  vertical-align: 0.12em !important; /* 数字の底辺と高さを揃える */
  display: inline-block !important;
  margin-right: 0px !important;     /* 数字との隙間調整 */
}

/* 3. 商品詳細ページだけの「(税込)」を小さく上品に */
body.fs-body-product .fs-c-price__taxLabel,
body.fs-body-product .fs-c-price__taxLabel + span {
  font-size: 14px !important;        /* 14pxに縮小 */
  font-weight: normal !important;
  color: #666666 !important;         /* 柔らかいグレー */
  vertical-align: 0.25em !important; /* 少し上に持ち上げる */
  display: inline-block !important;
  margin-left: 6px !important;
}

/* お気に入りボタン（通常時）の視認性アップ */
.fs-c-productState__favorite .fs-c-icon--heart, 
.fs-c-favorite-button .fs-c-icon--heart {
    color: #c8161d !important; /* 例：「カートへ」ボタンに近い、視認性の高い赤系 */
    font-size: 1.25rem;       /* 少しサイズを大きくして押しやすく */
    opacity: 0.7;             /* 馴染みつつも主張する透明度 */
    transition: all 0.3s ease;
}

/* ホバー（マウスを載せた）時の演出 */
.fs-c-productState__favorite:hover .fs-c-icon--heart,
.fs-c-favorite-button:hover .fs-c-icon--heart {
    color: #c8161d !important;
    opacity: 1;
    transform: scale(1.1);    /* ふわっと少し大きくなる演出 */
}

/* すでにお気に入りに登録されている状態（アクティブ時） */
.fs-c-favorite-button--is-active .fs-c-icon--heart {
    color: #c8161d !important;
    opacity: 1;
}





/* コンセプトエリアのデザイン */
.concept-section {
    padding: 60px 20px;
    text-align: center;
    background-color: #f9f7f2; /* 落ち着いたオフホワイト系 */
}

.concept-title {
    font-family: "Yu Mincho", "游明朝", serif;
    font-size: 28px;
    margin-bottom: 30px;
    color: #333;
}

.concept-text {
    line-height: 2.0;
    color: #555;
    margin-bottom: 25px;
}

.concept-link {
    display: inline-block;
    padding: 10px 30px;
    border: 1px solid #333;
    text-decoration: none;
    color: #333;
    transition: 0.3s;
}

.concept-link:hover {
    background: #333;
    color: #fff;
}

/* ゴシック体エリア（特定のパーツにこのクラスを付与） */
.force-gothic,
.force-gothic * {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif !important;
}
/* これをCSSの最後にコピペしてください */
.gothic-text,
.gothic-text * {
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif !important;
}


/* =============================================
   【修正・最適化】優先フォント適用ルール
   特定のエリアでフォントを変えたい場合、
   親要素にクラス名「custom-font-override」を付与してください
   ============================================= */

/* 指定エリア内だけ別のフォントを適用する（最強の優先順位） */
.custom-font-override,
.custom-font-override * {
    font-family: inherit !important; /* 親の設定を継承、または個別に指定 */
}

/* 商品詳細ページなど、特定の箇所で強制的に特定のフォントを指定したい場合 */
.override-sans-serif,
.override-sans-serif * {
    font-family: "Helvetica Neue", "Arial", sans-serif !important;
}

/* =============================================
   既存のCSSに対する「優先順位」の適正化
   ※既存のコードの該当部分を以下のように修正します
   ============================================= */

/* 元の全体指定：ここで!importantを外し、詳細度を下げることで
   個別のクラス指定が効きやすくします */
body:not(.custom-font-override) {
    font-family: "Noto Serif JP", "BIZ UDPMincho", serif !important;
}

/* 今後の指針：特定のパーツのラッパーに任意のクラスを付与し、CSSで制御する */
/* 例：フリーページで「ゴシック系にしたい」場合 */
.gothic-page-layout {
    font-family: sans-serif !important;
}

/* 徳田商店LP専用フォント設定 */
.tokuda-lp-container {
    /* 本文：ゴシック体（Noto Sans JP）をベースに設定 */
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    font-size: 16px;
    line-height: 1.8;
    color: #333;
}

/* 見出し：明朝体（Noto Serif JP）を適用 */
.tokuda-lp-container h1,
.tokuda-lp-container h2,
.tokuda-lp-container h3,
.tokuda-lp-container .serif {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif !important;
    line-height: 1.4;
    font-weight: 600; /* 見出しは少し太めに */
}

/* ラベル等の英数字用（オプション：必要に応じて） */
.tokuda-lp-container .hero-label,
.tokuda-lp-container .section-label {
    font-family: "Noto Sans JP", sans-serif !important;
    letter-spacing: 0.15em;
}

/* ① PCなどの画面では、スマホ用の改行を無効化（非表示）にする */
.sp-br {
  display: none;
}

/* ② 画面幅が767px以下（スマホ）になったときだけ、改行を有効化（表示）にする */
@media screen and (max-width: 767px) {
  .sp-br {
    display: inline;
  }
}

/* スマホのみ（画面幅が767px以下のとき） */
@media screen and (max-width: 767px) {
  .sp-br {
    display: block;
  }
}

/* それ以外のサイズでは改行させない */
@media screen and (min-width: 768px) {
  .sp-br {
    display: inline;
  }
}


/* ==========================================================================
   徳田商店様：全ページ背景色統一カスタマイズ
   ========================================================================== */

/* 1. サイト全体の最背面のベースをベージュに統一（白抜け防止） */
body {
    background-color: #f9f9eb !important; /* ※ここのコードを徳田商店様のベージュに変えてください */
}

/* 2. ラッパー（全体を包むコンテナ）がある場合、そこも透過またはベージュに指定 */
#fs-l-container, 
.fs-c-container {
    background-color: transparent !important;
}

/* 3. サイドメニュー（レフトナビ）自体の背景を維持する設定 */
.fs-c-sideLayout,
.fs-c-menuList {
    background-color: #f9f9eb !important; /* ※ここも同じベージュに */
}



 
.fs-p-drawer__loginLogout, .fs-p-drawer__welcomeMsg {
    display: block;
}


画像とコードを確認しました！ログインしているにもかかわらず「ゲスト様 こんにちは」が同時に表示されてしまっている原因は、未ログイン時のみ表示するためのCSSクラス（is-guest-show）の制御（非表示設定）がうまく効いていないことです。

現在の状態を解消するために、以下のCSSの追加、もしくはHTMLクラスの調整を行ってください。

解決策1：CSSを追加する（おすすめ）
もしシステムの仕様で「ログイン状態に応じてHTML自体に is-login や is-guest といったクラスが親要素（body など）に自動付与される」形になっている場合、あるいはクラスの出し分けをCSSに委ねている場合は、以下のスタイルシート（CSS）を追加してください。

CSS
/* 初期状態はどちらも非表示にする、またはデフォルトの制御 */
.is-login-show, .is-guest-show {
    display: none;
}

/* ログイン状態（member.logged_in が true のとき）の表示切り替え */
.is-loggedIn--true ~ .tk-header-member-area .is-login-show {
    display: inline-block; /* または block */
}
.is-loggedIn--true ~ .tk-header-member-area .is-guest-show {
    display: none;
}

/* 未ログイン状態（member.logged_in が false のとき）の表示切り替え */
.is-loggedIn--false ~ .tk-header-member-area .is-guest-show {
    display: inline-block;
}

