@charset "Shift_JIS";

/* =========================================================
   京料理 下鴨福助
   「旅行会社・団体の皆様」共通仕様確認版
   2026-09-18
   基準：お料理／仕出し／お部屋で確定したグレージュ共通仕様
   ========================================================= */

/* ---------- 本文・基本色 ---------- */
#waku{
  background-color:#f5f0e7 !important;
  color:#4a4038 !important;
  padding-top:18px;
  padding-bottom:12px;
}
#waku,
#waku p,
#waku td,
#waku div{
  color:#4a4038;
}
#waku font{color:inherit !important;}

/* ---------- グローバルナビ：確定共通仕様 ---------- */
#navi{
  background:#f4efe6 !important;
  border-top:1px solid #c9bca8 !important;
  border-bottom:1px solid #b9aa94 !important;
}
#navi ul{background:#f4efe6 !important;}
#navi ul li{
  background:#f4efe6 !important;
  border-right:1px solid #d8cdbc !important;
  border-bottom:0 !important;
}
#navi ul li a,
#navi01,#navi02,#navi03,#navi04,#navi05,#navi06,#navi07{
  background:#f4efe6 !important;
  background-image:none !important;
  color:#55483f !important;
  text-shadow:none !important;
  border:0 !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  letter-spacing:.05em !important;
}
#navi ul li a:hover,
#navi ul li a:focus{
  background:linear-gradient(to bottom,#c8b79f 0%,#aa967b 100%) !important;
  color:#fffaf1 !important;
}

/* ---------- 冒頭案内 ---------- */
.shidashi_coment{
  width:730px;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box;
}
.lunchgr_title1{
  min-height:58px;
  margin:0 auto 14px !important;
  padding:14px 18px 12px !important;
  box-sizing:border-box;
  background:#fbf8f1 !important;
  background-image:none !important;
  border:1px solid #c6b9a5 !important;
  border-left:4px solid #a58a67 !important;
  box-shadow:0 2px 6px rgba(65,52,42,.10);
  color:#503c2f !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:20px !important;
  font-weight:normal !important;
  line-height:1.45 !important;
  letter-spacing:.10em !important;
}
.lunchgr_co,
.shida_naiyo{
  padding:0 10px 8px;
  box-sizing:border-box;
  font-size:14px;
  line-height:1.9;
}

/* ---------- ページ内2ボタン ---------- */
#ank.group-section-nav{
  width:730px;
  margin:18px auto 24px;
  padding:0;
  display:flex;
  gap:10px;
  box-sizing:border-box;
}
#ank.group-section-nav a{
  position:relative;
  display:flex;
  flex:1 1 0;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:10px 34px 10px 16px;
  box-sizing:border-box;
  border:1px solid #bcae99;
  background:linear-gradient(to bottom,#fffdf8 0%,#eee7dc 100%);
  color:#4a3b32;
  text-decoration:none;
  text-align:center;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif;
  font-size:15px;
  line-height:1.45;
  letter-spacing:.05em;
  box-shadow:0 2px 5px rgba(57,44,34,.08);
}
#ank.group-section-nav a:after{
  content:"↓";
  position:absolute;
  right:14px;
  color:#9a7445;
}
#ank.group-section-nav a:hover,
#ank.group-section-nav a:focus{
  background:linear-gradient(to bottom,#c4b39c 0%,#a38e72 100%);
  border-color:#9f896e;
  color:#fffaf1;
}
#ank.group-section-nav a:hover:after,
#ank.group-section-nav a:focus:after{color:#fff3d8;}

/* ---------- 大見出し ---------- */
.lunchgr_title2,
.lunchgr_title3{
  width:730px !important;
  min-height:58px !important;
  margin:24px auto 18px !important;
  padding:0 !important;
  box-sizing:border-box !important;
  background:#fbf8f1 !important;
  background-image:none !important;
  border:1px solid #c6b9a5 !important;
  border-left:4px solid #a58a67 !important;
  box-shadow:0 2px 6px rgba(65,52,42,.10) !important;
}
.lunchgr_title2 h3,
.lunchgr_title3 h3{
  margin:0 !important;
  padding:14px 18px 12px !important;
  color:#503c2f !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:20px !important;
  font-weight:normal !important;
  line-height:1.45 !important;
  letter-spacing:.10em !important;
}

