@charset "UTF-8";

body {
  position: relative;
  font-family: "游明朝", "Yu Mincho", "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: black;
  background: white; }
  
.mt1 { margin-top: 1%; }
.mt2 { margin-top: 2%; }
.mt3 { margin-top: 3%; }
.mt4 { margin-top: 4%; }
.mt5 { margin-top: 5%; }
.mt6 { margin-top: 6%; }
.mt7 { margin-top: 7%; }
.mt8 { margin-top: 8%; }
.mt9 { margin-top: 9%; }
.mt10 { margin-top: 10%; }
.mt15 { margin-top: 15%; }
.mt20 { margin-top: 20%; }

.b { font-weight: bold; }
.center { text-align: center; }

img { 
   width: 100%;
   vertical-align: top; }

a { text-decoration: none; } 

.nc { pointer-events: none; }


@media screen and (max-width: 768px) {
 
.pc { display: none; }

.header {
  background-image: url(img/pc_header_back.jpg);
  background-size: cover;
  background: position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 8.5vw;
  position: fixed;
  z-index: 10; }
 
/* MENU画像：共通設定 */

.menu_btn,
.menu_btn2 {
  display: block;
  width: 20vw;
  height: auto;
  padding: 0;
  margin: 0; }

/* 通常時のMENU画像 */

#menu-trigger {
  position: absolute;
  top: 2vw;
  left: 2vw;
  cursor: pointer;
  z-index: 1002; }

/* メニュー内のMENU画像 */

.menu-column .menu_btn2 {
  position: absolute;
  top: 2vw;
  left: 1.9vw; }

/* PCではメニューを開いている間、元のMENU画像を非表示 */
@media screen and (min-width: 769px) {
  .header:has(#menu-trigger:hover) #menu-trigger .menu_btn,
  .header:has(.dropdown-menu:hover) #menu-trigger .menu_btn {
    visibility: hidden;
  }
}

/* メニュー全体 */
.dropdown-menu {
  position: absolute;

  /* ヘッダーの下に表示 */
  top: 0;
  left: 0;
  padding: 0;
  display: flex;
  gap: 25px;
  padding: 20px 25px;
  background: #fff;
  border: 1px solid #ddd;
  box-sizing: border-box;

  /* 初期状態は非表示 */
  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
  z-index: 1001; }

/* メニューロゴにカーソルを乗せたら表示 */
#menu-trigger:hover + .header-main-logo + .dropdown-menu,
.dropdown-menu:hover {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* 左右の列 */
.menu-column {
  list-style: none;
  margin: 0;
  padding: 0;
  min-width: 150px;
}

/* 左列 */

.menu-left {
  width: 220px;
  box-sizing: border-box;
  padding-top: calc(7.4vw + 1vw); }

/* 右列 */

.menu-right {
  width: 220px;
  box-sizing: border-box;
  margin-top: 7vw; }
  
.menu_pad {
   height: 0vw; }

/* メニュー項目 */
.menu-column li {
  margin: 0;
  padding: 0;
}

.menu-column a {
  display: block;
  padding: 9px 12px;
  text-align: center;
  line-height: 4.3vw;
  color: #222;
  text-decoration: none;
  font-size: 14px;
  white-space: nowrap;
}

/* マウスオーバー */
.menu-column a:hover {
  background: #eee;
}

/* ページ内移動先の位置調整 */
#link1,
#link2,
#link3,
#link4,
#link5,
#link6,
#holiday-dinner {
  scroll-margin-top: 8.5vw;
}

#link7 {
  scroll-margin-top: 10vw;
}


.menu_hr2 {
  margin-top: 4%;
  margin-bottom: 2.7%; }

.menu_hr {
  margin-top: 2.7%;
  margin-bottom: 2.7%; }

.header {
  background-image: url(img/pc_header_back.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 12vw;
  position: fixed;
  z-index: 100;
}

.header-main-logo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 32%;
}

.header_logo {
  display: block;
  width: 100%;
  height: auto;
  padding: 0;
}


.top_img {
   padding-top: 11vw; }


.top_content {
  background-image: url(img/mb_back1.jpg);
  position: relative;
  width: 100%;
  background-size: 100% 100%;
  background-repeat: no-repeat; }

.top_img3 {
  width: 94.4%;
  margin-left: 2%; 
  padding-top: 73%;
  }

.mb_top_img1 {
   width: 80%;
   margin-left: 2%;
   margin-top: 6.3%; }
   
