/* Layout
------------------------------------------*/
.main {
  padding: 0 4vw;
}
.front_page .main{
	padding: 0;
}


.pc-parts{
	display: none;
}
.sp-parts{
	display: block;
}
/* header
------------------------------------------*/
.header {
  display: none;
}
.sp-header {
  display: block;
}
.sp-header-cart a{
	color: var(--textColor);
}


.sp-header-logo {
	width: 50vw;
	text-align: center;
}
.sp-header-logo img {
	width: 50vw;
}


/* mainvisual */
.mainvisual {
	margin-bottom: 5vw;
}
.mainvisual ul li .text {
	top: 16vw;
	left: 4vw;
}
.mainvisual ul li .text .title {
	font-size: 4vw;
}
.mainvisual ul li .text p {
	font-size: 3vw;
	line-height: 1.2;
}

.mv-points{
	bottom: 2vw;
	left: 4vw;
	gap: 1vw;
	&>div{
		width: 20vw;
	}
}

/* footer
------------------------------------------*/
/* .footer {
  display: none;
}
.sp-footer {
  display: block;
} */

.pagetop-btn {
	bottom: 10vw;
	right: 2vw;
}
.pagetop-btn a {
	width: 10vw;
	height: 10vw;
	line-height: 10vw;
}
.footer {
	margin: 8vw 0 0 0;
	.footer-inner{
		padding: 8vw 4vw;
		.footer-nav {
			margin: 0 auto 5vw;
			width: 50vw;
			gap: 2vw;
			ul {
				display: block;
				li{
					a{
						font-size: 3.4vw;
						text-align: left;
					}
				}
			}
		}
		.footer-logo {
			margin: 0 auto 5vw;
			width: 50vw;
		}
		.sns{
			ul{
				gap: 2vw;
				li{
					a{
						font-size: 7vw;
					}
				}
			}
		}
	}
	.footer-copyright {
		height: 8vw;
		line-height: 8vw;
		font-size: 2.8vw;
	}
}

/* home
------------------------------------------*/

.main-recommend-wrapper{
	margin: 0 auto 5vw;
	.main-recommend{
		padding: 6vw 4vw;
		display: block;
		.main-recommend-cat{
			margin-bottom: 4vw;
			width: 100%;
			text-align: center;
			.main-recommend-cat-logo{
				margin: 0 auto 3vw;
				width: 40vw;
			}
			.main-recommend-cat-description{
				font-size: 4vw;
				margin: 0 auto 3vw;
				width: 70vw;
			}
			.main-recommend-cat-link{
				a{
					margin: 0 auto;
					width: 40vw;
					height: 8vw;
					line-height: 8vw;
					-webkit-border-radius: 4vw;
					-moz-border-radius: 4vw;
					border-radius: 4vw;
					font-size: 3vw;
				}
			}
		}
		.main-recommend-main{
			width: 100%;
			h2{
				margin-bottom: 4vw;
				.en{
					font-size: 5vw;
				}
				.ja{
					font-size: 3vw;
				}
			}
			ul{
				margin: 0 -1vw;
				li{
					margin: 0 1vw;
					.image{
						margin-bottom: 2vw;
					}
					h3{
						a{
							font-size: 3.7vw;
						}
					}
					.price,.price03{
						font-size: 3.5vw;
					}
				}
				.slick-arrow{
					top: 22vw;
					&::before{
						font-size: 5vw;
					}
				}
				.slick-prev{
					left: -3vw
				}
				.slick-next{
					right: -3vw;
				}
			}
		}
	}
}

.main-banner {
	margin-bottom: 10vw;
	padding: 8vw 4vw;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	ul{
		grid-template-columns: repeat(2, 1fr);
		gap: 2vw;
	}
}

.main-message{
	margin-bottom: 10vw;
	padding: 0 4vw;
	h2{
		margin-bottom: 4vw;
		font-size: 4.5vw;
	}
	.main-message-main{
		flex-direction: column;
		flex-flow: column-reverse;
		gap: 3vw;
		.text{
			width: 100%;
			font-size: 3.7vw;
		}
	}
}

