@charset "UTF-8";

/* product
---------------------------------------------------------------------------*/
.wp-pagenavi {
	padding-right: 90px;
}

/* .nav-back
------------------------------------*/
.nav-back {
	position: absolute;
	top: 2px;
	left: -283px;
	max-width: 200px;
}

.title-single .nav-back,
.nav-back.img-active {
	left: 27px;
}

.nav-back.img-active {
	top: -60px;
}

.product-list-title .nav-back.img-active {
	top: inherit;
	bottom: -40px;
	left: -283px;
}

.nav-back li.nowrap {
	white-space: nowrap;
}

/* .product-slide-img
------------------------------------*/
.product-slide-img {
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 85px;
}

.product-slide-img .inner {
	display: block;
	float: left;
	width: calc(50% - 1px);
}

.product-slide-img .inner:nth-child(even) {
	float: right;
}

.product-slide-img .inner img {
	width: 100%;
	height: auto;
}

/* .product-list-title
------------------------------------*/
.product-list-title {
	position: relative;
	float: right;
	box-sizing: border-box;
	width: calc(100% - 310px);
	margin: 50px 0 85px;
	padding-right: 90px;
}

.product-list-title.noimg {
	margin-bottom: 75px;
}

.product-list-title.none {
	margin-bottom: 107px;
}

.contents .product-list-title {
	float: none;
	width: 100% !important;
	margin-bottom: 120px;
}

.product-list-title.wide .inner.ontxt .product-list-title.noimg {
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
	padding-right: 0;
}

.product-list-title.wide .inner.ontxt .product-list-title.noimg h1 {
	margin-bottom: 25px;
}

.img-active + .product-list-title {
/* 	margin-top: 35px; */
	margin-top: 15px;
}

.product-list-title .inner {
	position: relative;
	display: -webkit-box;
	display: flex;
}

/*.product-list-title.none .inner {
	display: none;
}*/

.product-list-title h1 {
	padding-right: 40px;
	font-size: 24px;
	line-height: 1.35;
	letter-spacing: 0.08em;
}

/* #productContents.archive .product-list-title h1, */
.category-img-title {
	padding-right: 18px;
	font-size: 20px;
	letter-spacing: 0.1em;
}

.category-img-title.let {
	letter-spacing: 0.06em;
}

.product-list-title .ontxt h1 {
	width: 231px;
	min-width: 231px;
}

.product-list-title.wide .ontxt h1 {
	width: 100%;
	min-width: 100%;
}

.product-list-title .ontxt h1 .count {
	display: none;
}

.search .product-list-title h1 {
	box-sizing: border-box;
	width: 100%;
	padding-right: 120px;
}

.product-list-title h1.inline {
	display: inline-block;
	padding-right: 15px;
}

.product-list-title .count,
.product-list-title .side-nav-txt {
	position: absolute;
	top: 12px;
	right: 90px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.product-list-title .count.inline {
	display: inline-block;
	position: inherit;
	top: 0;
	right: 0;
}

.product-list-title h1 .count {
	right: 0;
}

.product-list-title .txt .count {
	top: -30px;
	right: 0;
}

/* .product-list-title.noimg .txt .count, */
.product-list-title .txt .count.notxt {
	top: 14px;
}

.product-list-title .side-nav-txt {
	cursor: pointer;
	transition: .15s ease-out;
}

.product-list-title .side-nav-txt:hover {
	opacity: 0.5;
}

.product-list-title .side-nav-txt i {
	display: inline-block;
}

.product-list-title .side-nav-txt strong {
	display: inline-block;
	position: relative;
	margin-left: 2px;
	padding-bottom: 3px;
	font-size: 12px;
	letter-spacing: 0.15em;
}

.product-list-title .side-nav-txt strong:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #121212;
	width: calc(100% - 2px);
	height: 1px;
}

.product-list-title .side-nav-txt strong span {
	font-size: 10px;
}

.product-list-title .txt > h2 {
	margin-bottom: 16px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.product-list-title p {
	margin-bottom: 12px;
	text-align: justify;
	line-height: 1.95;
	letter-spacing: 0.1em;
}

.product-list-title .btn-line {
	display: inline-block;
	margin: 0 0 0 -1px;
	font-size: 13px;
}

.product-list-title .ontxt .btn-line {
	margin-top: 24px;
}

.product-list-title .genre {
	position: absolute;
	top: -26px;
	left: 1px;
	white-space: nowrap;
}

.product-list-title .genre,
.product-list-title .genre a {
	color: #787878;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.product-list-title .genre .slash {
	display: inline-block;
	background-color: #999999;
	width: 12px;
	height: 1px;
	margin: 0 6px 0 1px;
	transform: rotate(-70deg) translateX(3px);
}

.product-list-title .genre i:first-child,
.product-list-title .genre i:last-child {
	display: none;
}

/* .tax-bnr
------------------------------------*/
#productContents .contents .tax-bnr {
	margin: -110px 90px 70px 0;
}

#productContents .contents .tax-bnr img {
	width: 100%;
}


/* gift top
---------------------------------------------------------------------------*/
.gift-top {
	display: flex;
	justify-content: space-between;
	max-width: 1030px;
	padding-right: 90px;
}

.gift-top-title {
	margin-bottom: 22px;
	font-size: 14px;
	letter-spacing: 0.1em;
}

.gift-category-sub .gift-top-title {
	margin-left: 1px;
}

.gift-category-list {
	width: 700px;
	margin-right: 7%;
}

.gift-category-list li {
	margin-bottom: 30px;
}

.gift-category-list li img {
	width: 100%;
}

.gift-category-sub {
	width: 250px;
}

