@charset "UTF-8";
/* CSS Document */



/*-----------------------------------------------------
Yahoo UI Library Font-size Adjustment
Copyright (c) 2006, Yahoo! Inc. All rights reserved.
http://developer.yahoo.com/yui/license.txt
http://developer.yahoo.com/yui/fonts/
10px = 77%     11px = 85%     12px = 93%     13px = 100%;
14px = 108%    15px = 116%    16px = 123.1%  17px = 131%;
18px = 138.5%  19px = 146.5%  20px = 153.9%  21px = 161.6%;
22px = 167%    23px = 174%    24px = 182%    25px = 189%;
26px = 197%;
------------------------------------------------------*/


	
/* clear fix */
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
	*zoom: 1;
}
/* clear fix */

.col {
	display: none;
}
.a-harf {
	opacity: 0.4;
}
.col01 {
	color: #A31F6C;
}
.col02 {
	color: #590046;
}
strong {
	font-weight: bolder;
}




/****************************************************************************************************
初期設定
****************************************************************************************************/

/* IE8以下への対応 */
article, aside, figure, figcaption, footer, header, nav, section {
	display: block;
}
/* IE8以下への対応 */

html,body{
	font-family: Arial, Helvetica, sans-serif;
	text-align: center;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	min-width: 1040px;
	width: 100%;
}

* {
	box-sizing: border-box;
}
img {
	vertical-align: top;
}



/****************************************************************************************************
header
****************************************************************************************************/

#header {
	width: 100%;
	height: 601px;
	background: #000;
	border-top: 7px solid #580045;
	
	color: #FFF;
	font-size: 13px;
	line-height: 1.6;
}
#header a {
	color: #FFF;
	text-decoration: none;
}
#header > .inner {
	position: relative;
	width: 1040px;
	margin: 0 auto;
	text-align: left;
}
#lead {
	position: absolute;
	left: 0;
	top: 48px;
	z-index: 2000;
}
#logo {
	position: absolute;
	left: 0;
	top: 102px;
	z-index: 2000;
}
#catch {
	position: absolute;
	left: 308px;
	top: 108px;
	width: 460px;
	z-index: 2000;
}
#lang {
	position: absolute;
	right: 0px;
	top: 48px;
	z-index: 2000;
}
#lang li {
	float: left;
	margin-left: 1em;
}
#lang li a {
	padding-left: 11px;
	background: url(../img/common/ar.png) no-repeat left center;
}
#btnIn {
	position: absolute;
	right: 171px;
	top: 114px;
	z-index: 2000;
}
#btnFb {
	position: absolute;
	right: 122px;
	top: 114px;
	z-index: 2000;
}
#btnTw {
	position: absolute;
	right: 73px;
	top: 114px;
	z-index: 2000;
}
#mark {
	position: absolute;
	right: -2px;
	top: 108px;
	z-index: 2000;
}
#expo {
	position: absolute;
	right: 0px;
	top: 396px;
	z-index: 2000;
}
#gNavi {
	position: absolute;
	left: 0px;
	top: 222px;
	font-size: 13px;
	border-bottom: 1px solid #4D4D4D;
	z-index: 2000;
}
#gNavi li {
	width: 126px;
	border-top: 1px solid #4D4D4D;
}
#gNavi li.select {
	width: 150px;
	border-top: 1px solid #530043;
}
#gNavi li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 7px 0 8px 0;
}

#mainImg {
	width: 100%;
	height: 594px;
}
#slider > div {
	position:relative;
	width: 100%;
	height: 594px;
	overflow: hidden;
}
#slider > div > div {
	position:absolute;
	width: 1300px;
	height: 594px;
	margin-left:-650px;
	left:50%;
	top: 0;
}



/****************************************************************************************************
contentsI
****************************************************************************************************/

