@charset "UTF-8";

/*----------------------------------------
	regular
-----------------------------------------*/

#main{
	background: url(../../img/index_main_bg_02.jpg) no-repeat center center;
	background-size: cover;
	text-shadow: 0px 0px 3px #54290c;	
}

#subnavi.fixed{
	width: 100%;
	top: 0;
	left: 0;
	position: fixed;
	z-index: 100;
	background: #fff;
	border-bottom: solid 1px #dcdcdc;
}

#main.addmargin{
	margin-bottom: 180px;
}

#subnavi.fixed .container{
	padding-top: 45px;
	padding-bottom: 25px;
}

#subnavi ul{
	/*margin: 50px auto 35px auto;*/
	margin: 0 auto;
}

#subnavi ul li{
	float:left;
	width: 16.5%;
	border-left: solid 1px #dcdcdc;
}

#subnavi ul li:last-of-type{
	border-right: solid 1px #dcdcdc;
}

#subnavi ul li a{
	font-size: 18px;
	color: #5a320a;
	padding:  10px 15px 10px 25px;
	font-weight: bold;
	display: inline-block;
	background: url(../../img/common_arrow_br.png) no-repeat left 0px center;
	background-size: 6px 8px
}

#subnavi ul li.active a,
#subnavi ul li a:hover{
	color: #ff9f00;
	background: url(../../img/common_arrow_or.png) no-repeat left 0px center;
	background-size: 6px 8px
	
}

#subnavi ul li.sidemenu a{
	font-size: 16px;
	margin-top: 2px;
}

@media screen and (max-width: 1500px) {/*SP*/
#subnavi.fixed .container{
	padding-right: 110px;
}
}

@media screen and (max-width: 1024px) {/*SP*/
#subnavi ul li{
	width: 16.0%;
	border-left: solid 1px #dcdcdc;
}

#subnavi.fixed .container{
	padding-right: 90px;
}

#subnavi ul li a{
	padding:  10px 10px 10px 20px;
}
}

@media screen and (max-width: 768px) {/*SP*/
#main{
	background: url(../img/menu_main_bg_sp.jpg) no-repeat center center;
	background-size: cover;
	text-shadow: 0px 0px 3px #54290c;	
}

#subnavi.fixed{
	width: 100%;
	top: 0;
	left: 0;
	position: fixed;
	z-index: 100;
	background: #fff;
	border-bottom: solid 1px #dcdcdc;
}

#subnavi.fixed .container{
	padding: 10px 0;
}

#main.addmargin{
	margin-bottom: 60px;
}

#subnavi{
	overflow: scroll;
	margin-bottom: 20px;
	-webkit-overflow-scrolling: touch;
}

#subnavi .container{
	width: 240%;
	padding: 10px 0px;
	min-width: 700px; 
	background: #f8f8f8;
}

#subnavi ul li a{
	font-size: 16px;
	padding:  5px 0px 5px 15px;
}

#subnavi ul li.sidemenu a{
	font-size: 14px;
	margin-top: 2px;
}

}

/*----------------------------------------
	menu
-----------------------------------------*/
#menu .container{
	padding-top: 0;
}

#menu .large li{
	float: left;
	width: 50.0%;
	box-sizing: border-box;
	padding: 0 10px 20px 0px;
}

#menu .large li:nth-of-type(2n){
	padding: 0 0px 20px 10px;
}


#menu li{
	float: left;
	width: 33.33%;
	box-sizing: border-box;
	padding: 0 7px 20px 7px;
}

#menu li:nth-of-type(3n+1){
	padding: 0 14px 20px 0;
}

#menu li:nth-of-type(3n){
	padding: 0 0 20px 14px;
}

#menu li a{
	width: 100%;
	display: block;
	padding-top: 95%;		
	color: #5a320a;
	text-align: left;
	border-radius: 4px;
	/*box-sizing: border-box;*/
	position: relative;	
	border:  solid 1px #dcdcdc;
	overflow: hidden;
}

#menu .large li a{
	padding-top: 85%;		
}