.gift-price-list {
	margin-bottom: 65px;
}

.gift-price-list li {
	margin-bottom: 10px;
}

.gift-price-list li a {
	display: block;
	background-color: #EFEFEF;
	padding: 17px 15px 17px 20px;
	font-size: 14px;
	letter-spacing: 0.08em;
}

.product-list + .font-min + .btn-line-l {
	width: calc(100% - 90px);
	margin-top: 20px;
}

.product-list + .font-min:has(.wp-pagenavi) + .btn-line-l {
	margin-top: 60px;
}

.gift-area-list .gift-top-title {
	margin-bottom: 14px;
}

.gift-area-list dt {
	position: relative;
	background: url(../img/share/line-dot.svg) repeat-x left bottom;
	padding: 24px 10px 12px 2px;
	font-size: 15px;
	letter-spacing: 0.08em;
	cursor: pointer;
}

.gift-area-list dt .plus {
	position: absolute;
	top: 24px;
	right: 4px;
	width: 13px;
	height: 13px;
	transform: rotate(0deg);
	transition: .4s cubic-bezier(0.165, 0.84, 0.44, 1); /* easeOutQuart */;
}

.gift-area-list dt.btn-ac.active .plus { transform: rotate(225deg); }

.gift-area-list dt.btn-ac .plus:before,
.gift-area-list dt.btn-ac .plus:after {
	display: block;
	content: '';
	position: absolute;
	background-color: #000;
}

.gift-area-list dt.btn-ac .plus:before { top: 0; left: 6px; width: 1px; height: 100%; }
.gift-area-list dt.btn-ac .plus:after { top: 6px; left: 0; width: 100%; height: 1px; }

.gift-area-list dd {
	display: none;
	/*background: url(../img/share/line-dot.svg) repeat-x left bottom;*/
	padding: 0 20px 20px 3px;
}

.gift-area-list ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 10px;
	padding-top: 18px;
}

.gift-area-list li a {
	font-size: 14px;
	letter-spacing: 0.06em;
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.1em;
}


/* single
---------------------------------------------------------------------------*/
.contents-fix {
	position: relative;
	padding-right: calc(10% + 294px);
}

