@charset "utf-8";
/* CSS Document */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■   　デフォルト   　■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li,
h1, h2, h3, h4, h5,h6{
  border: 0;
  margin: 0;
  padding: 0;
  font-size:14px;
  font-family: a-otf-ryumin-pr6n, serif;
  font-weight: 300;
  font-style: normal;
  color: #000;
  letter-spacing: 0.1em;
}


h1, h2, h3, h4, h5,h6{
  font-weight: normal;
}

html,body {
  line-height: 1;
  width: 100%;
  height: 100vh;
  position: relative;
}
ol, ul {
  list-style: none;
}
a{
  outline:none;
  text-decoration:none;
  cursor: pointer;
  }
a img {
  border: none;
  border-style:none;
}

img{
  width: 100%;
  height: auto;
}

li{
  list-style:none;
}
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

body{
  position: relative;
  background: url(../images/bg.jpg) repeat;
  background-size:300px;
}

/*■■■■■■■■　common　■■■■■■■■*/



/*■■■■■■■■　animate　■■■■■■■■*/


header #standard{
  width: 100%;
  height: 80px;
  position: relative;
  left: 0;
  top: 0;
  transition: all 0.2s ease-in-out;
  opacity: 0;
  z-index: 9998;
  background: #FFF;
}

header #standard.active{
  width: 100%;
  height: 80px;
  position: fixed;
  left: 0;
  top: 0;
  transition: all 0.2s ease-in-out;
  opacity: 1;
  z-index: 9998;
  background: #FFF;
}



header #open{
  position: fixed;
  width: 100%;
  height: 100vh;
  height: 100%;
  background: #FFF;
  left:0;
  top: 0;
  z-index: -1;
  opacity: 0;
  transition: all 0.3s ease;
}

header #open.active{
  opacity: 1;
  z-index: 9999;
}

header #open h2{
  width:100px; 
  transform: translateX(0px);
  transition: all 0.2s ease-out;
  transition-delay:0.1s;
}

header #open.active h2{
  width:100px; 
  transform: translateX(0px);
  opacity: 1;
}

header #open ul li:nth-child(1){
  transform: translateX(-30px);
  transition: all 0.5s ease;
  transition-delay:0.2s;
  opacity: 0;
}

header #open ul li:nth-child(2){
  transform: translateX(-30px);
  transition: all 0.5s ease;
  transition-delay:0.3s;
  opacity: 0;
}
header #open ul li:nth-child(3){
  transform: translateX(-30px);
  transition: all 0.5s ease;
  transition-delay:0.4s;
  opacity: 0;
}
header #open ul li:nth-child(4){
  transform: translateX(-30px);
  transition: all 0.5s ease;
  transition-delay:0.5s;
  opacity: 0;
}

header #open.active ul li:nth-child(1){
  transform: translateX(0px);
  opacity: 1;
}
header #open.active ul li:nth-child(2){
  transform: translateX(0px);
  opacity: 1;
}
header #open.active ul li:nth-child(3){
  transform: translateX(0px);
  opacity: 1;
}
header #open.active ul li:nth-child(4){
  transform: translateX(0px);
  opacity: 1;
}

header #open .reserved{
  opacity: 0;
  transition: all 1s ease-out;
  transition-delay:0.4s;
}

header #open.active .reserved{
  transform: translateX(0px);
  opacity: 1;
}



header #standard h1{
  width:140px; 
  position: absolute;
  top:5px;
  left:8px;
}


header #standard h1 a{
  padding: 15px;
  display: block;
}

header #standard .navOpen{
  width: 26px;
  position: absolute;
  top: 23px;
  right: 24px;
  cursor: pointer;
}

header #open nav ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 0;
  margin: 20px 0;
  gap: 15px;
  text-align: center;
}

header #open nav li {
  list-style: none;
  font-size: 1.1em;
  line-height: 1.4;
}

header #open nav ul li a {
  text-decoration: none;
  color: #000;
  letter-spacing: 0.02em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.4;
}

header .navClose{
  position: absolute;
  top: 30px;
  right:18px;
  width: 25px;
  z-index: 9999;
  cursor: pointer;
}

header #standard .language-switcher{
  position: static;
  cursor: pointer;
}

header .language-switcher .lang {
  cursor: pointer;
  position: relative;
  padding-bottom: 6px;
  color: #000;
  font-weight: bold;
}

header .language-switcher .lang.active::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #000;
}

header #standard .reservation-button{
  position: static;
  cursor: pointer;
  background-color: #ae1d23;
  color: white;
  padding: 8px 16px;
  border-radius: 24px;
  font-weight: bold;
  margin-left: 12px;
  text-decoration: none;
}

header #standard .nav-group {
  position: absolute;
  top: 20px;
  right: 72px;
  display: flex;
  gap: 10px;
  align-items: center;
}


header #open .wrap{
  height: 430px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -215px;
  /*margin-left: -75px;*/
    margin-left: -85px;
  z-index: 9999;
}
header .wrap h2{
  width: 150px;
  margin: 0 auto 40px;
}

header .wrap ul{
  padding-bottom:50px;
}
header .wrap ul li{
  padding-bottom:20px;
  margin: 0 auto;
}

header .wrap ul li:nth-child(1){
  width: 62.25px;
}
header .wrap ul li:nth-child(2){
  /*width: 64.91px;*/
}
header .wrap ul li:nth-child(2) dl dt{
  width: 64.91px;
    margin: 0 auto;
}
header .wrap ul li:nth-child(3) dl dt{
  width: 70.28px;
  margin: 0 auto;
}
header .wrap ul li:nth-child(4){
  width: 70.30px;
}
header .wrap ul li:last-child{
  padding-bottom: 0;
}

header .wrap ul li a{
  transition: all 0.1s ease-in; 
}
header .wrap ul li a:hover{
  opacity: 0.3;
}

header .wrap ul li dl dt{
  padding-bottom: 5px;
}

header .wrap ul li dl dd{
    text-align: center;
}


header .wrap ul li dl dd a{
  display:inline-block;
  padding: 8px 5px;
  text-align: center;
  font-size: 14px;
  color: #555
}


header .wrap .reserved a{
  width: 140px;
  margin:0 auto;
  background: #000;
  display: block;
  text-align: center;
}
header .wrap .reserved a img{
  width: 38px;
  text-align: center;
  padding: 15px;
}




#top #mv{
  width: 100%;
  height: 70vh;
  margin-bottom: 250px;
  position: relative;
  background: #EEE;
  transform: translateY(80px);
}


#top #mv h2{
  width: 150px;
  position: absolute;
  bottom: 80px;
  right:5%;
  z-index: 100;

}

#top #mv .mv-copy {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 90%;
  color: rgba(255, 255, 255, 0.95);
  font-size: 2.8vw;
  font-family: "Shippori Mincho", serif;
  white-space: nowrap;
  line-height: 2.2;
  text-align: center;
  z-index: 2;
}

#top #mv .bx-wrapper {
  width: 100% !important;
  height: 100% !important;
}

#top #mv .bx-viewport {
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
}

#top #mv ul.slider{
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
  z-index:1;
}

#top #mv ul.slider li{
  width: 100% !important;
  height: 100% !important;
}

