@charset "utf-8";
/************************************************
カスタムスタイルシート読み込み▶▶▶←追加 
************************************************ */
@import url('custom_leftcategory.css'); /* レフトナビカテゴリ*/
@import url('custom_topcategory.css'); /* トップページ商品カテゴリ*/
@import url('custom_listcategory.css'); /* レフトナビトップページ以外のカテゴリ読み込み（下のカテゴリ）*/
@import url('custom_calendar.css'); /* 営業カレンダー*/
@import url('custom.css'); /* その他修正・変更*/


/************************************************
 import css
************************************************ */

/* ▶▶▶←追加ページ全体の背景色 */
body {
  background-color: #f2f2f2;
  margin: 0;
}

/* トップページ */
#container {
  width: 100%;
  max-width: 1300px;
  min-width: 980px;
}

.LC_Page_Index #container {
  width: 100%;
  max-width: 1300px;
  min-width: 980px;
}

/* 商品一覧 */
.plg_Raku2_LC_Page_Products_List #container {
  width: 100%;
  max-width: 1300px;
  min-width: 980px;
}

/* 商品詳細ページ */
.plg_Raku2_LC_Page_Products_Detail #container {
  width: 100%;
  max-width: 1300px;
  min-width: 980px;
}

.slick-slide img {
  width: 980px;
}

#main_column.colnum2{
  float: none!important;
  width: auto;
  padding-left: 255px;
  padding-right: 10px;
  margin-left: 0;
}

#main_column.colnum1 #mypagecolumn,
.custom_page #faqarea{
  width: 100%;
}

/*---------------------------------------
 headerエリア
---------------------------------------*/
.raku2_theme01 #header_wrap{
  background-color: #fff; /* ▶▶▶←追加ヘッダーのみ白背景*/
  border-bottom: 8px solid #007a8b; /* ▶▶▶←1px solid #ccc; →*/
  box-shadow: 0 3px 6px rgba(0,0,0,.26); /* ▶▶▶←追加影*/
  margin-bottom: 30px;
}

.raku2_theme01 #header_wrap #site_description{
  max-width: 1500px;
  margin: 0 auto 8px; /* ▶▶▶←8px auto;上0 / 下8px に変更→ */
}

.raku2_theme01 #header_wrap #header {
  max-width: 1500px;
  display: flex;
  align-items: end;
  justify-content: space-around;
  margin-bottom: 20px;
}

.raku2_theme01 .-flex0{ flex-grow: 0; }
.raku2_theme01 .-flex1{ flex-grow: 1; }
.raku2_theme01 .-flex2{ flex-grow: 2; }
.raku2_theme01 .-flex3{ flex-grow: 3; }
.raku2_theme01 .-box{ width: 100%; }

.raku2_theme01 .logo_area {
  margin: 0;
  width: auto;
  text-align: left;
}

.raku2_theme01 .logo_area img { max-height: 40px; }

/* ------------検索ボックス------------ */
.raku2_theme01 #header_wrap #header .block_outer #search_area{
  padding: 0 0 3px 0;
}

.raku2_theme01 #header_wrap #header .block_outer #search_area form#search_form{
  overflow: hidden;
  display: flex;
  align-items: center;
  border-radius: 20px;
  padding: 0 0 0 4%;
  background-color: #eeeeee;
}

.raku2_theme01 #header_wrap #header .block_outer #search_area form#search_form select{
  width: 100px;
  border: none;
  background-color: #eeeeee;
  outline: 0;
}

.raku2_theme01 #header_wrap #header .block_outer #search_area form#search_form input[type='text'],
.raku2_theme01 #header_wrap #header .block_outer #search_area form#search_form input[type='password'] {
  width: 95%;
  border: none;
  padding: 2px;
  background-color: #eeeeee;
  outline: 0;
}

.raku2_theme01 #header_wrap #header .block_outer #search_area .submit_btn{
  background-image:url('../img/common/submit-img.png');
  background-repeat:no-repeat;
  background-color: #f9be00; /* ▶▶▶←#aaaaaa; */
  background-size: 28%;
  background-position: center;
  border:none;
  width:80px;
  height:38px;
  cursor: pointer;
  transition:background 1s,color 1s;
}