/* font-size
------------------------------------*/
.txt-s p {
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.txt-m p {
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

/* color
------------------------------------*/
.cart-wrap .spec td,
.cart-wrap .spec td a,
.attention-list,
.item-lead .txt-set .inner p,
.item-block p,
.category-block p,
.product-list-title p {
	color: #555555;
}

/* .title-single
------------------------------------*/
.title-single {
	position: relative;
	margin-bottom: 40px;
}

.title-single .inner {
	position: relative;
/* 	float: right; */
	box-sizing: border-box;
/* 	width: calc(100% - 310px); */
	margin-right: 1px; /* .title-single h1 left margin */
/* 	padding-right: 40%; */
	padding-right: calc(10% + 294px);
}

.title-single .inner .title-category,
.cart-title .title-category {
	margin: 0 0 12px 1px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.title-single .inner .title-category {
	margin: 0 0 24px 2px;
}

.title-single .title-category > div {
	margin-bottom: 6px;
}

.title-single .title-category > div i {
	padding: 0 1px 0 2px;
}

.cart-title .title-category {
	margin-bottom: 8px;
}

.cart-title .title-category > div {
	display: inline-block;
}

.title-single .inner .title-category,
.title-single .inner .title-category a,
.title-single .use {
	color: #AAAAAA;
}

.title-single .inner .title-category,
.title-single .inner .title-category a,
.cart-title .title-category,
.cart-title .title-category a {
	font-size: 11px;
}

.title-single .inner .title-category a {
	position: relative;
	display: inline-block;
	border-bottom: 1px solid #C2C2C2;
	margin-bottom: 2px;
	color: #888888;
	font-size: 12px;
	line-height: 1.3;
	letter-spacing: 0.06em;
}

.cart-title .title-category a {
	position: relative;
	display: inline-block;
	line-height: 1.2;
}

.title-single .area,
.cart-title .area {
	position: relative;
	margin-right: 20px;
}

.cart-title .area {
	margin-right: 16px;
}

.title-single .area:after,
.cart-title .area:after {
	display: block;
	content: '';
	position: absolute;
	top: 9px;
	right: -20px;
	background-color: #C2C2C2;
	width: 16px;
	height: 1px;
	transform: rotate(-70deg);
}

.cart-title .area:after {
	top: 8px;
	right: -18px;
	background-color: #121212;
}

.title-single .area i {
	padding: 0 2px 0 3px;
}

.cart-title .area i {
	padding: 0 1px 0 2px;
}

.title-single h1 {
	display: inline;
	margin-right: 10px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.06em;
}

.title-single .use {
	display: inline-block;
	padding-top: 10px;
	font-size: 12px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.title-single .use i:last-of-type {
	display: none;
}

.title-single h2 {
	position: absolute;
/* 	top: 32px; */
	bottom: 4px;
	right: 5%;
	max-width: 36%;
	text-align: right;
}

.title-single h2 + h2 {
	display: none;
}

.title-single h2 p {
	clear: both;
	display: table;
	float: right;
	background-color: #1A1A41;
	margin-bottom: 8px;
	padding: 0 2px 0 4px;
	color: #FFFFFF;
	font-size: 27px;
	line-height: 1.25;
	letter-spacing: 0.06em;
}

/* .title-sub
------------------------------------*/
.title-sub {
	margin-bottom: 30px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.08em;
}

/* .cart
------------------------------------*/
.cart {
	overflow: hidden;
	box-sizing: border-box;
}

.cart-fix .cart {
	background-color: #F7F7F7;
	border-radius: 3px;
	padding: 30px 22px 24px;
}

.cart-fix .cartjs_box {
	padding: 15px 3px 10px!important;
}

.cart-fix .cart.sold .cartjs_box {
	padding-top: 5px !important;
}

.cart-fix .cartjs_cart_in {
	width: 100%;
	margin: 0 !important;
}

.cart .hidden {
	display: block;
	visibility: hidden;
	height: 0;
}

.cart-fix .cart .inv-recaptcha-holder {
	margin-top: 18px;
	transform-origin: left bottom;
	transform: scale(0.97);
}

.cart-fix .btn-color {
	margin-top: 16px;
}

.cart-fix .btn-color a {
	display: block;
	background: #FFF !important;
	border: 1px solid #1A1A41 !important;
	padding-top: 14px;
	padding-bottom: 15px;
	color: #1A1A41 !important;
	font-size: 14px;
	white-space: nowrap;
}

/* .cart-title
------------------------------------*/
.cart-title {
	margin: 0 0 24px 3px;
}

.cart-title h1 {
	font-size: 19px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.04em;
}

/* .cart-reserve
------------------------------------*/
.cart-reserve {
	margin-bottom: 28px;
}

/* .cart .postage
------------------------------------*/
.cart .postage {
	margin: 6px 0 24px;
	color: #AA2727;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.04em;
}

.cart .postage strong {
	font-size: 19px;
}

.cart .postage strong.let {
	padding-right: 2px;
	letter-spacing: 0;
}

.cart .postage strong:last-of-type {
	padding-left: 2px;
}

.cart .postage i {
	display: block;
	margin-left: 2px;
	font-size: 10px;
}

/* .cartjs
------------------------------------*/
.cartjs_product_table {
	position: relative;
}

.cartjs_product_table table {
	width: 100% !important;
	margin-bottom: 0;
}

.cartjs_product_table table:not(.colorme-option-tbl) {
	margin: 18px 0 30px !important;
}

.product-list .cartjs_product_table table {
	margin: 0 !important;
}

.cartjs_product_table table thead {
/* 	transform: translateY(1px); */
}

.colorme-option-box {
	overflow: inherit !important;
	margin-bottom: -15px;
}

.colorme-option-box thead tr td {
	border-top: 1px solid rgba(0,0,0,0.08);
}

.product-list .colorme-option-box {
	border-top: none;
}

.colorme-option-box.mb {
	margin: 42px 0 20px;
}

.cartjs_product_table th {
	width: 45px;
	padding: 0 10px 10px 0;
	font-weight: normal;
	white-space: nowrap;
	letter-spacing: 0.05em;
}

.cartjs_sales_price th {
	position: absolute;
	top: -50px;
	left: 0;
	font-size: 0;
}

.cartjs_sales_price th:before {
	top: 5px;
	font-size: 20px;
	font-family: 'Hiragino Sans','ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
}

.cart.sold .cartjs_sales_price th:before {
	top: 15px;
}

.cart .cartjs_sales_price td {
	position: absolute;
	top: -45px;
/* 	left: 20px; */
	left: 0;
	padding-bottom: 0 !important;
	font-size: 21px;
	letter-spacing: 0.02em !important;
}

.cart.sold .cartjs_sales_price td {
	top: -35px;
}

/*
.cart .cartjs_sales_price td:after {
	display: block;
	content: '（税込）';
	position: absolute;
	bottom: 2px;
	right: 25px;
	font-size: 12px;
	z-index: 2;
	letter-spacing: 0.08em;
}

.cart .cartjs_sales_price td:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background: #F7F7F7;
	width: 68px;
	height: 100%;
	z-index: 1;
}
*/

.cartjs_product_num th {
	position: relative;
	text-indent: -9999px;
}

.cartjs_product_num th:before {
	display: block;
	content: '数量';
	position: absolute;
	top: 18px;
	left: 1px;
	letter-spacing: 0.2em;
	text-indent: 0;
}

.cartjs_product_table td {
	padding-bottom: 0 !important;
	letter-spacing: 0.05em;
}

.cartjs_product_table .cartjs_stock th {
	display: none;
}

.cartjs_product_table .cartjs_stock td {
	position: absolute;
	padding: 0 8px !important;
	top: 19px;
	left: 128px;
	font-size: 12px;
	letter-spacing: 0.06em;
}

.cartjs_product_table .cartjs_stock td:before,
.cartjs_product_table .cartjs_stock td:after {
	display: block;
	position: absolute;
	top: 0;
}

.cartjs_product_table .cartjs_stock td:before {
	content: '（';
	left: 0;
}

.cartjs_product_table .cartjs_stock td:after {
	content: '）';
	right: 0;
}

.cartjs_product_num td {
	position: relative;
}

.cartjs_product_num td:after {
	display: block;
	content: '点';
	position: absolute;
	top: 18px;
	left: 52px;
	z-index: 2;
}

.cartjs_product_num td:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 47px;
	background: #F7F7F7;
	width: 23px;
	height: 26px;
	z-index: 1;
}

@media all and (-ms-high-contrast:none){
	.cartjs_product_num td:before {
		right: -1px;
	}	
}

.cartjs_product_table td select {
	min-height: 36px;
	padding-left: 4px;
	padding-right: 4px;
}

.colorme-option-tbl {
	text-align: left !important;
	font-size: 12px !important;
	line-height: 1.6 !important;
	border-top: none!important;
}

.colorme-option-tbl caption {
	display: inline-block;
	position: absolute;
	top: 54px;
	left: 0;
/* 	margin-bottom: 6px !important;  */
	text-align: left !important;
	letter-spacing: 0.08em !important;
	white-space: nowrap;
}

.cart.sold .colorme-option-tbl caption {
	top: 14px;
}

.colorme-option-tbl caption:after {
	display: none;
	content: 'を選択する';
	position: absolute;
	top: 0;
	right: -65px;
	letter-spacing: 0.08em;
}

.colorme-option-box.mb .colorme-option-tbl caption:after {
	display: block;
}

.colorme-option-tbl th {
	background-color: #676775 !important;
	padding: 10px !important;
	color: #FFFFFF !important;
	font-size: 13px !important;
	text-align: center !important;
/* 	vertical-align: middle !important; */
	white-space: normal;
}

.colorme-option-tbl tbody th {
	border-bottom: 1px solid rgba(255,255,255,0.4);
}

.colorme-option-tbl td {
	background-color: #FFFFFF !important;
	padding: 13px 10px 14px 36px !important;
	text-align: left !important;
	line-height: 1.8;
}

.colorme-option-tbl td br:first-of-type {
	display: none;
}

.colorme-option-tbl td input {
	margin: 0 5px 0 -21px;
/*
	background: #c00!important;
	color: yellow!important;
	font-weight: bold!important;
*/
}

@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
	.colorme-option-tbl td input {
		transform: scale(1.2) translateY(2px);
	}
}

.cartjs_product_num input {
	position: relative;
	box-sizing: border-box;
	width: 47px !important;
	margin-left: -5px;
	padding: 4px 0 2px 7px;
	font-size: 13px;
	text-align: right;
	letter-spacing: 0.05em;
}

.cartjs_cart_in {
	position: relative;
	background: #1A1A41;
	width: 100%;
	height: 40px;
	transition: .15s linear;
}

.cartjs_cart_in:after {
	display: block;
	content: '購入する';
	position: absolute;
	top: 50%;
	left: 50%;
	margin: 0 0 0 3px;
	color: #FFFFFF;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.2em;
	transform: translate(-50%,-50%);
	white-space: nowrap;
	z-index: 1;
}

.cart-reserve .cartjs_cart_in:after {
	content: '予約注文にて購入する';
	letter-spacing: 0.15em;
}

.cartjs_cart_in input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 44px !important;
	opacity: 0;
	z-index: 2;
}

.cartjs_cart_in:hover {
	opacity: 0.5;
}

.cart.sold .cart-reserve,
.cart.sold .postage { display: none !important; }

.cart-soldout { display: none; }
.cart.sold .cart-soldout { display: block !important; }
/*
.cart.sold .restock-mail { display: block !important; }
*/

.btn-soldout {
	box-sizing: border-box;
	background: #EAEAEA;
	width: 100%;
	height: 44px;
	margin: -4px 0 22px;
	padding: 14px 0 0 5px;
	color: #C1C1C1;
	font-size: 15px;
	text-align: center;
	letter-spacing: 0.15em;
}

.cart-soldout p,
.cart-reserve p {
	margin: -10px 0 25px !important;
	font-size: 11px;
}

/* .restock-mail
------------------------------------*/
.cart-stock.order {
	height: 20px !important;
}

.cart-stock.order .cartjs_product_num,
.cart-stock.order .cartjs_stock,
.cart-stock.order .cartjs_cart_in {
	display: none !important;
}

.restock-mail {
/* 	display: none; */
	border-top: 1px solid #DEDEDE;
	margin: 25px 0 25px;
	padding-top: 30px;
}

.restock-mail:last-child {
	margin-bottom: 0;
}

.restock-mail h2 {
	margin-bottom: 13px;
	padding: 0 3px;
	font-size: 15px;
	letter-spacing: 0.08em;
}

.restock-mail p {
	margin-bottom: 22px;
	padding: 0 3px;
	font-size: 12px;
	text-align: justify;
	line-height: 1.8;
	letter-spacing: 0.02em;
}

.restock-mail img {
	display: block;
	width: 100%;
	height: auto;
	margin-top: 20px;
}

/* .product-form
------------------------------------*/
.product-form {
	margin: 18px 0 9px;
}

.product-form li {
	margin-bottom: 5px;
}

.product-form input[type="text"],
.product-form input[type="email"],
.product-form textarea {
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	box-sizing: border-box;
	border: solid 1px #ECECEC;
	background: #FFFFFF;
	padding: 0 14px 0;
	height: 40px;
	color: #000000;
	width: 100%;
	display: block;
	font-size: 14px;
	letter-spacing: 0.1em;
	border-radius: 3px;
}

.product-form textarea {
	height: 80px;
	padding: 10px 14px;
	font-size: 13px;
	line-height: 1.5;
}

.wpcf7-display-none {
	display: none !important;
}

/* .btn-submit
------------------------------------*/
.product-form .btn-submit {
	display: block;
	position: relative;
	width: 100%;
	box-sizing: border-box;
	margin: 18px 0 0;
	padding: 0;
}

.product-form .btn-submit input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border: none;
	height: auto;
	margin: 0;
	transition: .15s linear;
	display: block;
	padding: 12px 5px 11px 7px;
	width: 100%;
	background: #1A1A41;
	color: #FFF;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.13em;
	border-radius: 3px;
}