#top #mv ul.slider li:nth-child(1) div{
  background: url(../images/mv01.jpg) no-repeat right 25% center;
  background-size: cover;
  position: relative;
}
#top #mv ul.slider li:nth-child(2) div{
  background: url(../images/mv02.jpg) no-repeat left center;
  background-size: cover;
  position: relative;
}
#top #mv ul.slider li:nth-child(3) div{
  background: url(../images/mv03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#top #mv ul.slider li:nth-child(4) div{
  background: url(../images/mv04.jpg) no-repeat right center;
  background-size: cover;
  position: relative;
}
#top #mv ul.slider li:nth-child(5) div{
  background: url(../images/mv05.jpg) no-repeat right center;
  background-size: cover;
  position: relative;
}

#top #mv ul.slider li div{
  width: 100% !important;
  height: 100% !important;
  animation-duration: 30s;
  animation-name: zoom;
  transition-timing-function:ease-in-out;
  background: center / cover no-repeat;
  opacity: 0.7;
}

@keyframes zoom {
    0% {
     transform: scale(1.1);
     opacity: 1;
    }
    100% {
      transform: scale(1.0);
      opacity: 0.7
    }
}

#top #nenmatsu_open{
  width:100%;
  margin: 0 auto 60px;
  position: relative;
}
#top #nenmatsu_open h3,
#top #nenmatsu_open dl dt,
#top #nenmatsu_open dl dd{
  text-align: center;
}

#top #nenmatsu_open h3{
  width: 90%;
  margin: 0 auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 4px 0;
  margin-bottom: 20px;
}
#top #nenmatsu_open h3 strong{
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  display: block;
  padding: 20px 25px;
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  letter-spacing: 0.1em;
}

#top #nenmatsu_open p{
  font-size: 14px;
  line-height: 28px;
  width: 80%;
  margin: 0 auto;
  font-weight: normal;
  letter-spacing: 0.1em;
  padding-bottom: 20px;
  text-align: center;
}

#top #nenmatsu_open dl {
  display: flex;
  flex-direction: column;
  align-items: center; /* 中央配置 */
  text-align: center; /* テキストを中央揃え */
}

#top #nenmatsu_open dl dt{
  width: 90%;
  margin: 0 auto;
  font-size: 20px;
  line-height: 32px;
  font-weight: bold;
  /*letter-spacing: 0.2em;*/
  padding-bottom: 5px;
  text-align: center; /* dt（タイトル）の中央配置 */
}
#top #nenmatsu_open dl dd{
  font-size: 14px;
  line-height:24px;
  font-weight: normal;
  letter-spacing: 0.1em;
  width: 90%;
  margin: 0 auto 30px;
  text-align: left;
  text-align: center; /* dd（説明文）の中央配置 */
}

#top #nenmatsu_open dl dd span{
  font-size: 12px;
    border:solid 1px #ADADAD;
    padding: 5px;
    display: block;
    margin-top: 5px;
}



#top .sec01{
  width:100%;
  margin: 0 auto 150px;
  position: relative;
}


#top .sec01 h2{
  width: 120px;
  position: absolute;
  top:50%;
  left:5%;
  z-index: 50;
  margin-top: -8px;
}

#top .sec01 .sec01-title {
  position: absolute;
  top: 48%;
  left: 0;
  font-size: 1.6rem;
  line-height: 2.8rem;
  font-family: "Shippori Mincho", serif;
  color: #444;
  padding-left: 5%;
  z-index: 2;
}


#top .sec01 .image01{
  width:90%;
  height:0;
  padding-bottom: 54%;
  background: url(../images/sec01_img01.png) no-repeat;
  background-size: 100%;
  position: relative;
}

#top .sec01 .image01 h3{
  width: 200px;
  position: absolute;
  top:-5px;
  left:0px;
}

#top .sec01 .image02{
  width:60%;
  height: 0;
  padding-bottom: 38%;
  background: url(../images/sec01_img02.png) no-repeat;
  background-size:100%;
  position: relative;
  margin-top: -20px;
  margin-left: 40%;
}

#top .sec01 .image02 h3{
  width:150px;
  position: absolute;
  bottom:-3px;
  right: 0;
}

#top .sec01 a{
  display: block;
  position: absolute;
  left: 50%;
  bottom:-75px;
  color: #808080;
  border-top: #808080 1px solid;
  border-bottom: #808080 1px solid;
  width: 200px; 
  padding: 15px 0;
  margin-left: -100px;
  text-align: center;
  background: url(../images/arrow.svg) no-repeat center right 10px;
  background-size: 4px;
  transition: all 0.2s ease;
}

#top .sec02{
  width:100%;
  margin: 0 auto 150px;
  position: relative;
  
}

#top .sec02 h2{
  width: 92px;
  position: absolute;
  top:50%;
  right:7%;
  z-index: 50;
  margin-top: -10px;
}

#top .sec02 .image01{
  width:90%;
  height:0;
  padding-bottom: 54%;
  background: url(../images/sec02_img01a.png) no-repeat;
  background-size: 100%;
  position: relative;
  margin-left:10%;
}

#top .sec02 .image01 h3{
  width:200px;
  position: absolute;
  bottom:20px;
  right: 20px;
}

#top .sec02 .image02{
  width:60%;
  height: 0;
  padding-bottom: 38%;
  background: url(../images/sec02_img02a.png) no-repeat;
  background-size:100%;
  position: relative;
  margin-top: -20px;
}

#top .sec02 .image02 h3{
  width:188px;
  position: absolute;
  top:-68px;
  right: -180px;
}

#top .sec02 a{
  display: block;
  position: absolute;
  left: 50%;
  bottom:0;
  color: #808080;
  border-top: #808080 1px solid;
  border-bottom: #808080 1px solid;
  width: 200px; 
  padding: 15px 0;
  margin-left: -100px;
  text-align: center;
  background: url(../images/arrow.svg) no-repeat center right 10px;
  background-size: 4px;
  transition: all 0.2s ease;
  bottom:-75px;
}

#top .sec01 a:hover,
#top .sec02 a:hover{
  background: url(../images/arrow.svg) no-repeat center right 8px;
  background-size: 4px;
  color: #a0a0a0;
  border-top: #a0a0a0 1px solid;
  border-bottom: #a0a0a0 1px solid;
}


#top .sec02 .submenu{
  position: absolute;
  left: 50%; /* 横方向中央 */
  bottom: -138px;
  transform: translateX(-50%); /* 水平中央に調整 */
  line-height: 20px;
  text-align: center;
  transition: all 0.2s ease;
}

#top .sec02 .submenu dd {
  display: inline;
  position: static;
  border-top: none;
  border-bottom: none;
  padding: 0px;
  margin-left: 0px;
  text-align: center;
  background: none;
  background-size: none;
  transition: all 0.2s ease;
  font-size: 13px;
  color: #555555;
  white-space: nowrap; /* 折り返しなし */
  margin-bottom: 10px; /* 下方向に10pxのスペースを追加 */
  margin-right: 10px;  /* 右方向に10pxのスペースを追加 */
}

#top .sec03{
  width:100%;
  background: #FFF
}

#top .sec03 .map{
  /*display: none;*/
}
#top .sec03 .map div {
  width: 100%;
  height: 0;
  padding-bottom: 50%;
  background: url(../images/map_web.jpg) no-repeat center;
    background-size: auto;
  background-size: 90%;
}

#top .sec03 .txt_area{
  width: 100%;
}


#top .sec03 .txt_area dl{
  width: 100%;
  padding:40px 0;
  background: url(../images/map_bg.png) no-repeat center #777;
  background-size:cover;
}