/* ---------- 小見出し ---------- */
#waku > h4{
  position:relative;
  width:730px;
  margin:20px auto 10px !important;
  padding:8px 10px 8px 30px !important;
  box-sizing:border-box;
  background:transparent !important;
  color:#49382e !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:17px !important;
  font-weight:normal !important;
  line-height:1.4 !important;
}
#waku > h4:before{
  content:"";
  position:absolute;
  left:8px;
  top:50%;
  width:13px;
  height:1px;
  background:#9b7b50;
}
#waku > h4 strong{font-weight:normal !important;}

/* ---------- 料理紹介カード ---------- */
table.shidashi_tab1{
  width:730px !important;
  margin:0 auto 16px !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:#fbf9f4 !important;
  border:1px solid #d5c8b6 !important;
  box-shadow:0 2px 6px rgba(65,52,42,.08) !important;
}
.shidashi_tab1 td{vertical-align:top !important;}
.shidashi_tab1 .tab1_tdl{
  width:240px !important;
  padding:10px !important;
  box-sizing:border-box;
  background:#f1ebe1 !important;
  text-align:center !important;
}
.shidashi_tab1 .tab1_tdl img{
  display:block;
  max-width:220px !important;
  width:auto;
  height:auto;
  margin:0 auto;
}
.shidashi_tab1 .tab2_tdr{
  width:auto !important;
  background:#fbf9f4 !important;
}
.tab2_tdr1{
  margin:0 !important;
  padding:11px 16px 9px !important;
  background:#f5f0e7 !important;
  background-image:none !important;
  border-bottom:1px solid #d7cbbb !important;
}
.tab2_tdr1 p{
  margin:0 !important;
  color:#49382e !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:17px !important;
  line-height:1.45 !important;
  letter-spacing:.06em !important;
}
.tab1_tdr2{
  padding:13px 16px 15px !important;
  box-sizing:border-box;
  color:#4b433d !important;
  font-size:14px !important;
  line-height:1.75 !important;
}
.tab1_tdr2 h3{
  margin:5px 0 !important;
  color:#654a37 !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:17px !important;
  line-height:1.55 !important;
}

/* ---------- 注意書き ---------- */
p.cmnt,
h3.cmnt{
  width:730px;
  margin:12px auto 20px !important;
  padding:12px 15px !important;
  box-sizing:border-box;
  background:#fffaf2;
  border-left:3px solid #a58a67;
  color:#55483f !important;
  font-size:13px !important;
  line-height:1.7 !important;
}
p.cmnt font,
h3.cmnt font{color:inherit !important;}
p.cmnt font[color="#ff0000"],
p.cmnt font[color="red"]{
  color:#7c3f35 !important;
}

