@charset "UTF-8";

/* /shop/e/exmas/
----------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@500;600;700;900&family=Zen+Old+Mincho:wght@600&display=swap');

/* reset
---------------------- */
#xmas{
	color: #001c15;
	font-size: 16px;
	line-height: 1.5;
	font-family: "Noto Sans JP", sans-serif;
	font-feature-settings: "palt";
	letter-spacing: 1px;
	text-align: center;
	padding-bottom: 50px;
	margin-bottom: 50px;
}
#xmas.bg{
background: -webkit-linear-gradient(left, #001c15 0%, #003726 50%, #001c15 100%),
linear-gradient(to right, #001c15 0%, #003726 50%, #001c15 100%);
background-color: #002a1e;
}
#xmas a:hover{
	opacity:.7;
	text-decoration: none;
}
#xmas h2{
	font-size: 40px;
	font-weight: 600;
	font-family: YakuHanMP, 'Noto Serif JP', serif;
	line-height: 1;
	margin-bottom: 50px;
}
#xmas ul.kome li{
	font-size: 93.75%;
	text-align: left;
	padding-left:1em;
	text-indent:-1em;
}
/* contents
---------------------- */
#xmas .main_cmp{
	margin-top: -24px;
	margin-bottom: 42px;
}
#xmas #menuList {
	margin-bottom: 100px;
}
#xmas #menuList ul{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
}
#xmas #menuList ul li:last-child{
	width:100%;
	margin-top: 30px;
}
#xmas #menuList ul li:last-child a{
	display:inline-block;
	width:800px;
	height:100px;
	border-radius: 100vh;
	background:url(/img/event/exmas2025/btn_all.png)no-repeat;
	box-shadow: 0px 5px 10px rgba(0,0,0,.3);
	text-indent:-9999px;
	transition-duration: .2s;
}
#xmas #menuList ul li:last-child a:hover{
	box-shadow: none;
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
}
#xmas #xmasCake{
	background:#a70000 url(/img/event/exmas2025/xmasCake_bg.png)repeat-y;
	padding: 40px 70px 70px;
	margin:0 50px;
}
#xmas #xmasCake h2{
	color:#fff;
	font-size: 40px;
	background:url(/img/event/exmas2025/h2_line1.png)no-repeat top center,
	url(/img/event/exmas2025/h2_line2.png)no-repeat bottom center;
	padding: 1.5em 0;
}
#xmas #xmasCake ul.benefitsLink{
	margin-bottom: 50px;
}
#xmas #xmasCake .benefitsLink li{
	position: relative;
	margin-bottom: 20px;
}
#xmas #xmasCake .benefitsLink li:last-child{
	padding-top: 10px;
}
#xmas ul.cakeList{

}
#xmas ul.cakeList > li{
	background:#fff;
	box-shadow:0 5px 10px rgba(0,0,0,.2);
	position: relative;
	padding-bottom: 30px;
}
#xmas ul.cakeList > li:not(:last-child){
	margin-bottom: 50px;
}
#xmas ul.cakeList > li > img:first-child{
	margin-bottom: 30px;
}
#xmas ul.cakeList > li p{
	text-align: left;
	padding-left: 30px;
}
#xmas ul.cakeList .cvBtnCake{
	position: absolute;
	bottom:32px;
	right:32px;
	display: block;
	width: 370px;
	height:130px;
	border-radius: 10px;
	box-shadow:0 5px 5px rgba(0,0,0,.3);
	background:url(/img/event/exmas2025/cv_btn.png)no-repeat;
	background-color:#d2ab64;
	text-indent: -9999px;
	transition-duration: .2s;
}
#xmas ul.cakeList .cvBtnCake:not(.sold):hover{
	transform: translateY(4px);
	box-shadow:none;
}
#xmas ul.cakeList .cvBtnCake.sold{
	opacity:.9;
	background:#707070;
	border-color:#686868;
}
#xmas #regularCake{
	background:url(/img/event/exmas2025/regularCake_bg.png)repeat-y;
	background-color: #f4f3f4;
	padding: 80px 70px;
	margin:0 50px;
}
#xmas #regularCake h2{
	font-size: 30px;
	line-height: 1.33;
	background:url(/img/event/exmas2025/h2_02_line1.png)no-repeat top center,
	url(/img/event/exmas2025/h2_02_line2.png)no-repeat bottom center;
	padding: 1.5em;
}
#xmas #regularCake ul.cakeList2{
}
#xmas #regularCake ul.cakeList2 li{
	height:520px;
	background: #fff;
	box-shadow: 0 5px 10px rgba(0,0,0,.1);
	position: relative;
	padding: 20px;
	padding-left: 420px;
}
#xmas #regularCake ul.cakeList2 li:not(:last-child){
	margin-bottom: 30px;
}
#xmas #regularCake ul.cakeList2 li > img:first-child{
	position: absolute;
	top:0;
	left:0;
}
#xmas #regularCake ul.cakeList2 li h3{
	color:#a70000;
	font-size: 24px;
	font-weight: 700;
	font-family: YakuHanMP, 'Noto Serif JP', serif;
	line-height: 1.28;
	text-align: left;
	padding-left: .3em;
	margin-right: -1em;
	margin-bottom: .5em;
}
#xmas #regularCake ul.cakeList2 li h3.ls-s{
	letter-spacing: -0.03em;
}
#xmas #regularCake ul.cakeList2 li h3 span.ls-s{
	letter-spacing: -0.07em;
}
#xmas #regularCake ul.cakeList2 li p.name{
	color:#001c15;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.36;
	text-align: left;
	border-top:1px solid #001c15;
	border-bottom:1px solid #001c15;
	padding: .4em 0;
	padding-left: .3em;
	margin-bottom: .7em;
}
#xmas #regularCake ul.cakeList2 li p.txt{
	line-height: 1.625;
	text-align: left;
}
#xmas #regularCake ul.cakeList2 li p.icoDeco{
	color:#fff;
	font-size: 25px;
	font-family: YakuHanMP, 'Noto Serif JP', serif;
	line-height: 1.23;
	text-align: left;
	background:#f84831;
	border-radius: 10px;
	display:flex;
	align-items: center;
	justify-content: center;
	padding: .7em 0;
	margin-bottom: 35px;
}
#xmas #regularCake ul.cakeList2 li p.icoDeco span{
	display:inline-block;
}
#xmas #regularCake ul.cakeList2 li div{
	position: absolute;
	left:420px;
	bottom:30px;
}
#xmas ul.cakeList2 .cvBtnCake2{
	display: inline-block;
	width: 400px;
	height:80px;
	border-radius: 100vh;
	box-shadow:0 5px 5px rgba(0,0,0,.3);
	background:url(/img/event/exmas2025/cv_btn2.png)no-repeat;
	background-color:#d2ab64;
	text-indent: -9999px;
	transition-duration: .2s;
	margin-top: 25px;
}
#xmas ul.cakeList2 .cvBtnCake2:not(.sold):hover{
	transform: translateY(4px);
	box-shadow:none;
}
#xmas .banner{
	padding: 100px 120px 70px;
}
#xmas .banner ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#xmas .banner ul li img{
	width:100%;
}
#xmas .banner ul li:not(:last-child){
	margin-bottom: 50px;
}
#xmas .banner ul li p{
	color:#fff;
	font-size: 20px;
	display:inline-block;
	border-bottom:1px solid #fff;
	padding-top: .7em;
}
#xmas .banner ul li a,
#xmas .banner ul li a:hover{
	color:#4f0100;
}
#xmas .banner ul li.col2{
	width:47%;
}
#xmas .tokuten{
	background:#fff;
	padding-bottom: 50px;
	margin: 0 50px 50px;
}
#xmas .tokuten h3{
	margin: 40px 0;
}
#xmas .tokuten > ul{
	padding: 0 70px;
}
#xmas .tokuten > ul > li{
	position: relative;
}
#xmas .tokuten > ul > li:not(:last-child){
	margin-bottom: 50px;
}
#xmas .tokuten > ul > li.end::before{
	position:absolute;
	top:0;
	left00;
	content:'こちらの特典は終了しました';
	display:flex;
	justify-content: center;
	align-items: center;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.7);
	color:#fff;
	font-size:40px;
	z-index:1;
}
#xmas .tokuten .couponImg{
	margin-top: 20px;
}
#xmas .tokuten ul.kome{
	margin-top: 20px;
}
#xmas #HaisouCaution{
	background:#fff;
	margin:0 50px;
}
#xmas #HaisouCaution h2::after{
	display:none;
}
#xmas .haisouCts{
	color:#333333;
	padding: 0 70px 40px;
}
#xmas .haisouCts h3{
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	background:#a70000;
	padding: .3em;
	margin-bottom: 35px;
}
#xmas .haisouCts strong{
	color:#a70000;
	font-weight: inherit;
}
#xmas .haisouCts ul:not(:last-child){
	margin-bottom: 1.7em;
}
#xmas .haisouCts ul li{
	text-align: left;
	padding-left:1em;
	text-indent:-1em;
}
#xmas .haisouCts dl{
	border:5px solid #d8d8d8;
	margin-bottom: 20px;
}
#xmas .haisouCts dl dt{
	font-size: 20px;
	font-weight: bold;
	background:#d8d8d8;
	padding: .2em 0;
}
#xmas .haisouCts dl dd{
	text-align: left;
	padding: 15px 20px 20px;
}
#xmas .haisouCts dl dd p{
	font-size: 17px;
	font-weight: 500;
	line-height: 1.76;
}
#xmas .haisouCts .attention{
	background:url(/img/event/exmas2025/HaisouCaution_bg1.png)no-repeat top left,
	url(/img/event/exmas2025/HaisouCaution_bg2.png)no-repeat bottom left,
	url(/img/event/exmas2025/HaisouCaution_bg3.png)repeat-y;
	padding: 40px 50px;
}
#xmas .haisouCts .attention h4{
	color:#fff;
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
	background: #a70000;
	padding: .4em 0;
	margin-bottom: .7em;
}
#xmas .haisouCts .attention h4 + p{
	font-size: 18px;
	font-weight: 600;
	line-height: 1.66;
	margin-bottom: .7em;
}
/*クリスマス下層ページ*/
#xmasSubMenu{
	width: 960px;
	margin: 0 auto 50px;
}
#xmasSubMenu a:hover{
	opacity: 0.8;
}
#xmasSubMenu ul li{
	margin-bottom: 20px;
}
#xmasSubMenu .topLink{
	margin-top: 30px;
}