.raku2_theme01 #header_wrap #header .block_outer #search_area .submit_btn:hover {
  background-color: #e0ac00; /* ▶▶▶←#ccc; */
}

/* -------------ヘッダー：カート・購入履歴・MYページなどのアイコンエリア------------- */
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea{
  display: flex;
  align-items: center;
  justify-content: right;
  position: relative;
  top: 8px;
}

/* ログイン時に表示される会社名・お名前エリアの見た目を調整 */
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_name{
  text-align: right;
  margin: 0 10px 0 20px;
  font-size: 90%;
  position: relative;
  top: -5px;
}

/* アイコンメニューの外枠：横幅・文字サイズ・余白をそろえる */
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_cart_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_history_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_new_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_top_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_logout_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_mypage_btn,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_login_btn{
  position: relative;
  font-size: 85%;
  margin-left: 2px;
  width: 74px;
  padding-top: 8px;
  text-align: center;
}

/* アイコン画像：画像サイズ・画像位置をそろえる */
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_cart_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_history_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_new_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_top_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_logout_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_mypage_btn img,
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_login_btn img{
  position: absolute;
  left: 21px;
  top: -28px;
  width: 32px;
}

/* カート数量バッジ：カート左上の丸数字 */
.raku2_theme01 #header_wrap #header .block_outer #header_login_area #header_userarea .userarea_cart_btn .quantity{
  position: absolute;
  top: -36px;
  left: 10px;
  background: var(--accent-color);
  border-radius: 50%;
  width: 20px;
  height: 20px;
  text-align: center!important;
  line-height: 20px;
  z-index: 9;
}

/* -------------特典------------- */
.raku2_theme01 #header_wrap #header_benefits a{
  background-color: #EFE56E;
  margin: 0 auto;
  border-radius: 8px;
  color: #1D1D1D;
  width: 98%;
  max-width: 1500px;
}

.raku2_theme01 #header_wrap #header_benefits a h2{
  background-color: var(--accent-color);
  text-align: right;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  padding: 8px 2vw;
  margin-right: 2vw;
}

.raku2_theme01 #header_wrap #header_benefits a,
.raku2_theme01 #header_wrap #header_benefits a ul li{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row;
}

.raku2_theme01 #header_wrap #header_benefits a ul{
  display: flex;
  align-items: center;
}

.raku2_theme01 #header_wrap #header_benefits a ul li{
  font-weight: 600;
  font-size: 0.8rem;
  margin: 5px 0;
}

.raku2_theme01 #header_wrap #header_benefits a ul li span{
  margin: 0 0.5vw;
  background-color: #fff;
  border-radius: 5px;
  padding: 8px 4px;
  width: 30px;
  text-align: center;
}

.raku2_theme01 #header_wrap #header_benefits a ul li span img{ max-width: 22px; }

/* -------------headerナビ------------- */
.raku2_theme01 #header_wrap #gloval_navi{
  border-bottom: none;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1500px;
  margin: 18px auto;
  font-size: 90%;
  width: 98%;
}

.raku2_theme01 #header_wrap #gloval_navi > ul{
  width: auto;
  margin: 0;
  display: flex;
  justify-content: space-between;
}

.raku2_theme01 #header_wrap #gloval_navi .shoppingt_btn > li > a,
.raku2_theme01 #footer_wrap #footer #info_area .shoppingt_btn a{
  background-color: var(--main-color);
  border-radius: 30px;
  color: #fff!important;
  padding: 12px 1.5vw;
  margin: 0 5px;
  min-width: 7vw;
  display: block
}

.raku2_theme01 #header_wrap #gloval_navi .shoppingt_btn li.header_cat_btn a:after{ color: #fff; }

.raku2_theme01 #header_wrap #gloval_navi .use_btn > li > a{
  position: relative;
  padding: 0 0 0 1em;
  margin: 0 0 0 1.5vw;
}