.product-form .btn-submit input:hover {
	opacity: 0.5;
}

/* error
------------------------------------*/
.product-form .txt-error,
.wpcf7-not-valid-tip {
	display: inline-block;
	margin: 6px 0 4px 2px;
	padding: 0;
	color: #AA2727;
	font-size: 10px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.12em;
}

.screen-reader-response {
	display: none;
}

.txt-response,
.wpcf7-response-output {
	display: block;
	margin: 15px 0 0;
	color: #AA2727;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: 0.06em;
}

.wpcf7-response-output + br {
	display: none;
}

/* .cart-wrap
------------------------------------*/
.cart-wrap {
	position: absolute;
	top: 0;
	right: 5%;
/* 	width: 26%; */
	width: 294px;
	height: 100%;
}

.cart-fix {
	width: 294px;
}

.cart-fix.fixed {
	position: fixed;
	top: 40px;
	left: 50%;
}

.cart-fix.fixed_btm {
	position: absolute;
	bottom: -5px;
	right: 0;
}

/*
.cart-wrap .cart .price {
	margin: 0 0 28px 3px;
}
*/

/* .cart-wrap .spec
------------------------------------*/
.cart-wrap .spec {
	width: 100%;
	margin-bottom: 46px;
	font-size: 12px;
	line-height: 1.6;
	word-break: break-all;
}

