/*//////////////////////////////////////////////////////////////////////////////

    dining-cafe.css

//////////////////////////////////////////////////////////////////////////////*/


/*------------------------------------------------------------------------------

    1. common

------------------------------------------------------------------------------*/


/*	1-1. image replacement
------------------------------------------------------------------------------*/

#menu h2,
#menu h3 {
	display: block;
	overflow: hidden;
	outline: none;
	margin: 0;
	padding: 0;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: left top;
}


/*------------------------------------------------------------------------------

    2. #food

------------------------------------------------------------------------------*/

#food {
	position: relative;
	width: 930px;
}

#food h2 {
	position: absolute;
	left: 320px;
	top: 55px;
}

#food .right-column {
	position: relative;
	float: right;
	width: 610px;
	margin: 0 0 30px;
	padding: 70px 0 280px;
	background: url(../img/food-background1.png) no-repeat right top;
}

#food .right-column p {
	width: 290px;
}

#food .reservation {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 550px;
	height: 180px;
	padding: 30px;
	background: url(../img/food-reservation-background.png?20171208) no-repeat;
}
* html #food .reservation {
	bottom: -30px;
}

#food .reservation h3 {
	margin: 0 0 30px 55px;
	font-size: 16px;
}

#food .reservation .note {
	position: absolute;
	right: 0;
	top: 55px;
	font-size: 12px;
}

#food .reservation .description {
	float: left;
	width: 270px;
	line-height: 1.2;
}

#food .reservation dl {
	float: right;
	width: 250px;
}

#food .not-stay {
	float: left;
	width: 290px;
	height: 206px;
	margin: 0 0 30px;
	padding: 190px 0 0;
	background: url(../img/food-not-stay-background.png) no-repeat;
	font-size: 12px;
}

#food .not-stay h3 {
	margin: 0 0 10px;
}


/*------------------------------------------------------------------------------

    3. #menu

------------------------------------------------------------------------------*/

#menu {
	background: #384941;
}

#menu a,
#menu a:visited {
	color: #AF5A57;
}

#menu a:hover{
	color: #FFF;
	text-decoration: none;
}

#menu h2 {
	height: 232px;
	margin: 0 0 5px;
	background: url(../img/menu-heading.png) no-repeat;
}

#menu h3 {
	height: 77px;
	margin: 0 0 30px;
}

#menu .note {
	margin: 0 80px 10px 50px;
	text-align: right;
	font-size: 12px;
	color: #FFF;
}

#menu .food-menu,
#menu .desert-menu {
	margin: 0 50px;
}


/*	3-1. .food-menu
------------------------------------------------------------------------------*/

#menu .food-menu {
	position: relative;
}

#menu .food-menu h3 {
	background: url(../img/menu-food-menu-heading.png) no-repeat;
}

#menu .food-menu .course {
	position: relative;
	width: 410px;
	min-height: 270px;
	margin: 0 0 30px;
	padding: 0 0 0 420px;
	color: #FFF;
}

#menu .food-menu .accommodation-plan {
	position: absolute;
	left: 216px;
	top: 38px;
	font-size: 12px;
	color: #FFF;
}

#menu .food-menu h4 {
	margin: 0 0 30px;
	padding: 5px 10px;
	background: #4C5C54;
	font-size: 16px;
	/**/
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

#menu .food-menu h4 .time {
	font-size: 12px;
}

#menu .food-menu h4 .price {
	float: right;
	font-weight: normal;
}
* html #menu .food-menu h4 .price {
	float: none;
	margin-left: 20px;
}
*:first-child+html #menu .food-menu h4 .price {
	float: none;
	margin-left: 20px;
}

#menu .food-menu h4 .period {
	padding: 0 10px;
	background: #FFF;
	font-size: 12px;
	color: #384840;
	/**/
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

#menu .food-menu .description {
	margin: 0 0 20px;
}

#menu .food-menu figure {
	position: absolute;
	left: 0;
	top: 0;
}

#menu .food-menu h5 {
	margin: 0 0 20px;
}

#menu .food-menu ul li {
	margin: 0 0 0 20px;
}


/*	3-2. .desert-menu
------------------------------------------------------------------------------*/

#menu .desert-menu {
	position: relative;
}

#menu .desert-menu h3 {
	background: url(../img/menu-desert-menu-heading.png) no-repeat;
}

#menu .desert-menu .group {
	background-color: #FFF;
	margin: 0 0 30px;
}
*:first-child+html #menu .desert-menu .group {
	padding: 0 0 10px;
}

#menu .desert-menu .photos {
	float: left;
	width: 410px;
	margin: 10px 0 0;
}

#menu .desert-menu .photos figure {
	float: left;
	width: 195px;
	margin: 0 0 10px 10px;
}
* html #menu .desert-menu .photos figure {
	display: inline;
}


#menu .desert-menu .handmade {
	position: relative;
	float: right;
	width: 410px;
	padding: 295px 0 180px;
	background: url(../img/menu-desert-menu-background1.jpg) no-repeat right bottom;
	font-size: 12px;
}
* html #menu .desert-menu .handmade {
	height: 1px;
}

#menu .desert-menu .handmade figure {
	position: absolute;
	left: 0;
	top: 0;
}

#menu .desert-menu .handmade h4,
#menu .desert-menu .handmade p {
	position: absolute;
}

#menu .desert-menu .handmade h4 {
	left: 21px;
	top: 332px;
}

#menu .desert-menu .handmade p {
	left: 21px;
	top: 370px;
	width: 200px;
}

#menu .desert-menu .price-list {
	margin-bottom: 0;
	background: none;
	color: #FFF;
}

#menu .desert-menu .cake-sherbet,
#menu .desert-menu .others {
	width: 400px;
}

#menu .desert-menu .cake-sherbet {
	float: left;
}

#menu .desert-menu .others {
	float: right;
}

#menu .desert-menu .price-list h4 {
	margin: 0 0 30px;
	padding: 6px 10px 4px;
	background: #4C5C54;
	font-size: 16px;
	/**/
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

#menu .desert-menu .price-list h5 {
	margin-bottom: 10px;
}

#menu .desert-menu .price-list h5 .price {
	float: right;
}
* html #menu .desert-menu .price-list h5 .price {
	float: none;
	margin-left: 20px;
}
*:first-child+html #menu .desert-menu .price-list h5 .price {
	float: none;
	margin-left: 20px;
}

#menu .desert-menu .price-list h5 .period {
	padding: 0 10px;
	background: #FFF;
	font-size: 12px;
	color: #384840;
	/**/
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

#menu .desert-menu .price-list p {
	margin: 0 0 30px 20px;
}

/**/

#menu .desert-menu #witchs-bread {
	margin-bottom: 30px;
	padding: 1em;
	background: rgba(0,0,0,.1);
	border: 1px dashed rgba(255,255,255,.3);
	border-radius: .5em;
}

#menu .desert-menu #witchs-bread p {
	width: auto;
	margin: 0;
}

#menu .desert-menu #witchs-bread .photo {
	float: left;
	width: 100px;
	margin-right: 1em;
}

#menu .desert-menu #witchs-bread .photo img {
	display: block;
	width: 100%;
	height: auto;
}