.raku2_theme01 #header_wrap #gloval_navi .use_btn > li > a::before {
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  width: 0px;
  height: 0px;
  border: 0.3em solid transparent;
  border-left: 0.4em solid var(--main-color);
  content: "";
}

#gloval_navi .header_catwrap ul.tree1-outer{
  top: 40px;
  left: 42%;
}

/*---------------------------------------
 mainエリア
---------------------------------------*/
.LC_Page_Index #container{
  max-width: 1500px;
  margin: 0 auto;
}
.LC_Page_Index div#main_column > div{
  margin-top: 15px;
}
.bx-wrapper img{
  border-radius: 8px;
}

#leftcolumn .raku2_theme01 .block_outer #category_area h2,
#main_column .raku2_theme01 #main_category_area h2,
#main_column .raku2_theme01 .recommend_list h2,
#main_column .history_list h2,
#main_column .raku2_theme01 .block_outer #news_area h2,
.raku2_theme01 #footer_wrap #footer #footer_category_area h2,
.raku2_theme01 #footer_wrap #footer #use_area h2,
.raku2_theme01 #footer_wrap #footer #info_area h2,
.raku2_theme01 .block_outer #exclusive_benefits_area h2,
.raku2_theme01 .block_outer #choose_area h2{
  background-color: transparent;
  color: var(--main-color);
  font-size: 140%;
  font-weight: 600;
  text-align: left;
  padding: 10px;
  margin: 0;
  border: none;
}

.raku2_theme01 #footer_wrap #footer #footer_category_area h2,
.raku2_theme01 #footer_wrap #footer #info_area h2,
.raku2_theme01 #footer_wrap #footer #use_area h2{
  font-size: 115%;
}

#leftcolumn .raku2_theme01 .block_outer #category_area h2 span,
#main_column .raku2_theme01 #main_category_area h2 span,
#main_column .raku2_theme01 .recommend_list h2 span,
#main_column .history_list h2 span,
#main_column .raku2_theme01 .block_outer #news_area h2 span,
.raku2_theme01 #footer_wrap #footer #footer_category_area h2 span,
.raku2_theme01 .block_outer #exclusive_benefits_area p,
.raku2_theme01 .block_outer #choose_area p{
  font-size: 80%;
  color: #aaa;
  margin: 0 15px;
  font-weight: 600;
}
#main_column .raku2_theme01 .recommend_list{
  margin-bottom: 0;
}
#main_column .raku2_theme01 .recommend_list .block_body{
  padding: 0 0 10px;
}
#main_column .raku2_theme01 .block_outer #news_area dl.newslist{
  display: flex;
  align-items: center;
}
#main_column .raku2_theme01 .block_outer #news_area .news_contents{
  overflow-y: hidden;
}

#main_column .raku2_theme01 #main_category_area ul{
  display: flex;
  align-items: flex-start;
  margin-bottom: 30px;
  text-align: center;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

#main_column .raku2_theme01 #main_category_area ul li{
  margin-bottom: 30px;
}
#main_column .raku2_theme01 #main_category_area ul img{
  max-width: 185px;
  margin: 10px;
}

#main_slide_image .bxslider li img{
  width: 980px;
}

/*---------------------------------------
 leftエリア
---------------------------------------*/
#leftcolumn{
  margin-left: 1%;
}
.side_column .block_body{
  border: none;
}

/* -------------カテゴリ------------- */
#leftcolumn .raku2_theme01 .block_outer #category_area li.level1 p a{
  position: relative;
  display: block;
  padding: 12px 10px;
  color: var(--main-color);
  text-decoration: none;
}


#leftcolumn .raku2_theme01 .block_outer #category_area li.level1 p a:before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #847563;
  border-right: solid 2px #847563;
  position: absolute;
  top: 50%;
  right:10px;
  margin-top: -4px;
  transform: rotate(45deg);
}

#leftcolumn .raku2_theme01 .block_outer #category_area li.level1:nth-child(odd) {
  background: #F0EBE6
}

/* -------------カレンダー------------- */
#leftcolumn .raku2_theme01 .block_outer #calender_area table {
  width: 100%;
  margin: 20px auto;
}