#menu li.no_pict>div{
	width: 100%;
	color: #5a320a;
	text-align: left;
	border-radius: 4px;
	box-sizing: border-box;
	position: relative;	
	border:  solid 1px #dcdcdc;
	overflow: hidden;
}


#menu li a:hover{
	color: #f6ab00;
}

#menu li h4{
	font-size: 20px;
	font-weight: bold;
}

#menu li p{
	margin-top: 5px;
	font-size: 14px;
}

#menu li a img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

#menu li a p.rank img{
	position: absolute;
	top: 25px;
	left: 25px;
	width: 40px;
	height: auto;
}

#menu .large li a p.rank img{
	width: 50px;
}

#menu li a>div{
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	padding: 0 22px 20px 22px;
	box-sizing: border-box
}

#menu li div .box{
	position: relative;
	padding-right: 100px;
}

#menu li.no_pict>div{
	padding: 22px;
}

#menu li.no_pict.long .box{
	padding: 0 0 80px 0px;
}

#menu li .price{
	position: absolute;
	right: 0;
	bottom: 0;
}

#menu li .price p{
	font-weight: bold;
	text-align: right;
	padding-top: 10px;
}

#menu li .price p .shin{
	font-weight: normal;
	font-size: 12px;
	color: #5a320a;
}

#menu .large li .price span{
	font-size: 36px;
}

#menu .large li .price p .shin{
	font-size: 12px;
}

#menu li .price span{
	font-size: 30px;
	color: #f69900;
	line-height:  20px;
	padding-right: 5px;
}


#menu ul.options{
	border-top: solid 1px #dcdcdc;
	margin-top: 20px;
	padding-top: 40px;
}

.comment{
	text-align: left;
	font-size: 14px;
}

@media screen and (max-width: 1024px) {/*SP*/

#menu li a{
	height: 50px;	
	padding-top: 100%;
}

#menu li.long a{
	height: 60px;	
	padding-top: 100%;		
}

#menu .large li.long a{
	height: 20px;	
	padding-top: 100%;		
}

#menu .large a{
	padding-top: 90%;		
}

#menu li a>div{
	padding-left: 10px; 
	padding-right: 10px; 
	text-align: center;
}

#menu li div .box{
	float: none;
	width: 100%;
	padding-right: 0px;
}

#menu li h4{
	padding-bottom: 5px;
}

#menu li.no_pict h4{
	padding-bottom: 5px;
}

#menu li.no_pict.long .box{
	padding: 0;
}

#menu li .box p{
	margin-top: 0px;
	padding-bottom: 10px;
}

#menu li .price{
	position: static;
	text-align: center;
}

#menu li .price p .shin{
	width: 60px;
	display: inline-block;
	text-align: right;
}

#menu li .price p{
	text-align: center;
	padding-bottom: 0px;
}

#menu .large li .price span{
	font-size: 30px;
	line-height:  20px;
}

#menu li.no_pict>div{
	text-align: center;
}

#menu li.no_pict .box{
	padding: 0;
}

#menu li.no_pict .price{	
	position: static;
	text-align: center;
}

}

@media screen and (max-width: 768px) {/*SP*/

#menu li,
#menu .large li{
	width: 50.0%;
	padding: 0 0px 10px 5px;
}

#menu li:nth-of-type(3n+1),
#menu li:nth-of-type(3n){
	padding: 0 0px 10px 5px;
}

#menu .large li:nth-of-type(2n){
	padding: 0 0px 10px 5px;
}

#menu li:nth-of-type(2n+1){
	padding: 0 5px 10px 0px;
}


#menu li a,
#menu .large li a{
	height: 90px;
	width: 100%;
	padding-top: 90%;		
}

#menu li.long a,
#menu .large li.long a{
	height: 120px;
}

#menu li .box p{
	padding-bottom: 0px;
}

#menu li h4{
	padding-bottom: 5px;	
	font-size: 17px;
	letter-spacing: 0;
}

#menu li a>div,
#menu .large li a>div{
	padding: 0 5px 15px 5px;
}

