@charset "UTF-8";

* {
	box-sizing: border-box;
}

html {
	overflow-x: hidden;
	font-size: 62.5%;
}

body {
	font-family: "Zen Kaku Gothic New", serif;
	font-weight: 400;
	font-style: normal;
	color: #686868;
	font-size: 1.6rem;
	line-height: 1.875;
	letter-spacing: 1px;
}

/* 会社案内ページ */
body.page-id-8302 {
	background: url("../images/company/key-company.jpg") no-repeat center 100px;
	background-size: 1600px auto;
}

@media screen and (max-width: 768px) {
	
	body.page-id-8302 {
		background-position:  center 50px;
		background-size: contain;
	}
	
}


.mincho { font-family: "Zen Old Mincho", serif;}

.font-inter {
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight: 100;
	font-style: normal;
}

.weight-light { font-weight: 200;}

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

}


img {
	max-width: 100%;
	height: auto;
}

strong {
	font-weight: 500;
}


p { margin-bottom: 2rem;}

.text-center { text-align: center;}
.text-right { text-align: right;}

.small { font-size: 1.4rem;}

.radius { border-radius: 1rem;}
.radius-circle { border-radius: 50%;}


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

	display

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

.d-none { display: none;}

@media screen and (max-width: 768px) {
	
	.d-xs-block { display: block;}
	.d-xs-none { display: none;}
	
}


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

	table

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

table {
	width: 100%;
}

.company-table th {
	width: 16rem;
	padding: 1.2rem 2rem;
	font-weight: 500;
	text-align: right;
	vertical-align: top;
}

.company-table td {
	padding: 1.2rem 2rem;
}

@media screen and (max-width: 768px) {
	
	.company-table {
		display: block;
	}
	
	.company-table th {
		display: block;
		width: 100%;
		padding: 0;
		text-align: left;
	}

	.company-table td {
		display: block;
		width: 100%;
		padding: 0 0 1rem;
	}

}


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

	list

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

ol.list {
	margin: 0 0 2rem 2.4rem;
	list-style: decimal;
}

ol.list ol {
	margin-bottom: 0;
}

ul.list {
	margin: 0 0 2rem 2.4rem;
	list-style: disc;
}

ol.list ol {
	margin-bottom: 0;
}


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

	form

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

.wpcf7-text {
	width: 100%;
	padding: 1rem;
	background-color: #fff;
	border: 1px solid #828282;
}

.wpcf7-textarea {
	width: 100%;
	height: 20rem;
	padding: 1rem;
	background-color: #fff;
	border: 1px solid #828282;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea {
	width: 100%;
	padding: 1rem;
	background-color: #fff;
	border: 1px solid #828282;
	line-height: 1;
}

textarea {
	line-height: 1.4;
}

input[type="radio"] {
	webkit-appearance: auto; 
	appearance: auto;
}

input[type="checkbox"] {
	webkit-appearance: auto; 
	appearance: auto;
}


.form-row .select2-container--default .select2-selection--single {
	width: 100%;
	height: auto;
	padding: 1rem;
	background-color: #fff;
	border: 1px solid #828282;
	border-radius: 0;
	line-height: 1 !important;
}


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

	breadcrumbs

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

.breadcrumbs-wrap {
	width: 100%;
	max-width: 1180px;
	margin: 2rem auto;
	padding: 0 2rem;
}

.breadcrumbs {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.4rem;
}

.breadcrumbs > span {
	display: flex;
	justify-content: flex-end;
}

.breadcrumbs li + li::before {
	content: '/';
	display: inline-block;
	padding: 0 1rem;
}

.breadcrumbs a {
	color: #686868;
}

@media screen and (max-width: 768px) {
	
	.breadcrumbs-wrap {
		margin-top: 2rem;
	}
	
}


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

	shop-sup

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

.shop-sup {
	width: 100%;
	max-width: 1180px;
	margin: 2rem auto;
	padding: 0 2rem;
	text-align: right;
	font-size: 1.4rem;
}

.shop-sup > :last-child {
	margin-bottom: 0;
}


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

	layout

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

.site-content {
	max-width: 1180px;
	margin: 0 auto 4rem;
	padding: 0 2rem 4rem;
}

.home .site-content {
	max-width: 100%;
	padding: 0;
}

.product-template-default .site-content {
	margin-top: 4rem;
}

.top-news .container,
.top-product .container {
	max-width: 1180px;
	margin: 0 auto;
	padding: 4rem 2rem;
}

.inner--small { max-width: 880px ;margin: 0 auto;}
.inner--xs-small { max-width: 640px; margin: 0 auto;}

.header-nav .inner {
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 2rem;
}

@media screen and (max-width: 768px) {
	
	.site-content {
		margin-bottom: 2rem;
		padding: 2rem;
	}

}


.section {
	padding: 4rem 0;
}

@media screen and (max-width: 768px) {
	
	.section {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	
}


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

	Grid

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

.row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -2rem;
}

.col-1 { width: 8.33333333%; padding: 0 2rem;}
.col-2 { width: 16.6666667%; padding: 0 2rem;}
.col-3 { width: 25%; padding: 0 2rem;}
.col-4 { width: 33.33333333%; padding: 0 2rem;}
.col-5 { width: 41.6666667%; padding: 0 2rem;}
.col-6 { width: 50%; padding: 0 2rem;}
.col-7 { width: 58.3333333%; padding: 0 2rem;}
.col-8 { width: 66.6666667%; padding: 0 2rem;}
.col-9 { width: 75%; padding: 0 2rem;}
.col-10 { width: 83.33333333%; padding: 0 2rem;}
.col-11 { width: 91.6666667%; padding: 0 2rem;}
.col-12 { width: 100%; padding: 0 2rem;}

@media screen and (max-width: 768px) {
	
	.col-xs-1 { width: 8.33333333%;}
	.col-xs-2 { width: 16.6666667%;}
	.col-xs-3 { width: 25%;}
	.col-xs-4 { width: 33.33333333%;}
	.col-xs-5 { width: 41.6666667%;}
	.col-xs-6 { width: 50%;}
	.col-xs-7 { width: 58.3333333%;}
	.col-xs-8 { width: 66.6666667%;}
	.col-xs-9 { width: 75%;}
	.col-xs-10 { width: 83.33333333%;}
	.col-xs-11 { width: 91.6666667%;}
	.col-xs-12 { width: 100%;}
	
}


