@charset "utf-8";
/* -----------------------------------------------------------------------

layout.css

----------------------------------------------------------------------- */


/*----------------------------------------------------------

	Display：common  ＋　pc
	
----------------------------------------------------------*/

/*----------------------------------------------------------
	header
----------------------------------------------------------*/




/*----------------------------------------------------------
	cakeBox
----------------------------------------------------------*/

#cake .cakeBox {
	width:100%;
	overflow:hidden;
}
#cake .cakeBox .txtBox .inBox{
	box-sizing:border-box;
}
#cake .cakeBox .txtBox h2{
	font-size:3.2rem;
	line-height:1.2;
	font-family: 'Noto Serif JP', serif;
	color:#ffffff;
}
#cake .cakeBox .txtBox h2 .eng{
	font-size:1.8rem;
	line-height:1.2;
	letter-spacing:0.05em;
}
#cake .cakeBox .txtBox .price{
	margin:10px 0;
	font-size:3.2rem;
	line-height:1.2;
	font-family: 'Noto Serif JP', serif;
	color:#ffdb8f;
}
#cake .cakeBox .txtBox .price .fsS{
	margin-left:3px;
	font-size:2rem;
	line-height:1.2;
	display:inline-block;
}
#cake .cakeBox .txtBox .price .subTxt{
	margin-left:5px;
	font-size:1.2rem;
	line-height:1.2;
	color:#ffffff;
	display:inline-block;
}
#cake .cakeBox .txtBox .price .subTxt2{
	margin-right:5px;
	font-size:1.2rem;
	line-height:1.2;
	color:#ffffff;
	display:inline-block;
}

#cake .cakeBox .txtBox .price .icon{
	margin:0 8px 0 0;
	padding:0 1em;
	font-size:1.4rem;
	line-height:20px;
	color:#ffffff;
	letter-spacing:0.05em;
	background:#970c00;
	display:inline-block;	
	vertical-align:middle;
}
#cake .cakeBox .txtBox .price .icon.w{
	color:#970c00;
	background:#ffffff;
	border:2px solid #970c00;
}
#cake .cakeBox .txtBox .txt{
	margin:0;
	padding:10px 0 0;
	font-size:12px;
	line-height:2.4;
	color:#ffffff;
}

#cake .cakeBox .txtBox .innerImg{
	margin:0;
	padding:20px 0 30px;
	overflow:hidden;
}
#cake .cakeBox .txtBox .innerImg .image{

}
#cake .cakeBox .txtBox .innerImg .txts{
	font-size:10px;
	line-height:2;
	color:#ffffff;
}
#cake .cakeBox .txtBox .innerImg .txts div{
	margin-bottom:3px;
	padding-left:1.2em;
	position:relative;
}
#cake .cakeBox .txtBox .innerImg .txts ul li{
	margin-bottom:3px;
	padding-left:1.2em;
	position:relative;
	box-sizing:border-box;
}
#cake .cakeBox .txtBox .innerImg .txts .mark{
	color:#f4675b;
	position:absolute;
	top:0;
	left:0;
}


#cake .cakeBox.cake01 {
	background:#000;
}
#cake .cakeBox.cake02 {
	background:#000;
}
#cake .cakeBox.cake03 {
	background:#000;
}
#cake .cakeBox.cake04 {
	background:#000;
}

