
body {
    top: 0 !important;
}


.c-announce_bar {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 48px 8px 16px;
  background-color: #eaeaeb !important;
}

.c-announce_bar__text {
  text-decoration:underline;
  font-size:13px;
}


.c-announce_bar__text a:hover {
  text-decoration: underline;
}

.c-announce_bar__close {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  transform: translateY(-50%);
}

/* ×印 */
.c-announce_bar__close::before,
.c-announce_bar__close::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 1px;
  background: #000;
  content: "";
}

.c-announce_bar__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.c-announce_bar__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.c-announce_bar__close:hover {
  opacity: 0.7;
}

.c-announce_bar.is-hidden {
  display: none;
}

.l-bottom:not(:has(~ .l-bottom)) {
  padding-bottom: 45px;
}


*/ テンプレ記述 */
 .l-main-navi-list__link {
width: 100%;
}
.l-main-navi-list {
    /* display: flex; */
    /* flex-wrap: wrap; */
    /* justify-content: center; */
    display: flex !important;
    width: 100% !important;
    max-width: 1000px;
    margin: 0 auto;
    justify-content: flex-start !important;
    align-items: stretch;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    padding: 0;
    list-style: none;
}

.l-main-navi__in {
    max-width: 1120px;
    margin: 0 auto;
    width: 100%;
}

.l-main-navi-list__link {
width:100%;
}

.l-main-navi-list__link {
    display: block;
    position: relative;
    padding: 5px 16px;
    }

.l-main-navi-list__item {
    border-left: 1px solid #D8DDDF !important;
    flex: 1 1 0 !important;
    min-width: 0;
    display: flex;
    align-items: stretch;
}


.l-mega-menu {
width:1000px;
    left: 50%;
    transform: translateX(-50%);
}


.p-product {
    margin-bottom: 0!important;
    }

.l-header-main {
width:100%!important;
}

.l-help-navi-box {
    top: 18px!important;
    right: 60px!important;
}

@media (max-width: 767px) {
.l-header-search__box {
    top: inherit;
    bottom:54px;
}
}

.c-breadcrumbs {
    background: #eee !important;
        display: block;
        padding: 5px 0;
}
.c-breadcrumbs .c-breadcrumbs-list {
max-width: 990px;
    margin: auto;
    padding-top: 0;
    margin-bottom: 0;
    font-size: 13px;
    padding-left: 15px;
    padding-right: 15px;

}

/* パンくずがある場合 */
.c-breadcrumbs {
  margin-top: 0px;
}

/* favorite-modalの直後にフッターがある場合 */
.favorite-modal + .ecf_footer_section {
  margin-top: 30px;
}

/* パンくずが存在する場合は、フッター側の余白を解除 */
.c-breadcrumbs ~ .ecf_footer_section {
  margin-top: 0;
}

.p-product-explain__body a, .p-category-free a {
text-decoration:underline;
}

.p-product-sns-list__item:first-child {
display:none;
}
@media screen and (max-width: 1030px) {
.p-product-sns-list__item:first-child {
display:block;
}
}


@media screen and (max-width: 1030px) {
    .l-main {
        padding-left: 15px;
        padding-right: 15px;
    }
}

h2.h2-mds {
margin-top: 60px;
    margin-bottom: 60px;
    }

.button.button--tag.button--line {
background: #f5f5f5;
    border: 0;
    border-radius: 5px;
       padding: 2px 12px;
       display: inline-block;
    margin-bottom: 5px;
       

}



.favorite-button .fa-heart {
  transition: transform 0.2s ease;
}

.favorite-button:hover .fa-heart {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  transform: scale(1.1);
}


.c-item-list__txt {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px;
  column-gap: 6px;
}

/* 商品名 */
.c-item-list__ttl {
  grid-column: 1 / -1;
  grid-row: 1;
}

/* 価格 */
.c-item-list__price {
  grid-column: 1 / -1;
  grid-row: 2;
}

/* cartjsが生成した外側div */
.c-item-list__txt > div:has(> .cartjs_box) {
  grid-column: 1;
  grid-row: 3;
}

/* お気に入り */
.c-item-list__txt > .product-list__fav-items {
  grid-column: 2;
  grid-row: 3;
  align-self: end;
}



.favorite-button {
font-size:16px16px!important;
text-decoration: underline;
text-align: right;
    width: 100%;
    font-weight: 300 !important;
}


.c-item-list > li.c-item-list__item:not(:nth-child(4n+1)) {
        margin-left: 40px;
    }

.c-item-list .c-item-list__item {
padding-left:0;
padding-right:0;
width: calc((100% - 120px) / 4);
}

.c-item-list {
margin-left: 0;
margin-right: 0;
}


.c-item-list__img img, .p-product-main .slick-track .slick-slide, .u-img-scale img, .p-product-recommend-list__img img  {
background: #f8f8f8;
}


@media screen and (max-width: 767px) {
    .c-item-list .c-item-list__item {
        width: calc((100% - 15px) / 2);
    }
    .c-item-list > li.c-item-list__item:not(:nth-child(4n+1)) {
        margin-left: 0;
    }
    .c-item-list > li.c-item-list__item:not(:nth-child(2n+1)) {
        margin-left: 15px;
    }
    
}


/* カート部分 */
.c-item-list__txt .cartjs_box {
  padding: 10px 0 0 !important;
}

.c-item-list__txt .cartjs_cart_in {
  width: 100% !important;
}


.c-item-list__txt .cartjs_cart_in input[type="submit"] {
  width: 100% !important;
  height: 36px !important;
  margin-bottom: 0 !important;
      background: #333 !important;
    font-size: 12px !important;
}

/* お気に入りボタン */
.c-item-list__txt .product-list__fav-items {
  margin: 0;
  padding: 0;
}

.c-item-list__txt .product-list__fav-items .favorite-button {
  width: 46px;
  height: 36px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-item-list__txt .product-list__fav-items .favorite-button {
  background: #fff;
  border: 1px solid #999;
  border-radius: 5px;
  color: #000;
  cursor: pointer;
  text-decoration: none
}





/* ==============================
   お気に入り案内モーダル
============================== */

.favorite-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transition:
    opacity 0.35s ease,
    visibility 0.35s ease;
}

.favorite-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* 背景 */
.favorite-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

/* モーダル本体 */
.favorite-modal__content {
  position: relative;
  z-index: 1;
  width: calc(100% - 40px);
  max-width: 420px;
  padding: 45px 30px 35px;
  background: #fff;
  text-align: center;
}

/* 閉じるボタン */
.favorite-modal__close {
  position: absolute;
  top: 10px;
  right: 15px;
  padding: 5px;
  border: 0;
  background: transparent;
  color: #333;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

/* タイトル */
.favorite-modal__title {
  margin: 0 0 18px;
  font-size: 20px;
  font-weight: 500;
}

/* 説明文 */
.favorite-modal__text {
  margin: 0 0 25px;
  font-size: 14px;
  line-height: 1.8;
}

/* お気に入りを見るボタン */
.favorite-modal__button {
  width: 100%;
  max-width: 280px;
  padding: 14px 20px;
  border: 1px solid #555;
  background: #555;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.favorite-modal__button:hover {
  background: #fff;
  color: #555;
}



.c-news_item:first-child {
    border-top-width: 1px;
    border-top-style: solid;
}


.u-color__border--border {
    border-color: #D8DDDF !important;
}
.c-news_item {
    border-bottom-width: 1px;
    border-bottom-style: solid;
        padding: 20px 10px 30px;
        line-height: 1.8;
}

a.c-news_item__inner {
    display: flex;
    padding: 0;
    transition: 0.4s;
}





#news.top-page {
margin-top:100px;
}

@media (max-width: 767px) {
  .p-line-information li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .p-line-information li a {
    margin-top: .3em;
    padding-left: 20px;
  }
}

a.l-help-navi-list__link::before  {
        content: "\f007";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;   /* Solidなので必須 */
    display: inline-block;
}

.l-header__inner__block__item img, button.l-header-search__btn img {
width:23px;
}

.l-header-search__btn {
width:auto;
height:auto;
margin-right:15px;
}


.p-global-header__cart-count {
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 20px;
    height: 20px;
    font-size: 12px;
    position: absolute;
    left: 20px;
    top: -10px;
    padding: 0 4px;
    border-radius: 10px;
        background: #E21E1E;
        color:#fff;
}

.p-hero_split　 {
margin: 0 calc(50% - 50vw);
   width: 100vw;
}


.p-ranking-list__num {
display:none;
}

#custom-options-container {
margin-bottom:30px;
}

.p-product-explain__body {
    font-weight: 300;
}

.l-header-main__in {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
}

.c-favorite-list__item {
    width: calc(100% / 5)!important;
}

.p-line-informaiton ul li {
padding:20px 10px 30px;
}

.p-line-informaiton ul li:first-child {
    border-top-width: 1px;
    border-top-style: solid;
}
.p-line-informaiton ul li {
    border-color: #D8DDDF !important;
    border-bottom-width:1px;
    border-bottom-style: solid;
    font-size:16px;
}


@media (max-width: 768px) {
  .c-favorite-list__item > * {
    flex: 0 0 50%!important;
  }
}


h1.u-text--head, h2.u-text--head, h3.u-text--subhead, .p-custom_menu__item, h3.selection-catch {
font-family: "Noto Serif JP", serif!important;
  font-weight:600!important;
  font-style: normal;
}

.c-product_item__inner__title.u-text--subhead {
    font-size: 16px !important;
    font-weight: 400 !important;
}

h4.catch {
font-family: "Noto Sans JP", sans-serif!important;
  font-size:20px;
}
  
  p, .u-text--body {
font-family: "Noto Sans JP", sans-serif!important;
 font-weight:300; }

img {
transition:0.3s;
}

.p-new_product__title__en {
    letter-spacing: 0.1em;
}

body, section, article, address, table, tr, th, td, dl, dt, dd, h4, h5, p, span, strong, small, b, pre, form, input, select, textarea, button, pre, .u-text--subhead {
  font-family: "Noto Sans JP", sans-serif!important;

}
section p {
  font-weight:300;
}

.c-news_item__inner__title {
    float: 1;
    font-size: 16px!important;
    padding-left: 20px;
}
.top-type-heading, .text-link a {
    font-family: 'Noto Serif JP', serif!important;
}

strong {
  font-weight:500;
}

.c-btn-cart {
    background: #333 !important;
    height: 50px;
    border-radius: 6px;
    padding: inherit;
}

.header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-color: #D8DDDF !important;
    background:#fff;
    padding-bottom:10px;
}
@media (max-width: 1030px) {
.header {
    padding-bottom:0;
    }
}

/* 通常時 */
.l-main {
  padding-top: 98px;
}

/* お知らせバー表示中 */
/* 外側の .l-main だけ変更 */
body.has-announce-bar .header + .l-main {
  padding-top: 138px;
}

.c-announce_bar.is-hidden {
  display: none;
}

.l-main .l-main  {
    padding-top: 0px;
}


.u-color__border--input {
    font-weight: 300;
}


section p {
width:100%;
}

.u-margin__bottom--80 {
    margin-bottom: 60px;
}


@media (min-width: 720px) {
.pc-visible {
display:block;
}

.sp-visible {
display:none;
}
}

@media (max-width: 719px) {

.pc-visible {
display:none;
}

.sp-visible {
display:block;
}
}

.u-text--btn, .u-font--body {
  font-family: "Noto Sans JP", sans-serif!important;
}
.top-type-heading, .text-link a {
    font-family: 'Noto Serif JP', serif!important;
}


a:hover img {
opacity:0.7;
}

.p-cart_content {
    width: min(100%, 1080px);
    margin-bottom:30px;
}

.p-product_list__list {
max-width:1040px;
}

.p-product_list__list {
    max-width: 1000px;
}

.p-product_content__inner {
    max-width: 1000px;
}


.p-category_ranking_section {
    width: min(100%, 1020px);
}

.p-category_ranking_section {
    padding-inline: 10px;
}

.p-recommend_product__inner {
    max-width: 1000px;
}

.p-checkout_confirm__inner {
    max-width: 1000px;
}

.p-checkout__list__block__inner {
    max-width: 1000px;
}





.c-selection__note {
    padding: 5px 0 0 0!important;
}

.c-selection__note h3 {
margin-bottom:0!important;
       font-size: 0.98em !important;
                letter-spacing: 0;
}

h2.c-section_title__head, h2.p-new_product__title__en, h2.p-news__inner__title__en{
  font-size:22px!important;
}
@media screen and (max-width: 719px) {
h2.c-section_title__head, h2.p-new_product__title__en, h2.p-news__inner__title__en {
  font-size:20px!important;
}
}

media screen and (min-width: 720px) {
    .p-product_slider .slick-slider {
        width: min(100%, 1000px);
    }
}


@media screen and (min-width: 1024px) {
    .p-selection__list[data-columns="2"] .c-selection {
        width: auto;
    }
        .p-selection {
        width: min(100%, 1000px);
    }
}


p {
    font-feature-settings: "palt";
    letter-spacing: .08em;
    }

.p-new_product p  {
    font-feature-settings:inherit;
    letter-spacing: inherit;
}


h3.selection-catch {
    font-size: 24px;
}




@media screen and (max-width: 719px) {
h3.selection-catch {
    font-size: 21px;
}
.u-text--head {
font-size:21px!important;
}
}

.p-page_header__inner {
margin: auto;
    max-width: 1000px;
    margin-bottom:40px;
    margin-top:40px;
}
.p-page_header__inner  h1 {
text-align:left;

}


.l-container__row.u-margin__top--60:has(.p-category_tool){
  margin-top: 20px !important; /* 好きな値に */
}



/* =========================
   ロゴ
========================= */

@media screen and not (max-width: 719.98px) {
    .p-header_menu {
        padding: 5px 60px 10px;
    }
}


.l-header__inner__block.logo__block a img {
  max-width:350px!important;
  width:400px;
}

.ecforce-logo-center .l-header__inner > .logo__block > .l-header__inner__block__logo{
  max-width: none !important;
  width: auto !important;
}

/* ヘッダー全体を基準にする */
.l-header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* ロゴブロックを強制センター */
.l-header__inner .logo__block {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

/* =========================
   PCレスポンシブ（<=898px）
   ロゴを元の左寄せ挙動に戻す
   ========================= */
@media (max-width: 898px){

  .ecforce-logo-center .l-header__inner > .logo__block{
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;

    display: flex !important;       /* 元の flex に戻す */
    justify-content: flex-start !important;
    align-items: center !important;

    pointer-events: auto !important;
  }
  

}
/* =========================
   <=898px: ロゴを“左ブロック側”に寄せる
   ========================= */
@media (max-width: 898px){

  /* まずセンター化由来を完全解除 */
  .ecforce-logo-center .l-header__inner > .logo__block{
    position: static !important;
    transform: none !important;

    /* “真ん中ブロック”として残らないように */
    order: -1 !important;           /* 左側へ移動 */
    margin-left: 0 !important;
    margin-right: auto !important;  /* 右へ押し返す */
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: left !important;
  }

  /* ロゴリンクの箱も左寄せ */
  .ecforce-logo-center .l-header__inner > .logo__block > a.l-header__inner__block__logo{
    margin: 0 !important;
  }
  
  .ecforce-logo-center .l-header__inner {
  padding:0 40px;
  }
}




/* =========================
   SP (<=767px) ロゴ差し替え復活
   ========================= */
@media (max-width: 767px){

  /* 1) “ロゴ常時センター absolute” をSPでは無効化して以前の挙動に戻す */
  .ecforce-logo-center .l-header__inner > .logo__block{
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    display: block !important;          /* flexセンターを殺す */
    justify-content: initial !important;
    align-items: initial !important;
    pointer-events: auto !important;
  }

  /* 2) 管理画面が吐く a の max-width をSP側でも潰す（これが原因になりやすい） */
  .ecforce-logo-center .l-header__inner > .logo__block > a.l-header__inner__block__logo{
    max-width: none !important;
    width: auto !important;
  }



  /* 4) aを“残り幅の箱”にする（以前の意図をそのまま） */
  .ecforce-logo-center .l-header__inner > .logo__block > a.l-header__inner__block__logo{
    display: flex !important;
    width: calc(100vw - 46px - 30px) !important;     /* 例：ハンバーガー幅+余白 */
    max-width: calc(100vw - 46px - 10px) !important;
    justify-content: center;
  }



}
@media (max-width: 719px){
  .ecforce-logo-center .l-header__inner {
  padding:0 15px;
  }
}



/* “JSで付与するクラス” が付いている時だけ発動させる */
.ecforce-logo-center .l-header__inner {
  position: relative !important;
  min-height:46px!important;
  margin-top:5px;
}
@media (max-width: 719px){
.ecforce-logo-center .l-header__inner {
  margin-top:0;
}
}

.ecforce-logo-center .l-header__inner > .logo__block {
/* position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;

  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
 */
  pointer-events: none !important;
  z-index: 5 !important;
}



.ecforce-logo-center .l-header__inner > .logo__block a {
  pointer-events: auto !important;
}

/* 任意：SPだけサイズ */
@media (max-width: 767px){
  .ecforce-logo-center .l-header__inner > .logo__block a,
  .ecforce-logo-center .l-header__inner > .logo__block img{
    max-width: 280px !important;
  }
}
@media (max-width: 767px){
.ecforce-logo-center .l-header__inner {
    background: #fff;
}
}


.l-header__inner__block__item, .l-header__inner__block__item--menu, .l-header__inner__block__item--search {
    margin-right: 15px!important;
}




/* トップページセレクションもっと見る非表示 */
.p-selection_section__more {
  display: none;
}

/* ボタン角丸 */
.c-button, .u-text--btn, a.c-button, button  {
border-radius:5px;
font-weight:400!important;
font-size:14px!important;
}

button.l-menu-btn {
border-radius:0;
}



.c-product_item__inner__title.u-text--subhead {
    font-size: 16px !important;
    font-weight:600;
}

.p-product_list__list__item .c-product_item__inner__price.u-text--body {
    font-size: 15px !important;
}

.p-product_list__list__item .c-product_item__inner__price span {
font-size: 0;
display:none;
}

/* =========================
   商品一覧レイアウト
========================= */
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-6 {
    width: calc((100% - 80px) / 6);
  }
}

.p-product_list__list {
    row-gap: 30px;
}

.p-product_list {
margin-bottom:10px;
}

/* =========================
   フォント・カラー設定
========================= */
/*
h1.u-text--head, h2.u-text--head, h3.u-text--subhead, .p-custom_menu__item {
font-family: '游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif!important;

}
@media (max-width: 1099px) {
.ecf-drawer .ecf-spmenu__parent {
font-family: '游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif!important;
}
}

 */

.select-type h4 {
font-weight:500;
font-size:19px;
margin-bottom:30px;
text-align:center;
}

h3, p {
margin-bottom:30px;
}

/* ボタン */
a.c-button, button {
font-weight:400!important;
}

/* グローバルメニューの親メニュー */
a.c-header_menu {
    font-size: 17px;
}

/* 価格表記 */
#product-price-content.u-text--subhead {
font-weight:400!important;
}
.c-product_info__price span span, .c-product_item__inner__price span{
font-size:0.;
display:none;
}


/* =========================
   商品詳細
========================= */
.c-product_info {
  margin-bottom: 60px;
}
.c-product_info__title {
margin-top;0;
}

.p-product_content {
margin-top:40px;
}


@media screen and (max-width: 719px) {
    .p-product_content__inner__info, .p-product_content__inner__img {
        width: 100%;
        padding:0;
    }
}

@media screen and (max-width: 719px) {
    .p-recommend_product {
        padding-right: 0;
        padding-left: 0;
    }
    .recommend_product_padding {
    padding-right:15px;
    padding-left:15px;
}
}




.c-product_info__form__quantity {

    float: left;
}

.c-product_info__badge {

    float: right;
    margin-top:6px;
}


@media screen and (max-width: 719px) { 


.p-product_content {
margin-top:0;
}

}

.c-product_info__price {
    margin-top: 20px;
}


