/* style.css */

@charset "UTF-8";

@import url('reset.css');
@import url('layout.css');

/* トップページ
============================================*/

.select-wrap{
	position:relative;
	overflow:hidden;
	display:block;
	width:100%;
	background-color:#ffffff;
	border:1px solid #000;
	color:#333;
}

.select-wrap select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	position:relative;
	z-index:2;
	display:block;
	width:100%;/* fallback non calc support */
	width:-webkit-calc(100% + 5em);
	margin:0;
	padding:11px 35px 11px 11px;
	padding:.6875rem 2.1875rem .6875rem .6875rem;
	background:transparent;
	border:0;
	outline:none;
	font-size:16px;
	font-size:1rem;
	line-height:1.5;
}

#main h2 {
	margin: 0 0 10px;
	font-size: 1.4rem;
	line-height: 1.2;
	font-weight: bold;
}
#main h2 strong {
	font-size: 2.85rem;
	font-weight: bold;
}
	
#main .guide .tag {
	margin-top: 20px;
	margin-bottom: 10px;
}
	
#main .guide .image {
	position: absolute;
}
	
#main .guide .name {
	font-size: 0.9rem;
}
	
#main .guide .price {
	font-weight: bold;
	font-size: 2.8rem;
	line-height: 1.2;
}
#main .guide .price span {
	font-weight: bold;
	font-size: 2.1rem;
}
#main .guide .tax {
	color: #5c5c5c;
	line-height: 1.2;
	font-style:italic;
	font-family: sans-serif;
}
	
#main .visual {
	margin-bottom: 30px;
}
#main .visual p {
	margin-bottom: 20px;
}

#main .visual li {
	float: left;
	margin: 10px 10px 0 0;
	width: 144px;
	height: 144px;
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	border: #c8c8c8 1px solid;
}
#main .visual li img {
	height: 100%;
	max-width: inherit;
	position: relative;
	transform: translate(-17px, 0px);
}

#main .visual li a:before {
	display: block;
	content: "";
	width: 142px;
	height: 142px;
	box-sizing: border-box;
	border: #fff 4px solid;
	position: absolute;
	z-index: 2;
}


#main .more {
	margin-bottom: 10px;
}

#main .more a {
	display: block;
	padding: 10px 10px;
	color: #FFF;
	text-decoration: none;
	font-weight: bold;
	background: #ed1c24;
	text-align: center;
	position: relative;
}

#main .more a:before {
	content:"";
	display: block;
	width: 100%;
	height: 3px;
	background: rgba(255,255,255,0.3);
	position: absolute;
	left: 1px;
	top: 1px;
}

#main .menulist {
	margin: 30px -25px;
}

#main .photo {
	margin: 30px -3px;
}

#main .photo li{
	float: left;
	margin: 3px;
}

#main .menulist h3 {
	margin: 30px 25px 20px;
	line-height: 36px;
	height: 36px;
	font-weight: bold;
	border-bottom: #b6b6b6 1px solid;
}
#main .menulist h3 span {
	padding: 0 20px;
	border:#b6b6b6 1px solid;
	border-bottom: #FFF 1px solid;
	display: inline-block;
background: -webkit-gradient(linear, left top, left bottom, color-stop(0.09, #d6d6d6), color-stop(0.00, #fff));
background: -webkit-linear-gradient(top, #fff 0%, #d6d6d6 9%);
background: -moz-linear-gradient(top, #fff 0%, #d6d6d6 9%);
background: -o-linear-gradient(top, #fff 0%, #d6d6d6 9%);
background: -ms-linear-gradient(top, #fff 0%, #d6d6d6 9%);
background: linear-gradient(to bottom, #fff 0%, #d6d6d6 9%);
	-webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}

#main .menulist .menu.last{
	border-right: none;
}

#main .menulist .menu h4 {
	font-weight: bold;
	height: 2.5em;
}

#main .menulist .menu h4 img {
	display: block;
	margin-bottom: 5px;
}
#main .menulist .menu p {
	margin-bottom: 10px;
}

#main .menulist .menu .price {
	font-weight: bold;
	text-align: right;
}

#main .menulist .menu .detail {
	text-align: right;
}

#main .menulist .menu .detail a {
	text-decoration: underline;
}




/*-------------------------
|                         |
|  レスポンシブCSS        |
|  SP用（767px以下）  　　|
|													|
-------------------------*/

@media screen and (max-width:766px){	
#main {
	margin: 0 auto;
	width: 580px;
	font-size: 1rem;
	position: relative;
}
.guide {
	margin-bottom: 30px;
	position: relative;
}
#main .guide h2 {
	font-size: 1rem;
}
#main h2 strong {
	font-size: 2rem;
}
#main .guide p {
}
#main .guide .image {
	right: -40px;
	bottom: 70px;
}
#main .guide .name {
	display: inline;
		font-size: 1.5rem;
}
#main .guide .price {
	display: inline;
}
#main .link * {
	float: left;
}
#main .more a {
	box-sizing: border-box;
	padding: 21px;
	width: 220px;
	margin-right: 10px;
}
.select-wrap{
	width:340px;
}
.select-wrap select{
	padding:7px 35px 7px 11px;
}
	
#main .menulist h3 {
	font-size: 14px;
}


#main .menulist .menu{
	margin: 0 25px;
	padding: 25px 0;
	line-height: 1.5;
	border-bottom: #b6b6b6 1px solid;
	position: relative
}
#main .menulist .menu h4 {
	width: 395px;
	float: right;
	height: auto;
	margin-bottom: 10px;
}
#main .menulist .menu p {
	width: 395px;
	float: right;
}

#main .menulist .menu .image {
	width: 170px;
	float: left;
}

#main .menulist .menu .image img {
	width: 100%;
}
#main .menulist .menu p {
	margin-bottom: 10px;
	font-size: 18px;
}

#main .menulist .menu .price {
	position: absolute;
	left: 180px;
	bottom: 25px;
	text-align: left;
}

#main .menulist .menu .detail {
	width: 150px;
	position: absolute;
	right: 0;
	bottom: 25px;
}

}



/*-------------------------
|                         |
|  レスポンシブCSS        |
|  PC用（767px以上）  　　|
|													|
-------------------------*/

@media screen and (min-width:767px){	
	#main {
		margin: 0 auto;
		max-width: 1060px;
		font-size: 1rem;
		position: relative;
		padding-bottom: 50px;
	}
	#main .visual {
		width: 650px;
		float: left;
	}
	
	#main .text {
		width: 360px;
		float: right;
	}
	
#main .guide .image {
	position: absolute;
	right: -30px;
	top: 80px;
	width: 210px;
}
#main .link {
	margin-bottom: 40px;
}

	#main .guide {
		margin-bottom: 10px;
	}
	

#main .photo {
	margin-top: 0;
}

#main .photo li{
	width: 260px;
	margin: 3px;
}


#main .menulist .menu{
	float: left;
	width: 20%;
	box-sizing: border-box;
	padding: 0 25px;
	line-height: 1.5;
	border-right: #b6b6b6 1px solid;
}
}

