
/* ------------------------------------------------------
   index
------------------------------------------------------ */
.shop_index h2{
	font-size:2.2rem;
}
.shop_index .titlelink_area{
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #364756;
	margin: 0 0 24px 0;
	padding: 0 0 14px 0;
}
@media screen and (max-width: 1283px) {
	.shop_index .titlelink_area{
		display: block;
		justify-content:flex-start;
	}
}
.shop_index .titlelink_area h2{
	border:0;
	margin:0;
	padding:0;
}
@media screen and (max-width: 1283px) {
	.shop_index .titlelink_area h2{
		margin:0 0 10px 0;
	}
}
.shop_index .titlelink_area a{
	background: url("../../../common/img/icon_arrow_black.svg") no-repeat left top 6px;
	background-size:13px 14px;
	padding-left: 22px;
	position: relative;
}
.shop_index .titlelink_area a:hover{
	color:#f47961;
	background: url("../../../common/img/icon_arrow_orange.svg") no-repeat left top 6px;
	background-size:13px 14px;
	padding-left: 22px;
	transition : 1s;
}
.shop_index .titlelink_area p{
	margin: 0;
}
.shop_index .goods_area{
	margin-bottom:100px;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area{
		margin-bottom:40px;
	}
}
.shop_index .goods_area ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding:0;
}
.shop_index .goods_area ul::after{
	content:"";
	display: block;
	width:30%;
}
.shop_index .goods_area ul li{
	background: #fff;
	width: calc(33.3333% - 16px);
    margin:0 0 20px 0;
	border-radius: 10px;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li{
		width: calc(50% - 6px);
		margin: 0 0 16px 0;
	}
}
.shop_index .goods_area ul li a{
	transition : 1s;
}
.shop_index .goods_area ul li a:hover{
		opacity: 0.6 
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li a:hover{
		margin-bottom:40px;
	}
}
.shop_index .goods_area ul li img{
	border-radius: 10px 10px 0 0;
	width:100%;
}
.shop_index .goods_area ul li h3,
.shop_index .goods_area ul li span{
		padding:0 24px;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li h3,
	.shop_index .goods_area ul li span{
			padding:0 20px;
	}
}
.shop_index .goods_area ul li h3{
	font-size:1.8rem;
	line-height: 2.4rem;
	margin:24px 0 10px 0;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li h3{
		font-size:1.6rem;
		margin:10px 0;
	}
}
.shop_index .goods_area ul li h3:before{
	display: none;
}
.shop_index .goods_area ul li span{
	display: block;
	margin-bottom:24px;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li span{
		margin-bottom:16px;
	}
}
.shop_index .goods_area ul li.icon_3packs,
.shop_index .goods_area ul li.icon_2packs,
.shop_index .goods_area ul li.icon_800g,
.shop_index .goods_area ul li.icon_400g{
	position: relative;
}
.shop_index .goods_area ul li.icon_3packs:after,
.shop_index .goods_area ul li.icon_2packs:after,
.shop_index .goods_area ul li.icon_800g:after,
.shop_index .goods_area ul li.icon_400g:after{
    position: absolute;
    font-size: 1.4rem;
    left: 14px;
    top: 14px;
	border-radius:10vw; 
    display: inline-block;
	vertical-align: middle;	
	background-color: #f47961;
	color:#fff;
	padding:8px 10px;
}
@media screen and (max-width: 1283px) {
	.shop_index .goods_area ul li.icon_3packs:after,
	.shop_index .goods_area ul li.icon_2packs:after,
	.shop_index .goods_area ul li.icon_800g:after,
	.shop_index .goods_area ul li.icon_400g:after{
		font-size: 1.2rem;
		left: 0;
		top: 0;
		border-radius:0 0 2px 0; 
		padding:4px 5px;
	}
}
.shop_index .goods_area ul li.icon_3packs:after{
    content: '800g×3袋セット';
}
.shop_index .goods_area ul li.icon_2packs:after{
    content: '800g×2袋セット';
}
.shop_index .goods_area ul li.icon_800g:after{
    content: '800g×1袋';
}
.shop_index .goods_area ul li.icon_400g:after{
    content: '400g×1袋';
}
/* ------------------------------------------------------
   sub
------------------------------------------------------ */
.shop .intro_area,
.shop .other_area{
	margin:0 0 100px 0;
}
@media screen and (max-width: 1283px) {
	.shop .intro_area,
	.shop .other_area{
		margin:0 0 70px 0;
	}
	.shop .other_area p{
		line-height: 1.6;
	}
}
.shop .intro_area .price{
	font-family: 'Outfit', sans-serif;
	font-size:2.8rem;
	margin:0;
}
.shop .intro_area .price span{
	font-size:1.6rem;
	margin:0 10px 0 0;
}
.intro_area .text{
	margin:0 0 20px 0;
}
@media screen and (max-width: 1283px) {
	.shop .intro_area .text{
		margin:0 0 20px 0;
	}
}
/* ------------------------------------------------------
   shop
------------------------------------------------------ */
.shop h1 {
    margin: 0 0 32px 0;
	font-size:3.4rem;
}
/* ------------------------------------------------------
   slide
------------------------------------------------------ */
.shop .bx-wrapper,
.shop .bxslider_thumbnail > li{
	z-index: 0;
}
.shop .slide_area{
	margin-bottom: 56px;	
}
.shop .bxslider_thumbnail {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
	padding:0;
}
.shop .bxslider_thumbnail > li {
   	margin: 0 14px 0 0;
	width: calc(25% - 14px);
	transition : 1s;
}
@media screen and (max-width: 1283px) {
	 .shop .bxslider_thumbnail > li {
			margin: 0 8px 0 0;
			width: calc(25% - 8px);
		}
}
.shop .bxslider_thumbnail > li:nth-of-type(4n) {
	margin-right: 0; 
}
.shop .bxslider_thumbnail > li > a {
    display: block;
    position: relative;
    padding-top: 75%;	
}
.shop .bxslider_thumbnail > li > a > img {
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 100%;
    max-height: 100%;
	border:2px solid #fff;
}
.shop .bxslider_thumbnail .active img{
	border:2px solid #364756;
}
.shop .bxslider_thumbnail > li:hover{
	background: rgba(255, 255, 255, 0.5);
	opacity: 0.6 
}
.shop .bxslider_thumbnail img{
	border-radius: 10px;
}
@media screen and (max-width: 1283px) {
	.shop .bxslider_thumbnail img{
		border-radius: 5px;
	}
}
.shop .bx-wrapper {
    background-color: transparent;
    margin: 0px auto;
    border: none;
    box-shadow: none;
	width:750px;
}
.shop .bx-wrapper img {
    display: block;
    width: 100%;
	border-radius: 10px;
}
.shop .icon_3packs,
.shop .icon_2packs,
.shop .icon_800g,
.shop .icon_400g{
	position: relative;
}
.shop .icon_3packs:after,
.shop .icon_2packs:after,
.shop .icon_800g:after,
.shop .icon_400g:after{
    position: absolute;
    font-size: 1.8rem;
    left: 20px;
    top: 20px;
	border-radius:10vw; 
    display: inline-block;
	vertical-align: middle;	
	background-color: #f47961;
	color:#fff;
	padding:8px 16px;
}
.shop .icon_3packs:after{
    content: '800g×3袋セット';
}
.shop .icon_2packs:after{
    content: '800g×2袋セット';
}
.shop .icon_800g:after{
    content: '800g×1袋';
}
.shop .icon_400g:after{
    content: '400g×1袋';
}
/* ------------------------------------------------------
   cart
------------------------------------------------------ */
.price_area{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin:0 0 32px 0;
}
@media screen and (max-width: 428px) {
	.price_area{
		display: block;
	}
}
.cart_area {
	width:auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media screen and (max-width: 428px) {
	.cart_area {
		display: block;
		margin:16px 0 0 0;
	}
}
.cart_area .form_text{
	font-size:1.8rem;
}
.cart_area .form_quantity{
	width:100px;
	height:20px;
	margin:0 20px
}
@media screen and (max-width: 428px) {
	.cart_area .form_quantity{
		width:80px;
		height:20px;
		margin:0 20px;
	}
}
.cart_area .form_product {
	font-family: 'Noto Sans JP',sans-serif;
	border: none;
	border-radius: 4px;
	display: block;
	background: #364756;
	color:#fff;
	text-align: center;
	padding:18px 34px 14px 34px;
	cursor: pointer;
	width:250px;
 }
@media screen and (max-width: 428px) {
	.cart_area .form_product {
		width:100%;
		margin:18px 0 0 0;		
	}
}
.cart_area .form_product[type="submit"]:after{
	content: " ";
	display: inline-block;
	width:30px;
	height:28px;
	background: url("../../../common/img/icon_cart_white.svg") no-repeat left top;
	background-size:30px 24px;
	margin-left: 4px;
	vertical-align: middle;
}
.cart_area .form_product:hover{
	background: #f47961;
	transition : 1s;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
}
input[type="number"] {
	-moz-appearance: textfield;
}
.p-qty {
	position: relative;
	display: inline-block;
}
.p-qty > .__arrow {
	position: absolute;
	top: calc(50% - 9px);
	right: 10px;
	transform: translate(0px, -50%);
	display: inline-block;
	border-width: 6px 4px;
	border-style: solid;
	border-color: transparent transparent rgb(0, 0, 0);
	cursor: pointer;
}
.p-cart_detail .p-qty > .__arrow {
	top: calc(50% - 7px);
	border-width: 5px 3px;
 	border-style: solid;
	border-color: transparent transparent rgb(0, 0, 0);
}
.p-qty > .__arrow.__down {
	top: calc(50% + 9px);
	border-bottom: 6px solid transparent;
	border-top: 6px solid rgb(0, 0, 0);
}
.p-cart_detail .p-qty > .__arrow.__down {
	border-bottom: 5px solid transparent;
	border-top: 5px solid rgb(0, 0, 0);
	top: calc(50% + 7px);
}
.p-qty__input {
	width: 91px;
	height: 40px;
	border: 1px solid rgb(112, 112, 112);
	border-radius: 5px;
	padding-left: 25px;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
input[type="number"] {
  -moz-appearance: textfield;
}
.p-qty {
	position: relative;
	display: inline-block;
	margin:0 16px 0 16px;
}
.p-qty > .__arrow {
	position: absolute;
	top: calc(50% - 9px);
	right: 10px;
	transform: translate(0px, -50%);
	display: inline-block;
	border-width: 6px 4px;
	border-style: solid;
	border-color: transparent transparent rgb(0, 0, 0);
	cursor: pointer;
}
.p-cart_detail .p-qty > .__arrow {
	top: calc(50% - 7px);
	border-width: 5px 3px;
	border-style: solid;
	border-color: transparent transparent rgb(0, 0, 0);
}
.p-qty > .__arrow.__down {
	top: calc(50% + 9px);
	border-bottom: 6px solid transparent;
	border-top: 6px solid rgb(0, 0, 0);
}
.p-cart_detail .p-qty > .__arrow.__down {
	border-bottom: 5px solid transparent;
	border-top: 5px solid rgb(0, 0, 0);
	top: calc(50% + 7px);
}
.p-qty__input {
	width: 91px;
	height: 40px;
	border: 1px solid rgb(112, 112, 112);
	border-radius: 5px;
	padding-left: 25px;
}