#top .sec03 .txt_area dl dt{
  width: 125px;
  margin: 0 auto 20px;
}
#top .sec03 .txt_area dl dd{
  text-align: center;
}
#top .sec03 .txt_area dl dd p{
  color: #FFF;
  font-size: 13px;
  line-height: 24px;
  margin-bottom: 20px;
}

#top .sec03 .txt_area dl dd a.add{
  font-size: 13px;
  line-height: 24px;
  color: #FFF;
}

#top .sec03 .txt_area dl dd a.tel{
  font-size: 20px;
  line-height: 30px;
  color: #FFF;
}


#top .sec03 .txt_area dl dd a.btn{
  display: block;
  /*width: 200px;*/
    width: 250px;
  padding: 15px 0;
  margin: 0 auto;
  color: #FFF;
  border: 1px solid #FFF;
  font-size: 12px;
  border-radius: 10px;
  background: url(../images/arrow_w.svg) no-repeat right 15px center;
  background-size: 5px;
    margin-bottom: 5px;
}

#top .sec04{
  width:100%;
  background: #444;
  padding-bottom: 54px;
}

#top .sec04 .wrap{
  width: 90%;
  margin: 0 auto;
  padding: 20px 0;
}
#top .sec04 .bx-wrapper {
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 64.5%;
}

#top .sec04 .bx-viewport {
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 64.5%;
  left: 0;
  box-shadow: none;
  border: none;
}

#top .sec04 ul.recruit_slider{
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 64.5%;
}

#top .sec04 ul.recruit_slider li{
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 64.5%;
}


#top .sec04 ul li{
  position: relative;
}

#top .sec04 ul li a div{
  /*width: 250px;
  position:absolute;
  bottom: 20px;
  left: 50%;
  background: url(../images/staff_btn_bg.svg) no-repeat;
  background-size: 250px;
  line-height: 65px;
  margin-left: -125px;
  text-align: center;*/
    width: 250px;
  position:relative;
  bottom: 5px;
  left: 50%;
  background: url(../images/staff_btn_bg.svg) no-repeat;
  background-size: 250px;
  line-height: 65px;
  margin-left: -125px;
  text-align: center;
}
#top .sec04 ul li a div:before{
  content: "";
  width: 4px;
  height: 9px;
  background: url(../images/arrow.svg) no-repeat right center;
  background-size: 4px;
  position:absolute;
  top: 50%;
  right: 20px;
  margin-top: -3px;
}

.web_reserve{
  width:100%;
  background: #000;
  padding: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5000
}


.web_reserve a{
  display: block;
  color: #FFF;
  width: 90%;
  margin: 0 auto;
  text-align: center;
  /*padding: 20px 0;*/
    padding: 25px 0;
  background: url(../images/arrow_w.svg) no-repeat right 20px center;
  background-size: 4px;
  border-radius: 2px;
    font-size: 16px
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■ こだわり ■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

#kodawari #mv{
  width:100%;
  height: 70vh;
  background: transparent;
  position: relative;
  background-size:cover;
  transform: translateY(80px);
  overflow: hidden;
  margin-bottom: 40px;
}

#kodawari #mv .mv1-heading {
  position: absolute;
  top: 72%;
  left: 58%;
  transform: translate(-50%, -50%);
  width: 90%;
  font-size: 18px;
  text-align: center;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.95);
}


#kodawari #mv h2{
  width: 90px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -45px;
  margin-top: -200px;
    z-index:10;
}

#kodawari #mv figure{
  width: 320px;
  position: absolute;
  bottom: -60px;
  right: -190px;
    z-index:10;
}

#kodawari #video_pc{
    display: none;
}



#kodawari #mv .bx-wrapper {
  width: 100% !important;
  height: 100% !important;
    background: transparent;
}

#kodawari #mv .bx-viewport {
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
    background: transparent;
}

#kodawari #mv .kodaMv_slider{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 1;
    background: transparent;
}


#kodawari #mv .kodaMv_slider li{
  width: 100% !important;
  height: 100% !important;
    background: transparent;
}

#kodawari #mv .kodaMv_slider li:nth-child(1) div{
  background: url(../images/kodawari_mv_slide01.jpg) no-repeat right 25% center;
  background-size: cover;
  position: relative;
}
#kodawari #mv .kodaMv_slider li:nth-child(2) div{
  background: url(../images/kodawari_mv_slide02.jpg) no-repeat left center;
  background-size: cover;
  position: relative;
}
#kodawari #mv .kodaMv_slider li:nth-child(3) div{
  background: url(../images/kodawari_mv_slide03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}

#kodawari #mv .kodaMv_slider li div{
  width: 100% !important;
  height: 100% !important;
  animation-duration: 25s;
  animation-name: zoom_;
  transition-timing-function:ease-in-out;
  background: center / cover no-repeat;
  opacity: 0.7;
}

@keyframes zoom_ {
    0% {
     transform: scale(1.1);
     opacity: 1;
    }
    100% {
      transform: scale(1.0);
      opacity: 0.7
    }
}



.mask {
  -webkit-mask-image: url('../images/mask.png');
  mask-image: url('../images/mask.png');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: top;
  mask-position: bottom;
  -webkit-mask-size: 170%;
  mask-size: 170%;
}




#kodawari .sec01{
  width:100%;
  overflow:hidden;
}
#kodawari .sec01 .wrap{
  width: 80%;
  margin: 0 auto;
  position: relative;
  z-index: 500;
  padding-bottom: 30px;
}
#kodawari .sec01 .wrap .left{
  width: 100%;
  margin: -66px auto 0;
  position: relative;
  z-index: 1000;
}
#kodawari .sec01 .wrap .left figure{
  width: 60px;
  padding-left: 20px;
}
#kodawari .sec01 .wrap .left .box{
  background: url(../images/kodawari_title_bg.png) no-repeat bottom right;
  background-size: cover;
  margin-top: -4px;
}
#kodawari .sec01 .wrap .left .box dl{
  width:80%;
  padding:38px 10%;
}
#kodawari .sec01 .wrap .left .box dl dt{
  width: 320px;
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.95);
}
#kodawari .sec01 .wrap .left .box dl dd{
  color: #FFF;
  font-size: 13px;
  line-height: 24px;
  letter-spacing: 0.1em;
}

#kodawari .sec01 .wrap .right{
  width: 100%;
  z-index: 1000;
}
#kodawari .sec01 .wrap .right h4{
  width: 60px;
  position: absolute;
  right: -35px;
  top: 10px;
  z-index: 800;
}



#kodawari #mv2{
  width:100%;
  height: 70vh;
  position: relative;
  background: url(../images/kodawari_mv02.png) no-repeat bottom center;
  background-size:cover;
  overflow: hidden;
}

#kodawari #mv2 h2{
  width: 70px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -35px;
  margin-top: -180px;
    z-index:10;
}

#kodawari #mv2 .mv2-heading {
  position: absolute;
  top: 84%;
  left: 58%;
  transform: translate(-50%, -50%);
  width: 90%;
  font-size: 18px;
  text-align: center;
  line-height: 1.6;
}

#kodawari #mv2 figure{
  width: 400px;
  position: absolute;
  bottom: 0;
  right:-20%;
}