.c-product_info__form__submit.fix-hover {
    height: 50px;
    font-size: 16px;
    border-radius: 6px;
}

.c-cart_submit__block__submit {
    height: 50px;
}


/* =========================
   セレクトボックス幅
========================= */
#select-type,
#select-size {
  margin: auto;
  max-width:1000px;
}
.p-new_product {
padding:0!important;
margin-top: 40px;
}

@media screen and (max-width: 719px) { 
#select-type .temp-new_product_slider {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 15px;
    padding: 15px;
}
#select-size .temp-new_product_slider {
  padding-left: 15px;
  padding-right:15px;
}
.p-show_selection #select-size .temp-new_product_slider {
  padding-left: 0;
  padding-right:0;
  gap:0 15px;
}


    #select-size .p-new_product .medium-up--one-4:not(.forced-single-row) {
       margin-bottom:20px;
    }

}




@media screen and (max-width: 1030px) {
  #select-type,
  #select-size {
    width: 100%;
  }

}


@media screen and (max-width: 1030px) {
.p-show_selection #select-size {
padding:0;
}
}

@media screen and (max-width: 1030px) {
#select-type.top-page .temp-new_product_slider {
padding-bottom:0!important;
padding-top:0!important;
}

.p-new_product__slider__track__list.temp-new_product_slider .medium-up--one-3.size-type:nth-child(5),
.p-new_product__slider__track__list.temp-new_product_slider .medium-up--one-3.size-type:nth-child(6) {
margin-bottom:0!important;
}


}


/* =========================
   商品カード内要素
========================= */
.c-product_item__actions {
  position: relative !important;
  bottom: inherit !important;
  display: block !important;
  text-align: right !important;
    margin: auto;
    gap:5px;
}

@media screen and (max-width: 1000px) {
.c-product_item__actions {
width:100%!important;
}
}


.c-product_item__inner__category {
  display: none;
}

.c-product_item__inner__price.u-text--body.word-break-all {
  display: none;
}

/* タグを見せるかどうか  */

.p-product_list__list__item .c-product_item__inner__badge, .p-category_ranking_section__product .c-product_item__inner__badge {
  display: none;
}






/* お気に入りアイコン変更 */
ul.c-cart_item__badges li.c-badge {
background:#f5f5f5;
border:0;
border-radius:5px;
line-height:30px;
font-family: "Noto Sans JP", sans-serif;
}

.c-product_item__form .u-icon--heart:before {
    content: "\e90a";
}

.c-product_item__form:hover .u-icon--heart:before {
    content: "\e90b";
    color:#000;
}


/* =========================
   メニュー関連
========================= */


/* グローバルメニューのサブメニュー */
.p-custom_menu_panel__menu {
font-size:15px;
display: grid;
}
.p-custom_menu_panel__groups {
    display: grid;
    flex-direction: column;
    grid-template-columns: 1fr 1fr;
    column-gap: 40px;
}




.p-custom_menu_panel__selected {
  display: none;
}

.p-custom_menu_panel{
padding:20px 40px 40px 40px;
}

/* メガメニュー：ほんのりフェード */


.p-custom_menu_panel{
  transition: opacity 0.3s ease;
  transition-delay: 0.05s;
}

/* メガメニュー：ホバー */
.p-custom_menu__item.--text {
    padding: 0;
}

.p-custom_menu_panel__item {
    padding: 0;
}

a.c-header_menu  {
  padding:5px 40px;
  letter-spacing: 0.12em;
}
.p-custom_menu_panel__group {
    border-bottom: 1px solid var(--color-page-border, #d8dddf);
    border-top:none;
}

.p-custom_menu_panel__item.--primary.--collapsible {
  padding:9px 00px 9px 0;
  width:100%;
  border-bottom:1px solid #d8dddf;
}


.p-custom_menu_panel__item.--secondary a {
    padding: 7px 0px 7px 0;
    margin-left:30px;
      border-bottom:1px solid #d8dddf;
      letter-spacing: 0.05em;
    font-size: 15px;
}


.p-custom_menu_panel__link {
    padding: 8px 20px 8px 6px;
    position: relative;
  display: flex;
  align-items: center;
  line-height: 1.4;  /* ← リセット */

}

/* 矢印 */
.p_custom_arrow {
  position: absolute;
  right: 30px;
  top: 50%;
  width: 20px;
  height: 8px;
  pointer-events: none;
  flex-shrink: 0;

  transform: translate(0, -50%);
  transition: transform .5s cubic-bezier(.25,.8,.25,1);
}

.p_custom_arrow::before {
display:none;
}

/* ホバー（統一） */
.p-custom_menu_panel__item:hover .p_custom_arrow {
  transform: translate(5px, -50%);
}

.p-custom_menu_panel__item:hover .p_custom_arrow::before {
  border-bottom-color: #666;
  border-right-color: #666;
}

.p-custom_menu_panel__group.--collapsible .c-collapsible-section__header {
padding:0;
}
.p-custom_menu_panel__secondary-list .p-custom_menu_panel__item {
padding:0;
}



.p-custom_menu_panel__group.--collapsible:nth-last-child(-n+2) .p-custom_menu_panel__item.--secondary:last-child {
margin-bottom:0;
}

.p-custom_menu_panel__link.is-disabled .p_custom_arrow {
  display: none;
}

.p-custom_menu_panel__item.--primary .p-custom_menu_panel__link {
font-weight:400;
font-family: "Noto Sans JP", sans-serif!important;
font-size:15px;
letter-spacing: 0.05em;
}


li:hover a.c-header_menu:hover, .c-collapsible-section__header:hover, .p-custom_menu_panel__item.--secondary a:hover, .p-custom_menu_panel__link:hover {
background:#fafafa;
}

/* disabled を含む行は hover 背景を全部止める */
.c-collapsible-section__header:has(.p-custom_menu_panel__link.is-disabled):hover,
.c-collapsible-section__header:has(.p-custom_menu_panel__link.is-disabled):hover .p-custom_menu_panel__link,
.p-custom_menu_panel__item:has(> .p-custom_menu_panel__link.is-disabled):hover,
.p-custom_menu_panel__item:has(> .p-custom_menu_panel__link.is-disabled):hover .p-custom_menu_panel__link,
.p-custom_menu_panel__link.is-disabled:hover {
  background: transparent !important;
}

/* グローバルメニュー */

.p-custom_menu_panel__item.--secondary
  .p-custom_menu_panel__link:not(:has(.p-custom_menu_panel__bullet)) {
  padding-left: 8px;
  height:53px;
}




.p-custom_menu_panel__secondary-list {
    display: block;
    border:0;
}

@media screen and not (max-width: 1023.98px) {
    .p-custom_menu_panel {
        max-height: inherit;
    }
}


.p-custom_menu_panel__secondary-list .p-custom_menu_panel__item {
    outline:0;
}

.p-custom_menu_panel {
z-index:99;
}

/* ☓ボタン非表示 */
.p-custom_menu_panel__close::before {
display:none;
}


/* PCのみ hover を有効化 */
@media (hover: hover) and (pointer: fine) {

  /* 親メニューに hover したら aria-expanded=true 扱い */
  .p-custom_menu__item.--has-children:hover > a.c-header_menu {
    /* 見た目だけ必要なら */
  }

  /* パネルを表示状態に */
  .p-header_menu .p-custom_menu_panel {
    pointer-events: auto;
  }
}


/* PCメガメニュー：折りたたみ親カテゴリを2列に */
@media (hover: hover) and (pointer: fine) {

  /* collapsible群を2列グリッドに */
.p-custom_menu_panel[data-active-template="panel-template-1"] .p-custom_menu_panel__groups{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 40px;
    align-items: start;
  }

  /* 1つのカテゴリ（桐箱/缶/紙箱/価格）の枠 */
  .p-custom_menu_panel__group.--collapsible{
    margin: 0 !important;
    border-bottom:0;
  }

  /* 罫線が重いなら調整（任意） */
  .p-custom_menu_panel__group.--collapsible .c-collapsible-section{
    border: 0;
  }

  /* 中のリンクは縦並びのまま */
  .p-custom_menu_panel__secondary-list{

  }
}

@media (hover: hover) and (pointer: fine) {

  /* 贈りもの（panel-template-1）だけ：開閉アニメを殺す */
  .p-custom_menu_panel[data-active-template="panel-template-1"] .c-collapsible-section,
  .p-custom_menu_panel[data-active-template="panel-template-1"] .c-collapsible-section *{
    transition: none !important;
    animation: none !important;
  }

  /* コンテンツ領域を常時表示（高さアニメ対策） */
  .p-custom_menu_panel[data-active-template="panel-template-1"]
  .c-collapsible-section__content{
    display: block !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  /* header の “開閉用状態クラス” が残ってても見た目が変わらないように */
  .p-custom_menu_panel[data-active-template="panel-template-1"]
  .c-collapsible-section__header{
    transform: none !important;
  }
}


/* ＋/− アイコンを消す */
@media (hover: hover) and (pointer: fine) {
  .p-custom_menu_panel .c-collapsible-section__icon{
    display: none !important;
  }
}

@media (hover: hover) and (pointer: fine) {


  /* 見出しがリンクになるのでカーソルをリンクっぽく */
  .p-custom_menu_panel .c-collapsible-section__header {
    cursor: pointer;
  }
}

@media (hover: hover) and (pointer: fine) {

  /* disabledはカーソル通常に戻す */
  .p-custom_menu_panel__link.is-disabled {
    cursor: default !important;
  }

  /* 親hoverでも影響受けないように保険 */
  .p-custom_menu_panel__item:hover .p-custom_menu_panel__link.is-disabled {
    cursor: default !important;
  }
}

.p-header_menu.--horizontal-scroll {
    max-width: 1120px;
    margin: 0 auto;
    width: 100%;
    }


.p-header_menu.--horizontal-scroll ul.p-custom_menu.--text {
            display: flex !important;
    width: 100% !important;
    max-width: 1000px;
    margin: 0 auto;

    justify-content: flex-start !important; /* space-between禁止 */
    align-items: stretch;
    gap: 0 !important;                      /* 紫の隙間の原因を消す */
    flex-wrap: nowrap !important;

    padding: 0;
    list-style: none;
    }
    
  ul.p-custom_menu.--text > li.p-custom_menu__item{
    flex: 1 1 0 !important;      /* ←これが均等割の肝 */
    min-width: 0;
    display: flex;               /* aを縦横中央にするため */
    align-items: stretch;
    border-left: 1px solid var(--color-page-border, #d8dddf);
  }

.p-custom_menu__item.--has-children > .c-header_menu {
   flex: 1 1 auto;
    display: flex !important;         /* inline-flex潰す */
    align-items: center;
    justify-content: center;          /* ←文字（+▼）の塊を中央 */
    width: 100%;
    text-align: center;

    /* 左右paddingは“均等割”の邪魔にならない範囲で */
    padding: 5px 16px;     /* 40pxは狭い画面で詰まりやすい */
    box-sizing: border-box;
    gap: 6px;
    letter-spacing: 0.12em;
    }


.c-header_menu[aria-expanded="true"] {
  background: #fafafa;
}

@media screen and (max-width: 1029px) {
.p-custom_menu_panel__groups {
    column-gap: 10px;
}
.p-custom_menu_panel__group.is-full {
padding-left:15px;
}
.l-main-navi-list__link a {
padding-left:0;
}
.p_custom_arrow {
    display: none;
    }
}


/* =========================
   ① 既存のSVG矢印を完全殺し
========================= */
.p-custom_menu__item.--has-children > .c-header_menu::after {
  content: none !important;
  display: none !important;
  -webkit-mask: none !important;
  mask: none !important;
  background: none !important;
}

/* =========================
   矢印
========================= */
.p-custom_menu__item.--has-children > .c-header_menu {
  position: relative;
  padding-right: 20px; /* ←矢印用の余白を確保 */
}

/* 矢印 */
.p-custom_menu__item.--has-children > .c-header_menu::before {
  content: "";
  position: absolute;
  right: 20px;          /* ←内側に入れる */
  top: 50%;

  width: 20px;
  height: 6px;

  transform: translate(0, -50%) skewX(58deg);

  border-bottom: 1px solid  #d8dddf;
  border-right: 2px solid  #d8dddf;

  opacity: 0;

  transition:
    transform .35s cubic-bezier(.25,.8,.25,1),
    opacity .25s ease,
    border-color .25s ease;
}

/* hover */
.p-custom_menu__item.--has-children > .c-header_menu:hover::before {
  transform: translate(4px, -50%) skewX(58deg); /* 動きも少し控えめに */
  opacity: 1;

  border-bottom-color: #666;
  border-right-color: #666;
}
/* =========================
   SP Drawer (static menu / grouped) - COMPLETE CSS（修正版）
   変更点：
   1) .ecf-drawer を「固定枠」にして overflow を止める（スクロールさせない）
   2) .ecf-spmenu を「スクロール領域」にする（最後まで到達できる）
   3) ×ボタンを sticky にして操作性とレイアウト安定化
========================= */

/* =========================
   SP Hamburger (final)
   - JSで header > .l-header__inner 直下に挿入される前提
========================= */

/* 見た目（アイコン方式） */
.ecf-hamburger{
  display:none;          /* SPでだけ表示 */
  width:50px;
  height:46px;
border-radius:0;
  border:0;
  padding:0;
  cursor:pointer;

  background-color:#2e3870 !important;
  background-image:url("https://d2w53g1q050m78.cloudfront.net/mikuniyashopcom/uploads/menu-icon10.png");
  background-repeat:no-repeat;
  background-position:center;
  background-size:42px 42px;

  z-index:200 !important;
}

/* spanは使わない */
.ecf-hamburger span{ display:none !important; }

/* SPだけ表示 */
@media (max-width:1099px){
  .ecf-hamburger{ display:inline-flex !important; align-items:center; justify-content:center; }

  /* ヘッダー内右上に固定（.l-header__inner基準） */
  #ecf_header_section .l-header__inner{
    position: relative;
  }
  #ecf_header_section .l-header__inner > .ecf-hamburger{
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;          /* ピッタリ右端。余白欲しければ 8px に */
    transform: translateY(-50%) !important;

    /* 旧CSSのfixed位置を完全に殺す保険 */
    left: auto !important;
    bottom: auto !important;
  }
}


/* ---------- Overlay ---------- */
.ecf-drawer-overlay{
  display:none;
  position:relative;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:100000 !important;
}
.ecf-drawer-overlay.is-open{ display:block; }

.ecf-drawer{
  position:fixed;
  top:0;
  bottom:0;
  right:0;            /* ← 右固定 */
  left:auto;          /* ← 念のため */

  width:100vw;
  max-width:100vw;

  background:#fff;

  transform:translateX(105%); /* ← 右へ隠す */
  transition:transform .22s ease;

  z-index:100001 !important;

  overflow:hidden;
  padding:0;

  box-shadow:none !important;
  border-left:0 !important;    /* 左から右に変わるので */
}
.ecf-drawer.is-open{ transform:translateX(0); }


/* 背景スクロール抑止（JSが付与するクラス） */
html.ecf-drawer-lock,
body.ecf-drawer-lock{
  overflow:hidden !important;
  height:100%;
}

/* ドロワーが開いている間はハンバーガーを隠す */
body.ecf-drawer-open .ecf-hamburger{
  display:none !important;
}

/* ---------- Close button (×)（sticky化） ---------- */
.ecf-drawer__close{
  position: absolute;  /* ← こっち */
  top: 0px;
  right: 4px;

  width: 50px;
  height: 46px;
color:#fff;
  border: 0;
  background: #2E3870;
    font-size: 22px !important;
    font-weight: 200 !important;
  line-height: 44px;
  text-align: center;
border-radius:0;
  cursor: pointer;
  z-index: 20;
}

/* =========================
   SP (<=1099px)
========================= */
@media (max-width:1099px){

  /* ヘッダー側（ページ側）の横ナビは非表示 */
  [data-section-id="global_navi"].p-header_menu,
  .p-header_menu.--horizontal-scroll{
    display:none !important;
  }

  /* ハンバーガー表示 */
  .ecf-hamburger{ display:inline-block !important; }

  /* ===== Static menu container（スクロール領域） ===== */
  .ecf-drawer .ecf-spmenu{
    display:block;

    height:100%;
    overflow-y:auto;                     /* ★ここが本丸 */
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;

    /* ★余白を内側へ移動 + 最下部切れ防止 */
    padding:16px 14px 120px;
    box-sizing:border-box;
    margin-top: 29px;
  }

  /* ===== 大カテゴリ（商品一覧／贈りもの／…） ===== */
  .ecf-drawer .ecf-spmenu__section{
    border-top:1px solid #333;
  }
    .ecf-drawer .ecf-spmenu__section:last-child{
    border-bottom:1px solid #f0f0f0;
  }
  .ecf-drawer .ecf-spmenu__section:first-child{
    padding-top:0;
  }


  /* 大メニュー：フル幅 */
  .ecf-drawer .ecf-spmenu__parent{
    display:flex;
    align-items:center;
    justify-content: center;
    width:100%;
    padding:18px 6px;
    text-decoration:none;
    color:inherit;
    font-size:16px;
    font-weight:600;
    position: relative;
  }
  
.ecf-spmenu__mid {
  position: relative;
  display: flex;
  align-items: center;
  padding-right: 24px; /* 矢印スペース */
}
  
  /* 矢印 */
.ecf-spmenu__parent::after, .ecf-spmenu__mid::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;

  width: 20px;
  height: 6px;

  transform: translate(0, -50%) skewX(58deg);
  transform-origin: left center;

  border-bottom: 1px solid #cfcfcf;
  border-right: 2px solid #cfcfcf;

  transition:
    transform .35s cubic-bezier(.25,.8,.25,1),
    opacity .25s ease,
    border-color .25s ease;
}

.ecf-spmenu__mid.is-disabled::after {
display:none;
}

  /* ===== 中カテゴリグループ（桐箱/缶/紙箱/価格 など） ===== */
  .ecf-drawer .ecf-spmenu__groups{
    display:block;
    margin-top:6px;
    border-top:1px solid #333;
  }

  .ecf-drawer .ecf-spmenu__group{
    border-top:1px solid #f0f0f0;
  }
  .ecf-drawer .ecf-spmenu__group:first-child{
    margin-top:0;
    padding-top:0;
    border-top:0;
  }

  /* 中メニュー：フル幅（要件） */
  .ecf-drawer .ecf-spmenu__mid{
    display:block;
    width:100%;
    padding:20px 6px;
    text-decoration:none;
    color:inherit;
    font-size:16px;
    font-weight:500;
        border-bottom:1px solid #f0f0f0;
  }

  /* ===== 最下層：2列（要件） ===== */
  .ecf-drawer .ecf-spmenu__leaf{
    list-style:none;
    padding:0;

    display:grid;
    grid-template-columns: 1fr 1fr;
    column-gap:12px;
    row-gap:0;
  }
  .ecf-drawer .ecf-spmenu__leaf > li{
    margin:0;
    padding:0;
  }

  .ecf-drawer .ecf-spmenu__leaf a{
    display:block;
    width:100%;
    box-sizing:border-box;

    padding:18px 0 18px 0;
    text-decoration:none;
    color:inherit;
    font-size:16px;


    word-break:break-word;
  }

  /* 2列の最上段だけ線を消したい場合（任意）
  .ecf-drawer .ecf-spmenu__leaf > li:nth-child(-n+2) a{
    border-top:0;
  }
  */
}

/* 幅指定の重複は残してOK（保険） */
@media (max-width:1099px){
  .ecf-drawer{
    width: 100vw !important;
    max-width: 100vw !important;
  }
}

@media (max-width:1099px){
  .l-header { position:relative; }
}

@media screen and (max-width: 1099px) {
main.l-container {
padding-top:0!important;
}
}

@media screen and (max-width: 719px) {
main.l-container {
margin-top:50px;
}
}

