@charset "utf-8";
html {
	scroll-behavior: smooth;
}
.mt40_100 {
	margin-top: 10.6vw!important;
}
@media screen and (min-width: 768px) {
	.mt40_100 {
		margin-top: 100px!important;
	}
}
/*----------------------------------------
	coupon
-----------------------------------------*/
#fwCms_wrapper a.btn_osechi_kakaku, 
#fwCms_wrapper a.btn_osechi_kakaku:link, 
#fwCms_wrapper a.btn_osechi_kakaku:visited {
	background-color: #edcf66;
	position: relative;
}
#fwCms_wrapper a.btn_osechi_kakaku::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	right: 2.93vw;
	bottom: 0;
	width: 1em;
	height: 1em;
	margin: auto;
	box-sizing: border-box;
	background: transparent url("../img/251031_arrow01.svg") no-repeat center center;
	background-size: auto .8em;
	transform: rotate(90deg);
}
#fwCms_wrapper .coupon_col2 {
    display: block;
    margin: 0 10vw;
}
#fwCms_wrapper .coupon_bg01 {
    background: #f9f5f2;
    padding: 10vw 2vw 13vw;
}
#fwCms_wrapper .btn_bubiki::after {
    transform: rotate(90deg);
}
#fwCms_wrapper #webjuhan-bubiki {
    padding-top: 18.6vw;
}
#fwCms_wrapper .special_project {
	margin: 0 5vw;
	padding: 0 0 10vw;
	background: #ffffff;
	border: solid #f9e8db 8px;
}
#fwCms_wrapper .special_project .bn {
	width: 90%;
	margin: 0 auto;
}
@media screen and (min-width: 768px) {
    #fwCms_wrapper .coupon_col2 {
        display: flex;
        justify-content: space-around;
        margin: 0;
    }
	#fwCms_wrapper .coupon_col2 > div {
		width: 50%;
	}
    #fwCms_wrapper .coupon_bg01 {
        padding: 35px 20px 55px;
    }
    #fwCms_wrapper #webjuhan-bubiki {
        padding-top: 80px;
    }
	#fwCms_wrapper .special_project {
		margin: 0 20px;
		padding: 0 0 60px;
		background: #ffffff;
		border: solid #f9e8db 16px;
	}
	#fwCms_wrapper .special_project .bn {
		max-width: 800px;
	}
}
/*----------------------------------------
	bn_osechi
-----------------------------------------*/
#fwCms_wrapper #osechi {
	padding-top: 15vw;
}
@media screen and (min-width: 768px) {
	#fwCms_wrapper #osechi {
		padding-top: 80px;
	}
	#fwCms_wrapper .bn_osechi h2 {
		max-width: 955px;
		margin: 0 auto;
	}
}
/*----------------------------------------
	osechiDeliveryArea
-----------------------------------------*/

#fwCms_wrapper .osechiDeliveryArea {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	margin: auto;
}

#fwCms_wrapper .osechiDeliveryArea dl {
	width: calc(50% - 0.665%);
	background: #fcf8e5;
}

#fwCms_wrapper .osechiDeliveryArea dl:nth-child(n+3) {
	margin-top: 1.33vw;
}

#fwCms_wrapper .osechiDeliveryArea dl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 14.1vw;
	background-color: #edcf66;
	background-size: auto 100%;
}

#fwCms_wrapper .osechiDeliveryArea dl dd {
	height: 40vw;
}

#fwCms_wrapper .osechiDeliveryArea dl dd ul li {
	border-bottom: 1px solid #edd9c4;
}

#fwCms_wrapper .osechiDeliveryArea dl dd ul li a {
	display: block;
	padding: 3.4vw 10.6vw 3.4vw 4vw;
	background: url("../img/251031_arrow_osechi01.svg") no-repeat right 3.333vw center;
	background-size: 3.333vw auto;
}

@media screen and (min-width: 768px) and (max-width: 840px) {
	#fwCms_wrapper .osechiDeliveryArea dl dt.font16_20 {
		font-size: 1.8rem;
	}
	#fwCms_wrapper .osechiDeliveryArea dl dd ul li.font14_16 {
		font-size: 1.4rem;
	}
}

@media screen and (min-width: 768px) {
	#fwCms_wrapper .osechiDeliveryArea {
		max-width: 1080px;
		width: 98.7%;
	}

	#fwCms_wrapper .osechiDeliveryArea dl {
		max-width: 208px;
		width: 19.25%;
	}

	#fwCms_wrapper .osechiDeliveryArea dl:nth-child(n+3) {
		margin-top: 0;
	}

	#fwCms_wrapper .osechiDeliveryArea dl dt {
		height: auto;
		padding: 12px 15px;
	}

	#fwCms_wrapper .osechiDeliveryArea dl dd {
		height: inherit;
	}

	#fwCms_wrapper .osechiDeliveryArea dl dd ul li a {
		padding: 20px 0px 20px 30px;
		background-position: right 16px center;
		background-size: 17px auto;
	}
}

