@charset "utf-8";

body{
	min-width:980px;
}
body.page{background:url(images/pagevisual/pv01.png) no-repeat center top fixed #333;}

body.shopinfo{ background:url(images/pagevisual/pv07.png) no-repeat center top fixed #333 }
body.mileage{ background:url(images/pagevisual/pv06.png) no-repeat center top fixed #333; }
body.menu{ background:url(images/pagevisual/pv01.png) no-repeat center top fixed #333;}
body.news{	background:url(images/pagevisual/pv02.png) no-repeat center top fixed #333;}
body.concept{ background:url(images/pagevisual/pv05.png) no-repeat center top fixed #333 }
body.movie{ background:url(images/pagevisual/pv03.png) no-repeat center top fixed #333; }
body.howto{ background:url(images/pagevisual/pv06.png) no-repeat center top fixed #333; }
body.recruit{ background:url(images/pagevisual/pv08.png) no-repeat center top fixed #333; }
body.ranking{ background:url(images/pagevisual/pv06.png) no-repeat center top fixed #333; }



.pankuzu{
	padding:5px 0;
	font-size:12px;
}
.page #visual{
	padding: 380px 0 20px;
	height: 70px;
	min-height:inherit;
}

#visual h1{
	margin:0 auto 0;
	background:url(images/shopinfo/page_tit_bg.png) no-repeat center;
	width:980px;
	height:70px;
	font-size:16px;
	padding:23px 70px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	color:#FFF;
}

#visual h1 strong{
	font-size:26px;
	font-weight:normal;
	padding:0 10px;
}

.gototop{
	border-bottom: 5px solid #000;
}

.gototop p{
	height: 0;
	text-align: right;
	position: relative;
}

.gototop p a{
	position: relative;
	top: -68px;
	right:30px;
}


.page .the_content{
	margin:0 0 30px;
	font-size:14px;
	border:1px dotted #999;
	background:#EFEFEF;
	padding:15px;
}
.page .the_content p{
	margin:0 0 1em;
	line-height:1.6;
	color:#333;
}

.page .the_content strong{
	font-weight:bold;
}

.txt p{
	margin:0 0 1em;
	line-height:1.6;
}
.txt strong{
	font-weight:bold;
}
.txt strong span{
	font-weight:bold;
}


/*　店舗情報　shopinfo
-------------------------------------------------------------------*/


.shopinfo section h2{
	margin:0 0 50px;
	text-align:center;
}
.shopinfo .bg02 section{
	color:#FFF;
}
.si-info .txt{
	margin:30px 0 0;
	font-size:14px;
}

.left_img{
	max-width:380px;
	float:left;
	margin:0 30px 30px 0;
}

.si-menu h3{
	font-size:20px;
	font-weight:normal;
	margin:0 0 20px;
}

.si-menu .txt{
	font-size:14px;
}

.si-menu ul{
	clear:both;
	overflow:hidden;
	margin:10px auto;
	display:inline-block;
	text-align:center;
}
.si-menu ul li {
	margin:10px;
	width:200px;
	float:left;
	box-shadow:0 2px 5px rgba(0,0,0,0.3);
	padding:5px;
	background:#FFF;
}

.si-menu ul li:hover{
	background:#CCC;

}

.si-menu p.link_menu{
	text-align:right;
	clear:left;}

.si-menu p.link_menu a{
	display:inline-block;
	text-align:center;
	font-size:14px;
	color:#222;

}

.si-data .shop_data{
	float:left;
	width:500px;
}

.shop_data table{
	border-top:1px solid #999;
	margin:0 0 20px;
	width:100%;
}

.shop_data table tr{
	border-bottom:1px solid #999;
}

.shop_data table th{
	padding:8px 30px 8px 0;
	text-align:left;
	font-weight:bold;
	vertical-align:top;
	width:100px;
	font-size:14px;
}
.shop_data table td{
	padding:8px 0;
	font-size:14px;
}


.shop_data>p{
	font-size:14px;
}

.shop_map{
	float:right;
	width:400px;
}

.acf-map {
	width: 100%;
	height: 320px;
	border: #ccc solid 1px;
	position:relative;
}


.acf-map img{
	max-width:inherit;
}

	
.shopinfo section.si-list{
	margin:0 0 50px;
}


.shopinfo section.si-list h2{
	margin:0 0 30px;
	text-align:left;
	background: url(images/shopinfo/si-list_h2.png) 5px center no-repeat #FFF;
	height:40px;
	padding:0 0 0 20px;
	line-height:40px;
	color:#222;
	font-size:18px;
}

.si-list ul{
	border-top:1px dashed #666;
}

.si-list ul li{
	border-bottom:1px dashed #666;
	padding:8px 0 8px 20px;
	background:url(images/shopinfo/shoplist-arrow.png) no-repeat left center;
}

.si-list ul li a span{
	background:#c4161d;
	display:inline-block;
	color:#FFF;
	text-align:center;
	margin:0 20px;
	font-size:14px;
	font-weight:bold;
	padding:.3em;
}



#lean_overlay{
  position: fixed; z-index:100; 
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  display: none;
}

 .modal_box p{
	 border:1px solid #CCC;
	 margin:0 0 30px;
 }

iframe{
/*	width:800px;*/
}

.modal_close{ 
  position: absolute;
  top: 12px;
  right: 12px;
  display: block; 
  width: 14px;
  height: 14px; 
  background: url(../img/modal_close.png);
  z-index: 2;
}
.shopinfo .fancybox-wrap{
	width:547px !important;
	max-width:847px !important;
}

.shopinfo .fancybox-inner{
	width:auto !important;
}


/*　肉マイレージカード　mileage
-------------------------------------------------------------------*/

.mile_h_wrap{
	overflow:visible;
	padding:50px 0;
	height:300px;
}


.mile_head{
	position:relative;
}

.mile_head p.card_img{
	position:absolute;
	right:0;
	top:-70px;
	margin:0;
}

.mile_head p{
	font-size:16px;
	color:#FFF;
	margin:40px 0 0;
}


.mile_rank {
	margin:0 0 70px;
}

.mile_rank p{
	margin:0;
}

.mile_rank p.txt{
	font-size:14px;
	margin:20px 0;
}

.mile_register{
	float:left;
	width:330px;
}

	
.mile_register p{
	margin:20px 0;
	font-size:14px;
}

.agreement{
	width:600px;
	padding:15px;
	font-size:12px;
	border:1px solid #CCC;
	float:right;
	line-height:1.6;
	background:#ebebeb;
}

.mile_h2{
	background:#c4161d;
	font-weight:bold;
	font-size:18px;
	width:320px;
	max-width:100%;
	border-radius:20px;
	color:#FFF;
	text-align:center;
	padding:3px 0;
}



/*　メニュー　menu
-------------------------------------------------------------------*/

.menu .menu_title{
	text-align:center;
	margin:0 0 30px;
}


.menu_sec > h2{
	margin:0 0 30px;
	text-align:left;
	background: url(images/shopinfo/si-list_h2.png) 5px center no-repeat #FFF;
	height:40px;
	padding:0 0 0 20px;
	line-height:40px;
	color:#222;
	font-size:18px;
	font-weight:bold;
}

.menu_block{
	overflow:hidden;
	margin:0 0 30px;
}

.menu_block .m_right{
	float:right;
	width:530px;
}
.menu_block h3{
	padding:8px 0;
	border-top:solid 1px #666;
	border-bottom:solid 1px #666;
	font-size:20px;
	font-weight:bold;
}

.menu_block p{
	margin:20px 0;
	font-size:14px;
}


.menu_block .menu_img{
	float:left;
	margin:0;
	width:400px;
}
.menu_block .menu_img img{
	border:5px solid #FFF;
}

.menu_block .m_price{
	color:#c4161d;
	font-weight:bold;
	text-align:right;
	margin:5px 0 0;
	font-size:16px;
}
.menu_block .m_ex{
	background:url(images/menu/ex.png) no-repeat left center;
	padding:10px 0 0 80px;
	height:47px;
	font-weight:bold;
}

.m_sp > p{
	font-size:14px;
	margin:0 0 30px;
}
.m_sp .menu_block .m_price{
	text-align:left;
}

.m_side .menu_block{
	border-bottom:solid 1px #666;
}
.m_side h3{
	border:none;
	float:left;
}

.m_side .m_price{
	float:right;
	line-height:20px;
	padding:10px 0;
}
#lang_menu{
	overflow:hidden;
	margin:0 -16px 0 0;
}

#lang_menu li{
	float:left;
	text-align:center;
	width:150px;
	margin:0 13px 0 0;
}
#lang_menu li img{
	border:1px solid #666;
}


/*　動画　movie
-------------------------------------------------------------------*/
#movies{
	margin:0 -25px 0 0;
}

#movies li{
	width:310px;
	height:360px;
	float:left;
	margin:0 25px 30px 0;
	font-size:14px;
	background:#FFF;
	position:relative;
}
#movies li{
	color:#222;
}
#movies li p{
	padding:8px 10px 0;
	font-size:13px;
}