/* =========================
   追加：SP固定フッター（64px）がある場合の厳密調整（任意）
   既に body padding-bottom:64px を入れているなら、このままでもOK。
   下端がまだ詰まる場合だけ有効化してください。
========================= */
/*
@media (max-width:719px){
  .ecf-drawer .ecf-spmenu{
    padding-bottom: calc(64px + 40px);
  }
}
*/



/* =========================
   ヘッダーメニュー（PC/スマホ）
========================= */
@media screen and (max-width: 1099px) {
  .p-header_menu.--horizontal-scroll {
    display: none;
  }
}

/* =========================
   セレクションセクション
========================= */
.p-selection_section div {
  margin-top: 0 !important;
}

@media (max-width:719px){
.p-show_selection .u-margin__bottom--80 {
    margin-bottom: 0;
}

.p-selection_section .p-selection__list[data-columns="2"] {
    grid-template-columns: inherit;
}

}

.p-selection__content {
    gap: 20px;
}

@media (max-width:719px){
.p-selection__content {
    gap: 0;
}


}

/* =========================
   ボーダー・ヘッダー
========================= */
.u-color__border--main {
  border: 0 !important;
}

.l-header__inner__block__item--menu {
  display: none !important;
}

@media screen and (max-width: 1099px) {
  .l-header__inner__block__item--menu {
    display: block !important;
  }
}

/*  ログイン時の会員名 */
.l-header__inner__block__item.l-header__inner__block__item--name {
    margin-right: 10px;
    font-size: 14px;
}

@media (max-width: 1099px) {
.l-header__inner__block__item.l-header__inner__block__item--name {
display: none;
}
}

.l-header__inner__block__item {
visibility: visible !important;
}




@media (max-width:1099px){
  /* <span class="ecf-spmenu__mid is-disabled"> 用 */
  .ecf-drawer .ecf-spmenu__mid.is-disabled{
    display:block;
    width:100%;
    padding:18px 6px;
    font-size:16px;
    font-weight:500;
    color:inherit;
    cursor: default;
  }
}
/* PC：価格で選ぶはクリック不可に見せる */
@media (hover: hover) and (pointer: fine) {
  .c-collapsible-section.is-price-only
  .c-collapsible-section__header {
    cursor: default;
  }

  .c-collapsible-section.is-price-only
  .c-toggle_icon {
    opacity: 0.4;
  }
}

p.gift-note {
margin-top:30px;
text-align:left;
}





/* =========================
   一覧のカートボタン、お気に入りボタン変更
========================= */

/* actions 横並び */
.c-product_item__actions{
  display:flex !important;
  width:100%;
  margin-top:0;
  padding-top:8px;
}

/* カート：可変幅（広い） */
.c-product_item__form--cart{
  flex:1 1 auto;          /* 残り全部 */
}

/* お気に入り：正方形固定 */
.c-product_item__form--favorite{
  flex:0 0 44px;          /* 正方形サイズ */
}

/* ボタン共通 */
.c-product_item__button--cart {
margin:0 10px;
}
.c-product_item__button--favorite{
margin:0 10px;
}

.c-product_item__button--cart{
width:100%;
}
.c-product_item__button--cart.u-color__btn--bg {
background:#333!important;
}

.c-product_item__button--favorite {
width:100%;
}

.c-product_item__button--cart,
.c-product_item__button--favorite{
  height:34px;
  border-radius:5px !important;
  border:1px solid rgba(0,0,0,.5);
  box-shadow:none !important;
  padding:0 !important;
  display:flex;
  align-items:center;
  justify-content:center;
}


.c-product_item__button--favorite {
background:#fff!important;
}


/* 罫線調整（ハート側は左線のみ） */
s

/* アイコン */
.c-product_item__button--cart i,
.c-product_item__button--favorite i{
  font-size:18px;
  color:#000;
}



/* カートアイコンを消す */
.c-product_item__button--cart i{
  display:none;
}

/* 「カートに入れる」テキストを表示 */
.c-product_item__button--cart::before{
  content:"カートに入れる";
  font-size:12px;
  font-weight:500;
  letter-spacing:.04em;
    font-family: "Noto Sans JP", sans-serif!important;
}

/* テキスト中央寄せ保証 */
.c-product_item__button--cart{
  justify-content:center;
}


/* カートに入れる：hoverで文字色を紺に */
.c-product_item__button--cart:hover::before, .c-product_item__button--favorite:hover i{
  color:#fff!important;
}
.c-product_item__button--cart:hover {
  opacity:0.4;
  transition: 0.3s;
}


.c-product_item__button--favorite:hover{
  transition: 0.3s;
}



/* トップセレクションコーナー */
.c-selection__note {
    padding: 10px 0 0 0;

}


.c-selection__note h3 {
margin-bottom:0;
}


/* 全体リンクはそのまま */
.c-product_item__link{
  z-index: 2;
}

/* actions の“親階層”を前に出す（ここが重要） */
.c-product_item__inner__content{
  position: relative;
  z-index: 3;
}

/* 念のため actions 自体も */
.c-product_item__actions{
  position: relative;
  z-index: 4;
}


/* =========================
   トップ サイズから選ぶ タイプから選ぶコーナー
========================= */

/* サイズから選ぶ：画像＋見出しを横50% */
#select-size li.size-type .c-product_item, #select-type li.size-type .c-product_item {
  width: 100%;
}

#select-size li.size-type .c-product_item {
  display: flex;
  flex-direction: row;
  padding:20px 0;
  margin-bottom:0px;
}


#select-type li.size-type .c-product_item img {
margin-left:auto;
margin-right:auto;
}


/* 左右わける */
#select-size li.size-type .c-product_item > div {
flex:1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}


@media screen and (max-width: 719px) {
#select-size li.size-type .c-product_item > div {
font-size:16px;
}
}


#select-size li.size-type .c-product_item > .heading-img {
  flex: 1 1 0;
  }
  #select-size li.size-type .c-product_item > .heading-txt {
  flex: 2 1 0;
  font-weight: 400;
  }

/* 画像の暴走防止 */
#select-size li.size-type .c-product_item img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-bottom:0;
}




@media (max-width: 719px) {

  #select-size li.size-type .c-product_item > .heading-txt {
  flex: 2.8 1 0;
  }
      .p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
    }

      .gift.p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
        margin-left: 15px;
    }


#select-size .c-product_item{
  display: flex;
  align-items: flex-start;
  gap: 16px;              /* いらなければ0 */
}

#select-size .c-product_item .heading-img{
  flex: 0 0 33.333%;
  max-width: 33.333%;
}

#select-size .c-product_item .heading-txt{
  flex: 1 1 0;
  max-width: 66.666%;
  min-width: 0;           /* 折り返し安定 */
}
#select-size li.size-type .c-product_item > div {
display:block;
text-align:left;
}



}



/* カート内でギフト選択ウインドウ */


@media screen and (min-width: 1024px) {
    .p-gift__modal {
        border-radius: 8px;
        width: 960px;
        height: min(95%, 960px);
    }
}

.p-gift_select__item {
    padding: 0.5em;
}

@media screen and (min-width: 1024px) {
    .p-gift_preview {
        width: 380px;
    }
}

@media screen and (max-width: 1023px) {
    .p-gift_preview {
       height: 110px;
       background-position: center;
    }
}



.p-gift_preview__thumbnail img.gift-product-img {
border:1px solid #ccc;
width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}


.p-gift_select__item:has(:checked) {
    background-color:inherit;
}
.p-gift_preview {
background-image:url("https://d2w53g1q050m78.cloudfront.net/mikuniyashopcom/uploads/noshi_image.png");
background-size: contain;
background-repeat:no-repeat;
}


.p-gift_preview__container.--show {
    background: #fff;
}


.p-gift_preview__container:has(.p-gift_preview__annotation) {
    grid:
        "annotation annotation" auto
        "description thumbnail" auto / 1fr 60%;
}




.c-cart_item__gift-info  {
background:inherit;
}


.p-gift__notice {
margin-bottom:0;
}


h1.p-gift__title.u-text--head {
display:none;
}

.js-noshi-note-wrap .p-gift_preview__text {
color:#ff0000;
    margin-top: 15px;
    margin-bottom: 20px;
}
@media screen and (max-width: 719px) {
.js-noshi-note-wrap .p-gift_preview__text {
    margin-top: 15px;
    margin-bottom: 20px;
}

}

@media screen and (max-width: 719px) {
h1.p-gift__title.u-text--head {
margin-bottom:0;
}
.p-gift__section.--page-2 .p-gift__select {
    gap: 10px;
}
.p-gift__content .p-gift__content {
15px;
}

}

.p-gift__head {
    display: block;
}

.js-noshi-note-wrap {
order:1;
}

/* カート内商品のカテゴリーを非表示 */
.c-cart_item__info__category {
display:none;
}


/* フッター公式サイトリンク */
.footer-custom-html {
max-width:200px;
}

.footer-link a img {
border:1px solid #fff;
border-radius:2px;
padding:8px;
}


ul.footer-link {
display:flex;
}

ul.footer-link li {
margin-left:8px;
}

ul.footer-link li:first-child {
margin-left:0;
}

/* フッター見出しを0に */
@media screen and (min-width: 768px) {
    .c-footer_menu__title {
        width: 0;
    }
}




/* フッター直下4ブロックを2カラム+下段フル幅に */
#ecf_footer_section {
  display: grid;
  grid-template-columns: 3fr 1fr; /* 75% / 25% 相当 */
  /* もしくは: grid-template-columns: 75% 25%; */
  grid-template-areas:
    "menu  logo"
    "menu  custom"
    "info  info";
  gap: 16px;
  align-items: start;
  margin-top: 00px;
}


/* 既存要素にエリア割当 */
#ecf_footer_section > .l-footer__menu { grid-area: menu; }
#ecf_footer_section > .l-footer__logo { grid-area: logo; justify-self: end; }
#ecf_footer_section > .footer-custom-html { grid-area: custom; justify-self: end; }
#ecf_footer_section > .l-footer__info__store { grid-area: info; }

/* 右側ブロックの中身を右寄せ（画像・リンクなど） */
#ecf_footer_section > .l-footer__logo,
#ecf_footer_section > .footer-custom-html {
  text-align: right;
}

@media (max-width: 768px) {
  #ecf_footer_section {
    grid-template-columns: 1fr;
    grid-template-areas:
      "menu"
      "logo"
      "custom"
      "info";
  }

  #ecf_footer_section > .l-footer__logo,
  #ecf_footer_section > .footer-custom-html {
    justify-self: center;
  }
  #ecf_footer_section > .l-footer__menu {
    margin-bottom: 15px;
}
}

/* 既存のSNSリンクブロックを非表示 */
.l-footer__info__store__sns {
display:none;
}

/* ＠表記を中央よせ */
.u-font--body.footer_body {
text-align: center;
    display: block;
    width: 100%;
    margin-top:0px;
    font-size:14px;
    }

/* 余白調整 */
@media screen and (min-width: 992px) {
    .l-footer__menu {
        margin-bottom: 0;
    }
}

@media (max-width: 768px) {
.u-font--body.footer_body {
margin-top:0px;
margin-bottom:25px;
}
}

@media screen and (max-width: 767px) {
    .l-footer {
        padding: 15px;
    }
    .c-footer_menus {
    margin-top: 15px;
}
}


.l-footer__logo {
    margin-bottom: 20px;
}

/* フッターメニュー余白調整 */
.c-footer_menu__list__item__inner::after {
    margin: 0px 15px;
}


/* =========================
   パンくず
========================= */

/* SP版に統一 */
    .p-breadcrumbs--sp, .p-product_content__breadcrumbs--sp {
        display: block!important;
    }

    .p-breadcrumbs--pc, .p-product_content__breadcrumbs--pc {
        display: none!important;
    }

/* 2つ目以降のパンくずを非表示 */

.p-product_content__breadcrumbs--sp .c-breadcrumbs:not(:first-of-type) {
  display: none;
}



.p-breadcrumbs, .p-product_content__breadcrumbs {
max-width:inherit;
}


.p-breadcrumbs--sp .c-breadcrumbs, .p-product_content__breadcrumbs--sp .c-breadcrumbs {
    padding: 5px 0px;
    max-width: 990px;
    margin: auto;
}

@media screen and (max-width: 1443px) {
.p-breadcrumbs--sp .c-breadcrumbs, .p-product_content__breadcrumbs--sp .c-breadcrumbs {
    padding: 5px 10px;
}
}

@media screen and (max-width: 719px) {
.p-breadcrumbs--sp .c-breadcrumbs, .p-product_content__breadcrumbs--sp .c-breadcrumbs {
    padding: 5px 15px;
}
}

.c-breadcrumbs.u-text--body, ol.c-breadcrumbs li, ol.c-breadcrumbs li a, ol.c-breadcrumbs, ul.c-breadcrumbs a, .c-breadcrumbs__item:not(:last-child):after {
font-size:13px!important;
}

@media screen and (max-width: 719px) {
ol.c-breadcrumbs li, ol.c-breadcrumbs li a, ol.c-breadcrumbs, ul.c-breadcrumbs a {
color:#000!important;
}
}
/* PCカテゴリーページ表示位置調整 */

.l-container {
  display: flex;
  flex-direction: column;
}

.l-container__row {
  order: 2;
}

.p-breadcrumbs.p-breadcrumbs--pc {
  order: 1;
}

#add_product_async_view {
  order: 3;
}

.p-breadcrumbs.p-breadcrumbs--sp, .p-product_content__breadcrumbs--sp  {
 order: 4;
 background:#eee!important;
}


/* =========================
  商品詳細ページ
========================= */
i.u-icon--line {
display:none;
}


@media (max-width: 719px){
i.u-icon--line {
display:inline;
}
}

.splide__track--fade>.splide__list>.splide__slide {
    aspect-ratio: 1 / 1;
    align-items: center;
    display: flex;
}


.p-product_content__inner__img {
    margin-bottom: 60px;
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
    background: #f9f9f9;
}

/* カテゴリー名を非表示 */
#product-category.c-product_info__category {
display:none;
}

/* SP表示樹変更 */
@media screen and (max-width: 719px) {
  .p-product_content__inner {
    display: flex;
    flex-direction: column;
  }

  /* 商品名を最優先 */
  #product-name {
    order: 1;
  }

  /* 商品画像を次 */
  .p-product_content__inner__img {
    order: 2;
  }

  /* 商品情報全体はいったん最後へ */
  .p-product_content__inner__info {
    order: 3;
    display: flex;
    flex-direction: column;
    margin-top:0;
  }

  /* 商品名は info 内でも最優先にしておく（保険） */
  .p-product_content__inner__info #product-name {
    order: 1;
  }

  /* 価格以下を商品名の後ろに */
  #price-group,
  #option_types,
  #quantity-group,
  .c-product_info__form__buttons,
  #pre_order_message,
  .c-product_info__favorite,
  #product-description,
  #description,
  .c-product_info__share,
  .c-product_info__badge {
    order: 3;
  }
    #product-name{ margin: 16px 0 12px;
    }
    
    .c-product_info__price {
    margin-top:20px;
    }
    
}

/* お気に入りアイコン */
.c-product_info__favorite__btn{
  position: relative;
}

/* 通常アイコン */
.c-product_info__favorite__btn .u-icon--heart_blank:before{
  content: "\e90a";
  display: inline-block;
  transition: opacity .3s ease;
  opacity: 1;
}

/* hover時アイコンを別レイヤーで出す */
.c-product_info__favorite__btn .u-icon--heart_blank:after{
  content: "\e90b";
  position: absolute;
  left: 0;
  top: 0;
  transition: opacity .3s ease;
  opacity: 0;
}

/* hoverでクロスフェード */
.c-product_info__favorite__btn:hover .u-icon--heart_blank:before{
  opacity: 0;
}
.c-product_info__favorite__btn:hover .u-icon--heart_blank:after{
  opacity: 1;
}


/* =========================
 　セレクションページ
========================= */
.p-selection_eye_catch_inner {
    height:auto;
}

.spec-row{
  display: flex;
  align-items: center;
  gap: 32px;

  padding: 28px 32px;              /* 行そのものを大きく */
  border-top: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;

  background: #fff;
}

/* 左：サイズ名 */
.spec-row__label{
  flex: 0 0 180px;                 /* ← しっかり見出し */
  font-weight: 700;
  font-size: 16px;
  color: #111;
  white-space: nowrap;
}

/* 中央：黒画像（主役） */
.spec-row__image{
  position: relative;
  flex: 0 0 120px;                 /* ← 重要 */
  height: 120px;
}

.spec-row__image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* 画像上テキスト */
.spec-row__image-text{
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;

  color: #fff;
  font-size: 18px;                 /* ← 説明文より大 */
  font-weight: 700;
  letter-spacing: .08em;
  pointer-events: none;
}

/* 右：説明文（基準サイズ） */
.spec-row__desc{
  flex: 1 1 auto;
  font-size: 16px;                 /* ← 指定どおり */
  line-height: 1.75;
  color: #111;
}

@media (max-width: 719px){
  .spec-row{
    display: grid;                 /* ← flexから切替 */
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "label image"
      "desc  desc";
    column-gap: 16px;
    row-gap: 12px;

    padding: 20px;
  }

  .spec-row__label{
    grid-area: label;
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
  }

  .spec-row__image{
    grid-area: image;
    width: 96px;                   /* flex-basisの代わりに固定 */
    height: 96px;
    justify-self: end;             /* 右寄せ（好みで center でもOK） */
  }

  .spec-row__image-text{
    font-size: 16px;
  }

  .spec-row__desc{
    grid-area: desc;
    font-size: 15px;
    line-height: 1.75;
  }
}

.c-product_info__option .c-cart_item__badges {
    display: inline-block;
    margin-right: 15px;
}


/* =========================
   スマホ固定フッター
========================= */



@media (max-width: 1030px){

  .l-header__inner__block.u-color--head{
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;

    display: flex;
    justify-content: space-around;
    align-items: center;

    height: 52px;
    padding: 0 8px;

    background:#fff;
    color: #fff;

    border-top:2px solid #000;
  }

  /* リンク・ボタン共通 */
  .l-header__inner__block.u-color--head a,
  .l-header__inner__block.u-color--head button{
    color: #fff;
  }

  /* アイコンを白に */
  .l-header__inner__block.u-color--head i{
    color: #fff;
    font-size: 22px;
  }

}

@media (max-width: 719px){
  body{
    padding-bottom: 52px;
  }
}

@media (max-width: 719px){
  #header-order-quantity{
    top: -6px;
    right: -8px;
    font-size: 11px;
  }
}






/* =========================
   グローバルメニューのアイコン
========================= */
.p-custom_menu_panel__item {
gap:8px;
}

.p-custom_menu_panel__bullet {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius:0;
    overflow: hidden;
    flex-shrink: 0;
    margin-right:5px;
}

@media (max-width: 1099px){
/* SPドロワー内：leafリンクを「左=アイコン / 右=テキスト」に固定 */
.ecf-drawer .ecf-spmenu__leaf a{
  display: grid !important;
  grid-template-columns: 32px 1fr !important;
  align-items: center !important;
  column-gap: 5px !important;

  /* 既存の縦積みや中央寄せを潰す */
  flex-direction: initial !important;
  justify-content: initial !important;
  text-align: left !important;
}

/* アイコンは左カラム */
.ecf-drawer .ecf-spmenu__leaf a .ecf-spmenu__icon{
  grid-column: 1 !important;
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
  display: block !important;
}

/* テキストは右カラム */
.ecf-drawer .ecf-spmenu__leaf a .ecf-spmenu__text{
  grid-column: 2 !important;
  min-width: 0;
}
.ecf-drawer .ecf-spmenu__leaf li a:not(:has(img)) {
          grid-template-columns: 0 1fr !important;
}

}
/* =========================
   スマホ検索ドロワー
========================= */

@media screen and (max-width: 719px) {
  /* まず幅指定をやめてフル幅に */
  .p-search_menu__container{
    width: 100vw !important;
    max-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important; /* 角丸が要らなければ */
  }
}

/* =========================
   フッター
========================= */

.c-footer_menu {
padding-bottom:0;
margin-bottom: 0;
}

.c-footer_menu__title {
margin-bottom:0;
}

