@charset "utf-8";

/* base ------------------------*/
#wrapper { position:relative; overflow: hidden; }

/* common------------------------*/
.sec-box{ margin-bottom:3em; }
.in-box{ margin:0 auto; }

.bg-dark{ background: #d9c8c0; }
.bg-warm{ background: #e3d2cd; }
.bg-meal{ background: #e6c9ba; }
.bg-w{ background:#e0e0e0; }

/* loading */
#loading { position:fixed; z-index:9999; top:0; right:0; bottom:0; left:0; text-align: center; background-color:#e3d2cd; }
.loading_img { position:absolute; top:45%; left:50%; transform:translate(-50%,-50%); }
.loading_img .gf-jose{ padding-left:0.7em; font-size:1.4em; color:#994126; }

/* title */
.sub{ font-size:1.2em; line-height:1.5; letter-spacing:0.08em; }
.sub .small{ margin:0 0.8em; }
.sub.break .small{ margin:0; }
[class*="ttl"] { margin-bottom:1.5em; font-size:1.3em; letter-spacing:0.05em; }
.ttl-col{ padding:0.4em 1em; background:#d0e1c7; }
.bg-dark .ttl-col{ background:#d7e5ce; }

.ttl-logo{ text-align:center; line-height: 1.6; }
.ttl-logo .con{ position:relative; display:inline-block; padding-top:50px; }
.ttl-logo .con::before{ position:absolute; content:""; width:70px; height:50px; top:0; left:calc(50% - 35px);
  background:url(../img/i_chicken.svg) no-repeat 0 0 / 100%; }
.ttl-logo .gf-jose{ display:block; color:#994126; font-size:0.9em; letter-spacing:0.05em }
#instagram .ttl-logo .con::before{ background-image:url(../img/i_insta_ttl.svg); }

.ttl-bo{ margin-bottom:1.5em; padding:0 0.2em 0.4em; font-size:1.2em; line-height: 1.5; border-bottom:2px solid #806a63; }
.copy{ margin-bottom:1.5em; font-size:1.2em; }

/* link */
.bnr{ display: block; margin:2em auto; text-align:center; }
.btn-bottom{ margin:2em auto 0; }

.arrow-btn{ display:inline-block; min-width:280px; padding:0.3em; text-align:center; text-decoration:none;
  letter-spacing:0.08em; color:#e0e0e0; background:#985535; }
.arrow-btn.gf-jose{ font-size:1.2em; }
.arrow-btn .con{ display:block; position:relative; padding:0.5em 1em 0.5em 1.5em; border:1px dashed #e0e0e0; }
.arrow-btn.gf-jose .con{ padding-top:0.3em; padding-bottom:0.1em; }
.arrow-btn .con::before{ position:absolute; content:""; width:18px; height:18px; left:0; top:calc(50% - 9px);
  background:url(../img/arrow_w.svg) no-repeat 0 0 / 100%; }

/*Coming Soonボタン*/
.invalid-btn{ display:inline-block; min-width:280px; padding:0.3em; text-align:center; text-decoration:none;
  letter-spacing:0.08em; color:#985535; background:#f0cec3; border:3px solid #985535; }
.invalid-btn.gf-jose{ font-size:1.5em; }
.invalid-btn .con{ display:block; position:relative; padding:0.5em 1em 0.5em 1.5em; border:1px dashed #985535; }
.invalid-btn.gf-jose .con{ padding-top:0.3em; padding-bottom:0.1em; }

/* テーブル */
.t-data{ width:100%; border-top:2px solid #7b7b7b; border-bottom:2px solid #7b7b7b; }
.t-data tr > *{ padding:0.5em 0.7em; border-right:1px solid #7b7b7b; border-bottom:1px solid #7b7b7b; }
.t-data tr > td:last-child, .t-data tr > th:last-child{ border-right:0; }

/* table */
.tbl { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0 20px; }
.tbl th { width:25%; padding:10px 20px; font-weight:400; background:rgba(198, 135, 117, 0.2); }
.tbl td { width:75%; padding-left:40px; }


/* List */
.list-dot { padding:1em 1em 0; }
.list-dot li { padding-left: 1em; position: relative; }
.list-dot li:not(last-child) { margin-bottom:0.5em; }
.list-dot li::before { content:""; position:absolute; top:.7em; left:0; width:6px; height:6px;
  background:#994126; border-radius:50%; }
.list-dot .style-none:before{ content:none; }

.d-list > div{ margin-bottom:1em; padding-bottom:0.8em; border-bottom:1px solid #806a63; }
.d-list > div:last-child{ border:0; }
.d-list > div > *{ padding:0 0.3em; }
.d-list .gf-jose{ font-size:1.35em; letter-spacing:0.08em; }

.time-list > div{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
.time-list > div > dt{ width:22%; }
.time-list > div > dd{ -webkit-box-flex:1; flex:1; }

.sq-pic li{ width:48%; margin:0 1% 1em; }
.sq-pic a{ display:block; position:relative; padding-top:100%; overflow: hidden; }
.sq-pic img { position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%, -50%); transform:translate(-50%, -50%); }

/* box */
.time-box{ padding:1.5em 1.5em; }
.time-box .gf-jose{ font-size:1.2em; }
.time-box .d-list > div{ margin:0; padding:0; border:0; }

.cover-pic img{ width:100%; }

.txt-2col .con-pic{ width:70%; margin:0 auto; }

/* takeoutバナー */
.bnr_takeout{ margin:3em auto; padding-top:1px; background:url(../img/top/bnr_takeout.jpg) no-repeat 50% 0 / 100%; }
.bnr_takeout a{ display:block; height:100%; }
.bnr_takeout .txt{ position:relative; margin:1em auto 0; padding:2.5em 0 1em; text-align:center;
  background:#e0e0e0; border:2px solid #985535; filter:drop-shadow(0 0 6px rgba(0, 0, 0, 0.08));
  -webkit-transition:all .3s; transition:all .3s; }
.bnr_takeout .txt::before{ position:absolute; content:""; width:58px; height:71px; top:-2em; left:calc(50% - 29px);
  background:url(../img/i_takeout.svg) no-repeat 0 0 / 100%; }
.bnr_takeout .txt .sub{ margin-bottom:0.3em; font-size: 1.3em; }
.bnr_takeout .txt p{ margin:0; }
.bnr_takeout .txt .copy{ margin-bottom:0.6em; }
.bnr_takeout .time{ display:inline-block; padding:0.5em 0.5em 0; font-size:1.25em; font-weight:700;
  color:#994126; border-top:1px dashed #985535; }
.bnr_takeout a:hover .txt{ color:#e0e0e0; background-color:rgba(158, 78, 39, 0.7); }
.bnr_takeout a:hover .time{ color:#e0e0e0; }

/* pop up COUPON */
#header .popup { position: fixed; left: 0; top: 0; width: 100%; height: 100%;
  z-index: 9999; opacity: 0; visibility: hidden; transition: .5s; }
#header .popup-inner { position: absolute; left: 50%; top: 55%; transform: translate(-50%,-50%);
  width:90%; max-width:700px; padding:2em; background-color: #e0e0e0; z-index: 2;
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, .1)); }
#header .popup.is-show { opacity: 1; visibility: visible; }
.coupon-contents{ padding:0.5em; text-align:center; line-height:1.5;
  letter-spacing:0.08em; color:#e0e0e0; background:#985535; }
.coupon-contents .con{ padding:1.5em 1em 1.2em; border:1px dashed #e0e0e0; }
.coupon-contents .txt{ margin:0.3em 0; font-size:2em; }
.coupon-notes{font-size:0.9em; }
.btn-primary{ cursor: pointer; }
.close-btn { position: absolute; right: 0; top:-3em; width: 40px; height: 40px; cursor: pointer; text-indent:-99999px; }
.close-btn:before{ position:absolute; content: ""; width:30px; height:30px; top:50%; left:50%;
  transform: translate(-50%,-50%); background: url(../img/close.svg) no-repeat 0 0 / 100%; }
.bg-popup { position: absolute; left: 0; top: 0; width: 100%; height: 100%;
  background-color: rgba(209, 163, 140, .8); z-index:1; cursor: pointer; }

/* 404 */
#error .con-box{ padding:4em 0; }

/* header ------------------------*/
.wrap-header{ position:relative; }
#header{ text-align:center; background:#e0e0e0; }
#header a{ display:block; text-decoration:none; }
#mv img{ width:100%; }

/* footer ------------------------*/
#footer { padding:2em 0 0; }
#footer a{ text-decoration:none; }
#footer .logo{ width:150px; margin:0 auto 2em; }
#footer .menu{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -webkit-justify-content:center; justify-content:center; margin-bottom: 2em; }
#footer .menu li{ margin:0 0.5em 0.5em; font-size:1.2em; }
#footer .menu a{ padding:0.5em; }

.copyright{ margin:3.5em 0 0; font-size:.9em; text-align:center; font-weight:700; }
#pagetop{ position:fixed; right:20px; width:76px; height:72px;
  margin:0; z-index: 99; }
#pagetop a{ display:block; position:relative; padding:34px 0 0; text-align:center; text-decoration:none; font-size:1.1em; color:#994126; }
#pagetop a::before{ position:absolute; content:""; width:50px; height:40px; left:calc(50% - 25px); top:0;
  background:url(../img/i_chicken.svg) no-repeat 0 0 / 100%; }

#footer .bg-dark{ padding:2em 0; }
#footer .f-info .con{ position:relative; margin-bottom:1.5em; padding:0 0.5em; }
#footer .f-info .con::before{ position:absolute; content:""; background:url(../img/doll_chef.png) no-repeat 0 0 / 100%; }
.contact-access a{ display:block; height:100%; padding:0.2em 0.3em; text-align:center; font-size:1.1em; color:#e0e0e0; }
.contact-access .gf-jose{ font-size:1.2em; }
.booking-btn{ background: #a9833a; }
.booking-btn a,
.policy-btn a { display:block; padding-top:0.5em; padding-bottom: 0.6em; text-align:center; color:#e0e0e0; }
.policy-btn{ background:#b76868; }
.tel-btn{ background:#985535; }
.tel-btn .gf-jose{ position:relative; padding-left:1.5em; font-size:1.4em; }
.tel-btn .gf-jose::before{ position:absolute; content:""; width:20px; height:20px; top:0; left:0.3em;
  background:url(../img/i_sp.svg) no-repeat 0 0 / 100%; }
.gmap-btn{ background:#50342c; }
.gmap-btn a{ display:block; padding-top:0.5em; text-align:center; color:#e0e0e0; }
.gmap-btn .gf-jose{ position:relative; padding-left:1em; }
.gmap-btn .gf-jose::before{ position:absolute; content:""; width:14px; height:20px; top:0; left:0;
  background:url(../img/i_map.svg) no-repeat 0 0 / 100%; }

.insta-btn{ background: #81222d; }
.insta-btn a{ display:block; padding-top:0.5em; text-align:center; color:#e0e0e0; }
.insta-btn .gf-jose{ position:relative; padding-left:1.4em; }
.insta-btn .gf-jose::before{ position:absolute; content:""; width:20px; height:20px; top:0; left:0;
  background:url(../img/i_insta.svg) no-repeat 0 0 / 100%; }

.fb-btn{ background: #476271; }
.fb-btn a{ display:block; padding-top:0.5em; text-align:center; color:#e0e0e0; }
.fb-btn .gf-jose{ position:relative; padding-left:1.4em; }
.fb-btn .gf-jose::before{ position:absolute; content:""; width:20px; height:20px; top:0; left:0;
  background:url(../img/i_fb.svg) no-repeat 0 0 / 100%; }

.line-btn{ width:100%; border:2px solid #372014; }
.contact-access .line-btn a{ padding:0; }
.line-btn a{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap;
 text-align:left; }
.line-btn .sub{ display: flex; flex-direction: column; justify-content: center; width:28%; padding:2em 0.8em 1em; text-align:center; font-size:0.85em; color:#e0e0e0; background:#487147; }
.line-btn .sub .pic{ display:block; }
.line-txt{ width:72%; height:100%; margin:0; padding:1.2em 1em; font-size: 0.9em; line-height: 1.6;
  color:#372014; background:#e0e0e0; }

#footer .menu.shopping_footer li > a{ position:relative; display: block; padding-right:1.5em; font-size:0.9em; }
#footer .menu.shopping_footer li > a::after{ position:absolute; content:""; width:13px; height:13px; right:0; top:1em;
  background:url(../img/arrow_b.svg) no-repeat 0 0 /100%; }

/* gnav ------------------------*/
#gnav { display:none; -webkit-transition:all .5s ease-in; transition:all .5s ease-in; }
#gnav.open { display:block; position:fixed; z-index:500;
  width:85%; top:0; right:0; bottom:0; padding:5em 0 0;
  background-color:rgba(224, 224, 224, 0.9);
  overflow-y: auto; -webkit-overflow-scrolling:touch; animation: Fade-In 0.5s forwards; }
#gnav + .overlay{ position: fixed; z-index:100; top: 0; right: 0; bottom: 0; left: 0;
    display: none; width: 100%; height: 100%;background-color:rgba(224, 224, 224, 0.3); }

#gnav a{ display:block; text-decoration:none; }
#gnav .logo{ width:80px; height:80px; margin:0 auto; }
#gnav.open .menu{ margin:0 auto 1.5em; }
#gnav.open .menu a{ padding:0.6em; }

.menu > li{ position:relative; font-family: 'Josefin Slab', serif; }
.menu > li a{ font-size:1.2em; font-weight:700; color:#5e4a2f; }

#gnav .booking{ font-size: 1.2em; padding: .8em 0; color:#e0e0e0; background:#a9833a; }
#gnav .policy { font-size: 1.2em; padding: .8em 0; color:#e0e0e0; background:#b76868; }
#gnav .tel{ font-size:1.8em; letter-spacing:0.05em; color:#e0e0e0; background:#985535; }
#gnav .coupon-web{ padding:1.4em 1.4em; color:#e0e0e0; background:#50342c; }
#gnav .coupon-web .ttl{ display:block; margin-bottom:0; font-size:1.1em; }
#gnav .bnr-covid19{ position:relative; padding:1.8em 1.8em; text-align:center; font-size:0.95em;
  color:#372014; background:#dcc0b7; }
#gnav .bnr-covid19::before{ position:absolute; content:""; width:20px; height:18px; right:1em; top:calc(50% - 9px);
  background:url(../img/arrow_b.svg) no-repeat 0 0 / 100%; }
#gnav .toplink, #gnav .doll-list, #gnav .doll_chef{ display:none; }
#gnav.open .toplink{ display:block; }
#gnav.open .doll-list{ display:-webkit-flex; display:flex; flex-wrap:wrap; }
#gnav.open .doll_chef{ display:block; width:px; height:120px; margin:1em auto; }
#gnav.open .christmas_BT{ display:block; width:px; height:120px; margin:1em auto; }
#gnav.open .doll-list .doll_chef{ width:80px; }
#gnav.open .doll-list .christmas_BT{ width:130px; }
#gnav.open .doll-list .h_bnr_special{ width:150px; margin:1em auto 1em 0; }
#gnav.open .booking,
#gnav.open .policy { padding:.75em 0; }
#gnav.open .coupon-web{ padding-top:1.5em; padding-bottom:1.5em; }
#header #gnav .shopping-nav a { margin: 0 0.5em; padding: 0.3em; color: #e0e0e0; background: #976f36; text-decoration: none; }
#header #gnav .shopping-nav a span { display: block;  position: relative; padding: 0.5em 1em 0.5em 1.5em; border: 1px dashed #e0e0e0; }
#header #gnav .shopping-nav a span::before {  position: absolute;   content: "";   width: 18px;  height: 18px;   right: 1em;   top: calc(50% - 9px);   background: url(../img/arrow_w.svg) no-repeat 0 0 / 100%; }
#header .menu > li.shopping-nav a:hover::before { content: none; }
#header #gnav .shopping-nav a:hover { background: #cfb277; }

/* Children Menu */
#gnav.open .menu > li > .toggle { position:absolute; top:0; right:0; width:2.8em; height:2.8em;
  cursor:pointer; /* background-color:#f4ddd6; */ }
#gnav.open .menu > li > .toggle::before {
  position:absolute; top:50%; left:50%;
  content:""; display:block; width:10px; height:10px;
  border-top:1px solid #994126;
  border-right:1px solid #994126;
  -webkit-transform:translate(-50%, -50%) rotate(135deg);
  transform:translate(-50%, -50%) rotate(135deg);
  }
#gnav.open .menu > li > .toggle.active::before {
  -webkit-transform:translate(-50%, -50%) rotate(-45deg);
  transform:translate(-50%, -50%) rotate(-45deg);
  }
.children-nav{ display: none; background-color:#e3d2cd; }

#gnav.open .menu > li .children-nav a{ padding:0.8em 0; font-size:0.9em; border-bottom:1px dashed #cead9e; }
#gnav.open .menu > li .children-nav a:first-child, #gnav.open .menu > li .children-nav a:last-child{ padding-top:1.2em; }

/* menuボタン */
.menu-button { width:100px; height:74px; text-align: center;
  cursor:pointer; transition:all .5s; -webkit-transition:all .5s; }
.menu-button,
.menu-button span { transition:all .5s; -webkit-transition:all .5s; box-sizing:border-box; }
.menu-button .h_menu { position:relative; }
.menu-button span { position:absolute; width:50%; height:2px; left:calc(50% - 25%); background-color:#994126; }
.menu-button span.gf-jose{ top:-7px; font-size:1.05em; background: none; color:#994126; }
.menu-button span:nth-of-type(2) { top: 23px; width:30%; }
.menu-button span:nth-of-type(3) { top: 30px; width:40%; }
.menu-button span:nth-of-type(4) { top: 37px; }

.menu-button.open span{ left: calc(50% - 25%); }
.menu-button.open span:nth-of-type(2) {
  -webkit-transform: translateY(4px) rotate(-45deg); width:50%;
  transform: translateY(6px) rotate(-45deg);
}
.menu-button.open span:nth-of-type(3) { width:50%;
  -webkit-transform:translateY(-1px) rotate(45deg);
  transform:translateY(0px) rotate(45deg);
}
.menu-button.open span:nth-of-type(4) { opacity:0; }
.menu-button.fade-in{ animation: Fade-In 0.8s; }
.open.menu-button { position:fixed; top:1em; right:1em; z-index:9999; }

@keyframes Fade-In {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }

/* cartボタン */
#cart{ position:fixed; right:6em; top: 1em; width:50px; height:50px; text-align: center; line-height:50px;
  background:#994126; border-radius:50%; z-index: 600; }
#cart .i-cart{ position:absolute; top: 50%; left: 50%; width:25px; text-align:center;
  -webkit-transform:translate(-40%, -55%); transform:translate(-40%, -55%); }

/* ================================================================
  レスポンシブ
=================================================================== */
/* 600以上(PC・タブレット) */
@media screen and (min-width: 600px) {
  .sec-box{ margin-bottom:5em; }
  .sq-pic{ margin-bottom:2em; }
  .sq-pic li{ width:23%; }

  /* title */
  [class*="ttl-"] { font-size:1.5em; }
  .ttl-col{ font-size:1.3em; }
  .ttl-logo .con .ttl{ letter-spacing:0.1em; }
  .sub.break .small{ margin-right:0.8em; }

  /* DL下線リスト */
  .d-list > div{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
  .d-list > div > dt{ width:20%; }
  .d-list > div > dd{ -webkit-box-flex:1; flex:1; }
  .time-box .d-list > div dt{ width:24%; }
  .time-list > div > dt{ width:15%; }

  /* pic-box */
  .pic-box:not(:last-child){ margin-bottom:5em; }
  .pic-box .txt{ padding:3em 3em 0.5em; }

  /* pic2col */
  .pic2col{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
  .pic2col .pic{ order:1; width:35%; margin-right:7%; }
  .pic2col .txt{ order:2; -webkit-box-flex:1; flex:1; }
  .pic2col.txt-2col .txt{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
  .txt-2col .con-txt{ -webkit-box-flex:1; flex:1; }
  .txt-2col .con-pic{ width:30%; margin-left:3%; }

  /* takeoutバナー */
  .bnr_takeout .txt{ width:45%; margin:2em auto 0; }
  .bnr_takeout .txt .sub{ font-size:1.5em; }
  .bnr_takeout .txt .copy{ font-size:1.1em; }

  /* footer */
  #footer .f-info .con::before{ width:141px; height:216px; right:1em; top:1em; }
  .contact-access{ -webkit-justify-content:space-between; justify-content:space-between; }
  .contact-access .booking-btn, .contact-access .tel-btn, .contact-access .gmap-btn,.contact-access .insta-btn, .contact-access .fb-btn{ margin-bottom:.8em; }
  .booking-btn{ width: 49%; }
  .tel-btn{ width:49%; }
  .gmap-btn{ width:49%; }
  .insta-btn{ width:49%; }
  .fb-btn{ width:49%; }

}

/* 960以上(PC) */
@media screen and (min-width: 960px) {
  .inner{ max-width:1100px; margin:0 auto; }
  ::selection { background:#e6cbbf; }
  ::-moz-selection { background:#e6cbbf; }

  .menu-button{ display:none; }
  .menu-button.fade-in, .menu-button.open{ display:block; }
  .menu-button.fade-in{ position: fixed; z-index: 9999; right: 1em; top: 1em; }

  .sub{ font-size:1.5em; }
  .copy{ margin-bottom:1.5em; font-size:1.45em; letter-spacing: 0.08em; }
  .in-box{ width:80%; margin:0 auto; }

  .arrow-btn .con{ padding:0.5em 2.5em 0.5em 3em; }
  .arrow-btn:hover{ color:#372014; background:#dfa990 !important; }
  .arrow-btn:hover .con{ border-color:#372014; }
  .arrow-btn:hover .con::before{ background-image:url(../img/arrow_b.svg); }

  /* header */
  .header-box{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
  #header{ width:16%; height: 100%; order:2; }
  #mv{ width:84%; height: 100%; order:1;  }
  #header .sitename{ width:145px; margin:0 auto 2.5em; padding-top:1.5em; }

  #gnav{ display:block; }
  .menu{ margin-bottom:2em; }
  .menu > li a{ padding:0.3em 0; font-size:1.4em; }
  .menu > li a::before{ position:absolute; content:""; width:100%; height:1px; left:0; bottom:0.4em; background:#806a63;
    -webkit-transform: scaleX(0); transform: scaleX(0);
    transition:all .5s; -webkit-transition:all .5s; }
  .menu > li a:hover::before{ -webkit-transform: scaleX(0.6); transform: scaleX(0.6); }
  #gnav .tel{ padding: 0.2em 0; font-size:1.8em; letter-spacing:0.05em; }
  #gnav.open{ width:30%; right:0; left: auto; }
  #gnav.open .menu > li a{ font-size:1.3em; }

  /* Children Menu */
  #gnav.open .menu > li .children-nav a::before{ content:none; }
  #gnav.open .menu > li .children-nav a:hover{ background:#dcc0b7; }

  /* footer */
  #footer{ font-size:0.95em; }
  #footer .bg-dark{ padding:3.5em 0 1.5em; }
  #footer .menu > li a{ padding:0.5em 0.8em; font-size:1.15em; }
  .f-info{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap;
    -webkit-justify-content:space-between; justify-content:space-between; }
  .f-info .txt{ width:100%; }
  .f-info .ttl-bo{ font-size:1.3em; }

  .f-info .txt { display: flex; flex-wrap: wrap; justify-content: space-between;}
  .f-info .ttl-bo { width: 100%;}
  #footer .f-info .con { width: 40%; margin-bottom: 0;}
  .time-list > div > dt { width: 23%;}
  #footer .f-info .con::before { width: 111px; height: 186px; right: -2em; top: 5em;}
  /* footer grid */
  .contact-access { width: 55%; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; list-style: none; padding: 0;}
  .contact-access .booking-btn, .contact-access .tel-btn, .contact-access .gmap-btn,.contact-access .insta-btn, .contact-access .fb-btn{ width: 100%; margin-bottom:0; }

  .booking-btn {
  grid-column: 1;
  grid-row: 1;
}
.tel-btn {
  grid-column: 1;
  grid-row: 3;
}

.gmap-btn {
  grid-column: 2;
  grid-row: 1;
}
.insta-btn {
  grid-column: 2;
  grid-row: 2;
}
.fb-btn {
  grid-column: 2;
  grid-row: 3;
}
.line-btn {
  grid-column: 1 / span 2; 
  grid-row: 4; 
  width: 100%;
  display: block;
}
  .f_addr { margin-top: 0;}

  /* takeoutバナー */
  .bnr_takeout{ width:760px; margin: 4em auto; padding-bottom:2em; }

  /* cartボタン */
  #header a#cart{ display:none; right:7.7em; top: 1em; }
  #header a#cart.fade-in{ display:block; }

}

@media screen and (min-width: 1280px) {
  /* pic-area */
  .wrap-pic-area{ position:relative; }
  .wrap-pic-area .txt{ width:55%; margin:0 auto; }
  .wrap-pic-area .txt p:not(.btn-bottom){ font-size:0.95em; }
  .pic-area li{ position:absolute; }
}

@media screen and (max-width: 1300px) {
  .inner{ max-width:1000px !important; }

  #header .sitename{ width: 160px; margin-bottom:1.8em; padding-top:1.5em; }
  #header .menu{ margin-bottom:2em; }
  #header .menu > li a{ /* padding: 0.5em 0; */ font-size: 1.4em; }
  #gnav .booking{ padding:1em 0.8em; }
  #gnav .tel{ font-size: 1.6em; }
  #gnav .coupon-web{ padding:1em 0.8em; }
  #gnav .bnr-covid19{ padding:1.4em 0.8em; }

}

@media screen and (max-width: 1279px) {

  /* pic-area */
  .wrap-pic-area .txt{ margin-bottom:4em; }
  .pic-area{ display:-webkit-flex; display:flex; -webkit-flex-wrap:wrap; flex-wrap:wrap;
    -webkit-justify-content:center; justify-content:center; }
  .pic-area li{ width:42%; }

}

@media screen and (max-width: 1024px) {

  #header .sitename{ width: 140px; margin-bottom:1.5em; }
  #header .menu{ margin-bottom:1em; }
  /* #header .menu > li a{ font-size: 1.2em; } */
  #gnav .booking{ font-size: 0.8em; }
  #gnav .tel{ font-size: 1.4em; }
  #gnav .coupon-web .ttl{ font-size: 0.8em; }
  #gnav .bnr-covid19{ padding:1em 0.8em; font-size: 0.8em; }

}

/* ================================================================
  タブレット
=================================================================== */
@media screen and (max-width: 959px) {
  body { font-size:15px; }
  .inner, .narrow { margin: 0 30px; }

  /* header ------------------------ */
  #header{ position:absolute; z-index:500; width:100%; height: 70px; }
  #header .sitename{ position:absolute; width:115px; left:1em; top:0; padding-top:0.5em; }
  .is-fixed #header .sitename{ position:fixed; z-index:999; }
  .menu-button{ position:fixed; width:70px; height:40px; right:1em; top:1em; font-weight:700; }
  #gnav{ padding-top:5em; }
  #gnav .booking{ font-size: 1.2em; }
  #gnav .tel{ font-size: 1.8em; padding: .2em 0;}
  #header .menu > li a{ font-size: 1.3em; }
  #gnav .coupon-web .ttl{ font-size: 1.2em; }
  .coupon-web .gf-jose{ font-size: 1.4em; }
  #gnav .bnr-covid19{ font-size: 1.1em; }

  #mv{ padding-top:70px; }

  /* takeoutバナー */
  .bnr_takeout{ width:85%; }
  .bnr_takeout .txt::before{ top: -2.5em; }

  /* footer */
  .f-info .txt{ margin-bottom:2.5em; }
  .wrap-fb{ text-align:center; }

}


/* ================================================================
  スマホ
=================================================================== */
@media screen and (max-width: 599px){
  body { font-size:14px; }
  .wide_inner,
  .inner, .narrow { margin: 0 15px; }

  /* header */
  #header .sitename{ width:130px; padding-top:0; z-index: 999; }
  .menu-button span.gf-jose{ top:-2px; }
  #gnav.open { width: 100%; }

  /* footer */
  .f-link{ -webkit-justify-content:space-between; justify-content:space-between; }
  #footer .f-info .con{ padding-bottom:140px; }
  #footer .f-info .con::before{ width:82px; height:122px; left:calc(50% - 41px); bottom:0; }
  .contact-access li{ width:100%; margin-bottom: .7em; }
  .insta-btn {margin-bottom:1em;}
  .wrap-fb{ width:100%; overflow: hidden; }

  /* coupon */
  .coupon-contents .txt{ font-size:1.5em; }
  .coupon-notes{ text-align:left; }

  /* pic2col */
  .pic2col .txt{ margin-bottom:2.5em; padding-right:1em; padding-left:1em; }
  .pic2col .pic{ width:90%; margin:0 auto; text-align:center; }

  /* DL下線リスト */
  .d-list > div{ margin-bottom:0; border:0; }
  .d-list > div > dt{ margin-bottom:0.8em; padding:0.2em 0.8em; background-color:rgba(158, 78, 39, 0.1); }
  .d-list > div > dd{ padding:0.4em 0.8em; }
  .time-box{ padding: 1em 1.5em; }
  .time-box .d-list{ text-align:center; }
  .time-box .d-list > div > dt{ margin:0; padding:0; background:none; }
  .time-box .d-list > div > dd{ margin-bottom:0.5em; padding-top:0; padding-bottom:0.5em; border-bottom:1px dashed #985535; }
  .time-box .d-list > div:last-child > dd{ margin:0; border:0; }

  .bg-green .d-list > div > dt{ background: #d8e4d4; }

  /* takeoutバナー */
  .bnr_takeout{ width:90%; }
  .bnr_takeout .txt{ width:85%; margin-top:10em; }

  .tbl th, .tbl td { width:100%; display:block; }
  .tbl th { padding:3px 10px; }
  .tbl td { padding:3px 10px 0; line-height:2; }

}