#kodawari .sec02{
  width:100%;
  overflow:hidden;
}
#kodawari .sec02 .wrap{
  width: 80%;
  margin: 0 auto;
  position: relative;
  z-index: 500;
  padding-bottom: 50px
}
#kodawari .sec02 .wrap .right{
  width: 100%;
  position: relative;
  z-index: 1000;
  margin: -61px auto 0;
}
#kodawari .sec02 .wrap .right figure{
  width: 60px;
  padding-left: 240px;
}
#kodawari .sec02 .wrap .right .box{
  background: url(../images/kodawari_title_bg.png) no-repeat right bottom;
  background-size:cover;
  margin-top: -6px;
}
#kodawari .sec02 .wrap .right .box dl{
  width: 80%;
  padding:38px 10%;
}
#kodawari .sec02 .wrap .right .box dl dt{
  width: 320px;
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.95);
}
#kodawari .sec02 .wrap .right .box dl dd{
  color: #FFF;
  font-size: 13px;
  line-height: 24px;
  letter-spacing: 0.1em;
}

#kodawari .sec02 .wrap .left{
  width: 100%;
  z-index: 1000;
}


#kodawari .sec01 .wrap .right .bx-wrapper,
#kodawari .sec01 .wrap .right .bx-viewport,
#kodawari .sec01 .wrap .right ul.koda1_slider,
#kodawari .sec01 .wrap .right ul.koda1_slider li,
#kodawari .sec01 .wrap .right ul.koda1_slider li div,
#kodawari .sec02 .wrap .left .bx-wrapper,
#kodawari .sec02 .wrap .left .bx-viewport,
#kodawari .sec02 .wrap .left ul.koda2_slider,
#kodawari .sec02 .wrap .left ul.koda2_slider li,
#kodawari .sec02 .wrap .left ul.koda2_slider li div{
  width: 100% !important;
  height: 0 !important;
  padding-bottom: 85.7%;
  left: 0;
  box-shadow: none;
  border: none;
}


#kodawari .sec01 .wrap .right ul.koda1_slider li:nth-child(1) div{
  background: url(../images/kodawari01_img01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#kodawari .sec01 .wrap .right ul.koda1_slider li:nth-child(2) div{
  background: url(../images/kodawari01_img02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#kodawari .sec01 .wrap .right ul.koda1_slider li:nth-child(3) div{
  background: url(../images/kodawari01_img03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}

#kodawari .sec02 .wrap .left ul.koda2_slider li:nth-child(1) div{
  background: url(../images/kodawari02_img01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#kodawari .sec02 .wrap .left ul.koda2_slider li:nth-child(2) div{
  background: url(../images/kodawari02_img02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#kodawari .sec02 .wrap .left ul.koda2_slider li:nth-child(3) div{
  background: url(../images/kodawari02_img03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#kodawari .sec02 .wrap .left ul.koda2_slider li:nth-child(4) div{
  background: url(../images/kodawari02_img04.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}

#kodawari .bx-controls{
  position: absolute;
  bottom: 10px;
  right:10px;
  z-index: 999 
}
#kodawari .sec02 .wrap .left .bx-controls{
  position: absolute;
  bottom: 10px;
  left:10px;
  z-index: 999 
}

#kodawari .bx-pager-item{
  display: inline-block;
  width: 10px;
  height: 10px;
  margin:0 4px;
}
#kodawari .bx-pager-item a{
  display:block;
  text-indent: -9999px;
  background:#FFF;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  cursor: pointer;
}
#kodawari .bx-pager-item a.active{
  background:#000;
}



#kodawari .sec03{
  width:100%;
  margin-bottom: 40px;
  position: relative;
  overflow:hidden;
}

#kodawari .sec03 .wrap{
  width:calc(90%-130px);
  margin-left:10%;
  transform: translateX(130px);
  overflow-x:scroll;
  overflow-y:hidden;
}


#kodawari .sec03 .wrap div{
  width: 421px;
  padding-right: 155px;
}

#kodawari .sec03 #title{
  width: 130px;
  position: absolute;
  top: 0;
  left:10%; 
}

#title


#kodawari .sec04{
  padding-bottom: 84px;
}
#kodawari .sec04 a{
  display: block;
  background: url(../images/low_btn_bg.svg) no-repeat;
  background-size: 100%;
  width: 255px;
  line-height: 45px;
  text-align: center;
  font-size: 16px;
  color: #FFF;
  margin: 0 auto;
}
#kodawari .sec04 a:hover{
  opacity: 0.8;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■ お品書き ■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


#menu #mv{
  width:100%;
  margin-bottom: 50px;
  height: 50vh;
  position: relative;
  background-size:cover;
}

#menu #mv h2{
  width:200px;
  position: absolute;
  bottom:-22px;
  left:20px;
  z-index: 999;
}

#menu #mv figure{
  width: 40px;
  position: absolute;
  bottom: -20px;
  right: 30px;
  z-index: 999;
}



#menu #mv .bx-wrapper,
#menu #mv .bx-viewport,
#menu #mv ul.menu_slider,
#menu #mv ul.menu_slider li,
#menu #mv ul.menu_slider li div{
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
}


#menu #mv ul.menu_slider li:nth-child(1) div{
  background: url(../images/menu_img01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#menu #mv ul.menu_slider li:nth-child(2) div{
  background: url(../images/menu_img02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#menu #mv ul.menu_slider li:nth-child(3) div{
  background: url(../images/menu_img03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#menu #mv ul.menu_slider li:nth-child(4) div{
  background: url(../images/menu_img04.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}


#menu .sec01{
  width:85%;
  margin: 0 auto
}

#menu .sec01 .wrap h3{
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  font-size: 14px;
  letter-spacing: 0.2em;
  width: 220px;
  margin: 0 auto 40px;
  padding: 15px 0;
  text-align: center;
}


#menu .sec01 .wrap .left{
  padding-bottom: 30px;
}


#menu .sec01 .wrap .menuList{
  padding-bottom: 40px;
  margin-bottom: 40px;
  position: relative;
}

#menu .sec01 .wrap .menuList.last{
  padding-bottom: 0px;
  margin-bottom: 50px;
  position: relative;
}

#menu .sec01 .wrap .menuList:before{
  content: "";
  width: 36px;
  height: 1px;
  position: absolute;
  bottom:0;
  left: 50%;
  margin-left: -18px;
  background: #000;
}

#menu .sec01 .wrap .menuList.last:before{
  content: "";
  width: 0;
  height: 0;
}

#menu .sec01 .wrap .right #circle{
  width: 180px !important;
  height: 180px !important;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 40px;
}

#menu .sec01 .wrap .right .bx-wrapper,
#menu .sec01 .wrap .right .bx-viewport,
#menu .sec01 .wrap .right ul.menu_slider2,
#menu .sec01 .wrap .right ul.menu_slider2 li,
#menu .sec01 .wrap .right ul.menu_slider2 li div{
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
}


#menu .sec01 .wrap .right ul.menu_slider2 li:nth-child(1) div{
  background: url(../images/menu_sub_slide01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#menu .sec01 .wrap .right ul.menu_slider2 li:nth-child(2) div{
  background: url(../images/menu_sub_slide02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#menu .sec01 .wrap .right ul.menu_slider2 li:nth-child(3) div{
  background: url(../images/menu_sub_slide03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}



#menu .sec01 .wrap .menuList dl{
  padding-bottom: 20px;
}
#menu .sec01 .wrap .menuList dl dt,
#menu .sec01 .wrap .menuList dl dd,
#menu .sec01 .wrap .menuList p{
  text-align: center;
}
#menu .sec01 .wrap .menuList dl dt{
  font-size: 13px;
  padding-bottom: 20px;
  letter-spacing: 0.2em;
}
#menu .sec01 .wrap .menuList dl dd span{
  font-size: 10px;
  line-height: 18px;
  padding-top: 20px;
  display: block;
}
#menu .sec01 .wrap .menuList dl dd{
  font-size:16px;
  letter-spacing: 0.2em;
}