#contentsI {
	display: table;
	width: 1040px;
	margin: 0 auto;
	padding: 70px 0 75px 0;
	text-align: left;
}
#contentsL,
#contentsR {
	display: table-cell;
}
#contentsL {
	padding-right: 40px;
}
#news {
	margin-top: 20px;
}
#newsBody {
	overflow: scroll;
	height: 245px;
	padding: 18px 28px;
	background: #F9F9F9;
	border-top: 1px solid #DDDDDD;
	border-bottom: 1px solid #DDDDDD;
	font-size: 13px;
	line-height: 1.5;
}
#newsBody dt {
	float: left;
	color: #660066;
}
#newsBody dd {
	padding-left: 7.5em;
	padding-bottom: 0.55em;
	margin-bottom: 0.75em;
	border-bottom: 1px solid #DDD;
}
#newsBody dd a {
	color: #000;
}
#newsBody dd:nth-last-child(1) {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}
#contentsR div + div {
	margin-top: 20px;
}
.bnr {
	margin-top: 20px;
}



/****************************************************************************************************
fNav
****************************************************************************************************/

#fNav {
    overflow: hidden;
    position: relative;
	padding-bottom: 60px;
}
#fNav ul {
    float: left;
    position: relative;
    left: 50%;
	padding-left: 100px;
}
#fNav.index ul {
	padding-left: 0;
}
#fNav ul li {
    float: left;
    position: relative;
    left: -50%;
}
#btnInF {
	margin-right: 11px;
}
#btnFbF {
	margin-right: 11px;
}
#btnTwF {
	margin-right: 35px;
}



/****************************************************************************************************
fNav
****************************************************************************************************/

#fBnr {
	border-top: 1px solid #7F7F7F;
}
#fBnr .inner {
	width: 1040px;
	margin: 0 auto;
	padding: 60px 0 60px 0;
	text-align: left;
}
#fBnr .inner div {
	float: left;
}
#fBnr .inner div:nth-child(even) {
	float: right;
}
#fBnr .inner div:nth-child(3),
#fBnr .inner div:nth-child(4),
#fBnr .inner div:nth-child(5) {
	margin-top: 20px;
}



/****************************************************************************************************
footer
****************************************************************************************************/

#pagetop {
	background: url(../img/common/pagetopBg.png) no-repeat center top;
}

#footer {
	background: #4D003B;
	color: #CCC;
	padding: 40px 0 50px 0;
}
#footer .inner {
	width: 1040px;
	margin: 0 auto;
	text-align: left;
}
#footer a {
	color: #FFF;
	text-decoration: none;
}
#fLogo {
	float: left;
}
#links {
	float: right;
	margin-top: 9px;
	font-size: 11px;
	letter-spacing:-0.1px;
}
#copyright {
	margin-top: 15px;
	font-size: 11px;
}

#prev {
	position: absolute;
	left: 0;
	top: 852px;
}
#next {
	position: absolute;
	right: 0;
	top: 852px;
}



/****************************************************************************************************
下層
****************************************************************************************************/

#mainContents {
	display: table;
	width: 100%;
	position: absolute;
	left: 200px;
	top: 222px;
	width: 840px;
	height: 324px;
	background: rgba(0,0,0,0.5);
	z-index: 2000;
}
#mainContentsL {
	display: table-cell;
	padding: 60px 40px 0 60px;
	vertical-align: top;
}
#mainContentsL p {
	color: #EEE;
	margin-top: 20px;
	font-size:12px;
	line-height: 1.8;
}
#mainContentsR {
	display: table-cell;
	padding: 0;
	vertical-align: top;
	text-align: right;
}


#contents {
	display: table;
	width: 1040px;
	margin: 0 auto;
	padding: 50px 0 60px 0;
	text-align: left;
}
#contentsB,
#contentsM {
	display: table-cell;
}
#contentsB {
	width: 200px;
}
#contentsM {
	width: 840px;
}
#contentsM h2 {
}
p {
	line-height: 1.8;
}
#contentsM h2 + p {
	margin-top: 15px;
}


#cuisine-sec01 {
	display: table;
	width: 100%;
	margin: 35px 0;
}
#cuisine-sec01 > div {
	display: table-cell;
	background: #333333;
}
#cuisine-sec01 > div + div {
	border-left: 40px solid #FFF;
}
#cuisine-sec01 p {
	padding: 8px 10px;
	color: #FFF;
	font-size: 11px;
	line-height: 1.4;
}


