@charset "UTF-8";
/*
    Template: sankatei
    Theme Name:sankatei CHILD
    Theme URI: 
    Description: sankateiの子テーマ
   
*/

.pc { display: block; }
.sp { display:none; }
@media screen and (max-width: 768px){ 

    .pc { display:none!important; }
    .sp { display: block; }
    .order1{ order: 1;}  
   .order2{ order: 2;}
   .order3{ order: 3;}  
   .order4{ order: 4;}

}


/* ====top */
.l-content {
    margin: 0 auto;
    padding-top: 2em;
    position: relative;
    z-index: 1;
}
.w-beforeFooter {
    margin: 0em auto;
    overflow: hidden;
}

.p-mainVisual__slideTitle {
    font-size: 3em;
    font-weight: bold;
}

@media screen and (max-width: 768px){ 
    .p-mainVisual__slideTitle {
    font-size: 1.8em;
    font-weight: bold;
}
h1.wp-block-heading.is-style-section_ttl.u-mb-ctrl.u-mb-10 {
    font-size: 1.5em;
}

}
.menu-box,.shop-box {
  position: relative;
  overflow: visible;
  /* background-color: #fff; */
  padding: 5% 10%;
  line-height: 2.5;
  box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.menu-box::after{
  content: "";
    position: absolute;
    border: 40px;
    width: 100%;
    height: 80px;
    background: url(/img/ttl_menu.svg) no-repeat left bottom;
    background-size: contain;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 1.5s ease, transform 1.5s ease;
    z-index: 2;
    bottom: -60px;
  
}
.shop-box::after{
  content: "";
    position: absolute;
    border: 40px;
    width: 100%;
    height: 80px;
    background: url(/img/ttl_shop.svg) no-repeat left top;
    background-size: contain;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 1.5s ease, transform 1.5s ease;
    z-index: 2;
    top: -60px;
  
}

.menu-box.in-view::after,
.shop-box.in-view::after{
  opacity: 1;
  transform: translateY(0);
}
.main-ttl{text-align: center;
    font-weight: 600;
    font-size: 1.5em;
    letter-spacing: 0.08em;
    color:#9F2F2F;
  
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);

}

@media screen and (max-width: 768px){ 
    .main-ttl {
    text-align: center;
    font-weight: 600;
    font-size: 1.2em;
    letter-spacing: 0em;
    color: #9F2F2F;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
    .menu-box::after {
    content: "";
    position: absolute;
    border: 40px;
    width: 44%;
    height: 34px;
    background: url(/img/ttl_menu.svg) no-repeat left bottom;
    background-size: contain;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 1.5s ease, transform 1.5s ease;
    z-index: 2;
    bottom: -49px;
    left: 10px;
}
.shop-box::after {
    content: "";
    position: absolute;
    border: 40px;
    width: 60%;
    height: 30px;
    background: url(/img/ttl_shop.svg) no-repeat left top;
    background-size: contain;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 1.5s ease, transform 1.5s ease;
    z-index: 2;
    top: -20px;
}

}
/* ----メニュー */



dl.menu-list >.menu-item {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    align-items: baseline;
}
/* .menu-item{
  display:flex;
  align-items: baseline;
  gap: 12px;
} */


/* 品名 */
.menu-item dt{
  margin:0;
  min-width: 0;
     font-weight: 400;
}

.menu-dots{
  flex: 1;
  height: 1px;
  transform: translateY(-0.2em);
  background-image: repeating-linear-gradient(
    to right,
    rgba(0,0,0,.35),
    rgba(0,0,0,.35) 2px,
    transparent 2px,
    transparent 6px
  );
}

.menu-subnote{
  margin-top: 10px;
  font-size: .92em;
  opacity: .8;
  line-height: 1.7;
}

/* 価格 */
.menu-item dd{
  margin:0;
  white-space: nowrap;
}

.menu-sp{ height: 28px; }

.lunch-pickup {
  display: grid;
  gap: 24px;
}

.lunch-pickup__img img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}