.main-blog{
	padding: 0 4vw;
	h2{
		margin-bottom: 4vw;
		.en{
			font-size: 6vw;
		}
		.ja{
			font-size: 3.2vw;
		}
	}
	.main-blog-main{
		ul{
			grid-template-columns: repeat(2, 1fr);
			gap: 3vw 2vw;
			li{
				.image{
					margin-bottom: 2vw;
				}
				h3{
					.date{
						font-size: 3.2vw;
						margin-bottom: .1em;
					}
					a{
						font-size: 3.7vw;
					}
				}
			}
		}
		.main-blog-btn{
			a{
				margin: 4vw auto 0;
				width: 40vw;
				height: 8vw;
				line-height: 8vw;
				-webkit-border-radius: 4vw;
				-moz-border-radius: 4vw;
				border-radius: 4vw;
				font-size: 3vw;
			}
		}
	}
}

/* page
------------------------------------------*/

/* title */
.page-title {
  margin: 0 0 30px 0;
}

/* breadcrumb */
.breadcrumb {
  display: none;
}

/* title */
.ec-pageHeader h1 {
  font-size: 2.5rem;
}

/* product list */
.ec-productListRole {
  display: block;
}
.ec-productListRole__main {
  width: 100%;
}
.ec-productListRole__side {
  display: none;
}
.ec-searchnavRole__counter span {
  display: none;
}
.ec-searchnavRole__counter span.ec-font-bold {
  display: block;
}
.ec-shelfGrid {
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

/* product detail */
.ec-productRole .ec-grid2 {
  display: block;
}
.ec-productRole .ec-grid2__cell {
  width: 100%;
}
.ec-productRole .ec-grid2__cell:last-of-type {
  padding: 0;
  width: 100%;
}
.ec-sliderItemRole .item_nav {
  display: none;
}
.ec-sliderItemRole .slick-dots {
  display: flex;
  justify-content: center;
  margin: 10px 0 30px 0;
}
.ec-sliderItemRole .slick-dots li button {
  display: none;
}
.ec-sliderItemRole .slick-dots li:before {
  content: "";
  display: block;
  margin: 0 3px;
  width: 8px;
  height: 8px;
  background: var(--bgColor);
  border-radius: 4px;
}
.ec-sliderItemRole .slick-dots li.slick-active:before {
  background: var(--keyColorSub);
}

/* other common */
.ec-borderedDefs dl {
  display: block;
}
.ec-borderedDefs dl dt {
  margin: 0 0 10px 0;
  width: 100%;
}
.ec-borderedDefs dl dd {
  width: 100%;
}

/* login */
.ec-login .ec-grid2 {
  display: block;
}
.ec-login .ec-grid2 .ec-grid2__cell {
  width: 100%;
}
.ec-login .ec-grid2 .ec-grid2__cell:last-of-type {
  padding: 10px 0 0 0;
}

/* cart */
.page-cart .ec-grid3 {
  display: block;
}
.page-cart .ec-grid3 .ec-grid3__cell2 {
  width: 100%;
}
.page-cart .ec-grid3 .ec-grid3__cell {
  width: 100%;
}
.ec-guest {
  margin: 30px 0 0 0;
  padding: 30px;
}
.ec-cartRole__totalText {
  margin: -10px 0 20px 0;
  padding: 10px;
  border: var(--borderColor) 1px solid;
  border-radius: 3px;
}
.ec-cartHeader {
  display: none;
}
.ec-cartRow__amountColumn {
  width: 26%;
}
.ec-cartRow li.ec-cartRow__subtotalColumn {
  display: none;
}
.ec-cartRow__sutbtotalSP {
  opacity: 0.7;
  display: block;
  font-size: 1.3rem;
}
.ec-cartRow__amount {
  display: none;
}
.ec-cartRow__amountSP {
  display: block;
  margin: 0 0 10px 0;
}
.ec-cartRole__actions .ec-blockBtn--action,
.ec-cartRole__actions .ec-blockBtn--cancel {
  margin: 10px 0 0 0;
  width: 100%;
}
.ec-orderRole {
  display: block;
}
.ec-orderRole__detail {
  width: 100%;
}
.ec-orderRole__summary {
  width: 100%;
}
.ec-selects .ec-select__delivery {
  margin: 0 0 10px 0;
  width: 100%;
}
.ec-AddAddress__selectAddress {
  margin: 0 0 10px 0;
}

/* mypage */
.ec-navlistRole__navlist .ec-navlistRole__item {
  margin: 0 0 1px 0;
  width: 100%;
}
.ec-navlistRole__navlist .ec-navlistRole__item a {
  display: block;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  background: var(--bgColor);
  border-radius: 3px;
}
.ec-navlistRole__navlist .ec-navlistRole__item.active a {
  color: var(--bodyBgColor);
  background: var(--keyColorSub);
}
.ec-welcomeMsg {
  margin: 30px 0;
  padding: 0 0 30px 0;
  text-align: center;
  border-bottom: var(--borderColor) 1px solid;
}
.ec-historyRole__contents {
  display: block;
}
.ec-historyRole__header {
  margin: 0 0 20px 0;
  width: 100%;
}
.ec-favoriteRole__header {
  margin: 0 0 20px 0;
}
.ec-favoriteRole__itemList {
  display: flex;
  flex-wrap: flex;
  margin: 0 -15px;
}
.ec-favoriteRole__itemList li {
  position: relative;
  margin: 0 0 30px 0;
  padding: 0 15px;
  width: 25%;
}
.ec-favoriteRole__itemList li a.ec-closeBtn--circle {
  display: block;
  position: absolute;
  top: 5px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 3px;
}
.ec-favoriteRole__itemList li a.ec-closeBtn--circle:before,
.ec-favoriteRole__itemList li a.ec-closeBtn--circle:after {
  content: "";
  display: block;
  position: absolute;
  top: 19px;
  left: 10px;
  width: 20px;
  height: 2px;
  background: var(--keyColorSub);
  transform: rotate(45deg);
  border-radius: 1px;
}
.ec-favoriteRole__itemList li a.ec-closeBtn--circle:after {
  transform: rotate(135deg);
}
.ec-favoriteRole__itemList li a.ec-closeBtn--circle img {
  display: none;
}
.ec-favoriteRole__itemTitle {
  margin: 10px 0 0 0;
}
.ec-withdrawRole .ec-icon,
.ec-withdrawConfirmRole .ec-icon {
  display: none;
}

/* blog list */
.ec-blogListRole,
.ec-blogDetailRole {
  display: block;
}
.ec-blogListRole__main,
.ec-blogDetailRole__main {
  width: 100%;
}
.ec-blogListRole__side,
.ec-blogDetailRole__side {
  width: 100%;
}
.ec-blogListRole__main ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.ec-blogListRole__main .item {
  display: block;
}
.ec-blogListRole__main .image {
  width: 100%;
  height: auto;
}
.ec-blogListRole__main .text {
  margin: 20px 0 0 0;
  padding: 0;
  width: 100%;
}
.ec-blogListRole__main .text h3 {
  font-size: 1.8rem;
}
.ec-blogListRole__main .text p {
  display: none;
}
.ec-blogListRole__main .text .meta {
  margin: 10px 0 0 0;
}
.ec-blogListRole__main .text .meta .categories {
  display: none;
}

/* blog detail */
.ec-blogDetailRole__main h1 {
  font-size: 2.5rem;
}
.ec-blogDetailRole__main .sns ul li a .fa {
  margin: 0;
}
.ec-blogDetailRole__main .sns ul li a span {
  display: none;
}
.ec-blogDetailRole__main-content h2 {
  font-size: 2.2rem;
}

/* blog side */
