@charset "euc-jp";

/* reset */
body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6, pre, code,
form, fieldset, legend, input, textarea,
p, blockquote, th, td {
  margin: 0;
  padding: 0;
}
.none_border_table,
.product_option_table table {
  border-spacing: 0;
  border-collapse: collapse;
}
fieldset,
img {
  border: 0;
}
address, caption, cite, code,
dfn, em, strong, th, var {
  font-weight: normal;
  font-style: normal;
}
 
ol, ul {
  list-style: none;
}
 
caption, th {
  text-align: left;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}
q:before,
q:after {
  content: '';
}
abbr, acronym {
  border: 0;
  font-variant: normal;
}
sup {
  vertical-align: text-top;
}
sub {
  vertical-align: text-bottom;
}
input,
textarea,
select {
  font-weight: inherit;
  font-size: inherit;
  font-family: inherit;
}
input,
textarea,
select {
  *font-size: 100%;
}
legend {
  color: #000;
}

/* font size */
body {
  font: 13px/1.231 arial,helvetica,clean,sans-serif;
  *font-size: small; /* for IE */
  *font: x-small; /* for IE in quirks mode */
}
select, input, button, textarea {
  font: 99% arial,helvetica,clean,sans-serif;
}
table {
  font: 100%;
  font-size: inherit;
}
pre, code, kbd, samp, tt {
  font-family: monospace;
  line-height: 100%;
  *font-size: 108%;
}