.lunch-pickup__ttl {
  font-weight: 600;
  margin: 8px 0 4px;
}

.lunch-pickup__txt {
  font-size: 0.9em;
  color: #555;
  line-height: 1.6;
}



.menu-drinkList{
  margin: 0;
  padding-left: 1.2em;
  columns: 2;
  column-gap: 28px;
}


.drink-set-box {
  margin-top: 30px;
  padding: 10px 15px;
  border: 1px solid #cfc6b8;
  background: #faf7f2;
}


.drink-set-ttl {
  font-weight: 600;
  font-size: 0.95em;
  margin-bottom: 12px;
  letter-spacing: 0.05em;
}


.menu-list.is-drink-set {
  font-size: 0.9em;
}
.menu-list--compact .menu-item {
  margin-bottom: 0px; 
}

.menu-list--compact dt,
.menu-list--compact dd {
  line-height: 1.2;
}
.menu-sub {
  font-size: 0.85em;
  opacity: 0.85;
  margin-right: 0.4em;
}
.menu-note{
  margin: 10px 0 26px;
  font-size: 14px;
  line-height: 1.6;
  color: #666;
}


@media (max-width: 768px){
  .menu-drinkList{ columns: 1; }
  .menu-noteItem{ grid-template-columns: 6.5em 1fr; }
}







/* ーーテーブル */


figure.wp-block-table.mobile-block table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}

/* セル共通 */
figure.wp-block-table.mobile-block th,
figure.wp-block-table.mobile-block td{
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  vertical-align: top;
  line-height: 1.8;
  /* font-size: 15px; */
}



/* 左列（ラベル） */
/* figure.wp-block-table.mobile-block th{
  width: 26%;
  font-weight: 700;
  color: rgba(0,0,0,.82);
  background: linear-gradient(180deg,#12918308, rgba(0,0,0,.02));
  border-right: 1px solid rgba(0,0,0,.08);
  position: relative;
} */

/* 左列にアクセントライン */
figure.wp-block-table.mobile-block th::before{
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: #129183;
}







/*お問い合わせ*/
.form_table {
    margin: 30px auto;
        border: 1px solid #ddd;
    background: #fafafa;
    padding: 5%;
}
.mw_wp_form input[name="__children[privacypolicy][]"] + .error {
    display : inline;
    padding-right:.5em;
}
.form_table dl{
    padding: 5px 20px!important;
}
.form_table dt.required:after {
    background: #9e445e66;
    bottom: 0;
    color: #000;
    content: "必須";
    display: inline-block;
    font-size: 0.5rem;
    height: 20px;
   margin: 5px; right: 10px;
    text-align: center;
    width: 30px;
}
.form_table dt.option:after {
    background: #72aee6a1;
    bottom: 0; */
    color: #000;
    content: "任意";
    display: inline-block;
    font-size: 0.5rem;
    height: 20px;
   margin: 5px; right: 10px;
    text-align: center;
    width: 30px;
}


label {
/*    display: inline-block;*/
    margin-bottom: 5px;
    font-weight: bold;
}
.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0px;
}
span.mwform-checkbox-field-text {
    display: none;
}

input.btn.send {
 background: #1579c3;
 color: #fff;

}
input.btn.back {
    background: #77777729;
}




select,input[type="text"] {
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 100%;
    border: #444 solid 1px;
    height: 30px;
    width: 100%;
    background: #fff;
    
}
textarea {
    width: 100%;
    background: #fff;
    border:#444 solid 1px;
}

textarea#text {
    height: auto;
}

input[type="hidden"] {
    height: auto;
}
input[type="checkbox"] {
    height: auto;
}

p.check {
    margin-bottom: 2%;
}

input.InquiryButton.-back {
    width: 100%;
    margin-top: 20px;
    padding: 1%;
    height: auto;
}

select {
  -moz-appearance: menulist;
  -webkit-appearance: menulist;
}
/*お問い合わせここまで*/