#menu-sec01 {
	width: 100%;
	margin: 25px 0 35px 0;
}
#menu-sec01 > div {
	display: table;
	width: 100%;
}
#menu-sec01 > div + div {
	margin-top: 32px;
}
#menu-sec01 > div > div {
	display: table-cell;
	width: 406px;
	background: #333333;
}
#menu-sec01 > div > div:nth-child(2) {
	border-left: 28px solid #FFF;
}

#menu-sec01 .imgBox {
	float: left;
}
#menu-sec01 .txtBox {
	padding: 13px 10px 0 215px;
	color: #FFF;
}
#menu-sec01 .txtBox h3 {
	font-size: 18px;
	line-height: 1.8;
}
#menu-sec01 .txtBox h3 span.small {
	font-size: 13px;
}
#menu-sec01 .txtBox p {
	line-height: 1.4;
	font-size: 11px;
}



#mainContentsL.store {
	background: url(../img/store/mainImg.png) no-repeat right top;
	position: relative;
}
#mainContentsL.store p {
	width: 345px;
}
#btnKyoto {
	position: absolute;
	left: 547px;
	top: 168px;
}
#btnOsaka {
	position: absolute;
	left: 547px;
	top: 257px;
}
#btnTokyo {
	position: absolute;
	left: 723px;
	top: 214px;
}
#btnSaitama {
	position: absolute;
	left: 723px;
	top: 191px;
}
#btnChiba {
	position: absolute;
	left: 723px;
	top: 237px;
}
#btnKanagawa {
	position: absolute;
	left: 672px;
	top: 258px;
}
.store-sec {
	margin-top: 10px;
}
.store-sec + h2 {
	margin-top: 40px;
}
.storeBox {
	padding: 16px 20px 20px 20px;
	background: #333333;
	color: #FFF;
	cursor: pointer;
}
.storeBox + .storeBox {
	margin-top: 10px;
}
.storeBox h3 {
	margin-bottom: 6px;
	font-size: 17px;
}
.storeBox > div {
	float: left;
}
.storeBox > div.txtBox {
	float: none;
	padding-left: 178px;
}
.storeBox p {
	line-height: 1.4;
}
.storeBox p.txtAd {
	text-indent: -5.15em;
	padding-left: 5.15em;
}
.storeBox p.txtSh {
	text-indent: -6.6em;
	padding-left: 6.6em;
}
.storeBox h3 a {
	padding-left: 13px;
	background: url(../img/common/ar.png) no-repeat left center;
	color: #FFF;
	text-decoration: none;
}


.storeLocation #mainContentsL {
	display: table-cell;
	padding: 0 40px 0 40px;
	vertical-align: middle;
	text-align: center;
}
.storeLocation #mainContentsR {
	width: 498px;
}
#storeLocation-sec01 {
	margin-top: 18px;
	margin-bottom: 40px;
}
#storeLocation-sec01 li {
	float: left;
}
#storeLocation-sec01 li + li {
	margin-left: 10px;
}

#storeLocation-sec02 {
	display: table;
	width: 100%;
	margin-top: 18px;
}
#storeLocation-sec02 > div {
	display: table-cell;
	background: #333333;
	vertical-align: top;
}
#locTxt {
	width: 450px;
	padding: 30px 10px 30px 30px;
	color: #FFF;
}
#locTxt h3 {
	font-size: 18px;
	margin-bottom: 1.4em;
}
#locTxt p + p {
	margin-top: 1.6em;
}
#locTxt p + p.txtAd,
#locTxt p.txtSh + p {
	margin-top: 0;
}
#locTxt p.txtAd {
	text-indent: -5.15em;
	padding-left: 5.15em;
}
#locTxt p.txtAc {
	text-indent: -4.65em;
	padding-left: 4.65em;
}
#locTxt p.txtSh {
	text-indent: -6.6em;
	padding-left: 6.6em;
}
#locMap {
	width: 390px;
}
#map {
	width: 390px;
	height: 450px;
}