/* common */
body {
  color: #444;
  font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", sans-serif;
  background-image: url(https://img.shop-pro.jp/tmpl_img/62/bg_wood.png);
}
a {
  color: #3579bf;
}
input[type="text"],
textarea,
select {
  border: 1px solid #888;
}
/* clearfix */
.clearfix {
  *zoom: 1;
}
  .clearfix:before, .clearfix:after {
    display: table;
    content: "";
  }
  .clearfix:after {
    clear: both;
  }

/* icons */
.icon:before,
.ie_icon {
  display: block;
  float: left;
  margin-right: 4px;
  width: 16px;
  height: 16px;
  background-image: url(https://img.shop-pro.jp/tmpl_img/62/icons16.png);
  background-repeat: no-repeat;
  content: "";
}
  .icon_myaccount:before,
  .ie_icon_myaccount {
    background-position: left -96px;
  }
  .icon_regist:before,
  .ie_icon_regist {
    background-position: left -192px;
  }
  .icon_login:before,
  .ie_icon_login {
    background-position: left -224px;
  }
  .icon_logout:before,
  .ie_icon_logout {
    background-position: left -208px;
  }
  .icon_search:before,
  .ie_icon_search {
    background-position: left -16px;
  }
  .icon_viewcart:before,
  .ie_icon_viewcart {
    background-position: left -0px;
  }
  .icon_sort:before,
  .ie_icon_sort {
    background-position: left -112px;
  }
  .icon_prev:before,
  .ie_icon_prev {
    margin-right: 0;
    background-position: left -32px;
  }
  .icon_next:before,
  .ie_icon_next {
    float: right;
    margin-right: 0;
    background-position: right -48px;
  }
  .icon_prev_dis:before,
  .ie_icon_prev_dis {
    margin-right: 0;
    background-position: left -64px;
  }
  .icon_next_dis:before,
  .ie_icon_next_dis {
    float: right;
    margin-right: 0;
    background-position: right -80px;
  }
  .icon_lst:before,
  .ie_icon_lst {
    margin-right: 0;
    background-position: left -176px;
  }
    .footer_lst .icon_lst:before,
    .footer_lst .ie_icon_lst {
      margin-left: -16px;
    }
  .icon_down:before,
  .ie_icon_down {
    display: none;
  }
  .icon_category_lst:before,
  .ie_icon_category_lst {
    display: none;
  }
  .icon_review:before,
  .ie_icon_review {
    background-position: left -240px;
  }
  .icon_review_post:before,
  .ie_icon_review_post {
    background-position: left -256px;
  }

/* layout */
.layout_wrapper {
  margin: 0 auto;
  background-color: #fff;
}

.layout_container,
.layout_footer {
  margin: 0 auto;
padding:0 3rem;
}

.layout_header {
 background:#000;
}
.layout_footer {
  margin-top: 3em;
}
.header_btn {
  font-size: 92.307%;
  line-height: 1.5;
}
  .header_btn a {
    color: #fff;
  }
.viewcart_btn {
  float: right;
  margin-bottom: .5em;
  margin-left: 1.063%;
}
.header_member_nav {
  float: right;
  width: 29.787%;
}
  .header_member_nav li {
    float: right;
    white-space: nowrap;
    margin-left: 3.571%;
  }
  .member_login_name {
    float: right;
    clear: right;
    margin-bottom: .5em;
    text-align: right;
    line-height: 1.5;
  }

/* delivery price */
.header_delivery_price {
  padding: .5em 1em .3em;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  background-color: #df7676;
  color: #fff;
  line-height: 1.5;
  float: right;
  clear: right;
}


  .prd_search_block.open {
    padding: 5px 0;
    border: 1px solid #888;
  }
  .prd_search_form_btn {
    cursor: pointer;
    display: inline-block;
    margin-left: 5px;
    padding: .3em .5em;
    border: 1px solid #a0a0a0;
    -webkit-border-radius: 4px;
    border-radius: 4px;
  }
  .prd_search_form {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    display: none;
    overflow: hidden;
    margin-top: 5px;
    padding: 5px;
    width: 97%;
  }
  .prd_search_keyword {
    float: left;
    padding: .5em 0;
    width: 80%;
    border: 1px solid #888;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    text-indent: 5px;
  }
  .prd_search_btn {
    float: right;
    padding: .35em 0;
    width: 18%;
    border: 1px solid #444;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    background-color: #444;
    color: #fff;
    cursor: pointer;
  }
  .prd_search_optioncategory {
    margin-top: 10px;
    line-height: 1.5;
  }
  .prd_search_select {
    display: inline-block;
    width: 100%;
    font-size: 120%;
  }
  .prd_search_select option {
    word-break: break-all;
  }

/* shopname logo */
.shop_name {
  clear: both;
  padding: 1em 10% 2em;
  text-align: center;
  line-height: 1.5;
  margin-top: 2em;
  border-bottom: 1px solid #888;
}

  .shop_name a {
    color: #444;
    text-decoration: none;
  }
    .shop_name a:hover {
      text-decoration: underline;
    }
  .shop_name p {
    margin-bottom: 10px;
    text-align: center;
    font-size: 246.153%;
  }
  .shop_name img {
    max-width: 100%;
    height: inherit;
  }

/* header global nav */
.header_global_nav {
  margin-top: 3px;
  margin-bottom: 2em;
  border-top: 1px solid #888;
  border-bottom: 1px solid #888;
}
.header_nav_lst {
  text-align: center;
}
.header_nav_menu {
  position: relative;
  display: inline;
  margin: 0 1em;
  padding: 0 1em;
  text-align: center;
  font-weight: bold;
  line-height: 4;
}
.header_nav_menu a,
.header_nav_menu span {
  display: inline;
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.header_nav_menu_category img {
  position: relative;
  width: 16px;
  height: 16px;
}
.header_category_lst {
  position: absolute;
  left: 0;
  z-index: 101;
  display: none;
  min-width: 100%;
  width: auto;
  border-top: 1px solid #aaa;
  background-color: #fff;
}
.header_category_lst li {
  display: block;
  float: none;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  border-left: 1px solid #888;
  text-align: left;
  white-space: nowrap;
  word-break: break-all;
  line-height: 1.4;
}
.header_category_lst a {
  display: block !important;
  padding: 1em;
  background-color: #fff;
}

/* title */
.ttl_h2 {
  margin-top: 3em;
  margin-bottom: .7em;
  color: #444;
  font-weight: bold;
  font-size: 124%;
}
.ttl_h3 {
  margin-top: 2em;
  margin-bottom: .5em;
  color: #444;
  font-weight: bold;
  font-size: 92.307%;
}

/* topicpath */
.topicpath_nav {
  margin: 2em 0;
  font-size: 84.615%;
}
  .topicpath_nav li {
    display: inline;
    margin-right: .2em;
  }
  .topicpath_nav li a {
    margin-left: .2em;
    color: #444;
    text-decoration: none;
  }
  .topicpath_nav li a:hover {
    text-decoration: underline;
  }

/* prduct list */
.prd_lst {
  position: relative;
  clear: both;
  margin-left: -2.218%;
}
.prd_lst_unit {
  float: left;
  margin-bottom: 15px;
  margin-left: 2.083%;
  word-break: break-all;
}
  .prd_lst_unit_s {
    width: 22.916%;
  }
  .prd_lst_unit_m {
    width: 31.25%;
  }
  .prd_lst_unit a {
    color: #000;
    text-decoration: none;
  }
  .prd_lst_unit a:hover {
    text-decoration: underline;
  }
  .prd_lst_img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: inherit;
  }
  .prd_lst_span {
    display: block;
    margin: .3em 0;
  }
  .prd_lst_name {
    margin-top: .5em;
  }
  .prd_lst_exp {
    color: #666;
    font-size: 84.615%;
  }
  .prd_lst_price,
  .prd_lst_soldout {
    font-weight: bold;
    font-size: 92.307%;
  }
  .prd_lst_regular {
    color: #666;
    text-decoration: line-through;
  }
  .prd_lst_none {
    clear: both;
    text-align: center;
    font-size: 123.076%;
    line-height: 16;
  }
.prd_lst_block .ttl_h2 {
  float: left;
  margin: 20px 0 0;
}
.prd_lst_sort {
  float: right;
  margin: 20px 0;
}
  .prd_lst_sort a {
    color: #444;
  }
  .prd_lst_pager {
    position: relative;
    overflow: hidden;
    margin-top: 2em;
  }
  .prd_lst_pager ul {
    position: relative;
    left: 50%;
    float: left;
  }
  .prd_lst_pager li {
    position: relative;
    left: -50%;
    float: left;
  }
  .prd_lst_pager .prd_lst_pager_prev,
  .prd_lst_pager .prd_lst_pager_next {
    padding: .5em 0;
    width: 8em;
  }
  .prd_lst_pager .prd_lst_pager_next {
    text-align: right;
  }
  .icon_prev_dis,
  .icon_next_dis {
    display: block;
    color: #aaa;
  }
  .prd_lst_pager a {
    color: #444;
    text-decoration: none;
  }
  .prd_lst_pager a:hover {
    text-decoration: underline;
  }
.prd_lst_pos b {
  font-size: 160%;
}

/* footer */
.footer_section {
  float: left;
  margin-top: 1em;
  margin-right: 1.5%;
  margin-bottom: 15px;
  width: 23%;
}
  .footer_section .ttl_h2 {
    margin-top: 0;
  }
.footer_nav {
  position: relative;
  clear: both;
  padding: 2em 0;
  border-top: 1px solid #d8d8d8;
}
.footer_lst {
  font-size: 92.307%;
  line-height: 1.5;
}
  .footer_lst li {
    word-break: break-all;
    margin-bottom: .5em;
    padding-left: 16px;
  }
  .footer_lst .footer_category_img {
    display: block;
    margin-bottom: .3em;
    max-width: 100%;
    height: auto;
  }
  .footer_lst a {
    color: #444;
    text-decoration: none;
  }
    .footer_lst a:hover {
      text-decoration: underline;
    }

/* manager */
.manager_img img {
  max-width: 100%;
}
.manager_memo .ttl_h3 {
  margin-top: .7em;
}

/* social icons */
.social_lst ul {
  padding-left: 16px;
  text-align: left;
}
.social_lst li {
  display: inline;
  margin: 1.5%;
}
.social_lst img {
  width: 24px;
  height: 24px;
  vertical-align: bottom;
}

  .copyright {
    clear: both;
    padding: 1em 0;
    text-align: right;
    font-size: 76.923%;
  }
    .powered {
      display: inline;
      margin-left: 1em;
      text-align: right;
      line-height: 18px;
    }
    .powered a {
      color: #777;
      text-decoration: none;
    }
    .powered img {
      margin-left: .3em;
      width: 200px;
      height: 18px;
    }

/* list */
.def_lst {
  border-top: 1px solid #eee;
}
  .def_lst_dt {
    padding-top: 1em;
    padding-bottom: 1em;
    font-weight: bold;
    float: left;
    clear: both;
    width: 30%;
    word-break: break-all;
  }
  .def_lst_dd {
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 35%;
    border-bottom: 1px solid #eee;
  }
    .def_lst_dd img {
      max-width: 100%;
      width: inherit;
      height: auto;
    }

/* product option */
.product_option_table {
  margin: 3em 0;
}
  .product_option_table table {
    width: 100%;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
  }
  .product_option_table th,
  .product_option_table td {
    padding: .8em .5em;
    border-top: 1px solid #dadada;
    border-right: 1px solid #dadada;
  }
  .product_option_table th {
    text-align: center;
  }
  .product_option_table td {
    vertical-align: top;
    text-align: center;
  }

/* policy */
#policy p {
  margin: 1em 0;
  color: #666;
  line-height: 1.8;
}
.policy_lead {
  padding-bottom: 1em;
  border-bottom: 1px solid #eee;
}

/* for ie7 - 8 */
.ie_wrapper .header_global_nav {
  position: relative;
  z-index: 101;
}
.ie_wrapper .header_nav_menu {
  z-index: 60;
}
.ie_wrapper .header_nav_menu_category {
  z-index: 100;
}
.ie_wrapper .header_category_lst {
  top: 3em;
}
/* for ie7 */
.ie.icon_prev,
.ie.icon_prev_dis {
  margin-right: 2em;
}
.ie_wrapper .header_category_lst {
  top: 2.7em;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 1.5) {
  .icon:before {
    background-image: url(https://img.shop-pro.jp/tmpl_img/62/icons16_2x.png) !important;
    -webkit-background-size: 16px 320px;
    background-size: 16px 320px;
  }
}


/* --- unified search combobox --- */
.prd-search--combo {  font-size: 92.307%; position: relative; float: left; margin-top: -6px; }
.prd_search_block.open { padding: 5px 0; border: 1px solid #888; }

.search-combobox__form { display: none; margin-top: 5px; padding: 5px;  width: 97%; box-sizing: content-box; }
.search-combobox__wrap {
  display: flex; align-items: center;
  border: 1px solid #a0a0a0; border-radius: 28px; background: #fff; overflow: hidden;
}

.search-combobox__category {
  position: relative; display: inline-flex; align-items: center;
  padding: 10px 36px 10px 14px; /* 右に▼分の余白 */
  border-right: 1px solid #e5e5e5; cursor: pointer; white-space: nowrap;
}
.search-combobox__selected { font-size: 13px; color: #444; }
.search-combobox__caret { position: absolute; right: 12px; width: 16px; height: 16px; fill: #888; }

.search-combobox__select {
  position: absolute; inset: 0; opacity: 0; cursor: pointer; /* ネイティブ操作用 */
}
.search-combobox__select:focus + .search-combobox__caret,
.search-combobox__select:focus ~ .search-combobox__selected {
  outline: none;
}

.search-combobox__input {
  flex: 1 1 auto; border: 0; padding: 12px 12px; min-width: 140px; font-size: 13px;
}
.search-combobox__input::placeholder { color: #999; }

.search-combobox__submit {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border: 0; background: transparent; cursor: pointer;
}
.search-combobox__icon { width: 20px; height: 20px; fill: #444; }

@media screen and (max-width: 768px) {
  .prd-search--combo { width: 100%; float: none; margin: 10px 0 0; }
  .search-combobox__wrap { border-radius: 20px; }
  .search-combobox__category { padding: 10px 34px 10px 12px; }
  .search-combobox__input { min-width: 0; }
}

/* たたまない。最初から表示 */
.search-combobox__form { 
  display: block; 
}

/* 枠の線が二重にならないよう、.openスタイルは使わない */
.prd_search_block.prd-search--combo { 
  border: 0; 
  padding: 0; 
}

/* ========== Header 2段レイアウト ==========
   既存のfloatや余白を打ち消し、flexで並べ替え
=========================================== */

/* 旧スタイルのリセット（干渉回避） */
.shop_name { display:none !important; } /* ロゴは上段に集約 */
.viewcart_btn,
.header_member_nav { float:none; width:auto; margin:0; }
.member_login_name { float:none; clear:both; margin:.3em 0 0; text-align:right; }
.header_delivery_price { float:none; clear:both; margin-top:.3em; }

/* 上段：3カラム（左：ロゴ／中央：検索／右：会員系） */
.header_top{
  display:flex;
  align-items:center;
  gap:16px;
  padding:1rem 3rem 0.5rem;
}

/* 左：ロゴ */
.logo { margin:0; line-height:1; }
.logo__link { display:inline-flex; align-items:center; }
.logo img{ max-height:40px; height:auto; width:auto; }   /* 画像ロゴが切れない安全値 */
@media (min-width:1200px){
  .logo img{ max-height:48px; }
}

/* 中央：検索（幅を優先） */
.header_top__left{ flex:0 0 auto; }
.header_top__center{ flex:1 1 520px; display:flex; justify-content:center; }
.header_top__right{ flex:0 0 auto; }

/* 会員・ログイン・アイテムを横並び右寄せ */
.header_member_nav{
  display:flex; align-items:center; gap:14px;
}
.header_member_nav li{ margin:0; white-space:nowrap; }
.viewcart_btn{ margin:0 0 0 10px; }

/* 下段：メニューは既存の中央揃えを継承 */
.header_bottom{
  margin-top:6px;
  border-top:1px solid #888;
  border-bottom:1px solid #888;
}

/* 検索UI（常時表示のまま中央にフィット） */
.prd-search--combo{ float:none; margin:0; font-size:92.307%; width:100%; }
.search-combobox__form{ display:block; margin:0; padding:0; width:100%; }
.search-combobox__wrap{ max-width:720px; margin:0 auto; }

/* モバイル：縦積み */
@media (max-width:768px){
  .header_top{ flex-direction:column; align-items:stretch; gap:10px; }
  .header_top__center{ order:3;
  flex:none;}
  .header_top__right{ order:2; display:flex; justify-content:flex-end; }
  .header_top__left{ order:1; display:flex; justify-content:center; }
  .search-combobox__wrap{ max-width:none; border-radius:20px; }
  .header_member_nav{ justify-content:flex-end; flex-wrap:wrap; gap:10px 14px; }
  .logo img{ max-height:36px; }
}

/* 既存ナビの見た目はそのまま（中央揃え） */
.header_nav_lst{ text-align:center; }
.header_nav_menu{ display:inline; margin:0 1em; padding:0 1em; font-weight:bold; line-height:3.2; }

/* 最近チェックをワイド化してカードを並べやすく */
.footer_section--wide {
  width: 100%;
  margin-right: 0;
}

/* フッター内のカードリストの余白微調整（任意） */
.footer_section--wide .prd_lst {
  margin-top: 8px;
}

/* ====== フォント適用（本文：Zen Kaku Gothic New、見出し：Shippori Mincho） ====== */

/* 全体のベース（本文用） */
html, body {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",
               "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  line-height: 1.8;
  letter-spacing: 0.02em;
  font-feature-settings: "palt"; /* プロポーショナルかな */
}

/* 見出し（h2/h3やテンプレの .ttl_h2/.ttl_h3 に反映） */
h1, h2, h3, .ttl_h2, .ttl_h3 {
  font-family: "Shippori Mincho", "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.5;
}

/* p は本文フォントで統一（明示。必要なければ省略可） */
p {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",
               "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
}

/* ボタンやナビの可読性確保（太さを少し上げる） */
.header_nav_menu a,
.header_btn a,
.prd_search_btn,
.search-combobox__input,
.search-combobox__selected {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",
               "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 500;
}

/* 商品名は見出し寄りで少しリッチに（お好みで） */
.prd_lst_name {
  font-family: "Shippori Mincho", "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
  font-weight: 600;
}

/* 説明文や価格は本文フォントを維持 */
.prd_lst_exp,
.prd_lst_price,
.prd_lst_regular,
.prd_lst_soldout {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",
               "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
}


/* ===========================
   Button (header)
   =========================== */
:root{
  --btn-accent: #d8b48c;      /* 強調色（お好みで：やわらかいベージュ） */
  --btn-accent-ink: #3a2a1b;  /* 強調色上の文字色 */
  --btn-ghost-ink: #ffffff;   /* ゴーストボタンの文字色（ヘッダー上） */
  --btn-ring: rgba(255,255,255,.6);
}

.header_member_nav .btn{
  display:inline-flex; align-items:center; gap:.5em;
  min-height:44px; padding:3px 16px;
  border-radius:9999px;
  font-size: 92.307%;
  line-height:1;
  text-decoration:none;
  position:relative;
  transition: transform .06s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
  user-select:none;
  will-change: transform, box-shadow;
}

/* ベース影（浮き上がり感） */
.header_member_nav .btn{
  box-shadow: 0 1px 0 rgba(0,0,0,.35), 0 8px 24px rgba(0,0,0,.18);
}

/* 強調ボタン */
.header_member_nav .btn.btn--primary{
  background: linear-gradient(180deg, color-mix(in oklab, var(--btn-accent), white 12%) 0%, var(--btn-accent) 100%);
  color: var(--btn-accent-ink);
  border: 1px solid color-mix(in oklab, var(--btn-accent), black 20%);
}

/* 透過（ゴースト）ボタン：黒背景になじむ */
.header_member_nav .btn.btn--ghost{
  background: rgba(255,255,255,.9);
color: var(--btn-accent-ink);
  border: 1px solid rgba(255,255,255,.22);
  backdrop-filter: saturate(120%) blur(2px);
}

/* ホバー：少し浮く */
.header_member_nav .btn:hover{
  transform: translateY(-1px);
}

/* アクティブ：押し込み感 */
.header_member_nav .btn:active{
  transform: translateY(0);
  box-shadow: 0 1px 0 rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.2);
  opacity:.98;
}

/* キーボード操作時のフォーカスリング（視認性UP） */
.header_member_nav .btn:focus-visible{
  outline: 3px solid var(--btn-ring);
  outline-offset: 2px;
}

/* 既存アイコンと間隔調整（sprite使用を継続） */
.header_member_nav .btn.icon:before{
  margin-right: .5em; /* 既存の4pxより少し広げる */
}

/* カートの個数バッジ（data-count属性から描画） */
.header_member_nav .btn[data-count]:after{
  content: attr(data-count);
  position:absolute; top:-6px; right:-6px;
  min-width: 22px; height:22px;
  padding:0 6px;
  border-radius:9999px;
  background:#ff5b5b;
  color:#fff; font-weight:700; font-size:12px;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 1px 0 rgba(0,0,0,.3), 0 6px 14px rgba(0,0,0,.18);
}

/* 0個のときは非表示にする（お好みで） */
.header_member_nav .btn[data-count="0"]::after{
  display:none;
}

/* モバイル：ボタンの並びと折返し最適化 */
@media (max-width:768px){
  .header_member_nav{ gap:10px; flex-wrap:wrap; }
  .header_member_nav .btn{ width:auto; }
}

/* 既存の「アイテム」文言はそのまま。モバイルでは省略表示も可 */
@media (max-width:480px){
  .viewcart_btn .header_btn_txt{
    position:relative;
    text-indent:-9999px; /* 視覚的に隠す（バッジがある前提） */
    display:inline-block; width:0; /* ボタン幅はアイコンとパディングで確保 */
  }
}

/* ============================
   下段ナビをタブ風ボタンに
   ============================ */

/* 行の背景と上下の細い線 */
.header_bottom {
  background: #d9d9d9;              /* 行全体を薄グレーに */
  border-top: 1px solid #bfbfbf;    /* 既存の線をやや明るめに */
  border-bottom: 1px solid #bfbfbf;
  padding: 6px 0 8px;
  margin-top: 6px;                  /* 旧値のままでOK。お好みで微調整 */
}

/* 中央揃え・均等間隔 */
.header_bottom .header_nav_lst {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;                         /* ボタン間のすき間 */
  text-align: center;               /* 旧スタイルの影響を打ち消し */
}

/* li の旧指定を無効化 */
.header_bottom .header_nav_menu {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1;                   /* 旧 line-height:4 を上書き */
}

/* ボタン本体（角丸なし・四角） */
.header_bottom .header_nav_menu a {
  display: inline-block;
  min-width: 120px;                 /* 画像の雰囲気に近い幅感 */
  padding: 10px 20px;
  background: #cfcfcf;
  color: #222 !important;           /* 旧”白文字”指定を打ち消し */
  text-decoration: none;
  border: 1px solid #a9a9a9;
  border-bottom: 2px solid #9a9a9a; /* 影代わりの下線で“押しボタン感” */
  border-radius: 0;                 /* 角丸なし＝四角 */
  font-weight: 600;
  box-shadow: 0 1px 0 rgba(0,0,0,.06);
  transition: background .15s ease, transform .06s ease, box-shadow .15s ease;
}

/* ホバー時：少し濃く・わずかに浮かせる */
.header_bottom .header_nav_menu a:hover {
  background: #c4c4c4;
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

/* 押下時：フラットに戻す */
.header_bottom .header_nav_menu a:active {
  transform: translateY(0);
  box-shadow: 0 1px 0 rgba(0,0,0,.06);
}

/* キーボード操作のフォーカスリング */
.header_bottom .header_nav_menu a:focus-visible {
  outline: 3px solid rgba(0,0,0,.18);
  outline-offset: 2px;
}

/* “現在ページ”の強調（任意）：
   li に .is-current を付けるだけで濃く表示できます */
.header_bottom .header_nav_menu.is-current a {
  background: #bcbcbc;
  border-color: #9a9a9a;
}

/* モバイル：折り返し・幅縮小 */
@media (max-width: 768px) {
  .header_bottom .header_nav_lst { flex-wrap: wrap; gap: 6px; }
  .header_bottom .header_nav_menu a { min-width: 102px; padding: 9px 14px; font-weight: 500; }
}



