/*----------------------------------------
	天地　タイトル画像
-----------------------------------------*/
#fwCms_wrapper .fwCms_box .pageTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0;
  background-image: none!important;
  background-size: auto 100%;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .fwCms_box .pageTitle {
    max-width: none;
    background-image: url(/excludes/DMO/web/feature/v/christmascake/251001/img/251001_christmascake_mainbk01.jpg)!important;
	background-repeat: no-repeat;
    background-size: cover;
	  background-position: center;
  }
	#fwCms_wrapper .fwCms_box .pageTitle img{
		max-width: 920px;
	}
}

#fwCms_wrapper .fwCms_box .pageTitle span {
  width: 100%;
}

@media screen and (min-width: 768px) {
  #fwCms_wrapper .fwCms_box .pageTitle span {
    max-width: 1080px;
  }
}
#fwCms_wrapper .fwCms_box .pageTitle + p {
  width: 89.3333333333%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .fwCms_box .pageTitle + p {
    max-width: 1080px;
  }
}

#fwCms_wrapper .footer{padding-top:0!important;}

/*----------------------------------------
	キービジュアル　SPスライダー付
-----------------------------------------*/
#fwCms_wrapper .fullwidth-four-items{
	margin-top: 6.6vw !important;
}
#fwCms_wrapper .campaignTopPickup .swiper-area {
	background-color: #2d7049;
	background-image: url("/excludes/DMO/web/feature/v/christmascake/251001/img/top_bk01.jpg");
	background-size: cover;
}
#fwCms_wrapper .campaignTopPickup .swiper-area .black01{color:#fff!important;}

@media screen and (min-width: 768px) {
  #fwCms_wrapper .fullwidth-four-items{
	margin-top: 55px !important;
}
}

/*----------------------------------------
	スキップリンク
-----------------------------------------*/
#fwCms_wrapper .christmasMenu {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1px;
  -moz-column-gap: 1px;
       column-gap: 1px;
}
#fwCms_wrapper .christmasMenu li {
  width: 49.84%;
}
@media screen and (min-width: 768px) {
	#fwCms_wrapper .christmasMenu {
		max-width: 1080px;
		width: 92%;
		justify-content: space-between;
		margin: auto;}
	
  #fwCms_wrapper .christmasMenu li {
    width: calc(25% - (20px/4))!important;
  }
}
#fwCms_wrapper .christmasMenu li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 3.75em;
  background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/skiplink_bk_sp.jpg) center center no-repeat;
  background-size: cover;
  background-color: #bf3232;
  color: #fff;
}

#fwCms_wrapper .christmasMenu li > a.gray {
	background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/ranking_bk2_sp.jpg) center center no-repeat;
	background-size: cover;
	pointer-events: none;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .christmasMenu li > a {
    background-image: url(/excludes/DMO/web/feature/v/christmascake/251001/img/skiplink_bk_pc.jpg);
  }
	#fwCms_wrapper .christmasMenu li > a.gray {
    background-image: url(/excludes/DMO/web/feature/v/christmascake/251001/img/ranking_bk2_pc.jpg);
	background-size: cover;
	pointer-events: none;
  }
}
#fwCms_wrapper .christmasMenu li > a:after {
  content: "";
  display: block;
  width: 1em;
  height: 0.6em;
  background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/arrow_white.svg) center center no-repeat;
  background-size: cover;
}


/*----------------------------------------
	店舗・配送地域から探す
-----------------------------------------*/
#fwCms_wrapper .fmt_keyword dt::after {
    content: "";
    position: absolute;
    top: 0;
    right: -2.6vw;
    width: 0;
    height: 0;
    border-top: 3.6vw solid transparent;
    border-bottom: 3.6vw solid transparent;
	border-left: 2.6vw solid #2f6d51;}

#fwCms_wrapper .fmt_keyword dt {
    background-color: #2f6d51!important;
}