/* ---------- 予約ボタン：共通確定仕様 ---------- */
.yoyaku-modern{
  width:730px;
  max-width:calc(100% - 28px);
  margin:26px auto 24px;
  padding:0;
  box-sizing:border-box;
}
.yoyaku-modern .mobile-reserve{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:58px !important;
  padding:11px 18px !important;
  box-sizing:border-box !important;
  border:1px solid #a88d69 !important;
  background:linear-gradient(to bottom,#b9a384 0%,#947b5d 100%) !important;
  color:#fffdf8 !important;
  text-decoration:none !important;
  box-shadow:0 2px 5px rgba(57,44,34,.18) !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
}
.yoyaku-modern .mobile-reserve span{
  flex:1 1 auto;
  text-align:center;
  color:#fffdf8;
  font-size:18px;
  font-weight:normal;
  letter-spacing:.10em;
}
.yoyaku-modern .mobile-reserve b{
  color:#f4e5c9;
  font-size:21px;
  font-weight:normal;
}
.yoyaku-modern .mobile-reserve:hover,
.yoyaku-modern .mobile-reserve:focus{
  background:linear-gradient(to bottom,#a99172 0%,#80684e 100%) !important;
}

/* 旧「ページ上部へ」は使用しない */
.to_top{display:none !important;}

/* ---------- スマートフォン ---------- */
@media screen and (max-width:767px){
  html,body{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden !important;
  }
  body{-webkit-text-size-adjust:100%;}
  #Wrapp{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  #head{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:14px 14px 10px !important;
    box-sizing:border-box !important;
    display:block !important;
  }
  #logo{
    position:relative !important;
    float:none !important;
    width:330px !important;
    max-width:88vw !important;
    height:82px !important;
    margin:0 auto 8px !important;
    background-repeat:no-repeat !important;
    background-position:center center !important;
    background-size:contain !important;
  }
  #logo h1,#logo h1 a{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }
  #head_r{
    position:static !important;
    float:none !important;
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    text-align:center !important;
  }
  #head_r h2{
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    text-align:center !important;
    font-size:12px !important;
    line-height:1.65 !important;
    font-weight:normal !important;
  }
  #head_r .pan,.pan{
    position:static !important;
    width:100% !important;
    margin:5px 0 0 !important;
    padding:0 !important;
    text-align:center !important;
    font-size:10px !important;
    line-height:1.5 !important;
  }
  #conte{
    width:100% !important;
    height:auto !important;
    overflow:hidden !important;
  }
  #conte>img,#conte>font>img{
    display:block !important;
    width:100% !important;
    max-width:770px !important;
    height:auto !important;
    margin:0 auto !important;
  }

  #navi{
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }
  #navi ul{
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    list-style:none !important;
  }
  #navi ul li{
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    border-right:1px solid #d4c8b7 !important;
    border-bottom:1px solid #d4c8b7 !important;
  }
  #navi ul li:nth-child(even){border-right:none !important;}
  #navi ul li:last-child{
    grid-column:1/-1 !important;
    border-right:none !important;
    border-bottom:none !important;
  }
  #navi ul li a,
  #navi01,#navi02,#navi03,#navi04,#navi05,#navi06,#navi07{
    width:100% !important;
    height:auto !important;
    min-height:46px !important;
    margin:0 !important;
    padding:10px 6px !important;
    box-sizing:border-box !important;
    float:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#f4efe6 !important;
    background-image:none !important;
    color:#55483f !important;
    text-align:center !important;
    text-decoration:none !important;
    text-indent:0 !important;
    white-space:normal !important;
    font-size:15px !important;
    line-height:1.25 !important;
  }

  #waku{
    float:none !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px 0 0 !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }
  .shidashi_coment,
  .lunchgr_title2,
  .lunchgr_title3,
  #waku > h4,
  p.cmnt,
  h3.cmnt{
    width:auto !important;
    margin-left:14px !important;
    margin-right:14px !important;
  }
  .lunchgr_title1{
    width:auto !important;
    min-height:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    font-size:18px !important;
  }
  .lunchgr_co,.shida_naiyo{
    padding-left:2px !important;
    padding-right:2px !important;
    font-size:14px !important;
    line-height:1.8 !important;
  }

  #ank.group-section-nav{
    width:auto !important;
    margin:18px 14px 22px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  #ank.group-section-nav a{
    min-height:48px !important;
    padding:8px 25px 8px 8px !important;
    font-size:13px !important;
  }

  .lunchgr_title2 h3,
  .lunchgr_title3 h3{
    font-size:18px !important;
  }

  table.shidashi_tab1{
    display:block !important;
    width:auto !important;
    margin:0 14px 18px !important;
  }
  .shidashi_tab1 tbody,
  .shidashi_tab1 tr{
    display:block !important;
    width:100% !important;
  }
  .shidashi_tab1 .tab1_tdl,
  .shidashi_tab1 .tab2_tdr{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
  }
  .shidashi_tab1 .tab1_tdl{
    padding:12px !important;
  }
  .shidashi_tab1 .tab1_tdl img{
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
  }
  .tab2_tdr1{
    padding:11px 14px 9px !important;
  }
  .tab2_tdr1 p{font-size:17px !important;}
  .tab1_tdr2{
    padding:13px 14px 16px !important;
    font-size:14px !important;
    line-height:1.75 !important;
  }

  .yoyaku-modern{
    width:auto !important;
    max-width:none !important;
    margin:22px 14px 20px !important;
  }
  .yoyaku-modern .mobile-reserve{min-height:56px !important;}
  .yoyaku-modern .mobile-reserve span{font-size:17px !important;}

  #sub_navi{
    width:auto !important;
    margin:0 14px !important;
    padding:12px 0 !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }
}