#cake .cakeBox .txtBox .innerImg .image{
	width:220px;
	margin:0 auto;
}
#cake .cakeBox.cake01 .txtBox .innerImg .image{
	width:270px;
}
#cake .cakeList {
	background:#1a0900;
}
#cake .cakeList .inner {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-pack: wrap;
	flex-wrap: wrap;
	padding:15px;
	box-sizing:border-box;
	overflow:hidden;
}
#cake .cakeList .inner .cakeBoxS {
	width:50%;
	max-width:450px;
	padding:40px 25px;
	box-sizing:border-box;
}
#cake .cakeList .inner .cakeBoxS .photo{
	width:100%;
	margin-bottom:25px;
}
#cake .cakeList .inner .cakeBoxS .txtBox{
	color:#ffffff;
}
#cake .cakeList .inner .cakeBoxS .txtBox h2{
	font-size:2.0rem;
	line-height:1.6;
}
#cake .cakeList .inner .cakeBoxS .txtBox .price{
	font-size:2.4rem;
	line-height:1.6;
	color:#ffdb8f;
	font-family: 'Noto Serif JP', serif;
	letter-spacing:0.05em;
}
#cake .cakeList .inner .cakeBoxS .txtBox .price .fsS{
	font-size:1.8rem;
	line-height:1.6;
}
#cake .cakeList .inner .cakeBoxS .txtBox .price .fsS2{
	margin:0 3px 0 0;
	font-size:1.4rem;
	line-height:1.6;
	color:#ffffff;
	display:inline-block;
}
#cake .cakeList .inner .cakeBoxS .txtBox .txt{
	margin:15px 0 0;
	font-size:1.2rem;
	line-height:2;
}


#cake #tokuten {
	background:#6d131b;
}
#cake #tokuten .inner {
	width:100%;
	padding:30px 20px;
	box-sizing:border-box;
}
#cake #tokuten .inner .tokutenList {
	padding:150px 0 0;
	background:url(../imgs/cake/icon_reserve_tokuten.png) no-repeat 50% 30px;
	overflow:hidden;
}
#cake #tokuten .inner .tokutenList .img01 {
	width:80%;
	max-width:318px;
	margin:0 auto 20px;
}
#cake #tokuten .inner .tokutenList .img02 {
	width:90%;
	max-width:369px;
	margin:0 auto 20px;
}
#cake #tokuten .inner .coutionTxt {
	padding:0 0 20px;
	font-size:1.0rem;
	line-height:1.5;
	color:#ffffff;
}
#cake #tokuten .inner .time {
	width:100%;
	padding:30px 20px;
	background:#ffffff;
	font-size:1.4rem;
	line-height:1.8;
	border-radius:3px;
	text-align:center;
	box-sizing:border-box;
}





/*----------------------------------------------------------

	Display：320px → 768px（ sp ）

----------------------------------------------------------*/

@media screen and (max-width: 768px) {

/*----------------------------------------------------------
	header
----------------------------------------------------------*/


#cake .cakeBox .photoBox{
	width:100%!imporant;
	height:auto!important;
	min-height:auto!important;
	background:none!important;
}
#cake .cakeBox .txtBox{
	width:100%;
	padding:0;
	text-align:center;
}
#cake .cakeBox .txtBox .inBox{
	width:100%;
	padding:35px 20px;
}

#cake .cakeBox .txtBox h2{
	font-size:2.2rem;
	line-height:1.2;
	text-align:center;
}
#cake .cakeBox .txtBox h2 .eng{
	font-size:1.8rem;
	line-height:1.2;
}
#cake .cakeBox .txtBox .price{
	font-size:2.8rem;
	line-height:1.2;
	text-align:center;
}
#cake .cakeBox .txtBox .price .fsS{
	font-size:1.6rem;
	line-height:1.2;
}
#cake .cakeBox .txtBox .txt{
	max-width:450px;
	margin:0 auto;
	padding:10px 0 0;
}
#cake .cakeBox .txtBox .innerImg .image{
	text-align:center;
}

#cake .cakeBox .txtBox .innerImg .image img{
	width:100%;
}
#cake .cakeBox .txtBox .innerImg .txts{
	width:55%;
	float:right;
}
#cake .cakeBox.cake04 .txtBox .innerImg .txts{
	width:100%;
	float:none;
}
#cake .cakeBox .txtBox .innerImg .txts ul li,
#cake .cakeBox .txtBox .innerImg .txts ul li:nth-child(even){
	width:100%;
	float:none;
	margin-left:0;
}