.mb_top_img2 {
   width: 84%;
   margin-left: 8%;
   margin-top: 6%;
   margin-bottom: 9%; }

/* xxxxxxxxxxxxxxxx MAP xxxxxxxxxxxxxxxxxx */

/* 地図全体 */
.map_area {
  position: relative;
  width: 100%;
  height: 140svh;
  overflow: hidden;
  display: none;
}

/* 固定タイトル */
.map_title {
  position: absolute;
  top: 2%;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  height: auto;
  z-index: 10;
}

/* 地図の表示窓 */
.map_view {
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 width: 100%;
 overflow: hidden;
}


.map_content {
 position: relative;
 height: 100%;
 aspect-ratio: 4000 / 2180;
 width: auto;
 flex-shrink: 0;
 transition: transform 0.35s ease;
}

/* 地図本体 */

.map_bg {
 display: block;
 width: 100%;
 height: 100%;
}



/* 地図上のリンク付きPNG */
.map_item {
  position: absolute;
  display: block;
  width: 12%;
  z-index: 2;
}

.map_item img {
  display: block;
  width: 100%;
  height: auto;
}


.item1 {
  left: 35%;
  top: 55%;
  width: 10%;
}

.item2 {
  left: 44%;
  top: 42%;
  width: 10%;
}

/* 左右の丸ボタン */
.map_btn {
  position: absolute;
  top: 57%;
  transform: translateY(-50%);
  width: 60px;
  height: 60px;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
}

.map_prev {
  left: 15px;
}

.map_next {
  right: 15px;
}

/* xxxxxxxxxxxxxxxx MAP END xxxxxxxxxxxxxxxxxx */

.top2 {
  width: 75%;
  margin-left: 12.5%;
  padding-top: 5%; }


.top2_img1 {
  width: 75%; 
  margin-left: 12.5%;
  margin-top: 5%;
  position: relative;
　aspect-ratio: 16 / 9;
　margin: 0 auto;
  background-image: url(img/top2_img1.png);
  background-size: contain;
  background: position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  height: 75vw; }

.t2d1 {
position: absolute;
font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
width: 39%;
left: 53.5%;
top: 26%;
font-size: 1.45vw;
line-height: 2vw;
}


.t2d2 {
position: absolute;
font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
width: 43%;
left: 6%;
top: 51.2%;
font-size: 1.45vw;
line-height: 2vw;
}

.t2d3 {
position: absolute;
font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
width: 43%;
left: 53%;
top: 74.5%;
font-size: 1.45vw;
line-height: 2vw;
}

.top_content2 {
  background-image: url(img/mb_back1.jpg);
  position: relative;
  width: 100%;
  background-size: 100% auto;
  background-repeat: repeat; }

.mb_content1 {
   width: 88%;
   margin-left: 5.7%;
   padding-top: 5%; }
   
.mb_content1_in {
   background: white; }
   
.mb_content1_in_in {
   width: 84.5%;
   margin-left: 8%;
   padding-top: 7%; }

.mb_t1_com {
   margin-top: 3%;
    font-size: 2.8vw;
    line-height: 4.2vw; }
    
.mb_t1_com2 {
   margin-top: 3%;
    font-size: 2.8vw;
    line-height: 4.2vw;
    padding-bottom: 7%; }

.mb_event_title {
   width: 60%;
   margin-left: 20%;
   margin-top: -4%; }