.cart-wrap .spec tr.hinban {
	display: none;
}

.cart-wrap .spec th {
	background-color: #676775;
	border-bottom: 1px solid #9B9BA9;
	width: 55px;
	min-width: 55px;
	max-width: 55px;
	padding: 8px 8px 8px 9px;
	color: #FFFFFF;
	text-align: left;
	letter-spacing: 0.1em;
}

.cart-wrap .spec tr:first-of-type th {
	border-top: 1px solid #9B9BA9;
}

.cart-wrap .spec td {
	border-bottom: 1px solid #EBEBEB;
	padding: 8px 8px 8px 10px;
	letter-spacing: 0.06em;
}

.cart-wrap .spec td.link {
	padding: 0;
}

.cart-wrap .spec td.link a {
	display: block;
	background: url(../img/share/ico-arrow-ss.svg) no-repeat right 8px center;
	background-size: 4px 7px;
	padding: 8px 10px;
}

.cart-wrap .spec td.link a + a {
	padding-top: 0;
}

.cart-wrap .spec tr:nth-of-type(2) td {
	border-top: 1px solid #EBEBEB;
}

.cart-wrap .spec td span {
	display: block;
	padding-top: 2px;
	font-size: 10px;
}

.cart-wrap .spec td i {
	padding: 0 2px;
}

.cart-wrap .spec td i:last-of-type {
	display: none;
}

/* .attention-list
------------------------------------*/
.cart-wrap .attention-list {
	margin: -25px 0 40px;
}

.cart-wrap .attention-list li {
	margin-bottom: 6px;
	padding-left: 0;
	text-align: justify;
	line-height: 1.6;
	letter-spacing: 0.04em;
	text-indent: 1.2em;
}

.cart-wrap .attention-list li:before {
	left: -1.2em;
}

/* .nav-list
------------------------------------*/
.nav-list a {
	position: relative;
	display: inline-block;
	padding: 5px 10px 7px 26px;
	font-size: 14px;
	letter-spacing: 0.05em;
}

.nav-list a:before {
	display: block;
	content: '';
	position: absolute;
	top: 4px;
	left: 0;
	background: url(../img/share/ico-arrow.svg) no-repeat left 2px top 1px;
	background-size: 12px 13px;
	width: 14px;
	height: 14px;
}

/* .hash
------------------------------------*/
.hash {
	margin-top: 25px;
}

.hash h2 {
	margin: 40px 0 12px;
	font-size: 13px;
	letter-spacing: 0.06em;
}

.hash .tag {
	display: block;
	box-sizing: border-box;
	border: 1px dashed #121212;
	border-radius: 5px;
	width: 100%;
	margin-bottom: 20px;
	padding: 15px 10px;
	font-size: 15px;
	text-align: center;
	letter-spacing: 0.04em;
}

.hash .tag span {
	position: relative;
	display: inline-block;
	padding-left: 30px;
	word-break: break-all;
}

.hash .tag span:before {
	display: block;
	content: '';
	position: absolute;
	top: -3px;
	left: 0;
	background: url(../img/share/ico-instagram-color.svg) no-repeat left top;
	background-size: 23px 23px;
	width: 23px;
	height: 23px;
}

