.fs-p-cartItemNumber {
    background: #000;
    border-radius: 1em;
    color: #ffffff;
    display: none;
    font-size: 1.5rem;
    line-height: 1;
    padding: 0.25em 0.4em;
    position: absolute;
    top: 2px;
    right: 2px;
}


.head1 {
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #494949;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #ff010d;/*左線*/
  font-size:2rem
}

.head2 {
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #494949;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #005ca4;/*左線*/
  font-size:2rem
}





.contents {
     width: 90%;
     max-width: 1200px;
     margin: auto;
 }
 .contents img {
     width: 100%;
 }
 .text-center {
     text-align: center;
 }
 .flexbox {
     display: flex;
 }
 .box1 {
     width: 33.3%;
     margin: auto .5rem;
 }
 .box2 {
     width: 33.3%;
     margin: auto .5rem;
 }
 .box3 {
     width: 33.3%;
     margin: auto .5rem;
 }
 .box4 {
     width: 20%;
     margin: auto .5rem;
 }
 .box5 {
     width: 80%;
     margin: auto .5rem;
 }
 .box6 {
     width: 50%;
     margin: auto .5rem;
     text-align:center;
 }
 .box7 {
     width: 50%;
     margin: auto .5rem;
 }
.box8 {
     width: 30%;
     margin: auto .5rem;
 }
 .box9 {
     width: 70%;
     margin: auto .5rem;
 }



 @media screen and (max-width: 767px) {
     .flexbox {
         display: block;
     }
     .flexbox .box1 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box2 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box3 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box4 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box5 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box6 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box7 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box8 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box9 {
         width: 100%;
         margin: 0 auto;
     }
 } 



.fs-p-announcement {
    margin: 12px 0;
}



.fs-c-slick .slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "●";
  width: 8px;
  height: 8px;
  font-family: "fs-icon";
  font-size: 12px;
  line-height: 8px;
  text-align: center;
  color: #aaa;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}



.btn2{
    width:300px;
    height:50px;
    line-height:50px;
}
.btn2 a{
    display:block;
    width:100%;
    height:100%;
    text-decoration: none;
    background:#FFFFFF;
    text-align:center;
    color:#000000;
    font-size:15px;
    box-shadow:5px 5px 0px 0px #DEDEDE ;
    border:1px solid #1B1B1B;
}
.btn2 a:hover{
    background:rgba(0,92,164);
    color:#FFFFFF;
    margin-left:5px;
    margin-top:5px;
    box-shadow:none;
}







.fs-c-subgroupList__link:hover {
 background-color:rgba(0,92,164);
color: #ffff;
}

.fs-c-subgroupList__link {
 background:rgba(255,255,255);
}


.fs-body-category-use .fs-c-subgroup {display:none;}


.contents1 {
     width: 90%;
     max-width: 1200px;
     margin: auto;
 }
 .contents1 img {
     width: 100%;
 }
 .text-center1 {
     text-align: center;
 }
 .flexbox1 {
     display: flex;
 }
 .box1-1 {
     width: 50%;
     margin: auto .5rem;
 }
 .box2-1 {
     width: 50%;
     margin: auto .5rem;
 }


 @media screen and (max-width: 767px) {
     .flexbox1 {
         display: block;
     }
     .flexbox1 .box1-1 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox1 .box2-1 {
         width: 100%;
         margin: 0 auto;
     }
}


/* 吹き出し */
.balloon1-right {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #000;
  font-size: 16px;
  background: #ffffff;
}

.balloon1-right:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #e0edff;
}

.balloon1-right p {
  margin: 0;
  padding: 0;
}


/* 商品ページ Pタグ設定 */
.item-bottom p {
  margin: 0;
}