/* =========================================================
   2026-09-18 旧画像タイトルを廃止し、HTML文字タイトルへ統一
   sub.css の background-image / text-indent を完全解除
   ========================================================= */

/* 「旅行会社様・団体様　お食事のご案内」 */
.lunchgr_title1{
  width:730px !important;
  height:auto !important;
  min-height:58px !important;
  margin:0 auto 14px !important;
  padding:14px 18px 12px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  text-indent:0 !important;
  background:#fbf8f1 !important;
  background-image:none !important;
  border:1px solid #c6b9a5 !important;
  border-left:4px solid #a58a67 !important;
  box-shadow:0 2px 6px rgba(65,52,42,.10) !important;
  color:#503c2f !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:20px !important;
  font-weight:normal !important;
  line-height:1.45 !important;
  letter-spacing:.10em !important;
}

/* 「ツアー・団体様　ご提供料理」
   「ツアー・団体様　ご提供料理（仕出し）」 */
.lunchgr_title2 h3,
.lunchgr_title3 h3{
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:14px 18px 12px !important;
  overflow:visible !important;
  text-indent:0 !important;
  background:transparent !important;
  background-image:none !important;
  color:#503c2f !important;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:20px !important;
  font-weight:normal !important;
  line-height:1.45 !important;
  letter-spacing:.10em !important;
}

@media screen and (max-width:767px){
  .lunchgr_title1{
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 0 14px !important;
    padding:13px 14px 11px !important;
    font-size:18px !important;
    line-height:1.5 !important;
    letter-spacing:.07em !important;
  }
  .lunchgr_title2 h3,
  .lunchgr_title3 h3{
    font-size:18px !important;
    line-height:1.5 !important;
    letter-spacing:.07em !important;
  }
}


/* =========================================================
   2026-09-18 文字組み・余白の最終整理
   旧HTMLの font / strong / b / h3 によるバラつきを吸収
   ========================================================= */

/* 本文の基本書体を一つに統一 */
#waku,
#waku p,
#waku td,
#waku div,
#waku h3,
#waku h4{
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif;
}

/* 通常本文 */
.lunchgr_co,
.shida_naiyo,
.tab1_tdr2{
  font-size:14px !important;
  font-weight:normal !important;
  line-height:1.85 !important;
  letter-spacing:.025em !important;
  color:#4a4038 !important;
}

/* 料理名 */
.tab2_tdr1 p{
  font-size:17px !important;
  font-weight:normal !important;
  line-height:1.5 !important;
  letter-spacing:.06em !important;
}

/* 価格：料理カード内はすべて同じ表現 */
.tab1_tdr2 h3{
  margin:10px 0 5px !important;
  padding:0 !important;
  font-size:17px !important;
  font-weight:normal !important;
  line-height:1.65 !important;
  letter-spacing:.025em !important;
  color:#654a37 !important;
}
.tab1_tdr2 h3 b,
.tab1_tdr2 h3 strong,
.tab1_tdr2 b,
.tab1_tdr2 strong{
  font-size:inherit !important;
  font-weight:normal !important;
  color:inherit !important;
}