#cake .cakeList .inner {
	width:100%;
	padding:30px 20px;
}
#cake .cakeList .inner .cakeBoxS {
	width:100%;
	margin:0 0 40px;
	padding:0;
	text-align:center;
	float:none;
}
#cake .cakeList .inner .cakeBoxS .photo{
	width:100%;
	max-width:400px;
	margin:0 auto 20px;
}
#cake .cakeList .inner .cakeBoxS .txtBox .txt{
	text-align:left;
}

}




/*----------------------------------------------------------

	Display：← 769px（ pc ）

----------------------------------------------------------*/

@media screen and (min-width: 769px) {

/*----------------------------------------------------------
	cakeBox
----------------------------------------------------------*/

#cake .cakeBox {
	min-width:1000px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-pack: wrap;
	flex-wrap: wrap;
}
#cake .cakeBox:nth-child(2n) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#cake .cakeBox .photoBox{
	width:57.5%;
	min-width:575px;
}
#cake .cakeBox .txtBox{
	width:42.5%;
	min-width:425px;
	padding:40px 40px;
	box-sizing:border-box;
}

#cake .cakeBox .photoBox img{
	display:none;
}
#cake .cakeBox .txtBox .innerImg .image{
	text-align:center;
}
#cake .cakeBox .txtBox .innerImg{
	width:260px;
	margin:0;
	text-align:left;
}
#cake .cakeBox.cake01 .txtBox .innerImg{
	width:290px;
}
#cake .cakeBox .txtBox .innerImg .image{
	margin:0!important;
}
#cake .cakeBox .txtBox .innerImg .txts ul li{
	width:50%;
	float:left;
}

#cake .cakeBox.cake01 .photoBox{
	min-height:620px;
	background:url(../imgs/cake/cake01_img.jpg) no-repeat top 50% left 40%;
	background-size:cover;
	float:left;
}
#cake .cakeBox.cake01 .txtBox .inBox{
	width:100%;
	float:left;
}

#cake .cakeBox.cake02 .photoBox{
	min-height:500px;
	background:url(../imgs/cake/cake02_img.jpg) no-repeat 50% 50%;
	background-size:cover;
	float:right;
}
#cake .cakeBox.cake02 .txtBox .inBox{
	float:right;
	max-width:400px;
}

#cake .cakeBox.cake03 .photoBox{
	min-height:460px;
	background:url(../imgs/cake/cake03_img.jpg) no-repeat 50% 50%;
	background-size:cover;
	float:right;
}
#cake .cakeBox.cake03 .txtBox{
	float:left;
}
#cake .cakeBox.cake03 .txtBox .inBox{
	float:right;
}

#cake .cakeBox.cake04 .photoBox{
	min-height:460px;
	background:url(../imgs/cake/cake04_img.jpg) no-repeat 50% 50%;
	background-size:cover;
	float:left;
}
#cake .cakeBox.cake04 .txtBox{
	float:right;
}
#cake .cakeBox.cake04 .txtBox .inBox{
	float:left;
}
#cake .cakeList .inner .cakeBoxS .txtBox .txt{
	min-height:80px;
}


/*----------------------------------------------------------

	tokuten

----------------------------------------------------------*/

#cake #tokuten .inner {
	width:1000px;
	padding:40px 40px 40px;
}
#cake #tokuten .inner .tokutenList {
	padding:50px 0 15px 175px;
	background:url(../imgs/cake/icon_reserve_tokuten.png) no-repeat 0 60%;
}
#cake #tokuten .inner .tokutenList .img01 {
	width:318px;
	float:left;
}
#cake #tokuten .inner .tokutenList .img02 {
	width:369px;
	margin:0 0 0 35px;
	float:left;
}
#cake #tokuten .inner .coutionTxt {
	font-size:1.2rem;
	line-height:1.5;
}
#cake #tokuten .inner .time {
	font-size:1.6rem;
	line-height:1.8;
}


}