@media screen and (max-width: 767px) {


}


/* =========================
   商品一覧画像　ランキング一覧
========================= */

.c-product_ranking {
display:none;
}


.c-product_item__inner__eyecatch {
    aspect-ratio: 1 / 1;
}

.c-product_item__inner__eyecatch__img, .c-product_item__inner__eyecatch__image {
    aspect-ratio: 1 / 1;
    background: #f8f8f8;
}

.p-category_ranking_section__more {
display:none;
}

/* はみ出し防止（ズームするなら必須） */
.c-product_item__inner__eyecatch{
  overflow: hidden;
}

/* 画像の基本設定 */
.c-product_item__inner__eyecatch__img__primary{
  display: block;
  width: 100%;
  height: auto;
  opacity: 1;
  transition: opacity .3s ease;
}

/* 基本：カードhoverで画像を薄くする */
.c-product_item:hover .c-product_item__inner__eyecatch__img__primary{
  opacity: .7;
}

/* 例外：アクション（カート/お気に入り）上では戻す */
.c-product_item:has(.c-product_item__actions:hover) .c-product_item__inner__eyecatch__img__primary{
  opacity: 1;
}

/* 例外：タイトル上では戻す */
.c-product_item:has(.c-product_item__inner__title:hover) .c-product_item__inner__eyecatch__img__primary{
  opacity: 1;
}

/* 例外：カテゴリ上では戻す（必要なら） */
.c-product_item:has(.c-product_item__inner__category:hover) .c-product_item__inner__eyecatch__img__primary{
  opacity: 1;
}

/* 例外：価格上では戻す（必要なら） */
.c-product_item:has(.c-product_item__inner__price:hover) .c-product_item__inner__eyecatch__img__primary{
  opacity: 1;
}

.c-product_item__inner__price {
margin-top:0;
    padding-top: 8px;
}

.c-product_item__inner__content {
    padding-top: 20px;
    margin-top:0;
    }

/* =========================
   TOPページランキング
========================= */

section[data-section-type="sale_ranking"] > .l-container__row.u-margin__top--80.u-margin__bottom--80, section[data-section-type="sale_ranking"] > .l-container__row.u-margin__top--80.u-margin__bottom--80 >.p-category_ranking_section {
margin-top:0!important;
margin-bottom:0!important;
}

section[data-section-id="64f9de2ebe24fc9636db3d2fd63a4cbf"]{
margin-bottom:0;
}

.p-category_ranking_section .c-section_title {
    margin-bottom: 0;
}
@media (max-width: 719px){

.p-category_ranking_section .c-section_title {
    margin-bottom: 10px;
}
}


@media (max-width: 719px){

section[data-section-type="sale_ranking"] {
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

}
.p-category_ranking_section {
        padding-inline: 15px 0;
    }


  /* 調整パラメータ */
  #ranking-all{
    --pad: 16px;   /* 左右余白 */
    --gap: 14px;   /* カード間の隙間 */
    --peek: 34px;  /* 3個目を見せたい幅（ここだけ調整） */

    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;

    gap: var(--gap);
    padding: 0 var(--pad);
    margin: 0;

    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }

  /* 2枚が必ずフルで入る幅（＋peek分だけ余白を残す） */
  #ranking-all > li.p-category_ranking_section__product{
    flex: 0 0 calc((100vw - (var(--pad) * 2) - var(--gap) - var(--peek)) / 2) !important;
    scroll-snap-align: start;
  }

  /* スクロールバー非表示（任意） */
  #ranking-all::-webkit-scrollbar{ display:none; }
  #ranking-all{ scrollbar-width:none; }
}


/* =========================
  TOPページセレクション
========================= */

section[data-section-type="selection_top"] {
    margin-top: 40px;
    }
    
section[data-section-type="selection_top"]　.p-selection__list {
    gap: 20px;
}


@media (min-width: 720px) {
    .p-category_ranking_section__content {
        padding-block-start: 30px;
    }
}

.p-category_ranking_section__content {
    display: grid;
    padding-block: 20px 20px;
}



@media (max-width: 719px){




section[data-section-type="selection_top"] .c-selection__image a img {
aspect-ratio: 16 / 6;
object-fit: cover;
}

section[data-section-type="selection_top"] .p-selection__list[data-columns="2"] {
        gap: 15px;
}


.c-selection__note {
padding:0!important;
}
}


/* 画像を基準にする */
section[data-section-type="selection_top"] .p-selection__item.c-selection{
  position: relative;
}

/* 画像リンクをブロック化（高さズレ防止） */
section[data-section-type="selection_top"] .c-selection__image > a{
  display: block;
}

/* テキストを画像の上に重ねて、左＆上下中央 */
section[data-section-type="selection_top"] .c-selection__note{
  position: absolute;
  left: 1.3em;              /* ←左余白はここで調整 */
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  margin: 0;               /* 余計なズレ防止 */
      padding: 5px 0 !important;
    border-bottom: 0.5px solid #555;
}

/* 見た目（お好みで） */
section[data-section-type="selection_top"] .c-selection__text.--title{
  margin: 0;
  fonr-size:18px!important;
  line-height:1.2em;
}
section[data-section-type="selection_top"] .c-selection__text.--title a{
  color: #333;             /* 白抜きにしたいなら #fff に */
  text-decoration: none;
  font-size:16px;
}

@media (max-width: 719px){
section[data-section-type="selection_top"] .c-selection__text.--title a {
font-size:16px;
}
section[data-section-type="selection_top"] .c-selection__note{ 
left:15px;
}
}


/* もし文字が背景に埋もれるなら（任意） */
section[data-section-type="selection_top"] .c-selection__text.--title a{
  /* background: rgba(255,255,255,.75);
  padding: .35em .6em;
  border-radius: 4px; */
}


/* =========================
   購入ページ招待コード欄非表示（機能オフ要確認）
========================= */

#view-invite-code {
display:none;
}





/* =========================
   ボタン
========================= */

.u-color__btn--bg {
    font-weight: 600;
}




@media screen and (min-width: 720px) {
    .p-new_product .medium-up--one-3 {
        width: calc((100% - 80px) / 3);
    }
}


.c-product_item p, .size-type p  {
margin-bottom:0;
}

.c-product_item .p-news__inner__more, .size-type .p-news__inner__more {
    margin-top: 15px;
    width:auto;
    max-width:100%;
}

.select-type.gift .p-news__inner__more {
    width: 260px;
}


.gift.p-new_product .selection-img-box {
width:76%;
margin-left:auto;
margin-right:auto;
}

.gift.package.p-new_product .selection-img-box {
width:78%;
}

.c-product_item img {
margin-bottom:15px;
}



.c-product_item h4 {
font-family: "Noto Serif JP", serif!important;
margin-bottom:30px;
}

@media screen and (max-width: 719px) {
#select-size li.size-type h4 {
margin-bottom:15px;
}

.gift .c-product_item h4 {
    font-size: 20px!important;
}
.gift .c-product_item h4 {
margin-bottom:15px;
text-align: center;
}
.gift.p-new_product .selection-img-box {
    width: 70%;
    }
}


@media screen and (min-width: 720px) {
    .p-new_product.select-gift-pric .medium-up--one-5:not(:nth-child(3n+1)) {
        margin-left: 10px;
        margin-right: 10px;
    }
}

.p-new_product.select-gift-price .c-product_item__inner__content {
margin-top:0;
text-align:center;
width:100%;
}

.p-new_product.select-gift-price .c-product_item__inner__content a {
padding:30px 0;
transition:.3s;
    font-family: "Noto Serif JP", serif !important;
    font-weight: 500;
    font-size: 18px;
}



.p-new_product.select-gift-price .c-product_item__inner__content a:hover {
background:#f8f8f8;
}

 .p-new_product.select-gift-price .medium-up--one-2 {
 border-top:3px double #ccc;
  border-bottom:3px double #ccc;
  border-radius:6px;
  }
  
  


/* =========================
  各ページヘッダー
========================= */
  
  
section.p-column[data-section-type="selections_show_title"], section.p-column[data-section-type="selections_show_content"]{
max-width: 1000px;
    margin: auto;
    padding-left: 0;
    padding-right:0;
}

@media (max-width: 768px) {

section.p-column[data-section-type="selections_show_title"], section.p-column[data-section-type="selections_show_content"]{
    padding-left: 15px;
    padding-right:15px;
}

}


  
/* 外枠：2カラム */
.p-hero_split{
  display:flex;
  align-items:stretch;
}

/* 左：タイトル */
.p-hero_split > section.p-column[data-section-type="selections_show_title"]{
  flex: 0 0 50%;
  display:flex;
  align-items:center;       /* 縦中央 */
  justify-content:center;   /* 横中央（2枚目の見た目） */
  padding: 40px 0;
  box-sizing:border-box;
  border-bottom:1px solid #f1f1f1 !important;
  background-color: #fcf9f7;
  background-color: #f3f0eb;
  margin:inherit;
}

@media (max-width: 768px) {
.p-hero_split > section.p-column[data-section-type="selections_show_title"] {
padding:0;
}

.p-hero_split > section.p-column[data-section-type="selections_show_title"]{
  background-color: #f8f5ef;
  }
}


@media screen and (max-width: 719px) {
    main.l-container {
        margin-top: 0;
    }
}




/* 左：h1を中央に */
.p-hero_split > section.p-column[data-section-type="selections_show_title"] .p-show_selection{
  width:100%;
  text-align:center;
}

/* 右：画像 */
.p-hero_split > section.p-selection_eye_catch{
  flex: 0 0 50%;
  display: flex;
  margin: 0;
  padding: 0;
}

.p-hero_split > section.p-selection_eye_catch .p-selection_eye_catch_inner{
  flex: 1;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
}

/* 右：cover */
.p-hero_split > section.p-selection_eye_catch img.p-selection__eye_catch{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* SP：縦積み */
@media (max-width: 768px){
  .p-hero_split{ flex-direction:column; }

  .p-hero_split > section.p-column[data-section-type="selections_show_title"],
  .p-hero_split > section.p-selection_eye_catch{
    flex: 0 0 auto;
  }

  .p-hero_split > section.p-selection_eye_catch .p-selection_eye_catch_inner{
    height:auto;
  }

}


.p-show_selection > h1 {
    margin-top: 40px;
    margin-bottom: 40px;
}


/* =========================
  閲覧履歴
========================= */
  

section[data-section-type="browsing_history"]{
  max-width:1000px;
  margin:auto;
  margin-bottom:60px;
  padding-left:0;
  padding-right:0;
}

@media (max-width: 1299px){
section[data-section-type="browsing_history"]{
  padding-left:40px;
  padding-right:40px;
}
}

@media (max-width: 719px){
section[data-section-type="browsing_history"]{
  padding-left:15px;
  padding-right:15px;
}
}


section[data-section-type="browsing_history"] .p-new_product {
padding:0;
}




.p-new_product.gift-page .medium-up--one-3, .p-new_product.gift-page  .medium-up--one-2 {
    background: #fff;
    padding: 0;
}



section[data-section-type="browsing_history"] .l-container__row {
border-top: 1px solid #D8DDDF;
}

#index-view section[data-section-type="browsing_history"] .l-container__row {
border:none;
}

section[data-section-type="browsing_history"] .l-container__row header.p-new_product__title {
padding-top: 40px;
}





/* PC想定：必要なら 980 は調整 */
@media (max-width: 1099px){

  /* header自体がfixedになってるのを解除（ここ重要） */
  #ecf_header_section.l-header{
    position: static !important;
    top: auto !important;
  }

  /* is-stuck になったら .l-header__inner だけ固定 */
  #ecf_header_section .l-header__inner.is-stuck{
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: #fff !important;
    z-index: 10;
  }
}



/* =========================
  トップ商品タイプ
========================= */

.top-type-heading {
text-align:center;
    FONT-SIZE: 18PX !important;
    font-weight: 500;
}


/* =========================
  商品タイプ・贈りもの
========================= */
@media screen and (max-width: 719px) {
.p-new_product.select-type .medium-up--one-3, .p-new_product.select-type .medium-up--one-2 {
width:100%;
margin-bottom:30px;
}

.p-new_product.select-type .medium-up--one-3:not(.forced-single-row):nth-child(even), .p-new_product.select-type .medium-up--one-2:not(.forced-single-row):nth-child(even),
.p-new_product.select-size .medium-up--one-3:not(.forced-single-row):nth-child(even), .p-new_product.select-size .medium-up--one-2:not(.forced-single-row):nth-child(even) {
        margin-left:0;
}
}

.select-gift-price .c-product_item__inner__content {
padding-top:0
}

@media screen and (max-width: 719px) {
    .gift .p-new_product__slider__track__list__item {
        width: 100%!important;
    }
    .gift .p-new_product__slider__track__list__item:first-child {
        margin-bottom: 30px;
    }
}

.gift .c-product_item .p-news__inner__more {
width:100%;
}


.gift .p-new_product p {
margin-bottom:30px;
}


@media screen and (max-width: 719px) {
#select-package a.u-color__btn--bg {
width:100%!important;
}
}

.gift .c-product_item h4 {
font-size:20px;
font-weight: 500 !important;
text-align:center;
}

/* =========================
  サイズ
========================= */

.select-type a.u-color__btn--bg, #select-size a.u-color__btn--bg, .gift a.u-color__btn--bg, #select-package a.u-color__btn--bg{
width: 66.6%;
}

.select-type a.p-news__inner__more__btn, #select-size a.p-news__inner__more__btn, .gift a.p-news__inner__more__btn, #select-package a.p-news__inner__more__btn{
height:45px;
}


@media screen and (max-width: 719px) {
#select-size .p-new_product .medium-up--one-3 {
margin-bottom:60px;
width:100%;
}
#select-size.p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
        margin-left:0;
}

.p-new_product.select-type .c-product_item .p-news__inner__more, .size-type .p-news__inner__more {
    margin-top: 15px;
    width: 100%;
    max-width: 100%;
    text-align: center;
}
}


.p-new_product.select-type .c-product_item .selection-img-box {
max-width:66.6%;
margin-left:auto;
margin-right:auto;
}

/* =========================
  カート画面
========================= */

.c-cart_submit {
    border-top-width: 1px;
    border-top-style: solid;
        border-bottom-width: 0;
}


.c-cart_submit__block {
    padding-top: 40px;
}
.continue-shopping-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
width:auto;
}

.continue-shopping-btn::before{
  content:"←";
  font-size:13px;
  line-height:1;
}
.continue-shopping-btn{
  transition: opacity .3s;
}

.continue-shopping-btn:hover{
  opacity: .4 !important;
  filter: none !important;
}

.p-cart_content__inner {
    padding-bottom: 0;
  
}



.continue-shopping-wrap .p-cart_content__button {
    font-weight: 300;
    border: 0;
    border-bottom: 1px solid #333;
    height: auto;
    padding:0;
}

.c-cart_item__info__quantity__submit {
    width: inherit;
    padding-left: 40px;
    padding-right: 40px;
        white-space: nowrap;
}

button.p-cart_content__button:hover {
opacity:0.4;
transition:0.3s;
}

@media screen and (min-width: 1024px) {
    .p-cart_content .c-billing_list {
        order: 1;
        margin-top:0;
        margin-bottom: 40px;

    }
        .p-cart_content .c-cart_submit {
        order: 2;
    }
    .p-checkout_confirm__inner__side .c-cart_list {
    margin-bottom: 10px;
    }
    
    .p-checkout_confirm__inner__side .c-billing_list {
    padding: 30px 160px;
    margin-top:40px;
}
.p-checkout_confirm__inner__list {
margin-top:20px;
}
}

/* =========================
  注文完了画面
========================= */
@media (max-width: 768px) {
#perform-view .p-page_header__inner__lead {
    text-align: left;
}
#perform-view .p-page_header__inner h1 {
    text-align: left;
}
}

@media (min-width: 769px) {
#perform-view .p-page_header__inner h1 {
    text-align: center;
}
#perform-view .p-page_header__inner__lead {
    text-align: center;
}
}

/* =========================
  関連商品
========================= */
.p-recommend_product__inner .product_description {
display:none;
}

/* =========================
  マイページ
========================= */

.p-favorite__list .product_description {
display:none;
}



/* =========================
  商品詳細 ギフトー通常商品リンク
========================= */

#add-shop-cart-form .ecf-optfav{
  display:block !important;
}

#add-shop-cart-form .ecf-optfav > #option01{
  flex: 0 0 auto;   /* 成り行き */
}

#add-shop-cart-form .ecf-optfav > .c-product_info__favorite{
  flex: 0 0 auto;   /* 成り行き */
  margin-left: auto; /* ← これが右詰めの正体 */
  text-align:right;
}


.item-more a{
    border: 1px solid #ccc;
    border-radius: 6px;
    padding:10px 20px;
    display: inline-block;
    line-height:1.2;
}

.item-more a:hover {
opacity:0.4;
transition:0.3s;
}

.c-product_item__inner__eyecatch__img, .c-product_item__inner__eyecatch__image{
transition:0.3s;
}
.c-product_item:hover .c-product_item__inner__eyecatch__image{
opacity:0.4;
}


.c-product_item__inner__eyecatch__img{
  position: relative !important;
}

.c-product_item__inner__eyecatch__img::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(255,255,255,0);
  transition: background .3s ease;
  pointer-events:none;
}

/* ここが重要：リンクhoverをトリガーにする */
.c-product_item__link:hover ~ .c-product_item__inner__eyecatch
.c-product_item__inner__eyecatch__img::after{
  background: rgba(255,255,255,0.6);
}




.item-more.gift a {
background-image: url("https://d2w53g1q050m78.cloudfront.net/mikuniyashopcom/uploads/gift-icon.png");
background-size: 26px;
    background-repeat: no-repeat;
    background-position-y: center;
    padding-left:42px;
    background-position-x: 10px;
    

}




#add-shop-cart-form .c-product_info__description {
margin-top:20px;
}

.c-product_info__option .item-more {
margin-bottom:5px;
}

.c-product_info__option .item-more:last-child {
margin-bottom:0;
}

.c-product_info__share {
border-top: 1px solid #D8DDDF;
border-bottom: 1px solid #D8DDDF;
padding:20px 0;
}




/* =========================
  注文画面
========================= */

.p-checkout_confirm__float_content {
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    max-width: inherit;
    margin: inherit;
}

.p-checkout_confirm__total {
display:none;
}

.p-checkout_confirm__submit {
    flex-basis: inherit!important;
    padding: 20px 30px!important;
    width: 280px!important;
    font-size: inherit!important;
    font-size:18px!important;
    font-weight:600!important;
        display: block;
        margin-left:auto!important;
        margin-right:auto!important;
}
.u-color__bg--accent {
    background: #000!important;
}

.p-checkout_confirm__float {
    position: inherit!important;
    width:auto!important;
    box-shadow:none!important;
    margin-bottom:10px;
    }
    
    
    
    
    
    
    
.p-gift_preview__container.gift.--show {
  display:flex;
  flex-wrap:wrap;      /* 折り返し */
  max-width:100%;
  min-height:180px;
}


.p-gift_preview__container.gift.--show .p-gift_preview__annotation{
  order: 4;
  flex: 0 0 100%;
  min-width: 0;   
}

.p-gift_preview__container.gift.--show .p-gift_preview__description{
  order: 1;
  flex: 0 0 100%;   
  min-width: 0;   
}

.p-gift_preview__container.gift.--show .p-gift_preview__thumbnail{
  order: 2;
  flex: 0 0 100%;   
  min-width: 0;
aspect-ratio: 16 / 10;
    overflow: hidden;
    max-width: 80%;   
}

.p-gift_preview__text {
margin-bottom:0;
}


@media screen and (max-width: 719px) {
.p-gift_preview__container.gift.--show .p-gift_preview__description{

  flex: 0 0 47%;   
 
}

.p-gift_preview__container.gift.--show .p-gift_preview__thumbnail{

  flex: 0 0 47%;   
}
}


.c-product_info__description.u-text--body p{
  margin-bottom: 1em;
}