/* 商品ページ bタグ各種テキスト */
.item-p-red {color: #cc0000;}
.item-p-red-non {color: #cc0000; font-weight:normal;}
.bgc-b_f_w {color:#ffffff;background-color:#003d73;font-size:100%;font-weight:bold;padding-left:10px;}
.insta_title {color:#005bac;font-weight:bold;padding-bottom:10px;}

/* 商品ページ 画像 */
.item-p-img85 {width: 85%;}

/* 商品ページ 画像　センター */
.item-p-img85c {margin: auto; display: block; width: 85%;}

/* 商品ページ リッチ化 文言余白 */
.item-p-rich10 {padding-top:10px;padding-bottom:10px;}

/* infoページ 画像　センター */
.item-p-img80c {margin: auto; display: block; width: 80%;}

/* infoページ 画像　センター */
.item-p-img80c {margin: auto; display: block; width: 80%;}

/* フリーページ Hタグ設定 */
h2.free01 {color: #222222;padding: 10px;border-left: solid 10px #005bac;border-bottom: solid 3px #cccccc;}
h3.free01 {color: #222222;padding: 7px;border-left: solid 8px #005bac;7px;border-bottom: solid 2px #cccccc;}
h4.free01 {color: #222222;padding: 7px;border-bottom: solid 2px #cccccc;}


/* トップページ お知らせ 20260909 修正
   旧: .fs-p-announcement a:link {color:#ffffff;}
   .fs-p-announcement はトップページ以外（商品詳細など白背景のページ）でも使われるため、
   全ページで文字が白くなっていた。標準の .fs-p-linkButton は border:1px solid currentColor
   なので枠線まで白になり、ボタンが完全に透明化していた。.fs-body-top で限定する。 */
.fs-body-top .fs-p-announcement a:link {color:#ffffff;}

/* Topics トップページ＆もっと見る */
.icon.topics:before { background-image: url(https://worldimport.itembox.cloud/item/img/icon-topics.png); }
.topics-date { display: block; float: left; width: 80px; font-weight:bold; }
@media screen and (max-width: 768px) { .topics-date { display: block; float: left; width: auto; margin: 0 10px 0 0; font-size: 1rem; } }

/* mmbnトップページ＆もっと見る */
.icon.mmbn:before { background-image: url(https://worldimport.itembox.cloud/item/img/icon-mmbn.png); }
.mmbn-date { display: block; float: left; width: 180px; font-weight:bold; }
@media screen and (max-width: 768px) { .topics-date { display: block; float: left; width: auto; margin: 0 10px 0 0; font-size: 1rem; } }

/* トップページ店舗アイコン */
.icon.shop:before { background-image: url(https://worldimport.itembox.cloud/item/img/icon-shop2.png); }


/* ============================================================
   商品詳細：カート周りのレイアウト調整 20260910
   対象: .fs-l-productLayout .item-right（商品詳細の右カラム）
   ------------------------------------------------------------
   [仕上がり]
     [ ○○ ポイント進呈 ]            [お気に入りに登録する ♡]
     （14pxの余白）
     [数量 ▼] [        カートに入れる        ]
   [問題]
   ・数量は .fs-c-productQuantityAndWishlist（標準テーマの grid 1fr 1fr）の左端、
     カートボタンは別ブロック .fs-c-productActionButton（標準 .fs-c-buttonContainer の
     justify-content:center）で1行下・中央寄せ。行も左端も揃っていなかった。
   ・標準の .fs-c-quantity{max-width:5em} でセレクトが36pxまで縮み、
     appearance:none で矢印も消えていたため「10+」を選ぶと文字が見切れていた。
   [方針]
   ・item-right を3列grid（auto 1fr auto）にし、通常の要素は 1/-1 で1行を占有。
     数量ラッパーを display:contents で透過させ、order で行を組み立てる。
   ・flex+wrap ではなく grid を使う理由：flex だと「その行に収まるかどうか」で
     改行位置が変わり、会員ログイン状態（会員登録リンクが消える）などの条件で
     ポイント表示が数量・カートと同じ行に入り込んでしまうため。
   [注意]
   ・grid-row:auto は必須。標準テーマが __quantity / __wishlist に grid-row:1 を
     指定しており、解除しないと最上部の行に飛ぶ。
   ・カートボタンの min-width:0 も必須。標準の min-width:240px のままだと
     320px幅で数量に重なってはみ出す。
   [検証] 1335px / 375px / 320px、ゲスト・ログイン中の両状態、複数商品ページ、
          「10+」選択時の直接入力欄まで確認済み。
   ============================================================ */

.fs-l-productLayout .item-right {
  display: grid;
  grid-template-columns: auto 1fr auto;
  column-gap: 10px;
  align-items: center;
}

/* 通常の要素は3列ぶち抜き＝必ず1行を占有 */
.fs-l-productLayout .item-right > * { grid-column: 1 / -1; }

/* 元々コンテンツ幅だった要素は幅を維持 */
.fs-l-productLayout .item-right > .fs-c-productNumber { justify-self: start; }

/* 数量ラッパーを透過させ、中の「数量」「お気に入り」を item-right の格子に乗せる */
.fs-c-productQuantityAndWishlist { display: contents !important; }

/* --- ポイント行：左にポイント進呈、右にお気に入り --- */
.fs-l-productLayout .item-right > .fs-c-productPointDisplay {
  grid-column: 1 / 3;
  grid-row: auto;
  order: 10;
  justify-self: start;
}

.fs-c-productQuantityAndWishlist__wishlist {
  grid-column: 3;
  grid-row: auto;          /* 標準テーマの grid-row:1 を解除 */
  order: 11;
  justify-self: end;
  margin: 0;
}

/* 会員登録リンク（ログアウト時のみ表示）はポイント行の下へ */
.fs-l-productLayout .item-right > .fs-c-productMembersLoginLink { order: 15; }

/* --- カート行：数量 ＋ カートに入れる（上に14pxの余白） --- */
.fs-c-productQuantityAndWishlist__quantity {
  grid-column: 1;
  grid-row: auto;          /* 標準テーマの grid-row:1 を解除（無いと最上部へ飛ぶ） */
  order: 20;
  justify-self: start;
  align-self: center;
  margin: 14px 0 0 0;
}

.fs-c-quantity__select {
  width: auto !important;
  min-width: 66px;
  height: 44px;
  padding: 0 26px 0 12px;
  font-size: 16px;          /* iOS でのフォーカス時ズームを防ぐ */
  color: #333;
  border: 1px solid #ccc;
  border-radius: 3px;
  background-color: #fff;
  -webkit-appearance: none;
  appearance: none;
  /* プルダウンだと分かる矢印を描画（appearance:none で消えているため） */
  background-image:
    linear-gradient(45deg, transparent 50%, #555 50%),
    linear-gradient(135deg, #555 50%, transparent 50%);
  background-position: calc(100% - 15px) 50%, calc(100% - 10px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

/* 「10+」選択時に現れる直接入力欄 */
.fs-c-quantity__number {
  width: 66px !important;
  height: 44px;
  text-align: center;
  font-size: 16px;
}

.fs-l-productLayout .item-right > .fs-c-productActionButton {
  grid-column: 2 / -1;
  grid-row: auto;
  order: 21;
  padding: 0;
  margin: 14px 0 0 0;
}

.fs-c-button--addToCart--detail {
  width: 100%;
  min-width: 0;            /* 標準の min-width:240px を解除（狭い画面での はみ出し防止） */
  height: 44px;
}

/* カート行より後ろに来る要素の並び順を維持 */
.fs-l-productLayout .item-right > .fs-p-announcement { order: 30; }
.fs-l-productLayout .item-right > .fsstk            { order: 31; }