.top2_waku {
  width: 89%;
  margin-left: 5.5%;
  margin-top: 10%;
  position: relative;
  background-image: url(img/mb_event_back.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  }

.top2_waku_in {
  width: 84%; 
  margin-left: 6%;
  margin-top: 5%; }
  
.top2_waku_in2 {
  width: 84%; 
  margin-left: 6%;
  margin-top: 5%; }
 
.event_pad {
   margin-top: 5%; } 
  
.e_comment {
   font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
   width: 95%;
   margin-left: 5%;
   margin-top: 1.6%;
   font-size: 2.8vw;
   line-height: 4vw; }

.e_jikan {
   margin-top: 2%;
   font-weight: bold;
   font-size: 2.3vw;  }
   
.e_jikan2 {
   margin-top: 2%;
   font-weight: bold;
   font-size: 2.3vw;  }

.e_jikan3 {
   margin-top: 0%;
   margin-left: 16%;
   font-weight: bold;
   font-size: 2.3vw;  }
   
.e_jikan4 {
   margin-top: 1%;
   font-weight: bold;
   font-size: 2.3vw;  }
   
.e_jikan5 {
   margin-top: -0.5%;
   font-weight: bold;
   font-size: 2.3vw;
   line-height: 3.2vw;  }
   
.e_jikan6 {
   margin-left: 16%;
   margin-top: -0.5%;
   font-weight: bold;
   font-size: 2.3vw;
   line-height: 3.2vw;  }
   
.kan {
   background: #2b376d;
   padding:1%; 
   color: white; }

.link_btn1 {
   width: 85%;
   margin-left: 7.5%;
   margin-top: 8%;
   margin-bottom: 12%; }

.event_kome {
   width: 90%;
   margin-left: 5%; 
   margin-top: -5%;
   padding-bottom: 5%;
   font-size: 2vw; 
   text-align: center; }

/* xxxxxxxxxxzxxx STAMP RALLY xxxxxxxxxxxxxxxxxxx */

.c1 {
  width: 89%;
  margin-left: 5.5%;
  position: relative;
  background-image: url(img/c1.png);
  background-size: 100% auto;
  aspect-ratio: 2500 / 4540; }
 
.c1_link {
   width: 51%;
   margin-left: 37.5%;
   margin-top: 145.4%; }
  
.c2 {
  width: 89%;
  margin-left: 5.5%;
  margin-top: 5%;
  position: relative;
　margin: 0 auto;
  background-image: url(img/c2.png);
  background-size: 100% auto;
  aspect-ratio: 2500/ 1798;
  }

.c2_in {
  position: absolute;
  width: 20%;
  top: 64.3%; 
  left: 70%;
  font-size: 1.2vw;
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; 
  line-height: 1.7vw; }

.c2_in a {
  color: inherit;
  text-decoration: none;
}

.c2_red {
  width: 7%;
  color: #b81c22;
  vertical-align: top; 
  display: inline-block; }
  
.c2_red2 {
  width: 7%;
  margin-top: 3%;
  color: #b81c22;
  vertical-align: top; 
  display: inline-block; }

.c2xx {
  width: 91%;
  vertical-align: top;
  display: inline-block; }
  
.c2xx2 {
  width: 91%;
  margin-top: 3%;
  vertical-align: top;
  display: inline-block; }

   
.c3 {
  width: 89%;
  margin-left: 5.5%;
  background-image: url(img/c3.png);
  margin-top: 2%;
  position: relative;
  background-size: 100% auto;
  aspect-ratio: 2500 / 3531; }

.link_btn2 {
  width: 20%;
  margin-left: 70.2%; 
  margin-top: 130.95%;} 
  
.c4 {
  width: 89%;
  margin-left: 5.5%;
  margin-top: 5%;
  background-image: url(img/c4.png);
  position: relative;
　margin: 0 auto;
  background-size: 100% auto;
  aspect-ratio: 2500 / 1826; }
  
.c5 {
  width: 89%;
  margin-left: 5.5%;
  margin-top: 5%;
  position: relative;
  background-image: url(img/c5.png);
  background-size: 100% auto;
  aspect-ratio: 2500 / 1624;
   }
 
.c5_comment {
  width: 60%;
  position: absolute;
  left: 8%;
  top: 56%;
  font-size: 2.3vw;
  line-height: 3vw;
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; } 
  
.c6 {
  width: 89%;
  margin-left: 5.5%;
  margin-top: 5%;
  position: relative;
  background-image: url(img/mb_c6.png);
  background-size: 100% auto;
  aspect-ratio: 1100 / 1600;
}
  
.c6_1 {
  width: 85%;
  position: absolute;
  left: 8%;
  top: 33.7%;
  font-size: 2vw;
  line-height: 3.2vw;
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; } 
  
.c6_2 {
  width: 85%;
  position: absolute;
  left: 8%;
  top: 75%;
  font-size: 1.9vw;
  line-height: 3.1vw;
  font-family: Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; } 

/* xxxxxxxxxxx SPECIAL GOODS xxxxxxxxxxxx */

.padxx {
   height: 5vw; }

.mb_goods_title {
   width: 60%;
   margin-left: 20%;
   margin-top: -4%; }
 
.content_name {
   width: 50%;
   margin-left: 25%;
   padding-top: 6%;    
 }
 
 .text_dummy1 {
   color: white;
   text-align: center;
   margin-top: 2%;  }
 
.goods_box_out {
  width: 88%;
  margin-left: 5.9%;
  margin-top: 3%;
  positon: relative;
  background-image: url(img/mb_goods_back.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;  } 

.goods_inline2 {
  width: 94%;
  margin-left: 5%;
  padding-top: 3%; }

.goods_inline {
  width: 94%;
  margin-left: 5%;
  padding-top: 2.7%; }
  
.goods_inline3 {
  width: 94%;
  margin-left: 5%;
  padding-top: 2.7%; }
 
  
.item_box {
  width: 86%;
  margin-left: 5%;
  margin-top: 2%; }
  
.item_box2 {
  width: 86%;
  margin-left: 5%;
  margin-top: 2%; }

.goods1 {
  width: 80%;
  margin-left: 10%; }
  
.goods2 {
  width: 91%;
  margin-left: 3%;
  margin-top: 5%; }
  
.goods3 {
  width: 78%;
  margin-left: 8%;
  margin-top: 5%; }
  
.goods4 {
  width: 78%;
  margin-left: 8%;
  margin-top: 5%; }
  
.goods5 {
  width: 89%;
  margin-left: 5%;
  margin-top: 7%; }
  
.goods6 {
  width: 90%;
  margin-left: 4%; 
  position: relative;
  margin-top: 7%;
  margin-bottom: 6%; }
  
.goods7 {
  width: 62%;
  margin-left: 8%; 
  position: relative;
  margin-top: 5%;
  margin-bottom: 5%; }
  
.goods8 {
  width: 85%;
  margin-left: 6%; 
  position: relative;
  margin-top: 9%;
  margin-bottom: 5%; }
  
.goods9 {
  width: 80%;
  margin-left: 10%; 
  position: relative;
  margin-top: 6%;
  margin-bottom: 5%; }
  
.goods10 {
  width: 80%;
  margin-left: 10%; 
  position: relative;
  margin-top: 10%;
  margin-bottom: 5%; }
  
.goods11 {
  width: 81%;
  margin-left: 8%; 
  position: relative;
  margin-top: 7%;
  margin-bottom: 4%; }
  
.goods12 {
  width: 75%;
  margin-left: 14%; 
  position: relative;
  margin-top: 3%;
  margin-bottom: 5%; }
  
.item_left {
   width: 75%;
   display: inline-block;
   vertical-align: top;  } 

.item_right {
   width: 11.5%;
   margin-left: 11%;
   display: inline-block; }  

.item_shop {
  font-size: 3vw;
  margin-top: 0%;
  font-weight: bold; }
  
.item_shop2 {
  font-size: 3vw;
  margin-top: -9%;
  line-height: 3.8vw;
  font-weight: bold; }
  
.item_shop3 {
  font-size: 3vw;
  margin-top: 0%;
  white-space: nowrap;
  font-weight: bold; }
  
.item_floor {
  font-size: 2.8vw;
  margin-top: 2%; }
 
 .item_name {
  font-size: 2.65vw;
  font-weight: bold;
  margin-top: 1%;
  color: #94252a; }
  
 .item_namerr {
  font-size: 2.65vw;
  font-weight: bold;
  margin-top: 1%;
  color: #94252a; }
  
.item_namexx {
  font-size: 2.65vw;
  font-weight: bold;
  margin-top: 5%;
  color: #94252a; }
  
.item_namezz {
  font-size: 2.65vw;
  font-weight: bold;
  margin-top: 5%;
  color: #94252a; }
  
 .kakaku {
  font-size: 2.8vw;
  margin-top: 2%;
  font-weight: bold;
  color: #94252a; }

.zei {
  font-size: 1.8vw;
  margin-left: 1%;
  color: #94252a; }
 
 .gentei {
  width: 100%;
  margin-left: 95%; }

.line1 {
  margin-top: -1%;
  margin-bottom: 2%; }

.goods_bottom_com {
   width: 80%;
   margin-left: 10%; 
   margin-top: 6%;
   line-height: 2.4vw; 
   font-size: 1.5vw;
   padding-bottom: 5%; }

.goods_comment {
  font-size: 2.4vw;
  line-height: 3.3vw;
  margin-top: 2%;}
  


.g_color {
   font-size: 2vw; 
   margin-top: 1%;
   color: #94252a; }
   
.g_color2 {
   font-size: 2vw; 
   margin-top: 1%;
   color: #94252a; }
   
.g_color3 {
   font-size: 2vw; 
   margin-top: 1%;
   color: #94252a; }

/* xxxxxxxxxxx SPECIAL MENU xxxxxxxxxxxx */

.content_menu {
  background: black;
  background-image: url(img/goods_back.jpg);
  background-size: cover;
  background: position: top center;
  background-repeat: no-repeat;
  height: 260vw; } 

.mb_menu_title {
   width: 60%;
   margin-left: 20%;
   margin-top: 6%; }
   
.mb_menu_title2 {
   width: 90%;
   margin-left: 5%;
   margin-top: 5%; }

.menu_box_out {
  width: 88%;
  margin-left: 5.9%;
  margin-top: 3%; } 

.menu_menu_menu {
  width: 100%;
  margin-left: 0%;
  margin-top: 5%; }

.pad1 { 
  height: 3.3vw; }

.menu_box1 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_box2 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }

.menu_box3 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_box4 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_box5 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_box6 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }


.menu_box7 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 4%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_box8 { 
  width: 100%;
  margin-left: 0%;
  margin-bottom: 6%;
  position: relative;
  background-image: url(img/mb_menu_back.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat; }
  
.menu_left {
  width: 97%;
  padding-top: 1.5%;
  margin-left: 1.5%; }  
  
.menu_right {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 

.menu_right2 {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 
  
.menu_right3 {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 
  
.menu_right4 {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 
  
.menu_right5 {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 
  
.menu_right6 {
  width: 90%;
  margin-left: 7%;
  vertical-align: top; 
  } 

.menu_photo2 {
  width: 95%;
  margin-left: 2.5%;
  padding-top: 2.5%; }

.menu_shop1 {
  font-size: 3.8vw;
  margin-top: 5%; 
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1 img {
   width: 10%;
   height: auto;
   margin-top: -4.3%;
   padding-bottom: 2.2%;
   margin-left: 18%; }

.menu_shop1ttt {
  font-size: 3.8vw;
  margin-top: 5%; 
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1ttt img {
   width: 9%;
   height: auto;
   margin-top: -2.4%;
   margin-left: 2%; }
 
.menu_shop1ppp {
  font-size: 3.8vw;
  margin-top: 5%;
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1ppp img {
   width: 9%;
   height: auto;
   margin-top: -2.4%;
   margin-left: 2%; }
   
.menu_shop1aa {
  font-size: 3.8vw;
  margin-top: 5%;
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1aa img {
   width: 9%;
   height: auto;
   margin-top: -2.4%;
   margin-left: 2%; }
   
.menu_shop1qqq {
  font-size: 3.8vw;
  margin-top: 5%;
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1qqq img {
   width: 9%;
   height: auto;
   margin-top: -2.4%;
   margin-left: 2%; }
   
.menu_shop1rrr {
  font-size: 3.8vw;
  margin-top: 5%;
  font-weight: bold;
  display: inline-block; }  
  
.menu_shop1rrr img {
   width: 9%;
   height: auto;
   margin-top: -1%;
   margin-left: 2%; }
  
.menu_shop2 {
  font-size: 3.8vw;
  margin-top: 4%;
  margin-left: 5%;
  display: inline-block; 
  font-weight: bold; }  

.menu_shop2 img {
   width: 10%;
   height: auto;
   margin-top: -2.7%;
   margin-left: 2%; }
   
.menu_shop3 {
  font-size: 3.5vw;
  margin-top: 4%;
  margin-left: 5%;
  display: inline-block; 
  font-weight: bold; }  

.menu_shop3 img {
   width: 10%;
   height: auto;
   margin-top: -2.7%;
   margin-left: 2%; }
  
.menu_floor1 {
  font-size: 2.6vw;
  display: inline-block; } 

.menu_floor1 img {
   width: 73%;
   height: auto; 
   margin-left: 3%;
   margin-top: 1%;}
   
  
.menu_floor1qq {
  font-size: 2.6vw;
  display: inline-block; } 

.menu_floor1qq img {
   width: 73%;
   height: auto; 
   margin-left: 3%;
   margin-top: 1%;}
   
.menu_floorxx {
  font-size: 2.6vw;
  display: inline-block; } 

.menu_floorxx img {
   width: 57%;
   height: auto; 
   margin-left: 2%;
   margin-top: 1%;}
   
.menu_floorzz {
  font-size: 2.6vw;
  display: inline-block; } 

.menu_floorzz img {
   width: 57%;
   height: auto; 
   margin-left: 2%;
   margin-top: 1%;}
  
.menu_floor2 {
  font-size: 2.6vw;
  margin-top: 1%;
  margin-left: 0%;
  display: inline-block; }
  
.menu_floor2 img {
  width: 53%;
  height: auto;
  margin-top: 1%;
  margin-left: 1%; }

.menu_floor3 {
  font-size: 2.6vw;
  margin-top: 1%;
  margin-left: 5%;
  display: inline-block; }
  
.menu_floor3 img {
  width: 73%;
  height: auto;
  margin-top: 1%;
  margin-left: 2%; } 
  
.menu_floor4 {
  font-size: 2.6vw;
  margin-top: 4.2%; } 
  
  .menu_floor5 {
  font-size: 2.6vw;
  margin-top: 4%; }   

.menu_kikan {
   font-size: 1.8vw;
   margin-top: 5%; }

.menu_menu1 {
   margin-top: 3.3%;
   padding-bottom: 5%; }
   
.menu_menu2 {
   margin-top: 3.3%;
   padding-bottom: 5%; }

.menu_item {
  font-size: 2.8vw;
  font-weight: bold;
  margin-top: 2.2%;
  color: #a21424;  } 
  
.menu_item2 {
  font-size: 2.8vw;
  font-weight: bold;
  margin-top: 3%;
  margin-left: 5%; 
  color: #a21424; } 
  
.menu_kakaku {
  font-size: 2.3vw;
  margin-left: 5.6%;
  margin-top: 1.3%;
  font-weight: bold;
  color: #a21424; } 
  
.menu_kakaku2 {
  font-size: 2.3vw;
  margin-left: 5.6%;
  margin-top: 1.3%;
  font-weight: bold;
  color: #a21424; }   
  
.zei2 {
  font-size: 1.5vw;
  margin-left: 1%;
  position: relative;
  top: -1px;
  color: #a21424; } 

.hi {
  margin-left: 5%;
  line-height: 4vw;}
  
/* xxxxxxxxxxxx DD xxxxxxxxxxxxxxxx */

.dd_title {
   width: 55%; 
   margin-left: 22.5%; 
   margin-top: 3%;
   margin-bottom: 3%; }

.dd1 {
  width: 89%;
  margin-left: 5.5%;
  background: none;
  background-image: url(img/dd1.png);
  position: relative; 
  aspect-ratio: 1200 / 2320;
  background-size: 100% 100%;
  background-repeat: no-repeat; }

.dd_pad {
   height: 10vw; }
   
.dd_pad2 {
   height: 8vw; }

.d_btn1 {
  position: absolute;
  width: 12%;
  top: 26.8%;
  left: 84%; }
 
.dd1_left {
  position: absolute;
  width: 12%;
  top: 38%;
  left: 84%; }
  
  
.dd1_right {
  position: absolute;
  width: 12%;
  top: 62%;
  left: 84%; }


.dd_box2_left {
  position: absolute;
  width: 10.2%;
  top: 93.9%;
  left: 46.5%; }
  
.dd_box2_right {
  position: absolute;
  width:34%;
  top: 93.2%;
  left: 64%; }

.sns1 {
  display: inline-block;
  width: 28%;
  margin-right: 1.4%; }


.bottom_link {
   width: 25%;
   margin-left: 37.5%; }

.copylight {
   width: 44%;
   margin-left: 28%;
   margin-top: 2%;
   padding-bottom: 5%; }

/* xxxxxxxxxxx JEWERLY xxxxxxxxxxxx */
  
.content_jewelry {
  background: black;
  background-image: url(img/jw_back.jpg);
  background-size: cover;
  background: position: top center;
  background-repeat: no-repeat;
  height: 230vw; }   

.content_name2 {
   width: 30%;
   margin-left: 35%;
   padding-top: 6%;    
 }

.jw_box {
  width: 90%;
  margin-left: 7%;
  margin-top: 5%; }

.jw_in {
  width: 30%;
  margin-right: 2.5%;
  display: inline-block; }  
 
.jw_shop {
  font-size: 1.4vw;
  margin-top: 6%; 
  font-weight: bold; }  
  
.jw_floor {
  font-size: 0.8vw;
  margin-top: 2%; }  

.jw_name {
  font-size: 1.2vw;
  font-weight: bold;
  margin-top: 2.2%;  } 
  
.jw_kakaku {
  font-size: 1.2vw;
  margin-left: 0%;
  margin-top: 1.3%;
  font-weight: bold; }   
  
.zei3 {
  font-size: 0.8vw;
  margin-left: 1%;
  position: relative;
  top: -1px; }
    
.jw_setsumei {
  width: 100%; 
  margin-top: 2%;}

.jw_setsumei p {
  overflow-wrap: anywhere; }
 
 
 
/* xxxxxxxxxxx GIFT xxxxxxxxxxxx */ 

 
.content_gift {
  background: black;
  background-image: url(img/gift_back.jpg);
  background-size: cover;
  background: position: top center;
  background-repeat: no-repeat;
  height: 230vw; }   

.content_name3 {
   width: 95%;
   margin-left: 3%;
   padding-top: 3%;    
 }
 
 

 /* xxxxxxxxxxx SWEETS xxxxxxxxxxxx */ 
 
.content_sweets {
  background: black;
  background-image: url(img/sweets_back.jpg);
  background-size: cover;
  background: position: top center;
  background-repeat: no-repeat;
  height: 170vw; } 
  
.pad2 {
  height: 5vw; }
 
.sweets_box_out {
  width: 92%;
  margin-left: 4%;
  padding-top: 0%;
  background-image: url(img/sweets_back2.png);
  background-size: contain;
  background: position: top center;
  background-repeat: no-repeat;
  height: 237vw; }  

.content_name4 {
   width: 88%;
   margin-left: 5%;
   padding-top: 1.8%; } 

.pad3 {
   height: 4vw; }

.sw_box {
   width: 96.8%;
   margin-left: 3%; }

.sw_in {
   width: 30%;
   margin-right: 2.8%;
   display: inline-block; 
   vertical-align: top; }

.sw_inline {
   margin-top: 4%; }

.sw_left {
  width: 81%;
  display: inline-block; }
  
.sw_right {
  width: 16%;
  display: inline-block; }

.sw_shop {
  font-size: 1.2vw;
  margin-top: 1%; 
  font-weight: bold; }
  
.sw_shop2 {
  font-size: 1.2vw;
  margin-top: 7.4%; 
  font-weight: bold; }  
  
.sw_floor {
  font-size: 1vw;
  margin-top: 3%; }  

.sw_hr {
   border-top: solid 1px; black;
   margin-top: 2%;
   margin-bottom: 2%; }

.sw_name {
  font-size: 1vw;
  font-weight: bold;
  margin-top: 2.2%;  } 
  
.sw_kakaku {
  font-size: 0.9vw;
  margin-left: 0%;
  margin-top: 1.3%;
  font-weight: bold; }

.zei4 {
  font-size: 0.6vw;
  margin-left: 1%;
  position: relative;
  top: -1px; }
    
.sw_setsumei {
  width: 100%; 
  margin-top: 2%;
  font-size: 0.9vw;
  overflow-wrap: anywhere; }

.sw_kikan {
  font-size: 0.9vw;
  margin-top: 2%;  }


 /* xxxxxxxxxxx WINTER GIFTS xxxxxxxxxxxx */ 
 
.content_w_gift {
  background: black;
  background-image: url(img/winter_gift_back.png);
  background-size: contain;
  background: position: top center;
  background-repeat: no-repeat;
  height: 205vw; } 
  
.pad4 {
  height: 9vw; }
 
.w_gift_box_out {
  width: 92%;
  margin-left: 4%;
  padding-top: 0%;
  background-image: url(img/winter_gift_back2.png);
  background-size: contain;
  background: position: top center;
  background-repeat: no-repeat;
  height: 190vw; }  

.content_name5 {
   width: 60%;
   margin-left: 20%;
   padding-top: 6%; } 

.pad5 {
   height: 8vw; }
 
.pad6 {
   height: 5vw; } 
 
.w_gift_inline {
  width: 96%;
  margin-left: 3.5%; }

.wg_in {
   width: 30%;
   margin-right: 2.8%;
   display: inline-block; 
   vertical-align: top; }

.wg_inline {
   margin-top: 4%; }

.wg_left {
  width: 81%;
  display: inline-block; }
  
.wg_right {
  width: 16%;
  display: inline-block; }

.wg_shop {
  font-size: 1.2vw;
  margin-top: 1%; 
  font-weight: bold; }
  
.wg_shop2 {
  font-size: 1.2vw;
  margin-top: 7.4%; 
  font-weight: bold; }  
  
.wg_floor {
  font-size: 1vw;
  margin-top: 3%; }  

.wg_hr {
   border-top: solid 1px; black;
   margin-top: 2%;
   margin-bottom: 2%; }

.wg_name {
  font-size: 1vw;
  font-weight: bold;
  margin-top: 2.2%;  } 
  
.wg_kakaku {
  font-size: 0.9vw;
  margin-left: 0%;
  margin-top: 1.3%;
  font-weight: bold; }

.zei5 {
  font-size: 0.6vw;
  margin-left: 1%;
  position: relative;
  top: -1px; }
    
.wg_setsumei {
  width: 100%; 
  margin-top: 2%;
  font-size: 0.9vw;
  overflow-wrap: anywhere; }

.wg_kikan {
  font-size: 0.9vw;
  margin-top: 2%;  }
  
  
/* xxxxxxxxxxx HOLIDAY DINNER xxxxxxxxxxxx */ 
 
.content_dinner {
  background: black;
  background-image: url(img/dinner_back.jpg);
  background-size: cover;
  background: position: top center;
  background-repeat: no-repeat;
  height: 180vw; } 
  
.pad5 {
  height: 9vw; }
 
.content_name6 {
   width: 60%;
   margin-left: 20%;
   padding-top: 6%; } 

.pad6 {
   height: 8vw; }
 
.pad6 {
   height: 5vw; } 
 
.dinner_inline {
  width: 96%;
  margin-left: 3.5%; }

.dinner_in {
   width: 30%;
   margin-right: 2.8%;
   display: inline-block; 
   vertical-align: top;
   background: #2F0E03; }

.d_genre {
  font-size: 0.8vw;
  margin-top: 1%; 
  color: white; }

.d_comment_box {
  width: 90%;
  margin-left: 5%;
  margin-top: 5%; }
  
.d_comment_box2 {
  width: 90%;
  margin-left: 5%;
  margin-top: 2%; }

.d_shop {
  font-size: 1.2vw;
  margin-top: 1%; 
  font-weight: bold;
  color: white; }
  
.d_shop2 {
  font-size: 1.2vw;
  margin-top: 7.4%; 
  font-weight: bold; }  
  
.d_floor {
  font-size: 0.8vw;
  margin-top: 1%;
  margin-top: 5%;  
  color: white; }  

.d_hr {
   border-top: solid 1px; black;
   margin-top: 2%;
   margin-bottom: 2%; }

.d_inbox {
  width: 89%;
  margin-left: 5%;
  background: #c1a06b;
  margin-top: 4%;
  margin-bottom: 0%;
  padding: 1%;  }

.d_item {
  font-size: 1.2vw;
  margin-top: 1%; 
  font-weight: bold; }

.d_name {
  font-size: 1vw;
  font-weight: bold;
  margin-top: 0%;  } 
 
.d_kome {
  font-size: 0.8vw;
  margin-top: 0%; 
  color: white; }
  
.d_kakaku {
  font-size: 0.9vw;
  margin-left: 0%;
  margin-top: 1.3%;
  font-weight: bold; }

.zei6 {
  font-size: 0.6vw;
  margin-left: 1%;
  position: relative;
  top: -1px; }
    
.d_setsumei {
  width: 100%; 
  margin-top: 2%;
  margin-bottom: 5%;
  font-size: 0.75vw;
  color: white;
  overflow-wrap: anywhere;
  line-height: 1vw; }

.d_kikan {
  font-size: 0.9vw;
  margin-top: 2%;  }

.dropdown-menu.menu-closed {
  opacity: 0;
  visibility: hidden;
  pointer-events: none; }

.back-to-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 12vw;
  max-width: 80px;
  min-width: 40px;
  z-index: 999;
}  
  
.back-to-top img {
  display: block;
  width: 100%;
  height: auto;
}
 
/* ページ遷移時のブラックアウト */
#page-transition {
position: fixed;
inset: 0;
background: #000;
opacity: 0;
visibility: hidden;
pointer-events: none;
z-index: 99999;
transition: opacity 0.6s ease, visibility 0.6s ease;
}

/* ブラックアウト状態 */
#page-transition.is-active {
opacity: 1;
visibility: visible;
pointer-events: auto;
}

/* フェードイン開始前 */
html.is-fading-in body {
opacity: 0;
}

/* フェードイン */
body {
transition: opacity 0.8s ease;
}

html.is-fading-in body.is-visible {
opacity: 1;
}

}   


/* スマホ・狭いウィンドウでは、hoverではなく menu-open クラスで表示を制御 */
@media screen and (max-width: 768px) {
  /* MENUにカーソルが残っていても、閉じている間はメニューを隠す */
  #menu-trigger:hover + .header-main-logo + .dropdown-menu:not(.menu-open),
  .dropdown-menu:hover:not(.menu-open),
  .dropdown-menu.menu-closed {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  /* タップで開いた状態は、hoverルールより優先して表示 */
  #menu-trigger:hover + .header-main-logo + .dropdown-menu.menu-open,
  .dropdown-menu.menu-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}