.hash .share {
	display: inline-block;
	background-repeat: no-repeat;
	background-position: left top 5px;
	background-size: 23px 23px;
	padding: 10px 10px 10px 30px;
	color: #1A1A41;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.hash .share.facebook { background-image: url(../img/share/ico-facebook-color.svg); margin-right: 5px; }
.hash .share.line { background-image: url(../img/share/ico-line-color.svg); }

.hash .share span {
	border-bottom: 1px solid #A9A9B7;
	letter-spacing: 0.02em;
}

/* .item-lead
------------------------------------*/
.item-lead img,
.item-block img,
.category-block img {
	max-width: 100%;
	height: auto;
}

.item-lead {
	margin: 50px 0 75px;
}

.item-block + .item-lead {
	margin-top: 80px;
}

.item-lead .txt-set h2,
#productContents.single .category-block h2 {
	margin: 0 0 24px -2px;
	font-size: 23px;
	font-weight: bold;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.item-lead .txt-set .inner p,
.item-block p,
.category-block p {
	margin-bottom: 15px;
	text-align: justify;
}

.item-lead .txt-set .inner p:last-of-type {
	margin-bottom: 0;
}

.item-lead .inner-s {
	margin: 25px 0 60px;
}

/* .item-block
------------------------------------*/
.item-block {
	margin-bottom: 70px;
}

.item-block > div {
	margin-bottom: 70px;
}

.item-block > div:last-of-type {
	margin-bottom: 0;
}

.item-block h2,
.block-txt h3 {
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.block1 {
	margin: 70px 0;
}

.block1 figure {
	margin-bottom: 26px;
}

.block1 figure img {
	width: 100%;
	height: auto;
}

.block1 h3,
.block-txt h2,
.category-block h4 {
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.block1 h3,
.block-txt h2 {
	margin: 32px 0 24px;
}

.block1 p:last-of-type {
	margin-bottom: 0;
}

.block-list {
	overflow: hidden;
}

.block-list li {
	float: left;
}

.block-list.block2 li {
	width: 48%;
	margin-right: 4%;
}

.block-list.block3 li {
	width: 31%;
	margin-right: 3.5%;
}

.block-list.block2 li:last-of-type,
.block-list.block3 li:last-of-type {
	margin-right: 0;
}

.block-list li figure {
	margin-bottom: 25px;
}

.block-list.block3 li figure {
	margin-bottom: 18px;
}

.block-list li figure img {
	width: 100%;
	height: auto;
}

.block-list.block2 li figure {
	margin-bottom: 20px;
}

.block-list li h3,
.movie-wrap h3 {
	margin-bottom: 14px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.12em;
}

.block-list.block3 li h3 {
	font-size: 14px;
}

/* .movie
------------------------------------*/
.movie-wrap {
	width: 100%;
}

.movie-wrap .movie {
	position: relative;
	height: 0;
	margin-bottom: 30px;
	padding-top: 25px;
	padding-bottom: 56.25%; /* 16:9 */
}

.movie-wrap .movie:last-child {
	margin-bottom: 0;
}
 
.movie-wrap .movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* .step-list
------------------------------------*/
.step-list ul {
	margin: 10px -7px 15px;
}

.step-list li {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid #EAEAEA;
	padding: 22px 7px 20px;
}

.step-list li figure {
	width: 140px;
	min-width: 140px;
	margin: 0;
}

.step-list li figure img {
	max-width: 140px;
	height: auto;
}

.step-list li .txt-set {
	padding: 0 0 0 30px;
}

.step-list li.noimg .txt-set {
	padding-left: 0;
}

.step-list li p {
	text-align: justify;
}

/* .block-attention
------------------------------------*/
.block-attention {
	margin: 25px 0;
}

.block-attention:last-child {
	margin-bottom: 0;
}

.block-attention p {
	font-size: 13px;
}

/* .item-gallery
------------------------------------*/
/*
.item-gallery {
	margin-bottom: 90px;
}

.gallery-list {
	overflow: hidden;
}

.gallery-list li {
	position: relative;
	float: left;
	width: 13.6%;
	margin: 0 0.8% 0.8% 0;
}

.gallery-list li a {
	overflow: hidden;
	display: block;
	position: relative;
	width: 100%;
	padding-bottom: 67%;
}

.gallery-list li img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	min-width: 100%;
	max-width: 100%;
	height: auto;
	min-height: 100%;
	transform: translate(-50%,-50%);
}

.gallery-list li:nth-of-type(7n) {
	margin-right: 0;
}
*/


/* .faq-list
---------------------------------------------------------------------------*/
.faq-list {
	margin: 100px 0 80px;
}


/* .size-list
---------------------------------------------------------------------------*/
.size-list {
	position: relative;
	margin-top: 100px;
	padding-bottom: 18px;
}

/* table
------------------------------------*/
.tablepress {
	margin-top: 35px;
}

.tablepress:first-of-type {
	margin-top: 0;
}

.tablepress caption {
	display: none;
}

.tablepress th {
	background-color: #EBEBEB !important;
	border-bottom: none !important;
	padding: 9px 10px 8px;
	font-size: 13px;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.tablepress th:first-of-type {
	background-color: #CECECE !important;
}

.tablepress td {
	border-bottom: 1px solid #EAEAEA !important;
	padding: 12px 14px 10px;
	font-size: 12px;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.02em;
}

.tablepress td:first-of-type {
	background-color: #EBEBEB !important;
	border-bottom: 1px solid #DCDCEB !important;
	font-size: 13px;
	white-space: nowrap;
}

.tablepress tr:last-of-type td {
	border-bottom: 1px solid #E6E6E6;
}

.tablepress .row-hover tr:hover td {
	background-color: #F7F7F7;
}

.tablepress ul {
	padding: 5px;
}

.tablepress li {
	line-height: 1.8;
}

.tablepress-table-description {
	float: left;
	width: calc(100% - 140px);
	margin-top: 2px;
	font-size: 11px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

/* .size-img
------------------------------------*/
.size-img-wrap {
	overflow: hidden;
	float: right;
	transition: .2s ease-out;
}

.size-img-wrap.active-wrap {
	overflow: visible;
}

.size-img {
	background: url(../img/share/ico-q.svg) no-repeat left top 2px;
	background-size: 20px 20px;
	padding: 5px 0 5px 26px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.size-img span {
	border-bottom: 1px solid #121212;
}

.size-img-wrap .img {
	display: block;
	position: absolute;
	bottom: 0;
	right: -310px;
	width: 300px;
	padding-left: 25px;
	opacity: 0;
	transition: .2s cubic-bezier(0.165, 0.84, 0.44, 1);
	visibility: hidden;
}

.size-img-wrap .img.active {
	right: -325px;
	opacity: 1;
	visibility: visible;
}

.size-img-wrap .img img {
	display: block;
	border: 1px solid #DEDEDE;
	width: 100%;
	height: auto;
}


/* .related
---------------------------------------------------------------------------*/
.related-wrap {
	margin-top: 140px;
	padding-right: 5%;
}

.related {
	margin-bottom: 35px;
}

.related:first-of-type {
	border-top: 1px solid #DEDEDE;
	padding-top: 30px;
}

.related:last-of-type {
	margin-bottom: 0;
}

.related > h2 {
	margin-bottom: 65px;
}

.related .product-list {
	padding-right: 0;
}


/* .slider-products
---------------------------------------------------------------------------*/
.slider-wrap {
	position: relative;
	overflow: hidden;
	margin-bottom: 22px;
/*
	transition: .15s ease-in-out;
	cursor: pointer;
*/
}

.slider-wrap .slick-prev,
.slider-wrap .slick-next {
	display: none !important;
}

.slider-products {
	overflow: hidden;
}

.slider-products .img-inner {
	box-sizing: border-box;
	width: calc(100% + 10px);
	height: auto;
	opacity: 0;
}

.slider-products .img-inner img {
	width: 100%;
	height: auto;
}

/* .slider-nav
------------------------------------*/
.slider-nav {
	overflow: hidden;
}

.slider-nav .slick-track {
	width: 100% !important;
	transform: translate3d(0, 0, 0) !important;
}

.slider-nav .img-inner,
.slider-zoom-nav .img-inner {
	position: relative;
	padding-bottom: 2px;
	transition: .2s linear;
	cursor: pointer;
}

.slider-nav .img-inner {
	float: left;
	width: 13.6% !important;
	margin: 0 0.8% calc(0.8% - 2px) 0 !important;
}

.slider-nav .img-inner:nth-of-type(7n) {
	margin-right: 0 !important;
}

.slider-nav .img-inner:hover,
.slider-zoom-nav .img-inner:hover {
	opacity: 0.5;
}

.slider-nav .img-inner:after,
.slider-zoom-nav .img-inner:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: #1A1A41;
	width: 0;
	height: 2px;
	transition: .15s ease-in-out;
}

.slider-nav .img-inner.slick-current:after,
.slider-zoom-nav .img-inner.slick-current:after {
	width: 100%;
}

.slider-nav .img-inner img,
.slider-zoom-nav .img-inner img {
	width: 100%;
	height: auto;
}


/* .gallery-zoom
---------------------------------------------------------------------------*/
.gallery-zoom {
	position: fixed;
	top: 0;
	left: 0;
	background: #FFFFFF;
	width: 100%;
	min-width: 1300px;
	height: 100%;
	min-height: 100vh;
	z-index: -9999;
	opacity: 0;
}

.gallery-zoom .zoom-inner {
	position: relative;
	width: 100%;
	min-width: 100%;
	height: 100%;
	min-height: 100%;
	opacity: 0;
}

.gallery-zoom .btn-close {
	position: absolute;
	top: 0;
	right: 0;
	padding: 31px 39px;
	cursor: pointer;
	transition: .2s linear;
	z-index: 1000;
}

.gallery-zoom .btn-close:hover {
	opacity: 0.5;
}

.gallery-zoom h1 {
	position: absolute;
	top: 40px;
	left: 50%;
	font-size: 20px;
	letter-spacing: 0.1em;
	transform: translateX(-50%);
	z-index: 1000;
	white-space: nowrap;
}

.gallery-zoom .category {
	position: absolute;
	top: 42px;
	left: 38px;
	z-index: 1000;
}

.gallery-zoom .category > div {
	display: inline-block;
	margin-right: 10px;
}

.gallery-zoom .category a {
	font-size: 13px;
	letter-spacing: 0.1em;
}

/* .slider-products-zoom
------------------------------------*/
.slider-zoom .img-inner {
	position: relative;
/* 	width: 100vw !important; */
	height: 100vh !important;
}

.slider-zoom .img-inner img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) !important;
/* 	width: 100% !important; */
	max-width: calc(100% - 240px);
	height: auto !important;
	max-height: calc(100% - 220px);
	margin: -10px auto 0 !important;
}

.slider-zoom .slick-prev,
.slider-zoom .slick-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: url(../img/share/btn-arrow.svg) no-repeat center center;
	background-size: 42px 43px;
	width: 120px;
	height: 120px;
	text-indent: -9999px;
	transition: .2s linear;
	z-index: 1000;
}

.slider-zoom .slick-prev {
	left: 0;
	transform: translateY(-50%) scaleX(-1);
}

.slider-zoom .slick-next {
	right: 0;
}

.slider-zoom .slick-prev:hover,
.slider-zoom .slick-next:hover {
	opacity: 0.5;
}

.slider-zoom-nav {
	overflow: hidden;
	position: absolute !important;
	bottom: 45px;
	left: 0;
	width: 100%;
	text-align: center;
}

.slider-zoom-nav .slick-track {
	width: auto !important;
	transform: translate3d(0, 0, 0) !important;
}

.slider-zoom-nav .img-inner {
	display: inline-block !important;
	float: none !important;
/* 	width: 80px !important; */
	margin-right: 2px !important;
}

.slider-zoom-nav .img-inner:last-of-type {
	margin-right: 0 !important;
}


/* .product-maker
---------------------------------------------------------------------------*/
.product-maker {
	margin-top: 100px;
}

.product-maker > h2 {
	margin-bottom: 40px;
}

.product-maker > div {
	clear: both;
}

.product-maker > div:not(:first-of-type) {
	padding-top: 60px;
}

.product-maker a {
	display: block;
}

.product-maker figure {
	overflow: hidden;
	margin-bottom: 35px;
}

.product-maker figure a:hover {
	opacity: 0.8;
}

.product-maker figure img {
	float: left;
	width: 30.3%;
	height: auto;
}

.product-maker figure img:last-of-type {
	float: right;
	width: 69.3%;
	height: auto;
}

.product-maker .title {
	float: left;
	box-sizing: border-box;
	width: 220px;
	padding-right: 20px;
}

.product-maker .title h3 {
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.09em;
}

.product-maker .title .genre {
	margin-bottom: 14px;
	font-size: 12px;
	line-height: 1.4;
	letter-spacing: 0.06em;
}

.product-maker .title .genre i:first-child,
.product-maker .title .genre i:last-child {
	display: none;
}

.product-maker .count {
	font-size: 12px;
	letter-spacing: 0.15em;
	color: #999999;
}

.product-maker .txt-set {
	float: right;
	width: calc(100% - 220px);
}

.product-maker p {
	font-size: 13px;
	text-align: justify;
}

.product-maker .btn-set {
	width: 340px;
	margin-top: 22px;
}

.product-maker .btn-set div a { border-radius: 0; }
.product-maker .btn-set div:nth-of-type(1) a { background-color: #232323; }
.product-maker .btn-set div:nth-of-type(2) a { background-color: #C9BC9C; }


/* .modal-category
---------------------------------------------------------------------------*/
.modal-category {
	position: fixed;
	top: 0;
	left: -720px;
	background-color: #1A1A41;
	box-sizing: border-box;
	width: 50%;
	min-width: 650px;
	max-width: 720px;
	height: 100vh;
	padding: 5px;
	color: #FFFFFF;
	z-index: 1000;
}

.modal-category-inner {
	position: relative;
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 30px 14% 12% 13%;
}

.modal-category-close {
	position: absolute;
	top: 4%;
	right: 5%;
	cursor: pointer;
	z-index: 2;
}

.modal-category-close img {
	width: 34px;
	height: auto;
	opacity: 0.3;
	transition: .15s ease-out;
}

.modal-category-close:hover img {
	opacity: 1;
}

#productContents.single .category-block {
	margin-top: 90px;
}

.category-block h2 {
	margin: 0 0 100px -11%;
	font-size: 27px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.item-lead .txt-set h3,
.category-block h3 {
	margin: 90px 0 35px -25px;
	font-size: 21px;
	line-height: 1.5;
	letter-spacing: 0.12em;
}

#productContents.single .item-lead .txt-set h3,
#productContents.single .category-block h3 {
	margin-left: 0;
	margin-bottom: 26px;
}

#productContents.single .category-block .category-block-title {
	margin-bottom: 45px;
}

.category-block h2 + h3 {
	margin-top: 0;
}

.category-block h3 + p {
	margin-top: -10px;
}

.category-block h4 {
	margin: 50px 0 24px;
}

.category-block h3 + h4,
.category-block .movie + h4 {
	margin-top: 0;
}

.category-block figure + h4 {
	margin-top: 32px;
}

.category-block h5 {
	margin: 50px 0 15px;
	font-size: 17px;
	line-height: 1.5;
	letter-spacing: 0.08em;
}

.category-block h4 + h5 {
	margin-top: 30px;
}

.category-block h6,
.step-list li h3 {
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.1em;
}

.modal-category-inner p {
	margin-bottom: 10px;
	text-align: justify;
	line-height: 2;
}

.modal-category-inner p,
.modal-category-inner p a {
	color: #FFFFFF;
}

.category-block figure {
	margin: 50px 0 20px;
}

.category-block h3 + figure {
	margin-top: 24px;
}

.category-block img {
	display: block;
	margin: 18px 0;
}

.category-block figure img {
	width: 100%;
	height: auto;
	margin: 0;
}

.category-block .movie-wrap {
	margin-bottom: 30px;
}

.category-block .step-list p + ul {
	margin-top: 15px;
}

.modal-category-inner .step-list li {
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding-top: 24px;
	padding-bottom: 22px;
}

.modal-category-inner .step-list li figure {
	width: 120px;
	min-width: 120px;
	margin: 0;
}

.modal-category-inner .step-list li figure img {
	max-width: 120px;
}

.modal-category-inner .step-list li p {
	line-height: 1.8;
}


/* .related-category
------------------------------------*/
.related-category {
	margin: -4px 0 32px;
}

.related-category h2 {
	margin: 0 0 15px 2px;
	font-size: 13px;
	letter-spacing: 0.12em;
}

.related-category a {
	display: inline-block;
	border: 1px solid #EBEBEB;
	border-radius: 3px;
	margin: 0 6px 6px 0;
	padding: 10px 16px 10px 18px;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-align: center;
	white-space: nowrap;
}

.related-category a:hover {
	background-color: #676775;
	border-color: #676775;
	color: #FFFFFF;
	opacity: 1;
}


/* .restock-line
------------------------------------*/
.restock-line {
	display: none;
	background-color: #44C922;
	border-radius: 3px;
	margin-top: 20px;
	padding: 7px 0 18px;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-align: center;
	white-space: nowrap;
}

.cart.sold .restock-line,
.restock-line.restock-btn {
	display: block;
}

.restock-line i {
	display: inline-block;
	margin: 0 8px 0 -6px;
	transform: translateY(6px);
}

.restock-line i img {
	width: 28px;
	height: auto;
}


/* media query
---------------------------------------------------------------------------*/
@media (max-width: 1439px) {
	.product-list-title {
		width: calc(100% - 280px);
	}
	.nav-back,
	.product-list-title .nav-back.img-active {
		left: -253px;
	}
	.title-single h1 {
		font-size: 26px;
	}
	.title-single h2 p {
		font-size: 25px;
	}
	.cart-wrap {
		width: 280px;
	}
}