.c-product_info__description.u-text--body p a {
  text-decoration:underline;
  transition:0.3s;
  opacity:1;
  font-weight:500;
}

.c-product_info__description.u-text--body p a:hover {
  text-decoration:underline;
  transition:0.3s;
  opacity:0.7;
}


.p-gift_preview__text.--part-of-noshi {
    justify-content: left;
}


/* =========================
   ランキング
========================= */



.c-product_item__inner__eyecatch__image img {
    aspect-ratio: 1 / 1;
}

/* =========================
   セレクションページ
========================= */

.p-show_selection {
    width: 100%;
    margin: 0 auto;
}

/* =========================
   セレクションページ
========================= */
.p-page_article__inner table tbody tr td {
    border: 1px solid #ccc;
    font-size:inherit;
}

.table { width: 100%;
margin-bottom:30px;
border-radius:5px;
}
.table th {
  background: #f8f8f8;
}
.table th, .table td {
    border: 1px solid #ccc; padding: 10px;
    font-weight:300;
}

.table .head {
width:12em;
text-align:center;
}

.table .change {
width:10em;
}

.table .area {
width:8em;
text-align:center;
}
.table .fee {
width:8em;
text-align:center;
}


/* 外枠 */
table.table{
  border: 1px solid #ccc;
  border-radius: 5px;
  overflow: hidden;
  border-collapse: separate;
  border-spacing: 0;
}

/* セル初期化 */
table.table th,
table.table td{
  border: 0;
  padding: 10px;
}

/* 縦線：基本は左だけ */
table.table tr > *{
  border-left: 1px solid #ccc;
}



/* 1列目は左線なし（外枠に任せる） */


table.table tr > *:first-child{
  border-left: 0;
}

/* 横線：上だけ */
table.table tr + tr > *{
  border-top: 1px solid #ccc;
}

/* headセルの右線 */
table.table td.head,
table.table th.head{
  border-right: 1px solid #ccc;
}

/* ★ここ重要：headの次のセルだけ左線消す */
table.table td.head + td,
table.table th.head + th{
  border-left: 0;
}

/* =========================
   定期 TABLE Responsive (mobile)
========================= */
@media (max-width: 719px){

  /* 幅指定を無効化 */
  .table#teiki .head,
  .table#teiki .change,
  .table#teiki .area,
  .table#teiki .fee{
    width: auto;
  }

  /* 見出し行（項目/内容/あとからの変更）を非表示 */
  .table#teiki > tbody > tr:first-child{
    display: none;
  }

  /* 1行=1カード */
  .table#teiki {
    border: 0;
  }
  .table#teiki > tbody > tr{
    display: block;
    border: 1px solid #ccc;
    margin: 0 0 14px;
    border-radius: 5px;
    overflow: hidden;
  }

  /* セルを「ラベル : 値」の2列表示 */
  .table#teiki > tbody > tr > td,
  .table#teiki > tbody > tr > th{
    display: flex;
    gap: 12px;
    width: 100%;
    border: 0;
    border-top: 1px solid #eee;
    padding: 10px;
    box-sizing: border-box;
    text-align: left;
  }
  .table#teiki > tbody > tr > td:first-child,
  .table#teiki > tbody > tr > th:first-child{
    border-top: 0;
    border-right: 0 !important;
  }

  /* 左側ラベル共通 */
  .table#teiki > tbody > tr > td::before,
  .table#teiki > tbody > tr > th::before{
    flex: 0 0 4.5em;          /* ラベル幅 */
    font-weight: 700;
    color: #555;
    content: "";
    padding-right:5px;
  }

  /* 通常（3列ある行） */
  .table#teiki > tbody > tr:has(> td.head) > td:nth-child(1)::before{ content: "項目";text-align:center;border-right:1px solid #eee; }
  .table#teiki > tbody > tr:has(> td.head) > td:nth-child(2)::before{ content: "内容";text-align:center;border-right:1px solid #eee; }
  .table#teiki > tbody > tr:has(> td.head) > td:nth-child(3)::before{ content: "あとからの変更";text-align:center;border-right:1px solid #eee; }

  /* rowspanの続き行（=2列しかない行）：「内容」「あとからの変更」にする */
  .table#teiki > tbody > tr:not(:has(> td.head)) > td:nth-child(1)::before{ content: "内容";text-align:center;border-right:1px solid #eee; }
  .table#teiki > tbody > tr:not(:has(> td.head)) > td:nth-child(2)::before{ content: "あとからの変更";text-align:center;border-right:1px solid #eee; }

  /* 注記行（colspan="2"）はラベル無しでフル幅に */
  .table#teiki > tbody > tr > td[colspan="2"]{
    display: block;
  }
  .table#teiki > tbody > tr > td[colspan="2"]::before{
    content: none;
  }

  /* 記号列（○/△/×）は右寄せで見やすく */
  .table#teiki td.change{
    justify-content: flex-start;
  }
}


table.table#teiki td.head, table.table#teiki th.head {
    /* border-right:o !important; */
}


@media (max-width: 719px){ 
.table#payment td.head {
width:7em;
}
}



/* =========================
   定期 TABLE Responsive (mobile)
========================= */
@media (max-width: 719px){

  /* 幅指定を無効化 */
  .table#shipping .head,
  .table#shipping .change,
  .table#shipping .area,
  .table#shipping .fee{
    width: auto;
  }

  /* 見出し行（項目/内容/あとからの変更）を非表示 */
  .table#shipping > tbody > tr:first-child{
    display: none;
  }

  /* 1行=1カード */
  .table#shipping {
    border: 0;
  }
  .table#shipping > tbody > tr{
    display: block;
    border: 1px solid #ccc;
    margin: 0 0 14px;
    border-radius: 5px;
    overflow: hidden;
  }

  /* セルを「ラベル : 値」の2列表示 */
  .table#shipping > tbody > tr > td,
  .table#shipping > tbody > tr > th{
    display: flex;
    gap: 12px;
    width: 100%;
    border: 0;
    border-top: 1px solid #eee;
    padding: 10px;
    box-sizing: border-box;
    text-align: left;
  }
  .table#shipping > tbody > tr > td:first-child,
  .table#shipping > tbody > tr > th:first-child{
    border-top: 0;
  }

  /* 左側ラベル共通 */
  .table#shipping > tbody > tr > td::before,
  .table#shipping > tbody > tr > th::before{
    flex: 0 0 5.5em;          /* ラベル幅 */
    font-weight: 700;
    color: #555;
    content: "";
    padding-right:5px;
  }

  /* 通常（3列ある行） */
  .table#shipping > tbody > tr:has(> td.head) > td:nth-child(1)::before{ content: "\90FD\9053\5E9C\770C";text-align:center;border-right:1px solid #eee; }
  .table#shipping > tbody > tr:has(> td.head) > td:nth-child(2)::before{ content: "\9001\6599";text-align:center;border-right:1px solid #eee; }
  .table#shipping > tbody > tr:has(> td.head) > td:nth-child(3)::before{ content: "あとからの変更";text-align:center;border-right:1px solid #eee; }

  /* rowspanの続き行（=2列しかない行）：「内容」「あとからの変更」にする */
  .table#shipping > tbody > tr:not(:has(> td.head)) > td:nth-child(1)::before{ content: "\5730\57DF";text-align:center;border-right:1px solid #eee; }
  .table#shipping > tbody > tr:not(:has(> td.head)) > td:nth-child(2)::before{ content: "\90FD\9053\5E9C\770C";text-align:center;border-right:1px solid #eee; }
    .table#shipping > tbody > tr:not(:has(> td.head)) > td:nth-child(3)::before{ content: "\9001\6599";text-align:center;border-right:1px solid #eee; }

  /* 注記行（colspan="2"）はラベル無しでフル幅に */
  .table#shipping > tbody > tr > td[colspan="2"]{
    display: block;
  }
  .table#shipping > tbody > tr > td[colspan="2"]::before{
    content: none;
  }

  /* 記号列（○/△/×）は右寄せで見やすく */
  .table#shipping td.change{
    justify-content: flex-start;
  }
}


table#shipping {
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}






/* =========================
   特定商取引法ページ
========================= */
.p-page_table__inner {
    max-width: 1000px;

}

.p-page_content__inner {
    max-width: 1000px;

}

.c-table tbody tr th {
width:12em;
}





.l-container__row a.underline  {
text-decoration:underline;
}

/* =========================
   カートのギフト選択
========================= */

.p-gift_order_item .c-cart_item {
    border-bottom: 1px dotted #D8DDDF;
    
}

.c-cart_item__gift-relation:not(:has(.c-cart_item__part-of-noshi)){
  align-items: flex-end;
}

@media screen and (max-width: 719px) {
.--page-1 .p-gift__select, .p-gift_select__list {
position: relative;
}

.p-gift_order_item {
gap:0;
}

.p-gift_order_item .c-cart_item {
    background:#f9f9f9;
position: relative;
}



    .c-cart_item__info {
        display: flex;
flex-direction: column;
justify-content: center;
    }


.--page-1 .p-gift__select::after, .p-gift_select__list::after {
  content: "";
  position: sticky;
  bottom: 0;
  display: block;

  background: linear-gradient(
    to bottom,
    rgba(255,255,255,0),
    rgba(255,255,255,1)
  );
  pointer-events: none;
          bottom: -1px;
}

.p-gift__select::after {
  height: 100px;
  }

.p-gift_select__list::after {
  height: 60px;
}


.p-gift_select__item {
border-style:dotted;
background:#f9f9f9;
}

.p-gift_select__item:has(:checked) {
   background:#f9f9f9;
}


.p-gift_preview__thumbnail .p-gift_preview__text {
display:none;

}

.p-gift_preview__container {
gap:0;
}

.p-gift_preview__annotation.u-color__border--border.u-text--body {
border:0;
}
.p-gift__button.--close {
    right: 10px;
    top: 5px;
}

.p-gift__content {
    padding: 20px 20px 20px;
}

.p-gift_select, .p-gift__content {
gap:10px;
}
.p-gift_select {
    height: 45%;
}

.p-gift_order_item .c-radio {
    top: 50%;
    transform: translateY(-50%);
}
.p-gift_order_item .c-cart_item__img {
        padding-right: 10px;
}

.c-cart_item__info {
        padding-left: 22px;
        padding-right: 10px;
}

}
.c-cart_item__info__quantity {
    justify-content: flex-end;
}

.c-input-with-button ..c-button.--hover {
    padding-left: 40px;
    padding-right: 40px;
        white-space: nowrap;
}

@media screen and (min-width: 720px) and  (max-width: 1023px) {
.c-cart_item__item-quantity.--grid-area-order-item-quantity {
width:100px!important;
}
.c-cart_item__gift-relation:not(:has(.c-cart_item__part-of-noshi)){
  align-items: inherit;
}
}

.p-header_menu.--center .p-custom_menu_panel {
    max-width: 1000px;
}



/* =========================
   一覧ページ
========================= */

.p-category_tool__inner {
    max-width: 1000px;
    margin-bottom:30px;
}

#add_product_async_view .p-product_list > .l-container__row.u-margin__top--60:nth-of-type(1){
    margin-top: 0px !important;
    }

header.p-page_header.u-margin__top--60 {
margin-top:40px!important;
}

.l-container__row.u-margin__top--60:has(.p-category_tool) {
    margin-top: 0px !important;
}


.c-product_item ul.c-cart_item__badges {
display:none;
}

/* =========================
   商品ラベル　熨斗対応商品
========================= */




.c-cart_item__badges {
    margin-top: 17px;
}

/* =========================
   ランキング
========================= */

@media (max-width: 719px) {
    .p-category_ranking_section__products {
        --category_ranking_section_row_gap: 40px;
    }
}


/* =========================
   商品一覧　並べ替え
========================= */
.c-list_tool__num, .c-list_tool__sort__label, #select_sort option {
font-size:15px!important;
}

.c-list_tool__num {
    margin-right: 10px;
}

.c-list_tool__sort__wrap > * {
font-size:15px!important;
}

@media screen and (max-width: 719px) {
    .p-category_tool {
        padding-right: 0;
        padding-left: 0;
    }
}

/* =========================
  SPマージン
========================= */


@media screen and (max-width: 719px) {
    .u-margin_sp__top--80 {
        margin-top: 30px;
    }
}

/* =========================
  マージン
========================= */

.u-margin__top--100, u-margin__top--80, {
    margin-top: 60px;
}




@media screen and (max-width: 719px) {
    .p-new_product#select-package .medium-up--one-3:not(.forced-single-row) {
                width: calc((100% - 15px) / 2);
    }
    
    .p-new_product#select-package .p-new_product__slider__track__list.temp-new_product_slider {
    gap:0 15px;
    width:92%;
    margin-left:auto;
    margin-right:auto;
    }
    
    .p-new_product#select-package .c-product_item h4 {
    font-size:16px;
    }
    
    .p-new_product__slider__track__list.temp-new_product_slider > li:last-child:nth-child(odd){
  margin-left: auto;
  margin-right: auto;
}
}

@media screen and (max-width: 719px) {
#select-size .p-news__inner__more {
    margin-top: 20px;
}
}
/* =========================
  フッター
========================= */


/* =========================
  お知らせ
========================= */


.p-page_article__inner {
    max-width: 1000px;
    }
    
.p-column_header__panel__inner {
    max-width: 1000px;
    padding: 40px 0 0;
    }
    
/* =========================
  ページ
========================= */



/* 2つ目：直前が同条件なら0 */
.l-container__row.u-margin__top--60 + .l-container__row.u-margin__top--60{
  margin-top: 0 !important;
}


.p-product_list .l-container__row.u-margin__top--60:has(+ .l-container__row.u-margin__top--60){
  margin-top: 0px !important;
}

.p-product_list .l-container__row.u-margin__top--80.u-margin__bottom--100 {
margin-top:40px;
margin-bottom:40px;
}


/* =========================
  タイトル部分
========================= */

.p-page_header__inner__title span {
font-size:0.8em;
    font-family: 'Noto Serif JP', serif!important;
}


.l-container__row.u-margin__top--80.u-margin__bottom--80 > div {
margin-top:100px;
}

@media screen and (max-width: 719px) {
.l-container__row.u-margin__top--80.u-margin__bottom--80 > div {
margin-top:inherit;
}
}


.p-product_list .u-margin__top--100 {
margin-top:40px!important;
}




/* =========================
  商品タイプから選ぶページ
========================= */

ul.p-new_product__slider__track__list {
gap:20px 0;
}

@media (max-width: 719px){

  /* 画像 + h4 を横並びにする */
  .p-new_product.select-type .c-product_item{
    display: flex;
    align-items: center;   /* 上揃えなら flex-start */
    gap: 12px;             /* いらなければ0 */
    flex-direction: row;
  }

  .p-new_product.select-type .c-product_item .selection-img-box{
    flex: 0 0 50%;
    max-width: 50%;
    margin: 0;
  }

  .p-new_product.select-type .c-product_item > h4{
    flex: 0 0 50%;
    max-width: 50%;
    margin: 0;
    text-align:left;
  }

  /* 画像がはみ出す/縮む対策 */
  .p-new_product.select-type .c-product_item .selection-img-box img{
    display: block;
    width: 100%;
    height: auto;
  }
}

.select-type .p-news__inner__more {
margin-top:0;
}

/* =========================
  お支払い方法・配送ページ
========================= */

.p-page_header__inner.is-empty-h1{
margin-bottom:0;
}



h3.selection-catch.teiki {
    padding-bottom: 10px;
    margin-bottom:0;
    margin-top:60px;
    }
    
    .p-column + .p-product_list .l-container__row.u-margin__top--100{
  /* ここに指定したいスタイル */
  margin-top:40px;
}


ul.c-cart_item__badges li.c-badge--concurrent-purchase-group {
  background-image: url(https://d2w53g1q050m78.cloudfront.net/mikuniyashopcom/uploads/gift-icon.png);
     background-size: 22px;
     background-repeat: no-repeat;
     background-position-y: center;
     padding-left: 36px!important;
     background-position-x: 10px; 
     background-color: #f4edd7;
}

.gift-link {
margin-top:45px;
margin-bottom:45px;
}

.gift-link + .gift-link {
  margin-top:20px;
}

@media (max-width: 719px){
.gift-link {
width:100%;
}
}



.text-link {
  text-align: center;
  margin: 30px 0;
}

/* 下線矢印リンク */
.text-link a {
  position: relative;
  display: inline-block;
  padding: 0 2em .6em 2em;
  text-decoration: none!important;
  color: #333;
}

/* 下線＋矢印 */
.text-link a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 10px;
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: skewX(50deg) translateX(0);
  transition: transform .3s ease;
}

/* ホバー・フォーカス */
.text-link a:hover::before,
.text-link a:focus-visible::before {
  transform: skewX(50deg) translateX(10%);
}

.text-link.align-left {
text-align:left;
}
.text-link.align-left a {
padding-left:0;
} 

.text-link a::before {
  left: -3px;
}

@media screen and (max-width: 719px) {
    #select-size .p-new_product .medium-up--one-4:not(.forced-single-row) {
        margin-bottom: 0;
    }
    ul.p-new_product__slider__track__list {
    gap: 15px 0;
}
.top-type-heading {
    FONT-SIZE: 15PX !important;
}
}


#select-size.select-gift-type .gift .c-product_item h4 {
font-weight:500!important;
font-size:18px!important;
}
#select-size.select-gift-type li.size-type .c-product_item > .heading-img {
    flex: 4 1 0;
}

#select-size.select-gift-type li.size-type .c-product_item > .heading-txt {
    flex: 6 1 0;
    }
    

    #select-size.select-gift-type  .c-product_item .heading-img {
        max-width: 43%;
    }

#select-size.select-gift-type .p-new_product#select-package .c-product_item h4 {
    display: flex;
    align-items: center;
    min-height: 110px;
  }
  
#select-size.select-gift-type .text-link  {
margin-top:0;
}

#select-size.select-gift-type li.size-type .c-product_item {
margin-bottom:0;
}


@media (max-width: 719px) {
#selection-show-view #select-size.select-gift-type .p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
        margin-left:0;
    }
    #selection-show-view .text-link a {
    padding:0 2em .3em 2em;
    }
    
    #selection-show-view .text-link.align-left {
text-align:left;
}
#selection-show-view .text-link.align-left a {
    padding-left:0;
    }
#selection-show-view #select-size.select-gift-type .p-new_product .medium-up--one-3 {
    margin-bottom: 15px;
    margin-top: 0;
}
}

#select-size.select-gift-type .p-new_product .medium-up--one-3 {
        margin-bottom: 15px;
    }
    
    .text-link.margin-top-0 {
    margin-top:0;
    }
    
.heading-txt .text-link {
padding: 0 2em 0 2em;
}




@media screen and (max-width: 719px) {
    #select-type.top-page .temp-new_product_slider {
        flex-wrap: wrap;
        justify-content: center;
        gap: 0;
        padding: 15px;
    }
}

/* ===============================
   画像hover：詳細へ + 1本線（接続確定）
=============================== */

.c-item-list__img{
  position: relative;
}

/* テキスト */
.c-item-list__img::after, .c-favorite-list__img::after, .p-ranking-list__img::after{
  content:"詳細へ";
  position:absolute;
  right:14px;
  bottom:34px;

  font-size:12px;
  letter-spacing:.12em;
  color:#333;

  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
  z-index:30;
}

/* 1本の折れ線（横線→斜め線：接続確定） */
.c-item-list__img a::before, .c-favorite-list__img a::before, .p-ranking-list__img a::before{
  content:"";
  position:absolute;
  right:14px;
  bottom:12px;

  width:86px;
  height:1px;
  background:#666;

  opacity:0;
  transition:.3s;
  z-index:30;
}

/* 斜線をSVGに置換（太さブレ防止） */
.c-item-list__img a::after, .c-favorite-list__img a::after, .p-ranking-list__img a::after{
  content:"";
  position:absolute;
  right:14px;
  bottom:12px;

  width:18px;
  height:12px;

  background-repeat:no-repeat;
  background-size:100% 100%;
  background-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12' preserveAspectRatio='none'>\
<path d='M0 2 L18 12' stroke='%23666' stroke-width='1' fill='none' shape-rendering='crispEdges'/>\
</svg>");

  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
  z-index:30;
}