#leftcolumn .raku2_theme01 .block_outer #calender_area table .month {
  background: #eeeeee;
  border-radius: 30px;
  padding: 5px 0px;
  margin: 10px 0;
  color: #000 !important; /* ▶▶▶← 追加見出しの「2025年10月」を黒に*/
}

#leftcolumn .raku2_theme01 .block_outer #calender_area th {
  border-bottom: 1px solid transparent!important;
  background-color: transparent!important;
}

#leftcolumn .raku2_theme01 .block_outer #calender_area table td{
  border-bottom: none!important;
  border-right: none!important;
  padding: 6px;
}

#leftcolumn .raku2_theme01 .block_outer #calender_area .off {
  color: grey;
  background-color: #f0ebe5;
}

#leftcolumn .raku2_theme01 .block_outer #calender_area .today {
  background-color: #efe56e;
  font-weight: bold;
}

/*---------------------------------------
 fooderエリア▶▶▶←custom_footer.cssにて反映
---------------------------------------*/
.raku2_theme01 #footer_wrap {
  border-top: none;
  background-color: #e4dfda;
  padding: 0;
}

.raku2_theme01 #footer_wrap #footer {
  max-width: 1500px;
  width: 98%;
  display: flex;
  align-items: flex-start;
  margin: 40px auto;
}

/* -------------バナーエリア------------- */
.raku2_theme01 #footer_wrap #footer_banner{
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #fff;
}
.raku2_theme01 #footer_wrap #footer_banner #banner_area{
  max-width: 1500px;
  margin: 0 auto;
}
.raku2_theme01 #footer_wrap #footer_banner #banner_area div{
  margin: 10px;
}
.raku2_theme01 #footer_wrap #footer_banner #banner_area div img{
  width: 100%;
}
.raku2_theme01 #footer_wrap #copyright #company_area .logo_area{
  margin: 0 30px 0 0;
}

/* -------------fooderナビ------------- */
.raku2_theme01 #footer_wrap #footer #category_area,
.raku2_theme01 #footer_wrap #footer #use_area{
  padding: 0 4vw 0 0;
}

.raku2_theme01 #footer_wrap #footer #info_area{
  margin-left: auto;
  text-align: center;
  background-color: #fff;
  border-radius: 30px;
  padding: 18px;
}

.raku2_theme01 #footer_wrap #footer #info_area h2{
  text-align: center;
}

.raku2_theme01 #footer_wrap #footer #info_area .tel{
  font-size: 210%;
  font-weight: 600;
  margin-top: -12px;
}

.raku2_theme01 #footer_wrap #footer #info_area p{
  font-size: 90%;
  margin-bottom: 20px;
}

.raku2_theme01 #footer_wrap #footer ul{
  display: flex;
  flex-direction: column;
  background: none;
  text-align: left;
}

.raku2_theme01 #footer_wrap #footer ul li,
.raku2_theme01 #footer_wrap #footer ul li:first-child{
  border: none;
  margin: 0;
  padding: 0;
}

.raku2_theme01 #footer_wrap #footer ul li a{
  display: block;
  padding: 6px 10px;
  text-decoration: none;
}

.raku2_theme01 #footer_wrap #copyright{
  padding-top: 30px;
  padding-bottom: 30px;
}

.raku2_theme01 #footer_wrap #copyright #company_area,
.raku2_theme01 #footer_wrap #footer_banner #banner_area{
  display: flex;
  align-items: flex-start;
  margin-bottom: 30px;
  justify-content: center;
  text-align: left;
}

/*---------------------------------------
 加盟店ページ
---------------------------------------*/
#main_column #undercolumn #undercolumn_entry h2.title{
  font-size: 180%;
  border-bottom: 3px solid #857663;
  margin: 30px auto 60px;
  width: 18%;
}

#main_column #undercolumn #undercolumn_entry .progressbar{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-evenly;
  align-items: flex-start;
  margin: 30px auto;
}

#main_column #undercolumn #undercolumn_entry .progressbar li{
  position: relative;
}