.justify-content-start { justify-content: flex-start;}
.justify-content-center { justify-content: center;}
.justify-content-end { justify-content: flex-end;}
.justify-content-around { justify-content: space-around;}
.justify-content-between { justify-content: space-between;}


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

	spacing

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

.mt-0 { margin-top: 0 !important;}
.mt-1 { margin-top: 1rem !important;}
.mt-2 { margin-top: 2rem !important;}
.mt-4 { margin-top: 4rem !important;}
.mt-6 { margin-top: 6rem !important;}
.mt-8 { margin-top: 8rem !important;}

.mb-0 { margin-bottom: 0 !important;}
.mb-1 { margin-bottom: 1rem !important;}
.mb-2 { margin-bottom: 2rem !important;}
.mb-4 { margin-bottom: 4rem !important;}
.mb-6 { margin-bottom: 6rem !important;}
.mb-8 { margin-bottom: 6rem !important;}

@media screen and (max-width: 768px) {
	
	.mt-xs-0 { margin-top: 0 !important;}
	.mt-xs-2 { margin-top: 2rem !important;}
	.mt-xs-4 { margin-top: 4rem !important;}
	.mt-xs-6 { margin-top: 6rem !important;}

	.mb-xs-0 { margin-bottom: 0 !important;}
	.mb-xs-2 { margin-bottom: 2rem !important;}
	.mb-xs-4 { margin-bottom: 4rem !important;}
	.mb-xs-6 { margin-bottom: 6rem !important;}
	
}

.p-4 { padding: 4rem;}


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

	color

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