#mainContents.history {
	background: rgba(68,68,68,0.5);
}
.history #mainContentsL {
	display: table-cell;
	padding: 0 40px 0 40px;
	vertical-align: middle;
	text-align: center;
}
.history #mainContentsR {
	width: 485px;
}

#history-sec01 {
	margin-top: 25px;
}
#history-sec01 div {
	float: left;
}
#history-sec01 div + div {
	margin-left: 12px;
}




#mainContents.company {
	background: rgba(68,68,68,0.5);
}
.company #mainContentsL {
	display: table-cell;
	padding: 0 60px 0 60px;
	vertical-align: middle;
	text-align: left;
}
.company #mainContentsR {
	width: 340px;
}

#company-sec01 {
	display: table;
	margin-top: 20px;
}
#company-sec01 > div {
	display: table-cell;
}
#company-secL {
	width: 460px;
	padding-right: 60px;
}
#company-secR {
	width: 380px;
}
#company-sec01 p + p {
	margin-top: 1.8em;
}
#company-sec01 dl {
	line-height: 1.8;
}
#company-sec01 dt {
	float: left;
	color: #590046;
}
#company-sec01 dd {
	padding-left: 11em;
	margin-bottom: 0.55em;
}




#mainContents.contact {
	background: rgba(68,68,68,0.5);
}
.contact #mainContentsL {
	display: table-cell;
	padding: 0 60px 0 60px;
	vertical-align: middle;
	text-align: left;
	height: 324px;
}
.contactTbl {
	width: 100%;
	margin-bottom: 2em;
	color: #FFF;
}
.contactTbl th {
	padding: 15px;
	background: #590046;
	border-bottom: 1px solid #FFF;
	width: 200px;
}
.contactTbl td {
	padding: 15px;
	background: #333333;
	border-bottom: 1px solid #FFF;
	border-left: 1px solid #FFF;
}
.send {
	text-align: center;
	margin-top: 2em;
}
.formConf {
	width: 300px;
	height: 50px;
	background: url(../img/contact/btn1.png);
	text-indent: -9999px;
	border: none;
	cursor: pointer;
}
.formBack {
	width: 300px;
	height: 50px;
	background: url(../img/contact/btn2.png);
	text-indent: -9999px;
	border: none;
	cursor: pointer;
}
.formSend {
	width: 300px;
	height: 50px;
	background: url(../img/contact/btn3.png);
	text-indent: -9999px;
	border: none;
	cursor: pointer;
}
.contactTbl h4 {
	font-size: 15px;
}
.contactTbl label {
	display: block;
	float: left;
	margin-right: 2em;
	line-height: 1.6;
}
.contactTbl div.clearfix + div.clearfix {
	margin-top: 1em;
}





#mainContents.kan-cha {
	background: rgba(68,68,68,0.5);
}
.kan-cha #mainContentsL {
	display: table-cell;
	padding: 0 60px 0 60px;
	vertical-align: middle;
	text-align: left;
}
.kan-cha #mainContentsR {
	width: 485px;
}

.kan-cha-sec {
	display: table;
}
.kan-cha-sec + .kan-cha-sec {
	margin-top: 45px;
}
.kan-cha-sec > div {
	display: table-cell;
}
.kan-cha-secL {
	width: 355px;
}
.kan-cha-secR {
}




#mainContents.muslim {
	background: rgba(68,68,68,0.5);
}
.muslim #mainContentsL {
	display: table-cell;
	padding: 0 60px 0 60px;
	vertical-align: middle;
	text-align: left;
}
.muslim #mainContentsR {
	width: 380px;
}


#muslim-sec01 {
	display: table;
	width: 100%;
	margin: 35px 0;
}
#muslim-sec01 > div {
	display: table-cell;
	background: #333333;
}
#muslim-sec01 > div + div {
	border-left: 40px solid #FFF;
}
#muslim-sec01 h3 {
	padding: 20px 20px 5px 20px;
	color: #FFF;
	font-size: 18px;
	line-height: 1.4;
}
#muslim-sec01 p {
	padding: 0px 20px 20px 20px;
	color: #FFF;
	line-height: 1.6;
}