#main_column #undercolumn #undercolumn_entry .progressbar li:after{
  position: absolute;
  z-index: -1;
  top: 50px;
  left: 0;
  width: 360px;
  height: 1px;
  content: '';
  background-color: #857663;
}

#main_column #undercolumn #undercolumn_entry .progressbar li.active{
  background-color: #847563!important;
  color: #ffffff!important;
}

#main_column #undercolumn #undercolumn_entry .progressbar li:last-child:after {
  content: none;
}

#main_column #undercolumn #undercolumn_entry .progressbar li.item{
  background-color: #F0EBE6;
  text-align: center;
  color: #847563;
  font-weight: 600;
  padding: 15px 20px;
  border-radius: 8px;
  width: 60px;
}

#main_column #undercolumn #undercolumn_entry .progressbar li.item span{
  display: block;
}

#main_column #undercolumn #undercolumn_entry table,
#main_column #undercolumn #undercolumn_entry table#entry_input th,
#main_column #undercolumn #undercolumn_entry table#entry_input td{
  border: none;
  background-color: transparent;
}

#main_column #undercolumn #undercolumn_entry table#entry_input input[type='text'],
#main_column #undercolumn #undercolumn_entry table#entry_input input[type='password'],
#main_column #undercolumn #undercolumn_entry table#entry_input select{
  height: 40px;
  border: none;
  background-color: #eeeeee;
}

#main_column #undercolumn #undercolumn_entry table#entry_input td .box300{
  width: 90%;
}
#main_column #undercolumn #undercolumn_entry table#entry_input td .box30,
#main_column #undercolumn #undercolumn_entry table#entry_input td .box150{
  width: 50%;
}
#main_column #undercolumn #undercolumn_entry table#entry_input td .box10,
#main_column #undercolumn #undercolumn_entry table#entry_input td .box120{
  width: 25%;
}
#main_column #undercolumn #raku2_kiyaku_text p{
  text-align: center;
}

/*オーダーシート文字フォント*/
td.raku2_list_product_name p { font-size: 1.5em; }

/*--------------------------------------- 
mainエリア：TOP：カード調ボックス（共通・ランキング含む）▶▶▶←追加
 ---------------------------------------*/
.LC_Page_Index #news_area,
.LC_Page_Index #main_category_area,
.LC_Page_Index .history_list,
.LC_Page_Index .recommend_list,
.LC_Page_Index .ranking_list {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 6px;
  box-shadow: 0 3px 8px rgba(0,0,0,.15);
  padding: 20px 24px;
  margin-bottom: 30px;
}

/*--------------------------------------- 
mainエリア：TOP：ランキング見出し（テンプレ優先度対策）▶▶▶←追加
 ---------------------------------------*/
#main_column .ranking_list > h2 {
  font-family: inherit !important; /* ← テンプレ側のフォント指定を打ち消し */
  font-size: 140% !important;
  font-weight: 600 !important;
  line-height: 1.4;
  color: var(--main-color) !important;
  background: transparent;
  padding: 10px;
  margin: 0;
  border: 0;
}

#main_column .ranking_list > h2 span {
  font-family: inherit !important;
  font-size: 80% !important;
  color: #aaa !important;
  margin-left: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .06em;
}


/*--------------------------------------- 
▶▶▶←追加（ネットショップ様依頼）
 ---------------------------------------*/


/* お知らせのrss表記削除 */
span.rss {
    display: none !important;
}


/* 新着順を非表示にする */
a.raku2_sort_date {
    display: none !important;
}

/* 一覧ページの「カゴの中を見る」→「カートの中を見る」に見せ替え */
#detailarea .cartchange_btn [id^="orderlist_change"]{
  position: relative;
  color: transparent !important;   /* ← 元テキストは透明（高さは維持） */
}

#detailarea .cartchange_btn [id^="orderlist_change"]::after{
  content: "カートの中を見る";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff !important;
  font-size: 12px;
  letter-spacing: 2px;
  pointer-events: none;
}

