@charset "utf-8";
/*============================
MV
============================*/
.mv_wrap {
  height: calc(100vh - 1.00rem);
  max-height: 9.00rem;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .mv_wrap {
    height: calc(100svh - 0.70rem);
  }
}

/* 暫定画像 */
.mv_wrap img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mv_wrap .mov_box,
.mv_wrap .mov_box .mov {
  width: 100%;
  height: 100%;
  position: relative;
}

.mv_wrap video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*============================
イントロ
============================*/
.about .header {
  padding: 0.70rem 0;
}
@media screen and (max-width: 640px) {
  .about .header {
    padding: 0.35rem 0;
  }
}

.about .header .tit {
  text-align: center;
  font-size: 0.42rem;
  letter-spacing: 0.05em;
  line-height: 1.52;
  color: #FFF;
}
@media screen and (max-width: 640px) {
  .about .header .tit {
    font-size: 0.21rem;
  }
}

.about .intro_wrap {
  background-image: url(../images/top/top_about_bg.jpg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: calc(50% + 4.00rem) auto;
  background-color: #000;
  position: relative;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap {
    background-image: none;
    padding-top: 70vw;
  }
  .about .intro_wrap::after {
    content: "";
    width: 100%;
    height: 66vw;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url(../images/top/top_about_bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.about .intro_wrap::before {
  content: "";
  width: calc(50% + 2.00rem);
  height: 100%;
  background: linear-gradient(to right, rgba(0,0,0,1) 49%,rgba(0,0,0,0) 100%);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap::before {
    width: 100%;
    height: 33vw;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
    top: 33vw;
    z-index: 1;
  }
}

.about .intro_wrap .in {
  max-width: 11.60rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap .in {
    padding-top: 0;
    padding-bottom: 0.40rem;
  }
}

.about .intro_wrap .in .txt_box {
  color: #FFF;
  width: 100%;
  max-width: 5.10rem;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap .in .txt_box {
    max-width: 100%;
  }
}

.about .intro_wrap .in .txt_box .tit {
  font-size: 0.36rem;
  letter-spacing: 0.05em;
  line-height: 1.44;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap .in .txt_box .tit {
    font-size: 0.22rem;
  }
}

.about .intro_wrap .in .txt_box .txt {
  font-size: 0.18rem;
  letter-spacing: 0.08em;
  line-height: 1.44;
  padding: 0.20rem 0;
  width: 100%;
  max-width: 4.50rem;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .about .intro_wrap .in .txt_box .txt {
    font-size: 0.14rem;
    line-height: 1.71;
    max-width: 100%;
  }
}

.about .more_link a {
  font-family: "Roboto", serif;
  color: #FFF;
  position: relative;
}

.about .more_link a::after {
  content: ">";
  display: inline-block;
  padding-left: 0.20rem;
}

.about .more_link a::before {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #FFF;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

.about .more_link a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.about .shop_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.about .shop_list .shop_box {
  width: 50%;
  padding: 3.50rem 0 0.80rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box {
    width: 100%;
    padding: 1.50rem 0 0.40rem;
  }
}

.about .shop_list .shop_box.-honten {
  background-image: url(../images/top/top_shop_ph01.jpg);
}

.about .shop_list .shop_box.-minami5jo {
  background-image: url(../images/top/top_shop_ph02.jpg);
}

.about .shop_list .shop_box .txt_box {
  width: 100%;
  max-width: 4.50rem;
  margin-left: auto;
  margin-right: 0.90rem;
  color: #FFF;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box .txt_box {
    width: calc(100% - 0.40rem);
    max-width: calc(100% - 0.40rem);
    margin: auto;
  }
}

.about .shop_list .shop_box:nth-of-type(2n) .txt_box {
  margin-left: 0.90rem;
  margin-right: auto;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box:nth-of-type(2n) .txt_box {
    margin: auto;
  }
}

.about .shop_list .shop_box .txt_box .tit {
  font-size: 0.31rem;
  letter-spacing: 0.10em;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box .txt_box .tit {
    font-size: 0.28rem;
  }
}

.about .shop_list .shop_box .txt_box .tit span {
  font-size: 0.16rem;
  display: block;
  padding-bottom: 0.10rem;
    padding-top: 0.10rem;
    letter-spacing: 0.05em;
    font-size: 13px;
    line-height: 1.25em;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box .txt_box .tit span {
    font-size: 0.12rem;
    padding-bottom: 0.05rem;
  }
}

.about .shop_list .shop_box .txt_box .txt {
  font-size: 0.16rem;
  letter-spacing: 0;
  line-height: 1.44;
  padding: 0.15rem 0 0.20rem;
  width: 100%;
  max-width: 4.50rem;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .about .shop_list .shop_box .txt_box .txt {
    font-size: 0.14rem;
    line-height: 1.71;
    max-width: 100%;
  }
}

/*============================
おすすめメニュー
============================*/
.recommend {
  padding: 0.80rem 0;
}
@media screen and (max-width: 640px) {
  .recommend {
    padding: 0.50rem 0;
  }
}

.recommend .in {
  max-width: 11.60rem;
}

.recommend .in .recommend_list {
  padding-top: 0.50rem;
  position: relative;
}
@media screen and (max-width: 640px) {
  .recommend .in .recommend_list {
    padding: 0;
  }
}

.recommend .in .recommend_list .list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 0.50rem;
}

.recommend .in .recommend_list .list .detail {
  width: 100%;
  max-width: 4.24rem;
}
@media screen and (max-width: 640px) {
  .recommend .in .recommend_list .list .detail {
    max-width: 100%;
    margin: 0 0.30rem;
  }
}

.recommend .in .recommend_list .list .detail a {
  display: block;
  background-color: #641417;
  color: #FFF;
  pointer-events: none;
}

.recommend .in .recommend_list .list .detail a .ph_wrap {
  width: 100%;
  height: 2.92rem;
  overflow: hidden;
}

.recommend .in .recommend_list .list .detail a .ph_wrap img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s;
}

.recommend .in .recommend_list .list .detail a:hover .ph_wrap img {
  transform: scale(1.04);
}

.recommend .in .recommend_list .list .detail a .txt_box {
  padding: 0.25rem 0;
  text-align: center;
}

.recommend .in .recommend_list .list .detail a .txt_box .catch {
  font-size: 0.14rem;
  letter-spacing: 0.10em;
}
@media screen and (max-width: 640px) {
  .recommend .in .recommend_list .list .detail a .txt_box .catch {
    font-size: 0.14rem;
  }
}

.recommend .in .recommend_list .list .detail a .txt_box .tit {
  font-size: 0.24rem;
  letter-spacing: 0.10em;
  padding-top: 0.15rem;
}
@media screen and (max-width: 640px) {
  .recommend .in .recommend_list .list .detail a .txt_box .tit {
    font-size: 0.22rem;
    padding-top: 0.08rem;
  }
}

.recommend .in .recommend_list .more_link {
  padding-top: 0.50rem;
  text-align: right;
}
@media screen and (max-width: 640px) {
  .recommend .in .recommend_list .more_link {
    padding-top: 0.25rem;
  }
}

.recommend .in .recommend_list .more_link a {
  font-family: "Roboto", serif;
  color: #333;
  position: relative;
  font-size: 0.14rem;
}

.recommend .in .recommend_list .more_link a::after {
  content: ">";
  display: inline-block;
  padding-left: 0.20rem;
}

.recommend .in .recommend_list .more_link a::before {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #333;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

.recommend .in .recommend_list .more_link a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/* Slick設定 */
.recommend .in .recommend_list .slide-arrow {
  width: 0.14rem;
  height: 0.28rem;
  background-repeat: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.recommend .in .recommend_list .slide-arrow.-prev {
  left: 0;
  background-image: url(../images/common/icon_link_arrow_small_prev.svg);
}

.recommend .in .recommend_list .slide-arrow.-next {
  right: 0;
  background-image: url(../images/common/icon_link_arrow_small_next.svg);
}

/*============================
インスタ
============================*/
.instagram {
  padding: 0.80rem 0;
}
@media screen and (max-width: 640px) {
  .instagram {
    padding: 0.50rem 0;
  }
}

.instagram .in {
  max-width: 9.80rem;
}

.instagram .in .sec_tit {
  text-align: center;
  font-family: "Roboto", serif;
  font-size: 0.26rem;
  color: #FFF;
}

.instagram .in .sec_tit span::before {
  content: "";
  width: 0.28rem;
  height: 0.28rem;
  background-image: url(../images/common/icon_insta.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  margin-right: 0.10rem;
  position: relative;
  top: 0.04rem;
}

.instagram .in .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.03rem;
  padding-top: 0.50rem;
}
@media screen and (max-width: 640px) {
  .instagram .in .list {
    padding-top: 0.20rem;
  }
}

.instagram .in .list .detail {
  width: 100%;
  max-width: 2.22rem;
  height: 2.22rem;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .instagram .in .list .detail {
    max-width: 49%;
    height: 44vw;
  }
}

.instagram .in .list .detail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.instagram .in .more_link {
  padding-top: 0.50rem;
  text-align: right;
}
@media screen and (max-width: 640px) {
  .instagram .in .more_link {
    padding-top: 0.30rem;
  }
}

.instagram .in .more_link a {
  font-family: "Roboto", serif;
  color: #FFF;
  position: relative;
  font-size: 0.14rem;
}

.instagram .in .more_link a::after {
  content: ">";
  display: inline-block;
  padding-left: 0.20rem;
}

.instagram .in .more_link a::before {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #FFF;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

.instagram .in .more_link a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/* instagram Feed*/
#sb_instagram .sb_instagram_header, .sb_instagram_header, #sb_instagram #sbi_load{
	display: none;
}