/* 旧HTMLに残る size指定の影響を完全に無効化 */
#waku [style*="font-size"],
#waku [size]{
  font-size:inherit !important;
}

/* カード本文の余白を統一 */
.tab1_tdr2{
  padding:14px 18px 16px !important;
}
.tab1_tdr2 br{
  line-height:1.25;
}

/* 「おすすめ料理」「幕の内弁当」の小見出しを統一 */
#waku > h4{
  margin-top:20px !important;
  margin-bottom:10px !important;
  font-size:16px !important;
  font-weight:normal !important;
  letter-spacing:.07em !important;
}
#waku > h4 strong{
  font-size:inherit !important;
  font-weight:normal !important;
}

/* 注意書き：赤・巨大文字・太字の混在を廃止 */
p.cmnt,
h3.cmnt{
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:13px !important;
  font-weight:normal !important;
  line-height:1.75 !important;
  letter-spacing:.02em !important;
  color:#55483f !important;
}
p.cmnt b,
p.cmnt strong,
h3.cmnt b,
h3.cmnt strong{
  font-size:inherit !important;
  font-weight:normal !important;
  color:inherit !important;
}

/* 人数など特に大事な条件だけ落ち着いた濃色で視認性を確保 */
p.cmnt b:last-child,
p.cmnt strong:last-child{
  color:#6f493e !important;
}

/* 冒頭文章も不自然なフォント差をなくす */
.lunchgr_co p{
  margin:0 !important;
  font-size:14px !important;
  font-weight:normal !important;
  line-height:1.9 !important;
  letter-spacing:.025em !important;
}

/* スマホ */
@media screen and (max-width:767px){
  .lunchgr_co,
  .shida_naiyo,
  .tab1_tdr2{
    font-size:14px !important;
    line-height:1.8 !important;
  }
  .tab1_tdr2{
    padding:13px 15px 16px !important;
  }
  .tab1_tdr2 h3{
    font-size:16px !important;
    line-height:1.6 !important;
  }
  p.cmnt,
  h3.cmnt{
    font-size:12.5px !important;
    line-height:1.7 !important;
  }
}


/* =========================================================
   2026-09-18 最終微調整
   価格・写真枠・文字組みの統一
   ========================================================= */

/* 写真欄を固定し、写真を中央配置 */
.shidashi_tab1 .tab1_tdl{
  width:240px !important;
  padding:12px !important;
  box-sizing:border-box !important;
  text-align:center !important;
  vertical-align:middle !important;
  background:#f1ebe1 !important;
}
.shidashi_tab1 .tab1_tdl > div{
  width:216px !important;
  min-height:175px !important;
  margin:0 auto !important;
  padding:7px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#fff !important;
  border:1px solid #d2c8bb !important;
  box-shadow:0 1px 3px rgba(55,43,34,.10) !important;
}
.shidashi_tab1 .tab1_tdl img{
  display:block !important;
  max-width:200px !important;
  max-height:165px !important;
  width:auto !important;
  height:auto !important;
  margin:auto !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  object-fit:contain !important;
}

/* 価格表示を全カードで同じサイズ・行間に */
.tab1_tdr2 h3,
.tab1_tdr2 h3 *,
.tab1_tdr2 b,
.tab1_tdr2 strong{
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:17px !important;
  font-weight:normal !important;
  line-height:1.65 !important;
  letter-spacing:.02em !important;
  color:#654a37 !important;
}
.tab1_tdr2 h3{
  margin:10px 0 5px !important;
  padding:0 !important;
}

/* 税注記も価格と自然につながる大きさに統一 */
.tab1_tdr2 h3 [size],
.tab1_tdr2 h3 [style*="font-size"]{
  font-size:14px !important;
  line-height:inherit !important;
}

