@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,h1,h2,p,img,dl,dt,dd,ol,ul,li,form,label,table,tbody,tr,th,td,footer,header,nav { margin:0; padding:0; border:0; outline:0; font-size:100%; line-height:160%; vertical-align:baseline; background:transparent; font-weight:normal; }
div, footer, header,nav, ul, li, dl, dd, dt { display:block; overflow:hidden; }
ul { list-style:none; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; text-decoration:none; outline:none; -webkit-tap-highlight-color:rgba(0,0,0,0); }
a:hover, a:focus { text-decoration:none; outline:none; }
a:link, a:visited { color:#333; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
form,input,select,textarea { box-sizing:border-box; }

/*================================================
 *  タグ設定
 ================================================*/
html { background-image:url('images/body_background.jpg'); }
body { width:100%; min-width:920px; margin:0 auto; font-size:14px; color:#333; background-color:floralwhite; 
       font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif; -webkit-text-size-adjust:100%; }
h1 { font-size:200%; }
dl { display:block; }
dt, dd { display:block; box-sizing:border-box; width:920px; border-style:solid; border-color:#ffa561; }
dt { background-image:url('images/nav_background.png'); background-repeat:repeat; background-position:center top; color:#fff; font-size:20px; font-weight:bold; text-shadow:1px 1px 1px #df4e0b; margin-top:10px; padding:10px 10px 5px 15px; border-width:0; }
dd { border-width:0 1px 1px 1px; padding:10px; border-radius:0 0 5px 5px;  }

/*================================================
 *  クラス設定
 ================================================*/
.inner { width:920px; margin-left:auto; margin-right:auto; }
.center { text-align:center; margin:0 auto; }
.empha, .error { color:red; }
.underconst { display:block; width:340px; margin:50px auto; }
span.nobr { white-space:nowrap; display:inline-block; }
.br_sp { display:none; }
.open_close_button { display:block; font-size:20px; width:300px; margin:10px auto; padding:5px; background-color:#ffe5a1; text-align:center; }
.open_close_button:hover { cursor:pointer; }
.open_close { display:none; margin-top:5px; }
.error404 { padding-top:150px; padding-bottom:150px; text-align:center; }

/*================================================
 *  ヘッダ
 ================================================*/
header { height:auto; padding:30px 0; background-image:url('images/body_background.jpg'); }
header div.inner div.header_pc a { display:block; float:left; }
header div.inner div.header_pc a img { display:block; }
header div.inner img.header_address { float:right; }
header div.inner a.header_sp { display:none; }

/*================================================
 *  ヘッダ(ナビ)
 ================================================*/
nav { text-align:center; box-shadow:0 5px 5px #c7824c; padding:10px 0 5px; height:42px; margin-bottom:10px; background-image:url('images/nav_background.png'); background-repeat:repeat; background-position:center top; }
nav h3 { display:none; margin:0; }
nav ul { display:inline-block; }
nav li { float:left; margin-right:20px; width:125px; text-align:center; border-radius:5px; margin-bottom:2px; box-shadow:2px 2px 2px #222; }
nav li:not(.nav_select) { background-image:url('images/body_background.jpg'); }
nav li div.nav_text { background-image:url('images/nav_text.png?20250509'); background-repeat:repeat-y; }
nav li:nth-of-type(1) div { background-position:0 0; }
nav li:nth-of-type(2) div { background-position:0 -40px; }
nav li:nth-of-type(3) div { background-position:0 -80px; }
nav li:nth-of-type(4) div { background-position:0 -120px; }
nav li:nth-of-type(5) div { background-position:0 -160px; }
nav li:nth-of-type(6) div { background-position:0 -200px; }
nav li:last-child { margin-right:2px; }
nav li a, nav li.nav_select { display:block; height:40px; }
nav li div { width:125px; height:40px; margin:0 auto; }
nav li.nav_select { background-color:#ff783a; }
nav li a:hover { font-weight:bold; text-decoration:none; box-shadow:2px 2px 2px #222 inset; }

/*================================================
 *  ページトップへの戻り
 ================================================*/
#page-top { position:fixed; bottom:20px; right:100px; font-size:14px; opacity:0.5; }
#page-top a { display:block; width:50px; height:50px; background:url('images/totop.png'); background-color:#c7824c; }
#page-top a:hover { text-decoration:none; background-color:#df4e0b; }

/*================================================
 *  フッタ
 ================================================*/
footer { display:block; padding:5px 0 45px 0; text-align:center; font-size:18px; background-image:url('images/body_background.jpg'); box-shadow:0 -5px 5px #dbbc92; }
footer div.inner ul { display:flex; justify-content:center; column-gap:25px; }
footer div.inner ul li { display:block; text-shadow:1px 1px 1px #666; }
footer div.inner ul li.footer_select { color:#df4e0b; }
footer div.inner img { width:150px; margin-right:30px; vertical-align:middle; }
footer div.inner span { margin-right:10px; }
footer div.inner span:last-of-type { margin-right:0; }

/*================================================
 *  本文
 ================================================*/
div.contents { background-color:floralwhite; padding-bottom:30px; padding-top:5px; }
img.each_page_title_image { width:100%; }
div.each_page_maintext { text-align:center; margin-bottom:10px; padding:10px; background-image:url('images/each_page_maintext.png'); }
div.each_page_maintext h3 { font-size:24px; margin:10px 0; color:#df4e0b; text-shadow:2px 2px 2px #ccc; }
div.each_page_maintext p { font-size:16px; font-weight:bold; color:#333; line-height:1.8; }
div.each_page_maintext p:last-child { margin-bottom:5px; }
img.dynamic_image { display:block; margin:10px 0; }

/*================================================
 *  トップ
 ================================================*/
div.top_food img { float:left; margin-right:10px; }
div.top_food img:last-child { margin-right:0; }
div.top_special_info { margin:10px 0; background-color:#048a00; color:white; padding:20px 0; }
div.top_special_info.close { background-color:#d00000; }
div.top_special_info.open { background-color:green; }
div.top_special_info.sale { background-color:#fbfba6; border:2px solid red; color:red; }
div.top_special_info p, div.top_special_info p span { text-align:center; font-size:20px; font-weight:bold; }
div.top_special_info.sale p, div.top_special_info.sale p span { font-size:36px; font-family:ta-mincho-gf-01, sans-serif; font-weight:400; font-style:normal; }
.top_flex { display:flex; justify-content:space-between; align-content:center; border:3px solid blue; margin:10px 0; padding:10px; background-color:white; }
.top_flex_text { width:calc(100% - 240px - 30px); }
.top_flex_text div { padding-top:30px; }
.top_flex_text div p { text-align:center; }
.top_flex_text div p span { font-size:18px; font-weight:bold; text-shadow: 1px 1px 1px lightgray; }
.top_interview .top_flex_text { position:relative; }
.top_interview .top_flex_text img { position:absolute; bottom:0; width:100%; }
.top_interview>img { display:block; width:240px; height:264.8px; flex-shrink:0; }
.top_video { padding:10px; }
.top_video .top_video_date { margin-top:10px; }
.top_video video { width:320px; height:180px; }
div.top_greeting { padding:10px 30px 0; text-shadow:1px 1px 1px lightgray; }
div.top_greeting div { float:left; }
div.top_greeting div h3 { letter-spacing:8px; margin-bottom:20px; }
div.top_greeting div div.top_greeting_name { float:right; margin-top:15px; }
div.top_greeting img { float:right; display:block; margin:10px 0; }
ul.top_info li { margin-bottom:5px; }
ul.top_info li:last-child { margin-bottom:0; }
div.top_info_date { float:left; width:150px; }
div.top_info_date:before { content:"▶"; margin-right:5px; }
div.top_info_title { float:left; width:748px; }

/*================================================
 *  メニュー関連
 ================================================*/
/* 看板メニュー */
dl.menu_special dt { font-size:26px; }
dl.menu_special dd { padding-bottom:5px; }
dl.menu_special ul li { display:inline-block; width:420px; font-size:16px; color:#df4e0b; text-shadow:1px 1px 1px lightgray; border-bottom:0; text-align:center; }
dl.menu_special ul li:first-of-type { margin-right:53px; }
dl.menu_special ul li div.menu_special_title { display:inline-block; text-align:center; vertical-align:bottom; }
dl.menu_special ul li div.menu_special_title div.menu_name, dl.menu_special ul li div.menu_special_title div.menu_price { font-weight:bold; }
dl.menu_special ul li div.menu_special_title div.menu_price { float:left; margin-left:30px; }
dl.menu_special ul li img { clear:both; width:420px; display:block; }

/* 一般メニュー */
div.menu { } /* 一般メニューゾーン全体 */
div.menu dl { float:left; }
div.menu dl:nth-child(odd) { margin-right:10px; }
div.menu dl, div.menu dt, div.menu dd { width:455px; }
div.menu dd { padding-top:5px; padding-bottom:0; }
ul.menu li { border-bottom:1px dotted gray; line-height:24px; margin-top:2px; }
ul.menu li:last-of-type { border-bottom:0; }
div.menu_name  { float:left;  }
div.menu_detail { float:left; margin-left:10px; } /* お酒メニューの詳細部 */
div.menu_price { float:right; }
span.menu_season, span.menu_popular { background-color:red; color:white; font-weight:bold; margin-left:10px; padding:0 10px; line-height:100%; font-size:12px; }
span.menu_season { background-color:red; }
span.menu_popular { background-color:blue; }
/* お酒メニューのサブカテゴリー */
div.menu dl.drink_sub { width:100%; margin-right:0; margin-top:5px; }
div.menu dl.drink_sub dt, div.menu dl.drink_sub dd { width:100%; border:0; }
div.menu dl.drink_sub dt { background:bisque; color:sienna; text-shadow:1px 1px 1px #c7824c; font-size:16px; padding:5px 0 5px 10px; margin-top:0; }
div.menu dl.drink_sub dd { padding:5px 0 0; }
ul.menu dl.drink_sub:first-child { margin-top:0; }

/* 最後の写真 */
div.menu_photo { font-size:0; margin-top:20px; }
div.menu_photo img { display:inline-block; margin-right:10px; }
div.menu_photo img:last-of-type { margin-right:0; }

/*================================================
 *  宴会関連
 ================================================*/
img.party_food { float:left; margin-right:10px; margin-bottom:10px; }
img.party_food:nth-of-type(odd) { margin-right:0; }

/*================================================
 *  店舗関連
 ================================================*/
table.about_data th, table.about_data td { border:1px solid #ffa561; padding:1px 10px; }
table.about_data th { background-color:#ffe5a1; color:brown; white-space:nowrap; }
img.about_entrance { float:right; display:block; }
p.about_continue { display:none; }
div.about_route { display:flex; flex-wrap:wrap; justify-content:center; }
div.about_route_block { width:270px; }
div.about_route_block img { display:block; width:260px; margin:0 auto; }
div.about_route_block p { text-align:center; }
img.about_route_entrance { width:100%; }
a.about_map { display:block; }
a.about_map img { width:100%; }

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■  ここからスマートフォン・タブレット向け  ■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
@media screen and (max-width:919px) {

/*================================================
 *  タグ設定
 ================================================*/
body { box-sizing:border-box; width:100%; padding:0; min-width:320px; }
dt, dd { width:100%; box-shadow:none; }

/*================================================
 *  クラス設定
 ================================================*/
.inner { box-sizing:border-box; width:auto; margin:5px; }

/*================================================
 *  ヘッダ
 ================================================*/
header { padding:5px; }
header div.inner div.header_pc { display:none; }
header div.inner a.header_sp { display:block; overflow:hidden; }
header div.inner a.header_sp img { display:block; }
header div.inner a.header_sp img.header_logo { float:left; }
header div.inner a.header_sp img.header_address { float:right; }

/*================================================
 *  ナビ
 ================================================*/
nav { height:auto; padding:10px 5px 5px; margin-bottom:10px; }
nav h3 { display:block; font-size:24px; }
nav ul { display:block; }
nav li { box-sizing:border-box; margin-right:0; margin:2px; padding:0; min-width:125px; width:calc(50% - 4px); box-shadow:none; }
nav li:last-child { margin-right:0; }
nav li.nav_select { border:1px solid #dbbc92; }
nav li a:hover { box-shadow:none; }

/*================================================
 *  ページトップへの戻り
 ================================================*/
#page-top { right:30px; }

/*================================================
 *  フッタ
 ================================================*/
footer div.inner ul { display:flex; flex-wrap:wrap; justify-content:center; margin-bottom:10px; }
footer div.inner div { margin-top:20px; }
footer div.inner img { margin-right:0; }
footer div.inner span { display:block; margin-right:0; }
footer div.inner span:last-child { margin-top:25px; }

/*================================================
 *  本文
 ================================================*/
div.each_page_maintext h3 { font-size:18px; }
div.each_page_maintext p { font-size:14px; }
img.dynamic_image { display:block; margin:10px 0 10px; width:100%; }

/*================================================
 *  トップ
 ================================================*/
div.top_food img { width:calc(50% - 10px); }
div.top_special_info { padding:15px; }
div.top_special_info p, div.top_special_info p span { font-size:16px; }
div.top_special_info.sale p, div.top_special_info.sale p span { font-size:24px; }
.top_flex .top_flex_text div p span { font-size:16px; }
div.top_greeting { margin:10px 0 0; padding:0 30px; }
div.top_greeting div { float:none; }
div.top_greeting img { float:none; display:block; margin:10px auto; }
div.top_info_date  { float:none; width:100%; }
div.top_info_title { float:none; margin-left:20px; width:calc(100% - 20px); }

/*================================================
 *  メニュー関連
 ================================================*/
dl.menu_special ul li { width:100%; }
dl.menu_special ul li:first-of-type { margin-right:0; }
dl.menu_special ul li img { clear:both; margin:0 auto; }
div.menu dl { float:none; }
div.menu dl:nth-child(odd) { margin-right:0; }
div.menu dl, div.menu dt, div.menu dd { width:auto; }

/* 最後の写真 */
div.menu_photo { margin-top:20px; }
div.menu_photo img { display:block; margin-right:0; margin-bottom:10px; width:100%; }

/*================================================
 *  ランチ関連
 ================================================*/

/*================================================
 *  宴会関連
 ================================================*/
img.party_food { float:none; width:100%;  }

/*================================================
 *  店舗関連
 ================================================*/
img.about_entrance { float:none; margin:0 auto 20px; }
dd.about_route { padding:10px 0; }
table.about_data { margin:0 auto; }

}


/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■  ここからスマートフォン限定  ■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
@media screen and (max-width:720px) {

.top_flex_text div { padding-top:15px; }
.top_video video { width:240px; height:135px; }

}


/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■  ここからスマートフォン限定  ■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
@media screen and (max-width:540px) {

/*===== タグ設定 =====*/
.br_sp { display:inline; }

/*===== ヘッダ =====*/
header div.inner a.header_sp img.header_logo, header div.inner a.header_sp img.header_address { float:none; margin:0 auto; }
header div.inner a.header_sp a img { min-width:240px; width:50%; }
header div.inner a.header_sp img.header_address { margin-top:25px; }

/*===== ナビ =====*/

/*===== トップ =====*/
div.top_special_info { border-width:5px }
.top_flex { display:block; }
.top_flex .top_flex_text { position:static; width:100%; margin-bottom:10px; }
.top_flex .top_flex_text div { padding-top:10px; }
.top_flex .top_flex_text img { position:static; width:100%; display:block; margin-top:10px; }
.top_interview>img { margin-left:auto; margin-right:auto; }
.top_video video { width:100%; height:auto; }
div.top_greeting { padding:0; }
div.top_greeting div div.top_greeting_name { margin-top:5px; margin-right:20px; }

/*===== 料理 =====*/
dl.menu_special ul li:last-of-type div.menu_special_title div.menu_name { float:none; }
dl.menu_special ul li:last-of-type div.menu_special_title div.menu_price { float:none; margin-left:0; }
dl.menu_special ul li img { width:100%; }

/*===== 店舗 =====*/
p.about_continue { display:block; font-size:20px; width:300px; margin:5px auto; padding:5px; background-color:#ffe5a1; text-align:center; }
div.about_route { display:none; padding:10px 5px; }
div.about_route_block { width:100%; margin-bottom:10px; }
div.about_route_block img { width:100%; }

}