.c-item-list__img a:hover::before,
.c-item-list__img a:hover::after,
.c-favorite-list__img a:hover::before,
.c-favorite-list__img a:hover::after,
.p-ranking-list__img a:hover::before,
.p-ranking-list__img a:hover::after {
  opacity: 1;
}

.detail-label{
  position:absolute;

  left:calc(100% - 67px); /* ←ここが核心 */
  bottom:16px;

  transform:translateX(-50%);

  font-size:14px;
  letter-spacing:.12em;
  color:#666;

  opacity:0;
  transition:.3s ease;
  pointer-events:none;
  z-index:40;
}
/* hoverで表示 */
.c-item-list__img:hover .detail-label, .c-favorite-list__img:hover .detail-label, .p-ranking-list__img:hover .detail-label {
  opacity:1;
}




#select-type li.size-type .c-product_item {
    display: flex;
    flex-direction: row;
}

#select-type li.size-type .c-product_item .illust-img {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
#select-type li.size-type .c-product_item .top-type-heading {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align:center;
}

#select-type.top-page .c-product_item img {
    margin-bottom: 0px;
}

@media screen and (min-width: 720px) {
#select-type.top-page .p-new_product .medium-up--one-3:nth-child(n+4) {
        margin-top: 30px;
    }
}

#select-size li.size-type .c-product_item, #select-type li.size-type .c-product_item {
    border-top: 3px double #ccc;
    border-bottom: 3px double #ccc;
    border-radius: 6px;
    transition:.3s ease; 
}

#select-size li.size-type:hover .c-product_item, #select-type li.size-type:hover .c-product_item {
background:#f8f8f8;
}

#select-size.top-page li.size-type .c-product_item img {
    padding-left:10px;
    padding-right:10px;
    }


@media screen and (max-width: 719px) {
#select-type.top-page li.size-type .c-product_item {
    display: block;
    padding:15px 0;
}

#select-type.top-page li.size-type .c-product_item .illust-img {
    width:100%;
    display: block;
}
#select-type.top-page li.size-type .c-product_item .top-type-heading {
    width:100%;
    display: block;
    align-items: center;
    text-align:center;
}

#select-type.top-page li.size-type .c-product_item img {
    width: 70%;
}
    #select-type.top-page .p-new_product .medium-up--one-3:not(.forced-single-row) {
        margin-bottom: 15px;
                width: calc((100% - 15px) / 2);
    }


#select-size.top-page li.size-type .c-product_item {
    align-items: center;
}

    #select-type.p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
        margin-left: 15px;
    }




}

#select-size.sub-page li.size-type .c-product_item {
    border-top: none;
    border-bottom: none;
}

#select-size.sub-page li.size-type:hover .c-product_item {
background:inherit;
}


#select-size.sub-page .c-product_item h4 {
margin-bottom:10px;
font-size: 19px;
    font-weight: 500;
}

.gift-page h3, .gift-page .c-product_item p{
margin-bottom:15px;
}
.gift-page h3 {
  font-weight:500;
    font-family: 'Noto Serif JP', serif!important;
  }

.gift-page .img-border.noshi-image {
  aspect-ratio: 3 / 2;
  overflow: hidden;
}

.gift-page .img-border.noshi-image img {
border:1px solid #ccc;
padding:20px;
  width: 80%;
  height: auto;
  object-fit: cover;
  object-position: center; /* 上下中央でトリミング */
  margin:auto;
}

@media screen and (max-width: 719px) {
.gift-page .img-border.noshi-image img {
  width: 100%;
  height: 100%;
}
}


@media screen and (max-width: 719px) {
.gift-page.p-new_product .wrapping .medium-up--one-2:not(.forced-single-row) {
        width: 100%;
    }
.gift-page.p-new_product .wrapping .medium-up--one-2:not(.forced-single-row):nth-child(even) {
        margin-left: 0;
    }
  .gift-page h3 {
  font-size:17px;
  text-align:center;
  }
  
  .gift-page  .img-border img {
padding:0px;
}
}


    .gift-page.p-new_product .medium-up--one-2 {
        margin: auto;
    }


.c-form_table.p-shipping_address_table > tbody > tr > th {
    white-space: normal;
}

.c-form_table--confirm th {
min-width:220px;
padding-left:0!important;
}
.c-form_table--confirm td {
font-weight: 300;
}


button.p-cart_content__button.--add-gift {
    background-image: url(https://d2w53g1q050m78.cloudfront.net/mikuniyashopcom/uploads/gift-icon-wh.png);
        background-size: 22px;
    background-repeat: no-repeat;
    background-position-y: center;
    padding-left: 50px !important;
    background-position-x: 18px;
    background-color:#3e3e3e;
    height:50px;
    color:#fff;
    border-radius:5px;
  }
  
.p-cart_content__button.--add-gift {
width:auto;
}


.gift-note{
  display:flex;
  flex-wrap:wrap;
  align-items:center;   /* ← 縦中央揃えの核心 */
  gap:0.4em;
  line-height:1.8;
}

.gift-badge{
  display:inline-flex;
  align-items:center;
  gap:0.4em;
}

.gift-badge img{
  height:2.1em;
  width:auto;
  display:block;
}
@media screen and (max-width: 767px) {
p.gift-note {
text-align:left;
}
}


.c-order_quantity .c-order_quantity__input {
    width: 100px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.p-cart_content__inner__product .c-order_quantity .c-order_quantity__input {
idth: 100% !important;
}




@media screen and (max-width: 719px) {
.c-order_quantity .c-order_quantity__input {
    width: 100%!important;
    }
    .c-input-with-button .c-button {
    padding-left:40px;
    padding-right:40px;
    }


}

.c-order_quantity {
    width: min(100%, 100px);
}

@media screen and (max-width: 719px) {
.c-order_quantity {
    width: min(100%, 160px);
}
}

.c-cart_item__gift-summary .c-cart_item__text.u-color--head {
font-weight:500;
}

.c-cart_item__gift-info.u-text--body .c-cart_item__gift-target-title.u-color--head {
display:none;
}
.c-cart_item__gift-target-info .c-cart_item__text.u-color--head::before {
content:"対象の商品:";
display:inline-block;
}

.c-cart_item.--gift.u-color__border--border {
padding-top:5px;
}

.p-cart_content__inner__gift .c-cart_item__img__inner {
    padding-top: 66.6%;
    border: 1px solid;
    border: 1px solid #ddd;
    box-sizing: border-box;
    margin-top:12px;
}

.c-cart_item__gift-relation::after {
content:"名入れの入力後や入力取消後、または数量変更後は「更新」を押してください。";
display:inline-block;
font-size: 14px;
    text-align: right;
    color: #999;
}

@media screen and (max-width: 719px) {
.c-cart_item__gift-relation::after {
display:none;
}
.c-cart_item__item-quantity.--grid-area-order-item-quantity::after {
content:"名入れの入力後や入力取消後、または数量変更後は「更新」を押してください。";
display:inline-block;
font-size: 14px;
    text-align: left;
    color: #999;
}
}

.c-cart_list__list__item.--gift .c-cart_list__gift-target-items {
    display: block!important;
}

.c-cart_list__list__item.--gift .c-cart_list__toggle-gift-target-items {
margin-bottom:0;
font-size: 16px !important;
padding:5px 0;
}
.c-cart_list__toggle-icon i {

    display: none;
}

.c-gift-noshi-table .c-gift-noshi-table__cell:nth-child(2) {
text-align:center;
}

.c-product_info__description.u-text--body#product-description {
display:none;
}

c-gift-noshi-table__header {
    font-weight: 300;
}

a.c-cart_item__img .c-cart_item__img__inner, .c-cart_list__list__item__img .c-cart_list__list__item__img__inner {
  aspect-ratio: 1 / 1;
    background-color: #f8f8f8;
}
.c-cart_item__img__inner, .c-cart_list__list__item__img__inner  {
    padding-top: 100%;
    }

.p-checkout_confirm__inner__list__block + .u-text--body {
    margin-bottom: 40px;
    display: block;
}




/* モーダル背景 */
.ec-zoom-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.75);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;

  opacity:0;
  transition:opacity .35s ease;
}

/* 表示状態 */
.ec-zoom-modal.is-show{
  opacity:1;
}

/* 画像ボックス */
.ec-zoom-modal__inner{
  position:relative;
  background:#f8f8f8;
  padding:40px;
  border-radius:6px;

  transform:scale(.94);
  transition:transform .35s cubic-bezier(.22,.8,.3,1);
}

.ec-zoom-modal.is-show .ec-zoom-modal__inner{
  transform:scale(1);
}

/* 画像 */
.ec-zoom-modal img{
  max-width:92vw;
  max-height:92vh;
  object-fit:contain;
  display:block;
}

/* 閉じるボタン */
.ec-zoom-close{
  position:absolute;
  top:5px;
  right:5px;
  width:36px;
  height:36px;
  border:none;
  font-size:30px!important;
  line-height:36px;
  text-align:center;
  cursor:pointer;
  font-weight:
      color: #666;
      font-weight: 300 !important;
}




.c-product_img__slider--thumbnail .c-product_img__item img {
    background: #f8f8f8;
}


/* カート画面 */
.p-gift_preview__thumbnail .p-gift_preview__text.u-text--body{
  display:none;
}

.p-gift_order_item .c-radio {

    right: -12px;
    left:inherit;
}


/* 定期ページ */

.subscription-info{
  margin:auto;
}

.subscription-info h2{
  margin-top:40px;
  margin-bottom:20px;
}

.info-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  margin-bottom:60px;
}


.info-block.last{
  grid-column:1 / -1;
}

.info-block p{
  margin:6px 0;
  line-height:1.7;
}

.note{
  margin-top:20px;
  font-size:0.9em;
  color:#666;
}

.info-grid.three{
  grid-template-columns:1fr 1fr 1fr;
}
.info-grid.four{
  grid-template-columns:1fr 1fr 1fr 1fr;
}

p-custom_menu_panel__group --collapsible

p-custom_menu_panel__item --primary
.info-block {
border-bottom: 1px solid #efefef;
    padding:0 0 30px 0;
    position: relative;
    }


.info-grid.merit .info-block  {
    border-bottom: 3px solid #f1f8fb;
    border-radius: 0px;
    padding: 30px 15px 30px;

} 
.info-grid.merit .info-block:first-child {
    background: #f9fcfd;
    border-color:#dbe4f4;

}
.info-grid.merit .info-block:nth-child(2) {
    background: #fefefa;
    border-color:#fdf3dc;
}    
.info-grid.merit .info-block:nth-child(3) {
    background: #f8fcf8;
    border-color:#e7f4e7;
}    




.info-block .icon-img {
width: 70px;
    height: 70px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 35px;
}
.info-grid.merit .info-block:first-child .icon-img {
background:#dbe4f4;
}
.info-grid.merit .info-block:nth-child(2) .icon-img {
background:#fcf6e4;
}
.info-grid.merit .info-block:nth-child(3) .icon-img {
background:#e7f4e7;
}

.info-grid.info .info-block:nth-child(-n+2){
  padding-top:30px;
}

.info-grid.info .info-block i {
    color: #5193ae;
    font-size: 1.1em;
}


.subscription-info .center {
text-align:center;
}

/* 矢印 */

.info-block {
position:relative;
}

.info-grid.flow .info-block::after {
    content: "›"; /* 好きな記号 or SVGでもOK */
    position: absolute;
    right: -25px; /* gapの半分くらい */
    top: 50%;
    transform: translateY(-50%);
    font-size: 36px;
    color: #999;
}

/* 最後だけ消す */
.info-grid.flow .info-block:last-child::after {
    display: none;
}

h4.noto {
    font-family: "Noto Serif JP", serif !important;
    margin-bottom: 30px;
    font-weight: 500;
    font-size: 19px;
}

.attention {
background:#f7f7f7;
padding:10px 20px;
}

.teiki-guide {
  display: flex;
  align-items: center; /* 縦中央 */
  gap: 12px;
  margin:20px 0;
      justify-content: center;
}

.teiki-guide img {
width:55px;
height:55px;
}

.teiki-guide h4 {
margin-bottom:0;
}

.info-grid.merit h4 {
  height: 60px; /* ←ここ調整（重要） */
  display: flex;
  align-items: center;   /* ←上下中央 */
  justify-content: center; /* ←中央寄せなら */
  text-align: center;
  }

.guide-box {
padding:30px 10px;
border:1px solid #efefef;
border-top:0;
}

.guide-head {
    text-align: center;
    background: #333;
    color: #fff;
    font-size: 0.8em;
    padding: 5px;
    border:2px solid transparent;
    }

.info-grid.flow .info-block:first-child .guide-head {
background:#4186cc;
}

.info-grid.flow .info-block:nth-child(2)  .guide-head {
background:#2764c9;
}

.info-grid.flow .info-block:nth-child(3)  .guide-head {
background:#333;
}
.info-grid.flow .info-block:nth-child(4)  .guide-head {
background:#fff;
border-color:#000;
color:#000;
}


/* スマホ */
@media (max-width:768px){

.info-grid{
  grid-template-columns:1fr;
  gap:15px;
}

.info-grid.three{
  grid-template-columns:1fr;
}

.info-grid.four{
  grid-template-columns:1fr;
}

.info-grid.flow .info-block::after {
        right: 50%;
        top: auto;
        bottom: -15px;

        transform: translateX(50%) rotate(90deg);
        /* ↓ 向きになる */
    }

.teiki-guide {
display:block;
margin:0;

}
.subscription-info .center {
    text-align: left;
}

.teiki-guide img {
margin:auto;
float:left;
margin-left:20px;
}
.guide-head {
    font-size: 0.7em;
    padding: 5px 3px;
}
.teiki-guide h4{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px;
}
}

p-search_menu__container__inner__heading {
margin-bottom:0;
}

/* 検索結果ページ */

.p-list_header__inner {

    max-width: 1000px;
    margin-bottom: 0;
    align-items: inherit;
}

.p-list_header {

    margin-top: 40px;
}


.c-search_cond__inner {
    width: min(100%, 1000px);
}

.p-list_header__inner .c-list_tool__num, .p-list_header__inner .c-list_tool__sort__label, .p-list_header__inner .c-list_tool__sort__wrap {

    margin-top: 80px;
}


@media (max-width:768px){
.p-list_header {

    margin-top: 40px;
}
.p-list_header__inner .c-list_tool__num, .p-list_header__inner .c-list_tool__sort__label, .p-list_header__inner .c-list_tool__sort__wrap {

    margin-top: 20px;
}
    .p-list_header {
        padding-right: 0;
        padding-left: 0;
    }
    
   .p-list_header .p-list_header__inner__title {
   text-align:center;
   }
    .c-search_cond {
        padding-right: 0;
        padding-left: 0;
        margin-top: 20px;
    }
}



/* ご利用ガイド */
#guide p {
  margin-bottom:20px;
}





#guide p img {
  margin:auto;
  margin-bottom:60px;
}

#guide a {
  text-decoration:underline;
}
#guide ul {
  margin-bottom:60px;
}
#guide ul li a {
  text-decoration:none;
  display:block;
    background:#eee;
  padding:10px 30px;
}

#guide ul li a:hover{
    background:#333;
  color:#fff;
}

#guide .img-border{
 border:1px solid #aaa; 
}

#guide .wide-img {
  max-width:75%;
}

.guide-link {
  margin-top:6px;
  margin-bottom:10px;
}
.guide-link a {
      padding: 2px;
    border: 1px solid #ccc;
    text-align: center;
    display: block;
    border-radius: 5px;
  font-size:13px;
}

.visible-pc {
  display:block;
}

.visible-sp {
  display:none;
}

ul.inner-cart{
  margin-bottom:15px;
}

.official-link {
  margin:auto;
  text-align:center;
}

.official-link a {
  display:inline-block;
}

.official-link:hover img {
  border:0;
  background:#fff;
opacity:0.6;  
}


.p-page_content__inner h2.u-text--subhead, h2.p-contact__head__title u-text--subhead {
    font-family: "Noto Serif JP", serif !important;
    font-weight: 600 !important;
    }

.official-link.side img {
  border:1px solid #000!important;
}

table.list th img {
width:150px;
}

#guide img {
width:inherit;
max-width:100%;
}

.p-page_content__inner p {
    font-size: inherit;
    }
    
.p-contact__head__notes {
margin-top:40px;
}

.p-account_form__inner .p-contact__link .p-contact__link__btn {
display:none;
}

.p-account_form__inner .p-contact__link::after {
content:'お問い合わせがございましたら、こちらのフォームよりお気軽にお尋ねください。';
display:block;
    font-family: "Noto Sans JP", sans-serif!important;
    font-weight:300;
    width:100%;
    margin-bottom:40px;
}

.p-contact__head {
    margin-top: 0px;
}

.c-form_table > tbody > tr > th, .c-form_table--confirm > tbody > tr > th {
    font-weight: 300;
        font-family: "Noto Sans JP", sans-serif!important;
}

.p-contact__head .u-text--subhead {
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 300;
}

.p-contact__head__notes {
    font-weight: 300;
}


#coupon-view {
display:none;
}

/* フッターメニュー */


.c-footer_menu{
  display: contents;
}

.c-footer_menu__list{
  display: contents;
}


.c-footer_menu__list__item {
    display: inline-block;
    white-space: nowrap;
}

@media screen and (min-width: 992px) {
    .c-footer_menus {
        flex: 1;
        margin-top: 0px;
        max-width: 80%;
    }
}

/* 商品一覧、箱入りバッジ */

.c-product_item{
  position:relative;
}

.c-product_item.badge-kiribox::before{
  content:"桐箱入";
  position:absolute;
  top:0px;
  left:0px;
  background:#f8efd3;
  color:#333;
  font-size:12px;
  padding:4px 10px;
  z-index:5;
}

.c-product_item.badge-kamibox::before{
  content:"紙箱入";
  position:absolute;
  top:0px;
  left:0px;
  background:#e3e3e3;
  color:#333;
  font-size:12px;
  padding:4px 10px;
  z-index:5;
}


/* 商品詳細、箱入りバッジ */
.c-product_img {
  position: relative;
}

.product-image-badge{
  position:absolute;
  top:0px;
  left:0px;
  padding:6px 12px;
  font-size:16px;
  z-index:30;
  pointer-events:none;
}

/* 桐箱 */

.product-image-badge.badge-kiri{
  background:#f8efd3;
  color:#333;
}

/* 紙箱 */

.product-image-badge.badge-paper{
  background:#e6e6e6;
  color:#333;
}





#description p strong {
font-weight:500;
}





.flow {
  padding: 20px 0px;
  text-align: center;
}

.flow-title {
  font-size: 28px;
  margin-bottom: 50px;
  font-weight: 500;
}

/* ===== 上の丸 ===== */

.flow-steps {
  display: flex;
ustify-content: space-between;
  align-items: center;
  gap: 26px;
  margin-bottom: 50px;
}

.flow-step {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.flow-step span {
  font-size: 40px;
  line-height:40px;
  font-family: "Noto Serif JP", serif !important;
}

.flow-step strong {
  font-size: 28px;
  font-weight: 500;
}

/* 色 */
.is-beige {
  background: #fdf3dc;
}

.is-gray {
  background: #efefef;
}



.flow-grid {
  display: grid;
  grid-template-columns: 1fr 40px 1fr 40px 1fr 40px 1fr;
  align-items: start;
}

/* STEP + CARDセット */
.flow-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

/* 矢印 */
.flow-arrow {
  position: relative;
  width: 60px;   /* ←長くする */
  height: 10px;  /* ←当たり判定広げる */
  justify-self: start;
  margin-left: -10px;
   align-self: center;
}

/* 線 */
.flow-arrow::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 1px; /* ←太く */
  top: 50%;
  left: 0;
  background: #9ca3af; /* ←色濃く */
  transform: translateY(-50%);
}