/* 一覧ページ：『カゴの内容を更新する』→『カートの内容を更新する』*/
body.plg_Raku2_LC_Page_Products_List #button_lower .btn_area.btn_type_def li:first-child a { 
position: relative; 
}
body.plg_Raku2_LC_Page_Products_List #button_lower .btn_area.btn_type_def li:first-child a .kago_update_btn {
 color: transparent !important; 
}
body.plg_Raku2_LC_Page_Products_List #button_lower .btn_area.btn_type_def li:first-child a::after {
  content: "カートの内容を更新する";
  position: absolute; inset: 0;
  display: flex; 
  align-items: center; 
  justify-content: center;
  white-space: nowrap;
  color: inherit; 
  font: inherit; 
  line-height: inherit;
  pointer-events: none;
}
/* 幅調整（必要なら） */
body.plg_Raku2_LC_Page_Products_List #button_lower .btn_area.btn_type_def li:first-child{
  width: auto !important;
}
body.plg_Raku2_LC_Page_Products_List #button_lower .btn_area.btn_type_def li:first-child a{
  width: auto !important;
  padding: 10px 18px !important;
  box-sizing:
  border-box;
  white-space: nowrap;
}

/* 念のため：一覧以外では ::after を出さない */
body:not(.plg_Raku2_LC_Page_Products_List)
  #button_lower .btn_area.btn_type_def li:first-child a::after {
  content: none !important; 
}


/* 固定下部の「カゴ更新」→「カート更新」だけ適用 */
#order_list_btn a{
  position: relative;
  display: inline-block;
  min-width: 180px;     /* 横幅の目安。必要に応じて 160〜220px で調整 */
  height: 48px;         /* 高さ（ここを 44 / 52 など好みに変更OK） */
  line-height: 48px;    /* テーマ起因のズレ防止のため合わせて指定 */
  padding: 0 22px;      /* 左右だけ余白（高さは height で管理） */
  box-sizing: border-box;
  text-align: center;
  white-space: nowrap;
}

#order_list_btn a .kago_update_fixbtn{
  color: transparent !important;
  font-size: 0 !important;  /* 元テキストの占有を無くす */
}

#order_list_btn a::after{
  content: "カート更新";
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;   /* 中央揃え */
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  pointer-events: none;
}

/* 念のため：既存の before/after 置換があれば無効化 */
#order_list_btn a .kago_update_fixbtn::before,
#order_list_btn a .kago_update_fixbtn::after{
  content: none !important;
}

/* PC商品詳細：ラベル「商品コード」→「商品番号」に見せ替え */
body.plg_Raku2_LC_Page_Products_Detail #detailarea dl.product_code > dt{
  position: relative;
  font-size: 0 !important;
  white-space: nowrap;
}

body.plg_Raku2_LC_Page_Products_Detail #detailarea dl.product_code > dt::before{
  content: "商品番号：";
  display: inline-block;
  font-size: 13px;
  font-weight: inherit;
  line-height: 1.4;
  color: #333; 
  letter-spacing: inherit;
}




/* ===========================
  一覧（PC）：商品画像を大きく
  - 1列目の幅を広げる
  - 幅40%指定と max-width:90px を両方つぶす
=========================== */

/* 列幅（col と td の両方に当てて保険） */
body.plg_Raku2_LC_Page_Products_List table.layout_orderlist colgroup col:first-child{
  width: 120px !important;      /* ←好みで 120〜180px に調整 */
}
body.plg_Raku2_LC_Page_Products_List table.layout_orderlist td:nth-child(1){
  width: 120px !important;
}

/* テーマの「幅40%」を打ち消しつつ、画像サイズを拡大 */
body.plg_Raku2_LC_Page_Products_List table.layout_orderlist td:nth-child(1) img{
  width: auto !important;        /* ← 40% を無効化 */
  max-width: 110px !important;   /* ← 列幅より少し小さめに */
  height: auto !important;
  display: inline-block;
}

/* p.product_image 経由の max-width:90px も上書き */
body.plg_Raku2_LC_Page_Products_List table.layout_orderlist .product_image img{
  width: auto !important;
  max-width: 110px !important;
  height: auto !important;
}