#movies li strong{
	font-size:16px;
	font-weight:bold;
}

#movies li p.play{
	padding:0;
	position:absolute;
	top:110px;
	width:100%;
	text-align:center;
}




/*　新着情報　news
-------------------------------------------------------------------*/


.news p.date{
	float:left;
	margin:0 15px 10px 0;
	height:20px;
	line-height:20px;
}
.news .cat{
	width:80px;
	text-align:center;
	margin:0 20px 0;
	height:20px;
	line-height:20px;
	font-size:10px;
	color:#FFF;
	background:#999;
	float:left;
}
.news .cat.cat_open{ background:#609406; }
.news .cat.cat_event{ background:#16a1c4; }
.news .cat.cat_notice{ background:#b54d00; }
.news .cat.cat_media{ background:#bf467f; }


.newshead h2{
	font-size:24px;
	font-weight:bold;
	clear:both;
}

/*ニュース一覧*/
article.newshead{
	margin:0 0 10px;
	border-bottom:1px solid #666;
	padding:0 0 10px;
}

article.newshead p.date{
	width:120px;
}

article.newshead p.cat{
	float:left;
}
article.newshead h2{
	clear:none;
	font-size:18px;
}

/*メディア一覧*/

article.mediahead{
	margin:0 0 10px;
	border-bottom:1px solid #666;
	padding:0 0 10px;

}

article.mediahead p.date{
	width:150px;
	float:left;}

article.mediahead h2{
	clear:none;
	font-size:20px;
	font-weight:bold;
}
article.mediahead div p{
	font-size:14px;
	color:#CCC
}

article.mediahead div p a{
	text-decoration:underline;
}


#recruit h2{
	margin:0 0 30px;
	text-align:left;
	background: url(images/shopinfo/si-list_h2.png) 5px center no-repeat #FFF;
	height:40px;
	padding:0 0 0 20px;
	line-height:40px;
	color:#222;
	font-size:18px;
}


#recruit dl{
	margin:30px 0 50px;
	overflow:hidden;
	border-top:1px solid #666;
	font-size:14px;
}

#recruit dt{
	float:left;
	clear:both;
	width:200px;
	padding:8px 0;
}


#recruit dd{
	padding:8px 0 8px 210px;	
	border-bottom:1px solid #666;
}