/* 矢印 */
.flow-arrow::after {
  content: "";
  position: absolute;
  left: 40px;
  top: 50%;
  transform: translateY(-50%);
  border-left: 8px solid #9ca3af; /* ←大きく */
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
}
.flow-card {
  padding: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(0,0,0,0.05);
}

.flow-head {
}

.teiki-guide {
paddingtop:20px;
}
.flow-card P {
padding:0 30px 30px;
text-align:left;
    min-height: 8em;
}
.flow-step span {
font-size:40px;
}





/* カテゴリーページ説明 */


.p-page_header__inner__lead {
    font-size: 16px;
    line-height: 2;
    text-align: left;
    margin-top: 30px;
}


.gift-bottom-note {
    margin-top: 30px;
}


/* 商品んページバリエーション選択 */
.c-product_info__form__variant > div > label {
    font-size: 16px;
}


.p-zero-result-recommend-title {
     font-size: 22px;
}


@media screen and (max-width: 719px) {
    .p-search_menu__container__searchbtn {
        width: 100%;
        bottom: 64px;
    }
    
    .p-search_menu__container__inner__search {
    margin-bottom:100px;
}
}

#view-payment-information > * {
    max-width: 1000px;
}


@media screen and (min-width: 1024px) {
    html body .c-form_table tr, html body .c-form_table--confirm tr {
        flex-direction: row;
        align-items: center;
        display:flex;
            gap: var(--table-data-gap);
    }
}


.c-form_table > tbody > tr > th {
    white-space: normal;
}

html body .c-form_table td, html body .c-form_table--confirm td {
    flex: 1 0 auto;
    width: var(--table-data-width);
}



/*  閲覧履歴 5カラム */
@media screen and (min-width: 720px) {
    .p-product_slider [data-slides="5"] .c-product_item__inner__eyecatch {
        width: auto;
    }
}


.p-custom_menu_panel__group.is-full {
  grid-column: 1 / -1;
}


.p-custom_menu_panel__group.is-full .p-custom_menu_panel__link {
padding:18px 20px 18px 6px;
}


@media (max-width: 719px) {
    .ecf-drawer .ecf-spmenu__leaf a .ecf-spmenu__text {
        grid-column: 2 !important;
        min-width: 0;
        font-weight: 500;
    }
    .ecf-spmenu__parent[href="/shop/selections/gift"] {
font-weight:500;
}
}


.l-header__inner__block__link .u-icon--heart:before {
    content: "\e90a";
    font-size:26px;
}

.l-header__inner__block__item, .l-header__inner__block__item--menu, .l-header__inner__block__item--search {
    margin-right: 15px !important;
}

.l-header__inner__block__link .u-icon--heart {
margin-right: -5px;
    margin-left: -5px;
    }



/*  お知らせページ */

.p-page_article__inner p {
    font-size: inherit;
}

.p-page_article__inner a {
    font-size: inherit;
}


/* 閉じるボタン */
.u-icon--close:before {
    font-size: 32px!important;
}


tr#view-input-card-cvv img {
width:360px;
}

tr#view-input-card-cvv p {
margin-bottom:0;
}


    .p-cart_content__inner {
        display: block;

    }
        .p-cart_content__inner__side {
        width: 100%;
    }

p.ecf-multiple-shipping-note {
  font-size: 14px;
  margin-bottom:0;
}

.p-checkout__list__block__inner__title.--shipping-information {
    display: block;
    justify-content: inherit;
    align-items: inherit;
}

.p-checkout__list__block__inner__title.--shipping-information > span {
    width: 280px;
    display: inline-block;
     vertical-align: top;
    }
    
.p-checkout__list__block__inner__title.--shipping-information #view-multiple-shipping-option {
    display: inline-block;

    padding-top: 15px;
}

@media screen and (min-width: 1024px) {
.p-checkout__list__block__inner__title.--shipping-information #view-multiple-shipping-option {
    display: inline-block;

    padding-top: 15px;
}
.c-gift-noshi-table__header:last-child {
    width: 6em;
}
table.c-gift-noshi-table td, table.c-gift-noshi-table th {
font-weight:300;
    padding-left: 30px;
    padding-right: 30px;
}

}

table.c-gift-noshi-table td, table.c-gift-noshi-table th {
font-weight:300;
}

.p-multiple_shipping_item__thumbnail {
    background-color: #f8f8f8;
}

.p-checkout_confirm__inner {
flex-direction: column;
}

.p-cart_content .c-billing_list {
margin:40px 0;
}

    .p-checkout_confirm__inner__list {
        order: 2;
        width:100%;
    }
        .p-checkout_confirm__inner__side {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
        .p-checkout_confirm__inner__side .c-billing_list {
        order: 2;
        
    }
    

@media (max-width: 719px) {
.p-checkout__list__block__inner__payment--select .c-form_table__select {
margin-left:0;
}
}

.c-form_table > tbody > tr > th, .c-form_table--confirm > tbody > tr > th {
    padding-right:0;
}


@media (max-width: 719px) {
.c-form_table__tel {
  display: flex;
  align-items: center;
  gap: 0;
}

.c-form_table__tel input {
  flex: 1;
  min-width: 0; /* ←これ重要（崩れ防止） */
}

.c-form_table__tel span {
  flex: 0 0 auto;
}
}

@media screen and (min-width: 1024px) {
    .c-form_table {
        --table-head-width: 280px;
        --table-data-width: 420px;
        --table-data-gap: 20px;
    }
}


#payment_method_description {
margin-top:5px;
}

@media screen and (max-width: 719px) {
    .c-form_table > tbody > tr > td input[type=text], .c-form_table--confirm > tbody > tr > td input[type=text], .c-form_table > tbody > tr > td input[type=email], .c-form_table--confirm > tbody > tr > td input[type=email], .c-form_table > tbody > tr > td input[type=tel], .c-form_table--confirm > tbody > tr > td input[type=tel], .c-form_table > tbody > tr > td input[type=number], .c-form_table--confirm > tbody > tr > td input[type=number], .c-form_table > tbody > tr > td input[type=password], .c-form_table--confirm > tbody > tr > td input[type=password] {
        padding: 0 10px;
    }
}


/* 贈りもの全商品ボタン */
.gift-all-link {
  display: inline-block;
  padding: 14px 40px;
  text-decoration: none;
  font-size: 18px;
  letter-spacing: 0.08em;
border:1px solid transparent;
  background: transparent;
border-radius:6px;
  transition: all 0.25s ease;
  background:#333;
  color:#fff;
  font-weight:300;
}

/* hover */
.gift-all-link:hover {
background:#fff;
color:#000;
border:1px solid #000;
}



/* 中央寄せしたい場合 */
.gift-all-wrap {
  text-align: center;
  margin-top: 60px;
}


/* 贈りものーご進物用包装ボタン */
.gift-wrap-link {
  display: inline-block;
  padding: 10px 20px;
  text-decoration: none;
  font-size: 16px;
  border:1px solid #000;
  letter-spacing: 0.08em;
  background: transparent;
border-radius:6px;
  transition: all 0.25s ease;
}

/* hover */
.gift-wrap-link:hover {
background:#333;
color:#fff;
}

/* 会員登録しながら購入のクーポン文言削除 */
.p-checkout__list__block__inner__content {
    display: none;
}


.p-gift__note-item {
display:block;
margin-bottom:0;
}

.p-gift__head {
display: table-cell;
    line-height: 1.2;
}
.p-gift .c-encircled_number {
vertical-align: middle;
}

.c-cart_item__gift-summary p, .c-cart_item__gift-info p{
margin-bottom:5px;
}



.p-gift__head .p-gift__text{
padding-left:12px;
}
.p-gift__head .p-gift__text {
    vertical-align: middle;
    font-size:18px;
    }



.p-gift__head .p-gift__note {

    margin-top: 10px;
    
    font-size:16px;
    margin-bottom:0;
    }

.c-cart_item.--gift .c-cart_item__info {
    gap: 0;
}
.c-cart_item__gift-details {
gap:0;
padding:0;
}

.c-cart_item__part-of-noshi.--grid-area-part-of-noshi .c-cart_item__text.u-color--head {
width:5em;
}



.c-cart_item__text.--gift-subtotal {
display:none;
}


.c-cart_item__info__title.u-text--subhead {
font-size:16px!important;
}



.p-cart_content__inner__product h2.u-text--head {
font-size:19px!important;
margin-top:30px;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight:400!important;
}


p.cart-check-note {
font-size:19px;
font-weight:400;
}




.c-form_table > tbody > tr > th, .c-form_table--confirm > tbody > tr > th {
white-space:nowrap;
    width: var(--table-head-width);
    letter-spacing: 0.65px;
    align-self: flex-start;
}
.c-form_table > tbody > tr > td, .c-form_table--confirm > tbody > tr > td {
flex: 1 0 auto;
    width: var(--table-data-width);
}

@media screen and (min-width: 1024px) {
.p-cart_content .c-billing_list {
padding: 30px 90px;
}

.c-billing_list__detail__item__tax {
    margin-left: auto;
        padding-left: 50%;

}
}


#AmazonPayButton {
height:66px!important;
    width: 300px!important;
}

.control-alert, .alert, .alert-danger {
    margin: 20px 0 40px;
}
    
/* マイページ関連 */




@media screen and (max-width: 719px) {
#customers-view .control-alert, #customers-view .alert, #customers-view .alert-danger, .control-alert.alert-success, .control-alert.alert-danger{
    margin: 15px 0;
}
.control-alert, .alert, .alert-danger {
    margin: 0;
}
}

#customers-sessions-sign-in-view .u-color__text--alert, #customers-view .u-color__text--alert, #customer-edit-view .u-color__text--alert{
    color: inherit;
}

#customers-view > .u-margin__top--60:first-child, #customer-edit-view > .u-margin__top--60:first-child, #customers-sessions-sign-in-view > .u-margin__top--60:first-child {

}


@media screen and (max-width: 719px) {
    .p-account__inner__menu {
        margin-top: 0;
    }
    #customers-view > .u-margin__top--60:first-child {
margin-top:0px;
}
}

.c-account_menu__list {
    padding-top: 15px;
}


/* 閲覧履歴 */

[data-section-type="browsing_history"] .u-margin__top--80 {
    margin-top: 30px;

}

[data-section-type="browsing_history"] .u-margin__top--80.u-margin__bottom--80 > div {
    margin-top: 30px;
}


/* 関連商品 */

.recommend_product_padding {
    padding-top: 0!important;
    padding-bottom: 60px!important;
}

.p-favorite__header {
    margin-top: 25px;
}
@media screen and (max-width: 719px) {
    .p-list_header__inner__title {
        margin-bottom: 0;
    }
}


/* .c-list_tool .c-list_tool__num {
margin-top:0;
}

@media screen and (max-width: 719px) {
.c-list_tool .c-list_tool__num {
margin-top:25px;
}
}
*/

.p-checkout__add-shipping-address {
width:auto;
}


@media screen and (max-width: 719px) {
.u-margin__top--60:has(> .p-account), .u-margin__top--60:has(> .p-login) {
  margin-top: 0 !important;
}
}

.p-login__inner__login.customers_sessions_login_form .c-form_table th {
width:9em;
font-size:16px;
}

.control-alert p {
margin-bottom:15px;
}


@media screen and (max-width: 719px) {
#customers-sessions-sign-in-view:has(.control-alert), #customers-view:has(.control-alert), #customer-edit-view:has(.control-alert){
padding-top:0!important;
}
}

.p-account__inner__content__title {
margin-top:25px;
}

.c-account_menu__toggle-button {
    background: #3e3e3e;
}

@media screen and (max-width: 719px) {
    .p-login {
        margin-top: 45px;
    }
    .control-alert + .p-login {
  margin-top: 0;
}
}

.p-account_form__inner__bottom {
    margin-top: 0;
}


.p-login__inner .p-page_header__inner h1 {
    text-align: center;
}

#customers-sessions-sign-in-view .u-margin__top--60 {
    margin-top: 40px;
}


#customers-sessions-sign-in-view {
padding-bottom:120px;
}

@media screen and (max-width: 719px) {
#customers-sessions-sign-in-view {
padding-bottom:0;
}
}

/*　お知らせ */
@media screen and (max-width: 719px) {
    .p-column_header__panel {
        padding-left: 15px;
        padding-right: 15px;
        }
        }




.p-cart_content__message-container .p-cart_content__message-body {
border:1px solid #E21E1E;
padding:10px 5px 10px 5px;
}

.p-cart_content__message-container .p-cart_content__message-body p{
margin-bottom:15px;
font-size:14px;
}

@media screen and (max-width: 719px) {
    .p-cart_content__message-container {
        margin: 0 auto 20px;
    }
}


/* control-alert が直下にある row は 0px を優先 */
.l-container__row.u-margin__top--60:has(> .control-alert){
  margin-top: 0 !important;
}

/* row が連続するときは 40px。
   ただし、次の row が control-alert を持つ場合は除外 */
.l-container__row.u-margin__top--60:has(+ .l-container__row.u-margin__top--60)
:not(:has(+ .l-container__row.u-margin__top--60:has(> .control-alert))){
  margin-top: 40px !important;
}


/* 検索 */
.p-search_menu__container__inner__search__part--flex {
    display: none;
}

.p-search_menu__container__inner__heading {
margin-bottom:0;
}


.p-checkout_confirm__inner__side span.u-text--body {
font-size:14px!important;
}

.p-account_form__inner .p-account_form__inner__bottom {
margin-top:45px;
}


p.attention {
background:f8f8f8;
color:#e21e1e;
}

h3.page-heading {
font-weight:600;
}

h3.page-heading.band {
border-top: 3px double #666;
padding: 10px 0;
border-bottom: 3px double #666;
text-align:center;
}

@media screen and (max-width: 719px) {
h3.page-heading.band {
text-align:left;
}

}

img.border {
border:1px solid #ccc;
}


.p-checkout__list__block {
    border-width: 0;
}

.c-form_table__checkbox__text.u-text--body a {
text-decoration:underline;
}

@media screen and (min-width: 720px) {
.c-form_table .remark-note {
    margin-top: -45px;
    }
    .p-checkout__list__block {
    padding-bottom: 20px;
    margin-bottom: 20px;
}
}

.c-cart_item__gift-target-items {
    display: block!important;
}

.c-cart_item__toggle-gift-target-items.js-gift__toggle.u-text--subhead {
margin-bottom:0;
}


.p-cart_content__message-container {
    display: none!important;
}


.c-cart_list__title.u-text--subhead span.c-cart_list__text.u-text--body.u-text--link {
    background: #323232;
    color: #fff !important;
    padding: 5px 10px;
    border-radius: 5px;
    font-weight:400!important;
    transition: 0.4s;
}

.c-cart_list__title.u-text--subhead span.c-cart_list__text.u-text--body.u-text--link :before {
  content: "\f044";
  font-family: "Font Awesome 6 Free";
  font-weight: 900; /* solid */
  display: inline-block;
  margin-right: 6px;
}


.c-cart_list__title.u-text--subhead span.c-cart_list__text.u-text--body.u-text--link:hover {
opacity:0.4;

}



/* bundle  9784 - 10386 */