#menu .sec01 .wrap .menuList p{
  font-size: 12px;
  line-height: 20px;
}
#menu .sec01 .wrap .menuList p span{
  font-size: 11px;
  line-height: 40px;
  color: #666666;
}


#menu .sec01 .wrap h4{
  font-size: 16px;
  text-align: center;
  padding-bottom: 30px;
}

#menu .sec01 .wrap .menuList ul li{
  padding-bottom: 25px;
  text-align: center;
  font-size: 12px;
}





#menu .sec03{
  width:100%;
  padding-bottom: 84px;
}

#menu .sec03 a{
  display: block;
  background: url(../images/low_btn_bg.svg) no-repeat;
  background-size: 100%;
  width: 255px;
  line-height:45px;
  text-align: center;
  font-size: 15px;
  color: #FFF;
  margin: 0 auto;
}
#menu .sec03 a:hover{
  opacity: 0.8;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■ お品書き（新） ■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


#oshinagaki #mv{
  width:100%;
  margin-bottom:50px;
  height: 35vh;
  position: relative;
  background-size:cover;
}

#oshinagaki #mv h2{
  width: 160px;
  position: absolute;
  bottom:-18px;
  left: 0;
  z-index: 999;
}

#oshinagaki #mv figure{
  width: 40px;
  position: absolute;
  bottom: -30px;
  right: 15px;
  z-index: 999;
}

#oshinagaki #mv .bx-wrapper,
#oshinagaki #mv .bx-viewport,
#oshinagaki #mv ul.menu_slider,
#oshinagaki #mv ul.menu_slider li,
#oshinagaki #mv ul.menu_slider li div{
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
}

#oshinagaki #mv ul.menu_slider li:nth-child(1) div{
  background: url(../images/menu_img01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#oshinagaki #mv ul.menu_slider li:nth-child(2) div{
  background: url(../images/menu_img02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#oshinagaki #mv ul.menu_slider li:nth-child(3) div{
  background: url(../images/menu_img03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#oshinagaki #mv ul.menu_slider li:nth-child(4) div{
  background: url(../images/menu_img04.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}


#oshinagaki .sec01{
  width: 100%;
  margin: 0 auto 50px
}
#oshinagaki .sec01 .wrap{
  width: 100%;
  margin: 0 auto
}

#oshinagaki .sec01 .wrap .title h3{
  font-size: 10px;
  letter-spacing: 0.2em;
  text-align: center;
  padding-bottom: 10px;
}
#oshinagaki .sec01 .wrap .title h2{
  font-size: 24px;
  letter-spacing: 0.2em;
  text-align: center;
  padding-bottom: 30px;
  font-weight: bold;
}
#oshinagaki .sec01 .wrap .title .bar{
  width: 50px;
  height: 1px;
  margin: 0 auto 30px;
  background: #000;
}

#oshinagaki .sec01 .wrap .title p{
  font-size: 14px;
  line-height: 28px;
  letter-spacing: 0.1em;
  text-align: center;
  padding-bottom:30px;
}
#oshinagaki .sec01 .wrap .menu_list{
  width: 90%;
  margin: 0 auto;
}

#oshinagaki .sec01 .wrap .menu_list .left,
#oshinagaki .sec01 .wrap .menu_list .right{ 
  width: 100%; 
}

#oshinagaki .sec01 .wrap .menu_list li{
  margin-bottom:10px;
  background: rgba(0,0,0,0.05);
  text-align: center;
  padding: 30px 0; 
  position: relative;
}
#oshinagaki .sec01 .wrap .menu_list .right ul:last-child li{
  margin-bottom:5px;

}
#oshinagaki .sec01 .wrap .menu_list li.course{
  background: rgba(0,0,0,0.2);
}
#oshinagaki .sec01 .wrap .menu_list li figure{
  width: 43px;
  margin: 0 auto 10px;
}

#oshinagaki .sec01 .wrap .menu_list li h4{
  font-size: 20px;
  letter-spacing: 0.2em;
  display: inline-block;
  border-bottom: 1px solid #000;
  padding-bottom: 8px;
  margin-bottom:25px;
  font-weight: bold;
}
#oshinagaki .sec01 .wrap .menu_list li dl{
  padding-bottom: 10px;
  text-align: left;
  width: 85%;
  margin: 0 auto;
  display: table;
}
#oshinagaki .sec01 .wrap .menu_list li dl dt{
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0em;
  text-align: left;
  display: table-cell;
  width: 75%;
}
#oshinagaki .sec01 .wrap .menu_list li dl dd{
  width: 25%;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.12em;
  font-weight: bold;
  display: table-cell;
  text-align: right;
  position: relative;
}
#oshinagaki .sec01 .wrap .menu_list li dl dd span{
  font-size: 11px;
  padding-left:2px;
  font-weight: bold;
}
#oshinagaki .sec01 .wrap .menu_list li dl dd.kara:after{
  content: "〜";
  font-size: 11px;
  position: absolute;
  right: -16px;
  top: 2px;
  font-weight: normal;
}
#oshinagaki .sec01 .wrap .menu_list li.course p{
  font-size: 18px;
  letter-spacing: 0.1em;
  text-align: center;
}
#oshinagaki .sec01 .wrap .menu_list p{
  font-size: 11px;
  line-height: 18px;
  letter-spacing: 0;
  padding: 0 18px;
}
#oshinagaki .sec01 .wrap .menu_list li.drink{
  width: 100%;
  background: rgba(0,0,0,0.15);
}

#oshinagaki .sec01 .wrap .menu_list li.drink h3{
  font-size: 18px;
  letter-spacing: 0.1em;
  padding-bottom: 25px;
  font-weight: bold;
}

#oshinagaki .sec01 .wrap .menu_list li.drink .inner{
  width: 80%;
  margin: 0 auto 20px;
}
#oshinagaki .sec01 .wrap .menu_list li.drink .inner .left{
  width: 100%;
  background: #FFF;
  border-radius: 15px;
  padding: 15px 0;
  margin: 0 auto 20px;
  font-size: 14px;
  line-height: 24px;
}
#oshinagaki .sec01 .wrap .menu_list li.drink .inner .right{
  width: 100%;
  text-align: center;
  font-size: 12px;
  line-height: 20px;
}

#oshinagaki .sec01 .wrap .menu_list span{
  font-size: 12px;
  text-align: center;
}
#oshinagaki .sec01 .wrap .menu_list p.cap,
#oshinagaki .sec02 .wrap p.cap{
  font-size: 10px;
  line-height: 20px;
  letter-spacing: 0;
  padding: 0;
  text-align: right;
}

#oshinagaki #lunch_mv{
  width:100%;
  margin-bottom:30px;
  height: 25vh;
  position: relative;
  background-size:cover;
}

#oshinagaki #lunch_mv h2{
  width: 180px;
  position: absolute;
  bottom:-20px;
  left: 0;
  z-index: 999;
}

#oshinagaki #lunch_mv .bx-wrapper,
#oshinagaki #lunch_mv .bx-viewport,
#oshinagaki #lunch_mv ul.menu_slider2,
#oshinagaki #lunch_mv ul.menu_slider2 li,
#oshinagaki #lunch_mv ul.menu_slider2 li div{
  width: 100% !important;
  height: 100% !important;
  left: 0;
  box-shadow: none;
  border: none;
}