#recruit p{
	font-size:14px;
}



#privacy{
	font-size:14px;
}

#privacy h3{
	font-weight:bold;
	margin:10px 0;
	border-left:8px solid #FFF;
	padding:0 0 0 10px;
}

#privacy hr{
	border:none;
	border-bottom:1px solid #666;
}


/*　concept
--------------------------------------------------*/

#concept #block01{
	position:relative;
	overflow:hidden;
	min-height:823px;
}
#concept #block02{
	position:relative;
}


#conimg01,
#conimg02,
#conimg03{
	position:absolute;
}

#conimg01{
	top:0;
	left:0;
}

#conimg02{
	top:-30px;
	right:0;
}

#conlead{
	float:right;
	margin:0 0 30px;

}

#concept section{
	color:#222;
	background:#FFF;
	box-shadow:0 5px 5px rgba(0,0,0,0.5);
	margin:20px 10px 0;
}

#concept section h2{
	background:#c4161d;
	color:#FFF;
	margin:0 -15px;
	padding:8px 15px;
	font-size:22px;
	box-shadow:0 3px 3px rgba(0,0,0,0.3);
}

#concept section p{
	font-size:14px;
	margin:1em 20px 1em;
	line-height:1.7;
}

#concept section p strong{
	border-bottom:#666 1px dashed;
	vertical-align:baseline;
	padding:0 3px;
	font-weight:bold;
}





#concept section.con01{
	width:610px;
	float:right;
	clear:both;
	padding:10px;
}
#concept section.con02{
	width:430px;
	float:right;
	clear:both;
	padding:10px;
}
#concept section.con03{
	width:540px;
	float:left;
	
	padding:10px;
	margin-bottom:20px;
}
#concept section.con04{
	width:960px;
	clear:both;
	border:10px solid #FFF;
	padding-bottom:320px;
	background:url(images/concept/conimg03.png) no-repeat bottom center #FFF;
}


/* 美味しい食べ方
-------------------------------------------------------------*/

#howto p{
	margin:0 0 30px;
}

p.howto_bnr a{
	display:block;
	border:7px solid #000;
}
p.howto_bnr a:hover{
	display:block;
	border:7px solid #FFF;
}


#wild p.howto_bnr,
#order p.howto_bnr{
	margin:30px 0 40px;
}


/* process　道のり
-------------------------------------------------------------*/

#process section{
	color:#222;
	margin:20px 10px 0;
	position:relative;
	padding:20px 0;
	overflow:hidden;
}

#process section h2{
	color: #FFF;
	font-size: 22px;
	border-top: 1px dotted #999;
	border-bottom: 1px solid #999;
	padding: 5px 10px;
	width: 480px;
	float: left;
	margin: 0 0 20px;
}

#process section p{
	color:#FFF;
	font-size:14px;
	margin:1em 0 1em;
	line-height:1.7;
}

#process section p strong{
	border-bottom:#666 1px dashed;
	vertical-align:baseline;
	padding:0 3px;
	font-weight:bold;
}