/*----------------------------------------------------------

	discountBox

----------------------------------------------------------*/

/*----------------------------------------------------------
	Display：common 
----------------------------------------------------------*/

.discountBox {
	width:100%;
	max-width:350px;
	margin:35px auto 10px;
	padding:20px 10px 10px;
	border: double #999;
	color:#fff;
	box-sizing:border-box;
	position:relative;
}
.discountBox .boxTxt {
	width:95%;
	margin:0 auto;
	position:absolute;
	top:-12px;
	left:0;
	right:0;
}
.discountBox .discount {
	margin:0 auto;
	padding:0;
	letter-spacing:0.05em;
	font-family: 'Noto Serif JP', serif;
}
.discountBox .discountPrice {
	margin:0 0 0;
	font-size:2.8rem;
	line-height:1.5;
	color:#fed88b;
	letter-spacing:0.05em;
	font-family: 'Noto Serif JP', serif;
}
.discountBox .discountPrice .fsS{
	margin-left:2px;
	font-size:1.4rem;
	line-height:2.0;
	display:inline-block;
}


/*----------------------------------------------------------

	Display：← 769px（ pc ）

----------------------------------------------------------*/

@media screen and (min-width: 769px) {

	.discountBox {
		margin:35px 0 10px;
	}

}



/*----------------------------------------------------------

	reserve

----------------------------------------------------------*/

#cake #reserve {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-pack: wrap;
	flex-wrap: wrap;
	width:920px;
	margin-bottom:10px;
	padding:20px 0 10px 190px;
	color:#ffffff;
	background:url(../imgs/cake/icon_reserve_tokuten.png) no-repeat 20px 70%;
	box-sizing:border-box;
} 
#cake #reserve .txtL{
	margin-bottom:15px;
	font-family: 'Noto Serif JP', serif;
	font-size: 20px;
	line-height:1.5;
} 
#cake #reserve .txt{
	font-family: 'Noto Serif JP', serif;
	font-size: 18px;
	line-height:1.5;
} 

#cake #reserve .waribiki{
	margin-left:3px;
	font-family: 'Noto Serif JP', serif;
	font-size:2.45rem;
	color:#ffebb0;
} 
#cake #reserve .waribiki span{
	font-size:68px;
} 
#cake #reserve .coution {
	margin:8px 0 0 20px;
	padding-left:1.3em;
	font-size:12px;
	line-height:1.3;
	position:relative;
}
#cake #reserve .coution span{
	position:absolute;
	top:0;
	left:0;
}



/*----------------------------------------------------------

	Display：320px → 768px（ sp ）

----------------------------------------------------------*/

@media screen and (max-width: 768px) {

	#cake #reserve {
		margin:0;
		padding:0 10px;
	} 
	#cake #reserve {
		display:block;
		margin:0 auto;
		padding:120px 2.5% 15px;
		width:95%;
		color:#ffffff;
		background:url(../imgs/cake/icon_reserve_tokuten.png) no-repeat 50% 15px;
	} 
	#cake #reserve .txtL{
		text-align:center;
	} 
	#cake #reserve .txt{
		display:block;
		margin:0;
		font-size: 16px;
		line-height:1.5;
		text-align:center;
	} 
	#cake #reserve .txt span{
		font-size: 22px;
		letter-spacing:0.1em;
	} 
	#cake #reserve .waribiki{
		display:block;
		margin:15px 0 20px;
		text-align:center;
	} 
	#cake #reserve .waribiki span{
		font-size:4.5rem;
	} 
	#cake #reserve .coution {
		margin:0;
	}
	#cake #reserve .extradition {
		width:100%;
	}

}


/*----------------------------------------------------------

	Display：769px（ pc ）

----------------------------------------------------------*/

@media screen and (min-width: 769px) {
	#cake #reserve .txtL{
		width:100%;
		margin-left:20px;
	} 
	#cake #reserve .txt{
		margin-left:20px;
	} 
}