/* 商品名の不自然な太字差をなくす */
.tab2_tdr1 p,
.tab2_tdr1 p *{
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif !important;
  font-size:17px !important;
  font-weight:normal !important;
  line-height:1.5 !important;
  letter-spacing:.055em !important;
}

/* スマホでは写真枠をカード幅に合わせる */
@media screen and (max-width:767px){
  .shidashi_tab1 .tab1_tdl{
    width:100% !important;
    padding:12px !important;
  }
  .shidashi_tab1 .tab1_tdl > div{
    width:min(260px,100%) !important;
    min-height:0 !important;
  }
  .shidashi_tab1 .tab1_tdl img{
    max-width:100% !important;
    max-height:none !important;
  }
  .tab1_tdr2 h3,
  .tab1_tdr2 h3 *,
  .tab1_tdr2 b,
  .tab1_tdr2 strong{
    font-size:16px !important;
  }
}


/* =========================================================
   2026-09-18 スマートフォン最終修正
   viewport追加と旧固定幅指定の上書き
   ========================================================= */
@media screen and (max-width:767px){

  #Wrapp,
  #head,
  #conte,
  #navi,
  #waku,
  #footer{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  #Wrapp{
    width:100% !important;
    margin:0 !important;
  }

  /* 本文はスマホ画面いっぱいに固定幅を解除 */
  #waku{
    width:100% !important;
    padding:14px 0 0 !important;
  }

  /* 冒頭ブロック */
  .shidashi_coment{
    width:auto !important;
    margin-left:12px !important;
    margin-right:12px !important;
  }

  /* ページ内ボタン */
  #ank.group-section-nav{
    width:auto !important;
    margin:16px 12px 20px !important;
    grid-template-columns:1fr 1fr !important;
  }

  /* 大見出し・小見出し */
  .lunchgr_title2,
  .lunchgr_title3,
  #waku > h4,
  p.cmnt,
  h3.cmnt{
    width:auto !important;
    margin-left:12px !important;
    margin-right:12px !important;
  }

  /* 料理カードを横並びから縦積みに */
  table.shidashi_tab1{
    display:block !important;
    width:auto !important;
    max-width:none !important;
    margin:0 12px 16px !important;
    table-layout:auto !important;
  }
  table.shidashi_tab1 tbody,
  table.shidashi_tab1 tr{
    display:block !important;
    width:100% !important;
  }
  table.shidashi_tab1 td.tab1_tdl,
  table.shidashi_tab1 td.tab2_tdr{
    display:block !important;
    float:none !important;
    width:100% !important;
    max-width:none !important;
  }

  /* 写真エリア */
  table.shidashi_tab1 td.tab1_tdl{
    min-height:0 !important;
    padding:14px !important;
  }
  table.shidashi_tab1 td.tab1_tdl > div{
    width:min(280px,100%) !important;
    min-height:0 !important;
    margin:0 auto !important;
  }
  table.shidashi_tab1 td.tab1_tdl img{
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    max-height:none !important;
    margin:0 auto !important;
  }

  /* 商品名・本文 */
  .tab2_tdr1{
    width:100% !important;
    box-sizing:border-box !important;
  }
  .tab1_tdr2{
    width:100% !important;
    box-sizing:border-box !important;
    padding:14px 15px 17px !important;
  }

  /* PC用の強制改行はスマホでは自然な折返しに近づける */
  .lunchgr_co br{
    display:none !important;
  }

  /* 予約ボタン */
  .yoyaku-modern{
    width:auto !important;
    max-width:none !important;
    margin:22px 12px 20px !important;
  }

  /* 下部ナビ */
  #sub_navi{
    width:auto !important;
    max-width:none !important;
    margin:0 12px !important;
    box-sizing:border-box !important;
    text-align:center !important;
  }

  #footer{
    width:100% !important;
    text-align:center !important;
  }
}


/* =========================================================
   2026-09-18 iPhone幅：文字切れ・固定高の完全解除
   ========================================================= */