a { color: #5E2361; transition: all .2s ease 0s;}

.text-primary { color: #5E2361;}
.text-secondary { color: #C11531;}
.text-tertiary { color: #B17133;}
.text-quaternary { color: #006849;}
.text-light { color: #f7f6f7;}
.text-gray { color: #D7D4D5;}
.text-white { color: #fff;}

.bg-primary { background-color: #5E2361;}
.bg-secondary { background-color: #C11531;}
.bg-tertiary { background-color: #B17133;}
.bg-quaternary { background-color: #006849;}
.bg-light { background-color: #f7f6f7;}
.bg-gray { background-color: #D7D4D5;}
.bg-white { background-color: #fff;}

.border-primary { border-color: #5E2361;}
.border-secondary { color: #C11531;}
.border-tertiary { border-color: #B17133;}
.border-quaternary { border-color: #006849;}
.border-light { border-color: #f7f6f7;}
.border-gray { border-color: #D7D4D5;}
.border-white { border-color: #fff;}

.woocommerce-message { border-top-color: #5E2361;}
.woocommerce-message::before { color: #5E2361;}

.woocommerce-info { border-top-color: #5E2361;}
.woocommerce-info::before { color: #5E2361;}

.woocommerce-error { border-top-color: #b81c23;}
.woocommerce-error::before { color: #b81c23;}


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

	badge

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

.badge {
	display: inline-block;
	padding: 1rem;
	background-color: #999;
	color: #fff;
	line-height: 1;
}


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

	btn

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

.button {
	display: inline-block;
	padding: 1.3rem 2rem;
	background-color: #5c5356 !important;
	border: 1px solid #5c5356 !important;
	border-radius: 0;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	text-align: center;
	transition: all .2s ease 0s;
}

.button:hover {
	background-color: #fff !important;
	color: #5c5356;
}

.wpcf7-submit {
	display: block;
	width: 100%;
	padding: 1.6rem 2rem;
	background-color: #5c5356 !important;
	border: 1px solid #5c5356 !important;
	font-weight: 500;
	color: #fff;
	line-height: 1;
	text-align: center;
	transition: all .2s ease 0s;
}

.wpcf7-submit:hover {
	background-color: #fff !important;
	color: #5c5356;
}


/* ヘッダー ログイン */
.btn-login {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 152px;
	height: 60px;
	padding: 0 1rem;
	background-color: #D7D4D5;
	border-radius: 1rem;
	font-size: 1.5rem;
	font-weight: 500;
	color: #5E2361;
	line-height: 1.33;
}

.btn-login::before {
	content: '';
	display: block;
	width: 30px;
	height: 22px;
	margin: 0 1rem 0 0;
	background: url("../images/common/icon-login-primary.svg") no-repeat center center;
	background-size: contain;
}

.btn-login:hover {
	color: #5E2361;
	opacity: .5;
}

@media screen and (max-width: 768px) {
	
	.btn-login {
		width: 44px;
		height: 44px;
		padding: 0;
		background-color: #fff;
		border-radius: 0;
	}
	
	.btn-login::before {
		margin: 0;
	}
	
}


/* ヘッダー カート */
.btn-cart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 152px;
	height: 60px;
	padding: 0 1rem;
	background-color: #5E2361;
	border-radius: 1rem;
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.33;
}

.btn-cart::before {
	content: '';
	display: block;
	width: 22px;
	height: 22px;
	margin: 0 1rem 0 0;
	background: url("../images/common/icon-cart-white.svg") no-repeat center center;
	background-size: contain;
}

.btn-cart:hover {
	color: #fff;
	opacity: .5;
}

@media screen and (max-width: 768px) {
	
	.btn-cart {
		width: 44px;
		height: 44px;
		padding: 0;
		background-color: #fff;
		border-radius: 0;
	}
	
	.btn-cart::before {
		margin: 0;
		background-image: url("../images/common/icon-cart-primary.svg");
	}
	
}


/* お気に入り　カートに追加 */
table.wishlist_table .product-add-to-cart a {
	margin-bottom: 0 !important;
	background-color: transparent !important;
	color: #828282;
}


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

	heading

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

.h1,
.h2 {
	margin: 0 0 4rem;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.h1::after,
.h2::after {
	content: '';
	display: block;
	max-width: 100%;
	width: 10rem;
	height: 1px;
	margin: 1.2rem auto 0;
	background-color: #555450;
}

@media screen and (max-width: 768px) {
	
	.h1,
	.h2 {
		margin: 0 0 2rem;
		font-size: 2.4rem;
	}
	
}

.h3 {
	margin: 0 0 .4rem;
	font-size: 2rem;
}


.key {
	padding: 4rem 2rem;
}

.key__title {
	margin: 1.6rem 0;
	padding: 0;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
}

.key__description {
	text-align: center;
}

.key__description > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	
	.key {
	padding: 4rem 2rem;
}

	.key__title {
		font-size: 2.4rem;
	}

	.key__description {
		font-size: 1.4rem;
	}

}


.heading-parts {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	margin: 0 -2rem 2rem;
}

.heading-parts__en {
	margin-bottom: 1rem;
	padding: 0 2rem;
	font-size: 9.2rem;
	line-height: 1;
}

.heading-parts__title {
	margin-bottom: 1rem;
	padding: 0 2rem;
	font-size: 2.4rem;
	line-height: 1;
}

@media screen and (max-width: 768px) {
	
	.heading-parts {
		margin: 0 -0.5rem 2rem;
	}
	
	.heading-parts__en {
		padding: 0 .5rem;
		font-size: 4.8rem;
	}

	.heading-parts__title {
		padding: 0 .5rem;
		font-size: 1.4rem;
	}
	
}


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

	header

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

.header {
	position: relative;
	top: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 1.6rem;
	background-color: #fff;
}

.header.is-fixed {
	position: fixed;
	width: 100%;
}

.logo {
	display: flex;
	align-items: center;
	margin: 0 -0.5rem;
}

.logo__icon {
	padding: 0 0.5rem;
}

.logo__icon img {
	width: 60px;
	vertical-align: middle;
}

.logo__text {
	margin: 0;
	padding: 0 0.5rem;
}

.logo__text dt {
	margin: 0 0 0.6rem;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1;
}

.logo__text dd {
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
}

.header__nav {
	display: flex;
	align-items: center;
	margin: 0 -2rem;
	padding: 0 2rem;
}

.header-nav-wrap {
	padding: 0 4rem 0 0;
}

.header-nav {
	display: flex;
	align-items: center;
	margin: 0 -2rem;
}

.header-nav > li {
	padding: 0 2rem;
	font-weight: 500;
}

.header-nav > li > a,
.header-nav > li > span {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100px;
	color: #5e2361;
	line-height: 1.4;
}

.header-nav > li > a:hover {
	opacity: .5;
}

@media screen and (max-width: 768px) {
	
	.header {
		padding: 1.6rem;
	}

	.logo__icon img {
		width: 40px;
	}

	.logo__text dd {
		font-size: 2rem;
	}

	.header__nav {
		display: none;
	}
	
}


.dropdown {
	position: relative;
}


/* ドロップダウン */
.header-nav-dropdown {
	position: absolute;
	z-index: 2;
	display: none;
}

.header-nav-dropdown li + li {
	border-top: 1px solid #828282;
}

.header-nav-dropdown a {
	display: block;
	padding: 1.2rem 2rem;
	background-color: #fff;
	color: #828282;
	text-align: center;
	white-space: nowrap;
}

/* メガドロップダウン */
.header-nav-large-dropdown {
	position: absolute;
	z-index: 2;
	top: 100%;
	left: 0;
	width: 100%;
	display: none;
	padding-top: 4rem;
	padding-bottom: 4rem;
	background: #fff;
	font-weight: 400;
	color: #828282;
}

.product-nav {
	display: flex;
	color: #5e2361;
}

.product-nav__sweets {
	display: flex;
	width: 70%;
}

.product-nav__gift {
	display: flex;
	width: 30%;
}

.product-nav-section {
	display: flex;
}

.product-nav-head {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 86px;
	margin-right: 2rem;
}

.product-nav-body {
	padding-left: 2rem;
	border-left: 1px solid #828282;
}

.product-nav-head__icon {
	margin: 0 0 1.6rem;
}

.product-nav-head__text {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.2;
	writing-mode: vertical-rl;
}

.sweets-cat-row {
	display: flex;
}

.sweets-cat-col:first-child {
	margin-right: 12rem;
}

.sweets-cat-inline {
	display: inline-block;
}

.sweets-cat-inline + .sweets-cat-inline {
	padding-left: 2rem;
}



.large-nav-row {
	display: flex;
	padding: 0;
}

.large-nav-row + .large-nav-row {
	padding-top: 0;
}

.large-nav-row a {
	color: #828282;
}

.large-nav-col-4 {
	width: 33.33333333%;
}

.large-nav-col-8 {
	width: 66.6666667%;
}

.large-nav-head {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.large-nav-head__icon {
	width: 110px;
	margin-bottom: 1.2rem;
	text-align: center;
}

.large-nav-head__text {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.2;
	writing-mode: vertical-rl;
}

.large-nav-head__text-first {
	font-size: 3.2rem;
	color: #5E2361;
}


.large-nav-child-row {
	display: flex;
}

.large-nav-child-head {
	width: 150px;
	margin: 0 2rem 0 0;
	padding-bottom: 4rem;
	border-right: 1px solid #828282;
}

.icon-small {
	width: 86px;
}

.large-nav-child-body {
	width: calc(100% - 150px);
}

.header-nav-favorite {
	width: 24px;
	height: 20px;
	vertical-align: middle;
}

.header-cta {
	display: flex;
	align-items: center;
	margin: 0 -0.8rem;
	padding: 0;
}

.header-cta__col {
	padding: 0 0.8rem;
}

@media screen and (max-width: 768px) {
	
	.header-cta {
		
	}
	
}


.btn-sp-nav {
	position: relative;
    display: block;
	width: 43px;
	height: 43px;
	cursor: pointer;
}

.btn-sp-nav span {
	display: inline-block;
	position: absolute;
	left: 11px;
	width: 21px;
	height: 1px;
	background-color: #5E2361;
	transition: all .4s;
}

.btn-sp-nav span:nth-of-type(1) {
	top: 12px; 
}

.btn-sp-nav span:nth-of-type(2) {
	top: 20px;
}

.btn-sp-nav span:nth-of-type(3) {
	top: 28px;
}

.btn-sp-nav.is-active span:nth-of-type(1) {
	width: 50%;
	top: 14px;
	left: 10.75px;
	transform: translateY(6px) rotate(-45deg);
}

.btn-sp-nav.is-active span:nth-of-type(2) {
	opacity: 0;
}

.btn-sp-nav.is-active span:nth-of-type(3){
	top: 26px;
	left: 10.75px;
	width: 50%;
	transform: translateY(-6px) rotate(45deg);
}


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

	footer

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

.footer-wrap {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 2rem;
}

.footer {
	margin-top: 4rem;
	padding-top: 6rem;
	padding-bottom: 8rem;
	border-top: 1px solid #5E2361;
}

.home .footer {
	margin-top: 0;
}

.footer-row {
	display: flex;
	justify-content: space-between;
}

.footer-col__nav {
	width: 36rem;
}

.footer-nav li + li {
	margin-top: 1rem;
}

.footer-nav a {
	color: #4D4D4D;
}

.footer-col__info {
	width: calc(100% - 36rem);
}

.footer-info dl {
	display: flex;
	align-items: center;
	margin: 0 0 4rem;
}

.footer-info dt {
	margin: 0;
	padding: 1rem;
	border: 1px solid #5E2361;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
}

.footer-info dd {
	padding-left: 3.2rem;
}

.footer-conatct a {
	color: #5E2361;
}

.footer-conatct ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -2rem;
	font-size: 4.2rem;
	line-height: 1.2;
}

.footer-conatct li {
	display: flex;
	align-items: center;
	margin: 0 0 2rem;
	padding: 0 2rem;
	letter-spacing: 2px;
}

.footer-conatct__tel::before {
	content: '';
	display: block;
	width: 44px;
	height: 32px;
	margin: 0 2rem 0 0;
	background: url("../images/common/icon-tel-primary.svg") no-repeat center center;
	background-size: contain;
}

.footer-conatct__fax::before {
	content: '';
	display: block;
	width: 30px;
	height: 32px;
	margin: 0 2rem 0 0;
	background: url("../images/common/icon-fax-primary.svg") no-repeat center center;
	background-size: contain;
}

.footer-conatct__mail {
	width: 100%;
}

.footer-conatct__mail::before {
	content: '';
	display: block;
	width: 44px;
	height: 26px;
	margin: 0 2rem 0 0;
	background: url("../images/common/icon-mail-primary.svg") no-repeat center center;
	background-size: contain;
}

.copyright {
	margin: 0;
}

@media screen and (max-width: 768px) {
	
	.footer {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}

	.footer-row {
		flex-direction: column;
	}

	.footer-col__nav {
		width: 100%;
		margin-bottom: 4rem;
	}

	.footer-col__info {
		width: 100%;
	}

	.footer-info dl {
		flex-direction: column;
		align-items: flex-start;
	}

	.footer-info dt {
		margin: 0 0 1rem;
		font-size: 1.6rem;
	}

	.footer-info dd {
		padding-left: 0;
	}

	.footer-conatct ul {
		font-size: 2rem;
		font-weight: 200;
	}

	.footer-conatct__tel::before {
		width: 36px;
		height: 32px;
		margin-right: 1rem;
	}

	.footer-conatct__fax::before {
		width: 36px;
		height: 32px;
		margin-right: 1rem;
	}

	.footer-conatct__mail::before {
		width: 36px;
		height: 26px;
		margin-right: 1rem;
	}

	.copyright {
		margin-top: 4rem;
		font-size: 1.2rem;
		text-align: center;
		color: #828282;
	}

}


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

	スマートフォンナビ

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

.sp-nav-wrap {
	position: fixed;
	z-index: 999;
	top: -1000%;
	left: 0;
	width: 100%;
	height: 100vh;
	background: #fff;
	transition: all 0.6s;
}

.sp-nav-wrap.is-active {
    top: 0;
}

.sp-nav-wrap.is-active .sp-nav__body {
	position: fixed;
	z-index: 498; 
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.sp-nav__body-box {
	padding: 10rem 2rem 0;
}

.sp-nav-title {
	display: inline-block;
	margin: 0 0 1rem;
	padding: .8rem;
	border-top: 1px solid #828282;
	border-right: 1px solid #828282;
	border-left: 1px solid #828282;
	line-height: 1;
	color: #828282;
}

.sp-nav {
	padding: 0;
}

.sp-nav a {
	display: block;
	padding: 1.6rem 0;
	color: #828282;
}

.sp-nav__list {
	border-top: 1px solid #828282;
}

.sp-nav-child {
	margin-left: 4rem;
	padding-bottom: 1rem;
}

.sp-nav-child__list {}

.sp-nav-child a,
.sp-nav__list-nolink {
	display: block;
	padding: 0.5rem 0;
	color: #828282;
}

.sp-nav-grandchild {
	margin-left: 4rem;
}

.sp-nav-footer {
	margin: 0 -2rem;
	padding: 0 2rem;
	background-color: #DFDFD9;
}

.sp-nav-footer li + li {
	border-top: 1px solid #fff;
}

.sp-nav-footer a {
	display: block;
	padding: 1.6rem 0;
	color: #5E2361;
}


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

	woocommerce レイアウト

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

.customify-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -2rem -4rem;
}

.home .customify-grid {
	margin: 0;
}

.post-type-archive-product .customify-grid,
.tax-product_cat .customify-grid,
.tax-product_tag .customify-grid {
	flex-direction: row-reverse;
}

.customify-col-12 {
	width: 100%;
	margin: 0 0 4rem;
	padding: 0 2rem;
}

.customify-col-9_sm-12-last_sm-first {
	width: 75%;
	margin: 0 0 4rem;
	padding: 0 2rem;
}

.customify-col-3_sm-12 {
	width: 25%;
	margin: 0 0 4rem;
	padding: 0 2rem;
}

.customify-col-6_md-6_sm-12_xs-12 {
	width: 50%;
	margin: 0 0 4rem;
	padding: 0 2rem;
}

@media screen and (max-width: 768px) {
	
	.post-type-archive-product .customify-grid,
	.tax-product_cat .customify-grid,
	.tax-product_tag .customify-grid {
		flex-direction: column;
	}

	.customify-col-9_sm-12-last_sm-first {
		width: 100%;
	}

	.customify-col-3_sm-12 {
		width: 100%;
	}

	.customify-col-6_md-6_sm-12_xs-12 {
		width: 100%;
	}
	
}


.product-categories {
	margin-bottom: 4rem;
}

.product-categories .is-select {
	font-weight: 500;
}

.product-categories li {
	position: relative;
	margin: 0 0 .4rem;
	padding: 0 0 0 3.2rem;
	color: #5e2361;
}

.btn-child-open {
	position: absolute;
	top: 6px;
	left: 0;
	display: block;
	width: 21px;
	height: 21px;
	border: 1px solid #5e2361;
}

.btn-child-open::before,
.btn-child-open::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 50%;
	height: 1px;
	background-color: #5e2361;
	transform: translateY(-50%) translateX(-50%);
}

.btn-child-open::after {
	transform: translateY(-50%) translateX(-50%) rotate(90deg);
}

.btn-child-open.is-active::after {
	transform: translateY(-50%) translateX(-50%) rotate(0);
}

.product-categories a {
	display: block;
	color: #5e2361;
}

.sub-categories {
	display: none;
	margin: 1rem 0 1rem;
}

.sub-categories li {
	position: relative;
	padding: 0 0 0 1.6rem;
}

.sub-categories li::before {
	content: '';
	position: absolute;
	top: 12px;
	left: 0;
	display: block;
	width: 10px;
	height: 10px;
	background-color: #828282;
	border-radius: 50%;
}

.sub-categories a {
	display: block;
	color: #828282;
}


.product-tags-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -0.5rem -1rem;
}

.product-tags-list li {
	margin: 0 0 1rem;
	padding: 0 0.5rem;
}

.product-tags-list a {
	display: block;
	padding: 0.4rem;
	background-color: #e6e6e6;
	line-height: 1.2;
	color: #828282;
}

.site-content span.amount {
	color: #828282;
}

.product-search {
	position: relative;
	margin: 0 0 4rem;
}

.product-search input[type="text"] {
	width: 100%;
	padding: 1rem;
	border: 1px solid #828282;
}

.btn-search {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 40px;
	height: 40px;
	background: transparent url("../images/common/icon-search-gray.svg") no-repeat center center !important;
	background-size: 20px 20px !important;
	transform: translateY(-50%);
}



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

	商品 - 詳細

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

.woocommerce div.product .product_title {
	position: relative;
	margin: 0 0 2rem;
	padding: 0 0 2rem;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
}

.product_title::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 120px;
	height: 1px;
	background-color: #828282;
}

div.product span.price,
div.product p.price {
	margin: 1.2rem 0 2rem;
	font-size: 2.4rem;
}

.woocommerce-product-details__short-description {
	position: relative;
	padding-top: 1rem;
}

.woocommerce-product-details__short-description::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 120px;
	height: 1px;
	background-color: #828282;
}

.product_meta {
	margin-top: 4rem;
}

.quantity {
	margin: 0 0 1rem;
}

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

.wc-single-tabs .tabs {
	display: none !important;
}

.woocommerce-Tabs-panel h2:first-child {
	display: none !important;
}


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

	カートページ

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

.woocommerce-cart-form__cart-item .quantity {
	margin: 0;
}

.woocommerce-cart-form__cart-item .input-qty-pm {
	background-color: #f9f9f9 !important;
}

.quantity .input-pm-minus,
.quantity .input-pm-plus {
	background-color: #f9f9f9 !important;
}

.quantity .input-text {
	background-color: #fff;
	border-color: #E5E5E5;
}


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

	カタログ・特集

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

.catalog-row {
	display: flex;
	justify-content: space-between;
	margin-bottom: -4rem;
}

.catalog-aside {
	width: 17.5438596%;
	margin: 0 0 4rem;
	padding: 0 6rem 0 0;
	border-right: 1px solid #828282;
}

.catalog-contents {
	width: 740px;
	margin: 0 0 4rem;
}

@media screen and (max-width: 980px) {
	
	.catalog-row {
		flex-direction: column;
	}

	.catalog-aside {
		width: 100%;
		padding: 0;
		border-right: none;
	}

	.catalog-contents {
		width: 100%;
	}
	
}

.catalog-aside__box {
	position: sticky;
	top: 120px;
}

@media screen and (max-width: 980px) {
	
	.catalog-aside__box {
		position: static;
	}
	
}


.catalog-aside__title {
	margin: 0 0 3.2rem;
	padding: 2rem 0 10rem 2rem;
	background-color: #D7D4D5;
	font-size: 2.4rem;
	line-height: 1.2;
}

.catalog-aside__title:last-child {
	margin-bottom: 0;
}

.catalog-aside__title-inner {
	position: relative;
	z-index: 2;
	white-space: nowrap;
}

.catalog-archive-list li {
	margin: 0 0 1rem;
	border-bottom: 1px solid #d3d0c9;
}

.catalog-archive-list a {
	display: block;
	padding: 1rem 0;
	font-size: 4rem;
	line-height: 1;
}

.catalog-box {
	color: #686868;
}

.featured-archive-list li {
	margin-bottom: 4rem;
}

.featured-archive-list a {
	display: block;
	color: #686868;
	opacity: .5;
}

.featured-archive-list li.is-active a {
	opacity: 1;
}

.featured-archive-list__num {
	padding: 1rem 0 .2rem;
	font-size: 3.2rem;
	line-height: 1;
}

.featured-archive-list__title {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.4;
}

@media screen and (max-width: 980px) {
	
	.featured-archive-list li {
		margin-bottom: 1.2rem;
	}
	
	.featured-archive-list a {
		display: flex;
		align-items: center;
		opacity: 1;
	}

	.featured-archive-list__num {
		width: 8rem;
		padding: 0;
	}

	.featured-archive-list__title {
		width: calc(100% - 8rem);
	}
	
}


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

	特集

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

.featured-section + .featured-section {
	margin-top: 12rem;
}

@media screen and (max-width: 980px) {
	
	.featured-section + .featured-section {
		margin-top: 6rem;
	}
	
}


.featured__head {
	position: relative;
	margin: 0 0 4rem;
}

.featured__head-num {
	position: absolute;
	left: 0;
	font-size: 6rem;
	line-height: 1;
}

.featured__head-title {
	position: relative;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.featured__head-title::after {
	content: '';
	display: block;
	max-width: 100%;
	width: 10rem;
	height: 1px;
	margin: 1.2rem auto 0;
	background-color: #555450;
}

@media screen and (max-width: 980px) {
	
	.featured__head-num {
		position: static;
		margin: 0;
		font-size: 2rem;
		font-weight: 500;
		text-align: center;
	}

	.featured__head-title {
		font-size: 2.4rem;
	}
	
}


.featured__photo {
	margin: 0 0 2.6rem;
}

.featured__photo-sub {
	display: flex;
	margin: 0 -1.3rem;
}

.featured__photo-sub-col {
	width: 50%;
	margin-bottom: 2.6rem;
	padding: 0 1.3rem;
}

.featured__title {
	margin: 0 0 2rem;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.featured__body > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 980px) {
	
	.featured__photo {
		margin: 0 0 1rem;
	}

	.featured__photo-sub {
		margin: 0 -0.5rem;
	}

	.featured__photo-sub-col {
		margin-bottom: 2rem;
		padding: 0 0.5rem;
	}

	.featured__title {
		font-size: 2rem;
	}
	
}


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

	News

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

.news-list-section {
	position: relative;
	padding: 2rem 0;
}

.news-list-section::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 114px;
	height: 56px;
	background: url("../images/top/arrow-down.svg") no-repeat center center;
	background-size: contain;
	transform: translateY(50%) translateX(-50%);
}

@media screen and (max-width: 980px) {
	
	.news-list-section::after {
		width: 58px;
		height: 28px;
	}
	
}


.home .news-list-wrap {
	overflow-y: auto;
	height: 40rem;
	border-top: 2px solid #5E2361;
}


.news-list-row {
	padding: 3.2rem 6.2rem;
	border-bottom: 1px solid #828282;
}

.news-list {
	display: flex;
}

.news-list-col-date {
	width: 24rem;
}

.news-list-date {
	display: flex;
	margin: 0 -2.4rem;
}

.news-list-date__year {
	width: 8rem;
	padding: 0;
	font-size: 2rem;
	font-weight: 200;
	line-height: 1;
	text-align: center;
}

.news-list-date__month {
	position: relative;
	width: 8rem;
	padding: 3.2rem 0 0;
	font-size: 3.6rem;
	font-weight: 300;
	line-height: 1;
	text-align: center;
}

.news-list-date__day {
	position: relative;
	width: 8rem;
	padding: 3.2rem 0 0;
	font-size: 3.6rem;
	font-weight: 300;
	line-height: 1;
	text-align: center;
}

.news-list-date__month::before,
.news-list-date__day::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 1px;
	background-color: #5E2361;
	transform: rotate(24deg);
}

.news-list-col-text {
	width: calc(100% - 24rem);
}

.news-list__title {
	margin: 0 0 1rem;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.4;
	color: #828282;
}

.news-list__excerpt {
	margin: 0;
	line-height: 1.4;
	color: #828282;
}

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

	.news-list-row {
		padding: 2rem;
	}

	.news-list {
		display: block;
	}

	.news-list-col-date {
		width: 100%;
	}

	.news-list-date {
		margin-bottom: 1rem;
	}

	.news-list-date__year {
		font-size: 1.6rem;
	}

	.news-list-date__month {
		padding: 1.6rem 0 0;
		font-size: 2.4rem;
	}

	.news-list-date__day {
		padding: 1.6rem 0 0;
		font-size: 2.4rem;
	}

	.news-list-col-text {
		width: 100%;
	}
	
}


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

	company

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

.company-box__head {
	width: 128px;
	padding: 0 2rem;
}

.company-box__title {
	position: relative;
	padding-bottom: 1.6rem;
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1;
	writing-mode: vertical-rl;
}

.company-box__title:after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 50%;
	display: block;
	width: 100%;
	height: 1px;
	background-color: #5E2361;
}

.company-box___body {
	width: calc( 100% - 128px );
	padding: 0 2rem;
}

.greetings-section {
	margin-top: 72rem;
}

.company-photo {
	display: flex;
	margin: -16rem -0.5rem 4rem;
}

.company-photo__col {
	width: 20%;
	padding: 0 0.5rem;
}

.greetings-box__title {
	margin: 0 0 4rem;
	font-size: 3.2rem;
	line-height: 1.4;
}

@media screen and (max-width: 768px) {
	
	.company-box__head {
		width: 100%;
		margin-bottom: 2rem;
		padding: 0 2rem;
	}

	.company-box__title {
		font-size: 3.2rem;
		writing-mode: horizontal-tb;
	}

	.company-box___body {
		width: 100%;
		padding: 0 2rem;
	}
	
	.greetings-section {
		margin-top: 4rem;
	}

	.company-photo {
		flex-wrap: wrap;
		margin-top: 0;
		margin-bottom: 1rem;
	}

	.company-photo__col {
		width: 33.33333333%;
		margin-bottom: 1rem;
	}
	
	.greetings-box__title {
		margin-bottom: 2rem;
		font-size: 2rem;
	}
	
}


.history-box {
	display: flex;
	justify-content: space-between;
	margin: 0 0 4rem;
}

.history-box__head {
	position: relative;
	width: 16rem;
	padding: 0 0 2rem;
	line-height: 1;
}

.history-box__head:before {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	height: 8rem;
	width: 0.1rem;
	background-color: #d7d7d7;
}

.history-box__head:after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	height: .1rem;
	width: 2rem;
	background-color: #d7d7d7;
	transform: rotate(45deg);
	transform-origin: right bottom;
}

.history-box__year {
	margin: 0 0 1rem;
	font-size: 5.2rem;
}

.history-box__unit {
	font-size: 1.6rem;
}

.history-box__name {
	
}

.history-box__body {
	width: calc(100% - 20rem);
	padding: 1rem 0 0;
}

.history-box__body > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	
	.history-box__head {
		width: 12rem;
		padding: 0 0 2rem;
	}

	.history-box__year {
		font-size: 2.4rem;
	}

	.history-box__unit {
		font-size: 1.6rem;
	}

	.history-box__body {
		width: calc(100% - 12rem);
		padding-left: 2rem;
	}
	
}


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

	特定商取引法に基づく表記

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

.law-info {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1rem 4rem;
}

.law-info dt {
	width: 16rem;
	padding: 0 1rem;
	text-align: right;
}

.law-info dd {
	width: calc(100% - 16rem);
	padding: 0 1rem;
	word-wrap: break-word;
}

@media screen and (max-width: 768px) {
	
	.law-info {
		display: block;
	}
	
	.law-info dt {
		width: 100%;
		text-align: left;
	}

	.law-info dd {
		width: 100%;
	}
	
}


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

	ご利用ガイド

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

.guide-header {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -2rem 6rem;
}

.guide-header__head {
	width: 24rem;
	padding: 0 2rem;
}

.guide-header__title {
	font-size: 3.2rem;
	font-weight: 500;
}

.guide-header__body {
	width: calc(100% - 24rem);
	padding: 0 2rem;
}

.guide-header__body > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	
	.guide-header {
		margin-bottom: 4rem;
	}
	
	.guide-header__head {
		width: 100%;
		margin-bottom: 1rem;
	}

	.guide-header__title {
		font-size: 2.4rem;
	}

	.guide-header__body {
		width: 100%;
	}
	
}


.guide-nav {
	display: flex;
	border-bottom: 1px solid #686868;
}

.guide-nav li {
	width: 50%;
}

.guide-nav a {
	display: block;
	padding: 1.6rem 1rem;
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	cursor: pointer;
	color: #686868;
}

.guide-nav .is-active a {
	background-color: #686868;
	color: #fff;
}

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

	home

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

.top-key {
	position: relative;
}

.top-key img {
	display: block;
	max-width: none;
	object-fit: cover;
}

.top-key__head img {
	display: block;
	max-width: none;
	width: 100%;
	object-fit: cover;
}

.top-key__title {
	padding: 1.6rem 1rem;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 10px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	
	.top-key__title {
		font-size: 2rem;
		line-height: 1.4;
	}
	
}


.top-key__footer {
	display: flex;
}

.top-key__footer-col {
	width: 33.33333333%;
}

.top-key__footer img {
	display: block;
	width: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 1;
}

@media screen and (max-width: 768px) {
	
	.top-key__footer-col:nth-child(1) {
		width: 100%;
	}
	
	.top-key__footer-col:nth-child(2),
	.top-key__footer-col:nth-child(3) {
		display: none;
	}
	
}

.fixed-banner {
	position: absolute;
	right: 0;
	bottom: 0;
}

.fixed-banner img {
	width: 230px;
}

@media screen and (max-width: 768px) {
	
	.fixed-banner {
		position: static;
		padding: 1rem 2rem 2rem;
		text-align: center;
	}
	
	.fixed-banner img {
		margin: 0 auto;
	}
	
}


.top-news {
	padding-top: 6rem;
	padding-bottom: 6rem;
}

@media screen and (max-width: 768px) {
	
	.top-news {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	
}


.top-product {
	padding-top: 6rem;
	padding-bottom: 4rem;
	border-left: 2.8rem solid #5E2361;
	border-right: 2.8rem solid #5E2361;
}

.top-product .container {
	position: relative;
}

.heading-product {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1;
	writing-mode: vertical-rl;
	transform:  translateX(-180%);
}

@media screen and (max-width: 768px) {
	
	.top-product {
		padding-top: 4rem;
		padding-bottom: 4rem;
		border-left-width: 2rem;
		border-right-width: 2rem;
	}
	
	.heading-product {
		display: none;
	}
	
}

.top-ranking {
	margin-bottom: 8rem;
}

.ranking-section {
	display: flex;
	margin-top: 8rem;
}

.ranking-section__head {
	width: 32rem;
}

.ranking-section__body {
	width: calc( 100% - 32rem );
}

.ranking-section__row {
	display: flex;
	justify-content: space-between;
}

.ranking-section__col {
	width: 33.33333333%;
	padding: 0 2rem;
}

@media screen and (max-width: 768px) {
	
	.top-ranking {
		margin-bottom: 4rem;
	}
	
	.ranking-section {
		flex-direction: column;
		margin-top: 4rem;
	}
	
	.ranking-section__head {
		position: relative;
		width: 100%;
		margin-bottom: 4rem;
	}

	.ranking-section__body {
		width: 100%;
	}
	
	.ranking-section__row {
		flex-direction: column;
		margin-bottom: -4rem;
	}

	.ranking-section__col {
		width: 100%;
		margin-bottom: 2rem;
		padding: 0 2rem;
	}
	
}


.ranking-section__title {
	margin: 0 0 1rem;
}

.ranking-section__title img {
	width: 268px;
	height: auto;
}

.ranking-section__en {
	padding-left: 4.8rem;
	font-size: 2.4rem;
	line-height: 1.1;
}

@media screen and (max-width: 768px) {
	
	.ranking-section__title {
		position: relative;
	}

	.ranking-section__title img {
		width: 132px;
	}

	.ranking-section__en {
		position: absolute;
		top: calc( 100% + 1rem);
		left: 0;
		padding: 0;
		writing-mode: vertical-rl;
		font-size: 2rem;
		white-space: nowrap;
	}
	
}


.ranking-box {
	position: relative;
	display: block;
	margin: 0 2rem;
}

@media screen and (max-width: 768px) {
	
	.ranking-box {
		margin: 0 4rem 0;
	}

}


.ranking-box__num {
	position: absolute;
	top: -2rem;
	left: -3.2rem;
	width: 8rem;
}

@media screen and (max-width: 768px) {
	
	.ranking-box__num {
		top: -1rem;
		left: -1rem;
		width: 6rem;
	}
	
}


.ranking-box__photo {
	margin: 0 0 1rem;
}

.ranking-box__photo img {
	display: block;
	border-radius: 50%;
	aspect-ratio: 1/1;
}

.ranking-box__title {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
}

.slick-prev {
	display: none !important;
}

.btn-slide-next {
	position: absolute;
	top: 50%;
	right: -80px;
	width: 52px;
	transform: translateY(-50%);
	cursor: pointer;
}


.recommend-slide-wrap {
	margin: 0 -2rem;
}

.recommend-box {
	display: block;
	margin: 0 2rem;
	color: #828282;
}

.recommend-box__photo {
	margin: 0 0 1rem;
}

.recommend-box__title {
	margin: 0 0 1rem;
	font-size: 1.6rem;
	text-align: center;
}

.recommend-box__price {
	text-align: center;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	
	.recommend-slide-wrap {
		margin: 0 -1rem;
	}
	
	.recommend-slide {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: -2rem;
	}
	
	.recommend-slide__col {
		width: 50%;
		margin: 0 0 2rem;
	}
	
	.recommend-box {
		margin: 0 1rem;
	}
	
}


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

	お気に入り

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

.woocommerce .wishlist-title {
    margin-bottom: 0;
}

.woocommerce .wishlist-title {
    display: block;
}

.woocommerce .wishlist-title h2 {
	display: block;
	margin: 0 0 4rem;
	padding: 0;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.woocommerce .wishlist-title h2::after {
	content: '';
	display: block;
	max-width: 100%;
	width: 10rem;
	height: 1px;
	margin: 1.2rem auto 0;
	background-color: #555450;
}

@media screen and (max-width: 768px) {
	
	.woocommerce .wishlist-title h2 {
		margin: 0 0 2rem;
		font-size: 2.4rem;
	}
	
}


.woocommerce table.wishlist_table {
	font-size: 1.6rem;
}

.woocommerce .yith_wcwl_wishlist_footer .yith-wcwl-share {
	display: flex;
	float: none;
	align-items: center;
	margin: 0 -0.5rem;
}

.woocommerce .yith-wcwl-share .yith-wcwl-share-title {
	margin: 0;
	padding: 0 0.5rem;
}

.woocommerce .yith-wcwl-share ul {
	margin: 0;
	padding: 0 0.5rem;
}

.yith-wcwl-share .share-button {}


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

	woocommerce

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

#customer_login .u-column1 {
	background-color: #e6e6e6;
}

#customer_login .u-column1,
#customer_login .u-column2 {
	padding: 4rem;
}

#customer_login h2 {
	font-size: 3.2rem;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	
	#customer_login .u-column1,
	#customer_login .u-column2 {
		padding: 2rem;
	}
	
	#customer_login h2 {
		font-size: 2rem;
	}
	
	form.register,
	.woocommerce-page .woocommerce-form-login {
		margin: 0;
		padding: 0;
	}
	
}


/* 商品一覧 */
.customify-grid-4_md-4_sm-4_xs-1 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -3rem;
}

.customify-grid-4_md-4_sm-4_xs-1 li {
	width: 25%;
	margin: 0 0 3rem;
	padding: 0 3rem;
}

.customify-grid-3_md-3_sm-3_xs-1 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -3rem;
}

.customify-grid-3_md-3_sm-3_xs-1 li {
	width: 25%;
	margin: 0 0 3rem;
	padding: 0 3rem;
}


/* 一覧の表示方法の切り替え */
.wc-grid-view .wc-product-contents {
	text-align: center;
}

.wc-list-view .wc-product-contents {
	text-align: left;
}

/* 一覧 カート */
.button.add_to_cart_button {
	display: block;
    padding: 1.6rem 0 1rem;
    background-color: transparent !important;
	border: none !important;
	border-bottom: 1px solid #828282 !important;
    border-radius: 0;
	font-size: 1.6rem !important;
    font-weight: 500;
    color: #828282;
    line-height: 1;
    text-align: center;
}

.wc-grid-view .button.add_to_cart_button {
	max-width: 100%;
}

.wc-list-view .button.add_to_cart_button {
	max-width: 160px;
	margin: 0 0 0 auto;
}



.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.6rem;
}

.woocommerce-loop-product__link {
	overflow: hidden;
	position: relative;
	display: block;
	margin-bottom: 1rem;
	color: #828282;
}

@media screen and (max-width: 768px) {
	
	.woocommerce ul.products {
		margin: 0  -1rem;
	}
	
	.woocommerce ul.products > li.customify-col {
		width: 50%;
		padding: 0 1rem;
	}
	
}


/* カテゴリー一覧 */

.wc-block-product-categories-list {}
.wc-block-product-categories-list-item {}
.wc-block-product-categories-list-item a {} 

.wc-block-product-categories-list.wc-block-product-categories-list--depth-1 {
	display: none;
}

li.collapsing.categories.self a {
    font-weight: bold;
}


/* 商品一覧　ページャー */
.pagination {
	margin-top: 8rem;
	margin-bottom: 8rem;
}

.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0 -0.5rem -1rem;
}

.pagination .nav-links .page-numbers {
	display: block;
	width: 4rem;
	height: 4rem;
	margin: 0 0.5rem 1rem !important;
	border: 1px solid #828282;
	color: #828282;
	line-height: 3.8rem;
	text-align: center;
}

.pagination .nav-links .page-numbers:hover,
.pagination .nav-links .page-numbers.current {
	background-color: #828282;
	border-color: #828282;
	color: #fff;
}

.pagination .nav-links .dots {
	border: none;
}

.pagination .nav-links .page-numbers.next,
.pagination .nav-links .page-numbers.prev {
	width: auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

.pagination .nav-links .page-numbers.next:hover,
.pagination .nav-links .page-numbers.prev:hover {
	background-color: #828282 !important;
	border-color: #828282;
	color: #fff;
}

@media screen and (max-width: 768px) {
	
	.pagination {
		margin-top: 4rem;
		margin-bottom: 4rem;
	}
	
}


/* 商品詳細 */
div.product_meta {
	font-size: 1.6rem;
}

div.product_meta .sku_wrapper {
	display: block;
	margin: 0;
	padding: 1rem 0;
	border-top: 1px solid #ccc;
}

div.product_meta .posted_in {
	display: block;
	margin: 0;
	padding: 1rem 0;
	border-top: 1px solid #ccc;
}

div.product_meta .tagged_as {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
	padding: 0.4rem 0;
	border-top: 1px solid #ccc;
}

.tagged_as a {
	display: block;
	margin: 1rem 0.5rem;
	padding: 1rem;
	background-color: #e6e6e6;
	line-height: 1;
}

.yith-wcwl-add-to-wishlist-button {
	display: inline-block;
	padding: .5rem 1rem;
	border: 1px solid #828282;
	font-size: 1.6rem;
	color: #828282;
}


.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--themed-button) svg.yith-wcwl-add-to-wishlist-button-icon {
	color: #828282;
}


/* 商品詳細 - 関連商品 */
.related.products {
	margin-top: 8rem;
	margin-bottom: 8rem;
}

.related.products > h2 {
	margin: 0 0 4rem;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.related.products > h2::after {
	content: '';
	display: block;
	max-width: 100%;
	width: 10rem;
	height: 1px;
	margin: 1.2rem auto 0;
	background-color: #555450;
}

@media screen and (max-width: 768px) {
	
	.related.products > h2 {
		margin: 0 0 2rem;
		font-size: 2.4rem;
	}
	
}

.text-uppercase {
	font-size: 1.4rem;
}



.woocommerce ul.products li.product .price {
	margin: 0;
	font-size: 1.6rem;
}

.wc-product-inner .wc-product-contents > * {
	margin: 1rem 0 0;
}


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

	購入手続きページ

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

.woocommerce-checkout-review-order .cart-subtotal th,
.woocommerce-checkout-review-order .cart-subtotal td {
	border: none;
}