#oshinagaki #lunch_mv ul.menu_slider2 li:nth-child(1) div{
  background: url(../images/menu_sec02_img01.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#oshinagaki #lunch_mv ul.menu_slider2 li:nth-child(2) div{
  background: url(../images/menu_sec02_img02.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
#oshinagaki #lunch_mv ul.menu_slider2 li:nth-child(3) div{
  background: url(../images/menu_sec02_img03.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}

#oshinagaki .sec02{
  width:100%;
  margin-bottom: 30px;
}
#oshinagaki .sec02 .wrap{
  width: 90%;
  margin:0 auto;
}


#oshinagaki .sec02 .wrap .title h3{
  font-size: 10px;
  letter-spacing: 0.2em;
  text-align: center;
  padding-bottom: 10px;
}
#oshinagaki .sec02 .wrap .title h2{
  font-size: 24px;
  letter-spacing: 0.2em;
  text-align: center;
  padding-bottom: 20px;
  font-weight: bold;
}
#oshinagaki .sec02 .wrap .title .bar{
  width: 50px;
  height: 1px;
  margin: 0 auto 20px;
  background: #000;
}
#oshinagaki .sec02 .wrap .title h4{
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-bottom: 20px;
}

#oshinagaki .sec02 .wrap .title h5{
  width: 80%;
  text-align: center;
  border: 1px solid #000;
  margin: 0 auto 30px;
  padding: 8px 0;
  letter-spacing: 0.3em;
}


#oshinagaki .sec02 .wrap .lunch_menu #lunch_main{
  width: 100%;
  background: rgba(255,255,255,0.5);
  padding: 50px 0 10px; 
  margin-bottom: 30px;
}


#oshinagaki .sec02 .wrap .lunch_menu #lunch_main h3{
  font-size: 20px;
  padding-bottom: 30px;
  font-weight: bold;
  text-align: center;
}
#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul{
  width: 90%;
  margin: 0 auto;
}


#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li{
  width:100%;
  float: left;
  text-align: left;
  padding: 5px 10px;
  box-sizing: border-box;
  border-bottom: 1px solid #DDD;
}

#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li:last-child{
  width: 100%;
  border-right:none;
  border-bottom:none;
  padding: 5px 0;
}

#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li dl{
  padding: 10px 0;

}

#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li dl dt{
  font-size:14px;
  line-height: 26px;
  text-align: center;
}
#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li dl dd{
  font-size: 18px;
  line-height:26px;
  text-align: center;
    font-weight: bold;
}
#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li dl dd span{
  font-size:16px;
  line-height: 24px;
  padding-left: 5px;
  font-weight: bold;
}

#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li:last-child h4{
  font-size: 15px;
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: bold;
  padding: 20px 0 10px;
}

#oshinagaki .sec02 .wrap .lunch_menu #lunch_main ul li:last-child p.cap{
  font-size: 11px;
  letter-spacing: 0.05em;
  line-height: 16px;
  text-align: left;
  color: #333;
}








#oshinagaki .sec02 .wrap .lunch_menu .left{
  width: 100%;
  margin-bottom:10px;
  background: rgba(0,0,0,0.05);
  text-align: center;
  padding: 30px 0; 
}

#oshinagaki .sec02 .wrap .lunch_menu .right{
  width: 100%;
  background: rgba(0,0,0,0.10);
  padding: 30px 0; 
}


#oshinagaki .sec02 .wrap .lunch_menu .left .ccopy{
    font-size: 12px;
    line-height: 1.6;
    margin-bottom: 20px;
    text-align: center;
}








#oshinagaki .sec02 .wrap .morning_menu .left{
  width: 100%;
  /*margin-bottom:10px;*/
    margin-bottom:100px;
  background: rgba(0,0,0,0.05);
  text-align: center;
  padding: 30px 0; 
}

#oshinagaki .sec02 .wrap .morning_menu .left img{
    width: 90%;
    margin: 0 auto 30px;
}

#oshinagaki .sec02 .wrap .morning_menu .left h4{
  font-size: 20px;
  padding-bottom: 20px;
  font-weight: bold;
    line-height: 1.4;
}
#oshinagaki .sec02 .wrap .morning_menu .left h4 div{
  display:block;
  width: 80%;
  padding: 10px 0;
  margin:20px auto 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

#oshinagaki .sec02 .wrap .morning_menu .left ul{
  width: 80%;
  margin: 0 auto 10px;
}
#oshinagaki .sec02 .wrap .morning_menu .left ul li{
  text-align: left;
  padding-bottom: 15px;
}
#oshinagaki .sec02 .wrap .morning_menu .left p{
  font-size: 14px;
  line-height: 1.6;
  width:80%;
  margin: 0 auto 40px;
  text-align: center;
}
#oshinagaki .sec02 .wrap .morning_menu .left p.expln {
  font-size: 12px;
  line-height: 1.6;
    text-align: center;
    margin: 0 auto;
}
#oshinagaki .sec02 .wrap .morning_menu .left p br {
  /*display: none;*/

}



#oshinagaki .sec02 .wrap .lunch_menu{
    margin-bottom: 120px;
}
#oshinagaki .sec02 .wrap .lunch_menu .left{
  width: 100%;
  background: rgba(0,0,0,0.05);
  text-align: center;
  padding: 40px 0 ; 
}

#oshinagaki .sec02 .wrap .lunch_menu .left img{
    width: 90%;
    margin: 0 auto 40px;
}
#oshinagaki .sec02 .wrap .lunch_menu .left .ccopy{
    font-size: 13px;
    line-height: 1.6;
    margin-bottom: 20px;
}
#oshinagaki .sec02 .wrap .lunch_menu .left h3{
    font-size: 10px;
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 15px;
}
#oshinagaki .sec02 .wrap .lunch_menu .left h4 {
  font-size: 20px;
  padding-bottom: 35px;
  font-weight: bold;
  line-height: 1.6;
}
#oshinagaki .sec02 .wrap .lunch_menu .left h4 div{
  display:block;
  width: 80%;
  padding: 15px 0;
  margin:20px auto 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
#oshinagaki .sec02 .wrap .lunch_menu p{
    width: 80%;
    margin: 0 auto 40px;
    text-align: center;
}
#oshinagaki .sec02 .wrap .lunch_menu .left p.expln {
  font-size: 12px;
  line-height: 1.6;
    text-align: center;
}






#oshinagaki .sec02 .wrap .dinner_menu .left{
  width: 100%;
  margin-bottom:10px;
  background: rgba(0,0,0,0.05);
  text-align: center;
  padding: 30px 0; 
}

#oshinagaki .sec02 .wrap .dinner_menu .right{
  width: 100%;
  background: rgba(0,0,0,0.10);
  padding: 30px 0; 
}


#oshinagaki .sec02 .wrap .dinner_menu .left .ccopy{
    font-size: 12px;
    line-height: 1.6;
    margin-bottom: 20px;
    text-align: center;
}


#oshinagaki .sec02 .wrap .dinner_menu .left h3{
  font-size: 18px;
  padding-bottom: 20px;
  font-weight: bold;
}

#oshinagaki .sec02 .wrap .dinner_menu .left h4{
  font-size: 16px;
  padding-bottom: 10px;
  font-weight: bold;
}