#menu .large li .price span,
#menu li .price span{
	font-size: 24px;
}

#menu .large li a p.rank img{
	width: 35px;
}

#menu li a p.rank img{
	top: 8px;
	left: 8px;
	width: 35px;
}

#menu li .price p,
#menu li.no_pict .price p{
	margin-top: 0px;
}

#menu li .price p .shin{
	width: 100%;
	text-align: center;
}

#menu li.no_pict>div{
	padding: 15px 5px;
}

}



/*----------------------------------------
	menu
-----------------------------------------*/

#menu_large{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #fff;
	text-align: center;
	z-index: 1100;
	display: none;
	height: 100%;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;	
}

#menu_large .button{
	position: fixed;
	top: 25px;
	right: 25px;
	z-index: 1200;
}

#menu_large .button a{
	background: #fff;
	border-radius: 4px;
	padding: 35px 20px;
	border: solid 1px #dcdcdc;
	display: block;
	background: #fff;
}

#menu_large .button span{
	display: block;
	width: 30px;
	height: 0;
	border-top: solid 2px #c8c8c8;
}

#menu_large .button a:hover{
	background: #ff9f00;
	border: none;
}

#menu_large .button a:hover span{
	border-top: solid 2px #fff;	
}

#menu_large .button span:first-of-type{
	display: block;
	transform: rotate(45deg);
}

#menu_large .button span:last-of-type{
	display: block;
	transform: rotate(-45deg);
	margin-top: -2px;
}

#menu_large .container{
	max-width: 900px;
}

#menu_large li{
	box-sizing: border-box;
	padding: 0 0 20px 0;
}

#menu_large li a{
	width: 100%;
	height: 100px;
	display: block;
	padding-top: 70%;		
	color: #5a320a;
	border-radius: 4px;
	position: relative;	
	border:  solid 1px #dcdcdc;
	overflow: hidden;
	cursor: default;
}

#menu_large li.long a{
	height: 100px;
	padding-top: 80%;		
}

#menu_large li p{
	font-size: 14px;
}

#menu_large li a img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

#menu_large li a p.rank img{
	position: absolute;
	top: 25px;
	left: 25px;
	width: 50px;
	height: auto;
}

#menu_large .large li a p.rank img{
	width: 50px;
}

#menu_large li h4{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}

#menu_large li a>div{
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	padding: 0 22px 22px 22px;
	box-sizing: border-box
}

#menu_large li .price p{
	font-weight: bold;
	width: 100%;
	padding-top: 10px;
}

#menu_large li .price span{
	font-size: 30px;
	color: #f69900;
	line-height:  30px;
	padding-right: 5px;
}

#menu_large li .price .shin{
	font-size: 12px;
	color: #5a320a;
	font-weight: normal;
	width: 60px;
	display: inline-block;
	text-align: right;	
}

#menu_large ul.options{
	border-top: solid 1px #dcdcdc;
	margin-top: 20px;
	padding-top: 40px;
}

#menu_large li.no_pict{
	border:  solid 1px #dcdcdc;
	padding: 0;
	margin-bottom: 20px;
}

#menu_large li.no_pict h4{
	margin-bottom: 0px;
}

#menu_large li.no_pict>div{
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
}

.comment{
	font-size: 14px;
}

@media screen and (max-width: 768px) {/*SP*/
#menu_large li .price span{
	font-size: 26px;
}


#menu_large .button{
	top: 10px;
	right: 10px;
}

#menu_large .button a{
	padding: 20px 8px;
}

#menu_large .button a:hover span{
	border-top: solid 2px #fff;	
}

#menu_large .button span:first-of-type{
	display: block;
	transform: rotate(45deg);
}

#menu_large .button span:last-of-type{
	display: block;
	transform: rotate(-45deg);
	margin-top: -2px;
}

#menu_large li a{
	padding-top: 75%;		
}

#menu_large li.long a{
	padding-top: 90%;		
}

#menu_large li a p.rank img{
	width: 40px;
}

}