/*----------------------------------------
	osechi product_list
-----------------------------------------*/
#fwCms_wrapper #umeda,
#fwCms_wrapper #kyoto,
#fwCms_wrapper #kobe,
#fwCms_wrapper #tokyo,
#fwCms_wrapper #ueno,
#fwCms_wrapper #nagoya,
#fwCms_wrapper #shizuoka,
#fwCms_wrapper #sapporo,
#fwCms_wrapper #fukuoka,
#fwCms_wrapper #shimonoseki {
	padding-top: 21.3vw;
	margin-top: -10.6vw;
}
#fwCms_wrapper .product_list_wrapper {
	background-color: #fff1eb;
	padding-bottom: 16vw;
	position: relative;
}
#fwCms_wrapper .product_list_item {
	height: 106.7493vw;
	position: relative;
}
#fwCms_wrapper .product_list_wrapper.haisou .product_list_item {
	height: 105.21vw
}
#fwCms_wrapper .product_list_wrapper.haisou .product_list_item:nth-of-type(3) {
	height: 117.811vw;
}
#fwCms_wrapper .product_list_wrapper.tentou .product_list_item {
	height: 89vw;
}
#fwCms_wrapper a.btn_osechi, 
#fwCms_wrapper a.btn_osechi:link, 
#fwCms_wrapper a.btn_osechi:visited {
	min-height: 10.666vw;
	padding: 1.33vw 6vw;
	background-color: #2b2c30;
	color: #fff;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
}
#fwCms_wrapper a.btn_osechi::after {
	display: none!important;
}
#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi, 
#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi:link, 
#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi:visited {
	position: static;
	min-height: 13.33vw;
}
#fwCms_wrapper .product_list_item a.btn_osechi,
#fwCms_wrapper .product_list_item a.btn_osechi:link,
#fwCms_wrapper .product_list_item a.btn_osechi:visited {
	display: flex;
}
#fwCms_wrapper .leader {
	-webkit-line-clamp: none!important;
}
#fwCms_wrapper .product_list_wrapper.haisou > h3,
#fwCms_wrapper .product_list_wrapper.tentou > h3 {
	padding-top: 12vw;
}
#fwCms_wrapper a.btn_coupon {
	background-color: #73120b;
	color: #fff;	
}
#fwCms_wrapper a.btn_coupon::after {
	transform: rotate(-90deg);
}
@media screen and (min-width: 768px) {
	#fwCms_wrapper #umeda,
	#fwCms_wrapper #kyoto,
	#fwCms_wrapper #kobe,
	#fwCms_wrapper #tokyo,
	#fwCms_wrapper #ueno,
	#fwCms_wrapper #nagoya,
	#fwCms_wrapper #shizuoka,
	#fwCms_wrapper #sapporo,
	#fwCms_wrapper #fukuoka,
	#fwCms_wrapper #shimonoseki {
		padding-top: 20px;
		margin-top: 60px;
	}
	#fwCms_wrapper .product_list_wrapper {
		padding-bottom: 55px;
	}
	#fwCms_wrapper .product_list {
		width: 94%;
	}
	#fwCms_wrapper .product_list_item,
	#fwCms_wrapper .product_list_wrapper.haisou .product_list_item,
	#fwCms_wrapper .product_list_wrapper.haisou .product_list_item:nth-of-type(3),
	#fwCms_wrapper .product_list_wrapper.tentou .product_list_item {
		height: auto;
	}
	#fwCms_wrapper .product_list_item, 
	#fwCms_wrapper .product_list_item:nth-child(2n) {
		width: calc((100% - 30px) / 3);
		margin-right: calc(30px / 2);
	}
	#fwCms_wrapper a.btn_osechi, 
	#fwCms_wrapper a.btn_osechi:link, 
	#fwCms_wrapper a.btn_osechi:visited {
		min-height: 60px;
		padding: 10px 25px;
	}
	#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi, 
	#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi:link, 
	#fwCms_wrapper .product_list_wrapper.tentou a.btn_osechi:visited {
		min-height: 60px;
	}
	#fwCms_wrapper .product_list_wrapper.haisou > h3,
	#fwCms_wrapper .product_list_wrapper.tentou > h3 {
		padding-top: 80px;
	}
	#fwCms_wrapper .product_list_item_detail {
		margin-bottom: 90px;
	}
	#fwCms_wrapper .product_list_wrapper.tentou .product_list_item_detail {
		margin-bottom: 0px;
	}
}
/*----------------------------------------
	btn
-----------------------------------------*/
#fwCms_wrapper a.btn_top {
	background-color: #cf6e09;
}
#fwCms_wrapper a.btn_webjuhan {
	background-color: #73120b;
	color: #fff;
}
@media screen and (min-width: 768px) {
	#fwCms_wrapper .btn_top a {
		font-size: 2.0rem;
	}
}