@charset "utf-8";

/* ヘッダー
------------------------------------------------------------*/
header {
	background-color: #FFF;
	text-align: center;
}
p.logo {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index:2;
	height: 190px;
	background-color: #FFF;
}
p.logo img {
	width: auto;
	height: 180px;
	padding: 10px;
}
p.logo_yoko {
	height: auto;
}
p.logo_yoko img {
	width: 300px;
	height: auto;
	padding: 10px;
}
@media (max-width: 768px) {
p.logo img {
	height: 100px;
}
p.logo {
	height: 110px;
}
p.logo_yoko {
	height: auto;
}
p.logo_yoko img {
	width: 150px;
	height: auto;
}
}

/* メインビジュアル
------------------------------------------------------------*/
#mainv {
	display: flex;
	justify-content: space-between;
	background-color: #ccc;
	height: 500px;
	margin-bottom:30px;
}
#mainv li {
	text-align: center;
	overflow: hidden;
	flex: 1;
	margin: 10px;
	
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
#mainv h1 {
	text-align: left;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: inline-block;
	padding: 0.5em 0;
	box-sizing: border-box;
	color: #FFF;
	background: rgba(0,0,0,0.5);
	font-size: 220%;
	letter-spacing: 0.1em;
	z-index: 2;
}
#mainv h1.vertical_rl {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-size: 200%;
}
.gnav_access #mainv h1 {
	line-height: 1.4;
   padding: 0.5em 8px;
}
.v_concept {
	background-image: url(../images/mainv/concept.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}
.v_menu {
	background-image: url(../images/mainv/menu.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}
.v_access {
	background-image: url(../images/mainv/access.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}

@media (max-width: 768px) {
#mainv {
	height: 250px;
}
#mainv h1 {
	font-size: 130%;
}
#mainv h1.vertical_rl {
	font-size: 100%;
}
}

/* 見出し
------------------------------------------------------------*/
h2 {
	font-weight: 500;
	text-align: center;
	margin-bottom: 30px;
	font-size: 160%;
	background-image: url(../images/h2.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 70px;
	padding-bottom: 25px;
}
@media (max-width: 768px) {
h2 {
	font-size: 130%;
}
}

h3 {
	margin-bottom: 20px;
	font-size: 150%;
	font-weight: 500;
	text-align: center;
}

h3.menu_ttl {
	font-size: 120%;
	color: #FFF;
	background-color: #dd321c;
	padding: 5px;
}
h3.sakura_ttl {
	background-color: #dd321c;
}
h3.karamiso_ttl {
	background-color: #8b141e;
}
h3.shoyu_ttl {
	background-color: #7f5538;
}
h3.maze_ttl {
	background-color: #9c7d42;
}
h3.niku_ttl {
	background-color: #333333;
}

h3.gentei {
	color: #dd321c;
	border: solid 2px #dd321c;
	background-color: #fff;
	margin-bottom: 10px;
}
.gentei_ph {
	margin-bottom: 50px;
}

h4 {
	margin-bottom: 15px;
	font-size: 110%;
}
h4 span {
	background-color: #111;
	color: #FFF;
	font-weight: normal;
	padding-top: 3px;
	padding-right: 10px;
	padding-bottom: 3px;
	padding-left: 10px;
}
h4 br {
	margin-bottom: 4px;
}

/* こだわり
------------------------------------------------------------*/
#concept_copy {
	display: flex;
	justify-content: space-between;
	height: 600px;
	margin-bottom:30px;
	background-image: url(../../concept/img/copy_bg.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-color: #000;
	background-size:cover;
}
#concept_copy li {
	text-align: center;
	overflow: hidden;
	flex: 1;
	margin: 10px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
#concept_copy p {
	text-align: left;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: inline-block;
	padding: 1em;
	box-sizing: border-box;
	color: #fff;
	font-size: 140%;
	letter-spacing: 0.1em;
	background: rgba(0,0,0,0.8);
}
@media (max-width: 768px) {
#concept_copy {
	height: 350px;
}
#concept_copy p {
	font-size: 100%;
}
}

