ul.check_point {
  list-style: none;
  text-align: left;
}
ul.check_point img {
  width: 30px;
  margin-right: 30px;
}
ul.check_point li {
  list-style: none;
  align-items: center;
}

h2.h2S{
  font-size: 1.5em;
  text-align: center;
  padding:20px 0px 10px 0px;
}
.txt_bold {
  font-weight: bold;
}

/* マーカー風アンダーライン */
.marker {
  background: linear-gradient(transparent 70%, #D9B44A 70%);
  display: inline-block;
}


/* アンカーリンクの位置を調整するためのCSS */
.anchor {
  display: block;
  position: relative;
  top: -85px; /* 固定ヘッダーの高さ分を調整 */
  visibility: hidden;
}

/* 成分表示の書式 */
.nutrition_facts {
  width: 280px;
  border: 1.2px solid #595645;
  padding: 10px 10px 10px 10px;
  line-height: 1.2;
  color: #595645;
  text-align: left;
}

/** ボタン *****************************************/

.btn_box {
    margin: 10px auto;
    text-align: center;
}

.btn_box:hover {
  opacity: 0.65;
  transition: 0.15s;
}


/** 一覧ボタン *****************************************/
.btn a {
    display: inline-block;
    font-size: 1.1em;
    line-height: 1.8;
    letter-spacing: 0.1em;
    background-color: #fff;
    border: 1px solid #ccb475;
    padding: 10px 0;
    width: 250px;
    text-align: center;
    color: #595645;
    position: relative;
}
div.btn ::after {
    content: "";
    width: 10px;
    height: 10px;
    background: url(https://www.e-yuzuya.com/images/common/right.png) center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    right: 10px;
}


/** 購入ボタン *****************************************/
.btn1 a {
    display: inline-block;
    font-size: 1.1em;
    line-height: 1.8;
    letter-spacing: 0.1em;
    background-color: #ccb475;
    border: 1px solid #ccb475;
    padding: 10px 0;
    width: 250px;
    text-align: center;
    color: #fff;
    position: relative;
}
div.btn1 ::after {
    content: "";
    width: 10px;
    height: 10px;
    background: url(https://www.e-yuzuya.com/images/common/right1.png) center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    margin-top: -5px;
    right: 10px;
}


/** PC **********************************************/
@media (min-width: 751px) {
/** 見出し用 **/
  .title_txt{
    font-size: 34px;
    text-align: center;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
  }

/*  テキスト  */
  .sp_only {/*sp表示を無視する*/
    display: none !important;
  }
  .text_box {
    width: 90%;
    height: auto;
    margin: auto;
    text-align: center;
  }
  div.text_box h2 {
    font-size: 1.5em;
    color: #595645;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 10px 0px;
  }
  div.text_box p {
    font-size: 18px;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 10px 0px;
  }
/*  div.text_box img {
    text-align: left;
    margin:0px 0px 10px 0px;
  }*/

p.p1{
    font-size: 18px;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: center;
    margin:0px 0px 20px 0px;
  }
}
/* 商品選択 */
@media (min-width: 751px) {
  .select_box {
    width: 100%;
    height: auto;
    margin: 20px auto;
  }
  div.select_box ul {
    display        : flex;                 /* FlexBox定義         */
    justify-content: space-around;         /* 揃えの定義          */
    flex-wrap      : no-wrap;                 /* 折り返し定義        */
    padding-left:0;
  }
  div.select_box li {
    width: 30%;
    list-style: none;
  }

  .item_box {
    width: 100%;
    height: auto;
    margin: 50px auto;
    text-align: center;

    display        : flex;                 /* FlexBox定義         */
    justify-content: space-around;         /* 揃えの定義          */
    flex-direction: row;
    flex-wrap      : wrap;                 /* 折り返し定義        */
  }

  .item_pic {
    width: 50%;
    height: auto;
    margin: auto;
    padding: 0px 20px 0px 5px;
    text-align: center;
  }
  .item_txt {
    width: 50%;
    height: auto;
    margin: auto;
    padding: 0px 5px 0px 20px;
  }
  .item_txt2 {
    max-width: 50%;
    height: auto;
    margin: auto;
    padding: 0px 5px 0px 20px;
  }

  :where(.item_txt,.item_txt2) h2 {
    font-size: 24px;
    color: #595645;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 20px 0px;
  }
  .item_txt p {
    font-size: 18px;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 20px 0px;
  }
  .item_txt2 p {
    font-size: 18px;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 20px 0px;
  }

/**/
  .item_link {
    max-width: 100%;
    height: auto;
    margin: 20px auto;
    text-align: center;

    display        : flex;                 /* FlexBox定義         */
    flex-direction: column;
    align-items: center;
    flex-wrap      : no-wrap;                 /* 折り返し定義        */
  }

  .linkbox {
    width: 90%;
    height: auto;
    margin-bottom: 5px;
    text-align: center;

    display        : flex;             /* FlexBox定義         */
    flex-direction: row;
    justify-content: center;         /* 揃えの定義          */
    align-items: center;
    flex-wrap      : no-wrap;          /* 折り返し定義        */
  }

  .linkbox_txt {
    width: 150px;
    font-size: 1.2em;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: right;
    height: auto;
    margin: 0px 15px;
  }
  .linkbox_btn {
   width: fit-content;
   padding-right: 15px;
  }

/* 余白を追加する */
.mrgn_b {
  margin-bottom: 50px;
}
.mrgn_txt {
  margin-bottom: 20px;
}

.pddng_b {
  padding-bottom: 50px;
}
.mrgn_t {
  margin-top: 50px;
}
.pddng_t {
  padding-top: 50px;
}


/* 1200を縮小して表示 */
.container_LP {
  width: 65%;
  height: auto;
  margin: auto;
}

.wrap_area {
  max-width: 90%;
  height: auto;
  margin: auto;
  text-align: center;
}

}
/**  SP *********************************************/
/** 見出し用 **/
@media screen and (max-width: 750px) {
  .title_txt{
    font-size: 18px;
    text-align: center;
    line-height: 1.8;
    color: #595645;
    letter-spacing: 0.1em;
  }
/* テキスト  */
  .pc_only {/*pc表示を無視する*/
    display: none !important;
  }
  .text_box {
    width: 95%;
    height: auto;
    margin: auto;
    text-align: center;
  }
  div.text_box h2 {
    font-size: 1.2em;
    color: #595645;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 10px 0px;
  }
  div.text_box p {
    font-size: 0.9em;
    line-height: 1.7;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 10px 0px;
  }
p.p1{
    font-size: 0.9em;
    line-height: 1.7;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: center;
    margin:0px 0px 10px 0px;
  }
}

/* 商品選択 */
@media screen and (max-width: 750px) {
  .select_box {
    max-width: 100%;
    height: auto;
    margin: auto;
  }
  div.select_box ul {
    display        : flex;                 /* FlexBox定義         */
    justify-content: space-around;         /* 揃えの定義          */
    flex-wrap      : no-wrap;                 /* 折り返し定義        */
    padding-left:0;
  }
  div.select_box li {
    width: 30%;
    list-style: none;
  }

  .item_box {
    max-width: 100%;
    height: auto;
    margin: 20px auto;
    text-align: center;

    display        : flex;                 /* FlexBox定義         */
    flex-direction: column;
    align-items: center;
    flex-wrap      : wrap;                 /* 折り返し定義        */

  }
  .item_pic {
    max-width: 90%;
    height: auto;
    margin: auto;
    text-align: center;
  }
  .item_txt {
    width: 80%;
    height: auto;
    margin: auto;
  }

  :where(.item_txt,.item_txt2) h2 {
    font-size: 1.2em;
    color: #595645;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 20px 0px;
  }

  div.item_txt p {
    font-size: 0.9em;
    line-height: 1.7;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 20px 0px;
  }
  div.item_txt2 p {
    font-size: 0.9em;
    line-height: 1.7;
    color: #595645;
    letter-spacing: 0.1em;
    text-align: left;
    margin:0px 0px 0px 0px;
  }

/**/
  .item_link {
    width: 100%;
    height: auto;
    margin: 20px auto;
    text-align: center;

    display        : flex;                 /* FlexBox定義         */
    flex-direction: column;
    align-items: center;
    flex-wrap      : no-wrap;                 /* 折り返し定義        */
  }

  .linkbox {
    width: 90%;
    height: auto;
    margin-bottom: 5px;
    text-align: center;

    display        : flex;                 /* FlexBox定義         */
    flex-direction: row;
    justify-content: center;         /* 揃えの定義          */
    align-items: center;
    flex-wrap      : no-wrap;                 /* 折り返し定義        */
  }

  .linkbox_txt {
    width: 150px;
    font-size: 1.2em;
    line-height: 1.8;
    letter-spacing: 0.1em;
    text-align: right;
    height: auto;
    margin: 0px 15px;
  }
  .linkbox_btn {
   display        : flex;
   width: fit-content;
   min-width: 150px;
  }

/* 余白を追加する */
.mrgn_b {
  margin-bottom: 20px;
}
.pddng_b {
  padding-bottom: 20px;
}
.mrgn_t {
  margin-top: 20px;
}
.pddng_t {
  padding-top: 20px;
}

/* 1200を縮小なしで表示 */
.container_LP {
  width: 100%;
  height: auto;
  margin: auto;
}

.wrap_area {
  max-width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
}



}

/** 注目ワード **********************************/
.keyword {
  widht: 100%;
  margin: 10px auto;
}
.keyword_caption {
  font-size: 20px;
  line-height: 1.8;
}
.keyword_box {
  overflow-x: auto;
  white-space: no-wrap;
/*  scrollbar-color: #ff8b34 #eee; */
  padding: 0 0 18px 10px;
  scrollbar-width: thin;
}

div.keyword_box ul {
  display        : flex;                 /* FlexBox定義         */
  justify-content: flex-start;         /* 揃えの定義          */
  flex-wrap      : no-wrap;                 /* 折り返し定義        */
  padding-left:0;
}
div.keyword_box li {
  list-style: none;
}

.keyword-list {
    display: inline-block;
    margin-right: 2px;
    padding: 5px 10px;
    border: 1px solid #ccb475;
    border-radius: 20px;
}

/** 画像の上にテキスト・画像をのせるCSS **/
.txtONimgbox {
  max-width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  padding:0px 0px 15px 0px;
  position: relative;
  background-image: url(https://www.e-yuzuya.com/images/03yuzu/yuzu-tea/yuzutea_3size_back.jpg);
  background-repeat: no-repeat;
}

.txtONimgbox_sio {
  max-width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  padding:0px 0px 15px 0px;
  position: relative;
  background-image: url(https://www.e-yuzuya.com/images/04chomiryo/sio/sio_line-up_back.jpg);
  background-repeat: no-repeat;
}

.imgONbox {
  max-width: 750px;
  height: auto;
  margin: auto;
  display        : flex;                 /* FlexBox定義         */
  justify-content: space-around;         /* 揃えの定義          */
  flex-wrap      : no-wrap;                 /* 折り返し定義        */
  text-align: center;
  padding:0px 0px 15px 0px;
  position: relative;
}
.imgONimg_back {
  max-width: 750px;
  position: relative;
}

.imgONimg1 {
  max-width:25%
  position: absolute;
  top:90%;
  left: 30%;
}

.imgONimg2 {
  max-width:25%
  position: absolute;
  top:90%;
  left: 50%;
}

.imgONimg3 {
  max-width:25%
  position: absolute;
  top:90%;
  left: 70%;
}


/*スクロールバー*/
  .xscroll_box {
    display: flex;
    max-width: 750px;
    height: auto;
    overflow-x: scroll;
    overflow-y:hidden;
    margin: auto;
  }
  .xscroll_box div {
    min-width: 95%;
    height: auto;
    margin:5px;
  }

/***********************************************************************/
.caption_area {
  width: 100%;
  height: auto;
  margin: auto;
  background-color: #FCF9EF;
}

.container_QandA {
  display: block;
  width: 100%;
  height: auto;
  margin: auto;
  text-align: left;
}

.container_s {
  width: 80%;
  height: auto;
  margin: auto;
}
.container_b {
  width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  padding:5px 0px 15px 0px;
}
.container_b img {
  width: 100vw;
}

.container_c {
  width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
  padding:0px 0px 15px 0px;
}

/*paddingを効かせるためのコンテナ*/
.container_block {
  display: block;
  width: 100%;
  height: auto;
  margin: auto;
  text-align: center;
}

/*右寄せコンテナ*/
.container_rightblock {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: flex-end;
}


.container_row {
  margin: auto;
  align-items:center;
  width: 100%;
  height: auto;
  padding:0px 0px 10px 0px;
  /* ▼ FlexBoxの定義 */
  display        : flex;                 /* FlexBox定義         */
  justify-content: space-around;         /* 揃えの定義          */
  flex-direction: row;
  flex-wrap      : wrap;                 /* 折り返し定義        */
}

img.pc_view {
  display: block !important;
  width: 80%;
  height: auto;
  margin: auto;
 }
img.sp_view { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
img.pc_view { display: none !important; }
img.sp_view {
  display: block !important;
  width: 100%;
  height: auto;
  margin: auto;
 }
}


/* ランキング表示部 */
/* ==========================================
   スマホ用スタイル（0px 〜 750px）
   ========================================== */
.itemList-v2 {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0 -10px; /* 親要素の左右の隙間を調整 */
  justify-content: center;
}


/* 各ユニットの基本（2カラム） */
.itemList-v2__unit {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 0 10px;
  margin-bottom: 25px;
  box-sizing: border-box;
}

/* ギフトページに表示させるリスト（1～3カラム） */
.itemList-v2--gift__unit {
  flex: 1 1 33.333%;
  max-width: 50%;
  padding: 0 8px;
  margin-bottom: 25px;
  box-sizing: border-box;
}
/* 4位以降を完全に非表示にする */
.itemList-v2 .itemList-v2--gift__unit:nth-child(n + 4) {
  display: none !important;
}

/* バッジの基準点 */
.itemList-v2__img-wrap {
  position: relative; /* ここを基準にする */
  flex-shrink: 0;     /* PCで画像が潰れないように */
}

/* リンクエリア */
.itemList-v2__link {
  display: block;
  text-decoration: none;
  color: #333;
  transition: opacity 0.3s ease; /* ふわっと変わるアニメーション */
}

/* マウスオーバー時に不透明度を変更 */
.itemList-v2__link:hover {
  opacity: 0.7;
}

/* ランキングリボン（clip-pathを使用） */
.itemList-v2__badge:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0px;
  width: 32px;
  height: 42px;
  background: #351B0A;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);
  z-index: 1;
}

/* リボン上の数字 */
.itemList-v2__rank-num {
  position: absolute;
  top: 0;
  left: 0px;
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  z-index: 2;
}

.itemList-v2__img {
  width: 100%;
  height: auto;
  display: block;
}

/* テキスト・価格周り */
.itemList-v2__content {
  padding: 5px;
  text-align: center; /* 中央寄せ */
}

.itemList-v2__name {
  font-size: 13px;
  font-weight: bold;
  margin: 8px 0 4px;
  line-height: 1.4;
/* 商品名が長い場合に3行で省略する設定 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.itemList-v2__price-sub {
  font-size: 12px;
  color: #666;
  margin: 0;
  text-decoration: line-through; /* 通常価格に打ち消し線を入れる */
}

.itemList-v2__price-main {
  font-size: 13px;
  color: #da3737;
  font-weight: bold;
  margin: 2px 0 0;
}

/* 1位（注目）のユニット */
.itemList-v2__unit--featured {
  flex: 0 0 100%;
  max-width: 100%;
}

.itemList-v2__unit--featured .itemList-v2__link {
  display: flex;
  flex-direction: column; /* 縦並びにする（画像が上、文字が下） */
  align-items: center;
  justify-content: center;
  text-align: center;     /* テキストも中央寄せ */
  padding: 10px;            /* 上下に少し余裕を持たせる */
}

/* 1位の画像サイズ調整 */
.itemList-v2__unit--featured .itemList-v2__img-wrap {
  width: 70%; /* 画像の幅をここでコントロール */
  max-width: 250px;       /* 大きくなりすぎないように制限 */
  margin: 0 auto 10px;    /* 下に余白を作りつつ中央配置 */
}

/* 1位だけの特別な装飾（金色） */
.itemList-v2__unit--featured .itemList-v2__badge:before {
  background: #e6b422; /* ゴールド */
  width: 42px;
  height: 52px;
}
.itemList-v2__unit--featured .itemList-v2__rank-num {
  width: 42px;
  height: 42px;
  font-size: 18px;
}

@media (max-width: 750px) {
/* スマホ6位以下非表示 */
 .itemList-v2 .itemList-v2__unit:nth-child(n + 6) {display:none;}
 .itemList-v2.active .itemList-v2__unit:nth-child(n + 6) {display: block;}
}
@media (min-width: 751px) {
  /* スマホで消した分をPCでは常に表示させる */
  .itemList-v2__unit {
    display: block !important; 
  }
}
/* ==========================================
   PC用スタイル（751px以上）
   ========================================== */
@media (min-width: 751px) {
  /* 通常要素を 4カラム（25%）に */
  .itemList-v2__unit {
    flex: 0 0 25%;
    max-width: 25%;
  }
  /* ギフトページ用表示 */
  .itemList-v2--gift__unit {
    max-width: 35%;
  }

  /* 1位を横並びに */
  .itemList-v2__unit--featured {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 40px;
  }

  .itemList-v2__unit--featured .itemList-v2__link {
    flex-direction: row; /* 横並びに上書き */
    padding: 30px;            /* 上下に少し余裕を持たせる */
  }

  /* 1位の画像サイズ調整 */
  .itemList-v2__unit--featured .itemList-v2__img-wrap {
    width: 30%; /* 画像の幅をここでコントロール */
    max-width: none;
    margin: 0 50px 0 0;
  }
  .itemList-v2__unit--featured .itemList-v2__img {
    width: 100%; /* 親(wrap)に対して100%に */
  }

/* テキスト・価格周り */
  .itemList-v2__content {
    text-align: left; /* PCは左寄せ */
    padding: 10px 5px;
  }

  .itemList-v2__name {
      font-size: 14px;
      margin-bottom: 8px;
  }

  .itemList-v2__price-sub {
    font-size: 13px;
  }

  .itemList-v2__price-main {
    font-size: 16px;
  }


  .itemList-v2__unit--featured .itemList-v2__content {
    text-align: left; /* 行頭は左揃えを維持 */
    flex: 0 1 auto;   /* 幅を50%固定にせず、テキスト量に合わせる */
    max-width: 500px; /* テキストが広がりすぎないよう制限 */
  }

  .itemList-v2__unit--featured .itemList-v2__name {
    font-size: 20px; /* PCの1位はタイトルを大きく */
    margin-bottom: 15px;
    -webkit-line-clamp: 2; /* 1位は2行まで */
  }

  .itemList-v2__unit--featured .itemList-v2__price-sub {
    font-size: 18px;
  }

  .itemList-v2__unit--featured .itemList-v2__price-main {
    font-size: 18px;
    padding-top: 10px;
    margin-top: 10px;
  }

  .itemList-v2__unit--featured .itemList-v2__price-main span {
    font-size: 28px; /* 1位の価格を強調 */
  }

}

