@charset "utf-8";





/* ----------------------------------------------------------------------

 基本スタイル

---------------------------------------------------------------------- */



.l-main__inner { max-width:1000px; width:calc(100% - 40px); margin:auto; }



.p-body { line-height: 2.4; }



/* text and headline */

.p-body p { margin-bottom: 2em; }

.p-body h1, .p-body h2, .p-body h3, .p-body h4, .p-body h5, .p-body h6 { clear: both; line-height: 1.4; margin-bottom: 24.2px; font-weight:600; }

.p-body h1 { font-size: 150%; }

.p-body h2 { font-size: 140%; }

.p-body h3 { font-size: 130%; }

.p-body h4 { font-size: 120%; }

.p-body h5 { font-size: 110%; }

.p-body h6 { font-size: 100%; }



/* table */

.p-body table { margin: 0 0 24px 0; }

.p-body td, .p-body th { border: 1px solid #ddd; padding: 10px 15px; line-height: 2; background: #fff; vertical-align: middle; }

.p-body th { background: #f9f9f9; font-weight: normal; }



.woocommerce-order-overview__date.date:before { content:none; }



/* 金額 */

.widget_content del ,.product_price del, .single_product_price del {

	text-decoration-color: #ff2626; margin-right:0.2em;

}



/* 太字を600に */

.woocommerce table.shop_table th,

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th

{ font-weight:600; }



/* ----------------------------------------------------------------------

 メッセージ

---------------------------------------------------------------------- */



.woocommerce-error, .woocommerce-info, .woocommerce-message { background:#f6f6f6; }

.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {

	font-weight:600; border-radius:0px;

}



/* info blue */

.woocommerce-info { border-top-color: rgba(var(--tcd-accent-color, 191,157,135),1); }

.woocommerce-info::before { color: rgba(var(--tcd-accent-color, 191,157,135),1); }



/* メッセージ  green */

.woocommerce-message { border-top-color: rgba(var(--tcd-accent-color, 191,157,135),1); }

.woocommerce-message::before { color: rgba(var(--tcd-accent-color, 191,157,135),1); }



.woocommerce-error, .woocommerce-info, .woocommerce-message { line-height:2; }

.woocommerce-error a.button, .woocommerce-info a.button, .woocommerce-message a.button { margin-left:20px; }



/* 通知 */

@media (max-width: 767px) {

	.woocommerce-error li, .woocommerce-info, .woocommerce-message {

		display:-webkit-box; display:-ms-flexbox; display:flex;

		-webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse;

		-webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline;

	}

	.woocommerce-error a.button, .woocommerce-info a.button, .woocommerce-message a.button { margin-left:0; margin-top:15px; }

}



/* ----------------------------------------------------------------------

 マイアカウント調整

---------------------------------------------------------------------- */



.account-orders-table .woocommerce-orders-table__cell .p-button {



}



/* ----------------------------------------------------------------------

 商品基本ループ

---------------------------------------------------------------------- */



.product_loop { display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin:-35px 0 0 -35px; }

.product_loop .product_item { width:calc(100% / 3 - 35px); margin:35px 0 0 35px; }

.product_item { position: relative; }

.product_item .link { display:block; }

.product_item .image_wrap { position:relative; overflow: hidden;}

.product_item .image { padding-top:100%; width:100%; height:100%; }

.product_item .content_wrap { padding-top:20px; }

.product_item .category { margin-bottom:15px; }

.product_item .title { font-size:16px; line-height:2; height:2em; margin:-0.5em 0 calc(15px - 0.5em); }

.product_item .cart_wrap { pointer-events: none; position: absolute; top:0; right:0; width:100%; overflow:hidden; }

.product_item .spacer { display: block; width: 100%; padding-top: 100%; }

.product_item .cart_wrap_inner {

	display:-webkit-box; display:-ms-flexbox; display:flex;

	-webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end;

	margin-top: -45px; transform:translateY(100%); transition: transform 0.3s cubic-bezier(0.65,0.05,0.36,1);

}



/* 在庫切れ */

.product_item .outofstock_label {

	width:100%; height:45px; line-height:45px; text-align: center; margin-top:-45px;

	font-size:14px; font-weight:600; color:#fff; background:rgba(0,0,0,0.7);

}



/* ラベル */

.product_item .highlight_label {

	display:block; background:#c4837a; color:#fff; font-size:12px; font-weight:600; text-align: center;

	position:absolute; top:6.5%; left:6.5%; z-index:1;

	min-width:60px; height:60px; line-height:60px; padding:0 5px; border-radius:60px;

}



/* いいね */

.product_item .like_button {

	cursor: pointer; width:45px; height:45px; position:relative;

	background-color:rgba(var(--tcd-accent-color, 191,157,135),1);

	pointer-events: auto; transition:background-color 0.3s ease;

}

.product_item .like_button:after {

	content:''; display:block; width:100%; height:100%; background:rgba(0,0,0,0);

	position:absolute; top:0; left:0; pointer-events: none; transition:background 0.3s ease;

}

.product_item .like_button:before {

	content: "\e94f"; font-family: "design_plus"; display:block;

	color:#fff; font-size:20px; line-height:1; position: absolute; top:12px; left:13px; z-index:1;

}

.product_item .like_button:hover:after { background:rgba(0,0,0,0.1); }

.product_item .like_button.is-liked:before { content: "\e94d"; animation: liked 0.3s ease; }





/* いいねアニメーション */

@keyframes liked {

  0% { transform: scale(.9); }

  50% { transform: scale(1.1); }

  100% { transform: scale(1); }

}



/* カート */

.product_item .cart_button_wrap { pointer-events: auto; width:45px; height:45px; position:relative; }

.product_item .cart_button {

	pointer-events: auto; cursor:pointer; display:block; width:45px; height:45px;

	background:rgba(255,255,255,1); border: none; color:#000; transition:color 0.3s ease;

}

.product_item .cart_button:hover { color:rgba(var(--tcd-accent-color, 191,157,135),1); }

.product_item .cart_button:before { content:"\e950"; font-family: "design_plus"; display:block; font-size:20px; color:inherit; }



/* レビュー */

.product_item .woocommerce-product-rating { margin:0 0 15px; }

.product_item .star-rating { margin:0!important; }



/* 金額 */

.product_item .product_price {

	display:-webkit-box; display:-ms-flexbox; display:flex;

	-ms-flex-wrap: wrap; flex-wrap: wrap;

	-webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline;

	color:#000; font-size:16px; line-height:1.4; margin:-0.2em 0 -0.2em -0.3em;

}

.product_item .product_price > * { margin-left:0.3em; }

.product_item .product_price.type2 .woocommerce-Price-currencySymbol { font-size:0.9em; }

.product_item .product_price .woocommerce-price-suffix { font-size:0.9em; }



@media (max-width: 767px) {

	.product_loop { margin:-20px 0 0 -20px; }

	.product_loop .product_item { width:calc(100% / 2 - 20px); margin:20px 0 0 20px; }

	.product_item .content_wrap { padding-top: 15px; }

	.product_item .title { font-size:14px; line-height:1.6; margin:-0.3em 0 calc(10px - 0.3em); height: 3.2em; }

	.product_item .title span { -webkit-line-clamp: 2; }

	.product_item .category { margin-bottom:10px; }

	.product_item .woocommerce-product-rating { margin-bottom:10px; }

	.product_item .product_price { font-size:14px; }

	.product_item .cart_wrap_inner { display:none; }

}

@media (max-width: 599px) {

	.product_item .highlight_label {

		font-size:10px; top:8%; left:8%;

		min-width:45px; height:45px; line-height:45px; padding:0 3px; border-radius:40px;

	}

}



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

	.product_item:hover .cart_wrap_inner { transform:translateY(0); }

}









/* ----------------------------------------------------------------------

 商品アーカイブ

---------------------------------------------------------------------- */



#product_archive { padding-bottom:150px; }

#product_archive > .inner { max-width: 1000px; width: calc(100% - 40px); margin: 0 auto; }

@media (max-width: 767px) {

	#product_archive { padding-bottom:40px; }

}





/* ----------------------------------------------------------------------

 商品アーカイブ - フィルター

---------------------------------------------------------------------- */

.p-archive03__sort-filter { border: 1px solid #ddd; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-bottom: 70px; position: relative; }

.p-archive03__sort-filter__item { position: relative; width: 100%; }

.p-archive03__sort-filter__item + .p-archive03__sort-filter__item { border-left: 1px solid #ddd; }

.p-archive03__sort-filter__item-title { cursor: pointer; font-size: 14px; line-height: 58px; height: 58px; overflow: hidden; padding-left: 24px; padding-right: 40px; }

.p-archive03__sort-filter__item-title::after { content: "\e90e"; font-family: "design_plus"; font-size: 85%; position: absolute; right: 22px; }

.p-archive03__sort-filter__item-dropdown { border: 1px solid #ddd; min-width: 200px; opacity: 0; pointer-events: none; visibility: hidden; position: absolute; left: -1px; right: -1px; top: 100%; z-index: -1; -webkit-transition: all 0.1s ease-out; -moz-transition: all 0.1s ease-out; -ms-transition: all 0.1s ease-out; transition: all 0.1s ease-out; }

.p-archive03__sort-filter__item.is-active .p-archive03__sort-filter__item-dropdown { opacity: 1; pointer-events: auto; visibility: visible; z-index: 10; -webkit-transition-duration: 0.2s; -moz-transition-duration: 0.2s; -ms-transition-duration: 0.2s; transition-duration: 0.2s; }

.p-archive03__sort-filter__item-dropdown li { background: #fff; cursor: pointer; }

.p-archive03__sort-filter__item-dropdown li a, .p-archive03__sort-filter__item-dropdown li span { color: #000; cursor: pointer; display: block; font-size: 14px; line-height: 45px; height: 45px; overflow: hidden; padding: 0 24px; }

.p-archive03__sort-filter__item-dropdown li.is-active, .p-archive03__sort-filter__item-dropdown li:hover { background: #f5f5f5; }

@media (max-width: 767px) {

	.p-archive03__sort-filter { margin-bottom: 40px; }

	.p-archive03__sort-filter__item-title { font-size: 12px; line-height: 48px; height: 48px; padding-left: 20px; padding-right: 20px; }

	.p-archive03__sort-filter__item-title::after { right: 18px; }

	.p-archive03__sort-filter__item-dropdown li a, .p-archive03__sort-filter__item-dropdown li span { font-size:12px; }

}

@media (max-width: 599px) {

	.p-archive03__sort-filter__item-title { padding-left: 5px; padding-right: 5px; text-align: center; }

	.p-archive03__sort-filter__item-title::after { display: none; }

	.p-archive03__sort-filter.has-3items .p-archive03__sort-filter__item:nth-child(3) { position: static; }

	.p-archive03__sort-filter.has-3items .p-archive03__sort-filter__item:nth-child(3) .p-archive03__sort-filter__item-dropdown { left: auto; right: -1px; }

}





/* ----------------------------------------------------------------------

  商品アーカイブ - Ajaxボタン

---------------------------------------------------------------------- */



.product_ajax_loading { margin-top:70px; height:60px; text-align: center; position: relative; }

.product_ajax_loading > * {

  position: absolute; top: 0; left: 50%;

  transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%);

	min-width:310px; height: 100%;

}



/* 読み込みボタン */

.product_ajax_loading_button {

  cursor:pointer; padding:0 20px; background:transparent; border-radius:60px; color:#aaa; border:1px solid #aaa; font-size:16px;

  transition-property: color, background-color, border-color;

  transition-duration: 0.3s;

  transition-timing-function: ease;

}

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

	.product_ajax_loading_button:hover { background:#aaa; border-color:#aaa; color:#fff; }

}

.product_ajax_loading_button.clicked {

  animation: ajaxButtonAnimation 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;

}

@keyframes ajaxButtonAnimation {

  0% { opacity:0; }

  100% { opacity:1; }

}



/* ロードアイコン */

.product_ajax_loading_icon_wrap {

  display:none;

	-webkit-box-align: center; -ms-flex-align: center; align-items: center;

	-webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;

}

.is_loading .product_ajax_loading_icon_wrap {

	display:-webkit-box; display:-ms-flexbox; display:flex;

  animation: ajaxButtonAnimation 2s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;

}

.product_ajax_loading.is_loaded:not(.is_loading) { display:none; }





/* アイコンアニメーション */

.product_ajax_loading_icon, .product_ajax_loading_icon:before, .product_ajax_loading_icon:after {

  display:block; width: 1.5em; height: 1.5em; border-radius: 50%;

  -webkit-animation-fill-mode: both; animation-fill-mode: both;

  -webkit-animation: ajaxLoadAnimation 1.8s infinite ease-in-out;

  animation: ajaxLoadAnimation 1.8s infinite ease-in-out;

}

.product_ajax_loading_icon {

  display:block; color: #444; position: relative; top:-1.5em; text-indent: -9999em; font-size: 10px;

  -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0);

  -webkit-animation-delay: -0.16s; animation-delay: -0.16s;

}

.product_ajax_loading_icon:before, .product_ajax_loading_icon:after { content: ''; position: absolute; top: 0; }

.product_ajax_loading_icon:before { left: -2.5em; -webkit-animation-delay: -0.32s; animation-delay: -0.32s; }

.product_ajax_loading_icon:after { left: 2.5em; }

@keyframes ajaxLoadAnimation {

  0%,80%,100% { box-shadow: 0 1.5em 0 -1.3em; }

  40% { box-shadow: 0 1.5em 0 0; }

}



@media (max-width: 767px) {

	.product_ajax_loading { margin-top:40px; height:50px; }

	.product_ajax_loading > * { max-width:calc(100% - 40px); min-width:260px; }

	.product_ajax_loading_button { font-size:14px; }

}



/* アニメーション */

.product_item.animate { opacity:0; }

.product_item.animate {

  animation: ajaxItemFadeIn 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;

  backface-visibility: hidden;

}

@keyframes ajaxItemFadeIn {

  0% { opacity:0; }

  100% { opacity:1; }

}



/* ----------------------------------------------------------------------

 商品詳細ページ

---------------------------------------------------------------------- */





.single_product {}



/* ヘッダー */

.single_product_header {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;

	-ms-flex-wrap: wrap; flex-wrap: wrap;

}





/* 左カラム */

.single_product_info { width:470px; }



/* メタ */

.single_product_meta {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-ms-flex-wrap: wrap; flex-wrap: wrap; margin:-10px 0 30px -10px;

}

.single_product_meta a {

	display:block; font-size:14px; color:rgba(var(--tcd-accent-color, 191,157,135),1); margin:10px 0 0 10px;

}

.single_product_meta a:hover {

	color:rgba(var(--tcd-accent-color, 191,157,135),0.5);

}

/* タイトル */

.single_product_title { font-size:22px; line-height:2; margin:-0.5em 0 calc(30px - 0.5em); }



/* レビュー */

.single_product_rating.woocommerce-product-rating {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	margin-top: -15px; margin-bottom: 30px;

}

.single_product_rating.woocommerce-product-rating .star-rating { margin:0 5px 0 0!important; float:none!important; }

.single_product_rating.woocommerce-product-rating .woocommerce-review-link {

	line-height:1; position:relative;

}

.single_product_rating.woocommerce-product-rating .woocommerce-review-link .count { font-size:14px; color:#484848; }

.single_product_rating.woocommerce-product-rating .woocommerce-review-link .count:hover { text-decoration: underline; }



/* 価格 */

.single_product_price { font-size:22px; margin-bottom:30px; }

.single_product_price.type2 .woocommerce-Price-currencySymbol,

.single_product_price .woocommerce-price-suffix { font-size:14px; }



/* 抜粋 */

.single_product_expert { margin-top:-8px; margin-bottom:calc(30px - 0.5em); }



/* カート */

.single_product_cart { font-size:14px; line-height:2; }



.single_product_cart_button {

	background: #000; border: none; color: #fff; cursor: pointer;

  display: block; height: 60px; min-width: 310px;

  overflow: hidden; padding: 0 20px;  margin-top:30px;

	font-size:16px; font-weight:600; text-align: center;

	transition:background-color 0.3s ease;

}

/* 在庫切れ */

.single_product_cart > .out-of-stock {

	width:310px; height:60px; line-height:60px; background:#bbb;

	font-size:16px; font-weight:600; text-align: center; color:#fff; margin-top:30px;

}



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

	.single_product_cart_button:hover { background:rgba(var(--tcd-accent-color, 191,157,135),1); }

}









/* 数量ボタン */

.single_product_quantity {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-webkit-box-align: center; -ms-flex-align: center; align-items: center;

}

.single_product_quantity_label { display: inline-block; padding-right: 1em; }

.single_product_quantity_button {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	border:1px solid #ddd; max-width:150px;

}



.single_product_quantity_increase,

.single_product_quantity_decrease {

	display:block; width:50px; height:50px; text-align:center;

	cursor:pointer; position:relative;

}

.single_product_quantity_decrease:before,

.single_product_quantity_increase:before,

.single_product_quantity_increase:after {

	content:''; display:block; width:10px; height:1px; background:#000;

	position:absolute; top:0; left:0; bottom:0; right:0; margin:auto;

}

.single_product_quantity_increase:after { transform:rotate(90deg) }

.single_product_quantity_button .quantity input.qty { border:none; width:50px; text-align:center; }



/* スピンボタンを消す */

.single_product_quantity input[type="number"]::-webkit-outer-spin-button,

.single_product_quantity input[type="number"]::-webkit-inner-spin-button {

  -webkit-appearance: none;

}

/* Firefox */

.single_product_quantity input[type="number"] {

  -moz-appearance: textfield;

}





/* いいねボタン */

.single_product_like {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;

	-webkit-box-align: center; -ms-flex-align: center; align-items: center;

	cursor:pointer; min-width:310px; width:auto; height:60px;

	text-align:center; font-size:16px; padding:0 20px; position:relative;

	background:#fff; border:1px solid #ddd; border-radius: 60px; margin-top:30px; font-weight:600;

	transition:opacity 0.5s ease; color:#000;

}

.single_product_like:before {

	content:"\e94d"; font-family: 'design_plus';

	color:#ddd; font-size: 22px; font-weight:normal; margin-right:15px; margin-top:-1px;

}

.single_product_like.is-liked:before { color:#d787bc; }

.single_product_like_delete { display:none; }

.is-liked .single_product_like_delete { display:block; }

.is-liked .single_product_like_add { display:none; }

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

	.single_product_like:hover { opacity:0.7; }

}



@media (max-width: 1024px) {

	.single_product_info { width:calc(50% - 20px); }

}



@media (max-width: 767px) {

	.single_product_info { width:100%; margin-top:40px; }

	.single_product_meta { margin-bottom:20px; }

	.single_product_title {

		font-size:20px; line-height:1.6; margin:-0.3em 0 calc(20px - 0.3em);

	}

	.single_product_rating.woocommerce-product-rating { margin-top:-5px; margin-bottom:20px; }

	.single_product_price { font-size:16px; margin-bottom:40px; }

	.single_product_expert { margin-bottom:calc(35px - 0.5em); }

	.single_product_cart_button { min-width:260px; font-size:14px; height:50px; margin:40px auto 0; }

	.single_product_cart > .out-of-stock { width:260px; font-size:14px; height:50px; line-height:50px; margin:40px auto 0; }

	.single_product_like { min-width:260px; font-size:14px; margin:20px auto 0; height: 50px; border-radius: 50px; }

	.single_product_like:before { font-size:20px; margin-right:10px; }

	.single_product_quantity { max-width:260px; margin: 0 auto; }

	.single_product_quantity_increase, .single_product_quantity_decrease { width:45px; height:45px; }

}





/* グループ商品 */

.single_product_cart .woocommerce-grouped-product-list-item__quantity .out-of-stock { margin:0; }

@media (max-width: 767px) {

	.single_product_cart .woocommerce-grouped-product-list-item td { white-space: nowrap; }

	.single_product_cart .woocommerce-grouped-product-table-wrap { overfrow:hidden; overflow-x: auto; }

	.single_product_cart .woocommerce-grouped-product-list-item__quantity .qty { width:60px; }

}



/* バリエーション */

.single_variation {  }

.woocommerce-variation-availability .in-stock { margin:0; }

.woocommerce-variation-add-to-cart { margin-top:30px; }

.single_cart_variations_label { display:block; margin-bottom:5px; font-weight:600; color:#222;}





/* ----------------------------------------------------------------------

 商品詳細ページ - ギャラリー

---------------------------------------------------------------------- */



/* スクロール */

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

	body.single-product #container { overflow: unset; }

	.p-entry-product__images-inner { position: -webkit-sticky; position: sticky; }

}



.p-entry-product__images { width:480px; position: relative; }

.p-entry-product__images-inner { top:130px; }



.p-entry-product__mainimage { position: relative; overflow: hidden; }

.p-entry-product__mainimage-normal { display: block; height: auto; width: 100%; }

.p-entry-product__mainimage-zoom { opacity: 0; pointer-events: none; visibility: hidden; position: absolute; bottom: 0; left: 0; right: 0; top: 0; z-index: 3; -webkit-overflow-scrolling: touch; }

.p-entry-product__mainimage-zoom-image { display: block; height: auto; max-width: none !important; width: 200%; }



.p-entry-product__subimages { position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch; }

.p-entry-product__subimages-inner {

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-ms-flex-wrap: wrap; flex-wrap: wrap; margin-left: -8px;

}



.p-entry-product__subimage { cursor: pointer; width:calc(20% - 8px); margin:8px 0 0 8px; }

.p-entry-product__subimage:last-child { margin-right: 0; }

.p-entry-product__subimage-inner { background-position: center center; background-repeat: no-repeat; background-size: cover; display: block; padding-top: 100%; }



@media (max-width: 1024px) {

	.p-entry-product__images { width:calc(50% - 20px); }

	.p-entry-product__images-inner { top:100px; }

}



@media (max-width: 767px) {

	.p-entry-product__images { width:100%; }

	.p-entry-product__subimage { -webkit-flex: 0 0 75px; -ms-flex: 0 0 75px; flex: 0 0 75px; }

}



@media (max-width: 700px) {

	.p-entry-product__images { min-width: calc(100% + 40px); margin-left: -20px; margin-top: -21px; }

	.p-entry-product__subimages { -ms-overflow-style: none; scrollbar-width: none; }

	.p-entry-product__subimages::-webkit-scrollbar { display:none;}

	.p-entry-product__subimages-inner { margin:0; flex-wrap: nowrap; }

}





/* ----------------------------------------------------------------------

 商品詳細ページ - 本文

---------------------------------------------------------------------- */

.single_product_content { margin-top:70px; }

.single_product_content:empty { margin-top:0; }

.single_product_content > .single_product_content_start + p { margin-top:-0.7em; }

.single_product_content > p + .single_product_content_end { margin-top:-0.7em; }



@media (max-width: 767px) {

	.single_product_content { margin-top:40px; }

	.single_product_content > .single_product_content_start + p { margin-top:-0.5em; }

	.single_product_content > p + .single_product_content_end { margin-top:-0.5em; }

}
@media (min-width: 481px) {

	.single_product_content img {
	 max-width: 500px !important;
	}
}





/* ----------------------------------------------------------------------

 ショートコード

---------------------------------------------------------------------- */



.post_content div.woocommerce + * { margin-top:70px; }





/* ----------------------------------------------------------------------

 関連商品

---------------------------------------------------------------------- */



.product_carousel { padding:70px 0; position:relative; }

.product_carousel .slider_wrap { position:relative; }

.product_carousel .product_item { width:310px; margin-right:35px; }

.product_carousel + .product_carousel:before {

	content:''; display:block; width: 100vw; margin: 0 calc(50% - 50vw); height:1px; background:#ddd;

	position: absolute; top:0; left:0;

}



/* カルーセルのアロー */

.product_carousel .swiper_arrow { width:50px; height:50px; line-height:50px; text-align:center; overflow:hidden; top:155px; }

.product_carousel .swiper_arrow:after {

  font-family:'design_plus'; color:#000; font-size:18px; display:block; height:50px; line-height:50px; width:100%; text-align:center;

  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;

  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;

}

.product_carousel .swiper_arrow:hover:after { color:#ccc; }

.product_carousel .swiper-button-prev { left: -60px; }

.product_carousel .swiper-button-prev:after { content:'\e90f'; }

.product_carousel .swiper-button-next { right: -60px; }

.product_carousel .swiper-button-next:after { content:'\e910'; }

.swiper_arrow { opacity:0; }

.swiper-initialized ~ .swiper_arrow { opacity:1; }



@media screen and (min-width:1025px) and ( max-width:1120px) {

	.product_carousel .slider_wrap { max-width: calc(100% - 80px); margin: 0 auto; }

}

@media (max-width: 1024px) {

	.product_carousel .product_item { width:203.3px; margin-right:25px; }

	.product_carousel .swiper_arrow { top:98px; }

	.product_carousel .highlight_label {

		font-size:10px; top:8%; left:8%;

		min-width:45px; height:45px; line-height:45px; padding:0 3px; border-radius:40px;

	}

}

@media (max-width: 767px) {

	.product_carousel { padding:40px 0; }

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

	.product_carousel .related_loop {

		display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

		overflow-x: auto; overflow-y: hidden; -ms-overflow-style: none; scrollbar-width: none;

	}

  .product_carousel .related_loop::-webkit-scrollbar { display:none;}

	.product_carousel .product_item { width:150px; max-width:35%; margin:0 0 0 20px; }

	.product_carousel .product_item:last-of-type { width:170px; max-width:calc(35% + 20px); padding-right:20px; }

}





/* ----------------------------------------------------------------------

 クロスセル

---------------------------------------------------------------------- */



.closs_sells_products { padding:10px 0 0; }



/* ----------------------------------------------------------------------

 商品ページ - チェックした商品一覧

---------------------------------------------------------------------- */



.recentry_viewed_products { padding-top:70px; margin:0 calc(50% - 50vw); width: 100vw; }

.product_carousel + .recentry_viewed_products { border-top:1px solid #ddd; }

.recentry_viewed_products_inner { max-width:1000px; width:calc(100% - 40px); margin: 0 auto; }

.recentry_viewed_products_heading { font-size:24px; line-height:2; text-align: center; margin:-0.5em 0 calc(70px - 0.5em); }

.recentry_viewed_products .slider_wrap { position:relative; }

.recentry_viewed_products_loop .product_item { width:180px; margin-right:25px; }

.recentry_viewed_products_loop .product_item .title { font-size:14px; }

/* レビュー非表示 */

.recentry_viewed_products_loop .product_item .woocommerce-product-rating { display:none; }

.recentry_viewed_products_loop .product_item .product_price { font-size:14px; }

.recentry_viewed_products_loop .product_item .highlight_label {

	font-size:10px; top:8%; left:8%;

	min-width:45px; height:45px; line-height:45px; padding:0 3px; border-radius:40px;

}



/* カルーセルのアロー */

.recentry_viewed_products .swiper_arrow {

  width:50px; height:50px; line-height:50px; text-align:center; overflow:hidden; top:90px;

}

.recentry_viewed_products .swiper_arrow:after {

  font-family:'design_plus'; color:#000; font-size:18px; display:block; height:50px; line-height:50px; width:100%; text-align:center;

  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;

  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;

}

.recentry_viewed_products .swiper_arrow:hover:after { color:#ccc; }

.recentry_viewed_products .swiper-button-prev { left: -60px; }

.recentry_viewed_products .swiper-button-prev:after { content:'\e90f'; }

.recentry_viewed_products .swiper-button-next { right: -60px; }

.recentry_viewed_products .swiper-button-next:after { content:'\e910'; }



.product_carousel + .hide_recentry_viewed_products { margin-top:-70px; }



@media screen and (min-width:1025px) and ( max-width:1120px) {

	.recentry_viewed_products .slider_wrap {

		max-width: calc(100% - 80px);

    margin: 0 auto;

	}

}



@media (max-width: 1024px) {

	.recentry_viewed_products_inner { max-width:660px; }

	.recentry_viewed_products_loop .product_item { width:203.3px; }

	.recentry_viewed_products .swiper_arrow { top:98px; }

}

@media (max-width: 767px) {

	.recentry_viewed_products { padding-top:40px; }

	.recentry_viewed_products_heading { font-size:18px; margin-bottom:calc(40px - 0.5em); }

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

	.recentry_viewed_products_loop {

		display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

		overflow-x: auto; overflow-y: hidden; -ms-overflow-style: none; scrollbar-width: none;

	}

	.recentry_viewed_products_loop::-webkit-scrollbar { display:none;}

	.recentry_viewed_products_loop .product_item { width:150px; max-width:35%; margin:0 0 0 20px; }

	.recentry_viewed_products_loop .product_item:last-of-type { width:170px; max-width:calc(35% + 20px); padding-right:20px; margin-right:0; }

	.product_carousel + .hide_recentry_viewed_products { margin-top:-40px; }

}
@media (max-width: 480px) {
	.swiper-button-next {
	 right: 0 !important;
	}
}
/* ----------------------------------------------------------------------

 商品詳細ページ - フッターバー

---------------------------------------------------------------------- */



.product_footer_bar { display:none; }

@media (max-width: 599px) {

	.product_footer_bar { display:block; opacity:0; pointer-events: none; transition:opacity 0.3s ease; }

	.product_footer_bar.is-active { opacity:1; pointer-events: auto; }

	.woocommerce-page #return_top { display:none; }

  .product_footer_bar {

    position:fixed; left:0; bottom:0; z-index:10;

    width:100%; background:#fff; padding:10px; border-top:1px solid #ddd;

  }

	.product_footer_bar_inner { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

  .product_footer_cart_button {

    background:#000; color:#fff; border:none; font-size:14px; font-weight:600;

    display:block; width:calc(100% - 60px); height:50px; margin-right:10px;

  }

	.product_footer_like_button { width:50px; height:50px; position:relative; background:#fff; border:1px solid #ddd; padding:0; }

	.product_footer_like_button:before {

		content: "\e94d"; font-family: "design_plus"; display:block;

		color:#ddd; font-size:20px; line-height:1;

	}

	.product_footer_like_button.is-liked:before { color:#ff959e; animation: liked 0.3s ease; }



}





/* ----------------------------------------------------------------------

 商品詳細ページ - タブ

---------------------------------------------------------------------- */



.wc-tabs-wrapper { font-size: 14px; margin-top: 70px; }

.wc-tabs { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0 0 -1px 0; padding: 0; position: relative; }

.wc-tabs li { background: #fff; border-color: #ddd; border-style: solid; border-width: 1px 0 1px 1px; line-height: 2; margin: 0; padding: 0; word-break: break-all; -webkit-flex: 0 1 33.5%; -ms-flex: 0 1 33.5%; flex: 0 1 33.5%; }

.wc-tabs li:last-child { border-right-width: 1px; }

.wc-tabs li.active { border-bottom-color: #fff; }

.wc-tabs li:only-child { font-size:18px; font-weight:600; margin-bottom:-30px; -webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; flex: 0 1 100%; }

.wc-tabs li a { color: inherit; cursor: pointer; display: block; height: 100%; margin: 0; padding: 13px 14px; text-align: center; }

.wc-tab { background: #fff; border: 1px solid #ddd; display: none; margin: 0; padding: 30px; }

.reviews_tab_count {

	display : -webkit-inline-box; display : -ms-inline-flexbox; display : -webkit-inline-flex; display : inline-flex;

	-webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;

	min-width:24px; height:24px; border-radius: 24px; font-size:12px; margin-left:5px; padding:0 4px; font-weight:normal;

	background:rgba(var(--tcd-accent-color, 191,157,135),1); color:#fff; position:relative; top:-0.2em;

}



@media (max-width: 700px) {

	.wc-tabs-wrapper { width:calc(100% + 40px); margin-top: 40px; margin-left:-20px; }

	.wc-tabs li { font-size:12px; }

	.wc-tabs li { -webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; flex: 0 1 100%; }

	.wc-tabs li:first-child { border-left:none; }

	.wc-tabs li:last-child { border-right:none; }

	.wc-tabs li:only-child { font-size:16px; margin-bottom:-20px; }

	.wc-tab { padding:20px; border-right: none; border-left: none; }

}



/* ----------------------------------------------------------------------

 トップページ - 追加情報タブ

---------------------------------------------------------------------- */



.wc-tab_inner { background:#f8f8f8; padding:30px; }

.woocommerce table.wc-tab__attributes-table { border-top:none; margin:-20px 0; }

.woocommerce table.wc-tab__attributes-table tr:not(:last-child) { border-bottom:1px solid #ddd; }

.woocommerce table.wc-tab__attributes-table th { width:auto; padding:20px 70px 20px 0; border:none; text-align: left; white-space: normal; }

.woocommerce table.wc-tab__attributes-table th span { display:block; font-weight:600; line-height:1.6; margin:-0.3em 0; }

.woocommerce table.wc-tab__attributes-table td { width:auto; font-style: normal; border:none; padding:20px 0; }

.woocommerce table.wc-tab__attributes-table td p { padding:0; line-height:1.6; margin:-0.3em 0; }

.woocommerce table.shop_attributes tr:nth-child(even) td, .woocommerce table.shop_attributes tr:nth-child(even) th { background:none; }



/* タグ */

.woocommerce-product-attributes-item--tag th { vertical-align: top; }

.woocommerce-product-attributes-item__tag-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin:-5px 0px 0px -5px; }

.woocommerce-product-attributes-item__tag-list a {

	display:block; min-width:60px; height:30px; line-height:29px; padding:0 10px; background: #fff; border:1px solid #ddd; border-radius: 5px;

	font-size:12px; color:#000; text-align: center; margin:5px 0px 0px 5px;

}

.woocommerce-product-attributes-item__tag-list a:hover { color:#fff; background:#000; }



@media (max-width: 700px) {

	.wc-tab_inner { padding:20px; }

	.woocommerce table.wc-tab__attributes-table { margin:-15px 0; }

	.woocommerce table.wc-tab__attributes-table tr { display:block; padding:15px 0; }

	.woocommerce table.wc-tab__attributes-table th { display:block; width:100%; padding:0; white-space: normal; }

	.woocommerce table.wc-tab__attributes-table td { display:block; width:100%; padding:0; margin-top:6px; }

}





/* ----------------------------------------------------------------------

 商品詳細ページ - レビュー

---------------------------------------------------------------------- */

#reviews #comments { margin:0; }

#reviews .close_comment_form { display:none; }

.woocommerce #reviews #comments ol.commentlist li { background:#f8f8f8; margin: 0 0 15px; padding: 30px; border-radius:10px; }



.woocommerce #reviews #comments ol.commentlist li .comment-text {

	border: none; border-radius: 0; margin: 0; padding: 0;

	display:-webkit-box; display:-ms-flexbox; display:flex;

	-ms-flex-wrap: wrap; flex-wrap: wrap;

}

.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { font-size: 12px; margin:0; }

.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__published-date { 

	display:inline-block; padding-left:10px; position:relative; margin-left:6px; border-left:1px solid #ddd;

}

.woocommerce #reviews #comments ol.commentlist li .star-rating { font-size: 12px; margin-right:8px; }

.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__author { display:inline-block; padding-left: 10px; border-left: 1px solid #ddd; }

.woocommerce #reviews #comments ol.commentlist li .description { width:100%; clear: both; line-height: 2.4; margin:calc(20px - 0.7em) 0 -0.7em;  }

.woocommerce #reviews #comments ol.commentlist li .description p:last-child { margin-bottom: 0; }



/* ページャー */

.p-pager-reviews { text-align: center; font-family: Arial; margin-bottom:30px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.p-pager-reviews .p-pager__item { margin-top:-20px; }

.p-pager-reviews .p-pager__item .page-numbers { display:block; min-width: 50px; height: 60px; line-height: 60px; font-size: 14px; text-align: center; border-bottom: 4px solid transparent; }

.p-pager-reviews .p-pager__item .current { border-color: rgba(var(--tcd-accent-color, 191,157,135),1); }

.p-pager-reviews .p-pager__item .prev, .p-pager-reviews .p-pager__item .next { display:none; }

.p-pager-reviews .p-pager__item a { transition:border-color 0.3s ease; }

.p-pager-reviews .p-pager__item a:hover { border-color:#ddd; }





@media (max-width: 700px) {

	.woocommerce #reviews #comments ol.commentlist li { padding:20px; margin-bottom:20px; }

	.woocommerce #reviews #comments ol.commentlist li .description { line-height:2.2; margin: calc(18px - 0.6em) 0 -0.6em; }

	.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { width:100%; margin-top:15px; }

	.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__author { padding:0; border:none; }

}





/* ----------------------------------------------------------------------

 商品詳細ページ - レビューフォーム

---------------------------------------------------------------------- */



#review_form_wrapper { padding:60px; background:#f8f8f8; }

#reply-title { display:block; text-align:center; font-size:20px; font-weight:600; line-height:1.6; margin:-0.3em 0 calc(20px - 0.3em); }

#commentform .logged-in-as { display:none; }

#review_form #commentform .comment-form-rating > label { display:block; padding:1px 0; }

#review_form #commentform .comment-form-rating label p { text-align: center; line-height:2; margin:-0.5em 0 calc(20px - 0.5em); }



/* スター */

.comment-form-rating-radios { font-size:0; text-align:center; }

.comment-form-rating-radios input { display: none; }

.comment-form-rating-radios label {

	cursor: pointer; display: inline-block; padding:0 2px; line-height:1;

	-webkit-transition: opacity 0.2s ease; -moz-transition: opacity 0.2s ease; -ms-transition: opacity 0.2s ease; transition: opacity 0.2s ease;

}

.comment-form-rating-radios label::before { font-family: star; font-size: 12px; }

.comment-form-rating-radios label span { display: none; }

/* レビューの星の色 */

.star-rating, .star-rating:before, .comment-form-rating-radios label::before { color:orange!important; }

.comment-form-rating-radios label::before { font-size: 20px; content: "\73"; }

/* ホバー時のエフェクト */

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

.comment-form-rating-radios label.select:before { content: "\53"; }

.comment-form-rating-radios label.unselect { opacity:0.4; }

}

.comment-form-rating-radios #rating-1:checked ~ .rating-1::before,

.comment-form-rating-radios #rating-2:checked ~ .rating-1::before,

.comment-form-rating-radios #rating-2:checked ~ .rating-2::before,

.comment-form-rating-radios #rating-3:checked ~ .rating-1::before,

.comment-form-rating-radios #rating-3:checked ~ .rating-2::before,

.comment-form-rating-radios #rating-3:checked ~ .rating-3::before,

.comment-form-rating-radios #rating-4:checked ~ .rating-1::before,

.comment-form-rating-radios #rating-4:checked ~ .rating-2::before,

.comment-form-rating-radios #rating-4:checked ~ .rating-3::before,

.comment-form-rating-radios #rating-4:checked ~ .rating-4::before,

.comment-form-rating-radios #rating-5:checked ~ .rating-1::before,

.comment-form-rating-radios #rating-5:checked ~ .rating-2::before,

.comment-form-rating-radios #rating-5:checked ~ .rating-3::before,

.comment-form-rating-radios #rating-5:checked ~ .rating-4::before,

.comment-form-rating-radios #rating-5:checked ~ .rating-5::before { content: "\53"; }



/* レビュー投稿フォーム */

#review_form #commentform p.comment-form-comment {

	/* display: -webkit-box; display: -ms-flexbox; display: flex;

	-webkit-box-align: center; -ms-flex-align: center; align-items: center; */

	max-width:600px; margin:30px auto;

}

#review_form #commentform .comment-form-comment label { display:block; margin-bottom:10px; }

#review_form #commentform .comment-form-comment textarea { min-height:10em; padding:10px; border: 1px solid #ddd; }

.woocommerce #review_form #respond .form-submit { text-align:center; margin:0; }

/* ログアウト時 */

.woocommerce #review_form #respond .must-log-in {

	line-height:2; margin:-0.5em 0 calc(30px - 0.5em); text-align:center;

}





@media (max-width: 700px) {

	#review_form_wrapper { padding:40px 20px 20px; }

	#reply-title { font-size:16px; margin-bottom:calc(30px - 0.7em); }

	#review_form #commentform p.comment-form-comment { margin:20px auto; }

	.woocommerce #review_form #respond .form-submit input { width:100%; min-width:auto; }

	#review_form #commentform .comment-form-rating label p { line-height:2; }

}









/* ----------------------------------------------------------------------

 ヘッダーメンバーメニュー

---------------------------------------------------------------------- */



.header_member_navigation { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 100%; line-height: 80px;}

.header_member_navigation a { display: block; padding: 0 10px; position:relative; }

.header_member_navigation a:before { font-family: "design_plus"; font-size: 20px; transition-duration: 0s; }

/* ヘッダーインスタアイコン */
ul.header_member_navigation li.insta a:before {
 content: '\ea92';
}
ul.header_member_navigation li.insta a:before {
 font-size: 20px;
 display: block;
 position: absolute;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
ul.header_member_navigation li.insta {
 width: 40px;
}

ul.header_member_navigation li.insta a span {
 display: none;
}

/* ウィッシュリスト */

.header_member_wishlist a:before { content: "\e94f"; }



/* マイページ */

.header_member_mypage a::before { content: "\e94c"; font-size:23px; }



/* カート */

.header_member_cart a { padding-right:0; }

.header_member_cart a:before { content: "\e950"; }



/* 更新バッジ */

.header_member_badge {

	display:inline-block;	font-size:12px; width:18px; height:18px; line-height:18px; text-align:center; color:#fff; background:red; border-radius:50%;

	position:relative; top:-15px; margin-left:-11px; margin-right:-6px; font-family: Arial;

}

.header_member_badge:empty { display: none; }



@media (max-width: 1024px) {

	.header_member_navigation { line-height:60px; }

	.header_member_wishlist, .header_member_mypage { display:none; }

}



/* ----------------------------------------------------------------------

 ドロワーメンバーメニュー

---------------------------------------------------------------------- */



@media (max-width: 1024px) {

	.drawer_member_navigation {

		display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

		border-bottom:1px solid; border-color:inherit; font-size:12px;

	}

	.drawer_member_navigation li { width:100%; height:50px; line-height:50px; }

	.drawer_member_navigation li:not(:first-of-type) { border-left:1px solid; border-color:inherit; }

	.drawer_member_navigation li a { display:block; padding:0 20px; position: relative; }

	.drawer_member_navigation li a:before { font-family: "design_plus"; margin-right:8px; vertical-align: bottom; }

	.drawer_member_mypage a:before { content: "\e94c"; font-size:17px; }

	.drawer_member_wishlist a:before { content: "\e94f"; font-size:16px; }

}





/* ----------------------------------------------------------------------

 ヘッダーログイン

---------------------------------------------------------------------- */

.p-header-memberbox { background: #eeeeee; color: #666666; font-size: 14px; opacity: 0; text-align: center; position: absolute; right: 0; top: calc(100% + 1px); visibility: hidden; width: 310px; z-index: 999; -webkit-transition-property: opacity, visibility; -webkit-transition-duration: 0.2s; -webkit-transition-timing-function: ease-out; -moz-transition-property: opacity, visibility; -moz-transition-duration: 0.2s; -moz-transition-timing-function: ease; -ms-transition-property: opacity, visibility; -ms-transition-duration: 0.2s; -ms-transition-timing-function: ease-out; transition-property: opacity, visibility; transition-duration: 0.2s; transition-timing-function: ease-out; }

.p-header-memberbox.is-active, .p-header-memberbox:hover { opacity: 1; visibility: visible; }

.p-header__lower-inner .p-header-memberbox a { color: #fff; }

.p-header-memberbox .p-button { display: block; width: 100%; min-width: 250px; }

.p-header-memberbox__login { padding: 30px; }

.p-header-memberbox__login p { margin: 0 0 20px }

.p-header-memberbox__login > :last-child, .p-header-memberbox__login form > :last-child { margin-bottom: 0; }

.p-header-memberbox__login > form { margin-bottom:-11px!important; }

.p-header-memberbox__login-input { background: #fff; border: none; height: 50px; padding: 0 20px; width: 100%; }

.p-header-memberbox__registration { border-top: 1px solid #d9d9d9; padding: 20px 30px 30px; }

.p-header-memberbox__registration p { line-height: 1.5; }

.p-header-memberbox__registration p.p-header-memberbox__registration-desc { margin-bottom: 24px; margin-top: -0.25em; }

.p-header-memberbox__registration form > :last-child { margin-bottom: 0; }

.p-header-memberbox__login-lostpassword > a { color:#666666; }

@media (max-width: 1024px) {

	.p-header-memberbox { display: none !important; }

}





/* ----------------------------------------------------------------------

 ヘッダーカート

---------------------------------------------------------------------- */

.p-header-view-cart { background: #eeeeee; color: #666666; font-size: 14px; opacity: 0; position: absolute; right: 0; top: 100%; visibility: hidden; width: 310px; z-index: 998; -webkit-transition-property: opacity, visibility; -webkit-transition-duration: 0.2s; -webkit-transition-timing-function: ease-out; -moz-transition-property: opacity, visibility; -moz-transition-duration: 0.2s; -moz-transition-timing-function: ease; -ms-transition-property: opacity, visibility; -ms-transition-duration: 0.2s; -ms-transition-timing-function: ease-out; transition-property: opacity, visibility; transition-duration: 0.2s; transition-timing-function: ease-out; }

.p-header-view-cart.is-active, .p-header-view-cart:hover { opacity: 1; visibility: visible; }

.p-header-view-cart__item { border-bottom: 1px solid #666; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding: 12px; }

.p-header-view-cart__item-thumbnail { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; width: 80px; }

.p-header-view-cart__item-thumbnail img { display: block; height:auto; width: 100%; }

.p-header-view-cart__item-info { -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; line-height: 1.8; margin-left: 18px; }

.p-header-view-cart__item-price .times { padding: 0 7px; }

.p-header-view-cart__buttons { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; padding: 12px; }

.p-header-view-cart__buttons .p-button, .p-header-view-cart__buttons .p-button--gray { min-width: 0; width: 48.5%; }

.p-header-view-cart .p-wc-empty_cart { padding: 60px 12px; text-align: center; }

@media (max-width: 1024px) {

	.p-header-view-cart { display:none; }

	/* .p-header-view-cart { margin-top: 0; width: auto; }

	.p-header-view-cart .p-wc-empty_cart { padding: 30px 12px; } */

}

@media (max-width: 480px) {

	/* .p-header-view-cart__buttons { display: block; }

	.p-header-view-cart__buttons .p-button, .p-header-view-cart__buttons .p-button--gray { display: block; width: 100%; }

	.p-header-view-cart__buttons .p-button--gray + .p-button { margin-top: 10px; } */

}





/* ----------------------------------------------------------------------

 ウィッシュリスト

---------------------------------------------------------------------- */

main.wishlist { padding-bottom:150px; }

.wishlist_inner  { max-width:1000px; width:calc(100% - 40px); margin:0 auto; }

.wishlist_loop {

	margin:-35px 0 0 -35px;

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

	-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;

	-webkit-box-align: start;　-ms-flex-align: start; align-items: flex-start;

}

.wishlist_loop .product_item { width:calc(100% / 3 - 35px); margin:35px 0 0 35px; }

/* 削除ボタン */

.wishlist_remove_button {

	background: transparent; border: none; cursor: pointer; display: block; font-family: "design_plus"; height: 40px; padding: 0; text-align: center; width: 40px;

	color:#000; border: 1px solid #ddd; border-radius:50%; margin-bottom:15px; transition:color 0.1s ease, border-color 0.1s ease;

}

.wishlist_remove_button:hover { color:#ddd; }

/* レビュー */

.wishlist .woocommerce-product-rating { display:none; }

/* カートボタン */

.wishlist_cart a { display:block; width:100%; min-width:auto; margin-top:20px; }

.wishlist_cart a.added_to_cart {

	text-align:center; height:60px; line-height:60px;

	padding-top:0; color:#000; background:#fff; border:1px solid #000;

}

.wishlist_cart a.added_to_cart:hover { color:#fff; background:rgba(var(--tcd-accent-color, 191,157,135),1); border-color:rgba(var(--tcd-accent-color, 191,157,135),1); }

/* 在庫切れ */

.outofstock .wishlist_cart a { background:#bbb; pointer-events:none; }



/* メッセージ */

.no_wishlist { display:none; text-align: center; line-height:2; margin:-0.5em 0; }

.item_count_0 ~ .wishlist_loop { margin:0; }

.item_count_0 ~ .no_wishlist { display:block; }

.item_count_0 ~ .pagination ~ .no_wishlist { display:none; }



@media (max-width: 1024px) {

	.wishlist_loop { margin:-20px 0 0 -20px; }

	.wishlist_loop .product_item { width:calc(100% / 3 - 20px); margin:20px 0 0 20px; }

}

@media (max-width: 767px) {

	main.wishlist { padding-bottom:40px; }

	.wishlist_loop .product_item { width:calc(100% / 2 - 20px); }

	.wishlist_cart a { font-size:14px; height:50px; line-height:50px; margin-top:15px; }

	.wishlist_remove_button { width:35px; height:35px; margin:0 0 10px -1px; }

}





/* ----------------------------------------------------------------------

 ログインページ

---------------------------------------------------------------------- */

@media not all and (max-width: 700px) {

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {

	height:calc(100% - 60px);

}

}



.woocommerce form .form-row input[name="username"].input-text,

.woocommerce form .form-row input[name="password"].input-text,

.woocommerce form .form-row input[name="email"].input-text {

	background:#eee; border:none;

}

#customer_login { font-size:16px; }

#customer_login h2 { text-align: center; }

#customer_login.col2-set {

	display:-webkit-box; display:-ms-flexbox; display:flex;

	-webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;

	-webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch;

}

#customer_login.col2-set:before, #customer_login.col2-set:after { display:none; }

#customer_login.col2-set > div { clear: both; }

#customer_login .woocommerce-form { margin-bottom:0; }



#customer_login .woocommerce-form-login button[name="login"],

#customer_login .woocommerce-form-register button[name="register"] { display: block; margin:0 auto; }

.woocommerce-form-login .woocommerce-LostPassword { text-align: center; }

.woocommerce-form-register .woocommerce-privacy-policy-text p { margin-bottom:20px; }

.woocommerce form .show-password-input, .woocommerce-page form .show-password-input {

	width: 2.5em; height: 50px; top: 0; right: 0;

	display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;

  -webkit-box-align: center; -ms-flex-align: center; align-items: center;

	-webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; justify-content: center;

}

.woocommerce form .show-password-input::after, .woocommerce-page form .show-password-input::after {

	font-family: 'design_plus'; content: "\e92b"; margin:0; color:#4c4c4c;

}

.woocommerce form .show-password-input.display-password::after, .woocommerce-page form .show-password-input.display-password::after { color:#979797; }



@media (max-width: 1024px) {

	#customer_login.col2-set { -ms-flex-wrap: wrap; flex-wrap: wrap; }

	#customer_login.col2-set > div { width:100%; }

	#customer_login.col2-set .u-column2 { margin-top:30px; }

}



@media (max-width: 700px) {

	#customer_login { font-size:14px; }

	.woocommerce-account:not(.logged-in) .p-wc__body { padding:0 10px; }

	#customer_login h2 { font-size:18px; padding-top:20px; }

	#customer_login .woocommerce-form-login,#customer_login .woocommerce-form-register { padding:0; border:none; }

	.woocommerce form .form-row input[name="username"].input-text,

	.woocommerce form .form-row input[name="password"].input-text,

	.woocommerce form .form-row input[name="email"].input-text { font-size:16px; height:50px; }

	#customer_login .woocommerce-form-login button[name="login"],

	#customer_login .woocommerce-form-register button[name="register"] {

		width:260px; min-width:auto; height:50px; line-height:50px;

	}

	#customer_login .u-column1 { padding-bottom:35px; position: relative; }

	#customer_login .u-column1:after {

		content:''; display:block; width:calc(100% + 60px); height:1px; background: #ddd;

		position: absolute; bottom:0; left:-30px;

	}

	#customer_login.col2-set .u-column2 { margin-top:20px; }

}





/* ----------------------------------------------------------------------

 後から追加 詳細ページ

---------------------------------------------------------------------- */



.item_custom_field { margin-top: 24px; }



.p-entry-product__cart p { margin-bottom: 10px; }

.p-entry-product__cart .itemGpExp { margin-bottom: 10px; }

.p-entry-product__cart > :last-child { margin-bottom: 0; }

.p-entry-product__cart-skuname {}

.p-entry-product__cart-prices { margin-bottom: 14px; }

.p-entry-product__price { font-weight: 600; }



.p-strike { text-decoration: line-through; }

.p-entry-product__cart-option label { display: inline-block; padding-right: 1em; }

.p-entry-product__cart-option label:empty { display: none; }

.p-entry-product__cart-option input[type="text"], .p-entry-product__cart-option textarea, .p-entry-product__cart select { border: 1px solid #ddd; }

.p-entry-product__cart-option input[type="text"] { height: 50px; padding: 12px 16px; width: 100%; }

.p-entry-product__cart-option textarea { display: block; height: 8em; padding: 8px 12px; width: 100%; }

.p-entry-product__cart select { cursor: pointer; color:#000; background: transparent; border-radius: 0; height: 50px; padding: 12px 34px 12px 16px; max-width: 100%; min-width: 310px; -webkit-appearance: none; appearance: none; }

.p-entry-product__cart select::-ms-expand { display: none; }

.p-entry-product__cart-select-wrapper { display: inline-block; position: relative; }

.p-entry-product__cart-select-wrapper::after { content: "\e90e"; font-family: "design_plus"; line-height: 50px; pointer-events: none; position: absolute; right: 17px; top: 0; }



.p-entry-product__cart .p-entry-product__cart-error_message { margin-top: 20px; }

.p-entry-product__cart .p-entry-product__cart-error_message:empty { margin-top: 0; }



@media (max-width: 991px) {

	.p-entry-product__cart-option input[type="text"], .p-entry-product__cart-option textarea { margin-top: 6px; width: 200px; }

}



@media (max-width: 599px) {

	.p-entry-product__cart-select-wrapper { width:100%; }

	.p-entry-product__cart-select-wrapper select { min-width:100%; }

}







/* ----------------------------------------------------------------------

 ウィジェット

---------------------------------------------------------------------- */





/* 商品カテゴリー - リスト */

.woocommerce.widget_product_categories a {

	display:block; padding:20px; border:1px solid #ddd; margin-top:-1px;

	position:relative; line-height:1.15;

}

.woocommerce.widget_product_categories a .count {

	display:block; width:25px; height:25px; line-height:25px; background:#eaeaea; border-radius:50%;

	text-align:center; font-size:0.875em;

	position:absolute; right:20px; top:50%;

	transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%);

}

.woocommerce.widget_product_categories ul ul a { padding-left:30px; }

.woocommerce.widget_product_categories ul ul ul a { padding-left:40px; }

.woocommerce.widget_product_categories ul ul ul ul a { padding-left:50px; }



/* 商品カテゴリー - アーカイブ */

.woocommerce.widget_product_categories span.select2-selection { height:60px; border-color:#ddd; border-radius:0; margin:0; }

.woocommerce.widget_product_categories span.select2-container--open .select2-selection { border-color:#aaa; }

.woocommerce.widget_product_categories span.select2-selection__rendered { line-height:60px; padding: 0 18px; }

.woocommerce.widget_product_categories span.select2-selection__placeholder { font-size:14px; color:#000; }

.woocommerce.widget_product_categories span.select2-selection__arrow { width:50px; height:100%; top:0; right:0; }

.woocommerce.widget_product_categories span.select2-selection__arrow:before {

	font-family:'design_plus'; content:'\e90e'; text-align:center;

  display:block; font-size:14px; width:14px; height:14px; line-height:14px;

  position:absolute; right:15px; top:24px;

}

.woocommerce.widget_product_categories b[role="presentation"] { display:none; }

.select2-container .select2-dropdown { background: #f9f9f9; border-radius:0; }



/* 商品タグ */

.woocommerce.widget_product_tag_cloud .tagcloud {

  margin: -6px 0px 0px -7px;

  display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;

  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;

}

.woocommerce.widget_product_tag_cloud .tag-cloud-link {

	border-radius:5px; overflow: hidden; margin: 6px 0px 0px 6px;

  display:block; line-height:35px; height:35px; padding:0px 12px;

	color:#000; background:#eaeaea; font-size:12px!important;

}

.woocommerce.widget_product_tag_cloud .tag-cloud-link:hover { background:rgba(var(--tcd-accent-color, 191,157,135),1); color:#fff; }



/* 商品検索フォーム */

.woocommerce-product-search { position: relative; }

.woocommerce-product-search .search-field { border: 1px solid #ddd; border-right: none; border-radius: 0; box-sizing: border-box; height: 60px; line-height: 60px; padding: 0 1px 0 18px; width: -webkit-calc(100% - 50px); width: calc(100% - 50px); }

.woocommerce-product-search .search-field::-webkit-search-cancel-button { -webkit-appearance: none; }

.woocommerce-product-search button { background:#fff; border: 1px solid #ddd; border-left: none; border-radius: 0; box-sizing: border-box; color: #000; cursor: pointer; font-family: "design_plus"; font-size: 18px; height: 60px; padding: 0; width: 50px; position: absolute; top: 0; right: 0; }

.woocommerce-product-search button:hover { color: #666; }



.widget_content.woocommerce.widget_shopping_cart .cart_list li { padding-left:2.5em; }

.widget_content.woocommerce.widget_shopping_cart .cart_list li a.remove {

	top:11px; left:7px; color:transparent!important; width:1.5em; height:1.5em;

}

.widget_content.woocommerce.widget_shopping_cart .cart_list li a.remove:before {

	transition:color 0.1s ease;

	content:'\e91a'; font-family: "design_plus"; font-weight:normal; font-size:0.7em; color:#000;

	position:absolute; top:1px; left:5px;

}

.widget_content.woocommerce.widget_shopping_cart .cart_list li a.remove:hover:before { color:#ddd!important; }

.widget_content.woocommerce.widget_shopping_cart .woocommerce-mini-cart-item img { width:47px; }



/* 商品リスト関連 */

.woocommerce .product_list_widget.no_review .star-rating { display:none; }

.woocommerce .product_list_widget li a img { width:48px; }

.woocommerce.widget_recent_reviews .product_list_widget li a img { width:69px; }







/* ----------------------------------------------------------------------

 お気に入りモーダル

---------------------------------------------------------------------- */



.product_like_message_wrap {

	position: fixed; bottom:30px; left:30px; z-index:100; pointer-events: none;

	transition:bottom 0.2s ease;

}

.product_like_message_wrap * { pointer-events: auto; }



.product_like_message {

	min-width:300px; max-width:calc(50vw - 30px); background:#333; padding:30px 80px 30px 30px; border-radius:10px;

	font-size:16px; color:#fff; line-height:1.6;

}

.product_like_message span { display:block; margin:-0.3em 0; }

.product_like_message button {

	cursor:pointer; display:block; background:transparent; border:none;

	position:absolute; padding:0; width:80px; height:100%; top:0; right:0;

	transition:opacity 0.3s ease;

}

.product_like_message button:before, .product_like_message button:after {

	content:''; display:block; width:18px; height:1px; background:#fff;

	position:absolute; top:0; left:0; right:0; bottom:0; margin:auto; 

}

.product_like_message button:before { transform: rotate(-45deg); }

.product_like_message button:after { transform: rotate(45deg); }



.product_like_message button:hover { opacity:0.5; }



@media (max-width: 767px) {

	.product_like_message { padding:20px 40px 20px 20px; }

	.product_like_message span { font-size:14px; }

	.product_like_message button { width:40px; }

	.product_like_message button:before, .product_like_message button:after { width:14px; }

}



@media (max-width: 599px) {

	.product_like_message_wrap { left:20px; bottom:20px; width:calc(100% - 40px); }

	.product_like_message { min-width:100%; }

	#dp-footer-bar.active ~ .product_like_message_wrap { bottom:70px; }

	.product_footer_bar.is-active ~ .product_like_message_wrap { bottom:90px; }

}