@media screen and (max-width: 719px) {
  .p-new_product {
    padding: 0 20px;
  }
}
.p-new_product__title {
  text-align: center;
  margin-bottom: 40px;
}
.p-new_product__title__en {
  letter-spacing: 0.2em;
  margin-bottom: 10px;
}
.p-new_product__slider__track__list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 719px) {
  .p-new_product__slider__track__list {
    flex-wrap: wrap;
  }
}
.p-new_product__slider__track__list__item {
  width: calc((100% - 180px) / 4);
}
@media screen and (max-width: 719px) {
  .p-new_product__slider__track__list__item {
    width: calc((100% - 15px) / 2);
  }
  .p-new_product__slider__track__list__item:nth-child(n+3) {
    margin-top: 20px;
  }
}
.p-new_product__more {
  margin-top: 40px;
}
.p-new_product__more__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 320px;
  width: 100%;
  height: 60px;
  font-size: 16px;
  border-radius: 2px;
  transition: 0.4s;
  margin: 0 auto;
}
@media screen and (max-width: 719px) {
  .p-new_product__more__btn {
    font-size: 16px;
  }
}
.p-new_product__more__btn:hover {
  opacity: 0.4;
}
@media screen and (max-width: 719px) {
  .p-new_product__more__btn {
    max-width: 280px;
    height: 50px;
  }
}
.p-new_product .medium-up--one-1 {
  max-width: 720px;
  width: 100%;
  margin: 0 auto;
}
.p-new_product .medium-up--one-1:not(:first-child) {
  margin-top: 40px;
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-1 .c-product_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .p-new_product .medium-up--one-1 .c-product_item__inner__eyecatch {
    width: calc((100% - 40px) / 2);
  }
  .p-new_product .medium-up--one-1 .c-product_item__inner__content {
    width: calc((100% - 40px) / 2);
  }
  .p-new_product .medium-up--one-1 .c-product_item__inner__title {
    font-size: 24px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-1 .c-product_item__inner__title {
    font-size: 22px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-1 .c-product_item__inner__category {
    font-size: 16px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-1 .c-product_item__inner__category {
    font-size: 16px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-1 .c-product_item__inner__price {
    font-size: 24px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-1 .c-product_item__inner__price {
    font-size: 22px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-1 {
    width: 100%;
  }
  .p-new_product .medium-up--one-1:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-1.forced-single-row {
    width: 100%;
  }
  .p-new_product .medium-up--one-1.forced-single-row:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-2 {
    width: calc((100% - 60px) / 2);
  }
  .p-new_product .medium-up--one-2:nth-child(n+3) {
    margin-top: 40px;
  }
  .p-new_product .medium-up--one-2:nth-child(even) {
    margin-left: 60px;
  }
  .p-new_product .medium-up--one-2 .c-product_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .p-new_product .medium-up--one-2 .c-product_item__inner__eyecatch {
    width: calc((100% - 30px) / 2);
  }
  .p-new_product .medium-up--one-2 .c-product_item__inner__content {
    width: auto;
  }
  .p-new_product .medium-up--one-2 .c-product_item__inner__title {
    font-size: 24px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-2 .c-product_item__inner__title {
    font-size: 22px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-2 .c-product_item__inner__category {
    font-size: 16px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-2 .c-product_item__inner__category {
    font-size: 16px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-2 .c-product_item__inner__price {
    font-size: 24px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-2 .c-product_item__inner__price {
    font-size: 22px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-2.forced-single-row {
    width: 100%;
  }
  .p-new_product .medium-up--one-2.forced-single-row:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-2:not(.forced-single-row) {
    width: calc((100% - 15px) / 2);
  }
  .p-new_product .medium-up--one-2:not(.forced-single-row):nth-child(even) {
    margin-left: 0;
  }
  .p-new_product .medium-up--one-2:not(.forced-single-row):nth-child(n+3) {
    margin-top: 20px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-3 {
    width: calc((100% - 80px) / 3);
    margin-bottom:20px;
  }
  .p-new_product .medium-up--one-3:nth-child(n+4) {
    margin-top: 40px;
  }
  .p-new_product .medium-up--one-3:not(:nth-child(3n+1)) {
    margin-left: 40px;
  }
  .p-new_product .medium-up--one-3 .c-product_item__inner__title {
    font-size: 18px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-3 .c-product_item__inner__title {
    font-size: 18px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-3 .c-product_item__inner__category {
    font-size: 14px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-3 .c-product_item__inner__category {
    font-size: 14px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-3 .c-product_item__inner__price {
    font-size: 18px;
  }
}
@media screen and (min-width: 720px) and (max-width: 719px) {
  .p-new_product .medium-up--one-3 .c-product_item__inner__price {
    font-size: 18px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-3.forced-single-row {
    width: 100%;
  }
  .p-new_product .medium-up--one-3.forced-single-row:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-3:not(.forced-single-row) {
    width: 100%;
  }
  .p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(even) {
    margin-left: 15px;
  }
  .p-new_product .medium-up--one-3:not(.forced-single-row):nth-child(n+3) {
    margin-top: 20px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-4 {
    width: calc((100% - 120px) / 4);
    margin-bottom:20px;
  }
  .p-new_product .medium-up--one-4:not(:nth-child(4n+1)) {
    margin-left: 40px;
  }
  .p-new_product .medium-up--one-4:nth-child(n+5) {
    margin-top: 40px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-4.forced-single-row {
    width: 100%;
  }
  .p-new_product .medium-up--one-4.forced-single-row:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-4:not(.forced-single-row) {
    width: calc((100% - 15px) / 2);
  }
  .p-new_product .medium-up--one-4:not(.forced-single-row):nth-child(even) {
    margin-left: 15px;
  }
  .p-new_product .medium-up--one-4:not(.forced-single-row):nth-child(n+3) {
    margin-top: 20px;
  }
}
@media screen and (min-width: 720px) {
  .p-new_product .medium-up--one-5 {
    width: calc((100% - 80px) / 5);
  }
  .p-new_product .medium-up--one-5:not(:nth-child(5n+1)) {
    margin-left: 20px;
  }
  .p-new_product .medium-up--one-5:nth-child(n+6) {
    margin-top: 40px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-5.forced-single-row {
    width: 100%;
  }
  .p-new_product .medium-up--one-5.forced-single-row:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 719px) {
  .p-new_product .medium-up--one-5:not(.forced-single-row) {
    width: calc((100% - 15px) / 2);
  }
  .p-new_product .medium-up--one-5:not(.forced-single-row):nth-child(even) {
    margin-left: 15px;
  }
  .p-new_product .medium-up--one-5:not(.forced-single-row):nth-child(n+3) {
    margin-top: 20px;
  }
}
.p-show_selection {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
.p-show_selection > h1 {
  margin-top: 60px;
  margin-bottom: 40px;
}
@media screen and (max-width: 719px) {
  .p-show_selection > h1 {
    margin-top: 40px;
    margin-bottom: 20px;
  }
}
.p-selection__eye_catch img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.p-selection_eye_catch {
  padding-right: 40px;
  padding-left: 40px;
}

.p-selection_eye_catch_inner .p-selection__eye_catch {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 719px) {
  .p-selection_eye_catch {
    padding: 0;
  }
  .p-selection_eye_catch_inner {
    height: 350px;
    padding: 0;
  }
}
.p-category_panel__title {
  display: flex;
  flex-direction: column;
  place-items: center;
}
.p-category_panel__title__en {
  font-size: 24px;
  letter-spacing: 0.2em;
  margin-bottom: 10px;
}
@media screen and (max-width: 719px) {
  .p-category_panel__title__en {
    font-size: 22px;
  }
}
.p-category_panel__title__jp {
  font-size: 16px;
}
@media screen and (max-width: 719px) {
  .p-category_panel__title__jp {
    font-size: 16px;
  }
}
.p-category_panel__container {
  margin: 40px auto 0;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container {
    margin-top: 8vw;
  }
}
.p-category_panel__image {
  min-height: 0;
}
.p-category_panel__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@supports not (aspect-ratio: hoge) {
  .p-category_panel__image {
    width: 100%;
    position: relative;
    overflow: hidden;
  }
  .p-category_panel__image::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
  .p-category_panel__image img {
    position: absolute;
    inset: 0;
  }
}
.p-category_panel__container--flex .p-category_panel__content {
  display: flex;
  flex-wrap: wrap;
}
.p-category_panel__container--flex .p-category_panel__info {
  z-index: 1;
  width: calc(100% - 100px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  margin-bottom: 40px;
  margin-left: 50px;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__info {
    width: calc(100% - 60px);
    margin-bottom: 30px;
    margin-left: 30px;
  }
}
.p-category_panel__container--flex .p-category_panel__category {
  font-size: 20px;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__category {
    font-size: 19px;
  }
}
.p-category_panel__container--flex .p-category_panel__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 240px;
  width: 100%;
  height: 50px;
  font-size: 16px;
  border-radius: 2px;
  transition: 0.4s;
  margin-top: 20px;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__btn {
    font-size: 16px;
  }
}
.p-category_panel__container--flex .p-category_panel__btn:hover {
  opacity: 0.4;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__btn {
    max-width: 180px;
    height: 40px;
  }
}
.p-category_panel__container--flex .p-category_panel__link {
  display: none;
}
.p-category_panel__container--flex .p-category_panel__block {
  display: grid;
  height: 500px;
}
.p-category_panel__container--flex .p-category_panel__block > *, .p-category_panel__container--flex .p-category_panel__block::before, .p-category_panel__container--flex .p-category_panel__block::after {
  grid-area: 1/-1;
}
.p-category_panel__container--flex .p-category_panel__block:before {
  content: "";
  z-index: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.6) 100%);
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__block:before {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.6) 100%);
  }
}
.p-category_panel__container--flex .p-category_panel__block--1 {
  width: 100%;
}
.p-category_panel__container--flex .p-category_panel__block--2, .p-category_panel__container--flex .p-category_panel__block--4 {
  width: 50%;
}
.p-category_panel__container--flex .p-category_panel__block--3, .p-category_panel__container--flex .p-category_panel__block--6, .p-category_panel__container--flex .p-category_panel__block--9, .p-category_panel__container--flex .p-category_panel__block--12 {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--5 {
  width: 50%;
}
.p-category_panel__container--flex .p-category_panel__block--5:nth-child(n+3) {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--7 {
  width: 50%;
}
.p-category_panel__container--flex .p-category_panel__block--7:nth-child(3), .p-category_panel__container--flex .p-category_panel__block--7:nth-child(4), .p-category_panel__container--flex .p-category_panel__block--7:nth-child(5) {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--8 {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--8:nth-child(4), .p-category_panel__container--flex .p-category_panel__block--8:nth-child(5) {
  width: 50%;
}
.p-category_panel__container--flex .p-category_panel__block--10 {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--10:nth-child(5n+1), .p-category_panel__container--flex .p-category_panel__block--10:nth-child(5n+2) {
  width: 50%;
}
.p-category_panel__container--flex .p-category_panel__block--11 {
  width: 33.3333333333%;
}
.p-category_panel__container--flex .p-category_panel__block--11:nth-child(1), .p-category_panel__container--flex .p-category_panel__block--11:nth-child(2) {
  width: 50%;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--flex .p-category_panel__block:nth-child(n) {
    width: 100%;
    height: 60vw;
  }
}
.p-category_panel__container--grid {
  width: 86.1111111111vw;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--grid {
    padding: 0 4vw;
  }
}
.p-category_panel__container--grid .p-category_panel__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -2.7777777778vw -1.5625vw;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--grid .p-category_panel__content {
    margin: -5.3333333333vw -2vw;
  }
}
.p-category_panel__container--grid .p-category_panel__block {
  width: calc(100% / 4 - 3.125vw);
  margin: 2.7777777778vw 1.5625vw;
  display: grid;
  grid-template: "image" auto "info" auto/auto;
  gap: min(2.7777777778vw, 40px);
  transition: 0.4s;
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--grid .p-category_panel__block {
    width: calc(100% / 2 - 4vw);
    margin: 5.3333333333vw 2vw;
  }
}
@media screen and (max-width: 719px) {
  .p-category_panel__container--grid .p-category_panel__block {
    gap: 5.3333333333vw;
  }
}
.p-category_panel__container--grid .p-category_panel__block:hover {
  opacity: 0.4;
}
.p-category_panel__container--grid .p-category_panel__block--1 {
  height: auto;
}
.p-category_panel__container--grid .p-category_panel__block--1::before {
  content: none;
}
.p-category_panel__container--grid .p-category_panel__info {
  grid-area: info;
  z-index: 0;
}
.p-category_panel__container--grid .p-category_panel__category {
  text-align: center;
}
.p-category_panel__container--grid .p-category_panel__image {
  grid-area: image;
  z-index: 0;
}
.p-category_panel__container--grid .p-category_panel__image img {
  object-fit: contain;
  aspect-ratio: 1.3333333333;
}
@supports not (aspect-ratio: hoge) {
  .p-category_panel__container--grid .p-category_panel__image::before {
    padding-top: 75%;
  }
}
.p-category_panel__container--grid .p-category_panel__btn {
  display: none;
}
.p-category_panel__container--grid .p-category_panel__link {
  grid-row: 1/-1;
  grid-column: 1/-1;
  z-index: 1;
}



.u-contents {
    padding-top: 0;
    padding-bottom: 15px;
}

@media screen and (max-width: 1030px) {

.u-contents {
    padding-top: 20px;

}
}

/* ==================================================
   SPドロワーメニュー・修正版
================================================== */
@media screen and (max-width: 1030px) {

  /* ------------------------------
     ドロワー全体
  ------------------------------ */
  .l-main-navi.is-open {
    top: 37px;
    box-sizing: border-box;
    width: 100%;
    height: calc(100dvh - 47px);
    padding: 0 12px 100px;
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
  }

  .l-main-navi.is-open .l-main-navi__in {
    box-sizing: border-box;
    width: 100%;
    padding: 0;
  }

  .l-header.is-open .l-main-navi-list,
  .l-main-navi.is-open .l-main-navi-list {
    display: block !important;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  /* ------------------------------
     ご家庭用・贈りものなど
  ------------------------------ */
  .l-main-navi.is-open .l-main-navi-list__item {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid #333 !important;
  }

  .l-main-navi.is-open .l-main-navi-list__link {
    display: flex !important;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;
    position: relative;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 68px;
    margin: 0 !important;
    padding: 18px 42px !important;

    border: 0;
    background: #fff !important;
    color: #111;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
    white-space: normal;
    writing-mode: horizontal-tb !important;
  }

  .l-main-navi.is-open .l-main-navi-list__link > a {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    color: inherit;
    font: inherit;
    letter-spacing: 0;
    line-height: inherit;
    text-decoration: none;
    white-space: normal;
    writing-mode: horizontal-tb !important;
    pointer-events: none;
  }

  /* 大見出しの矢印 */
  .l-main-navi.is-open .l-main-navi-list__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;

    width: 20px;
    height: 6px;
    margin: 0;

    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

    transform: translateY(-50%) skewX(58deg);
    transform-origin: left center;
    display:none;
  }

  /* ------------------------------
     メガメニューを常時表示
  ------------------------------ */
  .l-main-navi.is-open .l-mega-menu {
    display: block !important;
    position: static !important;
    box-sizing: border-box;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    border: 0;
    background: #fff;
    box-shadow: none;
  }

  .l-main-navi.is-open .p-custom_menu_panel__menu {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ------------------------------
     通常カテゴリの商品：2列
  ------------------------------ */
  .l-main-navi.is-open .p-custom_menu_panel__groups {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0;

    box-sizing: border-box;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__group {
    display: block !important;
    float: none !important;

    box-sizing: border-box;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 「全て見る」は横幅いっぱい */
  .l-main-navi.is-open .p-custom_menu_panel__group.is-full {
    grid-column: 1 / -1;
  }

  /* ------------------------------
     商品リンク
  ------------------------------ */
  .l-main-navi.is-open .p-custom_menu_panel__item {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__link {
    display: flex !important;
    align-items: center;

    box-sizing: border-box;
    position: relative;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 64px;
    margin: 0 !important;
    padding: 14px 6px !important;

    border-bottom: 1px solid #eee;
    color: #111;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere;
    writing-mode: horizontal-tb !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__link > a {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;

    color: inherit;
    font: inherit;
    line-height: inherit;
    text-decoration: none;

    white-space: normal !important;
    writing-mode: horizontal-tb !important;
  }

  /* 商品画像 */
  .l-main-navi.is-open .p-custom_menu_panel__bullet {
    display: flex !important;
    flex: 0 0 28px;
    align-items: center;
    justify-content: center;

    width: 28px !important;
    min-width: 28px !important;
    margin: 0 8px 0 0 !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__bullet-icon {
    display: block;
    width: auto !important;
    max-width: 24px !important;
    height: auto !important;
    max-height: 30px !important;
    margin: 0 !important;
  }

  /* ------------------------------
     贈りもの
  ------------------------------ */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__groups {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
  }

  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__group {
    width: 100% !important;
  }



  /* ------------------------------
     桐箱入・缶物商品など
  ------------------------------ */
  .l-main-navi.is-open .c-collapsible-section,
  .l-main-navi.is-open .c-collapsible-section__header,
  .l-main-navi.is-open .c-collapsible-section__content {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .l-main-navi.is-open
  .c-collapsible-section__header
  .p-custom_menu_panel__link {
    min-height: 64px;
    padding: 18px 6px !important;
    font-size: 16px;
    font-weight: 500;
  }

  /* 中の商品を2列 */
  .l-main-navi.is-open .p-custom_menu_panel__secondary-list {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0;

    box-sizing: border-box;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .l-main-navi.is-open
  .p-custom_menu_panel__item.--secondary {
    width: 100% !important;
    min-width: 0 !important;
  }

  /* 商品リンク内の矢印は非表示 */
  .l-main-navi.is-open
  .p-custom_menu_panel__item.--secondary
  .p_custom_arrow {
    display: none !important;
  }
}

/* SP：PC用メガメニューの固定幅・中央配置を完全解除 */
@media screen and (max-width: 1030px) {

  .l-main-navi.is-open .p-custom_menu_panel,
  .l-main-navi.is-open .p-custom_menu_panel__menu,
  .l-main-navi.is-open .p-custom_menu_panel__groups {
    box-sizing: border-box !important;

    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    float: none !important;
    transform: none !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__group,
  .l-main-navi.is-open .c-collapsible-section,
  .l-main-navi.is-open .c-collapsible-section__header,
  .l-main-navi.is-open .c-collapsible-section__content,
  .l-main-navi.is-open .p-custom_menu_panel__secondary-list {
    box-sizing: border-box !important;

    position: static !important;
    right: auto !important;
    left: auto !important;

    float: none !important;
    transform: none !important;

    min-width: 0 !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* ご家庭用など直下の商品は2列 */
  .l-main-navi.is-open
  .l-main-navi-list__item:not(:nth-child(2))
  .p-custom_menu_panel__groups {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  /* 1商品分の幅 */
  .l-main-navi.is-open
  .l-main-navi-list__item:not(:nth-child(2))
  .p-custom_menu_panel__group {
    width: 100% !important;
  }

  /* 贈りものはカテゴリを縦に並べる */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__groups {
    display: flex !important;
    flex-direction: column !important;
  }

  /* 贈りものの商品部分だけ2列 */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__secondary-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  /* 「全て見る」は横一列 */
  .l-main-navi.is-open .p-custom_menu_panel__group.is-full {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}

@media screen and (max-width: 1030px) {

  .l-main-navi.is-open .l-mega-menu {
    position: static !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    inset: auto !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;

    transform: none !important;
    translate: none !important;
  }
}


@media screen and (max-width: 1030px) {

  /* 大見出し：ご家庭用・贈りもの */
  .l-main-navi.is-open .l-main-navi-list__link {
    min-height: 67px;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #333 !important;
    font-weight: 600;
    background:#f8f8f8!important;
  }

  /* 2列の商品リンク */
  .l-main-navi.is-open
  .p-custom_menu_panel__groups >
  .p-custom_menu_panel__group:not(.is-full):not(.--collapsible)
  .p-custom_menu_panel__link,

  .l-main-navi.is-open
  .p-custom_menu_panel__secondary-list
  .p-custom_menu_panel__link {
    min-height: 64px;
    padding: 12px 4px !important;
    border-bottom: 0 !important;
    font-weight: 600;
  }

  /* 2列商品エリアの下にだけ区切り線 */
  .l-main-navi.is-open
  .p-custom_menu_panel__secondary-list {
    padding-bottom: 0 !important;
    border-bottom: 1px solid #eee;
  }

  /* 商品画像 */
  .l-main-navi.is-open .p-custom_menu_panel__bullet {
    flex-basis: 26px;
    width: 26px !important;
    min-width: 26px !important;
    height: 32px;
    margin-right: 6px !important;
  }

  .l-main-navi.is-open .p-custom_menu_panel__bullet-icon {
    max-width: 23px !important;
    max-height: 28px !important;
  }

  /* 桐箱入・缶物商品・紙箱詰合せなど */
  .l-main-navi.is-open
  .c-collapsible-section__header
  .p-custom_menu_panel__link {
    min-height: 66px;
    padding: 17px 6px !important;
    border-bottom: 1px solid #eee;
    font-size: 16px;
    font-weight: 600 !important;
  }

  .l-main-navi.is-open
  .c-collapsible-section__header
  .p-custom_menu_panel__link > a {
    font-weight: 600 !important;
  }

  /* 「全て見る」などの横一列リンク */
  .l-main-navi.is-open
  .p-custom_menu_panel__group.is-full
  .p-custom_menu_panel__link {
    min-height: 66px;
    padding: 17px 6px !important;
    border-bottom:0;
    font-weight: 600;
  }

  /* 贈りもの内の通常1列リンク */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__group:not(.--collapsible)
  .p-custom_menu_panel__link {
    min-height: 66px;
    padding: 17px 6px !important;
    border-bottom:0;
  }
}

@media screen and (max-width: 1030px) {

  .l-main-navi.is-open .l-main-navi-list__link,
  .l-main-navi.is-open .l-main-navi-list__link > a {
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 600 !important;
    border-radius:0;;
  }
}



@media screen and (max-width: 1030px) {

  /* 贈りもの内の一列リンク・カテゴリ見出しの矢印 */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__group >
  .p-custom_menu_panel__item.--primary
  .p_custom_arrow,

  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .c-collapsible-section__header
  .p_custom_arrow {
    display: block !important;
    position: absolute;
    top: 50%;
    right: 18px;

    width: 20px;
    height: 6px;

    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

    transform: translateY(-50%) skewX(58deg);
    transform-origin: left center;
    display:none!important;
  }

  /* 矢印と文字が重ならないようにする */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__group >
  .p-custom_menu_panel__item.--primary
  .p-custom_menu_panel__link,

  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .c-collapsible-section__header
  .p-custom_menu_panel__link {
    padding-right: 44px !important;
  }

  /* 2列の商品リンクの矢印は引き続き非表示 */
  .l-main-navi.is-open
  .l-main-navi-list__item:nth-child(2)
  .p-custom_menu_panel__secondary-list
  .p_custom_arrow {
    display: none !important;
  }
}

ul.footer-link a:hover {
text-decoration:underline;
color:#fff;
}


@media screen and (max-width: 1030px) {
body.has-announce-bar .header + .l-main {
  padding-top: 64px!important; /* SPで必要な高さに調整してください */
}
}

@media screen and (max-width: 1030px) {
body.has-announce-bar .l-main-navi.is-open {
  top: 77px;
}
}


#history-section {
margin-top:90px;
}

@media screen and (max-width: 767px) {

.c-item-list__ttl {
    font-size: 13.6px;
}

.c-item-list__price {
    font-size: 12.6px;
}


.p-item-sort-list {
    font-size: 13.6px;
}

.p-page_header__inner__lead {
    font-size: 13.6px;
    }
    
.p-product-explain {
        font-size: 13.6px;
}

.p-product-info__ttl {
        font-size: 19px;
}



.p-ranking-list__ttl {
font-size:13.6px;
}

.p-product-recommend-list__ttl {
font-size:13.6px;
}
.p-line-informaiton ul li {
    font-size: 13.6px;
}

.c-footer_menu__list__item__inner {
font-size:14.8px;
}


}

.p-line-informaiton.u-container ul li {
line-height:1.8;
}
.p-line-informaiton.u-container ul li a {
display:block;
}

footer .l-footer__logo {
    margin-bottom: 45px;
  }

@media screen and (max-width: 767px) {
footer .l-footer__logo {
    margin: 20px 0 50px;
  }
}


@media screen and (max-width: 768px) {
.c-news_item.u-color__border--border {
font-size:13.6px;
}
}
@media screen and (max-width: 768px) {
.l-main.u-container .u-contents .p-page_header__inner {
    margin-top: 60px;
    }
}

@media screen and (max-width: 768px) {
.u-contents .page.section {
margin-top:60px;
}
}