@media screen and (max-width:767px){

  /* 旧CSSの固定height / overflow:hiddenをスマホでは解除 */
  #waku,
  .shidashi_coment,
  .lunchgr_co,
  .shida_naiyo,
  .lunchgr_title1,
  .lunchgr_title2,
  .lunchgr_title3,
  .lunchgr_title2 h3,
  .lunchgr_title3 h3,
  #ank,
  #ank a,
  table.shidashi_tab1,
  table.shidashi_tab1 tbody,
  table.shidashi_tab1 tr,
  table.shidashi_tab1 td,
  .tab1_tdl,
  .tab2_tdr,
  .tab2_tdr1,
  .tab2_tdr1 p,
  .tab1_tdr2,
  p.cmnt,
  h3.cmnt{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }

  /* テーブル由来の固定幅・nowrapを完全解除 */
  table.shidashi_tab1,
  table.shidashi_tab1 tbody,
  table.shidashi_tab1 tr,
  table.shidashi_tab1 td{
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
  }

  /* 商品名：長い名称でも必ず折り返す */
  .tab2_tdr1,
  .tab2_tdr1 p{
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  .tab2_tdr1 p{
    margin:0 !important;
    padding:0 !important;
  }

  /* 本文・価格・注意書き：右端で切らず自然に折り返す */
  .tab1_tdr2,
  .tab1_tdr2 h3,
  .tab1_tdr2 p,
  .lunchgr_co,
  .lunchgr_co p,
  .shida_naiyo,
  p.cmnt,
  h3.cmnt{
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
  }

  /* 古いnowrap属性が残っていてもスマホでは無効化 */
  #waku [nowrap]{
    white-space:normal !important;
  }

  /* 長い見出しも切れないように */
  .lunchgr_title1,
  .lunchgr_title2,
  .lunchgr_title3{
    min-width:0 !important;
    max-width:none !important;
  }
  .lunchgr_title1,
  .lunchgr_title2 h3,
  .lunchgr_title3 h3{
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }

  /* 注意書き枠は内容量に合わせて伸ばす */
  p.cmnt,
  h3.cmnt{
    padding:11px 12px !important;
    margin-top:10px !important;
    margin-bottom:18px !important;
  }

  /* カード本文の左右余白を少し確保 */
  .tab2_tdr1{
    padding:10px 12px 9px !important;
  }
  .tab1_tdr2{
    padding:13px 12px 16px !important;
  }

  /* 下部ナビも横幅で切らない */
  #sub_navi,
  #sub_navi p{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
  }
}


/* =========================================================
   2026-09-18 スマホ：旧・赤い菱形見出し画像を非表示
   PC版では従来表示を維持
   ========================================================= */
@media screen and (max-width:767px){

  /* 古い見出し背景画像を完全解除 */
  .tab2_tdr1,
  .tab2_tdr1 p,
  .tab2_tdr1 h3,
  .tab1_tdr2,
  #waku h4{
    background-image:none !important;
  }

  /* 見出し内に直接置かれた旧アイコン画像も非表示 */
  .tab2_tdr1 img,
  .tab2_tdr1 p img,
  .tab2_tdr1 h3 img{
    display:none !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }

  /* 菱形用に確保されていた左余白を解除 */
  .tab2_tdr1,
  .tab2_tdr1 p,
  .tab2_tdr1 h3{
    text-indent:0 !important;
  }

  .tab2_tdr1{
    padding-left:12px !important;
  }

  /* 商品名は文字だけで端正に表示 */
  .tab2_tdr1 p{
    padding-left:0 !important;
    margin-left:0 !important;
  }
}


/* =========================================================
   2026-09-18 料理カード構造の正常化
   旧table / 個別画像サイズ指定を廃止
   PC・スマホ共通の1構造で表示
   ========================================================= */

.group-food-card{
  width:730px;
  margin:0 auto 16px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  background:#fbf9f4;
  border:1px solid #d5c8b6;
  box-shadow:0 2px 6px rgba(65,52,42,.08);
  overflow:hidden;
}

