@charset "utf-8";
/*
	WooCommerce関連のスタイル
*/


/* ----------------------------------------------------------------------
  ヘッダーバー（ボタン系）
---------------------------------------------------------------------- */

/* お気に入り、アカウント、カートボタン */
#header_shop_menu {

	display:flex; gap:0 10px; margin-right:30px; z-index:3;

	.p-header-membermenu { width:26px; height:70px; position:relative; }
	.p-header-membermenu-button { width:100%; height:100%; display:block; position:relative; }
	.p-header-membermenu-button:before {
    display:block; pointer-events:none; position:absolute; left:0px; top:50%; transform: translateY(-50%);
    background:#fff; font-size:26px; width:1em; height:1em; content:'';
	}
	body.start_scroll & .p-header-membermenu-button:before,
	body.page-template-page__lp:not(:has(#lp_page_header .bg_image)) & .p-header-membermenu-button:before,
	body:not(:has(#page_header, #no_search_result .bg_image)):not(.home.index_hero_header_layout_type1):not(.lp_design_normal) & .p-header-membermenu-button:before { background:#000; }
	.p-header-membermenu-button-wishlist:before { mask:var(--tcd-icon--heart) no-repeat center / 1.0em; }
	.p-header-membermenu-button-mypage:before { mask:var(--tcd-icon--account) no-repeat center / 0.9em; }
	.p-header-membermenu-button-cart:before { mask:var(--tcd-icon--cart) no-repeat center / 0.85em; }

	@media(hover: hover) {
		#header:hover & .p-header-membermenu-button:before { background:#000; }
		.p-header-membermenu-button:hover:before { background:#999 !important; }
	}
  @media (max-width: 1200px) {
		margin-right:55px; 
		.p-header-membermenu { height:60px; }
		.p-header-membermenu-button-wishlist { display:none; }
		.p-header-membermenu-button-mypage { display:none; }
  }
	
	/* バッジ（数字部分） */
	.p-header-membermenu-badge:empty { display: none; }
	.p-header-membermenu-badge:not(:empty) {
		position: absolute; top:13px; right:-7px; display: grid; place-items: center;
		min-width: 1.5em; height: 1.5em; font-size: 12px; color: #fff; white-space: nowrap; padding-inline: 0.3em;
		background: var(--tcd-accent-color); border-radius: 100%; pointer-events: none;
	}

}




/* ----------------------------------------------------------------------
  ヘッダーバー（ドロップダウンで表示されるエリア）
---------------------------------------------------------------------- */

/* 会員、カート共通 */
.p-header-membermenu-content {
	position: absolute; top: 100%; right: -10px; width: 320px; padding: 30px; font-size: 14px; overflow:visible !important;
	color:#fff; background:var(--tcd-accent-color);
	visibility: hidden; opacity: 0; transition-timing-function: ease-out;	 transition-duration: 0.2s;	transition-property: opacity, visibility;
}
.p-header-membermenu-content a { color:#fff; }
body.megamenu_light {
	.p-header-membermenu-content { background:#fff; color:#000; box-shadow: 0 0 25px 0px rgba(0,0,0,0.1); }
	.p-header-membermenu-content:before { content:''; display:block; position:absolute; top:-25px; left:-25px; width:calc(100% + 50px); height:25px; background:#fff; z-index:10; pointer-events:none; }
	.p-header-membermenu-content a { color:#000; }
}
#js-header-memberbox { display:none; /* ログインフォームは一旦隠します */ }
@media(hover: hover) {
	.p-header-membermenu:hover .p-header-membermenu-content { visibility: visible; opacity: 1; }
	.p-header-membermenu-content a:hover { color:rgba(255,255,255,0.5) !important; }
	body.megamenu_light {
		.p-header-membermenu-content a:hover { color:#999 !important; }
	}
}
@media (max-width: 1200px) {
	.p-header-membermenu-content { display:none; }
}
.p-header-view-cart {
	max-height: 60vh;
	overflow: auto;
	--tcd-mini-cart-list-margin: -10px 0 0;
	--tcd-mini-cart-item-remove-display: none;
	--tcd-mini-cart-item-padding: 10px 0;
	--tcd-mini-cart-item-border: none;
	--tcd-mini-cart-total-display: none;
	--tcd-mini-cart-button-list-padding: 20px 0px 0px;
	--tcd-mini-cart-button-list-border: none;
	--tcd-button-min-width: 100%;
	--tcd-button-height: 50px;
}


/* 会員メニュー */
.p-header-memberbox { text-align: center; }
.p-header-memberbox-login-form { display: grid; align-content: start; row-gap: 20px; }


/* テキスト */
.p-header-memberbox-login-input { width: 100%; height: 50px; padding-inline: 20px; color: #000; background: #fff; border: none; }
body.megamenu_light .p-header-memberbox-login-input { background:#f6f6f6; }


/* チェックボックス */
.p-header-memberbox-login-rememberme { margin-bottom: 10px; }
.p-header-memberbox-registration { margin-top: 30px; }


/* ログインボタン */
.p-header-memberbox-login-button .c-button,
.p-header-memberbox-registration-button.c-button,
#js-header-view-cart .buttons .c-button { border:1px solid rgba(255,255,255,0.5) !important; color:#fff; }
.p-header-memberbox-registration-button.c-button { margin-top:-10px; }
body.megamenu_light {
	.p-header-memberbox-login-button .c-button,
	.p-header-memberbox-registration-button.c-button,
	#js-header-view-cart .buttons .c-button { border:1px solid var(--tcd-accent-color) !important; background:var(--tcd-accent-color); color:#fff; }
}
@media(hover: hover) {
	.p-header-memberbox-login-button .c-button:hover,
	#js-header-view-cart .buttons .c-button:hover { color:rgba(255,255,255,0.5) !important; }
	body.megamenu_light {
		.p-header-memberbox-login-button .c-button:hover,
		.p-header-memberbox-registration-button.c-button:hover,
		#js-header-view-cart .buttons .c-button:hover { background-color:transparent; color:var(--tcd-accent-color) !important; }
	}
}




/* ----------------------------------------------------------------------
  商品アーカイブページ
---------------------------------------------------------------------- */

/* レイアウト */
#product_archive_wrap { display:flex; flex-wrap:nowrap; justify-content:space-between; padding:0px 60px 150px; }
body.sidebar_left #product_archive_wrap { flex-direction:row-reverse; }
#product_archive_wrap .main_col { width:calc(100% - 360px); }
#product_archive_wrap .l-sidebar { width:300px; flex:0 0 auto; }
body.sidebar_none #product_archive_wrap { display:block; padding-left:0; padding-right:0; margin:0 auto; width:1000px; }
body.sidebar_none #product_archive_wrap .main_col { width:100%; }
body:has(#product_archive_wrap) #content_header { margin-bottom:120px; }
@media (max-width: 1200px) {
	#product_archive_wrap { display:block; }
	#product_archive_wrap .main_col { width:100%; }
  #product_archive_wrap .l-sidebar { width:100%; margin:100px 0 0; }
  #product_archive_wrap .l-sidebar .p-widget-list { grid-template-columns:repeat(3, 1fr) !important; }
}
@media (max-width: 1120px) {
	body.sidebar_none #product_archive_wrap { margin:0 60px; width:auto; }
}
@media (max-width: 1000px) {
  #product_archive_wrap .l-sidebar .p-widget-list { grid-template-columns:repeat(2, 1fr) !important; }
	body:has(#product_archive_wrap) #content_header { margin-bottom:100px; }
}
@media (max-width: 767px) {
	#product_archive_wrap { padding:0px 20px 40px; }
	body.sidebar_none #product_archive_wrap { margin:0 20px; }
  #product_archive_wrap .l-sidebar { margin:40px 0 0; }
  #product_archive_wrap .l-sidebar .p-widget-list { grid-template-columns:repeat(1, 1fr) !important; }
	body:has(#product_archive_wrap) #content_header { margin-bottom:40px; }
}


/* ソートボタン（商品一覧の上） */
#product_archive_wrap {

	.p-product-archive-list-header { margin-bottom:40px; display:flex; justify-content:space-between; }
	.p-product-archive-list-header-total { float:none; }
	.p-product-cards { width:100%; }
	.p-product-archive-list-header:not(:has(.woocommerce-ordering-sort)):not(:has(.woocommerce-ordering-instock)) { display:none; }
	.p-no-products-found { text-align:center; }
	.woocommerce-notices-wrapper { margin-bottom:40px; }
	
	@media (max-width: 767px) {
		.woocommerce-ordering { width:100%; }
	}

}


/* 商品一覧（全ページ共通） */
.p-product-cards {

	gap: var(--tcd-wc-product-cards-gap, 30px 14px) !important;
	body.sidebar_none & {   grid-template-columns: repeat(var(--tcd-wc-product-cards-col, 4), 1fr); }
	
}
.p-product-cards-item:has(.p-cb-product-ranking-item-rank) .p-wc-template-loop-flash { left:auto; right:15px; top:15px; }
.p-product-cards-item-image { border-radius:0 !important; }
.p-product-cards-item-title { padding:0 20px !important; }
.p-product-cards-item-actions { border-radius:0 !important; }
.p-product-cards-item-actions-item-cart a { text-indent:-500px; }
.p-product-cards-item-actions-item-cart a:before { transition:none !important; }
.p-product-cards-item ins { text-decoration:none; }
.p-cb-product-ranking-item-rank { width:45px !important; height:45px !important; display:grid !important; place-items:center !important; top:0 !important; left:0 !important; right:auto; bottom:auto; inset:0 !important; padding:0 !important; font-size: 14px !important; font-weight: 400 !important; background:#fff !important; border-radius:0px !important; margin:unset !important; z-index:1 !important; }
.p-cb-product-ranking-item-rank-label { display:none !important; }
.p-cb-product-ranking-item-rank-number { font-size: 14px !important; color:#000; }/*700以下は2カラム */
@media (max-width: 767px) {
	.p-cb-product-ranking-item-rank { width:35px !important; height:35px !important; }
	.p-cb-product-ranking-item-rank-number { font-size:12px !important; }
}
@container main (max-width: 700px) {
  .p-product-cards {
    --tcd-wc-product-cards-col: var(--tcd-wc-product-cards-col-s, 3) !important;
    --tcd-wc-product-cards-gap: var(--tcd-wc-product-cards-gap-s, 20px 20px) !important;
  }
}
@container main (max-width: 550px) {
  .p-product-cards {
    --tcd-wc-product-cards-col: var(--tcd-wc-product-cards-col-s, 2) !important;
  }
}
/* カルーセル */
.p-sc-product-slider ul.splide__pagination { margin-top:50px !important; }
@media (max-width: 767px) {
	.p-sc-product-slider ul.splide__pagination { margin-top:30px !important; }
	.p-product-cards-item-title { padding:0 !important; }
}


/* トップページとランキングページの商品一覧 */
.salon_product_list {

	width:1000px; margin:0 auto; display:grid; gap:20px; grid-template-columns:repeat(2, 1fr);

	body.page-template-page__ranking & .p-product-cards-item { opacity:0; transition:opacity 0.8s ease 0.2s; }
	body.page-template-page__ranking & .p-product-cards-item.is-active { opacity:1; }
	
	.woocommerce-LoopProduct-link { display:flex; flex-wrap:nowrap; }
	.p-product-cards-item-image { width:50% !important; height:auto !important; aspect-ratio:1/ 1 !important; margin:0 !important; }
	.p-product-cards-item-content { width:50%; height:auto; aspect-ratio:1 /1; border:1px solid #ddd; border-left:none; background:#fff; display:flex; flex-direction:column; justify-content:center; }
	.p-product-cards-item-actions { width:50%; height:auto; aspect-ratio:1 /1; }
	.p-product-cards-item-title { padding:0 30px !important; }
  .p-product-cards-item:has(.p-cb-product-ranking-item-rank) .p-wc-template-loop-flash { left:calc(50% - 10px); transform: translate3d(-100%,0,0); right:auto; }

	@media (max-width: 1120px) {
		width:auto; margin:0 60px;
		body.page-template-page__ranking & { margin:0; }
	}
	@media (max-width: 1000px) {
		body:not(.page-template-page__ranking) & {
			grid-template-columns:repeat(3, 1fr); gap:20px;
			.woocommerce-LoopProduct-link { display:block; }
			.p-product-cards-item-image { width:100% !important; margin-bottom:20px !important; }
			.p-product-cards-item-content { width:100%; border:none; background:none; aspect-ratio:unset; }
			.p-product-cards-item-actions { width:100%; height:auto; aspect-ratio:1 /1; }
			.p-product-cards-item:has(.p-cb-product-ranking-item-rank) .p-wc-template-loop-flash { left:auto; transform:none; right:15px; }
		}
	}
	@media (max-width: 900px) {
		body.page-template-page__ranking & {
			grid-template-columns:repeat(1, 1fr); gap:20px;
		}		
	}
	@media (max-width: 767px) {
		body:not(.page-template-page__ranking) & {
			margin:0 20px; grid-template-columns:repeat(2, 1fr);
		}
		.p-product-cards-item-title { padding:0 !important; }
	}

}




/* ----------------------------------------------------------------------
  商品ページ
---------------------------------------------------------------------- */

/* メッセージ */
body.single-product .main_col .woocommerce-notices-wrapper { margin-bottom:50px !important; }


/* ヘッダー */
.p-product-header {
  grid-template-columns: 500px 1fr !important;
  column-gap: 50px !important;

	@media (max-width: 1200px) {
	  grid-template-columns: 50% 1fr !important;
	}
	@media (max-width: 767px) {
		grid-template-columns: 1fr !important;
		row-gap: 40px;
	}

}


/* ギャラリー　ナビゲーション部分 */
.woocommerce-product-gallery .flex-control-nav { gap: 12px !important; margin-top:12px !important; }


/* カテゴリー */
.c-wc-product-cat { min-width:inherit !important; padding-block:0 !important; padding-inline:0 !important; background:none !important; border:none !important; border-radius:0 !important; }
.c-wc-product-cat a { color: var(--tcd-accent-color) !important; }
@media(hover: hover) {
	.c-wc-product-cat a:hover { color: var(--tcd-accent-color-light) !important; }
}


/* タグ */
.product .c-post-tags { margin-bottom:0; }
@media (max-width: 767px) {
	.product .c-post-tags { margin-top:0; }
}


/* グループ */
.woocommerce-grouped-product-list.group_table { font-size:14px; }
.woocommerce-grouped-product-list-item__quantity a { /*display:none;*/ }
.product-type-grouped .p-product-header-summary .woocommerce-grouped-product-list-item__price {
	.woocommerce-Price-amount.amount { white-space:nowrap; }
	p { line-height:1.5; margin-top:5px; }
	.out-of-stock { margin-top:5px; }
}


/* カートに追加ボタン */
.single_add_to_cart_button.disabled { pointer-events:none; filter: grayscale(100%); opacity:0.2; }


/* 本文 */
#product_main_desc {

	margin-top:70px;

	@media (max-width: 767px) {
		margin-top:40px;
	}

}


/* 送料・支払い方法 */
#product_desc_wrap {

	margin-top:70px;

	.js_tab_list { display:flex; }
	.js_tab_item { font-size:16px; flex:1 1 0%; height:70px; display:grid; place-items:center; border:1px solid #ddd; border-right:none; transition:color 0.2s ease; line-height:1.5; padding:0 20px; }
	.js_tab_item:last-of-type { border-right:1px solid #ddd; }
	.js_tab_item.active { border-bottom-color:transparent; }
	.js_tab_item:only-of-type { border:none; height:auto; font-size:24px; line-height:1.6; color:var(--tcd-accent-color); margin-bottom:40px; margin-top:calc(0.5em - 0.5lh); font-weight:600; }
	.js_tab_panel_wrap { border:1px solid #ddd; border-top:none; }
	.js_tab_panel { padding:50px; transform: translate3d(0, 0, 0) !important; }
	.js_tab_panel:only-of-type { border-top:1px solid #ddd; }
	.js_tab_panel.active { transition:none !important; }

	@media(hover: hover) {
		.js_tab_list .js_tab_item:hover { color:#aaa; }
	}
	@media (max-width: 1000px) {
		.js_tab_item { font-size:14px; height:60px; }
		.js_tab_panel { padding:30px; }
	}
	@media (max-width: 767px) {
		margin-top:40px; margin-left:-20px; margin-right:-20px;
		.js_tab_item:first-of-type { border-left:none; }
		.js_tab_item:last-of-type { border-right:none; }
		.js_tab_panel_wrap { border-left:none; border-right:none; }
		.js_tab_panel .tcdce-body { font-size:14px; }
	}
	
}


/* 詳細情報 */
#tab-additional_information { padding:0; border:none; }
.p-product-tabs-section-content-additional_information table.shop_attributes {

	border:1px solid #ddd !important;

	th { background:none !important; text-align:left; padding:20px 30px !important; width:25% !important; }
	td { background:none !important; }

	@media (max-width: 767px) {
		th { width:100% !important; padding:20px 20px 0 !important; }
		td { padding:20px !important; }
		p { padding:0 !important; }
	}
	
}


/* コメント */
#reviews { scroll-padding-top:200px; overflow:auto; }
.product #comments { margin-top:0 !important; }
.p-product-review-list { padding: 0px !important; border:none !important; }
#review_form_wrapper { margin-top:30px !important; }
.p-product-review-verification-required { margin-top:30px !important; }
.p-product-review-list .woocommerce-noreviews { background:#f8f8f8; padding:30px; }
@media (max-width: 767px) {
  .p-product-review-list ol { row-gap:10px; }
	.p-product-review-list-item-meta { margin-bottom:15px; }
	.p-product-review-list li .description { line-height:2; }
}


/* コメントやレビューの見出し */
.p-product-tabs-section-title { border:none !important; color:var(--tcd-accent-color); margin:0 0 45px 0; }
.p-product-tabs-section-title-text { padding-block:0 !important; border-top:none !important; margin-block:0 !important; }
@media (max-width: 767px) {
	.p-product-tabs-section-title { font-size:20px; margin:0 0 35px 0; }
}


/* タブコンテンツ（レビューやおすすめ商品の共通マークアップ） */
.p-product-tabs { row-gap: 70px !important; margin-top: 70px !important; }
.p-product-tabs-section:not(.reviews_tab, .additional_information_tab) { position:relative; padding-top:70px; }
.p-product-tabs-section:not(.reviews_tab, .additional_information_tab):before {
	content:''; display:block; height:1px; width:100vw; position:absolute; top:0; background:#ddd;
	width:calc(100vw - var(--tcd-scrollbar-width, 0px)); left:calc((100% - (100vw - var(--tcd-scrollbar-width, 0px))) / 2);
}
@media (max-width: 767px) {
	.p-product-tabs { row-gap: 40px !important; margin-top: 40px !important; }
	.p-product-tabs-section:not(.reviews_tab, .additional_information_tab) { padding-top:40px; }
}


/* 商品一覧（ショートコード） */
.p-sc-product.woocommerce {

	margin-top:110px !important; margin-bottom:110px !important;

	body.page-template-default &,
	body.single & { margin-top:50px !important; margin-bottom:50px !important; }

	body.page-template-default &:first-child,
	body.single &:first-child,
	&:first-child { margin-top:0 !important; }

	body.page-template-default &:last-child,
	body.single &:last-child,
	&:last-child { margin-bottom:0 !important; }
	
	@media (max-width: 767px) {

		margin-top:35px !important; margin-bottom:35px !important;

		body.page-template-default &,
		body.single & { margin-top:35px !important; margin-bottom:35px !important; }
		.p-sc-product-slider { margin-inline:0px !important; }
		.page-template-page__lp .p-sc-product-slider { margin-inline:0px !important; }
		.p-sc-product-slider-list { gap:0 !important; }
		.p-sc-product-slider-list-item { flex:0 0 auto !important; }

	}

}


/* 商品一覧（ブロック） */
.tcdce-body ul.wc-block-product-template {

	margin:0 !important; padding:0 !important; line-height:1 !important; list-style-type:none !important;

	.wc-block-components-product-image { margin-bottom:20px !important; }
	
	h2.wp-block-post-title { font-size:16px !important; }
	h2.wp-block-post-title a { color:#000; }
	
	button.wp-block-button__link { background:var(--tcd-accent-color) !important; min-width:100% !important; width:auto !important; height:50px !important; transition:background 0.2s ease, color 0.2s ease; margin-top:7px; border-radius:5px; }
	button.wp-block-button__link:before { display:none !important; }
	@media(hover: hover) {
		button.wp-block-button__link:hover { background: var(--tcd-accent-color-light) !important; }
	}
	
}


/* レビュー（ブロック） */
.tcdce-body ul.wc-block-review-list {

	margin:0 !important; padding:0 !important; line-height:1 !important; list-style-type:none !important;

	li.wc-block-review-list-item__item { background:#f6f6f6; padding:30px; margin:0 0 15px 0; }
	li.wc-block-review-list-item__item:last-child { margin-bottom:0; }
		
	.wc-block-review-list-item__image img { border-radius:100%; }
	.wc-block-review-list-item__meta { line-height:1.8; font-size:14px;  }
	.wc-block-review-list-item__text { line-height:2.4 !important; }

}
.wc-block-sort-select {

	margin-bottom:15px;

	.wc-block-sort-select__select { border:1px solid #ccc; background:#fff; padding:10px 20px; margin:0 0 0 15px; }

}




/* ----------------------------------------------------------------------
  その他のページ
---------------------------------------------------------------------- */

/* アカウントページ */
.woocommerce-MyAccount-content-title { font-size:30px !important; font-weight:500 !important; }
@media (max-width: 1200px) {
	.woocommerce-MyAccount-content-title { font-size:24px !important; }
	.woocommerce-account h2 { font-size:24px !important; }
}
@media (max-width: 767px) {
	.woocommerce-MyAccount-content-title { font-size:20px !important; }
	.woocommerce-account h2 { font-size:20px !important; }
  .woocommerce-account .woocommerce-order-details table.shop_table :is(th, td) { border:1px solid #ddd; }
	.woocommerce-column.woocommerce-column--2.woocommerce-column--shipping-address.col-2 { margin-top:40px; }
}



/* カートページ */
.woocommerce-cart .wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product {

	width: calc(100% / 3 - 15px); padding-right:20px;

	&:nth-child(3n) { padding-right:0 !important; }

	.wc-block-components-product-name { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible; }

	@container (max-width: 699px) {
		width: calc(50% - 10px);
		&:nth-child(3n) { padding-right:20px !important; }
	}

}


/* ログインページ */
#customer_login h2 { font-size:28px !important; font-weight:500 !important; }
@media (max-width: 1200px) {
	#customer_login h2 { font-size:24px !important; }
}
@media (max-width: 767px) {
	#customer_login h2 { font-size:20px !important; }
}


/* パスワード再発行ページ */
.woocommerce-ResetPassword .woocommerce-form-row:has(.woocommerce-Button) { margin-top:40px !important; }
@media (max-width: 767px) {
	.woocommerce-ResetPassword .woocommerce-form-row:has(.woocommerce-Button) { margin-top:25px !important; }
}


/* 決済ページ */
.wc-block-components-button { background:#000; border-radius:4px; color:#fff; transition:background-color 0.3s ease !important; }
@media (any-hover: hover) {
  .wc-block-components-button:hover { background:#666; }
}
@media (max-width: 767px) {
	body.woocommerce-checkout #main_content { padding-bottom:0px; }
}


/* 旧決済ページ */
.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
	width:50%;
}


/* ランキングページ */
.p-product-ranking-panel-header-title { font-size:30px !important; opacity:0; transition:opacity 0.8s ease; }
.p-product-ranking-panel-header .desc { font-size:16px; line-height:2.4; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); opacity:0; transition:opacity 0.8s ease; }
.p-product-ranking-panel.is-active .p-product-ranking-panel-header-title { opacity:1; }
.p-product-ranking-panel.is-active .p-product-ranking-panel-header .desc { opacity:1; }
#no_product_found { background:#f6f6f6; height:70px; display:grid; place-items:center; }
@media (max-width: 767px) {
	.p-product-ranking-panel-header-title { font-size:20px !important; }
  .p-product-ranking-nav-sp { margin-inline:0px; }

	/* ソートボタン */
	.p-product-ranking-nav-wrap { visibility:visible !important; width:auto; margin:0 -20px; }
	.scrollable_content { padding:0 20px; overflow:hidden; overflow-x:auto; width:auto; }
	body.is-desktop .p-product-ranking-nav-wrap .scrollable_content { scrollbar-width:none; user-select:none; cursor:grab; }
	body.is-desktop .p-product-ranking-nav-wrap .scrollable_content:active { cursor:grabbing; }
	body.is-desktop .p-product-ranking-nav-wrap .scrollable_content::-webkit-scrollbar { display:none; }
	body.is-mobile .p-product-ranking-nav-wrap .scrollable_content { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
	.p-product-ranking-nav { width:fit-content; min-width:100%; display:flex; flex-wrap:nowrap; justify-content:center; }
	.p-product-ranking-nav .p-product-ranking-nav-item-wrap { width:140px; font-size:14px; display:inline-grid; white-space:wrap; }
}




/* ----------------------------------------------------------------------
  ウィジェット
---------------------------------------------------------------------- */

/* 見出し */
:is(.widget_brand_nav) .p-widget-headline { margin-bottom:-1px !important; }
:is(.widget_price_filter, .widget_rating_filter, .widget_layered_nav) .p-widget-headline { margin-block:0; margin-bottom:30px; }


/* 商品ランキング */
.p-widget-product-ranking-list-item {

	display:flex; flex-wrap:nowrap; align-items:center; height:100px; border:1px solid #ddd; border-bottom:none; margin:0;

	&:last-of-type { border-bottom:1px solid #ddd; }

	.p-widget-product-ranking-list-item-rank { order:1; width:30px; height:100%; display:block; display:grid; place-items:center; font-size:14px;  }
  .p-widget-product-ranking-list-item-image { order:2; display:block; width:100px; height:auto; aspect-ratio:1 / 1; z-index:1; position:relative; overflow:hidden; z-index:2; pointer-events:none; }
  .p-widget-product-ranking-list-item-image .c-thumbnail { width:100%; height:100%; }
	.p-widget-product-ranking-list-item-title { order:3; width:calc(100% - 130px); height:100%; padding:0 20px; line-height:1.5; font-size:14px; display:grid; align-items:center; }
	.p-widget-product-ranking-list-item-title span { --tcd-line-clamp:2; height:auto; }
}


/* 商品一覧 （最近閲覧された商品、評価の高い商品） */
:is(.widget_products, .widget_recently_viewed_products, .widget_top_rated_products) li .product-title {
  --tcd-line-clamp:2; height:auto;
}


/* カート */
.p-widget.widget_shopping_cart ul.cart_list li { border:1px solid #ddd !important; }


/* 価格で絞り込む */
.woocommerce .widget_price_filter .price_slider_amount .button { margin-left:15px; }


/* 平均評価 */
.woocommerce .widget_rating_filter ul li a:hover { color:rgba(var(--tcd-accent-color-rgba),0.5); }


/* カテゴリー */
:is(.widget_layered_nav, .widget_product_categories) li { font-size:16px; }
:is(.widget_layered_nav, .widget_product_categories) a { padding-inline: calc(25px + 1em * var(--tcd-widget-level, 0)) 20px !important; }


/* タグ */
.widget_product_tag_cloud .tag-cloud-link { font-size:14px !important; height:40px; }


/* 商品ランキング */
.widget_tcd_widget_product_ranking .link_button {

  font-size:16px; width:100%; margin-top:15px; padding-right:25px; position:relative; display:inline-block; text-align:right; color:var(--tcd-accent-color) !important; text-decoration:none;

  &:before { content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:var(--tcd-accent-color); position:absolute; top:50%; transform: translateY(-50%); right:0px; transition:none; }

  @media(hover: hover) {
    &:hover { opacity:0.6; }
  }

}




/* END SALON product.css */