@charset "UTF-8";
@import url("smoothness/jquery-ui-1.8.4.custom.css");
@import url("var2.css");
/* =======================================================================
CSSの名前：style.css
--------------------------------------------------------------------------
1.reset
2.base
3.コンテナ・サイドバー・メインコンテンツ
4.ヘッダ
5.サイドバー
6.extファイル用
7.トップページ
8.カートの中身～注文完了まで、プレゼント応募～完了まで
9.定期購入商品履歴照会・変更
10.フッタ
11.商品詳細・一覧、プレゼント詳細・一覧
12.レビュー
13.購入履歴
14.サブウインドウで表示するページ用
15.エラーページ
16.クレジットカード登録画面
17.お気に入り
18.アドレス帳
19.マイページ
20.ログイン
21.商品比較
22.キャンペーン
23.会員登録
24.子会員リスト
25.担当法人一覧ページ
26.担当事業所一覧ページ
27.ポイント履歴ページ
28.ポイント有効期限ページ
29.STAFF START
======================================================================= */

/* =================================================================
1.reset
=================================================================*/

* {
  box-sizing: border-box;
}

body {
  /* background: #FFF; */
  color: #000;
  line-height: 1.5;
  font-family: "Noto Sans JP", "Noto Sans", "Yu Gothic", YuGothic,
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ,
    "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
  word-wrap: break-word;
  position: relative;
}
input {
  font-family: "Noto Sans JP", "Noto Sans", "Yu Gothic", YuGothic,
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ,
    "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
}
input {
  color: inherit;
}
body.is-grayback .bl_grayBack,
body.is-searchActive .bl_grayBack {
  opacity: 1;
  pointer-events: auto;
  z-index: 102;
}
/* body.is-footerMenu {
  overflow: hidden;
} */
/* body.is-footerMenu .bl_grayBack {
  opacity: 1;
  pointer-events: auto;
  z-index: 102;
} */
.img_box {
  display: none;
}

.h-hide-pc {
  display: none;
}
.h-mt10 {
  margin-top: 10px !important;
}
.h-mt20 {
  margin-top: 20px !important;
}
.h-mt0 {
  margin-top: 0 !important;
}
.h-mb0 {
  margin-bottom: 0 !important;
}
.h-mb15 {
  margin-bottom: 15px !important;
}
.h-mb40 {
  margin-bottom: 40px !important;
}
.h-mb20 {
  margin-bottom: 20px !important;
}
.h-mb84 {
  margin-bottom: 84px !important;
}
.h-ml0 {
  margin-left: 0 !important;
}
.h-underline {
  text-decoration: underline !important;
}
.h-bold {
  font-weight: bold !important;
}
.h-center {
  text-align: center !important;
}
.h-color-red {
  color: #c10230 !important;
}

.h-w100p {
  width: 100% !important;
}
.h-flex1 {
  flex: 1 !important;
}
.h-text-right {
  text-align: right !important;
}
.bl_empty:not(:has(div)) {
  display: none;
}
.bl_popUpTable a {
  text-decoration: underline !important;
}
@media screen and (max-width: 767px) {
  html body {
    padding-top: 125px;
  }

  html body:has(#header .bl_alert) {
    padding-top: 165px;
  }

  html body:has(.bl_popUpTable) {
    padding-top: 0px;
  }

  .h-hide-pc {
    display: block;
  }
  .h-hide-sp {
    display: none;
  }
}
.bl_link {
  text-decoration: underline;
}
/*  すべてのタグのマージン・パディングの設定をリセット
-------------------------------------------------------------*/
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
hr {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

li {
  list-style-type: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  border: 0;
  height: auto;
}

svg {
  fill: transparent;
}
.u-bold {
  font-weight: bold;
}
/* =================================================================
2.base
=================================================================*/
/*  clear
-------------------------------------------------------------*/
.clear {
  clear: both;
}

.clearfloat {
  clear: both;
  height: 0;
  font-size: 1px;
  line-height: 0;
}

.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

*:first-child + html .clearfix {
  zoom: 1;
}

.bl_borderLink,
.bl_borderLink:link {
  text-decoration: underline;
}
/* IE7 */
/*  全体テキスト
-------------------------------------------------------------*/
.bl_txt01 {
  margin-bottom: 38px;
}

/*  基本のlink color
-------------------------------------------------------------*/
a {
  transition: all 0.3s;
}
a:link {
  color: inherit;
  text-decoration: none;
}

a:visited {
  color: inherit;
}

a:hover,
a:active {
  color: inherit;
  text-decoration: none;
}
a:hover {
  opacity: 0.6;
}

.bl_footerTop {
  width: 48px;
  display: block;
  aspect-ratio: 1;
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 50%;
  display: block;
  position: absolute;
  top: -72px;
  right: 20px;
}
@media screen and (max-width: 767px) {
  .bl_footerTop {
    top: -45px;
    right: 8px;
    width: 36px;
  }
}
.bl_footerTop::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;

  transform: translate(-50%, -50%) rotate(-45deg);
}
/*  ボタンデザイン
-------------------------------------------------------------*/
/*基本デザイン-下記クラスに加えpositive　negative等のクラスを合わせて付与する*/
a.button {
  border: none;
  display: block;
  line-height: 1;
  text-align: center;
  padding: 10px;
  text-decoration: none;
  font-size: 13px;
  -webkit-border-radius: 3px;
  /* for Safari and Chrome */
  -moz-border-radius: 3px;
  /* for Firefox */
  -o-border-radius: 3px;
  /* for opera */
  border-radius: 3px;
  width: 100%;
}

input.button {
  border: none;
  display: block;
  line-height: 1;
  text-align: center;
  padding: 10px;
  text-decoration: none;
  font-size: 13px;
  -webkit-border-radius: 3px;
  /* for Safari and Chrome */
  -moz-border-radius: 3px;
  /* for Firefox */
  -o-border-radius: 3px;
  /* for opera */
  border-radius: 3px;
  width: 100%;
}

/*マウスホバー時*/
a.button:hover {
  opacity: 0.7;
  cursor: pointer;
  transition: all 0.3s;
}

input.button:hover {
  opacity: 0.7;
  cursor: pointer;
  transition: all 0.3s;
}

/*次へ・入力内容を確認する・注文する・ログイン・登録する・送信・検索・ご注文手続きへ進む等*/
a.positive {
  background: #ffdd00;
}

input.positive {
  background: #ffdd00;
}

/*戻る・クリア・削除・ログアウト等*/
a.negative {
  background: #4c4c4c;
  color: #ffffff;
}

/*戻る・クリア・削除・ログアウト等*/
input.negative {
  background: #4c4c4c;
  color: #ffffff;
}

/*上記以外のボタン*/
a.normal {
  background: #f7f7f7;
  color: #333333;
  border: 1px solid #adadad;
}

input.normal {
  background: #f7f7f7;
  color: #333333;
  border: 1px solid #adadad;
}

.medium.normal {
  padding: 9px !important;
}

.small.normal {
  padding: 5px 9px !important;
}

/*押せないボタン*/
/* .not_click {
    border: none;
    display: block;
    line-height: 1;
    text-align: center;
    padding: 10px;
    text-decoration: none;
    font-size: 12px;
    -webkit-border-radius: 3px;

    -moz-border-radius: 3px;

    -o-border-radius: 3px;

    border-radius: 3px;
    background: #d2d2d2;
    color: #a5a5a5;
}

.not_click.medium {
    max-width: 230px;
    min-width: 200px;
} */

/*見積ボタン*/
a.estimate {
  background: #ed9e00;
  color: #ffffff;
}

input.estimate {
  background: #ed9e00;
  color: #ffffff;
}

/*普通サイズの時にはクラスに下記を追加*/
.medium {
  min-width: 200px;
  font-size: 16px;
}

a.medium {
  max-width: 230px;
  min-width: 200px;
  font-size: 16px;
}

input.medium {
  max-width: 230px;
  min-width: 200px;
  font-size: 16px;
}

/*小さいサイズの時にはクラスに下記を追加*/
.small {
  padding: 6px 10px;
  font-size: 12px;
}

a.small {
  padding: 6px 10px;
  font-size: 12px;
}

input.small {
  padding: 6px 10px;
  font-size: 12px;
}

/*  画像の縦横比調整
-------------------------------------------------------------*/
.img_box {
  text-align: center;
  position: relative;
}

.img_box img {
  width: auto;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

/*  カートフローチャート
-------------------------------------------------------------*/
/* .cart_step {
    position: relative;
    overflow: hidden;
}

.cart_step:after {
    content: "";
    clear: both;
    display: block;
}

.cart_step ul {
    position: relative;
    left: 50%;
    float: left;
    margin-bottom: 45px;
}

.cart_step ul li {
    position: relative;
    left: -50%;
    float: left;
    text-align: center;
    width: 140px;
    line-height: 1.2;
    color: #CDCDCD;
}

.cart_step ul li.active {
    color: #000000;
    font-weight: bold;
}

.cart_step ul li strong {
    font-size: 35px;
    display: block;
} */
.bl_cart_step {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 81px;
  max-width: 777px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .bl_cart_step {
    margin-bottom: 50px;
  }
}

.bl_cart_step::after {
  content: "";
  width: 95%;
  position: absolute;
  left: 50%;
  top: 50%;
  height: 2px;
  background-color: #bcbcbc;
  z-index: -1;
  transform: translateX(-50%);
}

.bl_cart_step li {
  position: relative;
  font-weight: 500;
}
.bl_cart_step li span {
  font-size: 16px;
  position: absolute;
  top: 100%;
  left: 50%;
  white-space: nowrap;
  transform: translate(-50%, 0);
  color: #bcbcbc;
}
.bl_cart_step strong {
  aspect-ratio: 1;
  background-clip: padding-box;
  width: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 20px;
  border: 8px solid #fff;
  color: #fff;
  font-family: "Roboto", "Noto Sans", sans-serif;
  background-color: #bcbcbc;
}
.bl_cart_step .is-active strong {
  background-color: #ffdd00;
  color: #000;
}
.bl_cart_step .is-active span {
  color: #000;
}
@media screen and (max-width: 767px) {
  .bl_cart_step::after {
    height: 1px;
  }
  .bl_cart_step strong {
    border-width: 4px;
    font-size: 16px;
    width: 48px;
  }
  .bl_cart_step li span {
    font-size: 12px;
    text-align: center;
  }
}
.bl_itemDataHorizontalbox {
  margin-bottom: 48px;
}
/* .bl_itemDataHorizontalbox__confirm {
  border-top: 8px solid #f2f2f2;
} */

.bl_itemDataHorizontalbox_inner {
  display: flex;
  gap: 40px;
  min-height: 275px;
}
.bl_itemDataHorizontalbox_inner__confirm {
  min-height: 345px;
}

.bl_itemDataHorizontalbox_inner__confirm:has(
    .bl_cart_sideList > *:nth-child(8)
  ) {
  min-height: 384px;
}
.bl_itemDataHorizontalbox_inner__confirm:has(
    .bl_cart_sideList > *:nth-child(9)
  ) {
  min-height: 416px;
}
.bl_itemDataHorizontalbox_side {
  width: 290px;
  padding: 24px;
  background-color: #f2f2f2;
  white-space: nowrap;
  position: absolute;
  right: 24px;
  top: 32px;
  border-radius: 25px;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontalbox_side {
    width: 100%;
  }
}

.bl_itemDataHorizontalbox_heading {
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background-color: #373737;
  padding: 16px;
  border-radius: 25px 25px 0 0;
}
.bl_itemDataHorizontalbox_inner {
  border-bottom: 8px solid #f2f2f2;
  border-left: 8px solid #f2f2f2;
  border-right: 8px solid #f2f2f2;
  border-radius: 0 0 25px 25px;
  position: relative;
}
.bl_itemDataHorizontalbox_inner.bl_itemDataHorizontalbox_inner__confirm{
  border-radius: 25px;
   border-top: 8px solid #f2f2f2;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontalbox {
    margin-bottom: 32px;
  }
  .bl_itemDataHorizontalbox_side {
    padding: 16px;
    position: static;
  }
  .bl_itemDataHorizontalbox_heading {
    font-size: 18px;
    padding: 7.5px 16px;
    border-radius: 18px 18px 0 0;
  }
  .bl_itemDataHorizontalbox_inner {
    display: block;
    /* padding: 24px 0 8px 0; */
    border-radius: 0 0 18px 18px;
  }
  .bl_itemDataHorizontalbox_inner.bl_itemDataHorizontalbox_inner__confirm{
    border-radius: 18px;
  }
}

.bl_itemDataHorizontal {
  border-bottom: 1px solid #d5d5d5;
  padding-bottom: 24px;
  margin-bottom: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  max-width: 730px;
}

.bl_itemDataHorizontalbox_point{
  position: absolute;
  bottom: 20px;
  left: 24px;
  color: #C10230;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontalbox_point{
    position: static;
    padding-left: 24px;
  }
}

.bl_itemDataHorizontalUnit {
  /* padding-right: 325px; */
  width: 100%;
}
.bl_itemDataHorizontalSubUnit {
  position: relative;
  padding: 32px 325px 32px 24px;
  min-height: 275px;
}
.bl_itemDataHorizontalSubUnit:not(:first-child) {
  border-top: 5px solid #f2f2f2;
}
.bl_itemDataHorizontalSubUnit:not(:first-child)::after {
  display: inline-block;
  max-width: 730px;
  content: "この商品はカート内の他の商品と同時にお求めいただくことができません。 誠に恐れ入りますが、別々にご注文手続きをお願いいたします。※ 定期商品や配送方法などが異なる商品は、別々のお手続きとなります。";
}
/* .bl_itemDataHorizontal:not(:last-child){
    margin-bottom: 24px;
} */
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontalSubUnit:not(:first-child)::after {
    margin-top: 20px;
    font-size: 14px;
  }
  .bl_itemDataHorizontalUnit {
    margin-bottom: 16px;
  }
  .bl_itemDataHorizontal {
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
  .bl_itemDataHorizontalSubUnit {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 16px;
  }
  /* .bl_itemDataHorizontalUnit{
        padding-right: 0px;
    } */
  /* .bl_itemDataHorizontal:not(:last-child){
        margin-bottom: 16px;
    } */
}
.bl_itemDataHorizontal_imgWrapper {
  aspect-ratio: 1;
  width: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f6f6f6;
  border-radius: 25px;
}
.bl_itemDataHorizontal_imgWrapper img {
  display: block;
  max-width: 90%;
  max-height: 90%;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontal {
    gap: 12px;
  }
  .bl_itemDataHorizontal_imgWrapper {
    width: 120px;
  }
}
.bl_itemDataHorizontal_code {
  color: #737373;
  margin-bottom: 10px;
}
.bl_itemDataHorizontal_data {
  display: flex;
  flex: 1;
  gap: 8px 30px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.bl_itemDataHorizontal_comment {
  font-size: 15px;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontal_code {
    font-size: 12px;
  }
  .bl_itemDataHorizontal_comment {
    font-size: 14px;
  }
  .bl_itemDataHorizontal_data {
    gap: 8px;
    width: calc(100% - 120px - 12px);
  }
}
.bl_itemDataHorizontal_data_item01 {
  width: 202px;
}
.cart_confirm .bl_itemDataHorizontal_data_item01 {
  width: 260px;
}

.bl_itemDataHorizontal_hotai {
  font-weight: bold;
  margin-bottom: 4px;
}
.bl_itemDataHorizontal_hotai span {
  font-size: 22px;
}
.bl_itemDataHorizontal_zeikomi {
  font-size: 14px;
  margin-bottom: 4px;
}
.bl_itemDataHorizontal_taxMessage {
  font-size: 14px;
}
.bl_itemDataHorizontal_data_item02 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.bl_itemDataHorizontal_data_item03 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  padding-left: min(1.9vw, 27px);
}
.bl_itemDataHorizontal_data_item03 select {
  width: 70px;
  height: 40px;
  padding: 8px 8px 8px;
  border: solid 1px #d5d5d5;
  border-radius: 20px;
}
.bl_itemDataHorizontal_data_item03 a.negative {
  font-size: 14px;
  border: 1px solid currentColor;
  background-color: #fff;
  border-radius: 20px;
  padding: 12px 5px;
  color: #000;
  width: 52px;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontal_data_item03 select {
    max-width: 70px;
    width: 14.6vw;
  }
  .bl_itemDataHorizontal_data_item03 {
    padding-left: 0;
    width: 100%;
  }
}

.bl_itemDataHorizontal__history {
  margin-bottom: 40px;
  border-bottom: none;
  position: relative;
}
.bl_itemDataHorizontal__history:last-child {
  margin-bottom: 20px;
}
.bl_itemDataHorizontal__history .bl_itemDataHorizontal_data_item01 {
  width: 46.5%;
}
.bl_itemDataHorizontal__history .bl_itemDataHorizontal_data_item02 {
  padding-top: 30px;
}
.bl_itemDataHorizontal__history .bl_itemDataHorizontal_data_item03 {
  font-weight: 500;
  /* padding-top: 30px; */
}

.bl_itemDataHorizontal_btn {
  position: absolute;
  right: 6px;
  bottom: -20px;
  text-align: right;
}

.bl_itemDataHorizontal_btn .bl_btn {
  width: 136px;
  margin-left: auto;
  padding: 8.5px 0;
  font-size: 14px;
}
.bl_itemDataHorizontal__history .property {
  margin-top: 5px;
  display: block;
}
.bl_itemDataHorizontal__history:has(.property) {
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .bl_itemDataHorizontal__history {
    padding-bottom: 50px;
  }
  .bl_itemDataHorizontal__history:has(.property) {
    padding-bottom: 60px;
  }
  .bl_itemDataHorizontal__history .bl_itemDataHorizontal_data_item01 {
    width: 100%;
  }
  .bl_itemDataHorizontal__history .bl_itemDataHorizontal_data_item02 {
    padding-top: 0px;
    width: 100%;
  }
  .bl_itemDataHorizontal_btn {
    right: 0px;
    bottom: 0px;
  }
}

.bl_cart_sideList:not(:last-child) {
  margin-bottom: 20px;
}
.bl_cart_sideList div,
.bl_cart_sideList .bl_cart_sideList_itemInner {
  display: flex;
  justify-content: space-between;
  font-size: 18px;
  align-items: flex-end;
  margin-top: 4px;
  width: 100%;
}
.bl_cart_sideList div:last-child:not(.bl_cart_sideList_notlast) {
  font-weight: bold;
  margin-top: 10px;
}
.bl_cart_sideList div:last-child:not(.bl_cart_sideList_notlast) dd {
  font-size: 28px;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .bl_cart_sideList:not(:last-child) {
    margin-bottom: 12px;
  }
  .bl_cart_sideList div {
    font-size: 16px;
    margin-top: 0;
  }
  .bl_cart_sideList div:last-child:not(.bl_cart_sideList_notlast) {
    margin-top: 5px;
  }
}
.bl_cartButton {
  cursor: pointer;
  width: 100%;
  font-size: 16px;
  font-weight: 500;
  padding: 11px 0;
  display: block;
  text-align: center;
  background-color: #ffdd00;
  border: none;
  color: #000;
  border-radius: 23px;
}
.bl_cartHeading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 40px;
  flex-direction: column;
  gap: 20px;
}
.bl_cartHeading:has(table) {
  gap: 0;
}

.bl_cartMessage {
  margin-bottom: 32px;
}
.bl_cartForm {
  margin-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .bl_cartButton {
    padding: 8px 0;
    font-size: 14px;
  }
  .bl_cartHeading {
    align-items: flex-start;
    text-align: left;
    flex-direction: column;
    margin-bottom: 32px;
    font-size: 18px;
    font-weight: 500;
    gap: 15px 0px;
  }
  .bl_cartHeading .bl_btn {
    font-size: 12px;
  }
  .bl_cartHeading .bl_btn::after {
    width: 8px;
  }
  .bl_cartMessage {
    margin-bottom: 24px;
  }
  .bl_cartForm {
    margin-bottom: 72px;
  }
}
.bl_table02.bl_table02__contribution,
.bl_table02.bl_table02__wishlistEdit {
  margin-bottom: 50px;
}
.bl_table02.bl_table02__review {
  margin-bottom: 120px;
}
.bl_table02 [type="text"] {
  padding: 9px 12px;
}
@media screen and (max-width: 900px) {
  [name="ZIP"],
  [name="SEND_ZIP"] {
    width: 178px;
  }
  .bl_table02.bl_table02__review [type="text"] {
    width: 270px;
  }
}
@media screen and (max-width: 767px) {
  .bl_table02 [name="send_zipcode_first"] {
    width: 179px;
  }
  .bl_table02.bl_table02__contribution,
  .bl_table02.bl_table02__review,
  .bl_table02.bl_table02__wishlistEdit {
    margin-bottom: 30px;
  }
  .bl_table02.bl_table02__review [type="text"] {
    width: 100%;
  }
}
.bl_table02 {
  width: 100%;
  margin-bottom: 24px;
}
.bl_table02 th {
  background-color: #f2f2f2;
  width: 280px;
  position: relative;
}
.bl_table02 th:has(input) {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .bl_table02 th:has(input) {
    white-space: normal;
  }
}

.bl_table02 th .bl_require {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
}
.bl_table02 th,
.bl_table02 td {
  border: 1px solid #d5d5d5;
  padding: 16px;
  text-align: left;
}

.bl_table02__02 th,
.bl_table02__02 td {
  padding: 14.5px 16px;
}
.bl_table02 [type="checkbox"] {
  width: 24px;
  aspect-ratio: 1;
  vertical-align: middle;
}
.sendCopyButton {
  margin-bottom: 32px;
}
.bl_table02_item01 {
  display: flex;
  align-items: center;
  gap: 32px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .bl_table02 {
    margin-bottom: 18px;
  }
  .bl_table02_item01 {
    flex-direction: column;
    gap: 16px;
  }
  .bl_table02 th,
  .bl_table02 td {
    margin-bottom: -1px;
  }
}

.bl_table02_item01 div {
  width: 100%;
  display: flex;
  gap: 8px;
  align-items: center;
}
.bl_table02_item01 div div:first-child {
  width: 2em;
}
.bl_table02_item01 div div:last-child {
  flex: 1;
}
/* .bl_table02_item01 div:nth-child(1),
.bl_table02_item01 div:nth-child(3){
    width: 2em;
}
.bl_table02_item01 div:nth-child(1),
.bl_table02_item01 div:nth-child(3){
    width: 2em;
} */
.bl_table02_item01 input {
  width: 100%;
}
.bl_formZipBtn {
  font-size: 14px;
  border-radius: 0;
  transform: translateY(1px);
  margin-left: 5px;
  transform: translateY(-1px);
  width: 120px;
  height: 40px;
  border-radius: 20px;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #000;
}

.bl_table02 select {
  border-radius: 4px;
  border: 1px solid #d5d5d5;
  font-size: 16px;
  padding: 10.5px 12px;
  width: 390px;
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .bl_table02 tr:not(.couponHide),
  .bl_table02 tbody,
  .bl_table02 thead,
  .bl_table02 {
    display: block;
  }

  .bl_table02 th,
  .bl_table02 td {
    width: 100%;
    padding: 15.5px 12px;
    display: block;
  }
}
/*画像の場合*/
/* .step {
    display: block;
    margin: 25px auto 45px auto;
} */
/*  カート精算
-------------------------------------------------------------*/

.bl_bottomBorderHeading {
  font-size: 22px;
  font-weight: bold;
  border-bottom: 1px solid #d5d5d5;
  padding-bottom: 16px;
  margin-bottom: 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.bl_bottomBorderHeading a {
  font-size: 14px;
  font-weight: normal;
  border: 1px solid #000;
  width: 120px;
  height: 40px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .bl_bottomBorderHeading {
    font-size: 18px;
    padding-bottom: 15px;
    margin-bottom: 24px;
  }
}

.bl_cartbox {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .bl_cartbox {
    margin-bottom: 40px;
  }
  .cardnumber_td input {
    width: 67px;
  }
}
.bl_customCheckbox {
  cursor: pointer;
}
.bl_customCheckbox input {
  display: none;
}
.bl_customCheckbox .dummy_checkbox {
  width: 24px;
  position: relative;
  aspect-ratio: 1;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  margin-top: -2px;

  border: 1px solid #d5d5d5;
  background-color: #fff;
}

.bl_customCheckbox:has(:checked) .dummy_checkbox {
  background-color: #ffdd00;
  border-color: #ffdd00;
}

.bl_customCheckbox:has(:checked) .dummy_checkbox::after {
  content: "";
  position: absolute;
  width: 6px;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  height: 16px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

.bl_table02 .bl_couponList {
  display: block;
}
.bl_couponList:not(:last-child) {
  margin-bottom: 16px;
}
.bl_couponList label:has(.bl_radio) {
  margin-right: 0;
}

select[name="CREDIT_LIMIT_MONTH"],
select[name="CREDIT_LIMIT_YEAR"] {
  width: 115px;
}

.bl_cartOption {
  border: 1px solid #d5d5d5;
  padding: 16px 24px;
  line-height: 1.5;
  max-width: 724px;
  margin-bottom: 18px;
}
@media screen and (max-width: 767px) {
  .bl_cartOption {
    padding: 16px;
  }
}
.bl_cartOption_heading {
  padding-bottom: 16px;
  font-weight: 500;
  margin-bottom: 16px;
  border-bottom: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .bl_cartOption_heading {
    font-size: 16px;
  }
}
.bl_cartOptionItem_inner > div:first-child {
  display: flex;
  align-items: center;
  gap: 16px;
}

.bl_cartOptionItem_inner label {
  display: flex;
  align-items: center;
  gap: 16px;
  cursor: pointer;
}
.bl_cartOptionItem_imgWrapper {
  width: 60px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
}
.bl_cartOptionItem_imgWrapper img {
  display: block;
  max-width: 100%;
  max-height: 100%;
}
.bl_cartOptionItem_checkbox label {
  border: 1px solid #d5d5d5;
  width: 24px;
  height: 24px;
  display: block;
  position: relative;
}
.bl_cartOptionItem_checkbox input {
  display: none;
}
.bl_cartOptionItem_checkbox :checked + label {
  border-color: #ffdd00;
  background-color: #ffdd00;
}

.bl_cartOptionItem_checkbox [disabled]:checked + label {
  border-color: #d5d5d5;
  background-color: #d5d5d5;
}

.bl_cartOptionItem_checkbox :checked + label::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 6px;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.bl_cartOptionItem_checkbox [disabled]:checked + label::after {
  border-color: #737373;
}
/* .bl_cartOptionItem_checkbox input{
    display: none;
} */
/* .bl_cartOptionItem_checkbox span{
    width: 24px;
    display: block;
    aspect-ratio: 1;
    border: 1px solid #D5D5D5;
    position: relative;
}
.bl_cartOptionItem_checkbox :checked + span{
    background-color: #D5D5D5;
}
.bl_cartOptionItem_checkbox :checked + span::after{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 6px;
    border-bottom: 2px solid #737373;
    border-left: 2px solid #737373;
    transform: translate(-50%,-50%) rotate(-45deg);
} */
.bl_cartOptionItem_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  max-width: 500px;
  width: calc(100% - 130px);
}

.bl_cartOptionItem_count {
  font-weight: 500;
}
.bl_cartOptionItem_count select {
  width: 70px;
  padding: 10.5px 8px;
  margin-left: 12px;
}
.bl_cartOptionItem_price {
  font-size: 22px;
  font-weight: bold;
  white-space: nowrap;
}
.bl_cartOptionItem_price span {
  font-size: 16px;
}
.bl_cartOptionItem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.bl_cartOptionItem:not(:last-child) {
  margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
  .bl_cartOptionItem_inner {
    display: block;
    width: 100%;
  }
  .bl_cartOptionItem_imgWrapper img {
    display: block;
  }
  .bl_cartOptionItem {
    display: block;
    position: relative;
    padding-left: 110px;
  }
  .bl_cartOptionItem_checkbox {
    position: absolute;
    left: 0;
    top: 20px;
  }
  .bl_cartOptionItem_imgWrapper {
    position: absolute;
    left: 40px;
    top: 0px;
  }
  .bl_cartOptionItem_price {
    margin: 5px 0;
  }

  .bl_cartOptionItem_inner > div:first-child {
    display: block;
  }
  .bl_cartOptionItem:not(:has(.bl_cartOptionItem_imgWrapper)) {
    padding-left: 50px;
  }
}
.bl_cartOptionItem_name {
  flex: 1;
}
.bl_cartOption_info {
  font-size: 14px;
  margin-top: 12px;
  padding-left: 40px;
  width: 100%;
}
.bl_cartOption_info:empty {
  display: none;
}
/*  ローディング表示のスタイル
-------------------------------------------------------------*/
#loading {
  position: fixed;
  top: 50%;
  left: 50%;
  padding-top: 100px;
  width: 125px;
  background-image: url("../images/loader_icon_pc.gif");
  background-position: center center;
  background-repeat: no-repeat;
}

/*  商品一覧、商品詳細ページアイコン類
-------------------------------------------------------------*/
.item_icon {
  color: #ffffff;
  display: block;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  padding: 4px 6.5px;
  vertical-align: text-bottom;
  margin: 2px 0;
  width: fit-content;
  border-radius: 10px;
}

/*アイコン共通設定*/
.item_short {
  background: #d21e21;
}

/*品切*/
.item_soldout {
  background: #666666;
}

/*品薄*/
.item_new {
  background: #f27186;
}

/*NEW*/
.item_before {
  background: #ff9900;
}

/*COMING SOON*/
.item_download {
  background: #00cccc;
}

/*ダウンロード商品*/
.item_yoyaku {
  background: #000000;
}

/*予約商品*/
.item_discount {
  background: #cc0000;
}

/*会員割引あり*/
.item_timesale {
  background: #cc0000;
}

/*タイムセール中*/
.item_teiki_together {
  background: #a52ead;
}

/*定期にまとめて注文可能*/
.item_volume_discount {
  background: #ff6699;
}

/*ボリュームディスカウントあり*/
.item_bundle_sale {
  background: #0000ff;
}

/* まとめ買い対象*/
.item_noshi {
  background: #000066;
}

/* のし対象商品*/
.item_message {
  background: #ff9900;
}

/* メッセージカード対象商品*/
.item_gift_bag {
  background: #ff6699;
}

.bl_specialUnit02 {
  display: flex;
  gap: 16px;
  margin-bottom: 40px;
}
.swiper.bl_specialUnit02 {
  overflow: visible;
}
.bl_specialUnit02 .bl_specialItem02 {
  position: relative;
  width: 295px;
}
.bl_specialItem02_imgWrapper {
  margin-bottom: 20px;
  width: 295px;
  height: 195px;
}
.bl_specialItem02_imgWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bl_specialItem02_title {
  font-size: 18px;
  margin-bottom: 8px;
  font-weight: bold;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.bl_specialItem02_time {
  font-size: 14px;
  color: #737373;
}
@media screen and (max-width: 767px) {
  .swiper.bl_specialUnit02 {
    margin-bottom: 32px;
  }
  .bl_specialItem02_imgWrapper {
    margin-bottom: 12px;
    width: 166px;
    height: 110px;
  }
  .bl_specialUnit02 .bl_specialItem02 {
    position: relative;
    width: 166px;
  }
  .bl_specialUnit02 .bl_specialItem02 img {
    width: 166px;
  }
  .bl_specialItem02_title {
    font-size: 16px;
    margin-bottom: 8px;
  }
}
/* 手提げ袋対象商品*/

/* =================================================================
3.コンテナ・サイドバー・メインコンテンツ
使用ファイル：すべてのファイル
=================================================================*/
/* container - サイドバー・メインコンテンツを格納するコンテナ
-------------------------------------------------------------*/
#container {
  padding-top: 10px;
}

#container:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */

/* sidebar - コンテナ内サイドバー
-------------------------------------------------------------*/
/* #sidebar {
    float: left;
    width: 190px;
}

#sidebar .point_limit_date {
    font-weight: bold;
} */

#sidebar .bl_btn {
  text-align: left;
  padding-left: 14px;
}
.bl_btn svg {
  fill: #000;
}

.bal_categoryList {
  margin-bottom: 16px;
}
.bal_categoryList > li:first-child {
  border-top: 1px solid #d5d5d5;
}
.bal_categoryList > li {
  width: 100%;
  border-bottom: 1px solid #d5d5d5;
}

.bal_categoryList_topItem {
  font-size: 16px;
  font-weight: 600;
  display: block;
  padding: 15px 0;
  position: relative;
  cursor: pointer;
}
.c-column__item {
  font-size: 14px;
}
/* .bal_categoryList >li:has(li) .bal_categoryList_topItem{
    pointer-events: none;
    cursor:pointer;
} */
.bal_categoryList > li:has(li) .bal_categoryList_topItem::after,
.bal_categoryList > li:has(li) .bal_categoryList_topItem::before {
  content: "";
  width: 14px;
  height: 2px;
  background-color: #000;
  position: absolute;
  top: 50%;
  right: 15px;
  transition: all 0.3s;
}
.bal_categoryList > li:has(li) .bal_categoryList_topItem::after {
  transform: translate(-50%, -50%);
}
.bal_categoryList > li:has(li) .bal_categoryList_topItem::before {
  transform: translate(-50%, -50%) rotate(90deg);
}
.bal_categoryList > li:has(li).is-active .bal_categoryList_topItem::before {
  transform: translate(-50%, -50%);
}
.bal_categoryList > li:not(:has(li)) .bal_categoryList_topItem svg {
  stroke: currentColor;
  top: 50%;
  right: 22px;
  transform: translateY(-50%);
  position: absolute;
  /* content: "";
  width: 6px;
  aspect-ratio: 1;
  border-top: 2px solid #000;
  border-right: 2px solid #000;

 */
}
.bal_subCategoryList {
  display: none;
}
.is-active .bal_subCategoryList {
  display: block;
}

.bal_subCategoryList li {
  margin-top: 10px;
}
.bal_subCategoryList li a[href$="ONAYAMI_CARER/"],
.bal_subCategoryList li a[href$="ONAYAMI_CARE/"] {
  pointer-events: none;
  font-weight: bold;
}

.bal_subCategoryList li:last-child {
  margin-bottom: 10px;
}
/* shop - ショップ
-------------------------------------------------------------*/

.bl_shopHeading {
  background-color: #f2f2f2;
  font-size: 28px;
  font-weight: bold;
  padding: 8px 24px;
  margin-bottom: 32px;
}
.bl_shopItemUnit {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 16px;
  margin-bottom: 55px;
}
.bl_shopItem {
  width: 190px;
  display: block;
}
.bl_shopItem_imgWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border: 1px solid #d5d5d5;
  margin-bottom: 12px;
}
.bl_shopItem_heading {
  font-weight: 500;
  margin-bottom: 7px;
}
.bl_shopItem_imgWrapper img {
  aspect-ratio: 1;
  max-width: 100%;
  max-height: 100%;
}
.bl_shopItem_kana {
  display: none;
}
.bl_shopItem_cat {
  font-size: 14px;
  color: #737373;
}
.index_heading {
  font-size: 16px;
  font-family: "Roboto", "Noto Sans", sans-serif;
  margin-bottom: 12px;
}
.bl_index_list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 40px;
}

.bl_index_list li.is-active a {
  background-color: #ffdd00;
  border-color: #ffdd00;
}
.bl_index_list li a {
  font-size: 16px;
  font-weight: 500;
  border: 1px solid #d5d5d5;
  display: flex;
  width: 62px;
  text-align: center;
  align-items: center;
  height: 52px;
  font-weight: bold;
  justify-content: center;
}
/* .bl_shopData{
    display: none;
} */
@media screen and (max-width: 767px) {
  .bl_shopItemUnit {
    gap: 32px 0;
    justify-content: space-between;
    margin-bottom: 48px;
  }
  .bl_shopItem {
    width: 49%;
  }
  .bl_shopHeading {
    font-size: 20px;
    padding: 8px 16px;
    margin-bottom: 24px;
  }
  .bl_index_list {
    gap: 8.5px;
    margin-bottom: 24px;
  }
  .bl_index_list li a {
    width: 48px;
    height: 44px;
    font-size: 14px;
  }
  .bl_shopWrapper {
    margin-bottom: 80px;
  }
}

/* shop - ショップ詳細
-------------------------------------------------------------*/
.bl_shopTopWrapper {
  margin-top: 28px;
}
.bl_pageKv {
  padding: 0 3.5vw 0px 3.5vw;
  margin: auto;
  max-width: calc(1340px + 7vw);
}
.bl_pageKv img {
  width: 100%;
  overflow: hidden;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .bl_pageKv {
    max-width: 100%;
    padding: 0;
  }
  .bl_pageKv img {
    border-radius: 0px;
  }
}
.bl_media01 {
  display: flex;
  align-items: flex-start;
  gap: 56px;
  margin-bottom: 80px;
}
.bl_media01_img {
  width: 210px;
  aspect-ratio: 1;
  display: flex;
  max-width: 100%;
  max-height: 100%;
  align-items: center;
  justify-content: center;
  margin: 0;
}
.bl_media01_img img {
  max-width: 100%;
  max-height: 100%;
}
.bl_media01_data {
  flex: 1;
}
.bl_media01_data .bl_btn {
  margin-left: 0;
}
.bl_media01_txt {
  margin-bottom: 32px;
}
.bl_media01_heading01 {
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .bl_media01 {
    flex-direction: column;
    align-items: center;
    gap: 24px;
    margin-bottom: 40px;
  }
  .bl_media01_img {
    width: 110px;
  }
  .bl_media01_txt {
    margin-bottom: 24px;
  }
  .bl_media01_data .bl_btn {
    margin-left: auto;
  }
}

/* shop - 特商法
---
*/
.bl_table01 {
  margin-bottom: 80px;
  width: 100%;
}
.bl_table01 th {
  text-align: left;
  font-weight: bold;
  background-color: #f2f2f2;
}
.bl_table01 th {
  width: 280px;
}
.bl_table01 th,
.bl_table01 td {
  border: 1px solid #d5d5d5;
  padding: 15.5px 24px;
  text-align: left;
}
.bl_table01 td {
  word-break: break-all;
}
.bl_table01 a {
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .bl_table01 {
    margin-bottom: 40px;
  }
  .bl_table01 th {
    width: 110px;
  }
  .bl_table01 th,
  .bl_table01 td {
    padding: 15.5px 12px;
  }
}
@media screen and (max-width: 767px) {
  .bl_table02 .bl_spHorizontal {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}
/* .bal_categoryList >li:has(li) .bal_categoryList_topItem{

} */
/* main - コンテナ内メインコンテンツ
-------------------------------------------------------------*/
/* #main {
    float: right;
    width: 770px;
    padding-bottom: 20px;
}

#main h2 {
    margin-bottom: 20px;
    font-weight: normal;
    border-bottom: solid 3px #cccccc;
    position: relative;
}

#main h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #373737;
    bottom: -3px;
    width: 20%;
}

#main p {
    margin: 5px 10px;
    font-size: 90%;
    line-height: 150%;
}

#main table {
    width: 750px;
    margin: 10px;
    font-size: 90%;
    border: 1px solid #CCC;
    line-height: 200%;
}

#main th {
    padding: 10px;
    border: 1px solid #CCC;
    background: #F6F6F6;
    vertical-align: top;
    font-weight: normal;
    text-align: left;
}

#main th.title {
    width: 160px;
    text-align: left;
}

#main th.address {
    width: 55px;
}

#main td {
    padding: 10px;
    border: 1px solid #CCC;
    vertical-align: top;
}

#main .buttonarea {
    margin: 10px;
    padding-top: 40px;
    text-align: center;
}

#main .buttonarea .button {
    display: inline-block;
    margin: 0 10px;
}

#main .buttonarea .attention {
    color: #C00;
    font-size: 90%;
}

#main .buttonareaFR {
    margin: 0 0 0px;
    float: right;
}

#main .buttonareaFR:after {
    content: ".";
    display: block;
    visibility: hidden;
    height: 0.1px;
    font-size: 0.1em;
    line-height: 0;
    clear: both;
} */

/* clearfix */
/* #main .member_buttonarea .button {
    display: inline-block;
    margin: 0 10px;
}

#main .hissu {
    color: #C00;
    font-weight: bold;
} */

/* #main #breadcrumbs {
    margin-bottom: 20px;
    font-size: 80%;
} */

/* #main .amazon_comment {
    color: #C00;
    font-weight: bold;
}

#main .expiration_date {
    padding-left: 10px;
} */
#main {
  padding-top: 10px;
}
#breadcrumbs {
  background-color: #f2f2f2;
  padding: 11px 50px;
  margin: 0 auto 32px;
  white-space: nowrap;
  overflow: auto;
  width: calc(100% - 7vw);
  border-radius: 23px;
  max-width: 1340px;
}
@media screen and (max-width: 767px) {
  #breadcrumbs {
    border-radius: 0px;
    width: calc(100% - 7.6vw);
    padding: 9px 0 9px 20px;
    font-size: 12px;
    margin-bottom: 24px;
  }
}
/* #breadcrumbs a {
  text-decoration: underline;
} */

.breadcrumbs_inner {
  max-width: 1124px;
  margin-left: auto;
  margin-right: auto;
}
.breadcrumbs_inner a {
  text-decoration: underline;
}

/* リキャプチャー機能用
-------------------------------------------------------------*/
#main #reCAPTCHA {
  width: 304px;
  margin: 20px auto 0;
}

/* お問い合わせページ画像項目用
-------------------------------------------------------------*/
/* #main .apply_area img {
    max-width: 100%;
} */

.bl_table02.bl_table02__apply {
  margin-top: 50px;
  margin-bottom: 53px;
}
.bl_table02.bl_table02__apply [type="text"] {
  width: auto;
}
.bl_table02.bl_table02__apply th img {
  display: none;
}
.bl_table02.bl_table02__apply th:has(img)::after {
  content: "必須";
  border: 1px solid #c10230;
  color: #c10230;
  background-color: #fff;
  font-size: 12px;
  line-height: 16px;
  padding: 0 3.5px;
  display: inline-block;
  margin-left: 4px;
  vertical-align: middle;
  margin-top: -2px;
}
.bl_table02.bl_table02__apply textarea {
  height: 230px;
}
.bl_applyMessage {
  font-size: 12px;
}

@media screen and (max-width: 767px) {
  .bl_table02.bl_table02__apply .HTMLFORM_ELEMENT {
    display: block;
  }
  .bl_table02.bl_table02__apply textarea {
    height: 180px;
  }
}
.bl_require {
  border: 1px solid #c10230;
  color: #c10230;
  background-color: #fff;
  font-size: 12px;
  line-height: 16px;
  padding: 0 3.5px;
  display: inline-block;
  margin-right: 4px;
}
/* フォーム類部品
-------------------------------------------------------------*/
input[type="text"],
input[type="email"] {
  border: solid 1px #bcbcbc;
  font-size: 16px;
  padding: 4px;
  border-radius: 4px;
  padding: 8px;
  max-width: 100%;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus {
  border-color: #ffdd00;
  outline: none; /* ブラウザのデフォルトのアウトラインを無効化 */
}

::placeholder {
  color: #bcbcbc;
}
input[type="email"] {
  width: 390px;
}

input[type="password"] {
  border: solid 1px #ccc;
  -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  padding: 4px;
}

input[type="tel"] {
  border: solid 1px #ccc;
  -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  padding: 4px;
}

input[type="number"] {
  border: solid 1px #ccc;
  -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
  padding: 4px;
}

[type="radio"] {
  accent-color: yellow;
}

select {
  color: inherit;
  border-radius: 0;
  padding-right: 30px;
  -webkit-appearance: none;
  background-image: url("../images/icon/bottomArrow.svg");
  background-repeat: no-repeat;
  background-position: right 12px center;
}
button {
  color: inherit;
}

textarea {
  border: solid 1px #bcbcbc;
  font-size: 16px;
  border-radius: 4px;
  padding: 12px;
  max-width: 100%;
  width: 100%;
  height: 126px;
  /* -moz-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.25); */
}

.bl_selectWrapper select {
  width: 96px;
  height: 40px;
  padding: 8px 12px;
  border: 1px solid #d5d5d5;
  border-radius: 4px;
}

[name="send_city"],
[name="send_building"],
[name="SEND_ADDR2"],
[name="SEND_ADDR3"],
[name="ADDR2"],
[name="ADDR3"] {
  width: 100%;
}

.bl_checkboxWrapper [type="checkbox"] {
  display: none;
}
.bl_checkboxWrapper {
  display: block;
  font-weight: bold;
  width: fit-content;
}
.bl_checkboxWrapper span {
  width: 24px;
  aspect-ratio: 1;
  display: inline-block;
  vertical-align: middle;
  margin-right: 32px;
  position: relative;
  border: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .bl_checkboxWrapper span {
    margin-right: 18px;
  }
}
.bl_checkboxWrapper:has(:checked) span {
  border-color: #ffdd00;
  background-color: #ffdd00;
}
.bl_checkboxWrapper:has(:checked) span::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 12px;
  display: block;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.bl_radio {
  width: 24px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid #d5d5d5;
  position: relative;
  display: inline-block;
  border: middle;
  margin-right: 10px;
  vertical-align: middle;
}
.bl_radioWrapper {
  margin-right: 24px;
  /* white-space: nowrap; */
  display: inline-block;
  text-indent: -34px;
  margin-left: 34px;
  margin-top: 5px;
  margin-bottom: 5px;
}

.HTMLFORM_ELEMENT label {
  position: relative;
  padding-left: 30px;
}
.HTMLFORM_ELEMENT label::after {
  content: "";
  aspect-ratio: 1;
  border-radius: 50%;
  width: 24px;
  position: absolute;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  background-color: #fff;
  transform: translateY(-50%);
  border: 1px solid #d5d5d5;
}
.HTMLFORM_ELEMENT label::before {
  content: "";
  box-sizing: border-box;
  transform: translateY(-50%);
  aspect-ratio: 1;
  border-radius: 50%;
  width: 10px;
  background-color: #fff;
  position: absolute;
  z-index: 1;
  display: none;
  top: 50%;
  left: 7px;
}
.HTMLFORM_ELEMENT :checked ~ label::after {
  background-color: #ffdd00;
}
.HTMLFORM_ELEMENT :checked ~ label::before {
  display: block;
}
.HTMLFORM_ELEMENT [type="radio"],
.bl_radioWrapper [type="radio"] {
  display: none;
}
/* @media screen and (max-width: 767px) {
    label:has(.bl_radio) {
        margin-bottom: 18px;
    }
} */
:checked + .bl_radio {
  background-color: #ffdd00;
}
:checked + .bl_radio::after {
  content: "";
  position: absolute;
  width: 10px;
  top: 50%;
  aspect-ratio: 1;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  border-radius: 50%;
}

/* #main.no-sidebar - サイドバーの無いメインコンテンツ
-------------------------------------------------------------*/
/* #main.no-sidebar {
    float: none !important;
    width: 980px !important;
    min-height: 500px;
    margin: auto !important;
}

#main.no-sidebar table {
    width: 960px !important;
}

#main.no-sidebar th {
    padding: 10px !important;
}

#main.no-sidebar td {
    padding: 10px !important;
} */

/* #main.cart - カートフロー中のメインコンテンツ
-------------------------------------------------------------*/
/* #main.cart {
    float: none;
    width: 980px;
    min-height: 500px;
} */

/* =================================================================
4.ヘッダ
使用ファイル：common/header.xhtml
=================================================================*/
/* smartphone - スマートフォン専用サイトへのリンク
-------------------------------------------------------------*/
#smartphone a {
  display: block;
  width: 980px;
  height: 150px;
  margin: auto;
  background: url("../images/button_smartphone.png") no-repeat;
  text-indent: -9999px;
}

/* preview - プレビュー時に表示するエリア
-------------------------------------------------------------*/
#preview {
  padding: 5px;
  border-bottom: 1px solid #ccc;
  background: #1c8600;
  color: #fff;
  font-size: 80%;
  text-align: center;
}

#preview table {
  width: 800px;
  margin: auto;
}

#preview .ico {
  width: 20%;
  padding-right: 10px;
  text-align: right;
}

#preview .content {
  text-align: left;
}

/* proxy_login - 代理ログイン時に表示するエリア
-------------------------------------------------------------*/
#proxy_login {
  padding: 5px;
  border-bottom: 1px solid #ccc;
  background: #fcff41;
  color: #000000;
  font-size: 120%;
  text-align: center;
}

#proxy_login table {
  width: 800px;
  margin: auto;
}

#proxy_login .content {
  text-align: center;
}

/* header - ヘッダ
-------------------------------------------------------------*/
.bl_grayBack {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
}
#header {
  position: relative;
  z-index: 101;
  background-color: #fff;
  padding-bottom: 12px;
  margin-bottom: 10px;
}
#header .bl_alert {
  background-color: #ffdd00;
  font-size: 14px;
  text-align: center;
  padding: 12px 0;
  text-align: center;
  text-decoration: none;
  /* position: relative;
    z-index: 101; */
}
@media screen and (max-width: 960px) {
  #header {
    padding-bottom: 30px;
  }
  #header .bl_alert {
    padding: 9.5px 0;
  }
}

#header .inner {
  padding: 33px 3.5vw 0px 3.5vw;
  margin: auto;
  max-width: calc(1340px + 7vw);
  /* position: relative;
    z-index: 101; */
}
@media screen and (max-width: 960px) {
  #header .inner {
    padding: 15px 3.5vw 0px 3.5vw;
  }
}
@media screen and (max-width: 767px) {
  #header {
    padding-bottom: 12px;
  }
  #header .inner {
    position: relative;
  }
}
.header_front {
  display: flex;
  align-items: center;
  gap: 8.4vw;
  justify-content: space-between;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 22px;
}
/* @media screen and (max-width: 830px) {
  #header .inner {
    gap: 3.4vw;
  }
  .header_front {
    gap: 0;
    border-bottom: none;
    padding-bottom: 40px;
  }
} */
@media screen and (max-width: 960px) {
  .header_front {
    border-bottom: none;
  }
}
@media screen and (max-width: 767px) {
  .header_front {
    gap: 0;
    padding-bottom: 40px;
  }
}

/* clearfix */
#header .header_right {
  flex: 1;
  max-width: 902px;
}
#header h1 a {
  display: block;
  width: 280px;
  aspect-ratio: 656 / 184;
  background: url("../images/logo.svg") no-repeat;
  background-size: contain;
  text-indent: -9999px;
}
@media screen and (max-width: 960px) {
  /* #header h1 {
    margin-top: 4px;
  }
  #header h1 a {
    display: block;
    width: 184px;
  }
  #header .inner {
    padding: 10.5px 20px;
  } */
  #header .header_right {
    flex: 0;
  }
  #header h1 a {
    width: 237px;
  }
}
@media screen and (max-width: 767px) {
  #header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    width: 100%;
  }
  .header_front {
    justify-content: center;
  }
  #header h1 {
    margin-top: 4px;
  }
  #header h1 a {
    width: 184px;
  }
  #header .inner {
    padding: 10.5px 20px;
  }
  #header .inner {
    /* display: block; */
    position: relative;
  }
  /* #header h1{
		margin-bottom: 10px;
	} */
}

#header .header_right > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  #header .header_right {
    width: fit-content;
    flex: 0;
  }
}
.bl_headerBtns {
  display: flex;
  gap: 12px;
}

.bl_headerBtn {
  background-color: #efefef;
  font-size: 14px;
  padding: 10px 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 23px;
  position: relative;
  white-space: nowrap;
}
.bl_headerBtn .bl_cartCount {
  font-size: 10px;
  width: 15px;
  aspecqt-ratio: 1;
  background-color: #c10230;
  color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 8px;
  right: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.bl_headerBtn__mypage {
  padding: 12px 30.5px;
}
@media screen and (max-width: 960px) {
  .bl_headerBtn {
    padding: 7.5px 11.5px;
  }
  .bl_headerBtn__mypage {
    padding-left: 20.5px;
    padding-right: 20.5px;
  }
}

@media screen and (max-width: 767px) {
  .bl_headerBtn__mypage {
    display: none;
  }
  .bl_headerBtn__cart {
    position: absolute;
    right: 15px;
    top: 14px;
  }
}

.bl_headerSwitch {
  width: 60px;
  height: 45px;
  border-radius: 23px;
  position: relative;
  background-color: #efefef;
  border: none;
  cursor: pointer;
}
@media screen and (max-width: 960px) {
  .bl_headerSwitch {
    height: 40px;
    width: 53px;
  }
}
@media screen and (max-width: 767px) {
  .bl_headerSwitch {
    position: absolute;
    left: 15px;
    top: 14px;
  }
}
/* @media screen and (max-width: 767px) {
  .bl_headerSwitch {
    width: 60px;
    height: 45px;
  }
} */

.bl_headerSwitch::before,
.bl_headerSwitch::after {
  content: "";
  position: absolute;
  width: 22px;
  height: 2px;
  background-color: #000;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
}
.bl_headerSwitch::after {
  margin-top: 4px;
}
.bl_headerSwitch::before {
  margin-top: -4px;
}
.header_bottom {
  margin-top: 15px;
}
@media screen and (max-width: 960px) {
  .header_bottom {
    display: none;
  }
}
.bl_header_list01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  position: relative;
}
/* .bl_header_list01 > li {
  position: relative;
} */
.bl_header_list01 > li > span.is-active {
  border-bottom: 2px solid #ffdd00;
}

.bl_header_list01 > li > span {
  cursor: pointer;
}

.bl_header_list01_sub {
  aspect-ratio: 670/335;
  border-radius: 25px;
  position: absolute;
  bottom: -20px;
  transform: translateY(100%);
  left: 0;
  background-color: rgba(255, 255, 255, 1);
  padding: 0 15px;
  width: 670px;
  display: none;
  font-weight: 500;
}
.bl_header_list01_sub__02 {
  /* display: flex; */
  gap: 39px;
}
.is-active + .bl_header_list01_sub__01 {
  display: block;
}
.is-active + .bl_header_list01_sub__02 {
  display: flex;
  /* transform: translate(-30%, 100%); */
}

.bl_header_list01_sub_item {
  min-width: 200px;
}
.bl_header_list01_sub_item:first-child {
  border-right: 1px solid #f2f2f2;
}
.bl_header_list01_sub_item_heading {
  font-size: 12px;
  font-weight: bold;
  padding-top: 45px;
  padding-bottom: 15px;
}

.bl_header_list01_sub_item:last-child ul {
  flex-direction: column;
  flex-wrap: wrap;
  display: flex;
  height: 220px;
  gap: 0px 70px;
}

.bl_header_list01_sub__01 ul {
  padding-top: 30px;
  padding-bottom: 30px;
}
.bl_header_list01_sub li a {
  position: relative;
  display: block;
  width: fit-content;
  padding: 12px 0 12px 40px;
}
.bl_header_list01_sub__02 li a {
  padding: 13px 0 13px 40px;
  position: relative;
}
/* .bl_header_list01_sub__01 li a:hover,
.bl_header_list01_sub__02 li a:hover {
  opacity: 1;
} */
/* .bl_header_list01_sub__01 li a:hover::after,
.bl_header_list01_sub__02 li a:hover::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  border-bottom: 2px solid #ffdd00;
} */

.bl_header_list01_sub li:not(:last-child) {
  margin-bottom: 4px;
}
.bl_header_list01_sub .bl_globalMenu__forntImg {
  width: 32px;
  height: 31px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
}
/* #header .header_right >div:first-child{
	margin-bottom:12px;
} */
/* .bl_header_list01 {
  display: flex;
  gap: 27px;
  font-size: 14px;
}
.bl_header_list01 li {
  padding-top: 5px;
  padding-bottom: 5px;
  line-height: 1.25;
}

.bl_header_list02 li > span:nth-child(1)::after,
.bl_header_list02 li > span:nth-child(2)::after {
  content: "";
  width: 8px;
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
  aspect-ratio: 1;
  display: inline-block;
  vertical-align: middle;
  margin-left: 8px;
  margin-top: -8px;
  transform: rotate(45deg);
}
.bl_header_list03 {
  display: flex;
  gap: 24px;
  align-items: center;
  font-size: 14px;
  padding: 5px 0;
}
.bl_header_list03 li {
  position: relative;
}
.bl_header_list03 .bl_cartCount {
  position: absolute;
  font-weight: bold;
  font-size: 10px;
  left: 20px;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -5px;
  border-radius: 50%;
  background-color: #c10230;
  border-radius: 50%;
  color: #fff;
  border: 1px solid #fff;
}
.is-active + .bl_header_list03_sub {
  display: grid;
  opacity: 1;
  pointer-events: auto;
}
.bl_header_list03_sub {
  font-size: 16px;
  position: absolute;
  bottom: -14px;
  border-top: 1px solid #dfdfdf;
  left: 0;
  width: fit-content;
  white-space: nowrap;
  padding: 24px;
  opacity: 0;
  pointer-events: none;
  gap: 14px;
  transform: translateY(100%);
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .bl_header_list03 {
    margin-left: auto;
  }
  .bl_header_list03_sub {
    font-size: 14px;
    left: auto;
    right: 0;
    bottom: -15px;
  }
  .bl_header_list03__sub01 {
    left: -45px;
  }
}

.bl_header_list03 li {
  display: flex;
  gap: 24px;
}

.bl_header_list03 li > span {
  position: relative;
  cursor: pointer;
}

.bl_header_list03 svg {
  vertical-align: middle;
  margin-right: 5px;
}
.bl_header_list03_item_login {
  max-width: 300px;
}
.bl_header_list03_item_login::after {
  content: "";
  width: 6px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  aspect-ratio: 1;
  display: inline-block;
  vertical-align: middle;
  margin-left: 4px;
  margin-top: -8px;
  transform: rotate(45deg);
}
@media screen and (max-width: 767px) {
  .bl_header_list03_item_login {
    font-size: 12px;
    max-width: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .bl_header_list03_item_login svg {
    display: none;
  }
  .bl_header_list03_item_login::after {
    margin-left: 7px;
  }
  .bl_sp-menuToggle {
    position: relative;
  }
} */
/* .bl_header_list03 .bl_header_list03_spSub{
    position: absolute;
    top: 0;
    left: 0;
    font-size: ;
} */
/*
.bl_header_list01 li:last-child {
  border: 1px solid #ffdd00;
  padding: 5px 10px;
}
.bl_header_list02 {
  display: flex;
  gap: 2.8vw;
  font-weight: bold;
}
.bl_header_list02 > li > a,
.bl_header_list02 > li > span {
  padding-bottom: 16px;
  padding-top: 16px;
  display: inline-block;
}
.bl_header_list02 .is-active + .bl_header_subList02 {
  opacity: 1;
  pointer-events: auto;
}
.bl_header_list02 li > span {
  position: relative;
  cursor: pointer;
}

.bl_header_list02 > li > span::before {
  content: "";
  position: absolute;
  width: calc(100%);
  left: 0;
  bottom: 0;
  height: 4px;
  background-color: transparent;
  pointer-events: none;
  transition: all 0.3s;
}
.bl_header_list02 .is-active > span::before {
  pointer-events: auto;
  width: calc(100% + 25px);
  background-color: #ffdd00;
} */
/* @media screen and (max-width: 767px) {
  .bl_header_list01,
  .bl_header_list02 {
    display: none;
  }
  .bl_header_list03 {
    font-size: 0;
    gap: 16px;

  }
  .bl_header_list03 svg {
    margin-right: 0;
  }
}
.bl_header_subList02 {
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(100%);
  padding: 40px;
  z-index: 1;
  opacity: 0;
  transition: all 0.3s;
  pointer-events: none;
}
.bl_header_subList02 .bl_subList02_inner {
  max-width: 900px;
  margin: 0 auto;
}
.bl_subList02_inner_nayami {
  display: flex;
  gap: 48px;
  justify-content: space-between;
}
.bl_subList02_heading {
  text-align: center;
  font-size: 18px;
  margin-bottom: 20px;
}
.bl_header_subList02 .bl_subList02_inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 0;
  font-size: 14px;
  text-align: center;
}
.bl_header_subList02 .bl_subList02_inner li {
  padding: 0;
  width: 142px;
}
@media screen and (max-width: 1000px) {
  .bl_header_subList02 .bl_subList02_inner li {
    width: 105px;
  }
  .bl_subList02_inner_nayami {
    gap: 20px;
  }
  .bl_subList02_heading {
    font-size: 16px;
  }
}
.bl_header_subList02 .bl_subList02_inner ul a {
  color: #222;
}
.bl_header_subList02 .bl_subList02_inner ul img {
  border-radius: 50%;
  margin-bottom: 2px;
}
.bl_header_subList02 .bl_subList02_inner li::after {
  display: none;
} */
/*
#header h2 a {
    display: block;
    float: left;
    width: 15px;
    height: 15px;
    overflow: hidden;
    margin-top: 10px;
    background: url("../images/header_rss.gif") no-repeat;
    text-indent: -9999px;
}

#header h2 a:hover {
    background-position: 0 -15px;
} */

/* fontChanger - 文字サイズ変更
-------------------------------------------------------------*/
#fontChanger {
  float: right;
  margin: 10px 20px 0 0;
}

#fontChanger h2 {
  display: block;
  float: left;
  margin-right: 5px;
  font-size: 13px;
}

#fontChanger .icon {
  float: left;
  line-height: 1;
}

#fontChanger .icon a {
  color: #ffffff;
  display: inline-block;
  margin-right: 2px;
  text-decoration: none;
  font-size: 12px !important;
  padding: 3px;
  line-height: 1;
  vertical-align: text-bottom;
}

#fontChanger .__FONT_CHANGER_BUTTON_S_OFF {
  background: #cccccc;
}

/* 小 OFF */
#fontChanger .__FONT_CHANGER_BUTTON_S_ON {
  background: #d21e21;
}

/* 小 ON */
#fontChanger .__FONT_CHANGER_BUTTON_M_OFF {
  background: #cccccc;
}

/* 中 OFF */
#fontChanger .__FONT_CHANGER_BUTTON_M_ON {
  background: #d21e21;
}

/* 中 ON */
#fontChanger .__FONT_CHANGER_BUTTON_L_OFF {
  background: #cccccc;
}

/* 中 OFF */
#fontChanger .__FONT_CHANGER_BUTTON_L_ON {
  background: #d21e21;
}

/* 大 ON */

/* language - 言語選択
-------------------------------------------------------------*/
#language {
  float: right;
  margin: 10px 20px 0 0;
}

#language h2 {
  display: block;
  float: left;
  margin-right: 5px;
  font-size: 13px;
}

#language p {
  float: left;
  margin-right: 5px;
  font-size: 75%;
}

/* search - 商品検索窓
-------------------------------------------------------------*/
.bl_headerSearch {
  position: relative;
  width: 467px;
  [name="keyword"] {
    background-color: #efefef;
    border: none;
    font-size: 14px;
    padding: 13px 10px 13px 52px;
    border-radius: 23px;
    color: #000;
  }
}
[name="keyword"]::placeholder {
  color: #000;
}
.bl_headerSearch [id="form"] {
  width: 100%;
}

.bl_headerSearch [type="submit"] {
  width: 24px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  aspect-ratio: 1;

  display: block;
  background: url(../images/icon/search.svg) no-repeat;
  background-size: 24px auto;
  text-indent: -9999px;
  background-position: center center;
  background-color: transparent;
}
.bl_headerSearch.bl_headerSearch__sp {
  display: none;
}
@media screen and (max-width: 960px) {
  .bl_headerSearch {
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 7vw);
  }
  .bl_headerSearch [name="keyword"] {
    padding: 9px 10px 9px 52px;
    font-size: 16px;
  }
  /* .bl_headerSearch {
    display: none;
  }
  .bl_headerSearch.bl_headerSearch__sp {
    display: block;
    width: 100%;
    padding: 0 20px;
    margin-bottom: 16px;
  }
  .bl_headerSearch [type="submit"] {
    right: 30px;
  } */
}

@media screen and (max-width: 767px) {
  .bl_headerSearch {
    width: calc(100% - 7.6vw);
  }
}
/* menu - メニュー
-------------------------------------------------------------*/
#menu {
  height: 40px;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

#menu .inner {
  display: block;
  width: 980px;
  margin: auto;
}

#menu ul {
  margin: 0 auto;
  width: 980px;
}

#menu ul:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#menu li {
  float: left;
}

#menu li a {
  display: block;
  height: 38px;
  width: 196px;
  text-decoration: none;
  border-left: 1px solid #cccccc;
  color: #252525;
  text-align: center;
  padding-top: 10px;
  font-size: 15px;
  font-weight: bold;
}

#menu li a:hover {
  background: #f1f1f1;
}

#menu li:last-child a {
  border-right: 1px solid #cccccc;
}

#menu .top_select,
a.top:hover {
  background: #f1f1f1;
}

#menu .guide_select,
a.guide:hover {
  background: #f1f1f1;
}

/* #menu .tokushou_select,
a.tokushou:hover {
    background: #F1F1F1;
} */

#menu .company_select,
a.company:hover {
  background: #f1f1f1;
}

#menu .apply_select,
a.apply:hover {
  background: #f1f1f1;
}

/* shiborikomi - 絞り込み検索
-------------------------------------------------------------*/
#shiborikomi {
  width: 980px;
  margin: 0 auto 10px;
  padding: 5px 10px;
  background: #f1f1f1;
  font-size: 80%;
}

#shiborikomi .select {
  padding: 4px 3px;
  background: #c00;
  color: #fff;
  font-weight: bold;
}

#shiborikomi a {
  padding: 4px 3px;
  color: #666;
  font-weight: bold;
  text-decoration: none;
}

#shiborikomi a:hover {
  background: #ccc;
}

/* =================================================================
5.サイドバー
使用ファイル：common/sidebar.xhtml
=================================================================*/
/* login - ログイン枠
-------------------------------------------------------------*/
/* #login {
    width: 190px;
    margin-bottom: 60px;
}

#login h2 {
    background-image: url("../images/icon/black/icon_login.png");
    background-size: 17px 17px;
    background-repeat: no-repeat;
    background-position: left 1px;
    padding-left: 19px;
    margin-bottom: 10px;
    font-size: 15px;
}

#login .account h2 {
    background-image: url("../images/icon/black/icon_account.png");
    margin-bottom: 0px;
}

#login .account span {
    font-weight: bold;
}

#login .buttonarea {
    margin-bottom: 10px;
}

#login .buttonarea:after {
    content: "";
    clear: both;
    display: block;
}


#login .button {
    width: 100px;
    margin: 10px auto;
}

#login p {
    margin: 0 5px 5px;
    font-size: 90%;
}

#login .name {
    margin: 0 0 10px;
}

#login .name strong {
    font-size: 20px;
}

#login .error {
    clear: both;
    margin: 5px 10px;
    color: #C00;
    font-weight: bold;
    text-align: center;
}

#login .point {
    color: #C00;
} */

/* cart - 買い物かごの中身確認・買い物かごへ
-------------------------------------------------------------*/
#cart {
  width: 190px;
  margin-bottom: 60px;
}

#cart h2 {
  background-image: url("../images/icon/black/icon_cart.png");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: left 1px;
  padding-left: 19px;
  margin-bottom: 10px;
  font-size: 15px;
}

#cart h3 {
  float: left;
  margin: 0 0 5px 5px;
  font-size: 90%;
  font-weight: normal;
}

#cart .box:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#cart .box p {
  float: right;
  margin: 0 5px 5px 0;
  color: #c00;
  font-size: 90%;
  font-weight: bold;
  text-align: right;
}

#cart a {
  width: 140px;
  margin: 10px auto 0;
}

/* category - 商品カテゴリ
-------------------------------------------------------------*/
#category {
  width: 190px;
  margin-bottom: 60px;
}

#category h2 {
  background-image: url("../images/icon/black/icon_category.png");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: left 1px;
  padding-left: 19px;
  margin-bottom: 10px;
  font-size: 15px;
}

#category li {
  display: inline;
}

#category .select {
  background: url("../images/marker_on.gif") 10px 10px no-repeat #c00;
  color: #fff;
  text-decoration: none;
  display: block;
  padding: 5px 6px 6px 25px;
}

#category li a {
  display: block;
  padding: 5px 5px 5px 25px;
  background: url("../images/marker.gif") 10px 10px no-repeat;

  font-size: 90%;
  text-decoration: none;
}

#category li a:link {
  display: block;
  overflow: hidden;
}

#category li a:hover {
  background: url("../images/marker.gif") 10px 10px no-repeat #ccc;
  color: #fff;
  text-decoration: underline;
}

/* present - プレゼント枠
-------------------------------------------------------------*/
#present {
  width: 190px;
  margin-bottom: 60px;
}

#present h2 {
  background-image: url("../images/icon/black/icon_present.png");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: left 1px;
  padding-left: 19px;
  margin-bottom: 10px;
  font-size: 15px;
}

#present h3 {
  display: block;
  padding: 0 10px 0 18px;
  background: url("../images/marker.gif") 6px 6px no-repeat;
  font-size: 90%;
  font-weight: normal;
}

#present .period {
  margin: 0 5px 10px 15px;
  font-size: 90%;
}

#present .all {
  margin: 10px 0px 0px 0px;
  text-align: right;
  font-size: 80%;
}

/* magazine - メールマガジン枠
-------------------------------------------------------------*/
#magazine {
  width: 190px;
  margin-bottom: 60px;
}

#magazine h2 {
  background-image: url("../images/icon/black/icon_mail.png");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: left 1px;
  padding-left: 19px;
  margin-bottom: 10px;
  font-size: 15px;
}

#magazine h3 {
  font-size: 13px;
}

#magazine .text {
  display: block;
  width: 180px;
  height: 25px;
  margin: 0 auto;
}

#magazine .select_area {
  margin-bottom: 10px;
}

#magazine label {
  font-size: 13px;
}

#magazine .radio {
  margin: 5px 2px 5px 5px;
}

#magazine p {
  margin: 0 5px 2px;
  font-size: 80%;
}

#magazine .error {
  margin: 5px;
  color: #c00;
  font-weight: bold;
}

#magazine .free {
  margin: 10px auto;
}

#magazine .buttonarea:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#magazine .buttonarea li {
  float: left;
  width: 50%;
  text-align: center;
}

#magazine .buttonarea li input {
  display: inline-block;
  width: 50px;
}

/* coupon - クーポン
-------------------------------------------------------------*/
/* #coupon {
    width: 190px;
    margin-bottom: 60px;
}

#coupon h2 {
    background-image: url("../images/icon/black/icon_coupon.png");
    background-size: 17px 17px;
    background-repeat: no-repeat;
    background-position: left 1px;
    padding-left: 19px;
    margin-bottom: 10px;
    font-size: 15px;
}

#coupon p {
    margin: 0 10px;
    font-size: 80%;
}

#coupon img {
    display: block;
    margin: 0 auto;
} */

#subwindow .images:has([src*="noimage.jpg"]) {
  display: none;
}

/* calendar - カレンダー
-------------------------------------------------------------*/
#calendar {
  width: 190px;
  margin-bottom: 10px;
}

#calendar h2 {
  background-image: url("../images/icon/black/icon_calendar.png");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: left 1px;
  padding-left: 19px;
  margin-bottom: 10px;
  font-size: 15px;
}

#calendar p {
  margin: 0 5px 10px;
  font-size: 80%;
}

#calendar span.day_color1 {
  color: #ff7f7e;
}

#SIDE_CALENDAR {
  width: 190px;
  overflow: hidden;
  margin: 0 auto;
  font-size: 10px;
}

#ui-datepicker-div {
  width: 13em !important;
  border: 1px solid #aaa !important;
  display: none;
}

#ui-datepicker-div .ui-datepicker-header {
  background: #ccc repeat-x scroll 50% 50% !important;
  width: 100% !important;
}

#ui-datepicker-div table.ui-datepicker-calendar {
  width: 100% !important;
}

#ui-datepicker-div select.ui-datepicker-year,
#ui-datepicker-div select.ui-datepicker-month {
  width: 40% !important;
  border: 1px solid #e0e0e0;
  height: 23px;
}

.ui-widget-content {
  border: 1px solid #fff;
}

.ui-datepicker {
  padding: 1px;
}

.ui-datepicker-title {
  font-size: 12px;
}

.ui-widget-header {
  width: 178px;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: solid 1px #ccc;
  border-radius: 0;
  background: none;
}

.ui-datepicker table {
  width: 178px;
}

.ui-datepicker th,
.ui-datepicker td {
  width: 10px !important;
  margin: 0;
  padding: 1px;
  border: none;
}

.ui-datepicker th a,
.ui-datepicker td a {
  padding: 1px;
  border: none !important;
}

.ui-datepicker th div,
.ui-datepicker td div {
  padding: 1px;
  border: none !important;
}

.ui-datepicker-week-end {
  color: #c00;
}

.ui-datepicker .day_color1 .ui-state-default {
  background-image: none;
  background-color: #ff7f7e;
  color: #c00;
}

.ui-datepicker .day_color2 .ui-state-default {
  background-image: none;
  background-color: #d7ffed;
}

.ui-datepicker .day_color3 .ui-state-default {
  background-image: none;
  background-color: #ddf;
}

.ui-datepicker .day_color4 .ui-state-default {
  background-image: none;
  background-color: #ffd;
}

.ui-datepicker .day_color5 .ui-state-default {
  background-image: none;
  background-color: #e7ffff;
}

.ui-datepicker .day_color6 .ui-state-default {
  background-image: none;
  background-color: #f0d6ff;
}

img.ui-datepicker-trigger {
  vertical-align: middle !important;
  padding-left: 5px !important;
}

/* jquery-ui-1.8.4.custom.css　上書き用（カレンダー）
-------------------------------------------------------------*/
.ui-datepicker .ui-datepicker-header {
  padding: 0.3em 0;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  margin: 2px;
  padding: 2px;
  border: none;
  background: #e6e6e6;
}

/* 日付背景 */
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  background: #ffffff;
}

/* 選択した日付背景 */

/* ホバー時 */
.ui-datepicker-next.ui-corner-all.ui-state-hover.ui-datepicker-next-hover,
.ui-datepicker-prev.ui-corner-all.ui-state-hover.ui-datepicker-prev-hover,
.ui-datepicker-next.ui-corner-all.ui-state-disabled.ui-state-hover.ui-datepicker-next-hover,
.ui-datepicker-prev.ui-corner-all.ui-state-disabled.ui-state-hover.ui-datepicker-prev-hover {
  box-sizing: border-box;
  background: none;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
  left: 2px;
}

.ui-datepicker .ui-datepicker-next-hover {
  right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover span.ui-icon-circle-triangle-w,
.ui-datepicker .ui-datepicker-next-hover span.ui-icon-circle-triangle-e,
.ui-state-disabled span.ui-icon-circle-triangle-w,
.ui-state-disabled span.ui-icon-circle-triangle-e {
  background-image: url("./smoothness/images/ui-icons_454545_256x240.png");
  opacity: 0.75;
  filter: alpha(opacity=75);
  -ms-filter: "alpha(opacity=75)";
  -khtml-opacity: 0.75;
  -moz-opacity: 0.75;
}

/* =================================================================
6.extファイル用
使用ファイル：ext/company.html
　　　　　　　ext/tokushou.html
　　　　　　　ext/guide.html
			　ext/social_provider.xhtml
=================================================================*/
#ext h3 {
  display: block;
  font-size: 110%;
  margin: 30px 10px 10px;
  border-bottom: 1px dashed #cccccc;
  padding-bottom: 5px;
}

#ext th {
  text-align: left;
}

#ext ul {
  padding-bottom: 10px;
}

#ext li {
  list-style: disc;
  margin: 5px 40px;
  font-size: 80%;
}

#ext #sitemap ul:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#ext #sitemap li {
  width: 216px;
  float: left;
  list-style-type: none;
  margin: 5px 20px;
}
.bl_privacyLayout,
.bl_guideLayout {
  margin-bottom: 132px;
}
.bl_privacyLayout h4,
.bl_guideLayout h4 {
  font-size: 16px;
  font-weight: 600;
  margin-top: 16px;
  margin-bottom: 8px;
}
.bl_privacyLayout p {
  margin-bottom: 8px;
}
.bl_guideLayout p {
  margin-bottom: 28px;
}
.bl_privacyLayout .bl_textLead {
  margin-bottom: 8px;
}
.bl_privacySection,
.bl_guideLayout {
  margin-bottom: 32px;
}
.bl_privacySection ol li,
.bl_guideLayout ol li {
  counter-increment: numberList;
  position: relative;
  padding-left: 1.4em;
}
.bl_privacySection ol li:not(:last-child),
.bl_guideLayout ol li:not(:last-child) {
  margin-bottom: 16px;
}
.bl_privacySection ol li::before,
.bl_guideLayout ol li::before {
  content: counter(numberList) ".";
  position: absolute;
  left: 0;
  top: 0.2em;
  font-weight: bold;
}

.bl_privacySection ul li,
.bl_guideLayout ul li {
  position: relative;
  padding-left: 1em;
}
.bl_guideLayout ul {
  margin-bottom: 32px;
}
.bl_privacySection ul li::before,
.bl_guideLayout ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  aspect-ratio: 1;
  width: 6px;
  border-radius: 50%;
  background-color: #737373;
}
.bl_privacySection ul li:not(:last-child),
.bl_guideLayout ul li:not(:last-child) {
  margin-bottom: 16px;
}
.bl_guideLayout small {
  font-size: 14px;
  margin-bottom: 8px;
  display: block;
  margin-top: 8px;
}
.bl_guideLayout small::before {
  content: "※";
}

.bl_guideLayout .bl_btn__border {
  margin-left: 0;
  margin-top: 32px;
}

.bl_guideSection {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .bl_guideSection {
    margin-bottom: 40px;
  }
}
.bl_guideSection img {
  margin: 32px 0;
  max-width: 100%;
}

.bl_pageNav {
  gap: 12px;
  display: flex;
  list-style: none;
  margin-bottom: 80px;
  flex-wrap: wrap;
}
.bl_pageNav .bl_pageNav_item {
  flex: 1;
  min-width: 215px;
}
.bl_pageNav .bl_pageNav_item .bl_btnYellow {
  width: 100%;
}
.bl_pageNav a {
  display: block;
  border: 1px solid #d5d5d5;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  padding: 15px 10px;
  border-radius: 30px;
}
@media screen and (max-width: 767px) {
  .bl_pageNav {
    margin-bottom: 40px;
  }
  .bl_pageNav a {
    font-size: 16px;
    padding: 10px 10px;
  }
}
.bl_pageNav a:hover {
  background-color: #ffdd00;
  opacity: 1;
}
.bl_textLead {
  margin-bottom: 32px;
}

.bl_faqList > div:not(:last-child) {
  margin-bottom: 32px;
}

.bl_faqList dt {
  font-weight: bold;
  margin-bottom: 16px;
}
.bl_faqList dt,
.bl_faqList dd {
  position: relative;
  padding-left: 40px;
}
.bl_faqList dt::before {
  content: "Q";
  background-color: #000;
  color: #f5d729;
}
.bl_faqList dd::before {
  content: "A";
  background-color: #f5d729;
  color: #000;
}
.bl_faqList dt::before,
.bl_faqList dd::before {
  width: 26px;
  display: flex;
  font-weight: bold;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  border-radius: 50%;
  font-family: "Roboto", sans-serif;
  position: absolute;
  left: 0;
  top: 0;
}
.bl_faqList dd p,
.bl_faqList dd ol,
.bl_faqList dd ul {
  margin-bottom: 12px;
}

/* social_provider.xhtml
-------------------------------------------------------------*/
#ext.social_provider tr th {
  background: #fff;
}

#ext.social_provider tr th a {
  text-decoration: none;
}

#ext.social_provider tr.title th {
  background: #f6f6f6;
}

#ext.social_provider th.service {
  width: 220px;
}

#ext.social_provider th div {
  width: 220px;
  height: 44px;
  font-size: 14px;
  display: block;
}

#ext.social_provider th div p {
  padding: 14px 0 14px 25px;
  border: 1px solid #cdcdcd;
  border-left: 0px;
  margin: 0 0 0 53px;
  display: block;
  background: #fff;
  line-height: 1;
  font-size: 14px;
  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;

  -moz-border-radius-topright: 3px;

  -moz-border-radius-bottomright: 3px;
}

#ext.social_provider #social_plus .associate {
  display: inline-block;
  min-width: inherit;
  width: 100px;
  font-size: 14px;
}

#ext.social_provider #social_plus tr th {
  background: #fff;
}

#ext.social_provider #social_plus tr th a {
  text-decoration: none;
}

#ext.social_provider #social_plus td {
  vertical-align: middle;
}

#ext.social_provider #social_plus tr.title th {
  background: #f6f6f6;
}

#ext.social_provider #social_plus th.service {
  width: 220px;
}

#ext.social_provider #social_plus th div {
  width: 220px;
  height: 44px;
  font-size: 14px;
  display: block;
}

#ext.social_provider #social_plus th div p {
  padding: 14px 0 14px 25px;
  border: 1px solid #cdcdcd;
  border-left: 0px;
  margin: 0 0 0 51px;
  display: block;
  line-height: 1;
  font-size: 14px;
}

#ext.social_provider #social_plus th.yahoo div {
  background: url("../images/social_yahoo.png") no-repeat;
  color: #e71017;
}

#ext.social_provider #social_plus th.facebook div {
  background: url("../images/social_facebook.png") no-repeat;
  color: #3b5998;
}

#ext.social_provider #social_plus th.twitter div {
  background: url("../images/social_twitter.png") no-repeat;
  color: #55acee;
}

#ext.social_provider #social_plus th.google div {
  background: url("../images/social_google.png") no-repeat;
  color: #dc4e41;
}

#ext.social_provider #social_plus th.line div {
  background: url("../images/social_line.png") no-repeat;
  color: #00b300;
}

#ext.social_provider #social_plus th.apple_id div p {
  padding: 18px 0px 19px 25px;
}

#ext.social_provider #social_plus .alignment th div p {
  border: none;
  margin: 0 0 0 53px;
}

#ext.social_provider #social_plus .alignment th.apple_id div {
  background: url("../images/social_apple.png") no-repeat;
  color: #000;
  height: 53px;
}

#ext.social_provider th.yahoo div.off {
  background: url("../images/social_yahoo_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.facebook div.off {
  background: url("../images/social_facebook_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.twitter div.off {
  background: url("../images/social_twitter_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.google div.off {
  background: url("../images/social_google_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.mixi div.off {
  background: url("../images/social_mixi_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.line div.off {
  background: url("../images/social_line_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider th.paypal div.off {
  background: url("../images/social_paypal_off.png") no-repeat;
  color: #cdcdcd;
}

#ext.social_provider td {
  vertical-align: middle;
}

/* =================================================================
7.トップページ
使用ファイル：top.xhtml
=================================================================*/
/* mainvisual - メインビジュアル
-------------------------------------------------------------*/
/* #mainvisual,
#mainvisual_sp {
  padding: 2vw 0 3.1vw;
}

#mainbottom {
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  #mainbottom {
    display: none;
  }
}
#mainbottom .swiper-wrapper:not(:has(.swiper-slide:nth-child(5))) {
  justify-content: center;
  transform: none !important;
}
#mainbottom:not(:has(.swiper-slide:nth-child(5))) .swiper-button-prev,
#mainbottom:not(:has(.swiper-slide:nth-child(5))) .swiper-button-next {
  display: none !important;
}

#mainvisual img,
#mainvisual_sp img,
#mainbottom img {
  display: block;
  width: 100%;
  height: auto;
}
#mainvisual .swiper-slide-active {
  transform: scale(1.12);
}
@media screen and (min-width: 1750px) {
  #mainvisual .swiper-slide-active {
    transform: scale(1.05);
  }
}

@media screen and (max-width: 767px) {
  #mainvisual_sp .swiper-slide-active {
    transform: scale(1.08);
  }
} */
/* #mainvisual .swiper-slide,
#mainvisual_sp .swiper-slide {
  transition: all 0.3s;
}

#mainvisual .swiper-pagination,
#mainvisual_sp .swiper-pagination {
  position: static;
  margin-top: 3.1vw;
}
#mainvisual .swiper-pagination .swiper-pagination-bullet-active,
#mainvisual_sp .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #000;
} */
/* #mainbottomWrapper {
  overflow: hidden;
  position: relative;
}
#mainbottom {
  max-width: 78%;
  margin: 0 auto 56px;
  overflow: visible;
  position: static;
} */
.bl_layout_detailSpecial .swiper-button-prev,
.bl_layout_detailSpecial .swiper-button-next,
.check_swiperParent .swiper-button-prev,
.check_swiperParent .swiper-button-next,
.recommend_swiperParent .swiper-button-prev,
.recommend_swiperParent .swiper-button-next,
#main_box .swiper-button-prev,
#main_box .swiper-button-next,
.bl_topBox11 .swiper-button-prev,
.bl_topBox11 .swiper-button-next,
.bl_osusumeSlider .swiper-button-prev,
.bl_osusumeSlider .swiper-button-next,
#rank_swiper .swiper-button-prev,
#rank_swiper .swiper-button-next {
  position: absolute;
  aspect-ratio: 1;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: rgba(255, 221, 0, 0.8);
  /* background-color: rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.8); */
}

.bl_layout_detailSpecial .swiper-button-prev,
.bl_layout_detailSpecial .swiper-button-next {
  background-color: rgba(255, 255, 255, 0.8);
}

@media screen and (max-width: 767px) {
  .bl_layout_detailSpecial .swiper-button-prev,
  .bl_layout_detailSpecial .swiper-button-next {
    display: none;
  }
  .bl_topBox11 .swiper-button-prev,
  .bl_topBox11 .swiper-button-next,
  #main_box .swiper-button-prev,
  #main_box .swiper-button-next {
    width: 30px;
    height: 30px;
  }
  /* .bl_topBox11 .swiper-button-prev svg,
  .bl_topBox11 .swiper-button-next svg{
      width: 10px;
  } */
}
#mainSubImg .swiper-button-prev,
#mainSubImg .swiper-button-next {
  position: absolute;
  aspect-ratio: 1;
  width: 24px;
  height: 24px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.8);
}

.bl_layout_detailSpecial .swiper-button-prev,
.bl_layout_detailSpecial .swiper-button-next {
  transform: translateY(-50%);
  top: 50%;
}
#mainSubImg .swiper-button-prev,
#mainSubImg .swiper-button-next {
  transform: translateY(50%);
  top: 50%;
}
#rank_swiper .swiper-button-prev,
#rank_swiper .swiper-button-next {
  top: 100px;
}
#rank_swiper .swiper-button-prev svg,
#rank_swiper .swiper-button-next svg,
.check_swiperParent .swiper-button-prev svg,
.check_swiperParent .swiper-button-next svg,
.recommend_swiperParent .swiper-button-prev svg,
.recommend_swiperParent .swiper-button-next svg,
#main_box .swiper-button-prev svg,
#main_box .swiper-button-next svg,
.bl_topBox11 .swiper-button-prev svg,
.bl_topBox11 .swiper-button-next svg,
.bl_layout_detailSpecial .swiper-button-prev svg,
.bl_layout_detailSpecial .swiper-button-next svg,
.bl_osusumeSlider .swiper-button-prev svg,
.bl_osusumeSlider .swiper-button-next svg {
  stroke: #000;
  width: 12px;
  height: 12px;
}
@media screen and (max-width: 767px) {
  .bl_topBox11 .swiper-button-prev svg,
  .bl_topBox11 .swiper-button-next svg,
  #main_box .swiper-button-prev svg,
  #main_box .swiper-button-next svg {
    width: 8px;
    height: 8px;
  }
}

#rank_swiper .swiper-button-next svg,
.check_swiperParent .swiper-button-next svg,
.recommend_swiperParent .swiper-button-next svg,
#main_box .swiper-button-next svg,
.bl_topBox11 .swiper-button-next svg,
.bl_layout_detailSpecial .swiper-button-next svg {
  transform: rotate(45deg);
}
#rank_swiper .swiper-button-prev svg,
.check_swiperParent .swiper-button-prev svg,
.recommend_swiperParent .swiper-button-prev svg,
#main_box .swiper-button-prev svg,
.bl_topBox11 .swiper-button-prev svg,
.bl_osusumeSlider .swiper-button-prev svg,
.bl_layout_detailSpecial .swiper-button-prev svg {
  transform: rotate(-135deg);
}
.bl_layout_detailSpecial .swiper-button-prev::after,
.bl_layout_detailSpecial .swiper-button-next::after,
#rank_swiper .swiper-button-prev::after,
#rank_swiper .swiper-button-next::after,
.check_swiperParent .swiper-button-prev::after,
.check_swiperParent .swiper-button-next::after,
.recommend_swiperParent .swiper-button-prev::after,
.recommend_swiperParent .swiper-button-next::after,
#main_box .swiper-button-prev::after,
#main_box .swiper-button-next::after,
.bl_topBox11 .swiper-button-prev::after,
.bl_topBox11 .swiper-button-next::after,
.bl_osusumeSlider .swiper-button-prev::after,
.bl_osusumeSlider .swiper-button-next::after {
  display: none;
}
#mainSubImg .swiper-button-prev::after,
#mainSubImg .swiper-button-next::after {
  width: 5px;
  height: 5px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
}
.bl_layout_detailSpecial .swiper-button-prev #mainSubImg .swiper-button-prev,
#rank_swiper .swiper-button-prev {
  left: 0;
}

.check_swiperParent .swiper-button-prev,
.recommend_swiperParent .swiper-button-prev  {
  left: 0px;
  top: 45%;
}
.check_swiperParent .swiper-button-next,
.recommend_swiperParent .swiper-button-next {
  right: 0px;
  top: 45%;
}
.bl_topBox11 .swiper-button-prev {
  left: -50px;
  top: 48%;
}
.bl_topBox11 .swiper-button-next {
  right: -50px;
  top: 48%;
}

.bl_layout_detailRecommendation .swiper-button-prev,
.bl_layout_detailRecommendation .swiper-button-next {
  top: 35%;
}
.bl_osusumeSlider .swiper-button-prev {
  left: -50px;
  top: 48%;
}
.bl_osusumeSlider .swiper-button-next {
  right: -50px;
  top: 48%;
}
@media screen and (max-width: 767px) {
  .bl_topBox11 .swiper-button-prev {
    left: -15px;
    top: 72%;
  }
  .bl_topBox11 .swiper-button-next {
    right: -15px;
    top: 72%;
  }
}
.bl_layout_detailSpecial .swiper-button-prev::after,
#mainSubImg .swiper-button-prev::after,
#rank_swiper .swiper-button-prev::after {
  transform: rotate(225deg);
}
.bl_layout_detailSpecial .swiper-button-next::after,
#mainSubImg .swiper-button-next::after,
#rank_swiper .swiper-button-next::after {
  transform: rotate(45deg);
}
.bl_layout_detailSpecial .swiper-button-next #mainSubImg .swiper-button-next,
#rank_swiper .swiper-button-next {
  right: 5px;
}
/*
#mainbottom_sp {
  display: none;
  padding: 0 20px;
  margin-top: 20px;
  margin-bottom: 40px;
}
#mainbottom_sp .bl_mainbottomUnit {
  display: flex;
  justify-content: space-between;
  gap: 8px 0;
  flex-wrap: wrap;
}
#mainbottom_sp.is-odd .bl_mainbottomItem:first-child {
  width: 100%;
}

#mainbottom_sp.is-odd #mainbottom_sp_slide {
  display: none;
}

#mainbottom_sp .bl_mainbottomItem {
  width: 49%;
}
#mainbottom_sp .bl_mainbottomItem img {
  width: 100%;
  display: block;
}
@media screen and (max-width: 767px) {
  #mainbottom_sp {
    display: block;
  }
}
#mainbottom_sp_slide {
  margin-bottom: 15px;
}
#mainbottom_sp_slide .swiper-slide img {
  width: 100%;
}
#mainbottom_sp_slide .swiper-pagination {
  position: static;
}
#mainbottom_sp_slide .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #000;
} */

.bl_layout {
  padding-left: 20px;
  padding: 77px 20px 108px 20px;
  position: relative;
}
.bl_layout_detailSpecial {
  overflow: hidden;
  margin-bottom: 60px;
}

.bl_layout_detailSpecial .bl_centerMessage {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .bl_layout_detailSpecial {
    margin-bottom: 30px;
  }
  .bl_layout_detailSpecial .bl_centerMessage {
    margin-top: 10px;
  }
}
/* .bl_layout_recommend, */
.bl_layout_special,
.bl_layout_detailSpecial {
  background-color: #ffdd00;
}
.bl_layout_special {
  padding-top: 60px;
  padding-bottom: 42px;
  margin-bottom: 60px;
}

/* .bl_layout_rank {
  background-color: #373737;
  color: #fff;
  padding-right: 0;
  padding-left: 0;
  padding-top: 82px;
  padding-bottom: 192px;
} */

@media screen and (max-width: 960px) {
  .bl_layout_special {
    padding: 33px 25px 37px;
    margin-bottom: 36px;
  }
}

@media screen and (max-width: 767px) {
  .bl_layout {
    padding-top: 40px;
    padding-bottom: 35px;
  }
  .bl_layout_recommend {
    padding-top: 84vw;
    padding-bottom: 35px;
  }
  /* .bl_layout_rank {
    padding-top: 84vw;
    padding-bottom: 40px;
  } */
  .bl_layout_special {
    padding: 30px 15px 35px;
  }
}
.bl_layout_detailSpecial {
  padding-top: 60px;
  padding-bottom: 58px;
}
.bl_layout_detailRecommendation {
  padding-top: 60px;
  padding-bottom: 42px;
}
@media screen and (max-width: 767px) {
  .bl_layout_detailSpecial {
    padding-top: 30px;
    padding-bottom: 35px;
  }
  .bl_layout_detailRecommendation {
    padding-top: 30px;
    padding-bottom: 20px;
  }
}

/*
#swiper_recommend,
#swiper_recommend_sp {
  width: 43.5vw;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
}

#swiper_recommend .swiper-slide > div,
#swiper_recommend_sp .swiper-slide > div {
  height: 100%;
}

@media screen and (max-width: 767px) {
  #swiper_recommend,
  #swiper_recommend_sp {
    width: 100%;
    height: auto;
  }
}
#swiper_recommend .swiper-wrapper,
#swiper_recommend .swiper-wrapper .swiper-slide,
#swiper_recommend_sp .swiper-wrapper,
#swiper_recommend_sp .swiper-wrapper .swiper-slide {
  height: 100%;
}
#swiper_recommend .swiper-wrapper .swiper-slide img,
#swiper_recommend_sp .swiper-wrapper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
} */

.bl_topRecommendList .dv_recommend {
  grid-template-columns: repeat(auto-fit, 174px);
  gap: 32px 16px;
  display: grid;
  width: 555px;
  max-width: 52vw;
}
.dv_recommend .dv_rc_header,
.dv_recommend .dv_rc_title,
.dv_recommend .dv_rc_footer,
.dv_recommend .dv_rc_price {
  display: none;
}

.dv_recommend .dv_rc_img {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  width: 100%;
  margin-bottom: 10px;
}
.dv_recommend .dv_rc_img img {
  max-width: 90%;
  max-height: 90%;
}
@media screen and (max-width: 767px) {
  .bl_topRecommendList .dv_recommend {
    grid-template-columns: repeat(2, 1fr);
    max-width: 100%;
    gap: 32px 8px;
    width: 100%;
  }
}

.bl_horizontalRecommendList .dv_recommend {
  display: flex;
  flex-wrap: wrap;
  gap: 25px 16px;
  overflow-x: auto;
}

.bl_horizontalRecommendList .dv_recommend .dv_rc_items {
  width: 174px;
}
@media screen and (max-width: 767px) {
  .bl_horizontalRecommendList .dv_recommend {
    gap: 30px 10px;
  }
  .bl_horizontalRecommendList .dv_recommend .dv_rc_items {
    width: calc(50% - 5px);
  }
}
.bl_layout_detailRecommendation {
  padding-left: 0;
  padding-right: 0;
}
.bl_mainbox {
  margin: 0 auto;
  max-width: 1124px;
}
.bl_mainbox__connection{
  max-width: 1220px;
}
.bl_mainbox02 {
  margin: 0 auto;
  max-width: 1240px;
}
/* .bl_mainbox_inner{
    display: grid;
    grid-template-columns: 57.8% 1fr;
} */
.bl_rankbox {
  padding-left: 50vw;
}
@media screen and (max-width: 767px) {
  .bl_rankbox {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.el_lv2Heading.el_lv2Heading__yellow::after {
  background-color: #ffdd00;
}

/* .el_lv2Title {
  font-size: 32px;
  font-weight: bold;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 25px;
} */
.el_lv2Heading {
  font-size: 32px;
  font-weight: bold;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 40px;
}
.el_lv2Heading_font24 {
  font-size: 24px;
}
.el_lv2Heading::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
}
.el_lv3Heading {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
  /* .el_lv2Title {
    font-size: 24px;
    padding-bottom: 0;
    margin-bottom: 50px;
  } */
  .el_lv2Heading {
    font-size: 24px;
    margin-bottom: 24px;
  }
  /* .el_lv2Heading::after {
    width: 48px;
    height: 3px;
  } */
  .el_lv3Heading {
    font-size: 18px;
  }
}

.el_simpleHeading {
  font-size: 32px;
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .el_simpleHeading {
    font-size: 24px;
  }
}
.bl_layoutHeader {
  display: flex;
  gap: 62px;
}

.bl_layoutHeader div {
  padding-top: 20px;
}
@media screen and (max-width: 767px) {
  .bl_layoutHeader {
    margin-bottom: 24px;
  }
  .bl_layoutHeader div {
    padding-top: 0px;
  }
}

.bl_recommendList {
  grid-template-columns: repeat(auto-fit, 174px);
  gap: 32px 16px;
  display: grid;
  width: 555px;
  max-width: 52vw;
}
@media screen and (max-width: 767px) {
  .bl_recommendList {
    grid-template-columns: repeat(2, 1fr);
    max-width: 100%;
    gap: 32px 8px;
    width: 100%;
  }
  .bl_layoutHeader {
    flex-direction: column;
    gap: 62px;
  }
}

.bl_recommendItem_imgWrapper {
  width: 174px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  margin-bottom: 12px;
}
@media screen and (max-width: 767px) {
  .bl_recommendItem_imgWrapper {
    width: auto;
  }
}
.bl_recommendItem_imgWrapper img {
  max-width: 90%;
  max-height: 90%;
}
.bl_itembox01_img_box {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  width: 190px;
  height:190px;
  margin-bottom: 10px;
  /* border-radius: 4px; */
}
#osusume_swiper .bl_itembox01_img_box {
  background-color: #f7f7f7;
}
@media screen and (max-width: 960px) {
  .bl_itembox01_img_box {
    width: 165px;
     height:165px;
  }
}

.bl_itembox01_img_box img {
  max-width: 90%;
  max-height: 90%;
}
.bl_itembox01_badge {
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  padding: 0 6px;
  background-color: #f27186;
  width: fit-content;
  margin-top: 10px;

  color: #fff;
}

.bl_itembox01_number {
  font-weight: bold;
  /* font-family: "Roboto", sans-serif; */
  position: absolute;
  color: #000;
  font-size: 15px;
  text-align: center;
  left: 14px;
  top: 10px;
  width: 30px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.bl_itembox01:nth-child(-n + 3) .bl_itembox01_number {
  background-color: #ffdd00;
}
.bl_itembox01:nth-child(n + 4) .bl_itembox01_number {
  background-color: #d9d9d9;
}
#rank_swiper {
  margin-bottom: 52px;
}
.bl_itembox01,
#rank_swiper .bl_itembox01,
#check_swiper .bl_itembox01,
#osusume_swiper .bl_itembox01,
#recommend_swiper .bl_itembox01 {
  position: relative;
  width: 190px;
  flex-shrink: 0;
}
@media screen and (max-width: 960px) {
  .bl_itembox01,
  #rank_swiper .bl_itembox01,
  #check_swiper .bl_itembox01,
  #osusume_swiper .bl_itembox01,
  #recommend_swiper .bl_itembox01 {
    width: 165px;
  }
}

@media screen and (max-width: 767px) {
  #rank_swiper {
    margin-bottom: 32px;
  }
  #rank_swiper .swiper-button-prev,
  #rank_swiper .swiper-button-next,
  .check_swiperParent .swiper-button-prev,
  .check_swiperParent .swiper-button-next,
  .recommend_swiperParent .swiper-button-prev,
  .recommend_swiperParent .swiper-button-next {
    display: none;
  }
  #rank_swiper .swiper-wrapper,
  .check_swiperParent .swiper-wrapper,
  .recommend_swiperParent .swiper-wrapper {
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 32px 0;
  }
  #rank_swiper .bl_itembox01,
  #check_swiper .bl_itembox01,
  #recommend_swiper .bl_itembox01 {
    width: 48.5%;
  }
  .bl_itembox01 .bl_itembox01_img_box,
  .check_swiper .bl_itembox01_img_box,
  .recommend_swiper .bl_itembox01_img_box {
    width: 100%;
  }

  #rank_swiper .bl_itembox01:nth-child(n + 5) {
    display: none;
  }
  #osusume_swiper .bl_itembox01 {
    width: 161px;
  }
}
.bl_itembox01_heading {
  min-height: 4.5em;
  margin-bottom: 8px;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
@media screen and (max-width: 767px) {
  .bl_itembox01_heading {
    font-size: 12px;
  }
}

.bl_price__hontai {
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .bl_price {
    font-size: 13px;
  }
  .bl_price__hontai {
    font-size: 18px;
  }
}
.bl_price__hontai .bl_price_heading {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .bl_price__hontai .bl_price_heading {
    font-size: 13px;
  }
}

.bl_price__zeikomi {
  font-size: 14px;
}

#rank_swiper .swiper-button-disabled,
#check_swiper .swiper-button-disabled {
  display: none;
}

#main_box .swiper-button-disabled {
  background-color: #fff;
  opacity: 1;
}
.bl_btn {
  border-radius: 35px;
}
.bl_btn,
a.bl_btn {
  cursor: pointer;
  width: 310px;
  background-color: #fff;
  display: block;
  text-align: center;
  padding: 16px 0;
  position: relative;
  color: #000;
  font-weight: 500;
  max-width: 100%;
  font-size: 16px;
}

.bl_btn:hover,
a.bl_btn:hover {
  opacity: 1;
  background-color: #f2f2f2;
}
.bl_btn.not_click,
a.bl_btn.not_click {
  background-color: #d5d5d5;
  border-color: #d5d5d5;
  color: #737373;
  cursor: default;
  pointer-events: none;
}
.bl_btn__border {
  border: 1px solid #000;
  margin-left: auto;
  margin-right: auto;
}
.bl_btn__border_innerLink a {
  border: 1px solid #000;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
  border-radius: 30px;
  width: 310px;
  background-color: #fff;
  display: block;
  text-align: center;
  padding: 16px 0;
  position: relative;
  color: #000;
  font-weight: 500;
  max-width: 100%;
  font-size: 16px;
}

.bl_btn__border_innerLink a[target="_blank"]::before {
  /* content: "";
  display: inline-block;
  width: 12px;
  height: 10px;
  background-repeat: no-repeat;
  background-size: contain; */
  background-image: url("../images/icon/outer_link.svg");
  width: 16px;
  /* border-right: 2px solid #000;
    border-top: 2px solid #000;
    width: 8px;
    aspect-ratio: 1;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);     */
}

.bl_btn__border_innerLink a::before {
  content: "";
  background-image: url("../images/icon/icon_arrow.svg");
  display: block;
  background-size: contain;
  width: 14px;
  aspect-ratio: 1;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .bl_btn__border_innerLink a {
    font-size: 12px;
    width: fit-content;
    min-width: 193px;
    padding: 8px 32px 8px 15px;
  }
  .bl_btn__border_innerLink a::before {
    right: 15px;
    width: 8px;
  }
}
.bl_btn__border02 {
  border: 1px solid #000;
}
.bl_btn__noArrow {
  border: 1px solid #000;
}
.bl_btn.bl_btn__noArrow::after {
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_btn.bl_btn__noArrow {
    padding-right: 15px;
  }
}
.bl_btn::after {
  content: "";
  background-image: url("../images/icon/icon_arrow.svg");
  display: block;
  background-size: contain;
  width: 14px;
  aspect-ratio: 1;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  /* display: block;
  border-right: 2px solid #000;
  border-top: 2px solid #000;
  width: 8px;
  aspect-ratio: 1;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg); */
}
.bl_btn__arrowBottom::after {
  transform: translateY(-50%) rotate(135deg);
}

.bl_btn__arrowBottom.is-open::after {
  transform: translateY(-50%) rotate(-45deg);
}

@media screen and (max-width: 767px) {
  a.bl_btn {
    /* padding: 8px 0; */
    margin: 0 auto;
  }

  a.bl_btn,
  .bl_btn {
    width: fit-content;
    min-width: 180px;
    font-size: 12px;
    /* padding-left: 15px; */
    padding: 8px 32px 8px 15px;
  }
  .bl_btn::after {
    right: 15px;
    width: 8px;
  }
  .bl_btn.bl_btn_spSizeL {
    width: 310px;
    padding: 13.5px 0;
    font-size: 14px;
  }
}
.bl_btnYellow {
  background-color: #ffdd00;
  width: 310px;
  display: block;
  text-align: center;
  padding: 16px 0;
  position: relative;
  color: #000;
  font-weight: 500;
  max-width: 100%;
  border: none;
  font-size: 18px;
  transition: all 0.3s;
  cursor: pointer;
  border-radius: 28px;
}
.bl_btnYellow.is-desable {
  background-color: #d5d5d5;
  cursor: default;
}

.bl_btn__min,
a.bl_btn__min {
  width: auto;
  font-size: 14px;
  padding: 8.5px 5px;
  border: 1px solid #000;
}

.bl_btn_desabled {
  pointer-events: none !important;
  background-color: #bcbcbc !important;
}

.bl_moreBtn__fixed {
  width: fit-content;
  min-width: 261px;
  display: inline-block;
  padding: 10px 25px;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 767px) {
  .bl_moreBtn__fixed {
    min-width: 0px;
  }
}

.bl_moreBtn__fixed svg {
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  stroke: currentColor;
}
@media screen and (max-width: 767px) {
  .bl_moreBtn__fixed svg {
    position: static;
    transform: translateY(0%);
    vertical-align: middle;
  }
}
.bl_buttonarea {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-bottom: 120px;
  flex-wrap: wrap;
}
.bl_buttonarea__horizontal {
  flex-direction: column;
  align-items: center;
  margin-bottom: 80px;
}
.bl_buttonarea .bl_btn {
  margin-left: 0;
  margin-right: 0;
}
/* #rank_swiper_sub,
#rank_swiper_sub_sp {
  width: 43.5vw;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
} */
@media screen and (max-width: 767px) {
  /* #rank_swiper_sub,
  #rank_swiper_sub_sp {
    width: 100%;
    height: auto;
  } */
  .bl_buttonarea {
    gap: 16px;
    margin-bottom: 72px;
  }
  .bl_buttonarea__horizontal {
    margin-bottom: 40px;
  }
  .bl_btnYellow {
    font-size: 16px;
    padding: 14px 0;
  }
}
/* #rank_swiper_sub .swiper-wrapper,
#rank_swiper_sub .swiper-wrapper .swiper-slide,
#rank_swiper_sub .swiper-wrapper .swiper-slide > div,
#rank_swiper_sub_sp .swiper-wrapper,
#rank_swiper_sub_sp .swiper-wrapper .swiper-slide,
#rank_swiper_sub_sp .swiper-wrapper .swiper-slide > div {
  height: 100%;
}
#rank_swiper_sub .swiper-wrapper .swiper-slide img,
#rank_swiper_sub_sp .swiper-wrapper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
} */

.bl_layout_check {
  background-color: #f2f2f2;
  padding-bottom: 80px;
}

.bl_layout_rank02 {
  background-color: #373737;
  padding-bottom: 80px;
  color: #fff;
  margin-bottom: 56px;
}
.bl_layout_rank02 .bl_rankingBtn {
  bottom: 64px;
}
.bl_layout_detailItems {
  background-color: #f2f2f2;
  padding-bottom: 0px;
  padding-right:0;
}
/* .bl_layout_recommendation {
  background-color: #f2f2f2;
  padding-bottom: 80px;
  border-radius: min(1.7361111111vw, 25px);
} */
@media screen and (max-width: 767px) {
  /* .bl_layout_recommendation {
    padding-bottom: 30px;
    border-radius: 4.6153846154vw;
  } */
   .bl_layout_detailItems {
    padding-right: 20px;
   }
  .bl_layout_rank02 {
    padding-bottom: 40px;
    margin-bottom: 32px;
  }
}
.bl_itemboxUnit {
  display: flex;
  /* flex-wrap: wrap; */
  /* justify-content: center; */
  gap: 25px 16px;
  overflow-x: auto;
}
.bl_itemboxUnitRank {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 25px 16px;
}
@media screen and (max-width: 767px) {
  .bl_layout_check {
    padding-bottom: 40px;
    padding-right: 0;
  }
  .bl_itemboxUnit {
    padding-bottom: 10px;
    gap: 32px 10px;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .bl_itemboxUnit.bl_itemboxUnit_wrap {
    flex-wrap: wrap;
  }
  .bl_itemboxUnit.bl_itemboxUnit_wrap .bl_itembox01 {
    width: calc(50% - 5px);
  }
  /* .bl_itemboxUnitRank .bl_itembox01:last-child {
    display: none;
  } */
  .bl_itemboxUnitRank {
    gap: 32px 10px;
  }
  .bl_itemboxUnitRank .bl_itembox01 {
    width: calc(50% - 5px);
  }
}

.bl_horizontal {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.bl_horizontal .bl_btn {
  max-width: 35vw;
}
@media screen and (max-width: 767px) {
  .bl_horizontal {
    grid-template-columns: repeat(1, 1fr);
  }
  .bl_horizontal .bl_btn {
    max-width: 100%;
  }
}
/* .bl_horizontal_item_inner {
  padding: 80px 7vw;
  max-width: 663px;
}
.bl_horizontal_item:nth-child(1) .bl_horizontal_item_inner {
  margin-left: auto;
}

.bl_horizontal_item:nth-child(2) {
  background-color: #ffdd00;
} */

.bl_newsSubHeading {
  font-size: 22px;
  margin-bottom: 22px;
}
@media screen and (max-width: 960px) {
  .bl_newsSubHeading {
    font-size: 14px;
    margin-bottom: 9px;
  }
  .bl_newsHeading {
    font-size: 20px;
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 768px) {
  .bl_newsSubHeading {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .bl_newsHeading {
    font-size: 18px;
    margin-bottom: 25px;
  }
}

.bl_newsHeading {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 25px;
}
.bl_newsUnit {
  margin-bottom: 56px;
}
/* .bl_newsUnit .bl_newsItem:first-child {
  padding-top: 42px;
} */
/* @media screen and (max-width: 767px) {
  .bl_newsUnit .bl_newsItem:first-child {
    padding-top: 30px;
  }
} */
.bl_newsItem {
  padding: 13.2px 0;
  border-top: 1px solid #d5d5d5;
}
.bl_newsItem_heading {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .bl_newsItem_heading {
    font-size: 14px;
  }
}
.bl_newsItem [target="_blank"] .bl_newsItem_heading::after {
  content: "";
  vertical-align: middle;
  width: 11px;
  height: 10px;
  margin-left: 6px;
  display: inline-block;
  background: url(../images/icon/link_black.svg) no-repeat;
  background-size: contain;
}

.bl_newsItem:last-child {
  border-bottom: 1px solid #d5d5d5;
}
.bl_newsItem_date {
  font-size: 14px;
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
}
.bl_newsItem_date img {
  width: 36px;
  margin-left: 10px;
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .bl_newsUnit {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .bl_newsUnit {
    margin-bottom: 32px;
  }
  .bl_newsItem_date {
    margin-bottom: 5px;
  }
  /* .bl_horizontal_item_inner {
    padding: 40px 20px;
    max-width: 1000px;
  } */
}
/* .bl_aboutTxt {
  text-align: center;
  font-size: 20px;
  line-height: 2.5;
  font-family: "Noto Serif JP", serif;
}

.bl_aboutImg {
  display: block;
  margin: 42px auto 40px;
}
@media screen and (max-width: 767px) {
  .bl_aboutTxt {
    font-size: 16px;
  }
  .bl_aboutImg {
    width: 66px;
    margin: 24px auto 32px;
  }
} */

.bl_layout_banner {
  background-color: #f2f2f2;
}
/* .bl_bannerList {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
}
.bl_bannerList li img {
  width: 174px;
}
@media screen and (max-width: 767px) {
  .bl_bannerList {
    flex-wrap: wrap;
    gap: 8px 0;
    justify-content: space-between;
  }
  .bl_bannerList li {
    width: 49%;
  }
  .bl_bannerList li img {
    width: 100%;
    display: block;
  }
} */

.bl_specialUnit {
  display: grid;
  gap: 20px 40px;
  grid-template-columns: 40.4% 1fr;
  align-items: start;
  grid-template-rows: auto auto 1fr;
  margin-bottom: 53px;
}
@media screen and (max-width: 960px) {
  .bl_specialUnit {
    grid-template-columns: 49.15% 1fr;
    gap: 18px;
  }
}

.bl_specialItem {
  position: relative;
}

.bl_specialBadge {
  position: absolute;
  width: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  aspect-ratio: 1;
}
.bl_specialBadge__new {
  left: 20px;
  background-color: #ffdd00;
}
.bl_specialBadge__pr {
  left: 90px;
  background-color: #000;
  color: #ffdd00;
}
@media screen and (max-width: 960px) {
  .bl_specialBadge {
    width: 50px;
    font-size: 14px;
  }
  .bl_specialBadge__new {
    left: 27px;
  }
  .bl_specialBadge__pr {
    left: 86px;
  }
}

@media screen and (max-width: 767px) {
  .bl_specialBadge {
    width: 42px;
    font-size: 12px;
  }
  .bl_specialBadge__new {
    left: 18px;
  }
  .bl_specialBadge__pr {
    left: 68px;
  }
}
/* .bl_specialItem a:has(.bl_newBadge)::before,
.bl_specialItem02 a:has(.bl_newBadge)::before {
  position: absolute;
  width: 0;
  content: "";
  height: 0;
  font-size: 18px;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  border-style: solid;
  border-color: #f27186 transparent transparent transparent;
  border-width: 75px 75px 0px 0px;
} */

.bl_newBadge,
.bl_prBadge {
  position: absolute;
  top: 0px;
  font-size: 12px;
  aspect-ratio: 1;
  width: 42px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_newBadge {
  background-color: #ffdd00;
  left: 20px;
  color: #000;
}
.bl_prBadge {
  background-color: #000;
  left: 70px;
  color: #ffdd00;
}

@media screen and (max-width: 767px) {
  .bl_specialItem a:has(.bl_newBadge)::before,
  .bl_specialItem02 a:has(.bl_newBadge)::before {
    border-width: 50px 50px 0px 0px;
  }
  .bl_newBadge,
  .bl_prBadge {
    width: 32px;
  }
  .bl_newBadge {
    font-size: 12px;
    left: 5px;
  }
  .bl_prBadge {
    left: 42px;
  }
}
.bl_specialItem:first-child .bl_specialItem_imgWrapper {
  margin-bottom: 35px;
  aspect-ratio: 534/354;
}
@media screen and (max-width: 960px) {
  .bl_specialItem:first-child .bl_specialItem_imgWrapper {
    margin-bottom: 21px;
  }
}
@media screen and (max-width: 768px) {
  .bl_specialItem:first-child .bl_specialItem_imgWrapper {
    margin-bottom: 10px;
  }
  .bl_specialItem:first-child {
    margin-bottom: 22px;
  }
}
.bl_specialItem_imgWrapper img {
  display: block;
  width: 100%;
}

.bl_specialItem:not(:first-child) a {
  display: grid;
  grid-template-columns: 33% 1fr;
  gap: 16px;
}

.bl_specialItem:not(:first-child) .bl_specialBadge {
  font-size: 12px;
  width: 45px;
}
@media screen and (max-width: 768px) {
  .bl_specialItem:not(:first-child) .bl_specialBadge {
    font-size: 10px;
    width: 35px;
  }
}
.bl_specialItem:not(:first-child) .bl_specialBadge__new {
  left: 8px;
}
.bl_specialItem:not(:first-child) .bl_specialBadge__pr {
  left: 60px;
}
@media screen and (max-width: 768px) {
  .bl_specialItem:not(:first-child) .bl_specialBadge__pr {
    left: 50px;
  }
}
@media screen and (max-width: 960px) {
  .bl_specialItem:not(:first-child) a {
    grid-template-columns: 42.5% 1fr;
    gap: 18px;
  }
}

.bl_specialItem:not(:first-child) .bl_specialItem_title {
  font-size: 18px;
  margin-bottom: 16px;
  line-height: 1.33;
}
@media screen and (max-width: 960px) {
  .bl_specialItem:not(:first-child) .bl_specialItem_title {
    font-size: 15px;
    margin-bottom: 0px;
  }
}

.bl_specialItem_title {
  font-weight: bold;
}

.bl_specialItem:first-child {
  grid-row: 1 / 4;
}
.bl_specialItem:first-child .bl_specialItem_title {
  font-size: 22px;
  margin-bottom: 21px;
}
@media screen and (max-width: 960px) {
  .bl_specialItem:first-child .bl_specialItem_title {
    font-size: 20px;
    margin-bottom: 14px;
  }
}
.bl_specialItem_time {
  font-size: 14px;
  line-height: 1.69;
}
@media screen and (max-width: 960px) {
  .bl_specialItem_time {
    font-size: 13px;
  }
}
@media screen and (max-width: 768px) {
  .bl_specialItem_time {
    font-size: 12px;
  }
}
.bl_centerMessage {
  text-align: center;
  margin-top: 20px;
}
@media screen and (max-width: 960px) {
  .bl_centerMessage {
    margin-top: 8px;
    font-size: 13px;
  }
  .bl_specialUnit {
    margin-bottom: 37px;
  }
}
@media screen and (max-width: 767px) {
  .bl_specialUnit {
    display: block;
    margin-bottom: 18px;
  }
  .bl_layoutHeader {
    gap: 0;
  }
  .bl_specialItem:first-child .bl_specialItem_title {
    font-size: 18px;
    margin-bottom: 5px;
  }
  .bl_specialItem:not(:first-child) {
    margin-top: 16px;
  }
  .bl_specialItem:not(:first-child) a {
    grid-template-columns: 39.7% 1fr;
    gap: 16px;
  }
  .bl_specialItem:not(:first-child) .bl_specialItem_title {
    font-size: 14px;
  }
  .bl_centerMessage {
    font-size: 12px;
  }
}

/* topics - トピックス
-------------------------------------------------------------*/

/* #topics {
    margin-bottom: 20px;
    width: 100%;
}

#topics .box {
    border-bottom: #d4d4d4 solid 1px;
    margin-bottom: 20px;
}

#topics .box:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #topics h3 {
    display: block;
    float: left;
    width: 140px;
    padding: 3px 10px 5px;
    font-size: 90%;
    font-weight: normal;
    line-height: 100%;
}

#topics h3 img {
    vertical-align: bottom;
}

#topics .inner {
    display: block;
    float: right;
    width: 630px;
    padding: 0px 10px 5px;
    font-weight: normal;
}

#topics .inner p {
    margin: 0px 0 5px;
    font-size: 90%;
}

#topics .rss {
    display: block;
    float: right;
    width: 15px;
    height: 15px;
    margin: 5px 5px 0 0;
    background: url("../images/header_rss.gif") 0 0 no-repeat;
    text-indent: -9999px;
    z-index: 10;
}

#topics .rss:hover {
    background: url("../images/header_rss.gif") 0 -15px no-repeat;
}

#topics .img_box {
    width: 120px;
    height: 120px;
    margin: 5px 0 10px 10px;
    float: right;
}

#topics .img_box img {
    max-width: 120px;
    max-height: 120px;
}

#topics .link {
    text-align: right;
} */

/* clientRecommend - 貴社おすすめ商品
-------------------------------------------------------------*/
/* #clientRecommend {
    margin-bottom: 20px;
    width: 100%;
}

#clientRecommend ul {
    margin-top: 10px;
}

#clientRecommend ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #clientRecommend .box {
    float: left;
    width: 185px;
    margin: 0 10px 10px 0;
    border: #d4d4d4 1px solid;
    padding: 20px 0 0px;
}

#clientRecommend .img_box {
    width: 140px;
    height: 140px;
    margin: 0px auto 10px;
}

#clientRecommend .img_box img {
    max-width: 140px;
    max-height: 140px;
}

#clientRecommend .text {
    width: 140px;
    margin: 0 auto;
}

#clientRecommend h3 {
    margin: 0px 0px 10px;
    font-size: 90%;
    font-weight: normal;
    line-height: 140%;
    min-height: 60px;
}

#clientRecommend .price {
    margin: 0px 0px 20px;
    font-size: 80%;
    color: #C00;
    text-align: right;
} */

/* new - 新着商品
-------------------------------------------------------------*/
/* #new {
    margin-bottom: 20px;
    width: 100%;
}

#new ul {
    margin-top: 10px;
}

#new ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #new .box {
    float: left;
    width: 185px;
    margin: 0 10px 10px 0;
    border: #d4d4d4 1px solid;
    padding: 20px 0 0px;
}

#new .img_box {
    width: 140px;
    height: 140px;
    margin: 0px auto 10px;
}

#new .img_box img {
    max-width: 140px;
    max-height: 140px;
}

#new .text {
    width: 140px;
    margin: 0 auto;
}

#new .cart_button {
    margin-bottom: 10px;
}

#new .appeal {
    color: #F60;
    font-size: 70%;
}

#new h3 {
    margin: 0px 0px 20px;
    font-size: 90%;
    font-weight: normal;
    line-height: 140%;
    min-height: 60px;
}

#new .price {
    margin: 0px 0px 20px;
    font-size: 80%;
    color: #C00;
    text-align: right;
} */

/* recommend - おすすめ商品
-------------------------------------------------------------*/
/* #recommend {
    margin-bottom: 20px;
    width: 100%;
}

#recommend ul {
    margin-top: 10px;
}

#recommend ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #recommend .box {
    float: left;
    width: 185px;
    margin: 0 10px 10px 0;
    border: #d4d4d4 1px solid;
    padding: 20px 0 0px;
}

#recommend .img_box {
    width: 140px;
    height: 140px;
    margin: 0px auto 10px;
}

#recommend .img_box img {
    max-width: 140px;
    max-height: 140px;
}

#recommend .text {
    width: 140px;
    margin: 0 auto;
}

#recommend .cart_button {
    margin-bottom: 10px;
}

#recommend .appeal {
    color: #F60;
    font-size: 70%;
}

#recommend h3 {
    margin: 0px 0px 10px;
    font-size: 90%;
    font-weight: normal;
    line-height: 140%;
    min-height: 60px;
}

#recommend .price {
    margin: 0px 0px 20px;
    font-size: 80%;
    color: #C00;
    text-align: right;
} */

/* ranking - 人気商品ランキング
-------------------------------------------------------------*/
/* #ranking {
    margin-bottom: 20px;
    width: 100%;
}

#ranking ul {
    margin-top: 10px;
}

#ranking ul:after {
    content: "";
    clear: both;
    display: block;
}

/* clearfix */
.bl_itemRanking {
  display: none;
}
.bl_itemRanking.is-active {
  display: block;
}
/* #ranking .box {
    float: left;
    width: 185px;
    margin: 0 10px 10px 0;
    border: #d4d4d4 1px solid;
    padding: 20px 0 0px;
}

#ranking h3 {
    width: 45px;
    height: 20px;
    text-indent: -9999px;
    margin: 0 0 5px;
}

#ranking #ranking_no1 h3 {
    background: url("../images/ranking_no01.gif") 0px 5px no-repeat;
}

#ranking #ranking_no2 h3 {
    background: url("../images/ranking_no02.gif") 0px 5px no-repeat;
}

#ranking #ranking_no3 h3 {
    background: url("../images/ranking_no03.gif") 0px 5px no-repeat;
}

#ranking #ranking_no4 h3 {
    background: url("../images/ranking_no04.gif") 0px 5px no-repeat;
}

#ranking #ranking_no5 h3 {
    background: url("../images/ranking_no05.gif") 0px 5px no-repeat;
}

#ranking #ranking_no6 h3 {
    background: url("../images/ranking_no06.gif") 0px 5px no-repeat;
}

#ranking #ranking_no7 h3 {
    background: url("../images/ranking_no07.gif") 0px 5px no-repeat;
}

#ranking #ranking_no8 h3 {
    background: url("../images/ranking_no08.gif") 0px 5px no-repeat;
}

#ranking #ranking_no9 h3 {
    background: url("../images/ranking_no09.gif") 0px 5px no-repeat;
}

#ranking #ranking_no10 h3 {
    background: url("../images/ranking_no10.gif") 0px 5px no-repeat;
}

#ranking h4 {
    margin: 0px 0px 10px;
    font-size: 90%;
    font-weight: normal;
    line-height: 140%;
    min-height: 60px;
}

#ranking .price {
    margin: 0px 0px 20px;
    font-size: 80%;
    color: #C00;
    text-align: right;
}

#ranking .text {
    width: 140px;
    margin: 0 auto;
}

#ranking .cart_button {
    margin-bottom: 10px;
}

#ranking .appeal {
    color: #F60;
    font-size: 70%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#ranking .img_box {
    width: 140px;
    height: 140px;
    margin: 0px auto 10px;
    text-align: center;
    position: relative;
}

#ranking .img_box img {
    width: auto;
    max-width: 140px;
    max-height: 140px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

/* free ranking access - アクセスランキング
-------------------------------------------------------------*/
/* #access {
    margin-bottom: 20px;
    width: 100%;
}

#access ul {
    margin-top: 10px;
}

#access ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #access .box {
    float: left;
    width: 185px;
    margin: 0 10px 10px 0;
    border: #d4d4d4 1px solid;
    padding: 20px 0 0px;
}

#access h3 {
    width: 45px;
    height: 20px;
    text-indent: -9999px;
    margin: 0 0 5px;
}

#access #ranking_no1 h3 {
    background: url("../images/ranking_no01.gif") 0px 5px no-repeat;
}

#access #ranking_no2 h3 {
    background: url("../images/ranking_no02.gif") 0px 5px no-repeat;
}

#access #ranking_no3 h3 {
    background: url("../images/ranking_no03.gif") 0px 5px no-repeat;
}

#access #ranking_no4 h3 {
    background: url("../images/ranking_no04.gif") 0px 5px no-repeat;
}

#access #ranking_no5 h3 {
    background: url("../images/ranking_no05.gif") 0px 5px no-repeat;
}

#access #ranking_no6 h3 {
    background: url("../images/ranking_no06.gif") 0px 5px no-repeat;
}

#access #ranking_no7 h3 {
    background: url("../images/ranking_no07.gif") 0px 5px no-repeat;
}

#access #ranking_no8 h3 {
    background: url("../images/ranking_no08.gif") 0px 5px no-repeat;
}

#access #ranking_no9 h3 {
    background: url("../images/ranking_no09.gif") 0px 5px no-repeat;
}

#access #ranking_no10 h3 {
    background: url("../images/ranking_no10.gif") 0px 5px no-repeat;
}

#access h4 {
    margin: 0px 0px 10px;
    font-size: 90%;
    font-weight: normal;
    line-height: 140%;
    min-height: 60px;
}

#access .price {
    margin: 0px 0px 20px;
    font-size: 80%;
    color: #C00;
    text-align: right;
}

#access .text {
    width: 140px;
    margin: 0 auto;
}

#access .cart_button {
    margin-bottom: 10px;
}

#access .appeal {
    color: #F60;
    font-size: 70%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#access .img_box {
    width: 140px;
    height: 140px;
    margin: 0px auto 10px;
    text-align: center;
    position: relative;
}

#access .img_box img {
    width: auto;
    max-width: 140px;
    max-height: 140px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

/* itemAccessLog - 閲覧履歴
-------------------------------------------------------------*/
/* #itemAccessLog {
    margin-bottom: 20px;
    clear: both;
}

#itemAccessLog .box {
    margin-top: 10px;
    border: #CCC 1px solid;
}

#itemAccessLog .box:hover {
    border: #8CC329 1px solid;
}

#itemAccessLog .box:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #itemAccessLog .text {
    margin-left: 140px;
}

#itemAccessLog h3 {
    display: block;
    margin: 10px 10px 0 0;
    font-size: 95%;
}

#itemAccessLog .link {
    float: right;
    font-size: 13px;
    padding-top: 10px;
}

#itemAccessLog .appeal {
    display: block;
    margin: 0;
    color: #F60;
    font-size: 70%;
}

#itemAccessLog .price {
    display: block;
    margin: 0;
    color: #C00;
}

#itemAccessLog .price .teika {
    font-weight: bold;
    font-size: 110%;
}

#itemAccessLog .price .other {
    font-size: 90%;
}

#itemAccessLog .explanation1 {
    display: block;
    margin: 5px 10px 0 0;
    padding: 5px 0;
    border-top: #CCC 1px solid;
    font-size: 80%;
    line-height: 120%;
}

#itemAccessLog .button_area {
    margin: 0px 10px 20px 0px;
    padding-top: 20px;
    border-top: #CCC 1px solid;
    text-align: right;
}

#itemAccessLog .button_area:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #itemAccessLog .button_area .button {
    width: auto;
    display: inline-block;
}

#itemAccessLog .property {
    display: inline;
    margin: 0;
    color: #AAA;
    font-size: 75%;
}

#itemAccessLog .img_box {
    width: 120px;
    height: 120px;
    margin: 10px;
    float: left;
}

#itemAccessLog .img_box img {
    max-width: 120px;
    max-height: 120px;
} */

/* awoo AI TOP
-------------------------------------------------------------*/
/* #awoo-keyword-popular-tags .awoo-tag-wrapper {
    gap: 0;
}

#awoo-keyword-popular-tags .popular-tags-wrapper {
    background: transparent;
    padding: 0 0 16px;
}

#awoo-keyword-popular-tags .popular-tags-wrapper .popular-tags-title {
    padding: 0 0 8px;
    font-weight: bold;
    margin: 0;
}

#awoo-keyword-popular-tags .popular-tags-wrapper .popular-tags-list-container a {
    font-size: 12px;
    color: #333;
    background: #fff;
    padding: 5px 10px;
    margin: 0 4px 8px;
}

#awoo-keyword-popular-tags .popular-tags-wrapper .popular-tags-list-container a:hover {
    color: #3A3A3A;
    border-color: #3A3A3A;
    opacity: 0.7;
}

#awoo-keyword-popular-tags .popular-tags-wrapper .popular-tags-list-container a::before {
    content: "#";
} */

/* awoo AI レコメンド画像
-------------------------------------------------------------*/
/* #awoo-keyword-popular-products .related-wrapper .related-title {
    padding: 0;
    font-weight: bold;
    margin: 5px 0;
}

#awoo-keyword-popular-products .related-wrapper .related-product-img {
    width: 225px;
    height: 225px;
}

#awoo-keyword-popular-products .related-wrapper .related-product-name {
    color: #333;
    height: auto;
    margin-bottom: 10px;
    font-weight: bold;
}

#awoo-keyword-popular-products .related-wrapper .product-price {
    color: #333;
}

#awoo-keyword-popular-products .related-wrapper .product__price .on-sale {
    color: #333;
}

#awoo-keyword-popular-products .related-wrapper .product__price .sale-price {
    color: #C00;
} */

/* =================================================================
8.カートの中身～注文完了まで、プレゼント応募～完了まで
使用ファイル：cart_index.xhtml, cart_login.xhtml
　　　　　　　cart_seisan.xhtml, cart_confirm.xhtml
　　　　　　　cart_pre.xhtml, cart_result.xhtml
　　　　　　　present_login.xhtml, present_input.xhtml
　　　　　　　present_confirm.xhtml, present_result.xhtml,
　　　　　　　member_estimate_order_input.xhtml, member_estimate_order_result.xhtml,
=================================================================*/
/* cartSidebar - カートフロー内サイドバー
-------------------------------------------------------------*/
#main.cart_pre,
#main.cart_3ds {
  margin-bottom: 80px;
}
/* #cartSidebar {
    width: 210px;
    float: right;
}

#cartSidebar #sideInner {
    width: 210px;
}

#cartSidebar .total_box {
    border: #CCC 1px solid;
    padding: 10px;
    background: #F6F6F6;
}

#cartSidebar .total_box .box {
    border: none;
    margin-bottom: 10px;
}

#cartSidebar .total_box .box:after {
    content: "";
    clear: both;
    display: block;
}

#cartSidebar .total_box h3 {
    margin: 0;
    background: none;
    padding: 0px;
    border: 0px;
    font-size: 14px;
    float: left;
}

#cartSidebar .total_box p.price {
    font-size: 14px;
    float: right;
    margin: 0px;
    font-weight: bold;
}

#cartSidebar .total_box img {
    margin: 0px auto 10px;
    display: block;
}

#cartSidebar .total_box .totalpricebox {
    border: none;
    margin-bottom: 10px;
    padding-top: 10px;
    border-top: 1px #CCCCCC solid;
}

#cartSidebar .total_box .totalpricebox:after {
    content: "";
    clear: both;
    display: block;
}

#cartSidebar .total_box .teiki_text {
    margin: 0;
    font-size: 12px;
}

#cartSidebar .cartButtonArea a {
    display: block;
    margin: 0 auto 10px;
    min-width: 180px;
    ;
    max-width: 180px;
}

#cartSidebar .cartButtonArea img {
    display: block;
    max-width: 100%;
}

#cartSidebar .cartButtonArea input {
    display: block;
    margin: 0 auto 10px;
    min-width: 180px;
    ;
    max-width: 180px;
}

#cartSidebar .tax {
    font-size: 9px;
    color: #666;
}

#cartSidebar .amazon_highlight_area {
    margin-bottom: 10px;
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
}

#cartSidebar .amazon_highlight_area p {
    font-size: 10px;
}

#cartSidebar .login_amazonpay_btn {
    max-width: 180px;
    margin: 0 auto;
}

#cartSidebar #AmazonPayButton img {
    max-width: 180px !important;
    max-height: 100% !important;
    width: 100% !important;
    height: auto !important;
}

#cartSidebar #AmazonPayV2Button {
    max-width: 180px;
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
} */

/* cartIndex - 買い物かごの中身
-------------------------------------------------------------*/

.el_mypageHeading {
  font-size: 24px;
  font-weight: bold;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 20px;
}
.el_mypageHeading::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background-color: #ffdd00;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
}
/*
#cartIndex {
    width: 980px;
    padding-bottom: 20px;
    margin: 0 auto;
}

#cartIndex .content {
    width: 750px;
    float: left;
    margin-right: 20px;
}

#cartIndex:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #cartIndex table {
    width: 750px;
    margin: 0px 0 10px;
}

#cartIndex table th.itemname {
    width: 500px;
}

#cartIndex .img_box {
    width: 80px;
    height: 80px;
    text-align: center;
    position: relative;
    float: left;
}

#cartIndex .img_box img {
    width: auto;
    max-width: 80px;
    max-height: 80px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#cartIndex .text_box {
    padding-left: 90px;
}

#cartIndex .text_box p {
    margin: 0 0 10px;
    font-size: 100%;
}

#cartIndex .text_box p.code {
    font-size: 80%;
}

#cartIndex .text_box p.last {
    margin-bottom: 0px;
}

#cartIndex .empty {
    margin: 20px 0;
}

#cartIndex .price {
    color: #C00;
    text-align: right;
}

#cartIndex .tax {
    font-size: 9px;
    color: #666;
}

#cartIndex .amount {
    text-align: center;
}

#cartIndex .delete .button {
    width: 50px;
}

#cartIndex .total {
    margin: 0px 0 30px;
    padding: 0px 0 5px;
    font-weight: bold;
    text-align: right;
    border-bottom: #CCC 1px solid;
    width: 750px;
}

#cartIndex .total p {
    margin: 0px;
    font-size: 90%;
} */

/* #cartIndex h3 {
    margin-bottom: 15px;
    padding: 1px 20px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 7px 7px no-repeat #EEE;
    font-size: 85%;
} */
/*
#cartIndex .box {
    border: 1px solid #CCC;
    margin-bottom: 30px;
    clear: both;
}

#cartIndex #AmazonPayV2_area .login_amazonpay_btn {
    max-width: 230px;
    min-width: 200px;
    margin: 0 auto;
}

#cartIndex .login_amazonpay_btn {
    max-width: 200px;
    margin: 0 auto;
}

#cartIndex .box .buttonarea.amazon_btn {
    margin: 10px;
    padding: 10px 0 0;
    text-align: center;
}

#cartIndex .box .buttonarea.amazon_btn .button.medium {
    max-width: 270px;
    width: 270px;
}

#cartIndex .box #AmazonPayButton {
    min-height: 50px;
}

#cartIndex .box #AmazonPayV2Button {
    max-width: 230px;
    min-width: 200px;
    margin: 0 auto;
}

#cartIndex .rakuten_wrapper .rakuten_area_linked .rakuten_term_point {
    margin-top: 10px;
}

#cartIndex .rakuten_wrapper .rakuten_area_linked p {
    margin: 5px 0 0;
}

#cartIndex .rakuten_wrapper .rakuten_txt {
    text-align: center;
    font-size: 13px;
}

#cartIndex .rakuten_wrapper .rakuten_area_linked .rakuten_area_title p {
    margin: 0 0 0 8px;
    font-size: 15px;
} */

/* cartLogin - 買い物かご・プレゼントログイン
-------------------------------------------------------------*/
#cartLogin:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#cartLogin table {
  margin: 0 auto 20px auto;
  width: 428px;
}

#cartLogin h3 {
  margin-bottom: 15px;
  padding: 1px 20px;
  border-bottom: 1px solid #ccc;
  background: url("../images/marker.gif") 7px 7px no-repeat #eee;
  font-size: 85%;
}

#cartLogin .login_boxes {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

#cartLogin .box {
  border: 1px solid #ccc;
  width: 468px;
  float: left;
  margin: 0 10px 30px;
  position: relative;
}

#cartLogin .box .buttonarea {
  width: 100%;
  margin: 20px 0;
  padding: 0;
}

#cartLogin .box table {
  margin: 10px;
  width: 446px;
}

#cartLogin .box .link_text {
  text-align: right;
  padding: 15px 0 10px;
}

#cartLogin .box .regist_non_area {
  width: 442px;
  margin: 0 auto;
}

#cartLogin .box .regist_non_area p {
  margin: 0 0 10px;
}

#cartLogin .box .amazon_area {
  width: 442px;
  margin: 0 auto;
  border-top: 1px solid #ccc;
}

#cartLogin .box .amazon_area p {
  margin: 10px 0;
}

#cartLogin .box #AmazonPayButton {
  min-height: 80px;
}

#cartLogin .box #AmazonPayV2Button {
  max-width: 230px;
  min-width: 200px;
  margin: 0 auto;
}

#cartLogin .widebox {
  border: 1px solid #ccc;
  width: 960px;
  margin: 0 10px 30px;
  clear: both;
}

#cartLogin .widebox .link {
  text-align: right;
}

#cartLogin .widebox table {
  width: 920px;
}

#cartLogin input[type="text"],
#cartLogin input[type="password"] {
  width: 200px;
}

#cartLogin .social_provider ul {
  margin: 10px 19px 20px;
}

#cartLogin .social_provider ul:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#cartLogin .social_provider ul li {
  width: 220px;
  height: 44px;
  font-size: 14px;
  display: block;
  float: left;
  margin: 10px 5px;
}

#cartLogin .social_provider ul li a {
  display: block;
  text-decoration: none;
}

#cartLogin .social_provider ul li a span {
  padding: 14px 0 14px 25px;
  border: 1px solid #cdcdcd;
  border-left: 0px;
  margin: 0 0 0 53px;
  display: block;
  background: #fff;
  line-height: 1;
  font-size: 14px;
  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;

  -moz-border-radius-topright: 3px;

  -moz-border-radius-bottomright: 3px;
}

#cartLogin .social_provider li.yahoo a {
  background: url("../images/social_yahoo.png") no-repeat;
  color: #e71017;
}

#cartLogin .social_provider li.facebook a {
  background: url("../images/social_facebook.png") no-repeat;
  color: #3b5998;
}

#cartLogin .social_provider li.twitter a {
  background: url("../images/social_twitter.png") no-repeat;
  color: #55acee;
}

#cartLogin .social_provider li.google a {
  background: url("../images/social_google.png") no-repeat;
  color: #dc4e41;
}

#cartLogin .social_provider li.mixi a {
  background: url("../images/social_mixi.png") no-repeat;
  color: #d1ad59;
}

#cartLogin .social_provider li.line a {
  background: url("../images/social_line.png") no-repeat;
  color: #00b300;
}

#cartLogin .social_provider li.paypal a {
  background: url("../images/social_paypal.png") no-repeat;
  color: #293e7f;
}

/* cartFlow - 買い物かご・プレゼント注文情報入力～注文完了まで
-------------------------------------------------------------*/
.newCreditCard [name="CREDIT_NAME"] {
  width: 282px;
}

/* #cartFlow {
    width: 980px;
    padding-bottom: 20px;
    margin: 0 auto;
}

#cartFlow:after {
    content: "";
    clear: both;
    display: block;
}

#cartFlow .content {
    width: 750px;
    float: left;
    margin-right: 20px;
}

#cartFlow td input {
    vertical-align: baseline;
}

#cartFlow table.newCreditCard {
    width: 547px;
    font-size: 100%;
    margin: 10px auto;
}

#cartFlow .point_info {
    margin-bottom: 20px;
}

#cartFlow .teiki ul {
    margin: 5px 10px;
}

#cartFlow .teiki ul:after {
    content: "";
    clear: both;
    display: block;
}

#cartFlow .teiki ul li {
    float: left;
    font-size: 13px;
    margin-right: 1em;
}

#cartFlow table {
    width: 750px;
    margin: 0px 0 20px;
}

#cartFlow table.change_data {
    margin-top: -21px;
}

#cartFlow table.member_regist {
    margin-top: -21px;
}

#cartFlow table td.short input {
    width: 120px;
}

#cartFlow .teiki_item {
    margin-left: 0;
}

#cartFlow table.teiki_table {
    margin: 10px 0;
}

#cartFlow table.teiki_table th {
    width: 150px;
    background-color: #fff;
    text-align: center;
}

#cartFlow table.teiki_table td {
    text-align: right;
    padding: 10px 30px;
}

#cartFlow table.teiki_table td.count {
    text-align: center;
}

#cartFlow .teiki_comment,
#cartFlow .cancel_comment {
    margin: 0 0 30px;
}

#cartFlow .teiki_comment p,
#cartFlow .cancel_comment p {
    margin: 5px 0;
}

#cartFlow .teiki_comemnt .num,
#cartFlow .teiki_item .num {
    padding-left: 10px;
}

#cartFlow .text_box {
    padding-left: 90px;
}

#cartFlow .text_box p {
    margin: 0 0 10px;
    font-size: 100%;
}

#cartFlow .text_box p.code {
    font-size: 80%;
}

#cartFlow .text_box p.last {
    margin-bottom: 0px;
}

#cartFlow h3 {
    display: block;
    font-size: 110%;
    margin: 30px 0px 10px;
    padding-bottom: 5px;
}

#cartFlow h3 img {
    vertical-align: middle;
}

#cartFlow h3 .lock {
    position: relative;
    top: -3px;
}

#cartFlow .price {
    color: #C00;
    text-align: right;
}

#cartFlow .total {
    margin: 0px 0 30px;
    padding: 0px 0 5px;
    font-weight: bold;
    text-align: right;
    border-bottom: #CCC 1px solid;
    width: 700px;
}

#cartFlow .total p {
    margin: 0px;
    font-size: 90%;
}

#cartFlow .point {
    color: #F60;
    font-weight: bold;
}

#cartFlow .attention {
    color: #C00;
    font-weight: bold;
    font-size: 110%;
}

#cartFlow .attention_message {
    color: #C00;
    font-weight: bold;
}

#cartFlow .sendCopyButton {
    margin-bottom: 10px;
}

#cartFlow .sendCopyButton:after {
    content: "";
    clear: both;
    display: block;
}

#cartFlow .sendCopyButton .button {
    width: auto;
    display: inline-block;
}

#cartFlow .multi_send .buttonarea {
    background: #EEE;
    margin: 0px 0 20px;
    padding: 30px 0;
}

#cartFlow .multi_send table.delivery {
    margin-top: -21px;
}

#cartFlow .multi_send .sendAddressButton a {
    width: auto;
    display: inline-block;
    margin-bottom: 10px;
}

#cartFlow .noshi_setting {
    line-height: 1;
    font-size: 12px;
    padding: 6px 6px;
    background: #d2d2d2;
    margin-left: 10px;
    font-weight: bold;
}

#cartFlow .gift_title {
    display: inline-block;
    width: 130px;
}

#cartFlow .gift div.amount {
    display: inline-block;
    margin: 5px 15px 10px 0;
}

#cartFlow .gift .item_icon {
    font-size: 11px;
}

#cartFlow .message_card {
    display: inline-block;
    vertical-align: top;
}

#cartFlow .loop_item {
    border-bottom: 1px #ccc solid;
}

#cartFlow .gift a.button {
    margin-left: 10px;
}

#cartFlow .gift .noshi {
    margin-bottom: 10px;
}

#cartFlow .gift .noshi+.gift_box {
    border-top: 1px #ccc solid;
    margin: 10px 0 10px;
    padding-left: 15px;
}

#cartFlow .gift .message+.gift_box {
    border-top: 1px #ccc solid;
    margin: 10px 0 10px;
    padding-left: 15px;
}

#cartFlow .gift_box:not(:first-child) {
    border-top: 1px solid #ccc;
    margin: 0 0 10px 15px;
    padding-top: 10px;
}

#cartFlow .gift_box:first-child {
    padding-left: 15px;
}

#cartFlow .gift_box:last-child {
    margin-bottom: 0;
}

#cartFlow .gift_item {
    font-weight: bold;
}

#cartFlow .gift_box .img_box {
    width: 40px;
    height: 40px;
    display: inline-block;
    vertical-align: middle;
    margin: 5px 5px;
    text-align: center;
    position: relative;
}

#cartFlow .gift_box .img_box img {
    width: auto;
    max-width: 40px;
    max-height: 40px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}



#cartFlow #reCAPTCHA {
    margin: 20px auto 40px auto;
}

#cartFlow #reCAPTCHA iframe {
    width: 158px;
    height: 138px;
}

#cartFlow #reCAPTCHA .g-recaptcha {
    display: block;
    -webkit-transform: scale(1.19);
    -ms-transform: scale(1.19);
    transform: scale(1.19);
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
}

#cartFlow .cartitem {
    margin-top: 20px;
    width: 210px;
    padding: 10px;
    border: #CCC 1px solid;
}

#cartFlow .cartitem h3 {
    margin: 0 0 10px;
    padding: 0px;
    border: none;
    background: none;
}

#cartFlow .cartitem li {
    margin-bottom: 10px;
    padding-bottom: 0px;
    border-bottom: 1px solid #CCC;
}

#cartFlow .cartitem .img_box {
    width: 25px;
    height: 25px;
    float: left;
    margin-right: 5px;
    text-align: center;
    position: relative;
}

#cartFlow .cartitem .img_box img {
    width: auto;
    max-width: 25px;
    max-height: 25px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#cartFlow .cartitem .text_box {
    padding-left: 0px;
    margin-bottom: 5px;
}

#cartFlow .cartitem .text_box:after {
    content: "";
    clear: both;
    display: block;
}

#cartFlow .cartitem .text_box p {
    margin: 0px;
    font-size: 70%;
    line-height: 130%;
}

#cartFlow .cartitem p.price {
    font-size: 70%;
    margin: 0px;
    float: left;
}

#cartFlow .cartitem p.amount {
    font-size: 70%;
    margin: 0px;
    float: right;
}

#cartFlow .cartresult table {
    width: 920px;
    margin: 0 auto 20px;
}

#cartFlow .cartresult .total {
    width: 920px;
    margin: 0 10px 30px;
}

#cartFlow .cartconfirm table {
    width: 920px;
    margin: 0 auto 20px;
}

#cartFlow .cartconfirm .total {
    width: 920px;
    margin: 0 10px 30px;
}

#cartFlow .error {
    clear: both;
    margin: 5px 10px;
    color: #C00 !important;
    font-weight: bold;
    text-align: center;
    font-size: 80%;
}

#cartFlow .card-supplement {
    font-size: 12px;
    color: #368bc6;
    font-weight: bold;
}

#cartFlow .rakuten_area {
    border: 1px solid #ccc;
    padding: 10px;
    margin: 16px 0;
    font-size: 15px;
}

#cartFlow .rakuten_point {
    font-weight: bold;
} */

/* cartNoshiInput - のし入力画面
-------------------------------------------------------------*/
/* #cartFlow #noshiInput h3 {
    background: #F6F6F6;
    padding: 10px 0;
    margin-bottom: 30px;
}

#cartFlow #noshiInput h3 span {
    border-left: 5px solid #000;
    padding: 5px;
    margin-left: 10px;
}

#cartFlow #noshiInput select {
    width: 300px;
}

#cartFlow #noshiInput td input {
    width: 300px;
}

#cartFlow #noshiInput div.noshi_img_area {
    box-shadow: 0 0 0 9px #FFF, 0 0 0 10px #ccc;
    -moz-box-shadow: 0 0 0 9px #FFF, 0 0 0 10px #ccc;
    -webkit-box-shadow: 0 0 0 9px #FFF, 0 0 0 10px #ccc;
}

#cartFlow #noshiInput div.noshi_img>div {
    display: inline-block;
    width: 240px;
    border: 1px #ccc solid;
}

#cartFlow #noshiInput div.noshi_img div>div {
    margin-left: 10px;
}

#cartFlow #noshiInput div.noshi_img label {
    font-size: 90%;
}

#cartFlow #noshiInput div.img_box img {
    max-width: 220px;
    max-height: 220px;
    border: 1px #ccc solid;
}

#cartFlow #noshiInput div.img_box {
    width: 220px;
    height: 220px;
    margin: 10px;
}

#cartFlow #noshiInput div.noshi_img>div:not(:first-child) {
    margin-left: 10px;
}

#cartFlow #messageCartInput h3 {
    background: #F6F6F6;
    padding: 10px 0;
}

#cartFlow #messageCartInput h3 span {
    border-left: 5px solid #000;
    padding: 5px;
    margin-left: 10px;
}

#cartFlow #messageCartInput .box {
    width: 375px;
    height: 300px;
    float: left;
    margin: 15px 0 55px;
}

#cartFlow #messageCartInput .message.box {
    padding: 50px 0 0 5px;
}

#cartFlow #messageCartInput .message.box p {
    margin-bottom: 10px;
}

#cartFlow #messageCartInput .message input {
    width: 80%;
}

#cartFlow #messageCartInput .box select {
    width: 90%;
}

#cartFlow #messageCartInput .box::after {
    content: "";
    clear: both;
    display: block;
}

#cartFlow #messageCartInput div.img_box {
    width: 100%;
    height: 230px;
    margin: 25px 0;
    border: 1px #ccc solid;
}

#cartFlow #messageCartInput div.img_box img {
    max-width: 375px;
    max-height: 230px;
} */

/* estiamteOrderInput -　見積詳細・注文情報入力
-------------------------------------------------------------*/
/* #cartFlow #estiamteOrderInput .content h3:first-child {
    margin-top: 0;
}

#cartFlow #estiamteOrderInput .estimate.button {
    margin: 10px 0
}

#cartFlow #estiamteOrderInput .content .img_box {
    width: 80px;
    height: 80px;
    float: left;
}

#cartFlow #estiamteOrderInput .content .img_box img {
    max-width: 80px;
    max-height: 80px;
} */

/* クーポンラジオボタン制御に仕様 */
.couponHide {
  display: none;
}

/* cartResult - カート完了画面
-------------------------------------------------------------*/
/* #cartResult .number {
    margin: 30px 0px;
    text-align: center;
    line-height: 200%;
}

#cartResult .number strong {
    font-size: 20px;
} */
#cartFlow {
  margin-top: 56px;
}
@media screen and (max-width: 767px) {
  #cartFlow {
    margin-top: 20px;
  }
}
/* cartRecommend - カートおすすめ
-------------------------------------------------------------*/
#cartRecommend {
  margin-top: 20px;
  width: 210px;
  padding: 10px;
  border: #ccc 1px solid;
}

#cartRecommend .box {
  margin: 0px 0 40px;
  border: 0px;
}

#cartRecommend .box:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#cartRecommend .text {
  margin-left: 70px;
  min-height: 60px;
}

#cartRecommend h3 {
  margin-bottom: 10px;
  height: auto;
  background: none;
  padding: 0px;
  border-bottom: none;
}

#cartRecommend h3 a {
  float: right;
}

#cartRecommend h4 {
  display: block;
  margin: 0px 0px 10px;
  background: none;
  padding: 0px;
  font-size: 70%;
  border-bottom: none;
}

#cartRecommend .appeal {
  display: block;
  margin: 0;
  color: #f60;
  font-size: 70%;
}

#cartRecommend .price {
  display: block;
  margin: 0;
  color: #c00;
}

#cartRecommend .price .teika {
  font-weight: bold;
  font-size: 100%;
}

#cartRecommend .price .other {
  font-size: 90%;
}

#cartRecommend .explanation1 {
  display: block;
  margin: 5px 0px 0 0;
  padding: 10px 0;
  border-top: #ccc 1px solid;
  font-size: 80%;
  line-height: 120%;
}

#cartRecommend .buttonarea {
  display: block;
  margin: 0px;
  padding-top: 10px;
  text-align: left;
}

#cartRecommend .buttonarea .button {
  display: block;
  margin: 0 0 10px;
}

#cartRecommend .property {
  margin: 0 0 10px;
  color: #aaa;
  font-size: 75%;
}

#cartRecommend .img_box {
  width: 60px;
  height: 60px;
  text-align: center;
  position: relative;
  float: left;
}

#cartRecommend .img_box img {
  width: auto;
  max-width: 60px;
  max-height: 60px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

/* クロネコ代金後払いスマホタイプ
-------------------------------------------------------------*/
#cartFlow .yamato_atobarai_auth_code {
  text-align: center;
}

#cartFlow .yamato_atobarai_auth_code input[type="text"] {
  width: 50px;
  height: 50px;
  font-size: 18px;
  text-align: center;
}

#cartFlow .yamato_atobarai_auth_code input[type="text"] + input[type="text"] {
  margin-left: 10px;
}

/* presentFlow - 買い物かご・プレゼント注文情報入力～注文完了まで
-------------------------------------------------------------*/
#presentFlow #cartLogin table {
  width: 446px !important;
}

/* =================================================================
9.定期購入商品履歴照会・変更
使用ファイル：teiki_index.xhtml, teiki_detail.xhtml
　　　　　　　teiki_renew.xhtml, teiki_renew_confirm.xhtml
=================================================================*/
/* teikiIndex - 定期購入商品一覧
-------------------------------------------------------------*/
#teikiIndex .bl_tableHorizontal:not(:has(.bl_btnHorizontal__right)) th:last-child,
#teikiIndex .bl_tableHorizontal:not(:has(.bl_btnHorizontal__right)) td:last-child{
  display: none;
}
.bl_teikiboxWrapper {
  border: 1px solid #d5d5d5;
  padding: 34px 24px 64px 24px;
  margin-top: 40px;
  margin-bottom: 45px;
}
.bl_teikiboxWrapper .bl_cartbox:last-child {
  margin-bottom: 0;
}

.bl_head_renew {
  display: flex;
  gap: 24px;
  margin: 20px 0 30px;
  flex-wrap: wrap;
}
.bl_head_renew:last-child {
  margin-bottom: 0;
}
.bl_head_renewItem {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .bl_teikiboxWrapper {
    padding: 16px;
  }
  .bl_head_renew {
    flex-direction: column;
    gap: 16px;
  }
  .bl_head_renew .bl_btnYellow {
    margin-left: auto;
    margin-right: auto;
  }
  /* .bl_head_renew .bl_btn {
    margin-top: 15px;
  } */
  .bl_head_renewItem {
    width: 100%;
    /* display: block; */
  }
  .bl_head_renewItem span,
  .bl_head_renewBtnWrapper {
    display: block;
    max-width: 100%;
  }
}
.bl_tableWrapper {
  width: 100%;
  overflow: auto;
}
.bl_tableHorizontal {
  width: 100%;
  margin-top: 32px;
}

.bl_tableHorizontal .bl_btnHorizontal {
  margin-bottom: 0;
}
.bl_tableHorizontal__card {
  margin-top: 0;
}
.bl_tableHorizontal__card th:last-child {
  width: 200px;
}
.bl_tableHorizontal.bl_tableHorizontal__card td .bl_btn {
  margin-left: auto;
  margin-right: auto;
}

.bl_tableHorizontal th {
  background-color: #f2f2f2;
  /* padding: 12px 16px; */
}
/* .bl_tableHorizontal td{
    padding: 12px 16px;
  } */
.bl_tableHorizontal th,
.bl_tableHorizontal td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #d5d5d5;
}
.bl_tableHorizontal td .bl_btn,
.bl_tableHorizontal td [type="button"][disabled] {
  width: 120px;
  padding: 7px;
  margin: 0 4px;
}
.bl_tableHorizontal td [type="button"][disabled] {
  border: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .bl_tableHorizontal {
    white-space: nowrap;
  }

  /* .bl_tableHorizontal__card{
        writing-mode:vertical-lr;
    }
    .bl_tableHorizontal__card td,
    .bl_tableHorizontal__card th{
        writing-mode:horizontal-tb;
        padding:16px;
    }
    .bl_tableHorizontal__card th{
        width: 110px;
    }
    .bl_tableHorizontal__card th:last-child{
        opacity:0;
        width: 110px;
        border: none;
    }
    .bl_tableHorizontal__card .button_area{
        border: none;
        padding: 0;
    }
    .bl_tableHorizontal.bl_tableHorizontal__card .button_area .bl_btn{
        margin-right: 0;
        margin-top: 10px;
    } */
}

.bl_teikibox .bl_rightBtn {
  margin-top: 32px;
}
.bl_rightBtn {
  font-size: 14px;
  display: block;
  width: fit-content;
  margin-left: auto;
  border: 1px solid #000;
  width: 226px;
  padding: 10px 0;
  background-color: #fff;
  cursor: pointer;
  border-radius: 21px;
}
/* @media screen and (max-width: 767px) {
  .bl_rightBtn {

  }
} */
.bl_rightBtn:hover {
  background-color: #f2f2f2;
}

.pagelink {
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagelink:not(:has(a)) {
  display: none;
}

.bl_teikibox_imgWrapper {
  width: 140px;
  aspect-ratio: 1;
  background-color: #f6f6f6;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 24px;
}
@media screen and (max-width: 767px) {
  .bl_teikibox_imgWrapper {
    width: 100px;
  }
}

.bl_teikibox_imgWrapper img {
  max-width: 90%;
  max-height: 90%;
}

.bl_teikiboxWrapper_main {
  display: flex;
  gap: 16px;
  margin-bottom: 42px;
}
.bl_teikiboxWrapper_main a {
  text-decoration: underline;
}
.bl_teikiboxWrapper_Wrapper {
  padding: 20px 0px 0px;
  margin-bottom: 65px;
}
@media screen and (max-width: 767px) {
  .bl_teikiboxWrapper_main {
    margin-bottom: 20px;
  }
  .bl_teikiboxWrapper_Wrapper {
    /* padding: 0px; */
    margin-bottom: 30px;
  }
}
.bl_teikiboxWrapper_main h3 {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 8px;
}
.bl_teikiboxWrapper_main > div:last-child {
  flex: 1;
}
.bl_teikiboxWrapper_main .head_detail {
  font-size: 12px;
  border: 1px solid #373737;
  padding: 2px 4.5px;
  border-radius: 9px;
  line-height: 1;
  width: fit-content;
  margin-bottom: 5px;
}
.bl_teikiboxWrapper_main .head_detail.is-desable {
  background-color: #d5d5d5;
}
.bl_teikiDate {
  font-size: 24px;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .bl_teikiDate {
    font-size: 18px;
  }
}
/* #teikiIndex h3 {
    margin: 5px;
    padding-left: 8px;
    border-left: 6px solid #373737;
    font-size: 110%;
}

#teikiIndex h4 {
    display: block;
    margin: 30px 0px 20px;
    padding-left: 15px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 2px 8px no-repeat;
    font-size: 100%;
}

#teikiIndex .box {
    margin: 10px;
    padding: 10px;
    border: 1px solid #CCC;
    background: #FFF;
}

#teikiIndex .head {
    padding: 5px;
    background: #F1F1F1;
}

#teikiIndex .headDetail {
    padding-left: 15px;
    background: url("../images/marker_on.gif") 0 5px no-repeat;
}

#teikiIndex .head_renew .button {
    display: inline-block;
    width: auto;
    margin-bottom: 10px;
}

#teikiIndex .price {
    color: #C00;
    text-align: right;
}

#teikiIndex table {
    width: 728px;
    margin: 10px 0px 30px;
}

#teikiIndex table:last-child {
    margin-bottom: 0px;
}

#teikiIndex th {
    padding: 5px 10px;
}

#teikiIndex td {
    text-align: center;
}

#teikiIndex td.month {
    background: #F9F9F9;
    font-weight: bold;
    color: #960;
}

#teikiIndex .status {
    float: right;
    margin-right: 20px;
}

#teikiIndex .cancel_oder {
    text-align: right;
}

#teikiIndex .cancel_oder .button {
    display: inline-block;
    width: auto;
}

#teikiIndex .cancel_oder form {
    height: 20px;
}

#teikiIndex .pageguide {
    float: left;
    width: 500px;
    font-size: 85%;
}

#teikiIndex .pagelink {
    clear: both;
    font-size: 85%;
    margin-bottom: 40px;
} */

/* teikiDetail - 定期購入商品照会・変更・確認画面
-------------------------------------------------------------*/
/* #teikiDetail h3 {
    margin: 5px;
    padding-left: 8px;
    border-left: 6px solid #373737;
    font-size: 110%;
}

#teikiDetail h4 {
    display: block;
    margin: 30px 0px 20px;
    padding-left: 15px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 2px 8px no-repeat;
    font-size: 100%;
}

#teikiDetail h5 {
    margin: 20px 0px 0;
    font-size: 16px;
}

#teikiDetail .box {
    margin: 10px;
    padding: 10px;
    border: 1px solid #CCC;
    background: #FFF;
}

#teikiDetail .head {
    padding: 5px;
    background: #F1F1F1;
}

#teikiDetail .headDetail {
    margin-right: 20px;
    padding-left: 5px;
    border-left: 12px groove #333;
}

#teikiDetail .price {
    color: #C00;
}

#teikiDetail table {
    width: 728px;
    margin: 10px 0px 30px;
}

#teikiDetail table:last-child {
    margin-bottom: 0px;
}

#teikiDetail td.month {
    background: #F9F9F9;
    font-weight: bold;
    color: #960;
} */

/* =================================================================
10.フッタ
使用ファイル：common/footer.xhtml
=================================================================*/
#footer {
  background-color: #373737;
  padding: 72px 20px 35px;
  color: #fff;
  white-space: nowrap;
  position: relative;
  overflow: visible;
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  #footer {
    margin-top: 70px;
  }
}
.bl_blfooter_body {
  flex: 1;
}
.blfooter_inner {
  max-width: 1125px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 115px;
}
@media screen and (max-width: 767px) {
  .blfooter_inner {
    flex-direction: column-reverse;
    gap: 0;
  }
  .bl_blfooter_imgWrapper {
    text-align: center;
  }
  .bl_blfooter_imgWrapper img {
    width: 172px;
  }
}
.svg-sns-iconlist {
  display: none;
}
.bl_footerSection {
  margin-bottom: 30px;
}
.bl_footerHeading {
  margin-bottom: 24px;
  font-size: 18px;
  padding-bottom: 15px;
  font-weight: bold;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
@media screen and (max-width: 767px) {
  .bl_footerHeading {
    margin-bottom: 0px;
  }
}
.bl_footerNav01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.bl_footerNav01_list01 {
  display: flex;
  flex: 1;
  gap: 5vw;
  justify-content: space-between;
  margin-bottom: 30px;
}

.bl_footerNav01_list01_item01 dt,
.bl_footerNav01_list01_item02 dt {
  font-weight: 500;
}
.bl_footerNav01_list01_item01 dd,
.bl_footerNav01_list01_item02 dd {
  font-size: 14px;
  margin-top: 14px;
}

.bl_footerNav01_list01_item02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 451px;
  min-width: 235px;
}
@media screen and (max-width: 767px) {
  .bl_footerNav01_list01_item02 {
    max-width: 100%;
  }
}

.bl_footerNav01_list01_item02 dt {
  width: 100%;
}
.bl_footerNav01_list01_item02 dd {
  width: 50%;
  padding-right: 20px;
}
.bl_footerNav01_list02 {
  padding-right: min(2.8vw, 40px);
}
.bl_footerNav01_list02 li {
  margin-bottom: 30px;
}
.bl_footerNav01_list02 li a::after,
.bl_footerNav02_list01 li a::after {
  content: "";
  width: 6px;
  aspect-ratio: 1;
  display: inline-block;
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  margin-left: 8px;
}
.bl_footerNav02_list01 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 50px;
  font-weight: 500;
}
.bl_footerNav02_list01 li {
  width: 20%;
}
.bl_footerNav02_list02 {
  font-size: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 72px;
}
.bl_footerNav02_list02 a::after {
  content: "";
  vertical-align: middle;
  width: 11px;
  height: 10px;
  margin-left: 6px;
  display: inline-block;
  background: url(../images/icon/link.svg) no-repeat;
  background-size: contain;
}
.bl_snsList {
  margin-top: 56px;
  display: flex;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  #footer {
    padding-top: 40px;
  }
  .bl_footerSection {
    margin-bottom: 40px;
  }
  .bl_footerNav01_list01 {
    margin-bottom: 0;
  }
  .bl_footerNav01_list02 {
    padding-right: 0;
  }
  .bl_footerNav01,
  .bl_footerNav01_list01,
  .bl_footerNav01_list01_item02 {
    display: block;
  }
  .bl_footerNav01_list01_item01 dt,
  .bl_footerNav01_list01_item02 dt {
    cursor: pointer;
    padding: 15px 0 15px;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }

  .bl_footerNav01_list01_item01 dt::before,
  .bl_footerNav01_list01_item02 dt::before,
  .bl_footerNav01_list01_item01 dt::after,
  .bl_footerNav01_list01_item02 dt::after {
    content: "";
    width: 14px;
    height: 2px;
    display: block;
    background-color: #fff;
    position: absolute;
    top: 50%;
    right: 15px;
    transition: all 0.3s;
  }

  .bl_footerNav01_list01_item01 dt::before,
  .bl_footerNav01_list01_item02 dt::before {
    transform: translate(0, -50%);
  }
  .bl_footerNav01_list01_item01 dt::after,
  .bl_footerNav01_list01_item02 dt::after {
    transform: translate(0, -50%) rotate(90deg);
  }
  .bl_footerNav01_list01_item01 dt.is-active::after,
  .bl_footerNav01_list01_item02 dt.is-active::after {
    transform: translate(0, -50%);
  }

  .bl_footerNav01_list02 li,
  .bl_footerNav02_list01 li {
    margin-bottom: 0;
    padding: 16px 0;
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }

  .bl_footerNav02_list01 {
    display: block;
  }

  .bl_footerNav01_list02 li a::after,
  .bl_footerNav02_list01 li a::after {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }
  .bl_footerNav02_list01 li {
    width: 100%;
  }
  .bl_footerNav01_list01_item01 dd,
  .bl_footerNav01_list01_item02 dd {
    display: none;
    padding-left: 15px;
  }
  .bl_footerNav01_list01_item02 dd {
    width: 100%;
  }
  .bl_footerNav01_list01_item01 dd:last-child,
  .bl_footerNav01_list01_item02 dd:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    padding-bottom: 14px;
  }

  .bl_footerNav01_list01_item01 .is-active ~ dd,
  .bl_footerNav01_list01_item02 .is-active ~ dd {
    display: block;
  }

  .bl_footerNav02_list02 {
    margin-top: 40px;
    display: block;
    text-align: center;
  }
  .bl_footerNav02_list02 li {
    margin-bottom: 15px;
  }
  .bl_snsList {
    justify-content: center;
    margin-top: 40px;
  }
}
.bl_footerBottom {
  padding: 25px 20px;
  max-width: calc(1125px + 40px);
  margin: 0 auto;
  text-align: right;
}
.bl_copyRight {
  color: #999;
  font-size: 10px;
}

.bl_footerBottom_logos {
  display: flex;
  gap: 56px;
  justify-content: flex-end;
  margin-bottom: 12px;
}
@media screen and (max-width: 767px) {
  .bl_footerBottom {
    text-align: center;
    gap: 40px;
    padding: 16px 20px 10px;
    margin-bottom: 10px;
  }
  .bl_footerBottom_logos {
    justify-content: center;
    gap: 40px;
  }
  .bl_footerBottom_logos > div:first-child img {
    width: 92px;
  }
  .bl_footerBottom_logos > div:nth-child(2) img {
    width: 129px;
  }
  .bl_copyRight {
    text-align: center;
    display: block;
  }
}

.bl_footerNavSpWrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding-top: 16px;
  padding-bottom: 16px;
  border-top: 1px solid #d5d5d5;
  z-index: 104;
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_footerNavSpWrapper {
    display: block;
  }
}
.bl_footerNavSp {
  display: flex;
  justify-content: center;
  display: grid;
  font-size: 10px;
  grid-template-columns: repeat(5, 1fr);
}
.bl_footerNavSp a,
.bl_footerNavSp span {
  display: block;
  text-align: center;
}
.bl_footerNavSp li:not(:last-child) {
  stroke: #000;
  stroke-width: 1.4;
}
.bl_footerNavSp svg {
  display: block;
  margin: 0 auto 5px;
}
.bl_footerSearchClose {
  border: none;
  background-color: transparent;
  font-size: 10px;
  width: 31px;
  height: 43px;
  position: absolute;
  right: 20px;
  top: 16px;
  padding: 30px 0 0;
}
.bl_footerSearchClose::after,
.bl_footerSearchClose::before {
  content: "";
  width: 22px;
  height: 2px;
  display: block;
  position: absolute;
  top: 30%;
  left: 50%;

  background-color: #000;
}
.bl_footerSearchClose::after {
  transform: translate(-50%, 0%) rotate(45deg);
}
.bl_footerSearchClose::before {
  transform: translate(-50%, 0%) rotate(-45deg);
}
.bl_footerSearchMenu {
  padding-top: 75px;
  padding-bottom: 24px;
  position: fixed;
  bottom: -100%;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 103;
  height: 690px;
  max-height: calc(100% - 150px);
  transition: all 0.3s;
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_footerSearchMenu {
    display: block;
    overflow: auto;
  }
}
.is-footerMenu .bl_footerSearchMenu {
  bottom: 81px;
}

.bl_searchTab {
  margin: 16px 20px;
}
.bl_searchTab_header {
  display: flex;
  text-align: center;
  border-bottom: 1px solid #d5d5d5;
  margin-bottom: 24px;
}
.bl_searchTab_header li {
  flex: 1;
  position: relative;
}
.bl_searchTab_header li.is-active::after {
  content: "";
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #000;
}
.bl_searchTab_header li a {
  display: block;
  padding-bottom: 12px;
  font-size: 14px;
  font-weight: 500;
}
.bl_searchTab_bodyItem {
  display: none;
}
.bl_searchTab_bodyItem.is-active {
  display: block;
}
.bl_searchBodyItem_heading {
  text-align: center;
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 16px;
}
.bl_searchBodyItem_list__first {
  margin-bottom: 32px;
}
.bl_searchBodyItem_list {
  display: grid;

  gap: 26px;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 24px;
}
.bl_searchBodyItem_list li {
  width: 64px;
  text-align: center;
  line-height: 1.2;
  font-size: 12px;
}
.bl_searchBodyItem_list li img {
  display: block;
  margin: 0 0 5px;
}

/* .bl_searchTab_header li a::after{
    content:'';
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D5D5D5;

} */
/*
#footer .copyright {
    padding: 10px 0 10px;
    font-size: 75%;
    color: #333;
    text-align: center;
    border-top: 1px solid #CCC;
} */

/* backtotop */
/* #topBtn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: block;
}

#topBtn a {
    width: 54px;
    height: 54px;
    display: block;
} */

/* =================================================================
11.商品詳細・一覧、プレゼント詳細・一覧、トピックス詳細・一覧
使用ファイル：item_list$detail.xhtml, item_list$image.xhtml
　　　　　　　item_list$simple.xhtml, item_detail.xhtml
　　　　　　　present_list.xhtml, present_detail.xhtml
		　　topics_list.xhtml,topics_detail.xhtml
　　　　　　　item_list_awoo.xhtml,
=================================================================*/
/* category_html - カテゴリHTML
-------------------------------------------------------------*/

#bl_contentWrapper2Clumn {
  max-width: 1330px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  gap: 40px;

  grid-template-columns: 220px 1fr;
}
@media screen and (max-width: 767px) {
  #bl_contentWrapper2Clumn {
    grid-template-columns: 1fr;
  }
}
.bl_contentWrapper1Clumn {
  max-width: 1164px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}

.bl_contentWrapper {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}
/* .bl_contentWrapper1Clumn02{
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 20px;
} */
.max1124 {
  max-width: 1124px;
  margin: 0 auto;
}

.max1014 {
  max-width: 1014px;
  margin: 0 auto;
}
.max1030 {
  max-width: 1030px;
  margin: 0 auto;
}
.bl_card01Unit {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 20px;
  margin-bottom: 88px;
}
.bl_card01 {
  width: 190px;
  display: flex;
  flex-direction: column;
  counter-increment: card;
}

.bl_card01 .bl_badge {
  font-size: 12px;
}

.bl_card01[id^="ranking"] .bl_card01_imgWrapper {
  position: relative;
}
.bl_card01[id^="ranking"] .bl_card01_imgWrapper::before {
  content: counter(card);
  aspect-ratio: 1;
  font-weight: bold;
  width: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 6px;
  top: 6px;
  font-size: 14px;
  z-index: 1;
  border-radius: 50%;
  background-color: #d9d9d9;
  font-family: "Roboto", sans-serif;
}
.bl_card01#ranking_no1 .bl_card01_imgWrapper::before,
.bl_card01#ranking_no2 .bl_card01_imgWrapper::before,
.bl_card01#ranking_no3 .bl_card01_imgWrapper::before {
  width: 30px;
  height: 26px;
  top: 3px;
  left: 5px;
  border-radius: 0%;
  background-color: transparent;
  line-height: 32px;
  padding-top: 4px;
  background-image: url(../images/icon/crown.svg);
  background-repeat: no-repeat;
}

.bl_card01_imgWrapper {
  background-color: #f6f6f6;
  margin-bottom: 12px;
  position: relative;
  border-radius: 24px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .bl_card01 {
    width: 100%;
    flex-direction: row;
    gap: 12px;
    align-items: flex-start;
  }
  .bl_card01:not(:last-child) {
    margin-bottom: 32px;
  }
  .bl_card01Unit {
    display: block;
    margin-bottom: 56px;
  }
}

.bl_card01_meta {
  flex: 1;
}

.bl_card01_imgWrapper a {
  display: flex;
  width: 100%;
  aspect-ratio: 1;
  align-items: center;
  justify-content: center;
}
.bl_card01_imgWrapper img {
  max-width: 90%;
  max-height: 90%;
}
@media screen and (max-width: 767px) {
  .bl_card01_imgWrapper {
    width: 150px;
  }
}
.bl_card01_name {
  margin-bottom: 8px;
}
.bl_card01_meta a {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .bl_card01_meta a {
    display: block;
  }
}
.bl_card01_txt div:nth-child(n + 2) {
  display: none;
}
.bl_card01_txt {
  font-size: 14px;
  color: #737373;
  min-height: 4.5em;
  margin-bottom: 4px;
}
.bl_card01_basePrice {
  font-weight: bold;
  font-size: 22px;
}
.bl_card01_basePrice span {
  font-size: 16px;
}
.bl_card01_taxPrice {
  font-size: 14px;
  margin-bottom: 5px;
}
.bl_card01_badgeFree {
  border: 1px solid currentColor;
  font-size: 12px;
  padding: 0 4px;
  line-height: 1.4;
  width: fit-content;
  color: #c10230;
}
@media screen and (max-width: 767px) {
  .bl_card01_txt {
    min-height: 0em;
  }
}

.bl_card01_favoriteWrapper:has(.wishStatus.wished) .bl_card01_favorite__off,
.bl_detailBtnBox_wishList:has(.wishStatus.wished) .bl_card01_favorite__off {
  display: none;
}
.bl_card01_favoriteWrapper:not(:has(.wishStatus.wished))
  .bl_card01_favorite__on,
.bl_detailBtnBox_wishList:not(:has(.wishStatus.wished))
  .bl_card01_favorite__on {
  display: none;
}

.bl_card01_favorite {
  border: none;
  padding: 0;
  background: none;
  position: relative;
}
.bl_detailBtnBox_wishList button {
  cursor: pointer;
}
.bl_detailBtnBox_wishList .bl_card01_favorite {
  width: 100%;
  height: 100%;
  padding-top: 3px;
}
.bl_detailBtnBox_wishList .bl_card01_favorite::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.bl_detailBtnBox_wishList.bl_detailBtnBox_wishList__variations {
  cursor: pointer;
  aspect-ratio: 1;
}
.bl_detailBtnBox_wishList.bl_detailBtnBox_wishList__variations span {
  display: block;
}
.bl_detailBtnBox_wishList__variations input {
  display: none;
}
.bl_detailBtnBox_wishList__variations svg {
  fill: #bcbcbc;
  display: block;
  width: 24px;
}

.bl_detailBtnBox div:not(:has(*)) {
  display: none;
}
.bl_card01_favoriteWrapper {
  position: absolute;
  right: 12px;
  bottom: 12px;
  width: 35px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc;
  border-radius: 50%;
}
.bl_card01_favorite svg {
  fill: #bcbcbc;
  stroke: #bcbcbc;
  width: 20px;
  display: block;
  aspect-ratio: 24/20;
  margin-left: auto;
  margin-right: auto;
}

.bl_card01_favorite__on svg {
  fill: #f27186;
  stroke: #f27186;
}
/* .bl_card01_favorite__off svg {
  fill: #bcbcbc;
} */
.bl_variations_cartBtn {
  display: flex;
  gap: 16px;
  margin-left: 92px;
}
@media screen and (max-width: 1000px) {
  .bl_variations_cartBtn {
    margin-left: 0px;
  }
}
@media screen and (max-width: 767px) {
  .bl_variations_data {
    flex-wrap: wrap;
  }
}
.bl_variations_cartBtn span:has(.bl_cartBtn__variations) {
  flex: 1;
}
/* .bl_variations_cartBtn .bl_detailBtnBox_wishList {
  height: 60px;
}
@media screen and (max-width: 767px) {
  .bl_variations_cartBtn .bl_detailBtnBox_wishList {
    height: 50px;
  }
} */

.bl_detailBtnWrapper {
  display: flex;
  gap: 15px;
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .bl_detailBtnWrapper {
    display: block;
  }
}
.bl_selectCounter {
  display: grid;
  width: 135px;
  border: solid 1px #ccc;
  border-radius: 23px;
  grid-template-columns: repeat(3, 1fr);
}
.bl_selectCounter div {
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  position: relative;
}

.bl_selectCounter .bl_selectCounter_plus,
.bl_selectCounter .bl_selectCounter_minus {
  cursor: pointer;
}

.bl_selectCounter .bl_selectCounter_plus::before,
.bl_selectCounter .bl_selectCounter_minus::before,
.bl_selectCounter .bl_selectCounter_plus::after {
  content: "";
  width: 12px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
}
.bl_selectCounter .bl_selectCounter_plus::before,
.bl_selectCounter .bl_selectCounter_minus::before {
  transform: translate(-50%, -50%);
}
.bl_selectCounter .bl_selectCounter_plus::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.bl_selectCounter_number {
  border-left: solid 1px #ccc;
  border-right: solid 1px #ccc;
}
.bl_detailCounter {
  width: 135px;
}
.bl_detailCounter:not(:has(.bl_selectParent)) {
  display: none;
}
@media screen and (max-width: 767px) {
  .bl_detailCounter {
    margin-bottom: 15px;
  }
}

.bl_selectParent select {
  display: none;
}

.bl_variations_data {
  display: flex;
  gap: 0 16px;
  margin-top: 32px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}
.bl_variations_data_cell_imgWrapper {
  width: 76px;
}
.bl_variations_data_cell_imgWrapper:not(:has(img)) {
  display: none;
}
.bl_variations_data_cell_imgWrapper img {
  width: 100%;
}

.bl_variations_data_size {
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .bl_variations_data_size {
    font-size: 18px;
  }
}

.bl_variations_data_cell_price {
  font-weight: bold;
  font-size: 22px;
}
.bl_variations_data_cell_price span {
  font-size: 16px;
}
.bl_variations_data_cell_intax,
.bl_variations_data_cell_tax {
  font-size: 14px;
}
.bl_variations_data_cell:last-child {
  padding-top: 6px;
}
.bl_variations_data_zaiko {
  font-size: 16px;
}
.bl_variations_data__bottom {
  display: flex;
  gap: 16px;
  white-space: nowrap;
}

/* .bl_card01_favorite.is-favorite{
    fill:#F27186;
} */

.bl_categoryList {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.bl_categoryList:not(:has(.is-active)) li:first-child span {
  flex: 1;
  background-color: #ffdd00;
  border-color: #ffdd00;
}

.bl_categoryList li span a,
.bl_categoryList li span:not(:has(a)) {
  display: block;
  border: 1px solid #d5d5d5;
  padding: 3px 11px;
  border-radius: 16px;
}

.bl_categoryList .is-active a,
.bl_categoryList .is-active:not(:has(a)) {
  background-color: #ffdd00;
  border-color: #d5d5d5;
  border-radius: 16px;
}
.bl_layout_rank02 .bl_categoryList .is-active {
  border: none;
  color: #000;
}
@media screen and (max-width: 767px) {
  .bl_layout_rank02 .bl_categoryList span {
    padding: 4.5px 13px;
  }
}
.bl_categoryList__onayami li:has(a[href$="ONAYAMI_CARER/"]),
.bl_categoryList__onayami li:has(a[href$="ONAYAMI_CARE/"]) {
  width: 100%;
  margin-bottom: 10px;
}
.bl_categoryList__onayami li:has(a[href$="ONAYAMI_CARE/"]) {
  margin-top: 30px;
}
.bl_categoryList__onayami li:has(a[href$="ONAYAMI_CARER/"]) span,
.bl_categoryList__onayami li:has(a[href$="ONAYAMI_CARE/"]) span {
  border: none;
}

.bl_categoryList__onayami li a[href$="ONAYAMI_CARER/"],
.bl_categoryList__onayami li a[href$="ONAYAMI_CARE/"] {
  pointer-events: none;
  font-size: 24px;
  font-weight: bold;
  border:none;
}
@media screen and (max-width: 767px) {
  .bl_categoryList__onayami li a[href$="ONAYAMI_CARER/"],
  .bl_categoryList__onayami li a[href$="ONAYAMI_CARE/"] {
    font-size: 20px;
  }
}

.bl_cartBtn {
  font-size: 18px;
  background: #ffdd00;
  display: block;
  text-align: center;
  padding: 9px 10px;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  border-radius: 23px;
}
.bl_cartBtn.bl_cartBtn--disabled {
  background-color: #d5d5d5;
  cursor: not-allowed;
}
.bl_cartBtn svg {
  vertical-align: middle;
}
.bl_cartBtn input {
  display: none;
}
.bl_detailBtnBox {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
  flex: 1;
}

.bl_detailBtnBox > div:has(.bl_cartBtn) {
  width: calc(100% - 75px);
}
@media screen and (max-width: 767px) {
  .bl_detailBtnBox > div:has(.bl_cartBtn) {
    width: calc(100% - 65px);
  }
}

.bl_detailBtnBox > div:nth-child(1) {
  flex: 1;
}
.bl_detailBtnBox_wishList {
  aspect-ratio: 1;
  display: flex;
  width: 45px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 1px solid #ccc;
  /* width: 24px; */
  aspect-ratio: 1;
  border-radius: 50%;
}
/*
.bl_detailBtnBox_wishList svg{
    fill:#BCBCBC;

} */
/* .bl_detailBtnBox {
  margin-top: 32px;
  margin-bottom: 16px;
} */

.bl_snsList02 {
  margin-top: 10px;
  /* border-top: 1px solid #d5d5d5;
  border-bottom: 1px solid #d5d5d5; */
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  font-size: 15px;
  display: flex;
}
.bl_snsList02 img {
  display: block;
}

.bl_snsList02 dt {
  font-weight: bold;
}

.bl_movieUnit {
  margin-bottom: 40px;
}
.bl_movieItem iframe {
  border: none;
  aspect-ratio: 668/376;
  max-width: 100%;
  width: 668px;
  display: block;
}
.bl_movieItem {
  margin: 32px auto;
  width: fit-content;
}

.bl_detailListWrapper {
  background-color: #f7f7f7;
  padding: 63px 50px 45px;
  margin-bottom: 40px;
  display: none;
}
.bl_detailListWrapper:has(dt),
.bl_detailListWrapper:has(.bl_movieUnit)  {
  display: block;
}
.bl_detailListWrapper:not(:has(dt)) .bl_movieUnit{
  margin-bottom:18px;
}
@media screen and (max-width: 767px) {
  .bl_detailListWrapper:not(:has(dt)) .bl_movieUnit{
    margin-bottom:0px;
  }
}

.bl_detailListWrapper iframe {
  border-radius: 15px;
  overflow: hidden;
}
/* .bl_detailList {
  margin-bottom: 80px;
} */
.bl_detailList dt {
  font-weight: bold;
  font-size: 20px;
  /* border-bottom: 1px solid #d5d5d5; */
  padding-bottom: 20px;
}
.bl_detailList dd {
  font-size: 18px;
}
.bl_detailList > div:not(:last-child) {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .bl_detailListWrapper {
    padding: 20px 20px 20px;
    margin-bottom: 30px;
  }
  /* .bl_detailList {
    margin-bottom: 30px;
  } */
  .bl_detailList dt {
    padding-bottom: 10px;
  }
  .bl_detailList dd {
    font-size: 16px;
  }
  .bl_detailList > div:not(:last-child) {
    margin-bottom: 30px;
  }
  .bl_categoryList {
    margin-bottom: 24px;
  }
  .bl_categoryList li {
    font-size: 14px;
  }
  /* .bl_detailBtnBox {
    margin-top: 24px;
  } */
  .bl_cartBtn {
    padding: 10.5px 10px;
  }
  .bl_detailBtnBox_wishList {
    width: 50px;
    height: 50px;
  }
  .bl_snsList02 {
    margin-top: 32px;
  }
  /* .bl_movieUnit {
    margin-top: 40px;
  } */
  .bl_movieItem {
    margin: 10px auto;
  }
}

.bl_detailBottom {
  margin-bottom: 68px;
}
.bl_topBox12 {
  position: relative;
}
@media screen and (max-width: 767px) {
  .bl_detailBottom .bl_topBox12 {
    margin-bottom: 40px;
  }
}
/* #category_html {
    margin-bottom: 20px;
}

#category_html img {
    display: block;
    margin-bottom: 10px;
} */

/* awoo AI　商品一覧
-------------------------------------------------------------*/
/* #awoo-classify {
    margin-bottom: 20px;
}

#awoo-classify .awoo-tag-wrapper {
    gap: 0;
}

#awoo-classify .awoo-tag-wrapper a {
    font-size: 12px;
    color: #000;
    background: #fff;
    border: 1px solid #000;
    padding: 5px 10px;
    margin: 0 4px 8px;
}

#awoo-classify .awoo-tag-wrapper a:hover {
    color: #3A3A3A;
    border-color: #3A3A3A;
    opacity: 0.7;
}

#awoo-classify .awoo-tag-wrapper a::before {
    content: "#";
} */

/* itemListCategory - カテゴリ
-------------------------------------------------------------*/

.bl_searchBox_fixed {
  background-color: #fff;
  padding: 40px;
  position: fixed;
  z-index: 102;
  top: 50%;
  left: 50%;
  line-height: 1.5;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  max-width: 800px;
  max-height: 90dvh;
  display: none;
}

.is-searchActive .bl_searchBox_fixed {
  display: block;
}
.bl_searchBox_fixed_inner {
  overflow: auto;
  height: 100%;
  max-height: calc(90dvh - 80px);
}

@media screen and (max-width: 767px) {
  .bl_searchBox_fixed {
    padding: 40px 15px;
    width: calc(100% - 30px);
  }
}

/* .bl_grayBack {
  opacity: 0.8 !important;
} */

.itemListCategory_mainHeading {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .itemListCategory_mainHeading {
    font-size: 18px;
    margin-bottom: 24px;
    padding-bottom: 14px;
  }
}
/* .bl_searchBox_fixed form {
  overflow: auto;
  display: block;
  max-height: calc(90dvh - 80px);
} */
/* @media screen and (max-width: 767px) {
  .bl_searchBox_fixed {
    margin-left: -20px;
    margin-right: -20px;
    margin-bottom: 40px;
  }
} */
.bl_itemListCategory_heading01 {
  font-size: 16px;
  font-weight: normal;
  font-family: "Roboto", sans-serif;
  margin-bottom: 8px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .bl_itemListCategory_heading01 {
    font-size: 14px;
  }
}
/*
.bl_searchBox_heading {
  padding: 12px 16px;
  color: #fff;
  position: relative;
  font-weight: 500;
  cursor: pointer;
  background-color: #373737;
}
.bl_itemListCategory_searchList {
  display: none;
}
.bl_searchBox_heading.is-active
  + .bl_searchBox_body
  .bl_itemListCategory_searchList {
  display: block;
}

.bl_searchBox_heading::before,
.bl_searchBox_heading::after {
  content: "";
  display: block;
  width: 14px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
}
.bl_searchBox_heading::before {
  transform: translate(0, -50%);
}
.bl_searchBox_heading::after {
  transform: translate(0, -50%) rotate(90deg);
  transition: all 0.3s;
}
.bl_searchBox_heading.is-active::after {
  transform: translate(0, -50%) rotate(0deg);
} */

.bl_itemListCategory_keyword {
  width: 100%;
  position: relative;
}
.bl_itemListCategory_keyword [type="text"] {
  width: 100%;
  background-color: #f2f2f2;
  border-color: #f2f2f2;
  border-radius: 24px;
  padding: 10px 10px 10px 45px;
  /* background-image: url("../images/icon/search.svg");
    background-size: 24px 24px;
    background-position: 98% center;
    background-repeat: no-repeat; */
}
.bl_itemListCategory_keyword [type="submit"] {
  position: absolute;
  background-image: url("../images/icon/search.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;
  border: none;
  left: 20px;
  width: 24px;
  aspect-ratio: 1;
  top: 50%;
  cursor: pointer;
  transform: translateY(-50%);
  text-indent: -9999px;
}

/* .bl_itemListCategory_keyword [type="text"]:placeholder-shown{

    background-image: url("../images/icon/search.svg");
    background-size: 24px 24px;
    background-position: 98% center;
    background-repeat: no-repeat;
} */
/* .bl_itemListCategory_keyword [type="text"]:not(:placeholder-shown){
    background-image: none;
} */
/* .bl_searchBox{
    margin-bottom:16px ;
} */
.bl_itemListCategory_searchList {
  background-color: #fff;
  padding: 24px 0 0;
}
.bl_itemListCategory_searchList div:not(:last-child) {
  margin-bottom: 6px;
}
@media screen and (max-width: 767px) {
  .bl_itemListCategory_searchList div:not(:last-child) {
    margin-bottom: 14px;
  }
}
.bl_itemListCategory_searchList_heading {
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px;
}
/* @media screen and (max-width: 767px) {
    .bl_itemListCategory_searchList_heading{
        margin-bottom: 10px;
    }
} */
.bl_searchBox_close {
  text-align: center;
  font-size: 10px;
  position: absolute;
  right: 24px;
  top: 24px;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .bl_searchBox_close {
    right: 20px;
    top: 16px;
  }
}

.bl_searchBox_close span {
  aspect-ratio: 1;
  width: 18px;
  display: block;
  margin: 0 auto 5px;
  position: relative;
}
.bl_searchBox_close span::after,
.bl_searchBox_close span::before {
  content: "";
  width: 130%;
  height: 2px;
  display: block;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
}
.bl_searchBox_close span::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.bl_searchBox_close span::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.bl_bl_itemListCategory_btns {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 16px;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .bl_bl_itemListCategory_btns {
    gap: 8px;
  }
}
.bl_itemListCategory_btn {
  border: 1px solid #000;
  padding: 7px 25px;
  font-size: 16px;
  border-radius: 24px;
  min-width: 160px;
  text-align: center;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .bl_itemListCategory_btn {
    padding: 7px 13.5px;
    font-size: 12px;
    min-width: 120px;
  }
}

.bl_itemListCategory_btn__send {
  background-color: #000;
  color: #fff;
}
.bl_itemListCategory_btn__switch {
  background-color: #000;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .bl_itemListCategory_btn__switch {
    background-color: #000;
    color: #fff;
    font-size: 14px;
    padding: 9px 24px;
  }
}

.bl_itemListCategory_searchList ul {
  display: flex;
  gap: 12px 24px;
  flex-wrap: wrap;
  max-width: 648px;
  white-space: nowrap;
}
.bl_itemListCategory_searchList ul li {
  width: 200px;
  margin-top: 2px;
}
@media screen and (max-width: 767px) {
  .bl_itemListCategory_searchList ul li {
    width: auto;
    font-size: 14px;
  }
}
.bl_itemListCategory_searchList label {
  cursor: pointer;
}
.bl_itemListCategory_searchList label span {
  width: 24px;
  position: relative;
  aspect-ratio: 1;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  margin-top: -2px;

  border: 1px solid #d5d5d5;
  background-color: #fff;
}
.bl_itemListCategory_searchList :checked + span {
  background-color: #ffdd00;
  border-color: #ffdd00;
}
.bl_itemListCategory_searchList :checked + span::after {
  content: "";
  position: absolute;
  width: 6px;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  height: 16px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

.bl_itemListCategory_searchList label input {
  display: none;
}

.bl_selectsearch {
  display: flex;
  gap: 16px;
  margin-bottom: 24px;
}

.bl_selectsearchList {
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;

  gap: 8px;
  /* margin-bottom:16px ; */
}
.bl_selectsearch_heading {
  padding-top: 4px;
}
@media screen and (max-width: 767px) {
  .bl_selectsearchList {
    margin-top: 10px;
  }
  .bl_selectsearch {
    flex-wrap: wrap;
    gap: 4px 16px;
  }
  .bl_selectsearch_heading {
    font-size: 14px;
    width: 100%;
  }
}
.bl_selectsearchList li {
  background-color: #f2f2f2;
  padding: 4.5px 30px 4.5px 10px;
  position: relative;
  border-radius: 6px;
}
.bl_selectsearchList li a {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  aspect-ratio: 1;
  line-height: 14px;
  text-align: center;
  font-size: 20px;
  /* background-color: #737373; */
  cursor: pointer;
  /* border-radius: 50%; */
  display: block;
  border: none;
}
/* .bl_selectsearchList li a::after,
.bl_selectsearchList li a::before{
    content: '';
    position: absolute;
    width: 1px;
    height: 40%;
    background-color: #fff;
    top: 50%;
    left: 50%;

}
.bl_selectsearchList li a::after{
    transform: translate(-50%,-50%) rotate(45deg);
}
.bl_selectsearchList li a::before{
    transform: translate(-50%,-50%) rotate(-45deg);
} */

a.bl_formClear {
  border: none;
  font-size: 14px;
  text-decoration: underline;
  cursor: pointer;
  display: inline-block;
  margin-top: 16px;
}

.bl_searchHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 32px;
  gap: 15px;
}
.bl_searchHeader select {
  font-size: 16px;
  padding: 10px 16px;
  width: 150px;
  border-radius: 20px;
}
.bl_searchHeader_guid {
  display: flex;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .bl_searchHeader {
    flex-direction: column;
    margin-bottom: 24px;
    align-items: flex-start;
  }
  .bl_searchHeader select {
    width: 130px;
  }
  .bl_searchHeader.bl_searchHeader__review {
    flex-direction: row;
  }
}
.bl_maxRowSelectWrapper {
  display: flex;
  gap: 10px;
  align-items: center;
}
.bl_pager__num {
  display: flex;
  justify-content: center;
  align-items: center;
}
.bl_pager__num li a,
.bl_pager__num li .is-current {
  aspect-ratio: 1;
  width: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_pager__num li .is-current {
  background-color: #ffdd00;
}
.bl_product__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  /* margin:88px 0 80px; */
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .bl_product__pager {
    margin-bottom: 56px;
    /* margin:56px 0 ; */
  }
}
.bl_pager__next a,
.bl_pager__prev a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}
.bl_pager__next,
.bl_pager__prev {
  aspect-ratio: 1;
  width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_pager__next:not(:has(a)),
.bl_pager__prev:not(:has(a)) {
  opacity: 0.5;
}
.bl_pager__first,
.bl_pager__last {
  font-size: 20px;
  aspect-ratio: 1;
  width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* .bl_searchBox_fixed {
    margin-bottom: 20px;
}

.bl_searchBox_fixed ul {
    display: block;
    width: 768px;
    border: #CCC 1px solid;
    background: #F5F5F5;
}

.bl_searchBox_fixed ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* .bl_searchBox_fixed li {
    display: inline;
    float: left;
}

.bl_searchBox_fixed .select {
    background: url("../images/marker_on.gif") 7px 10px no-repeat #C00;
    color: #FFF;
    text-decoration: none;
}

.bl_searchBox_fixed li a {
    display: block;
    padding: 5px;
    background: url("../images/marker.gif") 7px 10px no-repeat;
    color: #333;
    font-size: 80%;
    text-decoration: none;
    text-indent: 15px;
    white-space: nowrap;
}

.bl_searchBox_fixed li a:link {
    display: block;
}

.bl_searchBox_fixed li a:hover {
    background: url("../images/marker.gif") 7px 10px no-repeat #CCC;
    color: #FFF;
    text-decoration: underline;
}

.bl_searchBox_fixed #sub ul {
    display: block;
    width: 768px;
    border: #CCC 1px solid;
    border-top: none;
    background: #FFF;
}

.bl_searchBox_fixed #sub ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* .bl_searchBox_fixed #sub li {
    display: inline;
    float: left;
}

.bl_searchBox_fixed #sub .select {
    background: url("../images/marker_on.gif") 7px 10px no-repeat #CCC;
    color: #FFF;
    text-decoration: none;
}

.bl_searchBox_fixed #sub li a {
    display: block;
    padding: 5px;
    background: url("../images/marker.gif") 7px 10px no-repeat;
    color: #333;
    font-size: 80%;
    text-decoration: none;
    text-indent: 15px;
}

.bl_searchBox_fixed #sub li a:link {
    display: block;
}

.bl_searchBox_fixed #sub li a:hover {
    background: url("../images/marker.gif") 7px 10px no-repeat #CCC;
    color: #FFF;
    text-decoration: underline;
} */

/* narrowListCategory - 絞り込みカテゴリ
-------------------------------------------------------------*/
/* #narrowListCategory:after {
    content: "";
    clear: both;
    display: block;
}

/* clearfix */
/* #narrowListCategory h3 {
    display: block;
    padding: 3px 10px;
    font-size: 80%;
    border: 1px solid #ccc;
    z-index: 99;
    position: relative;
    cursor: default;
}

#narrowListCategory .inner {
    padding-bottom: 20px;
}

#narrowListCategory .inner:after {
    content: "";
    clear: both;
    display: block;
}  */

/* clearfix */
/* #narrowListCategory #narrowDownCategoryMultiple {
    float: left;
    width: 180px;
    height: 27px;
    margin-right: 5px;
}

#narrowListCategory #narrowDownCategoryMultiple:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #narrowListCategory h3:hover+ul {
    display: block;
    z-index: 100;
    position: relative;
    border: 1px solid #ccc;
    border-top: none;
    margin-top: -1px;
}

#narrowListCategory .box {
    display: none;
    background: #FFF;
    padding: 5px;
}

#narrowListCategory .box:hover {
    display: block;
    z-index: 100;
    position: relative;
    border: 1px solid #ccc;
    border-top: none;
    margin-top: -1px;
}

#narrowListCategory .box.hover {
    display: block;
    z-index: 100;
    position: relative;
    border: 1px solid #ccc;
    border-top: none;
    margin-top: -1px;
}

#narrowListCategory .box li {
    font-size: 80%;
    display: block;
    margin-bottom: 5px;
}

#narrowListCategory .box li:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #narrowListCategory .box input {
    float: left;
    width: 15px;
    display: block;
    margin: 3px 5px 0 3px;
}

#narrowListCategory .box label {
    float: left;
    width: 145px;
    display: block;
}

*+html #narrowListCategory .box label {
    margin: 5px 0 0 0px;
}

#narrowListCategory .filterArea {
    clear: both;
    margin-bottom: 20px;
}

#narrowListCategory .filterArea:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #narrowListCategory .filterArea li {
    display: block;
    font-size: 80%;
    background: #C00;
    float: left;
    color: #FFF;
    text-decoration: none;
    padding: 5px;
    white-space: nowrap;
    margin-right: 10px;
    line-height: 130%;
}

#narrowListCategory .filterArea li a {
    margin-left: 10px;
    color: #FFFFFF;
    text-decoration: none;
    font-size: 130%;
}

#narrowListCategory .filterArea li a:hover {
    text-decoration: underline;
}

#narrowListCategory .filterArea li.filter_clear {
    background: none;
    margin: 0px;
    text-indent: 0px;
}

#narrowListCategory .filterArea li.filter_clear a {
    color: #333333;
    margin: 0px;
    font-size: 100%;
} */

/* list - 一覧画面共通のメニュー
-------------------------------------------------------------*/
/* #list {
    padding-bottom: 20px;
}

#list ul {
    margin-bottom: 20px;
    background: url("../images/list_bg.gif") bottom repeat-x;
}

#list ul:after {
    content: "";
    clear: both;
    display: block;
}

/* clearfix */
/* #list li {
    float: left;
}

#list li a {
    display: block;
    margin-right: 5px;
    padding: 5px 10px 5px 25px;
    border-top: 1px solid #DDD;
    border-left: 1px solid #DDD;
    border-right: 1px solid #DDD;
    border-bottom: 1px solid #CCC;
    font-size: 80%;
    color: #333;
}

#list .detail {
    background: url("../images/icon_list_detail.png") 7px 7px no-repeat #DDD;
}

#list .image {
    background: url("../images/icon_list_image.png") 7px 7px no-repeat #DDD;
}

#list .simple {
    background: url("../images/icon_list_simple.png") 7px 7px no-repeat #DDD;
}

#list .detail.select {
    border: 1px solid #CCC;
    border-bottom: 1px solid #FFF;
    background-color: #FFFFFF;
    color: #333;
    text-decoration: none;
}

#list .image.select {
    border: 1px solid #CCC;
    border-bottom: 1px solid #FFF;
    background-color: #FFFFFF;
    color: #333;
    text-decoration: none;
}

#list .simple.select {
    border: 1px solid #CCC;
    border-bottom: 1px solid #FFF;
    background-color: #FFFFFF;
    color: #333;
    text-decoration: none;
}

#list .pageguide {
    float: left;
    width: 570px;
    font-size: 85%;
    padding-top: 4px;
}

#list .rearrange {
    float: left;
    width: 200px;
    font-size: 85%;
    text-align: right;
}

#list .rearrange select {
    margin-left: 10px;
}

#list .pagelink {
    clear: both;
    font-size: 85%;
    padding: 10px 0;
}

#list .nolink {
    color: #999;
} */

/* itemListDetail - 商品詳細一覧・プレゼント一覧
-------------------------------------------------------------*/

/* #itemListDetail {
    margin-bottom: 20px;
    clear: both;
}

#itemListDetail .box {
    margin-top: 10px;
    border: #CCC 1px solid;
    padding-top: 10px;
}

#itemListDetail .box:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #itemListDetail .text {
    margin-left: 140px;
}

#itemListDetail .sale_date {
    margin: 0px 10px 10px 0px;
}

#itemListDetail h3 {
    display: block;
    margin: 0px 10px 10px 0;
    font-size: 95%;
}

#itemListDetail .appeal {
    display: block;
    margin: 0;
    color: #F60;
    font-size: 70%;
}

#itemListDetail .price {
    display: block;
    margin: 0 10px 10px 0;
    color: #C00;
}

#itemListDetail .price .teika {
    font-weight: bold;
    font-size: 110%;
}

#itemListDetail .price .other {
    font-size: 90%;
}

#itemListDetail .explanation1 {
    display: block;
    margin: 10px 10px 0px 0px;
    padding: 10px 0;
    border-top: #CCC 1px solid;
    font-size: 80%;
    line-height: 120%;
}

#itemListDetail .button_area {
    margin: 0px 10px 20px 0px;
    padding-top: 20px;
    border-top: #CCC 1px solid;
    text-align: right;
}

#itemListDetail .button_area:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #itemListDetail .button_area .button {
    float: right;
    width: auto;
    margin-left: 10px;
}

#itemListDetail .property {
    float: right;
    margin: 0;
    color: #AAA;
    font-size: 75%;
    padding: 3px;
}

#itemListDetail .img_box {
    width: 120px;
    height: 120px;
    margin: 10px;
    float: left;
    text-align: center;
    position: relative;
}

#itemListDetail .img_box img {
    width: auto;
    max-width: 120px;
    max-height: 120px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#itemListDetail .separately_order {
    margin-left: 0px;
} */

/* itemListDetail - 商品一覧お気に入りリストに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListDetail .wishlistSubmitButton {
    position: relative;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListDetail .wishlistSubmitButton .wishlistMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListDetail .wishlistSubmitButton .wishlistDelMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* itemListDetail - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListDetail .cartSubmitButton {
    position: relative;
}

#itemListDetail .cartSubmitButton .cartMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListDetail .cartSubmitButton .cartMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListDetail .cartSubmitButton .cartMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListDetail .cartSubmitButton .cartMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListDetail .cartSubmitButton .cartMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemL#itemListDetailistImage .cartSubmitButton .cartMessage .link a {
    display: inline-block;
}

#itemListDetail .cartSubmitButton .cartMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* itemListSimple - 商品簡易一覧
-------------------------------------------------------------*/
/* #itemListSimple {
    margin-bottom: 20px;
}

#itemListSimple .box {
    margin-top: 10px;
    border: #CCC 1px solid;
}

#itemListSimple .box:after {
    content: "";
    clear: both;
    display: block;
}


#itemListSimple h3 {
    display: block;
    margin: 10px;
    font-size: 95%;
}

#itemListSimple .appeal {
    display: block;
    margin: 0 0 0 10px;
    color: #F60;
    font-size: 70%;
}

#itemListSimple .price {
    display: block;
    margin: 0 0 0 10px;
    color: #C00;
}

#itemListSimple .price .teika {
    font-weight: bold;
    font-size: 110%;
}

#itemListSimple .price .other {
    font-size: 90%;
}

#itemListSimple .explanation1 {
    display: block;
    margin: 5px 10px 0;
    padding: 10px 0;
    border-top: #CCC 1px solid;
    font-size: 80%;
    line-height: 120%;
}

#itemListSimple .button_area {
    margin: 0px 10px 20px;
    padding-top: 20px;
    border-top: #CCC 1px solid;
    text-align: right;
}

#itemListSimple .button_area:after {
    content: "";
    clear: both;
    display: block;
}


#itemListSimple .button_area .button {
    float: right;
    width: auto;
    margin-left: 10px;
}

#itemListSimple .button_area .not_click {
    float: right;
    width: auto;
    margin-left: 10px;
}

#itemListSimple .property {
    float: right;
    margin: 0;
    color: #AAA;
    font-size: 75%;
    padding: 3px;
} */

/* itemListSimple - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListSimple .cartSubmitButton {
    position: relative;
}

#itemListSimple .cartSubmitButton .cartMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListSimple .cartSubmitButton .cartMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListSimple .cartSubmitButton .cartMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListSimple .cartSubmitButton .cartMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListSimple .cartSubmitButton .cartMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListSimple .cartSubmitButton .cartMessage .link a {
    display: inline-block;
}

#itemListSimple .cartSubmitButton .cartMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* itemListSimple - 商品一覧お気に入りリストに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListSimple .wishlistSubmitButton {
    position: relative;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListSimple .wishlistSubmitButton .wishlistMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListSimple .wishlistSubmitButton .wishlistDelMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* itemListImage - 商品画像一覧
-------------------------------------------------------------*/
/* #itemListImage {
    margin-bottom: 20px;
}

#itemListImage:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #itemListImage .box {
    float: left;
    margin: 0px 10px 10px 0;
    width: 250px;
    border: #d4d4d4 1px solid;
}

#itemListImage .text {
    float: left;
    width: 98px;
    margin-right: 10px;
}

#itemListImage h3 {
    display: block;
    margin: 5px 10px 0 0;
    font-size: 14px;
    line-height: 150%;
}

#itemListImage .icon {
    display: block;
    margin: 10px 7px 0 0;
    line-height: 120%;
}

#itemListImage .button_area {
    display: block;
    clear: both;
    margin: 5px 10px;
    line-height: 100%;
}

#itemListImage .button {
    margin-bottom: 10px;
}

#itemListImage .property {
    margin: 0;
    color: #AAA;
    font-size: 70%;
    margin-bottom: 10px;
}

#itemListImage .img_box {
    width: 120px;
    height: 120px;
    margin: 10px;
    float: left;
    text-align: center;
    position: relative;
}

#itemListImage .img_box img {
    width: auto;
    max-width: 120px;
    max-height: 120px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#itemListImage .separately_order {
    font-size: 70%;
} */

/* itemListImage - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListImage .cartSubmitButton {
    position: relative;
}

#itemListImage .cartSubmitButton .cartMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListImage .cartSubmitButton .cartMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListImage .cartSubmitButton .cartMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListImage .cartSubmitButton .cartMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListImage .cartSubmitButton .cartMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListImage .cartSubmitButton .cartMessage .link a {
    display: inline-block;
}

#itemListImage .cartSubmitButton .cartMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* itemListImage - 商品一覧お気に入りリストに入った報告ポップアップ
-------------------------------------------------------------*/
/* #itemListImage .wishlistSubmitButton {
    position: relative;
}

#itemListImage .wishlistSubmitButton .wishlistMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListImage .wishlistSubmitButton .wishlistMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListImage .wishlistSubmitButton .wishlistMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListImage .wishlistSubmitButton .wishlistMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListImage .wishlistSubmitButton .wishlistMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListImage .wishlistSubmitButton .wishlistMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage .link {
    background-color: #fff;
    text-align: center;
}

#itemListImage .wishlistSubmitButton .wishlistDelMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* awoo AI item_list_awoo.xhtml
-------------------------------------------------------------*/
/* #awoo-category-page .suggestion-tag-wrapper {
    background: transparent;
    padding: 0 0 16px;
}

#awoo-category-page .suggestion-tag-wrapper .page-tag-container,
#awoo-category-page .suggestion-tag-wrapper .suggestion-tag-list-container {
    gap: 0;
}

#awoo-category-page .suggestion-tag-wrapper .suggestion-tag-title {
    font-weight: bold;
    margin: 0;
    padding: 20px 0 5px;
}

#awoo-category-page .suggestion-tag-wrapper a {
    font-size: 12px;
    color: #000;
    background: #fff;
    border: 1px solid #000;
    padding: 5px 10px;
    margin: 0 4px 8px;
}

#awoo-category-page .suggestion-tag-wrapper a:hover {
    color: #3A3A3A;
    border-color: #3A3A3A;
    opacity: 0.7;
}

#awoo-category-page .suggestion-tag-wrapper a::before {
    content: "#";
}

#awoo-category-page .category-page-h1 {
    text-align: left;
    font-size: 24px;
}

#awoo-category-page .controll-wrapper {
    margin: 20px 0;
    gap: 0;
}

#awoo-category-page .controll-wrapper .right-block {
    align-items: center;
    flex-direction: inherit;
    width: 100%;
}

#awoo-category-page .controll-wrapper .selector-group {
    width: 35%;
}

#awoo-category-page .controll-wrapper .two-controll {
    margin-top: 0;
    width: 65%;
}

#awoo-category-page .controll-wrapper .two-controll .selector-group {
    width: 50%;
}

#awoo-category-page .controll-wrapper .two-controll .display-mode-wrapper {
    order: 2;
    margin-left: auto;
}

#awoo-category-page .products-wrapper {
    padding: 0;
}

#awoo-category-page .products-wrapper .product-block {
    width: 182px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #D4D4D4;
    margin: 0 10px 10px 0;
    font-size: 90%;
}

#awoo-category-page .products-wrapper .product-block:nth-child(4n) {
    margin-right: 0;
}

#awoo-category-page .products-wrapper .product-block .product-detail-wrapper {
    padding: 10px 0;
}

#awoo-category-page .products-wrapper .product-block .product__name {
    font-weight: bold;
    text-decoration: underline;
    line-height: 16px;
}

#awoo-category-page .products-wrapper .product-block .lazyload-wrapper {
    height: 150px;
}

#awoo-category-page .products-wrapper .product-block .product__price {
    margin-top: 0;
}

#awoo-category-page .products-wrapper .product-block .product__price div {
    color: #333;
}

#awoo-category-page .products-wrapper .product-block .product__price .sale-price {
    color: #C00;
}

#awoo-category-page .products-wrapper.list .product-block {
    width: 100%;
}

#awoo-category-page .products-wrapper.list .product-block .product-detail-wrapper {
    justify-content: center;
}

#awoo-category-page .products-wrapper.list .product-block .product__name {
    margin-bottom: 10px;
}

#awoo-category-page .products-wrapper.list .product-block .product-image {
    width: 120px;
    height: 120px;
    margin: 10px;
}

#awoo-category-page .products-wrapper.list .product-block .lazyload-wrapper {
    height: auto;
} */

/* topicsList - トピックス一覧
-------------------------------------------------------------*/
.bl_topicsList {
  margin-bottom: 85px;
}
.bl_topicsItem {
  border: 1px solid #d5d5d5;
  padding: 16px 38px 37px 19px;
  margin-bottom: 20px;
  border-radius: 25px;
}
.bl_topicsItem_heading {
  margin-bottom: 18px;
  font-size: 16px;
}
.bl_topicsItem_imgs .bl_topicsItem_img {
  width: 160px;
  aspect-ratio: 1;
  overflow: hidden;
}
.bl_topicsItem_img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bl_topicsItem_body {
  flex: 1;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: flex-start;
}

.bl_topicsItem_imgs {
  display: flex;
  align-items: flex-start;
  /* flex-wrap: wrap; */
  gap: 20px;
}
.bl_topicsItem_front {
  max-width: 644px;
}

.bl_topicsItem_front [target="_blank"]::after {
  content: "";
  vertical-align: middle;
  width: 11px;
  height: 10px;
  margin-left: 6px;
  display: inline-block;
  background: url(../images/icon/link_black.svg) no-repeat;
  background-size: contain;
}

.bl_topicsListCategory {
  margin-bottom: 27px;
}
.bl_topicsListCategory ul {
  display: flex;
  flex-wrap: wrap;
  gap:5px 0;
}
.bl_topicsListCategory ul li {
  margin-right: 8px;
}
.bl_topicsListCategory ul a {
  display: none;
  padding: 4px 12px;
  border-radius: 48px;
}
.bl_topicsListCategory ul .select {
  background-color: #ffdd00;
  display: block;
}
@media screen and (max-width: 767px) {
  .bl_topicsItem_imgs .bl_topicsItem_img {
    width: 140px;
    aspect-ratio: 1;
    overflow: hidden;
  }
  .bl_topicsList {
    margin-bottom: 40px;
  }
  .bl_topicsItem_body {
    display: block;
  }
  .bl_topicsItem {
    padding: 20px;
  }
  .bl_topicsItem_imgs:has(img) {
    margin-top: 20px;
    gap: 10px;
    /* justify-content: center; */
  }
}
/* topicsDetail - トピックス詳細
-------------------------------------------------------------*/
.bl_topicsDetail_date {
  text-align: center;
  margin-bottom: 10px;
  margin-top: 32px;
}
.bl_topicsDetail {
  max-width: 740px;
  margin: 0 auto;
}
.bl_topicsDetail_heading {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 8px;
  text-align: center;
}
.bl_topics_img img {
  max-width: 100%;
  display: block;
  margin-bottom: 40px;
}
.bl_topics_img__txt {
  margin-top: 50px;
}

.topics_text {
  max-width: 726px;
  margin: 0 auto;
}
#itemDetail .bl_buttonarea {
  margin-top: 58px;
}
.bl_information {
  margin-top: 20px;
  margin-bottom: 20px;
}
.bl_information a {
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .bl_topicsDetail_heading {
    font-size: 20px;
  }
}
/* #topicsList {
    margin-bottom: 20px;
}

#topicsList .box {
    margin-top: 10px;
    padding: 10px;
    border: #CCC 1px solid;
}

#topicsList .box:after {
    content: "";
    clear: both;
    display: block;
}

#topicsList .box h3 {
    font-size: 95%;
    display: block;
    margin: 10px 10px 0 0px;
}

#topicsList .box p {
    display: block;
    width: 728px;
    margin: 0;
    padding: 5px 0px;
    font-size: 90%;
    font-weight: normal;
}

#topicsList .img_box {
    width: 120px;
    height: 120px;
    float: right;
    margin: 0 0 10px 10px;
    text-align: center;
    position: relative;
}

#topicsList .img_box img {
    width: auto;
    max-width: 120px;
    max-height: 120px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

/* awoo AI 商品詳細
-------------------------------------------------------------*/
#awoo-product-tags {
  margin-bottom: 20px;
}

#awoo-product-tags .awoo-tag-wrapper {
  gap: 0;
}

#awoo-product-tags .awoo-tag-wrapper a {
  font-size: 12px;
  color: #000;
  background: #fff;
  border: 1px solid #000;
  padding: 5px 10px;
  margin: 0 4px 8px;
}

#awoo-product-tags .awoo-tag-wrapper a:hover {
  color: #3a3a3a;
  border-color: #3a3a3a;
  opacity: 0.7;
}

#awoo-product-tags .awoo-tag-wrapper a::before {
  content: "#";
}

#awoo-related-products {
  margin-bottom: 20px;
}

#awoo-related-products .related-wrapper .related-product-img {
  width: 175px;
  height: 175px;
}

#awoo-related-products .related-wrapper .related-title {
  margin: 5px 0;
  font-weight: bold;
}

#awoo-related-products .related-wrapper .rec-slider-container {
  margin: 0 0 10px;
  font-size: 90%;
}

#awoo-related-products .related-wrapper .related-product-name {
  font-weight: bold;
  text-decoration: underline;
  color: #333;
  height: auto;
  margin-bottom: 10px;
}

#awoo-related-products .related-wrapper .product__price div {
  color: #333;
}

#awoo-related-products .related-wrapper .product__price .sale-price {
  color: #c00;
}

.awoo-keywords {
  margin: 0 0 10px !important;
  font-weight: bold;
}

/* itemDetail - 商品詳細・プレゼント詳細
-------------------------------------------------------------*/
#itemDetail {
  margin-bottom: 20px;
}

#itemDetail .box {
  margin-top: 10px;
}

/* #itemDetail .box:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */

/* 商品画像の切り替え */
.bl_badgeUnit {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
  margin-bottom: 22px;
}
.bl_badge {
  font-size: 12px;
  padding: 0.5px 8.5px;
  border: 1px solid currentColor;
  width: fit-content;
  border-radius: 15px;
}
/* .bl_wishListItem .bl_badge {
  line-height: 1.3;
} */

.bl_badge_red {
  color: #c10230;
  /* line-height: 1.3; */
}
.bl_badge_backRed {
  background-color: #f27186;
  color: #fff;
  border-color: #f27186;
}
.bl_badge_redBorder {
  color: #c10230;
  border: solid 1px currentColor;
  background-color: #fff;
}
.bl_badge_grayBorder {
  color: #373737;
  border: solid 1px currentColor;
  background-color: #fff;
}
.bl_badge_gray {
  color: #373737;
  /* line-height: 1.3; */
}
/* #itemDetail .item_image_area {
    float: left;
    width: 270px;
}
*/
#itemDetail .item_image_area {
  width: 43.6%;
}

@media screen and (max-width: 767px) {
  #itemDetail .item_image_area {
    width: auto;
    margin-bottom: 30px;
  }
  /* #itemDetail .item_image_area #main_box {
    margin-right: -20px;
    margin-left: -20px;
  } */
}
/*
#itemDetail .item_image_area #targetarea {
  visibility: hidden;
} */

#itemDetail .item_image_area #main_box {
  position: relative;
}

#itemDetail .item_image_area #main_box:after {
  content: "";
  clear: both;
  display: block;
}

#itemDetail .item_image_area .img_box {
  /* display: none; */
  aspect-ratio: 1/1;
  background-color: #f6f6f6;
}

#itemDetail .item_image_area .img_box img {
  max-width: 80%;
  max-height: 80%;
}
#mainSubImg {
  margin-top: 12px;
}

/* @media screen and (max-width: 767px) {
  #mainSubImg {
    margin-top: 16px;
  }
} */
#itemDetail .item_image_area .thumb {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

#itemDetail .item_image_area .thumb:after {
  content: "";
  clear: both;
  display: block;
}

/* #itemDetail .item_image_area .thumb li {
    margin: 0 5px 5px 0;
    float: left;
} */
#itemDetail .item_image_area .thumb li {
  background-color: #f6f6f6;
  width: 126px;
  height: 126px;
  border-radius: 15px;
  overflow: hidden;
}
#itemDetail .item_image_area .thumb li.last {
  margin-right: 0;
}

#itemDetail .item_image_area .thumb a {
  width: 126px;
  height: 126px;
  display: block;
  text-align: center;
  position: relative;
}

#itemDetail .item_image_area .thumb a img {
  max-width: 90%;
  max-height: 90%;
  width: auto;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#itemDetail .item_image_area .thumb a img:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
}

/* #itemDetail .item_image_area .thumb li.active a::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  box-sizing: border-box;
  border: 3px solid #ffdd00;
} */

#itemDetail .item_image_area .thumb li.active a img:hover {
  cursor: default;
  filter: alpha(opacity=100) !important;
  -moz-opacity: 1 !important;
  -khtml-opacity: 1 !important;
  opacity: 1 !important;
}
@media screen and (max-width: 767px) {
  #itemDetail .item_image_area .thumb a,
  #itemDetail .item_image_area .thumb li {
    width: 100px;
    height: 100px;
  }
  #itemDetail .item_image_area .thumb li.active a::after {
    border: 2px solid #ffdd00;
  }
}
#itemDetail .otherImage {
  clear: both;
  padding: 10px 10px 0 15px;
  font-size: 75%;
}
.bl_itemDetail_form {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .bl_itemDetail_form {
    margin-bottom: 40px;
  }
}
.bl_detailMain {
  display: flex;
  gap: 34px;
}
.bl_detailText {
  flex: 1;
}
.bl_matrixNotice {
  display: none;
}
.bl_detailText:has(.bl_review) .bl_cartBtnWrapper.is-notice .bl_cartBtn__inout {
  display: none;
}
.bl_detailText:has(.bl_review) .bl_cartBtnWrapper.is-notice .bl_matrixNotice {
  display: block;
}

.bl_detailText .bl_review {
  margin-bottom: 25px;
}
@media screen and (max-width: 767px) {
  .bl_detailText .bl_review {
    margin-bottom: 15px;
  }
}
.bl_detailText_shop {
  margin-bottom: 9px;
}
.bl_detailText_shop .bl_link {
  text-decoration: underline;
}
.bl_textHeading {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}
.bl_textHeading.bl_textHeading_cat {
  margin-bottom: 25px;
}
.bl_detailText_code span {
  font-weight: bold;
}
.bl_detailText_code {
  font-size: 15px;
  margin-bottom: 5px;
  border-top: 1px solid #ccc;
  padding-top: 24px;
  margin-top: 24px;
}
.bl_priceList {
  margin-bottom: 30px;
}
.bl_priceList > div {
  display: flex;
  align-items: flex-end;
}
.bl_priceList dt,
.bl_priceList dd {
  margin-right: 5px;
}
.bl_priceList .bl_priceList_intax {
  font-weight: bold;
}
.bl_priceList .bl_priceList_intax dt {
  font-size: 25px;
  vertical-align: middle;
}
.bl_priceList .bl_priceList_intax dd {
  font-size: 34px;
  line-height: 1.2;
}

.bl_priceList_teika {
  font-size: 20px;
}

.bl_detailText_box01 {
  margin-top: 32px;
  margin-bottom: 30px;
}
/* .bl_detailText_list01>div{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 8px;
}
.bl_detailText_list01>div dt::after{
    content: ":";
} */
@media screen and (max-width: 767px) {
  .bl_detailMain {
    display: block;
  }
  .bl_textHeading {
    font-size: 20px;
  }
  .bl_priceList {
    margin-bottom: 20px;
  }
  .bl_priceList .bl_priceList_intax dt {
    font-size: 20px;
  }
  .bl_priceList .bl_priceList_intax dd {
    font-size: 28px;
  }
  .bl_priceList_teika {
    font-size: 18px;
  }
  /* .bl_detailText_list01{
        margin-top: 24px;
        margin-bottom: 24px;
    } */
}
.bl_selectBox {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
}
.bl_selectBox select {
  width: fit-content;
  height: 45px;
  padding: 8px 30px 8px 12px;
  border: 1px solid #d5d5d5;
  color: inherit;
  border-radius: 0;
  font-size: 16px;
  border-radius: 28px;
}
.bl_selectBox_heading {
  font-weight: 500;
  width: 4em;
  font-size: 15px;
}

@media screen and (max-width: 767px) {
  .bl_selectBox select {
    width: 245px;
    max-width: 100%;
    padding-left: 18px;

    padding-right: 25px;
  }
}

.property_image_area {
  gap: 32px;
  display: flex;
  margin-bottom: 32px;
  margin-top: 32px;
}
.propertyimg_box {
  width: 76px;
  height: 76px;
  object-fit: cover;
  font-size: 16px;
}
.propertyimg_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#itemDetail:not(:has(.is-matrix-kakaku)) .zokuseibox {
  display: none;
}

#itemDetail:has(.is-matrix-kakaku) .zokuseiSelect {
  display: none;
}

#itemDetail:has(.is-matrix-kakaku) .zokuseiNone {
  display: none;
}
/*
#itemDetail .recommend {
    clear: both;
    padding: 0 10px 10px 15px;
    font-size: 75%;
}

#itemDetail .property_image_area {
    clear: both;
}

#itemDetail .propertyImg {
    width: 80px;
    float: left;
    margin-right: 15px;
}

#itemDetail .propertyImg .propertyimg_box {
    width: 80px;
    height: 80px;
    text-align: center;
    position: relative;
    margin: 0 10px 0px 0;
}

#itemDetail .propertyImg .propertyimg_box img {
    width: auto;
    max-width: 80px;
    max-height: 80px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#itemDetail .propertyImg p {
    margin: 0;
    text-align: center;
}

#itemDetail p {
    margin: 0 0 10px;
}

#itemDetail .text {
    float: right;
    width: 480px;
}

#itemDetail .appeal {
    display: block;
    margin: 10px 0px 0 0;
    color: #F60;
    font-size: 75%;
}

#itemDetail h3 {
    display: block;
    margin: 10px 0px 5px 0;
    font-size: 105%;
}

#itemDetail .price {
    display: block;
    margin: 0 0px 5px 0;
    font-size: 90%;
    color: #C00;
}

#itemDetail .price .teika {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 110%;
}

#itemDetail .price .other {
    display: block;
    font-size: 90%;
}

#itemDetail .property_sale_price {
    color: #C00;
}

#itemDetail .property_normal_price {
    text-decoration: line-through
}

#itemDetail .information {
    display: block;
    margin: 0 0px 0 0;
    font-size: 80%;
}

#itemDetail .explanation2 {
    display: block;
    margin: 10px 0px 20px 0;
    padding-top: 10px;
    border-top: #CCC 1px solid;
    font-size: 100%;
    line-height: 150%;
}

#itemDetail .explanation3 {
    display: block;
    margin: 0 0px 20px 0;
    padding: 10px;
    background: #EEE;
    color: #666;
    font-size: 90%;
    line-height: 150%;
}

#itemDetail table {
    width: 480px;
    margin: 0 0 10px;
}

#itemDetail th {
    width: 100px;
    padding: 5px 10px;
    text-align: left;
}

#itemDetail td {
    padding: 5px 10px;
}

#itemDetail .button {
    margin-bottom: 10px;
}

#itemDetail .button.small {
    max-width: 160px;
}

#itemDetail .separately_order {
    margin-bottom: 5px;
}

#itemDetail .propaty_area .button {
    max-width: none;
    width: 100%;
} */
.propaty_area table {
  width: 100%;
}
/* itemDetail - 商品詳細カートに入った報告ポップアップ
-------------------------------------------------------------*/
#itemDetail .cartSubmitButton {
  position: relative;
}

#itemDetail .cartSubmitButton .cartMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 10;
  display: none;
}

#itemDetail .cartSubmitButton .cartMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

#itemDetail .cartSubmitButton .cartMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

#itemDetail .cartSubmitButton .cartMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

#itemDetail .cartSubmitButton .cartMessage .link {
  background-color: #fff;
  text-align: center;
}

#itemDetail .cartSubmitButton .cartMessage .link a {
  display: inline-block;
}

#itemDetail .cartSubmitButton .cartMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

/* itemDetail - 商品詳細お気に入りリストに入った報告ポップアップ
-------------------------------------------------------------*/
#itemDetail .wishlistSubmitButton {
  position: relative;
}

#itemDetail .wishlistSubmitButton .wishlistMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 10;
  display: none;
}

#itemDetail .wishlistSubmitButton .wishlistMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

#itemDetail .wishlistSubmitButton .wishlistMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

#itemDetail .wishlistSubmitButton .wishlistMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

#itemDetail .wishlistSubmitButton .wishlistMessage .link {
  background-color: #fff;
  text-align: center;
}

#itemDetail .wishlistSubmitButton .wishlistMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 10;
  display: none;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage .link {
  background-color: #fff;
  text-align: center;
}

#itemDetail .wishlistSubmitButton .wishlistDelMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

/* itemDetail - トピックス詳細
-------------------------------------------------------------*/
#itemDetail .topics_img h3,
#itemDetail .topics_noimg h3 {
  margin: 10px 10px 5px 0px;
  display: block;
  font-size: 105%;
}

#itemDetail .topics_img p,
#itemDetail .topics_noimg p {
  font-size: 90%;
  margin: 5px 0px;
}

#itemDetail .topics_img img {
  display: block;
}

#itemDetail .topics_img .img_box {
  width: 140px;
  height: 140px;
  margin: 10px 10px 10px 0;
  text-align: center;
  position: relative;
  float: left;
}

#itemDetail .topics_img .img_box img {
  width: auto;
  max-width: 140px;
  max-height: 140px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#itemDetail .topics_img .topics_text {
  overflow: auto;
}

#itemDetail .topics_img,
#itemDetail .topics_noimg {
  padding: 10px;
}

#itemDetail .topics_noimg p img {
  float: right;
  margin: 0 0 10px 10px;
}

/* present_detail.xhtml - プレゼント詳細
-------------------------------------------------------------*/
#itemDetail.present .item_image_area #targetarea {
  visibility: visible;
}

#itemDetail.present .item_image_area .img_box {
  display: block;
  width: 268px;
  height: 268px;
}

/* =================================================================
12.レビュー
使用ファイル：item_detail.xhtml, member_review.xhtml
=================================================================*/
/* #review {
    margin-bottom: 40px;
}

#review p {
    margin: 0 0px;
}

#review p.item_name {
    font-size: 95%;
    font-weight: bold;
}

#review h3 {
    float: left;
    margin: 0 10px 0 0;
    font-size: 80%;
}

#review .review_box {
    margin-bottom: 20px;
}

#review .box {
    margin: 10px 0 5px;
    padding: 10px;
    border: #CCC 1px solid;
}

#review .box h3 {
    float: none;
    font-size: 90%;
}

#review .box p {
    margin: 0;
}

#review .box p.name {
    padding: 5px 0;
    margin-bottom: 10px;
    border-bottom: 1px dashed #CCC;
    color: #666;
    font-size: 75%;
}

#review p.goodButton {
    margin-bottom: 5px;
    color: #666;
    font-size: 75%;
}

#review p.goodButton .button {
    margin-left: 5px;
    vertical-align: middle;
    display: inline-block;
    width: auto;
}

#review p.goodNumber {
    margin-bottom: 20px;
    color: #666;
    font-size: 75%;
}

#review p.more {
    margin-bottom: 20px;
    font-size: 75%;
    text-align: right;
}

#review .pageguide {
    float: left;
    width: 570px;
    font-size: 85%;
    padding-top: 4px;
}

#review .rearrange {
    float: left;
    width: 200px;
    font-size: 85%;
    text-align: right;
}

#review .pagelink {
    clear: both;
    font-size: 85%;
    padding: 10px 0;
}

#review ul.star {
    float: left;
} */
.bl_review {
  margin-bottom: 34px;
}

.bl_reviewItem__list .bl_review {
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 0;
}
[name="reviewForm"] {
  margin-bottom: 60px;
}

.bl_review ul.star {
  display: flex;
  gap: 2px;
  margin-right: 5px;
}
.bl_review ul.star li {
  display: block;
  background-size: contain;
  width: 20px;
  aspect-ratio: 1;
  text-indent: -9999px;
  background-repeat: no-repeat;
}

.bl_review ul.star li.good,
.bl_review ul.star li.bad {
  background-image: url("../images/review_good.svg");
}

.bl_review ul.star li.bad {
  opacity: 0.3;
}
.bl_review {
  display: flex;
  align-items: center;
}

.bl_reviewWrapper {
  border-radius: 25px;
  padding: 40px 50px;
  position: relative;
  border: solid 1px #ccc;
  margin-bottom: 60px;
}

.bl_reviewWrapper .bl_shopReviewLink {
  font-size: 16px;
  /* position: absolute;
  right: 24px;
  top: 54px;
  text-decoration: underline; */
}
.bl_reviewWrapper .bl_shopReviewLink svg {
  width: 12px;
  height: 12px;
  vertical-align: middle;
  margin-left: 15px;
  stroke: currentColor;
}
@media screen and (max-width: 767px) {
  .bl_reviewWrapper {
    border-radius: 15px;
    padding: 20px;
    margin-bottom: 30px;
  }

  .bl_review {
    margin-bottom: 24px;
  }
  .bl_review ul.star li {
    width: 21px;
  }
  .bl_reviewWrapper .bl_shopReviewLink {
    /* position: static;
    font-size: 14px;
    margin-left: auto;
    margin-bottom: 16px;
    display: block;
    width: fit-content; */
  }
}
.bl_fz24Heading {
  font-size: 20px;
  font-weight: bold;
}
.bl_reviewWrapper .bl_review {
  margin-bottom: 8px;
}
/* .bl_reviewWrapper .bl_reviewHeader .star li {
  width: 32px;
}
.bl_reviewWrapper .bl_reviewHeader .star_Txt {
  font-size: 24px;
  font-weight: bold;
}
.star_Txt a {
  text-decoration: underline;
}*/
.bl_reviewHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  padding: 0 0 15px;
  margin-bottom: 38px;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .bl_reviewHeader {
    flex-wrap: wrap;
    gap: 15px 20px;
    margin-bottom: 20px;
  }
}
.bl_reviewItem {
  background-color: #fff;
}
.bl_reviewItem:not(:last-child) {
  margin-bottom: 40px;
}
/* .bl_reviewItem__list.bl_reviewItem:not(:last-child) {
  margin-bottom: 24px;
} */
.bl_reviewItem_contributor {
  margin-bottom: 10px;
  font-size: 18px;
}
.bl_reviewItem_heading {
  font-weight: bold;
  margin: 8px 0;
  font-size: 20px;
}
.bl_reviewItem_time {
  font-size: 15px;
}
.bl_reviewItem_txt {
  margin-bottom: 5px;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .bl_reviewItem_heading {
    font-size: 18px;
  }
  .bl_reviewItem_time {
    font-size: 14px;
  }
  .bl_reviewItem_txt {
    font-size: 16px;
  }
}
.bl_reviewTopParts {
  display: flex;
  gap: 50px;
  align-items: center;
  border-bottom: 1px solid #f2f2f2;
  padding-bottom: 38px;
  margin-bottom: 50px;
  flex-wrap: wrap;
  justify-content: center;
}

.bl_reviewTopParts > div:not(:has(*)) {
  display: none;
}

.bl_reviewTopParts:not(:has(.bl_reviewData)) {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .bl_reviewTopParts {
    padding-bottom: 20px;
    margin-bottom: 25px;
    gap: 25px;
  }
}
.bl_revieWrite {
  flex: 1;
  text-align: center;
}
.bl_revieWrite a {
  text-decoration: underline;
}

.bl_revieWrite p {
  color: #666;
}
.bl_revieWrite_Btn {
  font-size: 16px;
  width: 286px;
  padding: 10.5px 5px;
  margin-bottom: 18px;
  border: none;
  background-color: #ffdd00;
  border-radius: 24px;
  cursor: pointer;
}
button.bl_revieWrite_Btn {
  cursor: default;
}
.bl_reviewData {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 50px;
}
.bl_reviewCount {
  width: 180px;
  text-align: center;
  border-right: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .bl_reviewCount {
    border-right: none;
  }

  .bl_reviewData {
    justify-content: center;
    border-right: none;
  }
}
.bl_reviewDetailCount {
  padding-left: 30px;
  font-size: 15px;
}
.bl_starLvCount {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 8px;
}
.bl_starLvCount:not(:last-child) {
  margin-bottom: 8px;
}

.bl_starLvCount_imgs {
  width: 96px;
  text-align: right;
}

.bl_reviewCount_average {
  font-weight: bold;
  font-size: 35px;
  font-weight: bold;
}
.bl_reviewCount_number span {
  text-decoration: underline;
  font-size: 15px;
}

.bl_review_starWrapper {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 16px;
}

.bl_review_heading {
  background-color: #f2f2f2;
  padding: 24px;
  width: 100%;
  display: flex;
  gap: 20px;
  align-items: flex-start;
  justify-content: space-between;
}
.bl_review_itemLink {
  font-size: 15px;
  font-weight: bold;
}
.bl_review_itemLink span::after {
  content: ":";
}

.bl_review_itemLink a {
  font-weight: normal;
  margin-left: 10px;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .bl_review_itemLink span::after {
    content: "";
    display: block;
  }
  .bl_review_itemLink a {
    margin-left: 0;
  }
}
.bl_review_headingBtn {
  border: 1px solid #000;
  font-size: 14px;
  width: 120px;
  padding: 8.5px 0px;
  display: block;
  background-color: #fff;
  text-align: center;
  font-weight: 500;
  border-radius: 20px;
}
.bl_reviewItem__list {
  border: 1px solid #d5d5d5;
  padding: 0;
  margin-bottom: 24px;
}

.bl_reviewBody {
  transition: all 0.3s;
}
.bl_reviewBody .bl_reviewItem:nth-child(n + 3) {
  display: none;
}
.bl_reviewBody.is-open .bl_reviewItem:nth-child(n + 3) {
  display: block;
}
.bl_reviewWrapper:not(:has(.bl_reviewItem:nth-child(3))) .bl_reviewSwitch {
  display: none;
}
.bl_reviewBody.is-open {
  height: 50vh;
  overflow: auto;
}

.bl_review_content {
  padding: 24px;
}
@media screen and (max-width: 767px) {
  .bl_review_heading {
    display: block;
    position: relative;
  }
  .bl_review_headingBtn {
    width: 100px;
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .bl_reviewItem__list .bl_review_starWrapper {
    margin-bottom: 5px;
  }
  .bl_reviewItem__list .bl_review_heading {
    padding: 16px;
  }
  .bl_reviewItem__list .bl_review_content {
    padding: 16px;
  }
  .bl_reviewItem__list .bl_review_starWrapper {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}
.bl_review_content h3 {
  font-size: 18px;
  margin-bottom: 2px;
}

.bl_reviewItem__list .name {
  font-size: 14px;
  color: #737373;
  margin-top: 5px;
}

.bl_reviewSwitch {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);

  cursor: pointer;
  height: 250px;

  width: calc(100% - 40px);
  text-align: center;
  display: flex;
  font-weight: 500;
  font-size: 18px;
  padding-top: 50px;
  align-items: center;
  justify-content: center;
  gap: 22px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+0,1+100 */
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 1) 50%,
    rgba(255, 255, 255, 1) 100%
  ); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
@media screen and (max-width: 767px) {
  .bl_reviewSwitch {
    height: 120px;
    font-size: 16px;
  }
}
.bl_reviewSwitch::after {
  content: "";
  display: block;
  width: 6px;
  aspect-ratio: 1;
  border-bottom: 1.5px solid #000;
  border-right: 1.5px solid #000;
  /* position: absolute;
  bottom: 6px;
  left: 50%; */
  transform: rotate(45deg);
}
.bl_contribution {
  text-align: center;
  margin-top: 56px;
  margin-bottom: 80px;
}
.bl_contribution p {
  margin-top: 24px;
}
.bl_contribution p a {
  text-decoration: underline;
}
.bl_contributionMain {
  display: none;
}
.bl_contactLinkbox {
  text-align: center;
  margin-bottom: 80px;
}
.bl_contactLinkbox__commerce {
  margin-bottom: 120px;
}
.bl_contactLinkbox_heading {
  font-weight: bold;
  text-align: left;
  margin-bottom: 25px;
  font-size: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid #d5d5d5;
}
.bl_contactLinkbox p {
  margin-bottom: 24px;
}

@media screen and (max-width: 767px) {
  .bl_reviewWrapper {
    padding-top: 16px;
  }
  /* .bl_reviewHeader {
    display: block;
    padding: 0 8px;
    margin-bottom: 10px;
  } */
  .bl_fz24Heading {
    font-size: 18px;
  }
  /* .bl_reviewWrapper .bl_reviewHeader .star li {
    width: 26px;
  } */
  /* .bl_reviewItem {
    padding: 16px;
  } */
  .bl_reviewItem.bl_reviewItem__list {
    padding: 0;
  }
  .bl_contribution {
    margin-top: 32px;
    margin-bottom: 40px;
  }
  .bl_contribution p {
    font-size: 14px;
  }
  .bl_contactLinkbox {
    text-align: left;
    margin-bottom: 40px;
  }
  .bl_contactLinkbox__commerce {
    margin-bottom: 90px;
  }
  .bl_contactLinkbox_heading {
    font-size: 18px;
    padding-bottom: 14px;
    margin-bottom: 16px;
  }
}

#history .bl_itemDataHorizontal_name a {
  text-decoration: underline;
}

/*
#review .contribution {
    margin-top: 10px;
    padding: 10px 10px 10px 10px;
    background: #F1F1F1;
}

#review .contribution #error {
    background: #F1F1F1;
}

#review .contribution table {
    margin: 0;
    border: none;
}

#review .contribution th {
    width: 140px;
    padding: 5px 10px;
    border: none;
    background: none;
    font-weight: normal;
    text-align: left;
}

#review .contribution td {
    padding: 5px 10px;
    border: none;
}

#review .contribution h3 {
    float: none;
    margin: 0 0 10px 0;
    padding: 0px;
    font-size: 120%;
}

#review .review-image {
    padding-top: 20px;
}

#review .review-image:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #review .review-image .img_box {
    width: 80px;
    height: 80px;
    margin-right: 10px;
    margin-bottom: 10px;
    text-align: center;
    position: relative;
    float: left;
}

#review .review-image img {
    width: auto;
    max-width: 80px;
    max-height: 80px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

/* =================================================================
13.購入履歴・見積履歴
使用ファイル：member_history.xhtml,member_estimate_recode.xhtml
=================================================================*/

.bl_orderbox {
  max-width: 1076px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .bl_orderbox {
    margin-bottom: 60px;
  }
}
.bl_orderbox_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
  margin-top: 70px;
}
.bl_orderbox_header .bl_btn {
  font-size: 14px;
  width: 120px;
  padding: 8px;
}
.bl_statusBadge {
  color: #373737;
  font-size: 12px;
  border: 1px solid #373737;
  padding: 2px 4px;
}
.bl_searchForm {
  background-color: #f2f2f2;
  padding: 24px 24px 36px;
  max-width: 1099px;
  margin-bottom: 25px;
}
.bl_searchForm_inner {
  max-width: 644px;
  margin: 0 auto;
}
.bl_searchForm_bottom {
  display: flex;
  justify-content: center;
  margin: 55px 0 0;
}
.bl_searchForm_body table img {
  vertical-align: middle;
}
.bl_searchForm_body table th,
.bl_searchForm_body table td {
  padding: 16px 0;
}
.bl_searchForm_body table th {
  width: 166px;
  text-align: left;
}
.bl_searchForm_body table #ORDER_DISP_NO {
  width: 100%;
}
.bl_searchForm_body table [type="text"] {
  border-color: #fff;
}
.bl_searchForm_body table [type="text"]:focus {
  border-color: #ffdd00;
}
@media screen and (max-width: 767px) {
  .bl_searchForm {
    padding: 16px 16px 24px;
  }
  .bl_searchForm_body table,
  .bl_searchForm_body tbody,
  .bl_searchForm_body table tr {
    display: block;
  }
  .bl_searchForm_body table tr {
    margin-bottom: 10px;
  }

  .bl_searchForm_body table th,
  .bl_searchForm_body table td {
    display: block;
    width: 100%;
  }
  .bl_searchForm_body table th,
  .bl_searchForm_body table td {
    padding: 4px 0;
  }
  .bl_searchForm_body table [maxlength="20"] {
    width: 105px;
  }
  .bl_searchForm_bottom {
    margin-top: 20px;
  }
  .bl_orderbox_header {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
.bl_searchForm_body .bl_btn {
  font-size: 16px;
}

/* #history h3 {
    display: block;
    font-size: 110%;
    margin: 30px 10px 10px;
    padding-bottom: 5px;
}

#history .infoarea {
    display: block;
    margin: 40px 10px 0;
    font-size: 80%;
    font-weight: bold;
}

#history .infoarea:after {
    content: "";
    clear: both;
    display: block;
}


#history .infoarea .status_icon {
    color: #FFFFFF;
    float: left;
    font-weight: normal;
    margin-right: 10px;
}

#history .cancel {
    float: right;
    margin-left: 10px;
}

#history .payment_change {
    float: right;
    margin-left: 10px;
}

#history .infoarea .date {
    clear: both;
    padding-top: 3px;
}

#history .infoarea.estimate {
    position: relative;
}

#history .infoarea.estimate .seikyu_price {
    color: #C00;
    font-size: 16px;
}

#history .infoarea.estimate .estimate_number {
    color: #222;
    padding: 0 0 0 10px;
}

#history .infoarea.estimate .button.estimate {
    width: 137px;
    display: inline-block;
    position: absolute;
    right: 10px;
}

#history .preparing .status_icon {
    background: #336600;
    padding: 3px 5px;
}


#history .delivered .status_icon {
    background: #ff9900;
    padding: 3px 5px;
}


#history .delivering .status_icon {
    background: #000066;
    padding: 3px 5px;
}


#history .canceled .status_icon {
    background: #cc0000;
    padding: 3px 5px;
}


#history .yoyaku .status_icon {
    background: #000000;
    padding: 3px 5px;
}


#history .teiki_together .status_icon {
    background: #996633;
    padding: 3px 5px;
}



#history .price {
    color: #C00;
    text-align: right;
}

#history .cart {
    width: 130px;
    text-align: center;
}

#history .cart .button {
    margin-bottom: 10px;
    width: auto;
    display: inline-block;
}

#history .cart .delivery_slip {
    margin-bottom: 0px;
}

#history .code {
    width: 80px;
}

#history .amount {
    width: 30px;
    text-align: center;
}

#history .estimate_reply {
    line-height: 22px;
}

#history .estimate_reply .title {
    font-weight: bold;
}

#history .property {
    display: block;
    color: #AAA;
    font-size: 90%;
}

#history .img_box {
    width: 80px;
    height: 80px;
    margin-right: 10px;
    margin-bottom: 10px;
    text-align: center;
    position: relative;
    float: left;
}

#history .img_box img {
    width: auto;
    max-width: 80px;
    max-height: 80px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

#history .pageguide {
    float: left;
    width: 570px;
    font-size: 85%;
    padding-top: 4px;
}

#history .rearrange {
    float: left;
    width: 200px;
    font-size: 85%;
    text-align: right;
}

#history .pagelink {
    clear: both;
    font-size: 85%;
    padding: 10px 0;
}

#history .nolink {
    color: #999;
}

#history .reducedTax {
    display: block;
    font-size: 11px;
}

#history .search .buttonarea {
    padding: 20px 0 40px;
}

#history h4.total_price {
    font-size: 105%;
    padding-left: 10px;
    font-weight: bold;
    color: #c00;
    margin-bottom: 20px;
}

#history .webmoney-usage-detail:after {
    content: "";
    display: inline-block;
    background: url("../images/otherpage.png") no-repeat;
    width: 18px;
    height: 12px;
}

#history .message_card {
    display: inline-block;
    vertical-align: top;
}

#history .noshi_amount {
    width: 50px;
}

#history .giftbag_amount {
    width: 80px;
    text-align: center;
}

#history .gift_accordion_container {
    position: relative;
}

#history .gift_accordion_title:after {
    content: "";
    position: absolute;
    right: 2px;
    top: 30%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

#history .gift_accordion_title.open:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%;
}

#history .gift_accordion_content {
    display: none;
}

#history .gift_accordion_title {
    position: relative;
    cursor: pointer;
} */

/*estimateListDetail - 見積履歴
-------------------------------------------------------------*/
/* #history #estimateListDetail .box {
    margin-bottom: 30px;
}

#history #estimateListDetail .box:first-child {
    margin-top: 15px;
}

#history #estimateListDetail .status_icon {
    color: #333;
    float: none;
    font-weight: bold;
    background: #CCC;
    padding: 5px 5px;
}

#history #estimateListDetail th.total_price {
    width: 120px;
} */

/* member_history - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
/* #history .cartSubmitButton {
    position: relative;
}

#history .cartSubmitButton .cartMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#history .cartSubmitButton .cartMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#history .cartSubmitButton .cartMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#history .cartSubmitButton .cartMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#history .cartSubmitButton .cartMessage .link {
    background-color: #fff;
    text-align: center;
}

#history .cartSubmitButton .cartMessage .link a {
    display: inline-block;
}

#history .cartSubmitButton .cartMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* ===================================================================
14：サブウインドウで表示するページ用
使用ファイル：item_detail_other_image.xhtml
　　　　　　　item_friend_mail.xhtml,item_friend_mail_result.xhtml
　　　　　　　item_itemproperty_zaiko.xhtml
　　　　　　　present_friend_mail.xhtml,present_friend_mail_result.xhtml
=================================================================== */
#subwindow {
  max-width: 800px;
  margin: auto;
  padding: 40px;
}
@media screen and (max-width: 767px) {
  #subwindow {
    padding: 40px 20px;
  }
}

#subwindow #header {
  background: none;
}
/*
#subwindow #header h1 a {
    float: none;
} */

#subwindow #content h2 {
  margin-bottom: 24px;
  font-weight: bold;
  border-bottom: solid 1px #d5d5d5;
  font-size: 22px;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  #subwindow #content h2 {
    font-size: 18px;
  }
}
#subwindow .images {
  text-align: center;
}
#subwindow .images img {
  max-width: 100%;
}
/* #subwindow #content h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #373737;
    bottom: -3px;
    width: 20%;
} */

#subwindow #content table {
  line-height: 160%;
  margin: 10px 0px;
  width: 100%;
  border: 1px solid #d5d5d5;
  table-layout: fixed;
}
#subwindow #content th,
#subwindow #content td {
  border: 1px solid #d5d5d5;
}
#subwindow #content th {
  padding: 15px 10px;
}
#subwindow #content td {
  padding: 15px 24px;
}
#subwindow #content th {
  background: #f2f2f2;
  font-weight: bold;
  text-align: left;
  width: 200px;
}
@media screen and (max-width: 767px) {
  #subwindow #content th {
    width: 150px;
  }
}
#subwindow #content th.zaiko {
  width: auto;
  text-align: center;
}

/* #subwindow #content td {
    padding: 10px;
    border: 1px solid #CCC;
    vertical-align: top;
} */

#subwindow #content td.number {
  text-align: right;
}

#subwindow #content .hissu {
  color: #cc0000;
  font-weight: bold;
}

#subwindow #content .close {
  margin: 10px 0;
  font-size: 80%;
  line-height: 150%;
  text-align: right;
}

#subwindow .buttonarea {
  text-align: center;
  margin: 10px;
  padding-top: 40px;
}

#subwindow .buttonarea .button {
  display: inline-block;
  margin: 0 10px;
}

#subwindow #content #products {
  width: 500px;
  position: relative;
}

#subwindow #content #products .slides_container {
  overflow: hidden;
  position: relative;
  border: 1px solid #ccc;
  margin: 10px 0 0 0;
}

#subwindow #content #products .slides_container .ima_box {
  width: 498px;
  height: 498px;
  position: relative;
  text-align: center;
}

#subwindow #content #products .slides_container img {
  width: auto;
  margin: auto;
  max-width: 498px;
  max-height: 498px;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}

#subwindow #content #products .slides_container a {
  width: 400px;
  height: 400px;
  display: block;
}

#subwindow #content #products .thumbox {
  clear: both;
  margin: 15px 0 0;
  padding: 0;
}

#subwindow #content #products .thumbox:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#subwindow #content #products .thumbox .pagination li {
  margin: 0 10px 10px 0;
  float: left;
}

#subwindow #content #products .thumbox .pagination li.last {
  margin-right: 0;
}

#subwindow #content #products .thumbox .img_box {
  border: 1px solid #ccc;
  width: 92px;
  height: 92px;
  display: block;
}

#subwindow #content #products .thumbox .img_box img {
  max-width: 90px;
  max-height: 90px;
}

#subwindow #content #products .thumbox .img_box img:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
}

#subwindow #content #products .thumbox .current .img_box {
  border: 1px solid #cc3333;
  display: block;
  filter: alpha(opacity=100) !important;
  -moz-opacity: 1 !important;
  -khtml-opacity: 1 !important;
  opacity: 1 !important;
}

#subwindow #content #products .thumbox .current .img_box img:hover {
  cursor: default;
  filter: alpha(opacity=100) !important;
  -moz-opacity: 1 !important;
  -khtml-opacity: 1 !important;
  opacity: 1 !important;
}

#subwindow #content #products .prev {
  display: block;
  background: url(../images/detail_prev_button.png) no-repeat;
  text-indent: -9999px;
  width: 60px;
  height: 60px;
  top: 35%;
  left: -26px;
  position: absolute;
  z-index: 1000;
}

#subwindow #content #products .next {
  display: block;
  background: url(../images/detail_next_button.png) no-repeat;
  text-indent: -9999px;
  width: 60px;
  height: 60px;
  top: 35%;
  right: -26px;
  position: absolute;
  z-index: 1000;
}

#subwindow #content #products .arrowOn:hover .prev,
#subwindow #content #products .arrowOn:hover .next {
  display: block;
}

#subwindow #content #products .arrowOn:hover .prev:hover,
#subwindow #content #products .arrowOn:hover .next:hover {
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -khtml-opacity: 0.8;
  opacity: 0.8;
}

#content #reCAPTCHA {
  width: 304px;
  margin: 20px auto 0;
}

/* =================================================================
15.エラーページ
使用ファイル：common/messages.xhtml
　　　　　　　ext/social_provider.xhtml
=================================================================*/
#error {
  width: 100%;
  padding: 10px 0px;
}

#error table {
  margin: 0px 0 10px;
  border: none !important;
  /* font-size: 85%; */
}
@media screen and (max-width: 767px) {
  #error table {
    font-size: 18px;
  }
}

#error td {
  padding: 10px;
  border: none !important;
}

#error .ico {
  width: 40px;
  vertical-align: top;
  text-align: center;
}

#error .content {
  padding: 5px;
  /* color: #C00; */
  font-weight: bold;
  vertical-align: middle;
  line-height: 150%;
  float: none;
}

#error .buttonarea {
  margin: 10px;
  padding-top: 40px;
  text-align: center;
}

#error ul {
  background: none;
}

#error li {
  float: none;
  font-size: 100%;
  border: 0px;
  padding: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  width: auto;
  line-height: 150%;
}

#centerContent {
  text-align: center;
  padding: 90px 0 220px;
}
#centerContent table {
  margin: 50px auto;
  text-align: left;
}
#centerContent .buttonarea form {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  #centerContent {
    padding: 45px 0 100px;
  }
  #centerContent table {
    margin: 25px auto;
  }
}
/*  social_provider.xhtmlのエラー部分
-------------------------------------------------------------*/
#social_plus_error {
  width: 100%;
  padding: 10px 0px;
}

#social_plus_error table {
  margin: 0px 0 10px;
  border: none !important;
  font-size: 85%;
}

#social_plus_error td {
  padding: 10px;
  border: none !important;
}

#social_plus_error .ico {
  width: 40px;
  vertical-align: top;
  text-align: center;
}

#social_plus_error .content {
  padding: 5px;
  color: #c00;
  font-weight: bold;
  vertical-align: middle;
  line-height: 150%;
  float: none;
}

#social_plus_error .buttonarea {
  margin: 10px;
  padding-top: 10px;
  border-top: #ccc 1px dashed;
  text-align: center;
}

#social_plus_error ul {
  background: none;
}

#social_plus_error li {
  float: none;
  font-size: 100%;
  border: 0px;
  padding: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  width: auto;
  line-height: 150%;
}

/* =================================================================
16.クレジットカード登録画面
使用ファイル：member_credit_entry_input.xhtml
=================================================================*/
/* #credit td.button_area {
    text-align: center;
}

#credit td.button_area .button {
    display: inline-block;
    width: auto;
}

#credit .can_regist {
    padding-top: 30px;
}

#credit .error {
    clear: both;
    margin: 5px 10px;
    color: #C00 !important;
    font-weight: bold;
    text-align: center;
    font-size: 80%;
} */
.bl_creditcardTableWrapper {
  background-color: #f2f2f2;
  padding: 24px 32px 40px 32px;
  max-width: 724px;
}
.bl_creditcardTable {
  font-weight: 600;
  margin-bottom: 40px;
}
.bl_creditcardTable th,
.bl_creditcardTable td {
  padding: 16px 8px;
}
.bl_creditcardTable th {
  font-weight: bold;
  width: 160px;
  text-align: left;
}
.bl_savedCard {
  margin-bottom: 32px;
}
.bl_savedCard .bl_btn {
  margin-right: 0;
  width: 120px;
  padding: 6.5px 0;
}
.bl_savedCardTable {
  width: 100%;
  margin-bottom: 16px;
}
.bl_savedCardTable th,
.bl_savedCardTable td {
  border: 1px solid #d5d5d5;
  padding: 15.5px 12px;
}
.bl_savedCardTable th {
  background-color: #f2f2f2;
  width: 110px;
}
.bl_savedCard_message {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .bl_creditcardTableWrapper {
    padding: 20px;
  }
  .bl_creditcardTable th,
  .bl_creditcardTable td {
    display: block;
    padding: 0;
    margin-bottom: 8px;
  }
  .bl_creditcardTable {
    margin-bottom: 24px;
  }
  .bl_creditcardTable tr:not(:last-child) {
    display: block;
    margin-bottom: 14px;
  }
  .bl_creditcardTableWrapper .cardnumber_td {
    display: flex;
    gap: 8px;
  }
  .bl_creditcardTableWrapper .cardnumber_td [name^="CREDIT_NO_DIVISION"] {
    width: 100%;
  }
  .bl_creditcardTableWrapper .bl_selectWrapper select {
    width: 100px;
    padding: 9px 12px;
  }
}
/* =================================================================
17.お気に入り
使用ファイル：wishlist.xhtml
　　　　　　　wishlist_edit.xhtml
=================================================================*/

.bl_wishListUnit {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .bl_wishListUnit {
    margin-bottom: 56px;
  }
}
.bl_wishListItem {
  display: flex;
  gap: 12px;
  line-height: 1.5;
  padding-bottom: 24px;
  margin-top: 60px;
  border-bottom: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .bl_wishListItem {
    flex-wrap: wrap;
    margin-top: 24px;
  }
}
.bl_wishListItem_imgWrapper a {
  width: 150px;
  aspect-ratio: 1;
  background-color: #f6f6f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_wishListItem_imgWrapper img {
  max-width: 90%;
  max-height: 90%;
  display: block;
}
.bl_wishListItem_heading {
  font-size: 16px;
  margin-bottom: 8px;
}
.bl_wishListItem_appeal {
  font-size: 14px;
  color: #737373;
}
.bl_wishListItem_basePrice {
  font-size: 22px;
  font-weight: bold;
}
.bl_wishListItem_basePrice span {
  font-size: 16px;
}
.bl_wishListItem_basePrice:not(:has(+ .bl_wishListItem_taxPrice)) {
  margin-bottom: 12px;
}

.bl_wishListItem_taxPrice {
  font-size: 14px;
  margin-bottom: 12px;
}
.bl_wishListItem_body {
  flex: 1;
}
.bl_wishListUnit .property {
  margin-top: 8px;
  font-size: 14px;
}
.bl_wishListItem_comment {
  padding: 9px 16px;
  margin-top: 12px;
  background-color: #f2f2f2;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .bl_wishListItem_comment {
    margin-bottom: 20px;
  }
}
.bl_wishListItem_btns .button_area {
  width: 278px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .bl_wishListItem_btns {
    width: 100%;
  }
  .bl_wishListItem_btns .button_area {
    width: 100%;
  }
}
.bl_wishListItem_btns .bl_btn {
  width: 100%;
  padding: 8.5px 10px;
  font-size: 14px;
}
.bl_wishListItem_btns .button {
  font-size: 18px;
  padding: 9.5px 10px;
  border-radius: 23px;
  line-height: 1.5;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .bl_wishListItem_btns .button {
    font-size: 14px;
  }
}

.bl_wishListItem_btns .button svg {
  vertical-align: middle;
  margin-right: 2px;
}
/* .bl_wishListUnit {
  display: flex;
  flex-wrap: wrap;
  gap: 28px 16px;
  margin-top: 60px;
  margin-bottom: 88px;
}

.bl_wishListItem {
  width: 190px;
  line-height: 1.5;
}
.bl_wishListItem > div:first-child {
  min-height: 478px;
}
.bl_wishListItem .bl_badgeUnit {
  margin-bottom: 10px;
}
.bl_wishListItem .bl_badgeUnit:not(:has(.bl_badge)) {
  display: none;
}
.bl_wishListItem_imgWrapper {
  background-color: #f6f6f6;
  margin-bottom: 12px;
}

.bl_wishListItem_imgWrapper a {
  display: flex;
  width: 100%;
  aspect-ratio: 1;
  align-items: center;
  justify-content: center;
}
.bl_wishListItem_imgWrapper img {
  max-width: 90%;
  max-height: 90%;
  display: block;
}
.bl_wishListItem_heading {
  font-size: 16px;
  margin-bottom: 8px;
}
.bl_wishListItem_appeal {
  font-size: 14px;
  color: #737373;
  margin-bottom: 10px;
}
.bl_wishListItem_basePrice {
  font-size: 22px;
  font-weight: bold;
}
.bl_wishListItem_basePrice span {
  font-size: 16px;
}
.bl_wishListItem_basePrice:not(:has(+ .bl_wishListItem_taxPrice)) {
  margin-bottom: 12px;
}

.bl_wishListItem_taxPrice {
  font-size: 14px;
  margin-bottom: 12px;
}
.bl_wishListItem_comment {
  padding: 20px 16px;
  margin-bottom: 12px;
  background-color: #f2f2f2;
}

.bl_wishListItem_comment_inner {
  font-size: 14px;
  line-height: 1;

}
.bl_wishListItem_comment_inner:empty {
  display: none;
}
.bl_wishListUnit .button {
  font-size: 14px;
  padding: 10px;
  margin-bottom: 12px;
}
.bl_wishListUnit .button svg {
  vertical-align: middle;
  margin-right: 2px;
}
.bl_wishListUnit .bl_btn {
  padding: 10px 16px;
  font-size: 14px;
  margin-bottom: 12px;
}
.bl_wishListUnit .property {
  font-size: 14px;
  margin-bottom: 10px;
}
.bl_wishListUnit .bl_wishListItem_delete {
  width: 122px;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .bl_wishListUnit {
    margin-bottom: 50px;
    margin-top: 30px;
  }
  .bl_wishListItem {
    width: 47%;
  }
  .bl_wishListItem > div:first-child {
    min-height: 0;
  }
  .bl_wishListUnit .bl_wishListItem_delete {
    width: 100%;
    font-size: 12px;
  }
  .bl_wishListItem .bl_btn {
    font-size: 12px;
  }
} */
/* #wishList {
    margin-bottom: 20px;
}

#wishList .box {
    margin: 10px 0;
    border: #CCC 1px solid;
}

#wishList .box:hover {
    border: #8CC329 1px solid;
}

#wishList .box:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #wishList .provisional {
    margin: 0px;
}

#wishList .text {
    margin-left: 140px;
}

#wishList .text .ordertext {
    float: right;
    margin-right: 10px;
}

#wishList h3 {
    display: block;
    margin: 10px 10px 0 0;
    font-size: 95%;
}

#wishList .appeal {
    display: block;
    margin: 0;
    color: #F60;
    font-size: 70%;
}

#wishList .price {
    display: block;
    margin: 0;
    color: #C00;
}

#wishList .price .teika {
    font-weight: bold;
    font-size: 110%;
}

#wishList .price .other {
    font-size: 90%;
}

#wishList .explanation1 {
    display: block;
    margin: 5px 10px 0 0;
    padding: 10px 0px;
    border-top: #CCC 1px solid;
    font-size: 80%;
    line-height: 120%;
}

#wishList .explanation1 h4 {
    margin-bottom: 10px;
}

#wishList .explanation1 h4 a {
    display: inline-block;
    width: auto;
    font-weight: normal;
}

#wishList .explanation1 p {
    margin: 0px;
}

#wishList .button_area {
    margin: 0px 10px 20px 0px;
    padding-top: 20px;
    border-top: #CCC 1px solid;
    text-align: right;
}

#wishList .button_area:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #wishList .button_area .button {
    width: auto;
    display: inline-block;
}

#wishList .property {
    display: inline;
    margin: 0;
    color: #AAA;
    font-size: 75%;
}

#wishList .pageguide {
    float: left;
    width: 570px;
    font-size: 85%;
    padding-top: 4px;
}

#wishList .rearrange {
    float: left;
    width: 200px;
    font-size: 85%;
    text-align: right;
}

#wishList .rearrange select {
    margin-left: 10px;
}

#wishList .pagelink {
    clear: both;
    font-size: 85%;
    padding-top: 10px;
}

#wishList .nolink {
    color: #999;
}

#wishList .buttonarea_submit {
    text-align: right;
}

#wishList .buttonarea_submit a.button {
    display: inline-block;
    width: auto;
    line-height: 18px;
}

#wishList .alert {
    color: red;
}

#wishList .img_box {
    width: 120px;
    height: 120px;
    margin: 10px;
    float: left;
    text-align: center;
    position: relative;
}

#wishList .img_box img {
    width: auto;
    max-width: 120px;
    max-height: 120px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

/* wishList - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
/* #wishList .cartSubmitButton {
    position: relative;
}

#wishList .cartSubmitButton .cartMessage {
    position: absolute;
    top: -85px;
    left: 50%;
    margin-left: -122px;
    padding: 10px;
    background-color: #fff;
    border: #ccc 2px solid;
    width: 270px;
    z-index: 10;
    display: none;
}

#wishList .cartSubmitButton .cartMessage:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    width: 6px;
    height: 5px;
}

#wishList .cartSubmitButton .cartMessage .title {
    text-align: center;
    font-size: 100.0%;
    font-weight: bold;
    color: #000;
}

#wishList .cartSubmitButton .cartMessage .mainclose {
    background-color: #fff;
    cursor: pointer;
    text-align: center;
    margin-bottom: 0;
}

#wishList .cartSubmitButton .cartMessage .link {
    background-color: #fff;
    text-align: center;
}

#wishList .cartSubmitButton .cartMessage .link a {
    display: inline-block;
}

#wishList .cartSubmitButton .cartMessage .close {
    position: absolute;
    top: 3px;
    right: 3px;
    cursor: pointer;
} */

/* =================================================================
18.アドレス帳
使用ファイル：address_add.xhtml
　　　　　　　address_input.xhtml
=================================================================*/
.bl_addressWrapper {
  margin-top: 40px;
}
.bl_btnHorizontal {
  display: flex;
  gap: 39px;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.bl_btnHorizontal__right {
  justify-content: flex-end;
  gap: 24px;
}

.bl_btnHorizontal__right [type="button"][disabled] {
  width: auto;
  padding: 8px;
  margin: 0 4px;
  background-color: #d5d5d5;
  border: 1px solid #d5d5d5;
  border: none;
  color: #737373;
  cursor: default;
  border-radius: 35px;
}

.bl_btnHorizontal .bl_btn {
  margin-left: 0;
  margin-right: 0;
}
.bl_addressItem {
  border: 1px solid #d5d5d5;
  padding: 24px;
  display: flex;
}
.bl_addressItem__btn {
  width: 158px;
  height: 40px;
  font-size: 14px;
  display: flex;
  border-radius: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid #000;
}

@media screen and (max-width: 767px) {
  .bl_btnHorizontal {
    gap: 15px;
    justify-content: center;
  }
  .bl_addressItem {
    padding: 16px;
    display: block;
  }
}

.bl_addressItem:not(:last-child) {
  margin-bottom: 24px;
}
.bl_addressItem__main {
  width: 32.4%;
}
@media screen and (max-width: 767px) {
  .bl_addressItem__main {
    width: 100%;
  }
}
.bl_addressItem__sub {
  padding-left: 40px;
  font-size: 16px;
  border-left: 1px solid #d5d5d5;
}
@media screen and (max-width: 767px) {
  .bl_addressItem__sub {
    border-top: 1px solid #d5d5d5;
    padding-top: 5px;
    margin-top: 12px;
    padding-left: 0px;
    border-left: none;
  }
}

.bl_addressItem_name {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .bl_addressItem_name {
    font-size: 18px;
    display: inline-block;
    margin-right: 10px;
  }
}

.bl_addressItem__nameKana {
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 13px;
}
@media screen and (max-width: 767px) {
  .bl_addressItem__nameKana {
    display: inline-block;
    font-size: 12px;
    margin-bottom: 0px;
  }
}
.bl_addressItem__list01 {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.bl_addressItem__list01 div {
  display: flex;
  align-items: center;
}
.bl_addressItem__list01 dt {
  font-size: 14px;
  width: 72px;
  font-weight: 500;
  text-align: center;
  padding: 2px;
  margin-right: 7px;
  background-color: #ffdd00;
}
.bl_addressItem__list01 dd {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .bl_addressItem__list01 {
    margin-top: 8px;
  }
  .bl_addressItem__list01 dd {
    font-size: 14px;
  }
  .bl_addressItem__list01 dt {
    width: 64px;
    padding: 1px;
    font-size: 12px;
  }
}
.bl_addressItem__list02 {
  margin-bottom: 16px;
}
.bl_addressItem__list02 div {
  display: flex;
  margin-top: 2px;
  align-items: center;
}
.bl_addressItem__list02 dd {
  position: relative;
  padding-left: 14px;
  flex: 1;
}
.bl_addressItem__list02 dd::before {
  content: "：";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.bl_addressItem__list02 dt {
  width: 98px;
}
.bl_addressItem__list02 div:nth-child(n + 2) {
  font-size: 14px;
  color: #737373;
}
/* #addressList {
    padding-bottom: 20px;
}

#addressList h3 {
    margin-bottom: 15px;
    padding: 1px 0px 0px 20px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 7px 7px no-repeat;
    font-size: 85%;
    margin-top: 30px;
}

#addressList ul {
    padding: 20px 0 10px;
}

#addressList ul:after {
    content: "";
    clear: both;
    display: block;
}


#addressList li {
    float: left;
    font-size: 80%;
    border: 1px solid #CCC;
    padding: 10px 10px 40px 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    width: 348px;
    line-height: 180%;
    position: relative;
}

#addressList li strong {
    font-size: 18px;
}

#addressList li .button_area {
    margin: 0px 0px 0;
    position: absolute;
    bottom: 10px;
}

#addressList li .button_area .button {
    width: auto;
    display: inline-block;
}

#addressList .widebox li {
    width: 453px;
}

#addressList .pageguide {
    float: left;
    width: 500px;
    font-size: 85%;
}

#addressList .rearrange {
    float: left;
    width: 200px;
    font-size: 85%;
    text-align: right;
}

#addressList .pagelink {
    clear: both;
    font-size: 85%;
}

#addressList .nolink {
    color: #999;
} */

/* =================================================================
19.マイページ
使用ファイル：member_mypage.xhtml
=================================================================*/
/* #member.mypage h3 {
    margin: 10px 0 10px 10px;
}

#member.mypage h3 a {
    float: right;
    width: auto;
} */

.bl_mypageHeading {
  display: flex;
  align-items: center;
  margin-bottom: 32px;
  padding-bottom: 15px;
  justify-content: space-between;
  border-bottom: 1px solid #d5d5d5;
}
.bl_mypageHeading h3 {
  font-size: 22px;
  font-weight: bold;
}
.btn_logout {
  text-align: center;
  font-size: 14px;
  padding: 8.5px 24.5px;
  border: 1px solid #000;
}
@media screen and (max-width: 767px) {
  .bl_mypageHeading {
    padding-bottom: 10px;
    margin-bottom: 24px;
  }
  .btn_logout {
    width: fit-content;
    margin: 40px auto 0;
  }
  .bl_mypageHeading h3 {
    font-size: 18px;
    font-weight: bold;
  }
}

/* #member.mypage ul {
    margin: 0 0 50px 10px;
}

#member.mypage ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #member.mypage ul li {
    float: left;
} */

#member.mypage ul li h4 {
  font-size: 16px;
  background: #f6f6f6;
  font-weight: 600;
  padding: 10px 16px;
  /* margin: 0 0px 15px 0; */
}
#member.mypage ul li .box-point > div {
  padding: 15px 24px;
}
#member.mypage ul li .box-point > div .point {
  display: block;
  font-size: 20px;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
#member.mypage ul li .box-point > div .point {
  display: block;
    margin-top: 10px;8
  font-size: 18px;
}
}
#member.mypage ul li .box-point > div:not(:last-child) {
  border-bottom: 1px solid #d5d5d5;
  border-top: 1px solid #d5d5d5;
}

#member.mypage ul li .box-point h5 {
  font-weight: bold;
  font-size: inherit;
}
#member.mypage ul li .box-point dl > div {
  display: flex;
  gap: 16px;
  margin-top: 8px;
}
#member.mypage ul li .box-point dl dt {
  width: 38%;
}
#member.mypage ul li .box-point dl dd {
  flex: 1;
  /* text-align: right; */
}
#member.mypage .bl_mypageList li .inner {
  /* width: 353px; */
  border: 1px solid #d5d5d5;
  /* margin: 0 10px 10px 0; */
}
#member.mypage .bl_mypageList li a {
  display: block;
  padding: 15px 35px 15px 24px;
  border-top: 1px solid #d5d5d5;
  position: relative;
}
#member.mypage .bl_mypageList li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 6px;
  aspect-ratio: 1;
  transform: translateY(-50%) rotate(45deg);
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
.bl_mypageList ul svg {
  fill: #000;
  margin-right: 4px;
}
/* #member.mypage ul{
    display: flex;
} */
/* #member.mypage ul li .box {
    padding-bottom: 10px;
} */

/* #member.mypage ul li p {
    font-size: 12px;
} */

/* #member.mypage ul li a {
    font-size: 12px;
} */
.bl_couponLink svg {
  fill: #000;
  vertical-align: middle;
}
.bl_couponLink {
  margin-bottom: 32px;
}
.bl_couponLink a {
  text-decoration: underline;
  position: relative;
  padding-right: 20px;
}
.bl_couponLink a::before {
  content: "";
  aspect-ratio: 1;
  width: 6px;
  position: absolute;
  top: 50%;
  right: 0px;
  display: block;
  transform: translateY(-50%) rotate(45deg);
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

.bl_mypageList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 32px;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .bl_couponLink {
    margin-bottom: 24px;
  }
  .bl_mypageList {
    gap: 24px;
  }
}

.bl_couponTable {
  width: 100%;
  max-width: 738px;
  margin-top: 24px;
}
.bl_couponTable th:last-child,
.bl_couponTable td:last-child {
  width: 120px;
}
.bl_couponTable a {
  text-decoration: underline;
}
.bl_couponTable thead th {
  text-align: left;
  background-color: #f2f2f2;
  padding: 11.5px 24px;
}
.bl_couponTable th,
.bl_couponTable td {
  border: 1px solid #d5d5d5;
  padding: 15.5px 24px;
}
#member.teiki,
#member.mypage,
#addressList.mypage {
  margin-bottom: 120px;
}
#member.mypage #social_plus {
  margin: 50px 0 0;
}

@media screen and (max-width: 767px) {
  #member.teiki,
  #member.mypage,
  #addressList.mypage {
    margin-bottom: 90px;
  }
}

#member.mypage #social_plus .associate {
  display: inline-block;
  min-width: inherit;
  width: 100px;
  font-size: 14px;
}

#member.mypage #social_plus tr th {
  background: #fff;
}

#member.mypage #social_plus tr th a {
  text-decoration: none;
}

#member.mypage #social_plus tr.title th {
  background: #f6f6f6;
}

#member.mypage #social_plus th.service {
  width: 220px;
}

#member.mypage #social_plus th div {
  width: 220px;
  height: 44px;
  font-size: 14px;
  display: block;
}

#member.mypage #social_plus th div p {
  padding: 14px 0 14px 25px;
  border: 1px solid #cdcdcd;
  border-left: 0px;
  margin: 0 0 0 51px;
  display: block;
  line-height: 1;
  font-size: 14px;
}

#member.mypage #social_plus th.yahoo div {
  background: url("../images/social_yahoo.png") no-repeat;
  color: #e71017;
}

#member.mypage #social_plus th.facebook div {
  background: url("../images/social_facebook.png") no-repeat;
  color: #3b5998;
}

#member.mypage #social_plus th.twitter div {
  background: url("../images/social_twitter.png") no-repeat;
  color: #55acee;
}

#member.mypage #social_plus th.google div {
  background: url("../images/social_google.png") no-repeat;
  color: #dc4e41;
}

#member.mypage #social_plus th.mixi div {
  background: url("../images/social_mixi.png") no-repeat;
  color: #d1ad59;
}

#member.mypage #social_plus th.line div {
  background: url("../images/social_line.png") no-repeat;
  color: #00b300;
}

#member.mypage #social_plus th.paypal div {
  background: url("../images/social_paypal.png") no-repeat;
  color: #293e7f;
}

#member.mypage #social_plus th.apple_id div p {
  padding: 18px 0px 19px 25px;
}

#member.mypage #social_plus .alignment th div p {
  border: none;
  margin: 0 0 0 53px;
}

#member.mypage #social_plus .alignment th.apple_id div {
  background: url("../images/social_apple.png") no-repeat;
  color: #000;
  height: 53px;
}

#member.mypage #social_plus th.yahoo div.off {
  background: url("../images/social_yahoo_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.facebook div.off {
  background: url("../images/social_facebook_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.twitter div.off {
  background: url("../images/social_twitter_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.google div.off {
  background: url("../images/social_google_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.mixi div.off {
  background: url("../images/social_mixi_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.line div.off {
  background: url("../images/social_line_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus th.paypal div.off {
  background: url("../images/social_paypal_off.png") no-repeat;
  color: #cdcdcd;
}

#member.mypage #social_plus td {
  vertical-align: middle;
}

#member.mypage .rakuten_wrapper {
  margin-top: 50px;
}

#member.mypage .rakuten_area_linked {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  margin: 20px 10px;
}

#member.mypage .rakuten_area_title {
  font-weight: bold;
  font-size: 15px;
}

#member.mypage .rakuten_point_area {
  -webkit-box-flex: 1;
  flex-grow: 1;
  margin-left: 24px;
}

#member.mypage .rakuten_detail_link {
  text-align: left;
}

#member.mypage .rakuten_btn_point {
  display: inline-block;
  margin: 15px 10px;
}

#member.mypage .rakuten_logout input {
  margin-left: 20px;
}

#member.mypage .rakuten_term_point {
  margin-top: 10px;
}

/* =================================================================
20.ログイン
使用ファイル：login.xhtml
=================================================================*/
.bl_loginNew {
  text-align: center;
  padding: 90px 0 220px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.bl_loginNew #error {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.bl_loginNew__notice {
  padding-top: 0px;
}

.bl_loginNew h2 {
  font-size: 24px;
}

.bl_loginNew .bl_loginBtn {
  width: 310px;
  background-color: #b41e8e;
  color: #fff;
  padding: 20px 0;
  margin: 40px auto;
  display: block;
  font-size: 16px;
  line-height: 1.3;
}

.bl_loginBtn span {
  display: block;
  font-size: 13px;
  margin-top: 18px;
}

.bl_mediumFont {
  font-weight: 500;
  font-size: 18px;
  margin-bottom: 53px;
  display: block;
  span {
    margin-top: 10px;
    font-size: 16px;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .bl_loginNew .bl_loginBtn {
    font-size: 18px;
  }
  .bl_loginBtn span {
    margin-top: 10px;
  }
  .bl_loginNew {
    padding: 45px 0 110px;
  }
  .bl_loginNew h2 {
    font-size: 20px auto 30px;
  }
  .bl_loginNew .bl_loginBtn {
    margin: 20px auto;
    padding: 18px 0;
  }
  .bl_mediumFont {
    font-size: 14px;
    margin-bottom: 30px;
    line-height: 1.8;
  }
  .bl_mediumFont span {
    font-size: 12px;
    margin-top: 6px;
  }
}

/* #loginNew:after {
    content: "";
    clear: both;
    display: block;
}


#loginNew table {
    margin: 0 auto 20px auto;
    width: 428px;
}

#loginNew h3 {
    margin-bottom: 15px;
    padding: 1px 20px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 7px 7px no-repeat #EEE;
    font-size: 85%;
}

#loginNew .box {
    border: 1px solid #CCC;
    width: 478px;
    float: left;
    margin: 0 5px 30px;
    position: relative;
}

#loginNew .box .buttonarea {
    width: 100%;
    margin: 20px 0;
    padding: 0;
}

#loginNew .box table {
    margin: 10px;
    width: 446px !important;
}

#loginNew .box .link_text {
    text-align: right;
    padding: 15px 0 10px;
}

#loginNew .box .regist_non_area {
    width: 442px;
    margin: 0 auto;
}

#loginNew .box .regist_non_area p {
    margin: 0 0 10px;
}

#loginNew .box .amazon_area {
    width: 442px;
    margin: 0 auto;
    border-top: 1px solid #ccc;
}

#loginNew .box .amazon_area p {
    margin: 10px 0;
}

#loginNew .widebox {
    border: 1px solid #CCC;
    width: 960px;
    margin: 0 10px 30px;
    clear: both;
}

#loginNew .widebox .link {
    text-align: right;
}

#loginNew .widebox table {
    width: 920px;
}

#loginNew input[type='text'],
#loginNew input[type='password'] {
    width: 200px;
}

#loginNew .social_provider ul {
    margin: 0px 13px 0px;
}

#loginNew .social_provider ul:after {
    content: "";
    clear: both;
    display: block;
}


#loginNew .social_provider ul li {
    width: 220px;
    height: 44px;
    font-size: 14px;
    display: block;
    float: left;
    margin: 0px 10px 15px 0;
}

#loginNew .social_provider ul li:nth-child(2n) {
    margin-right: 0px;
}

#loginNew .social_provider ul li a {
    display: block;
    text-decoration: none;
}

#loginNew .social_provider ul li a span {
    padding: 14px 0 14px 25px;
    border: 1px solid #cdcdcd;
    border-left: 0px;
    margin: 0 0 0 53px;
    display: block;
    background: #FFF;
    line-height: 1;
    font-size: 14px;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;

    -moz-border-radius-topright: 3px;

    -moz-border-radius-bottomright: 3px;
}

#loginNew .social_provider li.yahoo a {
    background: url("../images/social_yahoo.png") no-repeat;
    color: #e71017;
}

#loginNew .social_provider li.facebook a {
    background: url("../images/social_facebook.png") no-repeat;
    color: #3b5998;
}

#loginNew .social_provider li.twitter a {
    background: url("../images/social_twitter.png") no-repeat;
    color: #55acee;
}

#loginNew .social_provider li.google a {
    background: url("../images/social_google.png") no-repeat;
    color: #dc4e41;
}

#loginNew .social_provider li.mixi a {
    background: url("../images/social_mixi.png") no-repeat;
    color: #d1ad59;
}

#loginNew .social_provider li.line a {
    background: url("../images/social_line.png") no-repeat;
    color: #00b300;
}

#loginNew .social_provider li.paypal a {
    background: url("../images/social_paypal.png") no-repeat;
    color: #293e7f;
} */

/* =================================================================
21.商品比較
使用ファイル：item_compare.xhtml
=================================================================*/
#itemCompare .img_box {
  width: 80px;
  height: 80px;
  margin: 0;
  text-align: center;
  position: relative;
}

#itemCompare .img_box img {
  width: auto;
  max-width: 80px;
  max-height: 80px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#itemCompare .propertyimg_box {
  width: 60px;
  height: 60px;
  margin: 0;
  text-align: center;
  position: relative;
}

#itemCompare .propertyimg_box img {
  width: auto;
  max-width: 60px;
  max-height: 60px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#itemCompare th {
  width: 150px;
}

#itemCompare .button_area .button {
  width: auto;
  display: inline-block;
  width: 130px;
}

/* itemCompare - 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
#itemCompare .cartSubmitButton {
  position: relative;
}

#itemCompare .cartSubmitButton .cartMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 10;
  display: none;
}

#itemCompare .cartSubmitButton .cartMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

#itemCompare .cartSubmitButton .cartMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

#itemCompare .cartSubmitButton .cartMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

#itemCompare .cartSubmitButton .cartMessage .link {
  background-color: #fff;
  text-align: center;
}

#itemCompare .cartSubmitButton .cartMessage .link a {
  display: inline-block;
}

#itemCompare .cartSubmitButton .cartMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

/* =================================================================
22.キャンペーン
使用ファイル：top.xhtml,item_detail.xhtml,cart_index.xhtml,cart_seisan.xhtml,cart_confirm.xhtml,cart_confirm$amazon_payments.xhtml,cart_result.xhtml,member_history.xhtml
=================================================================*/
/* member_history */
#history .campaign {
  line-height: 1.5;
  display: inline-block;
  margin: 0 5px 0 0;
}

/* top,item_detail */
#mainCampaign ul {
  width: 100%;
}

#mainCampaign ul:after {
  content: "";
  clear: both;
  display: block;
}

/* clearfix */
#mainCampaign li {
  width: 375px;
  margin: 0 20px 20px 0;
  float: left;
}

#mainCampaign li a {
  display: block;
}

#mainCampaign li img {
  width: 100%;
  display: block;
}

#mainCampaign li h3 {
  padding: 5px 0 0 0;
}

#mainCampaign li h4 {
  font-size: 90%;
}

#mainCampaign li p {
  margin: 5px 0 0 0;
  font-size: 90%;
}

/* cart_index */
.bl_sales_campaign_banner {
  border: 1px solid #d5d5d5;
  border-radius: 25px;
  padding: 24px 32px;
  margin-bottom: 160px;
}
#detailCampaign {
  margin-bottom: 60px;
}
.bl_sales_campaign_banner__confirm {
  margin-top: 0px;
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  #detailCampaign {
    margin-bottom: 30px;
  }
  .bl_sales_campaign_banner {
    margin-bottom: 80px;
    margin-top: 30px;
  }
  .bl_sales_campaign_banner.bl_sales_campaign_banner__confirm {
    margin-top: 0;
    margin-bottom: 30px;
  }
}
.bl_sales_campaignHeading {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 22px;
}
/* .bl_sales_campaignList div {
  display: flex;
} */
.bl_campaignList_header {
  display: flex;
  gap: 16px;
 flex-direction: column;
}
.bl_campaignList li:not(:last-child) {
  margin-bottom: 22px;
}
.bl_campaignList_heading {
  font-weight: bold;
}
.bl_campaignList_heading,
.bl_campaignList_date {
  width: calc(50% - 8px);
  font-size: 18px;
}

.bl_campaignList_item{
  border-bottom: 1px solid #D5D5D5;
  padding: 16px 0;
}

.bl_campaignList_item:has(.bl_campaignList_imgWrapper){
  display: flex;
  gap:60px;
}
.bl_campaignList_imgWrapper {
  width:34.1% ;
}
.bl_campaignList_imgWrapper img {
  display: block;
  width: 100%;
}
.bl_campaignList_item:has(.bl_campaignList_imgWrapper) .bl_campaignList_header{
  flex:1;
  flex-direction: column;
  justify-content: flex-start;
}
.bl_campaignList_item:has(.bl_campaignList_imgWrapper) .bl_campaignList_heading{
  width:100%;
}
@media screen and (max-width: 767px) {
  .bl_sales_campaignHeading {
    font-size: 18px;
    margin-bottom: 8px;
  }
  .bl_sales_campaign_banner {
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 130px;
  }
  .bl_campaignList li:not(:last-child) {
    margin-bottom: 13px;
  }
  .bl_campaignList_header {
    display: block;
  }
  .bl_campaignList_heading {
    margin-bottom: 4px;
  }
  .bl_campaignList_heading,
  .bl_campaignList_date {
    width: 100%;
    font-size: 16px;
  }
  .bl_campaignList_content{
    margin-top:     5px;
  }
  .bl_campaignList li:not(:last-child) {
  margin-bottom: 8px;
}
  .bl_campaignList_imgWrapper {
    margin-bottom: 4px;
    width: 100%;
  }
  .bl_campaignList_item:has(.bl_campaignList_imgWrapper){
    display: block;
  }
}
/* #cartCampaign ul {
  width: 100%;
}

#cartCampaign ul:after {
  content: "";
  clear: both;
  display: block;
} */

/* clearfix */
/* #cartCampaign p.heed {
  margin: 0 0 10px 0;
  font-size: 75%;
}

#cartCampaign li {
  width: 365px;
  margin: 0 20px 20px 0;
  float: left;
}

#cartCampaign li a {
  display: block;
}

#cartCampaign li img {
  width: 100%;
  display: block;
}

#cartCampaign li h4 {
  padding: 5px 0 0 0;
}

#cartCampaign li p {
  margin: 5px 0 0 0;
} */

/* cart_confirm */
#cartFlow .confirmCampaign {
  width: 100%;
  margin-top: 20px;
  padding: 10px;
  border: #ccc 1px solid;
}

#cartFlow .confirmCampaign h3 {
  margin: 0 0 10px;
  padding: 0px;
  border: none;
  background: none;
}

#cartFlow .confirmCampaign li {
  padding: 0 0 10px 0;
  border: none;
}

#cartFlow .confirmCampaign li h4 {
  font-size: 90%;
}

#cartFlow .confirmCampaign li img {
  width: 100%;
}

#cartFlow .confirmCampaign li p {
  margin: 0;
}

/* cart_result */
/* #resultCampaign ul {
    width: 100%;
}

#resultCampaign ul:after {
    content: "";
    clear: both;
    display: block;
} */

/* clearfix */
/* #resultCampaign h3 {
    margin-bottom: 15px;
    padding: 1px 20px;
    border-bottom: 1px solid #CCC;
    background: url("../images/marker.gif") 7px 7px no-repeat #EEE;
    font-size: 85%;
}

#resultCampaign {
    width: 980px;
}

#resultCampaign:after {
    content: "";
    clear: both;
    display: block;
}

/* clearfix */
/*
#resultCampaign li {
    width: 480px;
    margin: 0 20px 20px 0;
    float: left;
}

#resultCampaign li a {
    display: block;
}

#resultCampaign li img {
    width: 100%;
    display: block;
}

#resultCampaign li p {
    margin: 5px 0 0 0;
} */
.bl_resultMessage {
  padding: 40px;
  background: #f2f2f2;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 40px;
}

.bl_number {
  margin-top: 40px;
  font-size: 24px;
}
.bl_small {
  display: inline-block;
  margin-top: 16px;
  font-size: 14px;
  text-indent: -1em;
  padding-left: 1em;
}
.bl_small__teiki {
  max-width: 310px;
}
@media screen and (max-width: 767px) {
  .bl_resultMessage {
    padding: 16px;
    font-size: 16px;
    margin-top: 60px;
    margin-bottom: 28px;
  }
  .bl_number {
    margin-top: 16px;
    font-size: 18px;
  }
}

/* =================================================================
23.会員登録
使用ファイル：member_input.xhtml
=================================================================*/
#memberInput {
  padding: 30px 0 0 0;
}

#memberInput h3 {
  margin: 10px 0 10px 10px;
}

#memberInput .social_provider ul {
  width: 100%;
  padding: 0 10px;
}

#memberInput .social_provider li {
  width: 220px;
  margin: 0 20px 20px 0;
  float: left;
}

#memberInput .social_provider ul li a {
  display: block;
  text-decoration: none;
}

#memberInput .social_provider li.yahoo a {
  background: url("../images/social_yahoo.png") no-repeat;
  color: #e71017;
}

#memberInput .social_provider li.facebook a {
  background: url("../images/social_facebook.png") no-repeat;
  color: #3b5998;
}

#memberInput .social_provider li.twitter a {
  background: url("../images/social_twitter.png") no-repeat;
  color: #55acee;
}

#memberInput .social_provider li.google a {
  background: url("../images/social_google.png") no-repeat;
  color: #dc4e41;
}

#memberInput .social_provider li.mixi a {
  background: url("../images/social_mixi.png") no-repeat;
  color: #d1ad59;
}

#memberInput .social_provider li.line a {
  background: url("../images/social_line.png") no-repeat;
  color: #00b300;
}

#memberInput .social_provider li.paypal a {
  background: url("../images/social_paypal.png") no-repeat;
  color: #293e7f;
}

#memberInput .social_provider ul li a span {
  padding: 14px 0 14px 25px;
  border: 1px solid #cdcdcd;
  border-left: 0px;
  margin: 0 0 0 53px;
  display: block;
  background: #fff;
  line-height: 1;
  font-size: 14px;
  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;
  -moz-border-radius-topright: 3px;
  -moz-border-radius-bottomright: 3px;
}

#memberInput .social_provider li.rakuten_regist a span {
  padding: 0;
  border: 0;
  margin: 0;
  background: none;
}

/* member_result.xhtml */
.member_result.rakuten_area {
  text-align: center;
  padding: 27px;
  margin-top: 32px;
}

.member_result.rakuten_area .rakuten_btn_point {
  display: inline-block;
  margin: 10px 0;
}

.member_result.rakuten_area .rakuten_detail_link {
  color: #333333;
  font-size: 14.4px;
}
/* member_taikai.xhtml */
.bl_messageBox {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.bl_messageBox .bl_small a {
  text-decoration: underline;
}
.bl_messageBox h2 {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 16px;
}
.bl_messageBox li {
  list-style: disc;
  margin-left: 20px;
}
.bl_taikaiButtonArea {
  margin-bottom: 80px;
}
.bl_taikaiButtonArea .bl_btn {
  pointer-events: none;
  opacity: 0.6;
  margin-top: 30px;
}
.bl_taikaiButtonArea :checked ~ .bl_btn {
  pointer-events: auto;
  opacity: 1;
}

.bl_taikaiButtonArea label {
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .bl_messageBox {
    gap: 32px;
  }
  .bl_messageBox h2 {
    margin-bottom: 8px;
    font-size: 16px;
  }
  .bl_taikaiButtonArea {
    font-size: 14px;
    margin-bottom: 40px;
    max-width: 310px;
    margin-left: auto;
    margin-right: auto;
  }
  .bl_taikaiButtonArea .bl_btn {
    margin-top: 24px;
  }
  .bl_cartbox_taikaiLast {
    margin-bottom: 94px;
  }
}
/* =================================================================
24.子会員リスト
使用ファイル：child_member_list.xhtml
=================================================================*/
#childMemberList h3 {
  display: block;
  font-size: 110%;
  margin: 30px 10px 10px;
  padding-bottom: 5px;
}

#childMemberList .table th {
  vertical-align: middle;
}

#childMemberList .table th.select {
  width: 70px;
}

#childMemberList .table th.select input[type="button"] {
  width: initial;
  padding: 6px 6px;
}

#childMemberList .table th.select input[type="button"] + input[type="button"] {
  margin-top: 5px;
}

#childMemberList .table td {
  vertical-align: middle;
}

#childMemberList .table td.select .id_and_check {
  display: inline-block;
  white-space: nowrap;
}

#childMemberList .table th.regist {
  width: 100px;
}

#childMemberList .pageguide {
  float: left;
  width: 570px;
  font-size: 85%;
  padding-top: 4px;
}

#childMemberList .rearrange {
  float: left;
  width: 200px;
  font-size: 85%;
  text-align: right;
}

#childMemberList .pagelink {
  clear: both;
  font-size: 85%;
  padding: 10px 0;
}

#childMemberList .nolink {
  color: #999;
}

#childMemberList .search .buttonarea,
#childMemberList .bulk_update .buttonarea {
  padding: 20px 0 40px;
}

#childMemberList .bulk_update {
  margin: 20px 0 40px;
}

#childMemberList .bulk_update .explanation {
  display: block;
  margin: 10px 0 20px 0;
  padding: 10px;
  background: #eee;
  color: #666;
  font-size: 90%;
}

#childMemberList .bulk_update .update_input_area {
  height: 35px;
  line-height: 35px;
}

#childMemberList .bulk_update .update_input_area .select {
  display: inline-block;
}

#childMemberList .bulk_update .update_input_area .button {
  display: inline-block;
  width: 160px;
  margin-left: 20px;
}

/* =================================================================
25.担当法人一覧
使用ファイル：client_corporation_list.xhtml
=================================================================*/
#clientCorpList .link_office {
  width: 100px;
}

/* =================================================================
26.担当事業所一覧
使用ファイル：client_office_list.xhtml
=================================================================*/
#clientOfficeList .pageback {
  max-width: 230px;
  font-size: 16px;
  margin: 50px auto 0;
}

/* =================================================================
27.ポイント履歴
使用ファイル：member_point_record.xhtml
=================================================================*/
#pointRecord .summary {
  margin: 10px;
  border: 1px solid #ccc;
  font-size: 90%;
  line-height: 150%;
}

#pointRecord .summary h3 {
  font-weight: normal;
  font-size: 90%;
  background-color: #f6f6f6;
  padding: 10px;
}

#pointRecord .summary .detail {
  padding: 10px;
  position: relative;
}

#pointRecord .summary .detail .limit_date {
  font-weight: bold;
}

#pointRecord .summary .total {
  margin-bottom: 10px;
}

#pointRecord .summary .total .point {
  color: #c00;
  font-weight: bold;
}

#pointRecord .summary .detail .link_point_right {
  position: absolute;
  top: 10px;
  right: 10px;
}

#pointRecord .summary .limit {
  padding: 5px 0;
  border-top: 1px dotted #ccc;
}

#pointRecord .record_list td {
  vertical-align: inherit;
}

#pointRecord .record_list td.remarks {
  line-height: 150%;
}

#pointRecord .record_list .right {
  text-align: right;
}

#pointRecord .record_list .plus {
  font-weight: bold;
}

#pointRecord .point_limit_date {
  font-size: 12px;
  text-align: left;
  line-height: 150%;
}

#pointRecord .limit_icon {
  background-color: #c00;
  color: #ffffff;
  display: inline-block;
  font-size: 10px;
  font-weight: normal;
  line-height: 1;
  padding: 3px 5px;
  vertical-align: text-bottom;
}

#pointRecord th {
  width: 150px;
}

#pointRecord .point_kbn {
  display: inline-block;
}

/* =================================================================
28.ポイント有効期限
使用ファイル：member_point_limit_manage.xhtml
=================================================================*/
#pointLimit .summary {
  margin: 10px;
  border: 1px solid #ccc;
  font-size: 90%;
  line-height: 150%;
}

#pointLimit .summary h3 {
  font-weight: normal;
  font-size: 90%;
  background-color: #f6f6f6;
  padding: 10px;
}

#pointLimit .summary .detail {
  padding: 10px;
  position: relative;
}

#pointLimit .summary .detail .limit_date {
  font-weight: bold;
}

#pointLimit .summary .total {
  margin-bottom: 10px;
}

#pointLimit .summary .total .point {
  color: #c00;
  font-weight: bold;
}

#pointLimit .summary .detail .link_point_right {
  position: absolute;
  top: 10px;
  right: 10px;
}

#pointLimit .limit_list td {
  vertical-align: inherit;
}

#pointLimit .limit_list .limit_date {
  display: inline-block;
}

#pointLimit .limit_list .right {
  text-align: right;
}

#pointLimit .limit_icon {
  background-color: #c00;
  color: #ffffff;
  display: inline-block;
  font-size: 10px;
  font-weight: normal;
  line-height: 1;
  padding: 3px 5px;
  vertical-align: text-bottom;
}

/* =================================================================
29.STAFF START
=================================================================*/
/* 共通
-------------------------------------------------------------*/
#main .staff_start_error {
  margin: 0 0 20px;
  font-weight: bold;
  color: #c00;
}

/* エラーメッセージ */
#main .clear_box:after {
  content: "";
  display: block;
  clear: both;
}

/* コーディネート用汎用ボックス */
#main .staff_coordinate_box {
  float: left;
  margin: 0 20px 20px 0;
  width: 177px;
}

#main .staff_coordinate_box a {
  display: block;
  text-decoration: underline;
  padding: 0;
  border: none;
  color: #60ac31;
}

#main .staff_coordinate_box a:hover {
  text-decoration: none;
}

#main .staff_coordinate_box img {
  display: block;
  width: 177px;
}

#main .staff_coordinate_box p {
  margin: 0;
  font-size: 14px;
}

#main .staff_coordinate_box:nth-of-type(4n) {
  margin-right: 0;
}

#main .staff_coordinate_box .info_box {
  margin: 10px 0 0 0;
  font-size: 0;
}

#main .staff_coordinate_box .info_box .staff_icon {
  display: inline-block;
  margin: 0 10px 0 0;
  width: 50px;
}

#main .staff_coordinate_box .info_box .staff_icon img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}

#main .staff_coordinate_box .info_box .staff_info {
  margin: 0;
  width: 117px;
}

#main .staff_coordinate_box .info_box .staff_info span {
  margin: 0;
  font-size: 14px;
}

/* スタッフ一覧・コーディネート一覧 絞り込みアコーディオン */
.accordionList h2 {
  position: relative;
  font-size: 15px;
  cursor: pointer;
}

.accordionList h2::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8px;
  padding: 0;
  width: 8px;
  height: 8px;
  margin-top: -3px;
  border-style: solid;
  border-width: 1px 1px 0px 0px;
  border-color: #000000;
  -webkit-transform: translateY(-50%) rotate(315deg);
  transform: translateY(0%) rotate(315deg);
}

.accordionList h2.close::after {
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}

.accordionList a {
  display: inline-block;
  padding: 5px;
  font-size: 14px;
}

.accordionList ul {
  margin: 0;
}

.accordionList + .accordionList {
  margin: 30px 0 0 0;
}

.accordionList .selected {
  display: block;
  padding: 5px;
  background: #f5f5f5;
  font-weight: bold;
  font-size: 14px;
}

/* タブ切り替え */
#main .staffstart_tab .tab_nav {
  border-bottom: 1px solid #ccc;
  font-size: 0;
}

#main .staffstart_tab .tab_nav .tabBtn {
  display: inline-block;
  margin: 0px 20px 0px 0px;
  padding: 6px 0;
  width: 188px;
  height: 35px;
  border-style: solid;
  border-width: 1px 1px 0px 1px;
  text-align: center;
  border-color: #ccc;
  background-color: #ddd;
  vertical-align: middle;
  cursor: pointer;
  font-size: 14px;
}

#main .staffstart_tab .tab_nav .tabBtn.active {
  position: relative;
  background-color: #fff;
  cursor: initial;
}

#main .staffstart_tab .tab_nav .tabBtn.active:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  border-bottom: 3px solid #fff;
  bottom: -2px;
}

#main .staffstart_tab .tab_list {
  padding: 20px 0;
}

#main .staffstart_tab .tabContent {
  display: none;
}

#main .staffstart_tab .tabContent:after {
  content: "";
  display: block;
  clear: both;
}

#main .staffstart_tab .tabContent.active {
  display: block;
}

#main .staffstart_tab .tabContent ul {
  margin: 20px 0 0 0;
  background: none;
}

/* コーディネート一覧用タブデザイン */
#main .staffstart_tab .tab_nav .tab_title {
  display: inline-block;
  margin: 0px 20px 0px 0px;
  padding: 6px 0;
  width: 188px;
  height: 35px;
  border-style: solid;
  border-width: 1px 1px 0px 1px;
  text-align: center;
  border-color: #ccc;
  background-color: #ddd;
  vertical-align: middle;
  cursor: pointer;
  font-size: 14px;
}

#main .staffstart_tab .tab_nav .tab_title.active {
  position: relative;
  background-color: #fff;
  cursor: default;
}

#main .staffstart_tab .tab_nav .tab_title.active:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  border-bottom: 3px solid #fff;
  bottom: -2px;
}

#main .staffstart_tab .tab_nav .tab_title a {
  display: block;
  color: #000;
  text-decoration: none;
  height: 34px;
}

/* スタッフプロフィール用 */
#main .staff_profile::after {
  content: "";
  display: block;
  clear: both;
}

#main .staff_icon {
  float: left;
}

#main .staff_icon img {
  display: block;
  border-radius: 50%;
}

#main .staff_info {
  float: left;
  margin: 0 0 0 20px;
}

#main .staff_info p {
  margin: 0;
  font-size: 13px;
}

#main .staff_info .name {
  margin: 0 0 10px 0;
  font-size: 16px;
}

#main .staff_info .kana {
  display: inline-block;
  margin: 0 0 0 20px;
  font-size: 12px;
}

/* STAFF START - トップ
使用ファイル：top.xhtml
-------------------------------------------------------------*/
/* コーディネートランキング */
/* #main .staff_start_ranking {
    margin: 0 0 20px 0;
}

#main .staff_start_ranking::after {
    content: "";
    display: block;
    clear: both;
}

#main .staff_start_ranking h2>a {
    float: right;
    margin: 4px 3px 0px 0px;
    font-size: 16px;
}


#main .staff_start_ranking .staff_coordinate_box {
    margin: 0 20px 30px 0;
}

#main .staff_start_ranking .staff_coordinate_box:nth-of-type(4n) {
    margin: 0 0 30px 0;
}

#main .staff_start_ranking .staff_list_box {
    width: 138px;
}

#main .staff_start_ranking .staff_list_box img {
    width: 138px;
    height: 138px;
}

#main .staff_start_ranking .staff_list_box .info_box {
    margin: 10px 0 0 0;
    text-align: center;
}

#main #staffRanking .staff_list_box:last-of-type {
    margin-right: 0;
} */

/* STAFF START - 商品詳細
使用ファイル：item_detail.xhtml
-------------------------------------------------------------*/
/* この商品を紹介したブログ */
.staff_coordinate_box.article ul li .info_box .staff_icon,
.staff_coordinate_box.article ul li .info_box .staff_info {
  float: none;
}

/*
STAFF START - スタッフ一覧
使用ファイル：staff_list.xhtml
-------------------------------------------------------------*/
#main .staff_list_box {
  margin: 0;
  background: none;
}

#main .staff_list_box {
  float: left;
  margin: 0 20px 20px 0;
  width: 177px;
}

#main .staff_list_box a {
  margin: 0;
  padding: 0;
  border: none;
  color: #60ac31;
  font-size: 14px;
}

#main .staff_list_box img {
  display: block;
  width: 177px;
  height: 177px;
  border-radius: 50%;
}

#main .staff_list_box p {
  margin: 0;
  text-align: center;
  font-size: 14px;
}

#main .staff_list_box .staff_info {
  float: none;
  margin: 10px 0 0 0;
}

#main #list .staff_list_box:nth-of-type(4n),
#main .coordinate_list .staff_list_box:nth-of-type(4n) {
  margin-right: 0;
}

/* レビュー */
.bl_reviewMessage {
  margin-top: 55px;
}
.bl_revieInput {
  margin-top: 55px;
}
input::file-selector-button {
  font-weight: bold;
  color: dodgerblue;
  padding: 0.5em;
  font-size: 14px;
  width: 120px;
  height: 40px;
  cursor: pointer;
  border: 1px solid #000;
  background-color: transparent;
  color: #000;
  font-weight: normal;
}
.bl_reviewStar svg {
  stroke: #d5d5d5;
  cursor: pointer;
}
.bl_reviewStar svg.is-active {
  stroke: #ffc300;
  fill: #ffc300;
}
.bl_reviewStarInput {
  display: none;
}
.bl_reviewTxt {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 56px;
}
@media screen and (max-width: 767px) {
  .bl_fz18 {
    font-size: 16px;
  }
  .bl_reviewStar svg {
    width: 20px;
    height: auto;
  }
}
/*
STAFF START - スタッフ詳細
使用ファイル：staff_detail.xhtml
-------------------------------------------------------------*/
#staff_detail .staff_profile .staff_icon {
  width: 130px;
}

#staff_detail .staff_profile .staff_icon img {
  width: 130px;
  height: 130px;
}

#staff_detail .staff_profile .staff_info {
  padding: 10px 0;
  width: 290px;
}

#staff_detail .staff_profile .message {
  float: left;
  margin: 0 0 0 25px;
  padding: 0 0 0 25px;
  width: 510px;
  border-left: 1px solid #ccc;
  font-size: 14px;
}

#staff_detail .staffstart_tab {
  margin: 40px 0 0 0;
}

#staff_detail .tabContent .tabContent::after {
  content: "";
  display: block;
  clear: both;
}

#staff_detail .tabContent .tab_loop {
  float: left;
  margin: 0 15px 15px 0;
  width: 233px;
}

#staff_detail .tabContent .tab_loop:nth-of-type(4n) {
  margin-right: 0;
}

#staff_detail .tabContent img {
  display: block;
  width: 233px;
}

#staff_detail .tabContent p {
  margin: 0;
  font-size: 14px;
}

#staff_detail .tabContent .date {
  margin: 10px 0 0 0;
}

/* 人気のタグ */
#main #list .hashtag_area {
  margin: 0 0 20px;
}

#main #list .hashtag_area h2 {
  border: none;
  font-size: 20px;
  margin: 0 0 16px;
}

#main #list .hashtag_area h2::after {
  content: none;
}

#main #list .hashtag_area ul {
  background: none;
}

#main #list .hashtag_area ul li {
  margin: 0 0 8px;
}

#main #list .hashtag_area ul li a {
  margin-right: 8px;
  padding: 7px 10px 7px 10px;
  text-decoration: none;
  font-size: 14px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}

#main #list .hashtag_area ul li a:hover {
  opacity: 0.6;
  cursor: pointer;
  transition: all 0.3s;
}

#main #list .hashtag_area ul li .selected {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 7px 10px 7px 10px;
  border: 1px solid #ccc;
  background: #ddd;
  /*color: #FFF;*/
  font-size: 14px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}

/*
STAFF START - コーディネート一覧
使用ファイル：coordinate_list.xhtml
-------------------------------------------------------------*/
#main #list .staffstart_tab .tab_list {
  padding: 0 0 80px;
}

#main #list .staff_start_ranking img {
  width: 177px;
  height: 177px;
}

#main #list .staff_start_ranking .staff_list_box {
  width: 177px;
}

#main #list .staffstart_pager {
  margin: 20px 0 0 0;
}

/*
STAFF START - コーディネート詳細
使用ファイル：coordinate_detail.xhtml
-------------------------------------------------------------*/
#itemDetail .coordinateDetail::after {
  content: "";
  display: block;
  clear: both;
}

/*　商品画像スライド */
#itemDetail .coordinateDetail .item_image_area {
  width: 450px;
}

#itemDetail #main_img {
  visibility: hidden;
}

#itemDetail .coordinateDetail .slide {
  display: none;
  width: 450px;
}

#itemDetail .coordinateDetail .slide img {
  width: 450px;
}

#itemDetail .coordinateDetail .thumbnail {
  margin: 10px 0 0 0;
}

#itemDetail .coordinateDetail .thumbnail::after {
  content: "";
  display: block;
  clear: both;
}

#itemDetail .coordinateDetail .thumbnail li {
  float: left;
  margin: 0 10px 10px 0;
  width: 105px;
}

#itemDetail .coordinateDetail .thumbnail li:nth-child(4n) {
  margin: 0 0 10px 0;
}

#itemDetail .coordinateDetail .thumbnail li a {
  display: block;
}

#itemDetail .coordinateDetail .thumbnail li.active a {
  border: 1px solid #cc3333;
  filter: alpha(opacity=100) !important;
  -moz-opacity: 1 !important;
  -khtml-opacity: 1 !important;
  opacity: 1 !important;
}

#itemDetail .coordinateDetail .thumbnail li img {
  display: block;
  box-sizing: border-box;
  width: 100%;
}

/*　スタッフプロフィール・商品説明・着用商品 */
#itemDetail .coordinateDetail .text {
  margin: 0 0 0 30px;
  width: 500px;
}

#itemDetail .coordinateDetail .staff_profile {
  padding: 0 0 20px 0;
  border-bottom: 1px solid #ccc;
}

#itemDetail .coordinateDetail .staff_icon {
  width: 100px;
}

#itemDetail .coordinateDetail .staff_icon img {
  width: 100px;
  height: 100px;
}

#itemDetail .coordinateDetail .staff_info p {
  font-size: 13px;
}

#itemDetail .coordinateDetail .staff_info .name {
  font-size: 16px;
}

/* コーディネート説明 */
#itemDetail .coordinateDetail .comment {
  margin: 20px 0 0 0;
  padding: 0 0 20px 0;
  border-bottom: 1px solid #ccc;
}

#itemDetail .coordinateDetail .comment p {
  margin: 0;
  font-size: 14px;
}

/* 着用商品 */
#itemDetail .coordinateDetail .coordinate_box p {
  margin: 0;
  font-size: 13px;
}

#itemDetail .coordinateDetail .coordinate_box {
  float: left;
  margin: 0 15px 15px 0;
  width: 156px;
}

#itemDetail .coordinateDetail .coordinate_box:nth-of-type(3n) {
  margin: 0 0 15px 0;
}

#itemDetail .coordinateDetail .coordinate_box a {
  cursor: pointer;
}

#itemDetail .coordinateDetail .coordinate_box img {
  display: block;
  width: 156px;
}

#itemDetail .coordinateDetail .coordinate_box .item_info {
  margin: 10px 0 0 0;
}

/* スタッフのその他のコーディネート */
.other_coordinate {
  margin: 40px 0 0;
}

.other_coordinate ul:after {
  content: "";
  display: block;
  clear: both;
}

.other_coordinate ul li {
  float: left;
  margin: 0 15px 15px 0;
  width: 184px;
}

.other_coordinate ul li:nth-child(5n) {
  margin: 0 0 15px 0;
}

.other_coordinate ul li img {
  display: block;
  width: 184px;
}

/* 人気のタグ */
#itemDetail .coordinateDetail .hashtag_area {
  margin: 20px 0 0;
}

#itemDetail .coordinateDetail .hashtag_area ul::after {
  content: "";
  display: block;
  clear: both;
}

#itemDetail .coordinateDetail .hashtag_area ul li {
  float: left;
  margin: 0 0 8px;
}

#itemDetail .coordinateDetail .hashtag_area ul li a {
  display: block;
  margin-right: 8px;
  padding: 7px 10px 7px 10px;
  text-decoration: none;
  font-size: 14px;
  border: 1px solid #ccc;
  color: #000;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}

#itemDetail .coordinateDetail .hashtag_area ul li a:hover {
  opacity: 0.6;
  cursor: pointer;
  transition: all 0.3s;
}

/*
STAFF START まとめ記事詳細
使用ファイル：article_detail.xhtml
-------------------------------------------------------------*/
#main .articleDetail h2 {
  margin: 0 0 15px 0;
  padding: 0;
  font-size: 20px;
  font-weight: bold;
  border: none;
}

#main .articleDetail h2::after {
  content: none;
}

#main .articleDetail .date {
  display: block;
  margin: 0;
  font-size: 14px;
  font-weight: normal;
}

#main .articleDetail .staff_profile {
  padding: 25px;
  background-color: #f5f5f5;
}

#main .articleDetail .staff_icon {
  width: 80px;
}

#main .articleDetail .staff_icon img {
  width: 80px;
  height: 80px;
}

#main .articleDetail .staff_info {
  padding: 10px 0;
}

#main .articleDetail .staff_info p {
  font-size: 13px;
}

#main .articleDetail .content {
  margin: 20px 0 0 0;
}

#main .articleDetail .content p {
  font-size: 14px;
}

#main .articleDetail .content .title_image {
  margin: 10px 0 0 0;
}

#main .articleDetail .content .title_image img {
  width: 120px;
}

#main .articleDetail .content_block img {
  max-width: 470px;
}

#main .articleDetail .content_block p {
  margin: 0;
}

/* contentItemList - パーツ管理（コンテンツ区分=商品一覧）
-------------------------------------------------------------*/
.contentItemList {
  margin-bottom: 20px;
}

.contentItemList ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px 2%;
}

#list .contentItemList ul {
  background: none;
}

#list .contentItemList li a:not(.button) {
  display: initial;
  margin-right: 0;
  padding: 0;
  border: none;
  color: #60ac31;
  font-size: 95%;
  font-weight: normal;
  line-height: 140%;
}

#list .contentItemList li a.button {
  border: unset;
  padding: unset;
  margin: auto;
  font-size: unset;
}

#list .contentItemList li a.normal {
  border: 1px solid #adadad;
}

#list .contentItemList li a.positive {
  color: #ffffff;
}

#list .contentItemList li a.small {
  padding: 6px 10px;
  font-size: 12px;
}

#itemDetail .contentItemList .button.small {
  max-width: 100%;
}

.contentItemList .box,
#error .contentItemList .box,
#social_plus_error .contentItemList .box {
  border: #d4d4d4 1px solid;
  padding: 1%;
}

#cartLogin .contentItemList .box,
#addressList .contentItemList .box {
  float: none;
}

#addressList .contentItemList .box {
  line-height: 140%;
}

.contentItemList .col-1,
#cartLogin .contentItemList .box.col-1,
#error .contentItemList .box.col-1,
#social_plus_error .contentItemList .box.col-1,
#addressList .contentItemList .box.col-1,
#loginNew .contentItemList .box.col-1,
#mainCampaign .contentItemList .box.col-1,
#cartCampaign .contentItemList .box.col-1,
#resultCampaign .contentItemList .box.col-1,
#memberInput .social_provider .contentItemList .box.col-1 {
  width: 100%;
}

.contentItemList .col-2,
#cartLogin .contentItemList .box.col-2,
#error .contentItemList .box.col-2,
#social_plus_error .contentItemList .box.col-2,
#addressList .contentItemList .box.col-2,
#loginNew .contentItemList .box.col-2,
#mainCampaign .contentItemList .box.col-2,
#cartCampaign .contentItemList .box.col-2,
#resultCampaign .contentItemList .box.col-2,
#memberInput .social_provider .contentItemList .box.col-2 {
  width: calc((100% - 1 * 2%) / 2);
}

.contentItemList .col-3,
#cartLogin .contentItemList .box.col-3,
#error .contentItemList .box.col-3,
#social_plus_error .contentItemList .box.col-3,
#addressList .contentItemList .box.col-3,
#loginNew .contentItemList .box.col-3,
#mainCampaign .contentItemList .box.col-3,
#cartCampaign .contentItemList .box.col-3,
#resultCampaign .contentItemList .box.col-3,
#memberInput .social_provider .contentItemList .box.col-3 {
  width: calc((100% - 2 * 2%) / 3);
}

.contentItemList .col-4,
#cartLogin .contentItemList .box.col-4,
#error .contentItemList .box.col-4,
#social_plus_error .contentItemList .box.col-4,
#addressList .contentItemList .box.col-4,
#loginNew .contentItemList .box.col-4,
#mainCampaign .contentItemList .box.col-4,
#cartCampaign .contentItemList .box.col-4,
#resultCampaign .contentItemList .box.col-4,
#memberInput .social_provider .contentItemList .box.col-4 {
  width: calc((100% - 3 * 2%) / 4);
}

.contentItemList .col-5,
#cartLogin .contentItemList .box.col-5,
#error .contentItemList .box.col-5,
#social_plus_error .contentItemList .box.col-5,
#addressList .contentItemList .box.col-5,
#loginNew .contentItemList .box.col-5,
#mainCampaign .contentItemList .box.col-5,
#cartCampaign .contentItemList .box.col-5,
#resultCampaign .contentItemList .box.col-5,
#memberInput .social_provider .contentItemList .box.col-5 {
  width: calc((100% - 4 * 2%) / 5);
}

.contentItemList .col-6,
#cartLogin .contentItemList .box.col-6,
#error .contentItemList .box.col-6,
#social_plus_error .contentItemList .box.col-6,
#addressList .contentItemList .box.col-6,
#loginNew .contentItemList .box.col-6,
#mainCampaign .contentItemList .box.col-6,
#cartCampaign .contentItemList .box.col-6,
#resultCampaign .contentItemList .box.col-6,
#memberInput .social_provider .contentItemList .box.col-6 {
  width: calc((100% - 5 * 2%) / 6);
}

.contentItemList div {
  margin: 5px 0;
}

.contentItemList h3 {
  font-size: 95%;
  font-weight: normal;
  line-height: 140%;
}

#cartIndex .contentItemList h3,
#cartLogin .contentItemList h3,
#loginNew .contentItemList h3,
#resultCampaign .contentItemList h3 {
  padding: 0;
  background: none;
  border: none;
}

#history .contentItemList h3,
#member.mypage .contentItemList h3 a {
  font-size: 95%;
  margin: auto;
}

#cartRecommend .contentItemList h3 a,
#member.mypage .contentItemList h3 a {
  float: none;
}

.contentItemList p,
#main .contentItemList p {
  font-size: 95%;
  font-weight: normal;
  line-height: 140%;
  margin: 0px;
}

#topicsList .contentItemList p {
  width: 100%;
}

.contentItemList .text {
  font-size: 90%;
}

#cartRecommend .contentItemList .text,
#itemListDetail .contentItemList .text {
  margin: auto;
}

#itemListImage .contentItemList .text,
#itemDetail .contentItemList .text,
#wishList .contentItemList .text {
  float: none;
  width: 100%;
  display: block;
  margin: auto;
}

.contentItemList .price {
  font-size: 90%;
  color: #c00;
  display: block;
}

.contentItemList .item_appeal {
  color: #f60;
  font-size: 75%;
}

.contentItemList .buttonArea {
  display: block;
  margin: 5px 10px;
}

.contentItemList .disabledButtonArea {
  display: block;
  margin: 5px 10px;
}

.contentItemList .property,
#main .contentItemList .property {
  margin: 0;
  color: #aaa;
  font-size: 70%;
  margin-bottom: 10px;
}

#itemListDetail .contentItemList .property,
#itemListSimple .contentItemList .property {
  float: none;
  font-size: 70%;
}

.contentItemList .free_item_checkbox :not(.title) {
  display: inline-block;
  border: 1px solid #adadad;
  padding: 0 4px;
  font-size: 0.9em;
}

#cartIndex .contentItemList .img_box,
#cartRecommend .contentItemList .img_box,
#itemListDetail .contentItemList.img_box,
#itemListImage .contentItemList .img_box,
#topicsList .contentItemList .img_box,
#history .contentItemList .img_box,
#wishList .contentItemList .img_box,
#loginNew .contentItemList .img_box,
#itemCompare .contentItemList .img_box {
  width: 100%;
  height: auto;
  float: none;
  display: block;
  margin: auto;
}

.contentItemList .img_box img,
#cartIndex .contentItemList .img_box img,
#cartRecommend .contentItemList .img_box img,
#itemListDetail .contentItemList .img_box img,
#itemListImage .contentItemList .img_box img,
#topicsList .contentItemList .img_box img,
#history .contentItemList .img_box img,
#wishList .contentItemList .img_box img,
#loginNew .contentItemList .img_box img,
#itemCompare .contentItemList .img_box img,
#mainCampaign .contentItemList .img_box img,
#cartCampaign .contentItemList .img_box img,
#cartFlow .confirmCampaign .contentItemList .img_box img,
#resultCampaign .contentItemList .img_box img {
  width: auto;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  margin: 0px auto 10px;
  position: initial;
}

/* contentItemList - パーツ管理（コンテンツ区分=商品一覧） 商品カートに入った報告ポップアップ
-------------------------------------------------------------*/
.contentItemList .cartSubmitButton {
  position: relative;
}

.contentItemList .cartSubmitButton .cartMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 1000;
  display: none;
}

.contentItemList .cartSubmitButton .cartMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

.contentItemList .cartSubmitButton .cartMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

.contentItemList .cartSubmitButton .cartMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

.contentItemList .cartSubmitButton .cartMessage .link {
  background-color: #fff;
  text-align: center;
}

.contentItemList .cartSubmitButton .cartMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

/* contentItemList - パーツ管理（コンテンツ区分=商品一覧） お気に入りリストに入った報告ポップアップ
-------------------------------------------------------------*/
.contentItemList .wishlistSubmitButton {
  position: relative;
}

.contentItemList .wishlistSubmitButton .wishlistMessage {
  position: absolute;
  top: -85px;
  left: 50%;
  margin-left: -122px;
  padding: 10px;
  background-color: #fff;
  border: #ccc 2px solid;
  width: 270px;
  z-index: 10;
  display: none;
}

.contentItemList .wishlistSubmitButton .wishlistMessage:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 5px;
}

.contentItemList .wishlistSubmitButton .wishlistMessage .title {
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  color: #000;
}

.contentItemList .wishlistSubmitButton .wishlistMessage .mainclose {
  background-color: #fff;
  cursor: pointer;
  text-align: center;
  margin-bottom: 0;
}

.contentItemList .wishlistSubmitButton .wishlistMessage .link {
  background-color: #fff;
  text-align: center;
}

.contentItemList .wishlistSubmitButton .wishlistMessage .close {
  position: absolute;
  top: 3px;
  right: 3px;
  cursor: pointer;
}

/* 文字サイズ */
.ss-font-size-x-small {
  font-size: x-small;
}

.ss-font-size-small {
  font-size: small;
}

.ss-font-size-large {
  font-size: large;
}

.ss-font-size-x-large {
  font-size: x-large;
}

/* コーディネート - スタッフ情報　共通設定 */
.ss-content-area.content-area-coordinate {
  vertical-align: middle;
  font-size: 0;
}

.ss-content-coordinate-img {
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}

.ss-content-coordinate-info {
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}

.ss-content-user-info-list::after {
  content: "";
  display: block;
  clear: both;
}

.ss-content-user-info-list li {
  float: left;
}

.ss-article-box .ss-content-user-info-list .ss-content-user-meta-list li {
  float: none;
  font-size: 14px;
}

.ss-article-box .ss-content-user-info-list .ss-content-user-image {
  margin: 0 20px 0 0;
  width: 80px;
}

.ss-article-box .ss-content-user-info-list .ss-content-user-image img {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
}

/* ブロック共通設定 */
.ss-article-box {
  margin: 40px 0 0 0;
}

/* ブロック2 */
.ss-boxtype-list.boxtype-2-list .ss-content-area.content-area-description {
  margin: 10px 0 0 0;
}

/* ブロック3 */
.ss-boxtype-list.boxtype-3-list::after {
  content: "";
  display: block;
  clear: both;
}

.ss-boxtype-list.boxtype-3-list li {
  float: left;
  margin: 0 20px 0 0;
  width: 48%;
}

.ss-boxtype-list.boxtype-3-list li:nth-child(2n) {
  margin: 0;
}

/* ブロック4 */
.ss-boxtype-list.boxtype-4-list::after {
  content: "";
  display: block;
  clear: both;
}

.ss-boxtype-list.boxtype-4-list li {
  float: left;
  margin: 0 20px 20px 0;
  width: 48%;
}

.ss-boxtype-list.boxtype-4-list li:nth-child(2n) {
  margin: 0 0 20px 0;
}

/* ブロック3,4のコーディネート */
.ss-boxtype-list.boxtype-3-list .ss-content-coordinate-img,
.ss-boxtype-list.boxtype-4-list .ss-content-coordinate-img {
  width: 100%;
}

.ss-boxtype-list.boxtype-3-list .ss-content-coordinate-info,
.ss-boxtype-list.boxtype-4-list .ss-content-coordinate-info {
  margin: 20px 0 0 0;
  width: 100%;
}

.ss-boxtype-list.boxtype-4-list
  .ss-content-user-info-list
  .ss-content-user-meta-list
  li {
  margin: 0;
  width: 100%;
}

/*
PCIDSS v4対応
-------------------------------------------------------------*/
/* ボタン */
input.pcidss {
  max-width: 230px;
  min-width: 200px;
  font-size: 16px;
}

#cartSidebar .cartButtonArea input.pcidss {
  padding: 0;
  height: 36px;
  font-size: 15px;
  white-space: break-spaces;
  line-height: 1.4;
}

#main.pcidssv4 {
  float: none;
  width: 980px;
  padding-bottom: 20px;
}

#main.pcidssv4 .error {
  display: block;
  color: #c00 !important;
  font-weight: bold;
  font-size: 80%;
}

#main.pcidssv4 .card-supplement {
  margin: 5px 0;
  font-size: 12px;
  color: #368bc6;
  font-weight: bold;
}

#main.pcidssv4 table {
  margin: 10px 0 0;
  width: 980px;
}

#main.pcidssv4 th.title {
  width: 180px;
}

#main.pcidssv4 .newCreditCard {
  width: 600px;
}

#main.pcidssv4 .checkarea label {
  margin: 0 0 0 2px;
  font-weight: bold;
}

/*
クロスポイント連携
-------------------------------------------------------------*/
#member.mypage .crosspoint_area {
  margin: 20px 0;
  padding: 15px;
  background: #f6f6f6;
}

#member.mypage .block-mypage-section-title {
  margin: 0;
}

#member.mypage .block-mypage-memberscard-id-barcode {
  margin: 10px 0;
  padding: 14px 0;
  text-align: center;
  background: #fff;
}

#member.mypage .block-mypage-memberscard-id-barcode img {
  display: block;
  margin: 0 auto;
  max-width: 350px;
}

#member.mypage .block-mypage-memberscard-id-number {
  font-size: 120%;
  font-weight: bold;
  text-align: center;
}

#member.mypage .block-mypage-memberscard-id-number p {
  margin: 0;
}

#member.mypage .block-mypage-memberscard-id-text {
  margin: 15px 0 0;
  font-size: 13px;
}

/*
楽天ポイント連携
-------------------------------------------------------------*/
.rakuten_wrapper .rakuten_area {
  padding: 16px 10px;
  background: #f6f6f6;
  margin-bottom: 16px;
}

.rakuten_wrapper .rakuten_detail_link {
  text-align: center;
  font-size: 13px;
}

.rakuten_wrapper .rakuten_detail_link a {
  color: #333333;
}

.rakuten_wrapper .rakuten_area_linked {
  border: 1px solid #cccccc;
  margin-bottom: 16px;
  padding: 10px;
}

.rakuten_wrapper .rakuten_area_linked .rakuten_area_title {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}

.rakuten_wrapper .rakuten_area_linked .rakuten_area_title p {
  margin: 0 0 0 8px;
  font-size: 15px;
  font-weight: bold;
}

.rakuten_wrapper .rakuten_area_linked .rakuten_point {
  border-bottom: 1px dotted #cccccc;
  padding-bottom: 6px;
  font-weight: bold;
}

.rakuten_wrapper .rakuten_area_linked p {
  margin: 5px 0 0;
  font-size: 90%;
  line-height: 150%;
}

.rakuten_wrapper p.rakuten_term_point {
  margin-top: 10px;
}

.rakuten_wrapper .rakuten_logout input {
  cursor: pointer;
  border: none;
  background: none;
  font-size: 14.4px;
  text-decoration: underline;
  color: #60ac31;
}

.rakuten_wrapper .rakuten_logout input:hover {
  text-decoration: none;
}

.rakuten_wrapper .rakuten_point_link {
  font-size: 14.4px;
}

.rakuten_wrapper .rakuten_point_link a {
  color: #333333;
}

/* #sidebar .rakuten_wrapper .rakuten_area_linked {
    margin: 60px 0 10px;
} */