#process section#pro01 p.pro_img{ float: right; }
#process section#pro02 p.pro_img{ float: left; }
#process section#pro03 p.pro_img{ float: right; }
#process section#pro04 p.pro_img{ float: left; }

#process section p.pro_img{
	width: 400px;
	border: 5px solid #FFF;
	margin: 0 20px 20px;
	box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
}


/*　文字でっかく
------------------------------------------------------*/


.si-list ul li{
	font-size:24px;
}
#news_box section ul li{
	font-size:17px;
}
#media_box ul li{
	font-size:17px;
}

#news_box section ul li span {
width: 100px;
height: 17px;
line-height: 18px;
font-size: 12px;
}


/*　ランキング
------------------------------------------------------*/

.rank_content{
	margin:0 0 30px;
}

.ranking .rank_tabs{
	overflow:hidden;
}

.ranking .rank_tabs li{
	float:left;
	width:250px;
	cursor:pointer;
	background-color:#CCC;
	color:#333;
	padding:10px 5px;
	font-size:18px;
	margin:0 8px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	border-radius:8px 8px 0 0;
	font-weight:bold;
	text-align:center;
	
}
.ranking .rank_tabs li.tab_active{
	background-color:#9c1419;
	color:#FFF;
}
.ranking .rank_tabs li:hover{
	background-color:#9c1419;
	color:#FFF;
}
.ranking .rank_wrap{

	background:#FFF;
	border:1px solid #FFF;
	padding:15px 30px 50px;
	overflow:hidden;

}

.ranking .rank_wrap h2{
	font-size:28px;
	margin:20px 0;
	padding:0 40px 0;
	font-weight:bold;
	background-size:contain;
	line-height:1;
	text-align:center;

}
.ranking .rank_wrap h2 img{
  vertical-align: top;
}


.ranking .rank_wrap table{
	font-size:16px;
	width:600px;
	margin:0 auto;
}
.ranking .rank_wrap table th,
.ranking .rank_wrap table td{
	border:1px solid #FFF;
	padding:5px 20px;
}
.ranking .rank_wrap table th{
	background:#d61b22 !important;
	color:#FFF;
	font-weight:bold;
}
.ranking .rank_wrap table tr:nth-child(odd){
	background:#f1cfd0;
}
.ranking .rank_wrap table tr:nth-child(even){
	background:#FFF;
}
.ranking .rank_wrap table td.rank{
	text-align:center;
	font-weight:bold;
}
.ranking .rank_wrap table td.rank span{
	font-weight:bold;
	font-size:20px;
	vertical-align:baseline;
}

.ranking .rank_wrap table td.mile{
	text-align:right;
	font-weight:bold;
}


.ranking .rank_wrap .small{
	font-size:12px;
	display:block;
	font-weight:normal;
}




/*　クーポン
------------------------------------------------------*/
.coupon .head-img{
	display: block;
	margin: 0 auto;
}
.coupon .coupon-container{
	height: 800px;
	margin-top: 30px;
	margin-bottom: 40px;
	overflow-x: hidden;
	overflow-y: scroll;
	background: #fff;
}
.coupon .coupon-item{
	position: relative;
	width: 920px;
	height: 200px;
	margin: 20px auto;
	padding: 20px;
	background: url(images/coupon/coupon_bg_01.png);
	box-sizing: border-box;
	border-radius: 20px;
}
.coupon .coupon-item h3{
	display: inline-block;
	margin-bottom: 20px;
	padding: 5px 20px 5px 62px;
	font-size: 34px;
	font-weight: bold;
	border: 2px solid #fff;
	border-radius: 8px;
	background: url(images/coupon/place.png) no-repeat;
	background-position: top 50% left 20px;
}
.coupon .coupon-item h3 span{
	font-weight: bold;
	color: #ffff01;
}
.coupon .coupon-item p{
	margin-bottom: 15px;
	font-size: 28px;
	font-weight: bold;
	color: #ffff01;
}
.coupon .coupon-item time{
	font-size: 14px;
	font-weight: bold;
	background: url(images/coupon/clock_icon.png) no-repeat;
	background-position: top 50% left 0;
	padding-left: 30px;
}
.coupon .coupon-item.end:after{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
width: 100%;
height: 100%;
background: rgba(0,0,0,0.6);
border-radius: 20px;
}
.coupon .coupon-item.end:before{
	position: absolute;
	top: 32px;
	right: 0;
	bottom: 0;
	left: 335.5px;;
	content: url(images/coupon/stamp.png);
width: 100%;
height: 100%;
z-index: 10;
}
.app-container{
	padding: 40px;
	border: thin solid #666;
	text-align: center;
}
.app-container p span{
	font-weight: bold;
}
.app-container .top{
	margin-bottom: 30px;
}
.app-container img{
	margin-bottom: 30px;
	padding: 0 20px;
}