#fwCms_wrapper .shopList {
	width: 100%;
    max-width: 1080px;
    margin: 0 auto;
  display: flex;
  align-items: stretch;
  -moz-column-gap: 1.3333333333%;
       column-gap: 1.3333333333%;
  row-gap: 0.5em;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList {
	  width:92%;
    justify-content: space-between;
    -moz-column-gap: 0.9259259259%;
         column-gap: 0.9259259259%;
  }
	#fwCms_wrapper .fmt_keyword dt::after{
	    right: -14px;
        border-top: 18px solid transparent;
        border-bottom: 18px solid transparent;
        border-left: 14px solid #2f6d51;
}
}
#fwCms_wrapper .shopList .shop {
  width: 49.3333333333%;
  margin: 0;
  background-color: #f9f4eb;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop {
    width: 19.2592592593%;
  }
}
#fwCms_wrapper .shopList .shop h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 16vw;
  color: #fff;
  background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/top_shop_menu_bg_sp.jpg) center center no-repeat;
  background-size: cover;
  background-color: #2f6d51;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop h3 {
    background-image: url(/excludes/DMO/web/feature/v/christmascake/251001/img/top_shop_menu_bg_pc.jpg);
    height: 60px;
  }
}
#fwCms_wrapper .shopList .shop ul {
  width: 100%;
  padding: 1.3333333333vw 0 2.1333333333vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul {
    padding: 5px 0 8px;
  }
}
#fwCms_wrapper .shopList .shop ul li {
  position: relative;
  width: 90.8108108108%;
  margin: 0 auto;
  background: url(/excludes/DMO/tm/christmascake/241001/img/top_shop_name_border_s.png) bottom center no-repeat;
  background-size: 100% auto;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li {
    width: 80.7692307692%;
  }
}
#fwCms_wrapper .shopList .shop ul li:nth-last-child(1) {
  background-image: none;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li:nth-last-child(1) {
    background-image: url(/excludes/DMO/t　m/christmascake/241001/img/top_shop_name_border_s.png);
  }
}
#fwCms_wrapper .shopList .shop ul li a:hover {
  text-decoration: none;
}
#fwCms_wrapper .shopList .shop ul li a:hover .shopName {
  background-color: #f9f4eb;
}
#fwCms_wrapper .shopList .shop ul li .shopName {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 14.6666666667vw;
  transition: background-color 0.3s ease;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li .shopName {
    height: 55px;
    font-size: 1.6rem;
  }
}
#fwCms_wrapper .shopList .shop ul li .shopName:after {
  content: "";
  display: block;
  width: 1.6vw;
  height: 2.6666666667vw;
  margin-right: 0;
  margin-left: auto;
  background: url(/excludes/DMO/tm/christmascake/241001/img/top_shop_name_arrow_s.png) center center no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li .shopName:after {
    width: 6px;
    height: 10px;
  }
}
#fwCms_wrapper .shopList .shop ul li .shopNotice {
  position: absolute;
  bottom: 2.6666666667vw;
  left: 0;
  color: #ff0201;
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li .shopNotice {
    bottom: 10px;
    font-size: 1.13rem;
  }
}
#fwCms_wrapper .shopList .shop ul li.hasNotice {
  padding-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li.hasNotice {
    padding-bottom: 15px;
  }
}
#fwCms_wrapper .shopList .shop ul li.hasNotice a {
  pointer-events: none;
  color: #8d8d8d;
}
#fwCms_wrapper .shopList .shop ul li.close {
  display: flex;
  flex-direction: column;
  padding-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li.close {
    padding-bottom: 15px;
  }
}
#fwCms_wrapper .shopList .shop ul li.close:before {
  content: "";
  position: absolute;
  top: 0;
  left: -5.0595238095%;
  z-index: 0;
  display: block;
  width: 110.119047619%;
  height: 100%;
  background-color: #cccccc;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li.close:before {
    left: -11.9047619048%;
    width: 123.8095238095%;
  }
}
#fwCms_wrapper .shopList .shop ul li.close a {
  pointer-events: none;
}
#fwCms_wrapper .shopList .shop ul li.close a + span {
  position: absolute;
  bottom: 2.6666666667vw;
  left: 0;
  z-index: 1;
  font-size: 3.2vw;
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop ul li.close a + span {
    bottom: 10px;
    font-size: 1.13rem;
  }
}
@media screen and (min-width: 768px) {
  #fwCms_wrapper .shopList .shop_01 ul li:nth-last-child(1) {
    background-image: none;
  }
}
#fwCms_wrapper .shopList .shop_02 ul li:nth-last-child(1), #fwCms_wrapper .shopList .shop_04 ul li:nth-last-child(1) {
  background-image: url(/excludes/DMO/tm/christmascake/241001/img/top_shop_name_border_s.png);
}


/*----------------------------------------
	種類から探す
-----------------------------------------*/

#fwCms_wrapper .type {

}
#fwCms_wrapper .type ul{
	display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
}
#fwCms_wrapper .type li {
  width: 49.5%;
	margin-top:4px;
}

@media screen and (min-width: 768px) {
	#fwCms_wrapper .type {
		max-width: 1080px;
		width: 92%;
		justify-content: space-between;
		margin: auto;}
	#fwCms_wrapper .type ul{
		max-width: 1080px;
	}
  #fwCms_wrapper .type li {
    width: calc(25% - (20px/4))!important;
  }
}

/*----------------------------------------
	予算から探す
-----------------------------------------*/
#fwCms_wrapper .price .area-title-top{
	display: block;
    width: 94%;
    text-align: left;
}
#fwCms_wrapper .price .area-title-top p{text-align: right;}
#fwCms_wrapper .price ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: 4vw;
	border-top: 1px solid #ffffff;
}

#fwCms_wrapper .price ul li {
	display: flex;
	align-items: center;
	width: 50%;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	background-color: #256e4d;
}

#fwCms_wrapper .price ul li:nth-child(2n) {
	border-right: none;
}