/* 商品詳細：関連カテゴリブロックを非表示（PC/モバイル共通） */
#detailarea dl.relative_cat,
#detailarea .relative_cat{
  display: none !important;
}

/* 念のため：関連カテゴリの直後にできる余白を詰める */
#detailarea dl.relative_cat + *{
  margin-top: 0 !important;
}

/* ===========================
  PC：ご注文完了ページへ → 注文を確定する
  （元の色/サイズ/フォントはボタンに合わせる）
=========================== */

/* 親LIを基準に（:has で対象ボタンの親だけ） */
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal_raku2_complete),
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal.raku2_complete),
#undercolumn_shopping .btn_area.btn_type_def li:has(> #refusal.raku2_complete) {
  position: relative;
}

/* 元の文字は見えなくする（高さは維持） */
#undercolumn_shopping .btn_area.btn_type_def li > input#refusal_raku2_complete,
#undercolumn_shopping .btn_area.btn_type_def li > input#refusal.raku2_complete,
#undercolumn_shopping .btn_area.btn_type_def li > #refusal.raku2_complete {
  color: transparent !important;
  text-shadow: none !important;
}

/* 親LIの疑似要素でラベルを上書き表示 */
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal_raku2_complete)::after,
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal.raku2_complete)::after,
#undercolumn_shopping .btn_area.btn_type_def li:has(> #refusal.raku2_complete)::after {
  content: "注文を確定する";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 1;

  /* ボタンの見た目に寄せる（基本は継承） */
  font-family: inherit;
  font-weight: inherit;
  font-size: 133%;      /* テーマのボタンに合わせて調整。違えばここだけ直せばOK */
  letter-spacing: inherit;
  color: #fff !important;  /* テーマのボタン文字色が白想定。違えば変更 */
}

/* 保険：他の before/after が干渉していたら無効化 */
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal_raku2_complete)::before,
#undercolumn_shopping .btn_area.btn_type_def li:has(> input#refusal.raku2_complete)::before,
#undercolumn_shopping .btn_area.btn_type_def li:has(> #refusal.raku2_complete)::before {
  content: none !important;
}





/* クイックオーダーのステップフローカートアイコンを非表示 */
#mycontents_area .astep img[src*="/img/picture/cart.svg"]{
  display: none !important;
}



/* 商品詳細：パンくずの各項目を縦中央にそろえる */
.plg_Raku2_LC_Page_Products_Detail #main_column ol.raku2_breadcrumbs > li{
  vertical-align: middle !important;  /* 兄弟 li（inline-block）の縦中央 */
}

/* a/span 等が入っている場合に備えて中身も中央寄せ */
.plg_Raku2_LC_Page_Products_Detail #main_column ol.raku2_breadcrumbs > li > a,
.plg_Raku2_LC_Page_Products_Detail #main_column ol.raku2_breadcrumbs > li > span{
  display: inline-block;
  vertical-align: middle;
  line-height: 1.4;
}

/* 商品詳細：送料別バッジを非表示 */
#detailarea dd.deliv_fee .not_include,
#detailarea .deliv_fee .not_include,
#detailarea .deli_fee .not_include {  /* 念のため表記ゆれ対応 */
  display: none !important;
}

/*--------------------------------------- 
▶▶▶←追加（デモ表示バナー）
 ---------------------------------------*/
.raku2_theme01 #demo_notice{
  width: 98%;
  max-width: 1500px;
  margin: 0 auto 8px;
  background: #fde8e8;
  color: #7a1e1e;
  border: 1px dashed #f3b3b3;
  border-radius: 6px;
  padding: 8px 12px;
  font-weight: 600;
  text-align: center;
}
.raku2_theme01 #demo_notice .label{
  display: inline-block;
  font-size: .75rem;
  line-height: 1;
  padding: 4px 6px;
  margin-right: 8px;
  background: #7a1e1e;
  color: #fff;
  border-radius: 4px;
  letter-spacing: .06em;
}
/* ▲ デモ表示バナー */