#oshinagaki .sec02 .wrap .dinner_menu .left h3 img{
    width: 90%;
    margin: 30px auto 10px;
}
#oshinagaki .sec02 .wrap .dinner_menu .left h3 span{
  display:block;
  width: 80%;
  padding: 10px 0;
  margin:20px auto 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

#oshinagaki .sec02 .wrap .dinner_menu .left ul{
  width: 80%;
  margin: 0 auto 10px;
}
#oshinagaki .sec02 .wrap .dinner_menu .left ul li{
  text-align: left;
  padding-bottom: 15px;
}
#oshinagaki .sec02 .wrap .dinner_menu .left .price{
  background: #FFF;
  width: 90%;
  /*margin: 0 auto 20px;*/
    margin: 20px auto 10px;
  border-radius: 10px;
  padding: 20px 0;
  font-size: 15px;
  line-height: 30px;
  font-weight: bold;
}
#oshinagaki .sec02 .wrap .dinner_menu .left p{
  font-size: 12px;
  line-height: 18px;
  width:90%;
  margin: 0 auto;
  /*text-align: left;*/
}
#oshinagaki .sec02 .wrap .dinner_menu .left p br {
  display: none;
}

#oshinagaki .sec02 .wrap .dinner_menu .left p.ccopy br {display: block;}

#oshinagaki .sec02 .wrap .dinner_menu .right h3{
  font-size: 20px;
  padding-bottom: 15px;
  font-weight: bold;
  text-align: center;
}
#oshinagaki .sec02 .wrap .dinner_menu .right h3 span{
  display: block;
  font-size: 12px;
  padding-top: 10px
}
#oshinagaki .sec02 .wrap .dinner_menu .right .price{
  width: 90%;
  margin: 0 auto;
}
#oshinagaki .sec02 .wrap .dinner_menu .right .price dl{
  background: #FFF;
  border-radius: 10px;
  margin-bottom: 10px;
  padding: 20px;
}
#oshinagaki .sec02 .wrap .dinner_menu .right .price dl dt{
  font-size:16px;
  line-height: 24px;
  text-align: center;
  padding-bottom: 5px;
}
#oshinagaki .sec02 .wrap .dinner_menu .right .price dl dd{
  font-size:16px;
  line-height: 24px;
  text-align: center;
}
#oshinagaki .sec02 .wrap .dinner_menu .right .price dl dd span{
  font-size: 22px;
}
#oshinagaki .sec02 .wrap .dinner_menu .right p.cap{
  font-size: 12px;
  line-height: 18px;
  text-align: center;
}


#oshinagaki .sec02 .wrap .dinner_menu #lunch_main .point{
  border: 1px solid #DDD;
  text-align: center;
  width: 90%;
  margin: 0 auto 50px;
  padding: 20px;
  line-height: 24px;
  box-sizing: border-box;
}
#oshinagaki .sec02 .wrap .dinner_menu #lunch_main .point2{
  background: rgba(0,0,0,0.05);
  text-align: center;
  width: 90%;
  margin: 0 auto 50px;
  padding: 20px 0;
}
#oshinagaki .sec02 .wrap .dinner_menu #lunch_main .point2 h4{
  font-size: 16px;
  line-height: 24px;
  padding:0 20px;
}


#oshinagaki .sec02 .wrap .dinner_menu #lunch_main .point2 .cap{
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.1em;
  padding: 20px;
  line-height: 24px;
  box-sizing: border-box;
} 



#oshinagaki .sec03{
  width:100%;
  margin-bottom: 100px;
}
#oshinagaki .sec03 .wrap{
  width: 100%;
  margin:0 auto;
}


#oshinagaki .sec02 a,#oshinagaki .sec01 a{
  display: block;
  background: url(../images/low_btn_bg.svg) no-repeat;
  background-size: 100%;
  width: 80%;
  line-height: 60px;
  text-align: center;
  font-size: 16px;
  color: #FFF;
  margin: 0 auto 30px;
}


#oshinagaki .sec03 a{
  display: block;
  /*background: url(../images/low_btn_bg.svg) no-repeat;*/
  background-size: 100%;
  width: 80%;
  line-height: 52px;
  text-align: center;
  font-size: 16px;
  color: #000;
  margin: 0 auto 30px;
  border-bottom: solid 2px #000;
}

#oshinagaki .sec03 a:hover{
  opacity: 0.8;
}

/*#oshinagaki p{width: 80%; margin: 0 auto; line-height: 1.6}*/
#oshinagaki p{width: 90%; margin: 0 auto; line-height: 1.6; margin-bottom: 20px; text-align: center;}
#oshinagaki p a {text-decoration: underline;}
#oshinagaki p a:hover{
  opacity: 0.8;
}
#oshinagaki p.expln {font-size: 12px;  line-height: 1.6;  text-align: center;}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■ 店舗情報（うお田） ■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


#shop_uoden #mv{
  width:100%;
  height: 60vh;
  position: relative;
  background: url(../images/shop01_mv.JPG) no-repeat center;
  background-size:cover;
}

#shop_uoden #mv h2{
  width: 160px;
  position: absolute;
  top:50%;
  left: 50%;
  margin-left: -80px;
  margin-top: 0;
  z-index: 999;
}

#shop_uoden #mv figure{
  width: 40px;
  position: absolute;
  bottom: -20px;
  right: 30px;
  z-index: 999;
}

#shop_uoden .sec01{
  width:100%;
  padding-top: 60px;
  padding-bottom: 50px;
}


#shop_uoden .sec01 h3{
  width: 270px;
  margin: 0 auto 30px;
}

#shop_uoden .sec01 .mv-heading{
  width: 400px;
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 400;
  text-align: center;
  padding: 0 20px;
}


#shop_uoden .sec01 p{
  width: 80%;
  text-align:center;
  font-size: 13px;
  line-height: 28px;
  letter-spacing: 0.05em;
  margin: 0 auto 60px;
}

#shop_uoden .sec01 .opentime h5{
  text-align: center;
  font-size: 20px;
  padding-bottom: 30px;

}

#shop_uoden .sec01 .opentime ul.time{
  width: 80%;
  margin: 0 auto 20px;
}

#shop_uoden .sec01 .opentime ul.time li{
  padding-bottom: 25px;
}

#shop_uoden .sec01 .opentime ul.time dl dt,
#shop_uoden .sec01 .opentime ul.time dl dd{
  font-size: 14px;
  line-height: 20px;
  text-align: center;
}

#shop_uoden .sec01 .opentime ul.time dl dt{
  padding-bottom: 10px;
}


#shop_uoden .sec01 .opentime ul.date{
  width: 300px;
  margin: 0 auto 50px;
}

#shop_uoden .sec01 .opentime ul.date li{
  margin-bottom: 15px;
}

#shop_uoden .sec01 .opentime ul.date dl dt,
#shop_uoden .sec01 .opentime ul.date dl dd{
  font-size: 14px;
  display: inline-block;
}

#shop_uoden .sec01 .opentime ul.date dl dt{
  border-right: 1px solid #000;
  padding: 10px 20px 10px 0 ;
  text-align: right;
  width: 132px;
}

#shop_uoden .sec01 .opentime ul.date dl dd{
  padding: 10px 0 10px 20px;
  width: 120px;
}
#shop_uoden .sec01 .opentime ul.date dl dd span{
  font-size: 10px;
}

#shop_uoden .map{
  width:100%;
  margin: 0 auto;
}
#shop_uoden .map iframe{
  width: 100% !important;
  height: 400px !important;
  height: auto;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■ 店舗情報（博多092） ■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