.group-food-photo{
  min-width:0;
  padding:12px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f1ebe1;
}

.group-food-photo img{
  display:block;
  width:100%;
  max-width:216px;
  height:auto;
  max-height:none;
  margin:0 auto;
  padding:0;
  border:6px solid #fff;
  box-sizing:border-box;
  object-fit:contain;
  box-shadow:0 1px 3px rgba(55,43,34,.12);
}

.group-food-content{
  min-width:0;
  display:flex;
  flex-direction:column;
  background:#fbf9f4;
}

.group-food-title{
  width:100%;
  min-width:0;
  padding:11px 16px 9px;
  box-sizing:border-box;
  background:#f5f0e7;
  border-bottom:1px solid #d7cbbb;
  color:#49382e;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif;
  font-size:17px;
  font-weight:normal;
  line-height:1.5;
  letter-spacing:.055em;
  white-space:normal;
  overflow-wrap:break-word;
}

.group-food-body{
  min-width:0;
  padding:14px 18px 16px;
  box-sizing:border-box;
  color:#4a4038;
  font-family:"Yu Mincho","Hiragino Mincho ProN","MS PMincho",serif;
  font-size:14px;
  font-weight:normal;
  line-height:1.85;
  letter-spacing:.025em;
  white-space:normal;
  overflow-wrap:break-word;
}

.group-food-body h3,
.group-food-body h3 *,
.group-food-body b,
.group-food-body strong{
  margin:10px 0 5px;
  padding:0;
  color:#654a37;
  font-family:inherit;
  font-size:17px;
  font-weight:normal;
  line-height:1.65;
  letter-spacing:.02em;
}

/* 新構造内では旧・赤い菱形などの背景装飾を一切使わない */
.group-food-title,
.group-food-title *{
  background-image:none !important;
  text-indent:0 !important;
}
.group-food-title img{
  display:none !important;
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width:767px){
  .group-food-card{
    width:auto;
    margin:0 12px 16px;
    display:block;
    overflow:hidden;
  }

  .group-food-photo{
    width:100%;
    min-height:0;
    padding:14px;
  }

  .group-food-photo img{
    width:auto;
    max-width:100%;
    height:auto;
    max-height:none;
    margin:0 auto;
  }

  .group-food-content{
    width:100%;
    min-width:0;
  }

  .group-food-title{
    width:100%;
    height:auto;
    min-height:0;
    padding:10px 12px 9px;
    font-size:16px;
    line-height:1.5;
    overflow:visible;
  }

  .group-food-body{
    width:100%;
    height:auto;
    min-height:0;
    padding:13px 12px 16px;
    font-size:14px;
    line-height:1.8;
    overflow:visible;
  }

  .group-food-body h3,
  .group-food-body h3 *,
  .group-food-body b,
  .group-food-body strong{
    font-size:16px;
  }
}


/* =========================================================
   2026-09-18 料理写真の最終バランス調整
   写真ファイルは変更せず、表示エリアを共通化
   ========================================================= */

/* PC：すべて同じ写真ステージに置く */
.group-food-photo{
  min-height:205px;
  padding:14px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.group-food-photo img{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:208px !important;
  max-height:178px !important;
  margin:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* スマホ：カードごとの写真エリアの高さを統一 */
@media screen and (max-width:767px){
  .group-food-photo{
    width:100% !important;
    height:190px !important;
    min-height:190px !important;
    max-height:190px !important;
    padding:12px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }

  .group-food-photo img{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:100% !important;
    max-height:166px !important;
    margin:auto !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}

/* 小さいスマホでも写真ステージを過度に大きくしない */
@media screen and (max-width:380px){
  .group-food-photo{
    height:176px !important;
    min-height:176px !important;
    max-height:176px !important;
  }
  .group-food-photo img{
    max-height:152px !important;
  }
}