/* sold */
#xmas li.sold{
	position:relative;
}
#xmas li.sold::before{
content:'ご好評につき完売しました';
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.7);
color:#fff;
font-size:40px;
z-index:1;
display:flex;
justify-content: center;
align-items: center;
}

/* phase */
#xmas.phase2 .main_cmp,
#xmas.phase3 .main_cmp{
	display:none;
}
#xmas.phase2 #xmasCake .benefitsLink li.cmp1::before,
#xmas.phase3 #xmasCake .benefitsLink li.cmp1::before,
#xmas.phase3 #xmasCake .benefitsLink li.cmp2::before{
	content:'こちらの特典は終了しました';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.8);
	color:#fff;
	font-size:33px;
	z-index:2;
	display:flex;
	justify-content: center;
	align-items: center;
}
#xmas ul.cakeList p{
	display:none;
}
#xmas.phase1 ul.cakeList .prc1,
#xmas.phase2 ul.cakeList .prc2,
#xmas.phase3 ul.cakeList .prc3{
	display:block;
}
#xmas.phase2 ul.cakeList .ico2{
	display:none;
}
#xmas.phase3 ul.cakeList ul.icon{
	display:none;
}
#xmas.phase2 .tokuten > ul > li#Hayawari::before,
#xmas.phase3 .tokuten > ul > li#Hayawari::before,
#xmas.phase3 .tokuten > ul > li#Otodoke::before{
	position:absolute;
	top:0;
	left00;
	content:'こちらの特典は終了しました';
	display:flex;
	justify-content: center;
	align-items: center;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.7);
	color:#fff;
	font-size:40px;
	z-index:1;
}