.muslim-sec02 {
	margin-top: 50px;
}
.muslim-secL {
	float: left;
	width: 385px;
}
.muslim-secR {
	float: right;
	width: 415px;
}
.muslim-sec02 h2 {
	margin-bottom: 13px;
}
.muslim-sec02 h3 {
	color: #590046;
	font-size: 15px;
	font-weight: bolder;
	line-height: 1.6;
}
.muslim-sec02 p {
	line-height: 1.6;
}

.muslim-sec02 + p {
	margin-top: 50px;
}

.muslim-sec03 {
	margin-top: 50px;
	padding: 30px;
	background: #333;
}
.muslim-secL2 {
	float: left;
	width: 385px;
	margin-top: 20px;
}
.muslim-secR2 {
	float: right;
	width: 385px;
	margin-top: 20px;
}
.muslim-sec03 h2 {
	margin-bottom: 12px;
}
.muslim-sec03 h3 {
	color: #FFF;
	font-size: 15px;
	font-weight: bolder;
	line-height: 1.6;
}
.muslim-sec03 p {
	color: #FFF;
	line-height: 1.6;
}




#sitemap-sec {
	margin-top:-422px;
	padding: 60px 60px 55px 60px;
	background: rgba(68,68,68,0.5);
	position: relative;
	z-index:3000;
	color:#FFF;
	background-image: url(../img/sitemap/bg.png);
	background-repeat: no-repeat;
	background-position: 0px 371px
}
#sitemap-sec a {
	color:#FFF;
	text-decoration: none;
}
#sitemap-sec p {
	color: #EEE;
	margin-top: 20px;
	margin-bottom: 3em;
	line-height: 1.8;
}
#sitemap-sec ul {
	color: #EEE;
	margin-top: 2em;
	line-height: 1.6;
}
#sitemap-sec ul li + li {
	margin-top: 0.5em;
}
#sitemap-sec ul li dt,
#sitemap-sec ul li dd {
	margin-top: 0.5em;
	float: left;
}
#sitemap-sec ul li dt {
	clear: left;
	padding-left: 2em;
	font-weight: bolder;
	width: 11em;
}
#sitemap-sec ul li dd.cl {
	padding-left: 11em;
	margin-left: 0;
}
#sitemap-sec ul li dl dd + dd {
	margin-left: 1em;
}
#sitemap-sec ul li dl dd:nth-child(2) {
}
#sitemap-sec ul li dl:nth-child(2) dd:nth-child(3),
#sitemap-sec ul li dl:nth-child(3) dd:nth-child(3),
#sitemap-sec ul li dl:nth-child(4) dd:nth-child(3) {
}
#sitemap-sec ul li dl:nth-child(2) dd:nth-child(4),
#sitemap-sec ul li dl:nth-child(3) dd:nth-child(4) {
}

/****************************************************************************************************
Reservations & Inquiries バナー追加変更
****************************************************************************************************/

.store_bnr{
	margin-top: 20px;
}



.headingBox {
  display: flex;
  align-items: center; /* 縦位置を中央揃え */
  gap: 20px; /* ← ここで横の間隔を調整 */
  margin-bottom: 20px; /* 下に余白が必要なら追加 */
}

.headingBox h2 {
  margin: 0; /* 不要な余白を消す */
}

.bannerBox img {
  display: block;
  height: auto;
}



.headingBox {
  margin-bottom: 5px; /* 必要に応じて数値を調整 */
}

#store-sec01 {
  margin-top: 0;
}
#store-sec02 {
  margin-top: 0;
}
#store-sec03 {
  margin-top: 0;
}
#store-sec04 {
  margin-top: 0;
}
#store-sec05 {
  margin-top: 0;
}
#store-sec06 {
  margin-top: 0;
}