#shop_hakata #mv{
  width:100%;
  height: 60vh;
  position: relative;
  background: url(../images/shop02_mv.jpg) no-repeat center;
  background-size:cover;
}

#shop_hakata #mv h2{
  width: 160px;
  position: absolute;
  top:50%;
  left: 50%;
  margin-left: -80px;
  margin-top: 0;
  z-index: 999;
}

#shop_hakata #mv figure{
  width: 40px;
  position: absolute;
  bottom: -20px;
  right: 30px;
  z-index: 999;
}

#shop_hakata #anc_menu{
  width:100%;
  padding-top: 60px;
}

#shop_hakata #anc_menu ul{
  width: 65%;
  margin: 0 auto 50px;
}

#shop_hakata #anc_menu li{
  width: 42.5%;
  float: left;
}
#shop_hakata #anc_menu li:first-child{
  padding-right:15%;
}

#shop_hakata #anc_menu li a.none{
  opacity: 0.3
}


#shop_hakata .sec01{
  width:100%;
  padding-bottom: 54px;
}


#shop_hakata .sec01 h3{
  width: 270px;
  margin: 0 auto 60px;
}


#shop_hakata .sec01 p{
  width: 80%;
  text-align:justify;
  font-size: 13px;
  line-height: 28px;
  letter-spacing: 0.05em;
  margin: 0 auto 60px;
}


#shop_hakata .sec01 .opentime{
  padding-bottom: 30px;
}

#shop_hakata .sec01 .opentime h5{
  text-align: center;
  font-size: 20px;
  padding-bottom: 30px;
}

#shop_hakata .sec01 .opentime ul.time{
  width: 300px;
  margin: 0 auto 50px;
}

#shop_hakata .sec01 .opentime ul.time li{
  padding-bottom: 25px;
  text-align: center;
}

#shop_hakata .sec01 .opentime ul.time dl dt,
#shop_hakata .sec01 .opentime ul.time dl dd{
  font-size: 14px;
  line-height: 20px;
  text-align: center;
}

#shop_hakata .sec01 .opentime ul.time dl dt{
  width: 160px;
}


#shop_hakata .sec01 .opentime ul.date{
  width: 300px;
  margin: 0 auto 30px;
}

#shop_hakata .sec01 .opentime ul.date li{
  margin-bottom: 15px;
}

#shop_hakata .sec01 .opentime ul.date dl dt,
#shop_hakata .sec01 .opentime ul.date dl dd{
  font-size: 14px;
  display: inline-block;
}

#shop_hakata .sec01 .opentime ul.date dl dt{
  border-right: 1px solid #000;
  padding: 10px 20px 10px 0 ;
  text-align: right;
  width: 132px;
}

#shop_hakata .sec01 .opentime ul.date dl dd{
  padding: 10px 0 10px 20px;
  width: 120px;
}
#shop_hakata .sec01 .opentime ul.date dl dd span{
  font-size: 12px;
}

#shop_hakata .map{
  width:100%;
  margin: 0 auto;
}
#shop_hakata .map iframe{
  width: 100% !important;
  height: 400px !important;
  height: auto;
}


#morningmenu,#lunchmenu,#dinnermenu{margin-top: -100px;padding-top: 100px}

.border{border-bottom: dotted 1px #A7A7A7; width: 80%; margin: 30px auto 30px;}


/*■■■■■■■■ お知らせ（スマホ）■■■■■■■■*/

#top #info {
  width: 90%;
  margin: 0 auto 60px;
  text-align: center
}

#top #info h3 {
  width: 100%;
  font-size: 16px;
  padding: 4px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-bottom: 20px;
}
#top #info h3 strong {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  display: block;
  padding: 20px 25px;
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  letter-spacing: 0.1em;
}

#top #info .info-list {
  width: 100%;
  margin: 0 auto;
}

#top #info .info-entry {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  max-width: 100%;
  padding: 10px 0;
}

#top #info .info-entry .meta {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
  font-size: 12px;
  line-height: 1.6;
}

#top #info .info-entry .col1 {
  flex: 0 0 auto;
  min-width: 90px;
  white-space: nowrap;
}

#top #info .info-entry .col2 {
  flex: 0 0 auto;
  white-space: nowrap;
  min-width: 80px;
}

#top #info .info-entry .col5 {
  flex: 1 0 0;
  font-size: 14px;
  word-break: break-word;
  text-align: left;
}

#top #info .info-entry .col5 a {
  display: inline-block;
  text-decoration: underline;
}

/* ステータスチップ（共通化） */
#top #info .status-chip {
  display: inline-block;
  padding: 2px 8px;
  font-size: 11px;
  color: #fff;
  border-radius: 10px;
  background-color: #AC181E;
  letter-spacing: 0.05em;
}

/* 状態別カラー（任意で追加可能） */
#top #info .status-chip.close {
  background-color: #999;
}
#top #info .status-chip.open {
  background-color: #7db6c1;
}
#top #info .status-chip.new {
  background-color: #e67e22;
}

#info a {
  text-decoration: underline;
}

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■ 　お知らせ詳細ページ関連 　■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.info-page {
  width: 100%;
  min-height: 100vh;
  background: #fff;
  padding: 40px 24px;
  box-sizing: border-box;
}

.info-page .wrap {
  max-width: 600px;
  margin: 0 auto;
  padding-bottom: 80px;
}

/* タイトルエリア */
.info-page .wrap h2 {
  width: 200px;
  margin: 0 auto 80px;
  text-align: center;
}

.info-page .wrap h2 a img {
  width: 60%;  /* 画像の横幅を100%に */
  height: auto; /* 高さは自動調整 */
  max-width: 200px; /* 最大幅を200pxに制限（h2の幅に合わせる） */
}

/* 通知セクション */
.info-page .wrap section.info-notice {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 40px auto;
}

/* 見出し（例：移転のご案内） */
.info-page .wrap section.info-notice h3 {
  font-size: 18px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 20px 0;
  margin-bottom: 40px;
  letter-spacing: 0.2em;
}

/* 本文テキスト */
.info-page .wrap section.info-notice p {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.1em;
}

/* リスト */
.info-page .wrap section.info-notice ul {
  list-style: none;
  padding: 0;
  margin: 0;
  padding-left: 20px;
}

.info-page .wrap section.info-notice li {
  padding: 4px 0;
  text-align: left;
  font-size: 14px;
  list-style-type: disc;
}

/* お知らせ詳細アニメーション */
@keyframes fadeInPop {
  0% {
    opacity: 0;
    transform: scale(0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.info-notice {
  animation: fadeInPop 0.6s ease-out;
}

/* info-itemを中央に配置 */
.info-page .wrap section.info-notice .info-item {
  width: 100%;
  margin-top: 30px;
  margin-bottom: 20px;
  text-align: center;
}

/* info-title */
.info-page .wrap section.info-notice .info-title {
  font-size: 14px;
  font-weight: bold;
  position: relative;
  padding-left: 24px;
  margin-bottom: 12px;
  text-align: center;
  display: inline-block;
}

/* info-title の前にマーカーを追加 */
.info-page .wrap section.info-notice .info-title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  width: 10px;
  height: 20px;
  background-color: #AC181E;
  transform: translateY(-50%);
}

/* info-content リスト */
.info-page .wrap section.info-notice .info-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.info-page .wrap section.info-notice .info-content ul li {
  list-style-position: inside;
  font-size: 14px;
  line-height: 1.8;
  padding-left: 0;
  text-align: center;
}