/*
ul.brandconcept li {
	margin-bottom: 1em;
}
ul.brandconcept li:nth-child(odd) {
	background-color: #f7f7f7;
}
*/

/* お品書き
------------------------------------------------------------*/
.menu_block {
	margin-bottom: 50px;
}
.menu_blockImg {
	float: left;
	width: 48%;
	position: relative;
	z-index:1;
}
.menu_blockTxt {
	float: right;
	width: 48%;
}
@media (max-width: 768px) {
.menu_blockImg {
	float: none;
	width: 100%;
	margin-bottom: 10px;
}
.menu_blockTxt {
	float: none;
	width: 100%;
}
}

.menu_txt {
	line-height: 1.5em;
	margin-bottom: 20px;
}
.menuTTL {
	font-size: 120%;
	font-weight: 500;
	margin-bottom: 10px;
	line-height: 1.4em;
}
.menuTTL .small {
	font-size: 70%;
	font-weight: normal;
	line-height: 1.2em;
	display: block;
}
.sakura {
	background-image: url(../../menu/img/sakura.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 30px;
	background-size: 25px auto;
	margin-left: 5px;
}
.osusume {
	background-color: #fb8a89;
	font-size: 90%;
	color: #FFF;
	margin-left: 10px;
	padding: 1px 10px 2px 10px;
	border-radius: 30px;
	position: absolute;
	top: -10px;
	right: 0px;
	z-index:2;
}

.bg_pink {
	width: 8em;
	background-color: #ed6087;
	font-size: 80%;
	color: #FFF;
	padding: 1px 5px 2px 5px;
	border-radius: 30px;
	margin-bottom: 5px;
	display: block;
	text-align: center;
}

.priceArea {
	margin-top: 10px;
	padding-top: 10px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #111;
}
ul.type {
	float: left;
	width: 40%;
}
.price {
	float: right;
	width: 60%;
	text-align: right;
}
@media (min-width: 460px) {
.price {
	float: none;
	width: auto;
}
}
@media (max-width: 460px) {
ul.menu2block ul.type {
	float: none;
	width: 100%;
}
ul.menu2block ul.type:after {
	content: ""; 
	display: block; 
	clear: both;
}
ul.menu2block .price {
	float: none;
	width: 100%;
	margin-top: 5px;
	text-align: left;
	line-height: 1.2em;
}
}
.txt_s {
	font-size: 70%;
}
ul.type li {
	margin-right: 2px;
	float: left;
	padding-right: 5px;
	padding-left: 5px;
	font-size: 80%;
	margin-top: 2px;
	border-radius: 5px;
}
ul.type li.blue {
	color: #2f70dc;
	border: 1px solid #2f70dc;
}
ul.type li.red {
	color: #e72814;
	border: 1px solid #e72814;
}

/* 盛り */
.mori {
	padding: 20px;
	border: 1px solid #111;
	margin-top: 20px;
}
@media (max-width: 460px) {
.mori {
	padding: 10px;
}
}
.mori_ttl {
	font-size: 110%;
	font-weight: 500;
	text-align: center;
	margin-bottom: 10px;
}
.mori ul {
	margin-bottom: 10px;
}
.mori ul li {
	float: left;
	margin-right: 20px;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: #111;
	line-height: 1em;
	padding-left: 7px;
}
.bg_blue {
	padding-right: 5px;
	padding-left: 5px;
	font-size: 80%;
	margin-top: 2px;
	border-radius: 5px;
	color: #2f70dc;
	border: 1px solid #2f70dc;
}
.bg_red {
	padding-right: 5px;
	padding-left: 5px;
	font-size: 80%;
	margin-top: 2px;
	border-radius: 5px;
	color: #e72814;
	border: 1px solid #e72814;
}
.bg_yellow {
	/* color: #111F;
	background-color: #fcdf38;
	padding-right: 10px;
	padding-left: 10px;
	margin-right: 4px;*/
}
.red {
	color: #df321c;
}
.red2 {
	color: #8b141e;
}
.brown {
	color: #7e5438;
}
.brown2 {
	color: #997b42;
}

@media (max-width: 768px) {
.mori ul li {
	float: none;
	margin-bottom: 10px;
}
}

/* メニュー2列 */
ul.menu2block {
	display:flex;
	flex-wrap:wrap;
	margin-bottom: 50px;
}
ul.menu2block li.seco {
	width: 48%;
	box-sizing: border-box;
	background-color: #FFF;
	margin: 1%;
}
ul.menu2block li img {
	width: 100%;
}
@media (max-width: 768px) {
ul.menu2block li.seco {
	width: 46%;
	margin: 2%;
}
}





/* トッピング */
ul.topping {
	display:flex;
	flex-wrap:wrap;
}
ul.topping li {
	float: none;
	width: 23%;
	box-sizing: border-box;
	background-color: #FFF;
	margin: 1%;
	padding: 2%;
	position: relative;
}
.osusume2 {
	background-color: #fb8a89;
	font-size: 90%;
	color: #FFF;
	margin-left: 5px;
	padding: 1px 10px 2px 10px;
	border-radius: 30px;
	position: absolute;
	left: 0px;
	top: 5px;
	z-index:2;
}


ul.topping li img {
	width: 100%;
}
.topping_menu {
	line-height: 1.2em;
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #111;
}
.topping_menu .txt_s {
	font-size: 80%;
	margin-bottom: 5px;
	display: inline-block;
}
.topping_price {
	text-align: right;
	line-height: 1.2em;
}
@media (max-width: 460px) {
.topping_price {
	text-align: left;
}
}
ul.topping li.bg_black {
	background-color: #111;
	color: #FFF;
}
ul.topping li.bg_black .topping_menu {
	border-bottom-color: #fff;
}
ul.topping li.gentei {
	width: 48%;
	background-color: #111;
	color: #FFF;
}
@media (max-width: 768px) {
ul.topping li {
	width: 48%;
	padding: 4%;
}
ul.topping li.gentei {
	width: 100%;
}
}
.genteiL {
	width: 50%;
	float: left;
	padding-top: 20px;
	padding-right: 2%;
}
.genteiR {
	width: 50%;
	float: right;
	padding-top: 20px;
}
.suuryo {
	font-size: 110%;
	text-align: center;
	margin-bottom: 10px;
}
.suuryo span {
	color: #FFF;
	background-color: #f84947;
	margin-right: 2px;
	padding-top: 2px;
	padding-right: 4px;
	padding-bottom: 2px;
	padding-left: 4px;
}

.topping_txt {
	font-size: 90%;
	line-height: 1.4em;
	margin-bottom: 1em;
}
.genteiR .topping_menu {
	border-bottom-color: #fff;
}

/* お飲物 */
dl.drink {
	border-bottom:1px dotted #ccc;
	margin-bottom: 40px;
}
dl.drink dt {
	float:left;
	width:30em;
	border-top:1px dotted #ccc;
	padding-top:10px;
	font-weight: bolder;
}
dl.drink dd {
	margin-left:30em;
	padding-top:10px;
	padding-bottom:10px;
	padding-right:10px;
	border-top:1px dotted #ccc;
	text-align: right;
}
@media (max-width: 768px) {
dl.drink dt {
	float:none;
	width:auto;
}
dl.drink dd {
   margin-left:0;
   border-top:none;
   padding-top:0px;
}
}



/* こだわりの逸品 */
ul.ippin li {
	float: left;
	width: 50%;
	margin-bottom: 20px;
	min-height: 15em;
}
.ippinL {
	float: left;
	width: 50%;
}
.ippinR {
	float: right;
	width: 50%;
	padding-left: 4%;
	padding-right: 10%;
}
.ippinImg {
	position: relative;
}
.ippinImg p {
	font-size: 80%;
	color: #666;
	margin-top: 10px;
}
.ippin_txt {
	font-size: 90%;
	line-height: 1.4em;
	margin-bottom: 1em;
}
.ippin_menu {
	line-height: 1.4em;
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #111;
}
.ippin_price {
	text-align: right;
	line-height: 1.2em;
}

.muryo {
	padding: 20px;
	background-color: #efe9d9;
}
@media (min-width: 768px) {
.muryo {
	padding: 20px 200px;
}	
}
.muryoTTL {
	text-align: left;
	margin-bottom: 0.5em;
}
.muryo_txt {
	float: left;
	width: 50%;
}
.muryo_ph {
	float: right;
	width: 50%;
}
.muryo_ph img {
	margin-bottom: 2px;
}
.muryo_ph p {
	font-size: 80%;
	text-align: left;
}
.ippin_1block {
	margin-bottom: 30px;
}
@media (max-width: 460px) {
.ippin_price {
	text-align: left;
}
}
@media (max-width: 768px) {
ul.ippin li {
	float: none;
	width: 100%;
	min-height: auto;
}
.ippinR {
	padding-right: 4%;
}
.sp_gyaku .ippinL {
	float: right;
}
.sp_gyaku .ippinR {
	float: left;
}
}


/* 店舗案内
------------------------------------------------------------*/
.map {
	margin-bottom: 10px;
}
.tenpo_ttl {
	margin-bottom: 10px;
}

/* 定義リスト */
dl.outline {
	border-bottom:1px dotted #ccc;
	margin-bottom: 40px;
}
dl.outline dt {
	float:left;
	width:6em;
	border-top:1px dotted #ccc;
	padding-top:10px;
	font-weight: bolder;
}
dl.outline dd {
   margin-left:6em;
   padding-top:10px;
   padding-bottom:10px;
   padding-right:10px;
   border-top:1px dotted #ccc;
}
@media (max-width: 768px) {
dl.outline dt {
	float:none;
	width:auto;
}
dl.outline dd {
   margin-left:0;
   border-top:none;
}
}

/* 写真 */
ul.itemBox {
	display:flex;
	flex-wrap:wrap;
}
ul.itemBox li {
	float: none;
	width: 46%;
	box-sizing: border-box;
	margin: 0 2% 20px 2%;
}
ul.itemBox li img {
	width: 100%;
}
ul.itemBox li a {
	color: #111;
	text-decoration: none;
}
ul.itemBox li a:hover {
	text-decoration: underline;
}
ul.itemBox li p {
	font-size: 90%;
	margin-top: 5px;
}


/* ロケーション */
.location_outline {
	text-align: center;
	width: 60%;
	margin: 0 auto;
}
.location {	
	margin: 0 auto 50px auto;
	position: relative;
}
.location:before {
  content: "";
  display: #999;
  position: absolute;
  bottom: -30px;
  left: 50%;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border: 12px solid transparent;
  border-top: 12px solid #999;
  border-bottom-width: 0;
}
.location img {
	width: 100%;
}
.location a {
	color: #111;
	text-decoration: none;
}
.location a:hover {
	text-decoration: underline;
}
.location p {
	font-size: 90%;
	margin-top: 5px;
}
@media (max-width: 768px) {
.location_outline {
	width: 100%;
}
}


/* アレルギー情報 */
dl.allergies {
	margin-bottom: 10px;
	background-color: #fff;
	padding-left: 10px;
	padding-bottom:10px;
}
dl.allergies dt {
	float:left;
	width:13em;
	padding-top:10px;
	font-weight: bolder;
}
dl.allergies dd {
   margin-left:13em;
   padding-top:10px;
   padding-right:10px;
}

@media (max-width: 768px) {
dl.allergies dt {
	float:none;
	width:auto;
}
dl.allergies dd {
   margin-left:0;
	padding-top:0px;
   border-top:none;
}
}



.heijitu01 {
	background-color: #cc0000;
	padding: 5px 10px;
	color: #ffffff;
	font-weight: bolder;
}
.heijitu02 {
	font-size: 14px;
	margin-bottom: 10px;
}
.heijitu03 {
	font-size: 15px;
	font-weight: bolder;
}