#fwCms_wrapper .price ul li a {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 3.4vw 9.6vw 3.4vw 4vw;
	box-sizing: border-box;
	background: url(/excludes/DMO/common/svg/arrow-m-white-01.svg) no-repeat right 4vw center;
	background-size: auto 3.4vw;
	color: #fff;
}

@media screen and (min-width: 768px) {
	#fwCms_wrapper .price .area-title-top{
		display: block;
        width: 94%;
        text-align: center;
	}
	#fwCms_wrapper .price .area-title-top p{text-align: center;}
	#fwCms_wrapper .price {
		max-width: 1080px;
		width: 98.7%;
		margin-right: auto;
		margin-left: auto;
	}

	#fwCms_wrapper .price ul {
		margin-top: 35px;
	}

	#fwCms_wrapper .price ul li {
		width: 33%;
	}

	#fwCms_wrapper .price ul li:nth-child(2n) {
		border-right: 1px solid #ffffff;
	}

	#fwCms_wrapper .price ul li:nth-child(4n) {
		border-right:  1px solid #ffffff;
	}

	#fwCms_wrapper .price ul li a {
		justify-content: center;
		min-height: 60px;
		padding: 16px 35px;
		background-position: right 20px center;
		background-size: auto 17px;
		line-height: 1.3;
	}
}


/*----------------------------------------
	サイズから探す
-----------------------------------------*/

#fwCms_wrapper .recommend-items.size{
	margin-top:6.6vw !important;
}

@media screen and (min-width: 768px) {
#fwCms_wrapper .recommend-items.size{
	margin-top:40px !important;
}
}
/*----------------------------------------
	関連特集
-----------------------------------------*/
#fwCms_wrapper .kanren ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #ffffff;
	width: 97.334%;
	margin: 4vw auto 0;
}
#fwCms_wrapper .kanren li{
	margin-top: 4.8vw;
	    width: calc((100% - 1.333%) / 2);
}
#fwCms_wrapper .kanren .blank01{
	padding-right: 2vw;
	background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/christmas_blank01.svg) no-repeat right center;
	background-size: 2vw 2vw;}

@media screen and (min-width: 768px) {
	#fwCms_wrapper .kanren ul{
		max-width: 1080px;
        width: 98.7%;
        margin: 34px auto 0;
		justify-content: space-between;
	}
	
	#fwCms_wrapper .kanren li{
		width: calc((100% - 24px) / 4);
        margin: 33px 8px 0 0;
	}
	
	#fwCms_wrapper .kanren li:nth-of-type(4n) {
        margin-right: 0;
    }
	#fwCms_wrapper .kanren .blank01{
	padding-right: 2vw;
	background: url(/excludes/DMO/web/feature/v/christmascake/251001/img/christmas_blank01.svg) no-repeat right center;
	background-size: 1vw 1vw;}
}



/*----------------------------------------
	下層：配送冷凍ケーキ
-----------------------------------------*/
#fwCms_wrapper .delivery{
	margin: 8vw auto 0;
	opacity: 1 !important;
}
@media screen and (min-width: 768px) {
#fwCms_wrapper .delivery {
        max-width: 1080px;
		margin-top: 60px;}
}



/*----------------------------------------
	下層：配送冷凍ケーキ  サイズから探す
-----------------------------------------*/

#fwCms_wrapper .haisou-size ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: 4vw;
	border-top: 1px solid #ffffff;
}

#fwCms_wrapper .haisou-size ul li {
	display: flex;
	align-items: center;
	width: 50%;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	background-color: #256e4d;
}

#fwCms_wrapper .haisou-size ul li:nth-child(2n) {
	border-right: none;
}

#fwCms_wrapper .haisou-size ul li a {
	display: block;
	text-align: center;
	width: 100%;
	height: 100%;
	padding: 3.4vw 9.6vw 3.4vw 4vw;
	box-sizing: border-box;
	background: url(/excludes/DMO/common/svg/arrow-m-white-01.svg) no-repeat right 4vw center;
	background-size: auto 3.4vw;
	line-height: 1.2;
	color: #fff;
}

@media screen and (min-width: 768px) {
	#fwCms_wrapper .haisou-size {
		max-width: 1080px;
		width: 98.7%;
		margin-right: auto;
		margin-left: auto;
	}

	#fwCms_wrapper .haisou-size ul {
		margin-top: 35px;
	}

	#fwCms_wrapper .haisou-size ul li {
		width: 33%;
	}

	#fwCms_wrapper .haisou-size ul li:nth-child(2n) {
		border-right: 1px solid #ffffff;
	}

	#fwCms_wrapper .haisou-size ul li:nth-child(4n) {
		border-right:  1px solid #ffffff;
	}

	#fwCms_wrapper .haisou-size ul li a {
		display: block;
		min-height: 60px;
		padding: 16px 35px;
		background-position: right 20px center;
		background-size: auto 17px;
		line-height: 1.3;
		text-align: center;
	}
}
