@charset "UTF-8";
/*----------------------------------------
   共通設定
----------------------------------------*/
body {
  background-color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: 1.317715959vw;
  color: #222222;
  margin: 0;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

img {
  vertical-align: middle;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

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

a {
  text-decoration: none;
  color: #222222;
}

ul {
  list-style: none;
}

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

@media (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}
.inner {
  width: 83.4553440703vw;
  padding: 0 1.4641288433vw;
  margin: 0 auto;
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("../images/renewal/btn_green_new.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  transition: all 0.3s;
  width: 24.3045387994vw;
  height: 4.6852122987vw;
  margin: 0 auto;
  transition: all 0.3s;
}

.btn:hover {
  background-image: url("../images/renewal/btn_green_new_hover.png");
}

.btn:hover::after {
  background-image: url("../images/renewal/arrow_black_hover.svg");
  transition: all 0.3s;
}

.btn:hover .btn_text {
  color: #dde8d9;
}

.btn::after {
  content: "";
  position: absolute;
  top: 1.9765739385vw;
  right: 1.8301610542vw;
  width: 0.5856515373vw;
  height: 0.9516837482vw;
  background-image: url("../images/renewal/arrow_black.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.btn .btn_text {
  font-size: 1.317715959vw;
  letter-spacing: normal;
  transition: all 0.3s;
}

.section .title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 400;
  gap: 1.0980966325vw;
}

.section .title .en {
  font-size: 6.588579795vw;
  font-family: "Little Brushy", sans-serif;
  color: #1f0b03;
  line-height: normal;
}

.section .title .jp {
  font-size: 1.756954612vw;
  font-family: Zen Kurenaido, sans-serif;
}

@media (max-width: 768px) {
  main {
    padding-top: 17.3333333333vw;
  }
  .inner {
    padding: 0 5.3333333333vw;
    width: 100%;
  }
  .btn {
    width: 74.6666666667vw;
    height: 16vw;
    margin: 0 auto;
  }
  .btn::after {
    top: 6.4vw;
    right: 7.2vw;
    width: 2.1333333333vw;
    height: 3.4666666667vw;
  }
  .btn .btn_text {
    font-size: 3.7333333333vw;
  }
  .section .title {
    gap: 1.3333333333vw;
  }
  .section .title .en {
    font-size: 16vw;
  }
  .section .title .jp {
    font-size: 4.2666666667vw;
  }
}
/*----------------------------------------
   フォント
----------------------------------------*/
@font-face {
  font-family: "Alte Haas Grotesk";
  src: url("../font/AlteHaasGrotesk_Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Little Brushy";
  src: url("../font/LittleBrushy.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic New";
  src: url("../font/ZenKakuGothicNew-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic New";
  src: url("../font/ZenKakuGothicNew-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Zen Kurenaido";
  src: url("../font/ZenKurenaido-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/*----------------------------------------
   ヘッダー pc
----------------------------------------*/
.header.pc {
  background-color: #fff;
  width: 100%;
  margin: 0 auto;
  z-index: 1001;
}

.header.pc#main-header {
  position: relative;
}

.header.pc .main_section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 7.7598828697vw;
  border-bottom: 0.1464128843vw solid #222222;
}

.header.pc .main_section .logo {
  margin-left: 1.2445095168vw;
  width: 34.4070278184vw;
  flex-shrink: 0;
}

.header.pc .main_section .left_area .title_area {
  display: flex;
  flex-direction: column;
  gap: 0.5856515373vw;
}

.header.pc .main_section .right_area {
  display: flex;
  align-items: center;
  gap: 1.5373352855vw;
}

.header.pc .main_section .right_area .contact_area {
  display: flex;
  flex-direction: column;
  gap: 0.3660322108vw;
}

.header.pc .main_section .right_area .contact_area .phone_area {
  display: flex;
  align-items: center;
}

.header.pc .main_section .right_area .contact_area .phone_area .phone_text {
  position: relative;
  padding-left: 2.4890190337vw;
  font-family: "Alte Haas Grotesk", sans-serif;
  font-weight: 700;
  font-size: 2.7818448023vw;
  color: #1f0b03;
  margin-left: 3.6603221083vw;
}

.header.pc .main_section .right_area .contact_area .phone_area .phone_text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.8301610542vw;
  height: 2.4890190337vw;
  background-image: url("../images/renewal/tel.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.pc .main_section .right_area .contact_area .hours_area {
  display: flex;
  flex-direction: column;
  gap: 0.2196193265vw;
}

.header.pc .main_section .right_area .contact_area .hours_area .hours_text {
  font-size: 1.0248901903vw;
}

.header.pc .main_section .right_area .contact_area .hours_area .closed_text {
  font-size: 1.0248901903vw;
}

.header.pc .main_section .right_area .button_area {
  flex-shrink: 0;
  width: 17.9355783309vw;
  height: 7.7598828697vw;
}

.header.pc .main_section .right_area .button_area .header_btn {
  display: block;
  padding: 1.8301610542vw 0 0 5.7833089312vw;
  background-color: #d96a3e;
  transition: background-color 0.3s;
  height: 100%;
}

.header.pc .main_section .right_area .button_area .header_btn:hover {
  opacity: 0.8;
}

.header.pc .main_section .right_area .button_area .header_btn .header_btn_text {
  position: relative;
  color: #fff;
  font-size: 1.5373352855vw;
  line-height: 1.380952381;
}

.header.pc .main_section .right_area .button_area .header_btn .header_btn_text::before {
  content: "";
  position: absolute;
  left: -4.0263543192vw;
  top: 50%;
  transform: translateY(-50%);
  width: 3.0014641288vw;
  height: 2.0497803807vw;
  background-image: url("../images/renewal/mail.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.pc .main_section .right_area .button_area .header_btn .header_btn_text::after {
  content: "";
  position: absolute;
  right: -1.6105417277vw;
  bottom: 0.2928257687vw;
  width: 0.8052708638vw;
  height: 1.3909224012vw;
  background-image: url("../images/renewal/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.pc .nav {
  background-color: #fff;
}

.header.pc .nav .list {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 87.8477306003vw;
  margin-left: auto;
  margin-right: auto;
}

.header.pc .nav .list .item {
  position: relative;
  flex: 1;
}

.header.pc .nav .list .item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 2.9282576867vw;
  background-color: #e4e1db;
}

.header.pc .nav .list .item .link {
  height: 5.8565153734vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
}

.header.pc .nav .list .item .link::after {
  content: "";
  position: absolute;
  bottom: 0.7320644217vw;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 1px;
  background-color: #222222;
  transition: all 0.3s;
}

.header.pc .nav .list .item .link:hover {
  opacity: 0.8;
}

.header.pc .nav .list .item .link:hover::after {
  width: 50%;
  transition: all 0.3s;
}

.header.pc .nav .list .item .link .en {
  font-family: "Little Brushy", sans-serif;
  font-size: 2.3426061493vw;
  line-height: normal;
}

.header.pc .nav .list .item .link .jp {
  font-size: 1.1713030747vw;
}

.header.pc.header-scroll {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 1002;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.header.pc.header-scroll.is_visible {
  transform: translateY(0);
}

.header.pc .header-scroll-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 0 0 0 1.4641288433vw;
  height: 5.1244509517vw;
}

.header.pc.header-scroll .logo {
  width: 17.5695461201vw;
  flex-shrink: 0;
}

.header.pc.header-scroll .nav {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.header.pc.header-scroll .nav .list {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  max-width: none;
}

.header.pc.header-scroll .nav .list .item {
  flex: none;
  position: relative;
}

.header.pc.header-scroll .nav .list .item:not(:last-child)::after {
  display: none;
}

.header.pc.header-scroll .nav .list .item .link {
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.1464128843vw;
  transition: opacity 0.3s;
  text-decoration: none;
  padding: 0 2.196193265vw;
  border-right: 1px solid #e4e1db;
}

.header.pc.header-scroll .nav .list .item:last-child .link {
  border-right: none;
}

.header.pc.header-scroll .nav .list .item .link::after {
  display: none;
}

.header.pc.header-scroll .nav .list .item .link:hover {
  opacity: 0.7;
}

.header.pc.header-scroll .nav .list .item .link .en {
  font-family: "Little Brushy", sans-serif;
  font-size: 2.3426061493vw;
  line-height: normal;
}

.header.pc.header-scroll .nav .list .item .link .jp {
  font-size: 1.1713030747vw;
}

.header.pc.header-scroll .right_area {
  display: flex;
  align-items: center;
  gap: 1.5373352855vw;
}

.header.pc.header-scroll .right_area .contact_area {
  display: flex;
  align-items: center;
  gap: 0.7320644217vw;
}

.header.pc.header-scroll .right_area .contact_area .phone_area {
  display: flex;
  align-items: center;
}

.header.pc.header-scroll .right_area .contact_area .phone_area .phone_text {
  position: relative;
  padding-left: 2.4890190337vw;
  font-family: "Alte Haas Grotesk", sans-serif;
  font-weight: 700;
  font-size: 2.7818448023vw;
  color: #1f0b03;
  margin-left: 3.6603221083vw;
}

.header.pc.header-scroll .right_area .contact_area .phone_area .phone_text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.8301610542vw;
  height: 2.4890190337vw;
  background-image: url("../images/renewal/tel.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.pc.header-scroll .right_area .contact_area .hours_area {
  display: flex;
  flex-direction: column;
  gap: 0.2196193265vw;
}

.header.pc.header-scroll .right_area .contact_area .hours_area .hours_text {
  font-size: 1.0248901903vw;
}

.header.pc.header-scroll .right_area .contact_area .hours_area .closed_text {
  font-size: 1.0248901903vw;
}

.header.pc.header-scroll .right_area .button_area {
  flex-shrink: 0;
  width: 17.9355783309vw;
  height: 5.1244509517vw;
}

.header.pc.header-scroll .right_area .button_area .header_btn {
  display: block;
  padding: 0.7320644217vw 0 0 5.7833089312vw;
  background-color: #d96a3e;
  transition: background-color 0.3s;
  height: 100%;
}

.header.pc.header-scroll .right_area .button_area .header_btn:hover {
  opacity: 0.8;
}

.header.pc.header-scroll .right_area .button_area .header_btn .header_btn_text {
  position: relative;
  color: #fff;
  font-size: 1.317715959vw;
  line-height: 1.380952381;
}

.header.pc.header-scroll .right_area .button_area .header_btn .header_btn_text::before {
  content: "";
  position: absolute;
  left: -4.0263543192vw;
  top: 50%;
  transform: translateY(-50%);
  width: 3.0014641288vw;
  height: 2.0497803807vw;
  background-image: url("../images/renewal/mail.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.pc.header-scroll .right_area .button_area .header_btn .header_btn_text::after {
  content: "";
  position: absolute;
  right: -1.6105417277vw;
  bottom: 0.2928257687vw;
  width: 0.8052708638vw;
  height: 1.3909224012vw;
  background-image: url("../images/renewal/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/*----------------------------------------
   ヘッダー sp
----------------------------------------*/
.header.sp {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1001;
  background-color: #fff;
}

.header.sp .main_section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 17.3333333333vw;
  padding: 0 5.3333333333vw;
  background-color: #fff;
  position: relative;
  z-index: 1001;
}

.header.sp .main_section .logo {
  width: 48vw;
  position: relative;
  z-index: 1001;
}

.header.sp .main_section .button_wrap {
  display: flex;
  align-items: center;
  gap: 2.6666666667vw;
}

.header.sp .main_section .button_wrap .tel {
  width: 8vw;
  height: 8vw;
}

.header.sp .main_section .button_wrap .mail {
  width: 8vw;
  height: 8vw;
}

.header.sp .main_section .hamburger_btn {
  cursor: pointer;
  position: relative;
  z-index: 1001;
  width: 13.3333333333vw;
  height: 13.3333333333vw;
  display: flex;
  justify-content: center;
  background-color: #fff;
  border: 2px solid #222222;
  padding-top: 8vw;
  border-radius: 2.1333333333vw;
}

.header.sp .main_section .hamburger_btn .hamburger_line {
  width: 6.4vw;
  height: 0.5333333333vw;
  background-color: #222222;
  transition: all 0.3s;
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.header.sp .main_section .hamburger_btn .hamburger_line:nth-child(1) {
  top: 2.1333333333vw;
}

.header.sp .main_section .hamburger_btn .hamburger_line:nth-child(2) {
  top: 4.2666666667vw;
}

.header.sp .main_section .hamburger_btn .hamburger_line:nth-child(3) {
  top: 6.4vw;
}

.header.sp .main_section .hamburger_btn .hamburger_text {
  font-size: 3.7333333333vw;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.header.sp.is_open .main_section .hamburger_btn .hamburger_line:nth-child(1) {
  top: 4.2666666667vw;
  transform: translateX(-50%) rotate(45deg);
}

.header.sp.is_open .main_section .hamburger_btn .hamburger_line:nth-child(2) {
  opacity: 0;
}

.header.sp.is_open .main_section .hamburger_btn .hamburger_line:nth-child(3) {
  top: 4.2666666667vw;
  transform: translateX(-50%) rotate(-45deg);
}

.header.sp .is_open .main_section .hamburger_btn .hamburger_text {
  opacity: 0;
}

.header.sp .menu_wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: 1000;
  overflow-y: auto;
  transform: translateX(100%);
  padding: 21.3333333333vw 0 13.3333333333vw 0;
  transition: transform 0.3s;
}

.header.sp.is_open .menu_wrapper {
  transform: translateX(0);
  transition: transform 0.3s;
}

.header.sp .nav .list {
  display: flex;
  flex-direction: column;
  gap: 8vw;
}

.header.sp .nav .list .item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.header.sp .nav .list .item .link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: auto;
}

.header.sp .nav .list .item .link .en {
  font-family: "Little Brushy", sans-serif;
  font-size: 16vw;
  line-height: normal;
}

.header.sp .nav .list .item .link .jp {
  font-size: 4.8vw;
}

.header.sp .menu_wrapper .contact_box_area {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 13.3333333333vw;
  gap: 8vw;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box {
  width: 64vw;
  height: auto;
  padding: 5.3333333333vw 0;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box {
  width: 64vw;
  height: auto;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .contact_label {
  font-size: 3.7333333333vw;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .phone_number_area {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.2vw;
  position: relative;
  margin-top: 2.6666666667vw;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .phone_number_area::before {
  content: "";
  position: absolute;
  left: -5.8666666667vw;
  top: 50%;
  transform: translateY(-50%);
  width: 4.2666666667vw;
  height: 6.6666666667vw;
  background-image: url("../images/renewal/tel.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .phone_number_area .phone_number {
  font-size: 6.4vw;
  font-weight: 700;
  color: #1f0b03;
  font-family: "Alte Haas Grotesk", sans-serif;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .business_hours_area {
  display: flex;
  flex-direction: column;
  margin-top: 1.3333333333vw;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .business_hours_area .business_hours_text {
  font-size: 3.7333333333vw;
  line-height: 1.2142857143;
}

.header.sp .menu_wrapper .contact_box_area .contact_phone_box .business_hours_area .closed_day_text {
  font-size: 3.7333333333vw;
  line-height: 1.2142857143;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box {
  padding: 5.3333333333vw 0;
  background-color: #da6334;
  border-radius: 2.1333333333vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity 0.3s;
  position: relative;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box::before {
  content: "";
  width: 7.4666666667vw;
  height: 5.0666666667vw;
  background-image: url("../images/renewal/mail.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 3.2vw;
  display: block;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box:hover {
  opacity: 0.8;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box .form_text {
  font-size: 3.7333333333vw;
  color: #fff;
  position: relative;
}

.header.sp .menu_wrapper .contact_box_area .contact_form_box .form_text::after {
  content: "";
  position: absolute;
  right: -6.1333333333vw;
  top: 0.5333333333vw;
  width: 2.4vw;
  height: 3.7333333333vw;
  background-image: url("../images/renewal/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header.sp .menu_wrapper .nav {
  display: none;
}

/*----------------------------------------
   mv
----------------------------------------*/
#top .mv.section {
  width: 100%;
  margin: 0 auto;
}

#top .mv_slider {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

#top .mv_slider-item {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58.5651537335vw;
  height: 40.9956076135vw;
  margin: 0 0.2928257687vw;
}

/* mv swiper
----------------------------------------*/
#top .swiper-pagination {
  bottom: 1.4641288433vw;
}

#top .swiper-pagination-bullet {
  width: 0.7320644217vw;
  height: 0.7320644217vw;
  background-color: #a2775c;
  margin: 0 0.5856515373vw;
}

#top .swiper-pagination-bullet-active {
  background-color: #da6334;
}

@media (max-width: 768px) {
  #top .swiper-pagination {
    bottom: 2.6666666667vw;
  }
  #top .swiper-pagination-bullet {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin: 0 2.1333333333vw;
  }
}
/*----------------------------------------
   lunch
----------------------------------------*/
#top .lunch.section {
  padding: 2.196193265vw 3.6603221083vw 2.9282576867vw;
  width: 100%;
  margin: 0 auto;
}

#top .lunch .inner {
  width: 87.8477306003vw;
  margin: 0 auto;
  padding: 0 2.9282576867vw;
}

#top .lunch .inner .area {
  display: flex;
}

#top .lunch .inner .area .left {
  background-color: #42864b;
  width: 20.6442166911vw;
  height: 20.6442166911vw;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

#top .lunch .inner .area .left .text {
  font-size: 1.9033674963vw;
  color: #fff;
  line-height: 1.2307692308;
  text-align: center;
  font-family: "Zen Kurenaido", sans-serif;
  padding-bottom: 1.4641288433vw;
  position: relative;
}

#top .lunch .inner .area .left .text::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0.2196193265vw;
  width: 14.6412884334vw;
  height: 1px;
  background-color: #ad9d88;
}

#top .lunch .inner .area .left .text::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 14.6412884334vw;
  height: 1px;
  background-color: #ad9d88;
}

#top .lunch .inner .area .left .lunch_btn {
  display: flex;
  flex-direction: column;
  margin-top: 1.4641288433vw;
}

#top .lunch .inner .area .left .lunch_btn .lunch_btn_text {
  font-size: 1.1713030747vw;
  color: #fff;
}

#top .lunch .inner .area .left .lunch_btn .lunch_btn_text_en {
  font-size: 4.831625183vw;
  color: #fff;
  font-family: "Little Brushy", sans-serif;
  display: inline-block;
  margin-top: -0.7320644217vw;
  position: relative;
}

#top .lunch .inner .area .left .lunch_btn .lunch_btn_text_en::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 0.8052708638vw;
  height: 1.3909224012vw;
  background-image: url("../images/renewal/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .lunch .inner .area .right {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.4641288433vw;
}

#top .lunch .inner .area .right .image_box {
  flex-shrink: 0;
}

#top .lunch .inner .area .right .image_box.text {
  width: 13.5431918009vw;
}

#top .lunch .inner .area .right .image_link {
  display: block;
  transition: all 0.3s;
}

#top .lunch .inner .area .right .image_box.flyer {
  width: 50.878477306vw;
}

@media (max-width: 768px) {
  #top .lunch.section {
    padding: 5.3333333333vw;
  }
  #top .lunch .inner {
    padding: 0;
  }
  #top .lunch .inner .area {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.3333333333vw;
  }
  #top .lunch .inner .area .left {
    width: 42.6666666667vw;
    height: 42.6666666667vw;
  }
  #top .lunch .inner .area .left .text {
    font-size: 4.2666666667vw;
    padding-bottom: 2.6666666667vw;
  }
  #top .lunch .inner .area .left .text::before {
    bottom: 0.8vw;
    width: 32vw;
  }
  #top .lunch .inner .area .left .text::after {
    width: 32vw;
  }
  #top .lunch .inner .area .left .lunch_btn {
    margin-top: 2.6666666667vw;
  }
  #top .lunch .inner .area .left .lunch_btn .lunch_btn_text {
    font-size: 2.6666666667vw;
  }
  #top .lunch .inner .area .left .lunch_btn .lunch_btn_text_en {
    font-size: 10.6666666667vw;
  }
  #top .lunch .inner .area .left .lunch_btn .lunch_btn_text_en::before {
    width: 1.8666666667vw;
    height: 3.4666666667vw;
  }
  #top .lunch .inner .area .right {
    gap: 5.3333333333vw;
  }
  #top .lunch .inner .area .right .image_box.text {
    width: 32vw;
  }
  #top .lunch .inner .area .right .image_box.flyer {
    width: 100%;
  }
}
/*----------------------------------------
   message
----------------------------------------*/
#top .message .inner .area {
  display: flex;
  gap: 6.149341142vw;
}

#top .message .inner .area .left {
  padding-top: 8.4187408492vw;
}

#top .message .inner .area .left .title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

#top .message .inner .area .left .image_box {
  border-radius: 1.756954612vw;
  overflow: hidden;
  margin-top: 0.7320644217vw;
  margin-left: 1.4641288433vw;
  width: 22.1815519766vw;
}

#top .message .inner .area .right {
  flex: 1;
  background-image: url("../images/renewal/message_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 58.5651537335vw;
  height: 69.0336749634vw;
  padding: 8.78477306vw 0 0 6.9546120059vw;
}

#top .message .inner .area .right .heading {
  font-size: 1.8301610542vw;
  line-height: 1.8;
  font-family: "Zen Kurenaido", sans-serif;
}

#top .message .inner .area .right .text_box {
  margin-top: 4.39238653vw;
  font-size: 1.1713030747vw;
  line-height: 1.8;
  color: #222222;
  max-width: 37.701317716vw;
}

#top .message .inner .area .right .text_box .text {
  font-size: 1.1713030747vw;
  line-height: 2;
  margin-bottom: 1.1713030747vw;
}

#top .message .inner .area .right .text_box .text:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  #top .message .inner .area {
    display: flex;
    flex-direction: column;
    gap: 5.3333333333vw;
    width: 100%;
  }
  #top .message .inner .area .left {
    padding-top: 10.6666666667vw;
    display: flex;
    justify-content: center;
    gap: 5.3333333333vw;
  }
  #top .message .inner .area .left .title {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  #top .message .inner .area .left .image_box {
    border-radius: 3.2vw;
    overflow: hidden;
    margin-top: 0;
    margin-left: 0;
    width: 40vw;
  }
  #top .message .inner .area .right {
    width: 100%;
    height: auto;
    padding: 5.3333333333vw 4vw;
    background-image: url("../images/renewal/message_bg_sp.jpg");
  }
  #top .message .inner .area .right .heading {
    font-size: 5.3333333333vw;
  }
  #top .message .inner .area .right .text_box {
    margin-top: 8vw;
    font-size: 4.2666666667vw;
    max-width: 100%;
  }
  #top .message .inner .area .right .text_box .text {
    font-size: 4.2666666667vw;
    margin-bottom: 4.2666666667vw;
  }
}
/*----------------------------------------
   repertory
----------------------------------------*/
.repertory.section {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: -21.5959004392vw auto 0;
}

.repertory .title_box {
  height: 30.6734992679vw;
  background-image: url("../images/renewal/repertory_bg01.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}

.repertory .title_box .title {
  position: absolute;
  left: 50%;
  transform: translateX(-50%) translateY(50%);
  bottom: 0;
  width: 27.9648609078vw;
  height: 24.5241581259vw;
  border-radius: 50%;
  background-color: #fff;
  justify-content: start;
  padding-top: 7.3206442167vw;
}

.repertory .title_box .title .en {
  position: relative;
}

.repertory .title_box .title .en::before {
  content: "";
  position: absolute;
  left: -1.4641288433vw;
  top: 0.7320644217vw;
  width: 2.7818448023vw;
  height: 2.4158125915vw;
  background-image: url("../images/renewal/repertory_illust01.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.repertory .title_box .title .en::after {
  content: "";
  position: absolute;
  right: -1.0980966325vw;
  bottom: 1.8301610542vw;
  width: 1.9765739385vw;
  height: 1.8301610542vw;
  background-image: url("../images/renewal/repertory_illust02.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.repertory .intro_text {
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin-top: 4.831625183vw;
}

.repertory .list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.3660322108vw;
  margin-top: 5.6368960469vw;
}

.repertory .list .item .card {
  border-radius: 1.756954612vw;
  padding: 3.8799414348vw 0 0.5856515373vw;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.repertory .list .item .card.card_lunch {
  background-image: url("../images/renewal/repertory_bg02.jpg");
}

.repertory .list .item .card.card_dinner {
  background-image: url("../images/renewal/repertory_bg03.jpg");
}

.repertory .list .item .card.card_course {
  background-image: url("../images/renewal/repertory_bg04.jpg");
}

.repertory .list .item .card .card_header {
  text-align: center;
}

.repertory .list .item .card .card_header .card_title {
  font-size: 1.756954612vw;
}

.repertory .list .item .card .card_header .card_title_en {
  font-size: 3.2942898975vw;
  font-family: "Little Brushy", sans-serif;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0.7320644217vw auto;
  position: relative;
  line-height: normal;
}

#top .repertory .list .item .card .card_header .card_title_en .line_before::before {
  content: "";
  position: absolute;
  left: -2.1229868228vw;
  top: 0.5856515373vw;
  width: 1.1713030747vw;
  height: 0.2196193265vw;
  background-color: #222222;
}

#top .repertory .list .item .card .card_header .card_title_en .line_after::before {
  content: "";
  position: absolute;
  left: -2.1229868228vw;
  top: 1.0248901903vw;
  width: 1.1713030747vw;
  height: 0.1464128843vw;
  background-color: #222222;
}

#top .repertory .list .item .card .card_header .card_title_en .line_after::after {
  content: "";
  position: absolute;
  right: -2.1229868228vw;
  top: 0.5856515373vw;
  width: 1.1713030747vw;
  height: 0.2196193265vw;
  background-color: #222222;
}

#top .repertory .list .item .card .card_header .card_title_en .line_before::after {
  content: "";
  position: absolute;
  right: -2.1229868228vw;
  top: 1.0248901903vw;
  width: 1.1713030747vw;
  height: 0.1464128843vw;
  background-color: #222222;
}

.repertory .list .item .card .card_header .card_time {
  font-size: 1.5373352855vw;
  margin-bottom: 2.4890190337vw;
}

.repertory .list .item .card .card_content {
  flex: 1;
  margin: 0.5856515373vw;
  background-color: #fff;
  border-radius: 0 0 1.756954612vw 1.756954612vw;
  padding: 3.2942898975vw 1.8301610542vw 2.196193265vw 2.5622254758vw;
  display: flex;
  flex-direction: column;
}

.repertory .list .item .card .image_box {
  aspect-ratio: 1.5479452055;
}

.repertory .list .item .card .image_box .image {
  height: 100%;
}

.repertory .list .item .card .card_content .card_text_box {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.317715959vw;
}

.repertory .list .item .card .card_content .card_text_box .card_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
}

.repertory .list .item .card .card_content .btn {
  width: 19.1068814056vw;
  height: 3.7335285505vw;
  margin: 1.0980966325vw auto 0vw;
  background-image: url("../images/renewal/btn_black_new.png");
  transition: all 0.3s;
}

.repertory .list .item .card .card_content .btn::after {
  top: 1.4641288433vw;
  right: 1.0980966325vw;
  width: 0.5856515373vw;
  height: 0.9516837482vw;
  transition: all 0.3s;
}

.repertory .list .item .card .card_content .btn:hover {
  background-image: url("../images/renewal/btn_black_new_hover.png");
}

.repertory .list .item .card .card_content .btn:hover::after {
  background-image: url("../images/renewal/arrow_black_hover.svg");
}

.repertory .list .item .card .card_content .btn:hover .btn_text {
  color: #fff;
}

.repertory .list .item .card .card_content .btn .btn_text {
  letter-spacing: -0.06em;
  transition: all 0.3s;
}

.repertory .list .item .card .card_content .btn {
  display: none;
}

@media (max-width: 768px) {
  .repertory.section {
    margin: 10.6666666667vw auto 0;
  }
  .repertory .title_box {
    background-image: url("../images/renewal/repertory_bg01_sp.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 53.3333333333vw;
  }
  .repertory .title_box .title {
    width: 58.6666666667vw;
    height: 53.3333333333vw;
    padding-top: 13.3333333333vw;
  }
  .repertory .title_box .title .en::before {
    left: -4.2666666667vw;
    top: -2.9333333333vw;
    width: 6.6666666667vw;
    height: 5.8666666667vw;
  }
  .repertory .title_box .title .en::after {
    right: -2.4vw;
    bottom: -0.5333333333vw;
    width: 4.8vw;
    height: 4.5333333333vw;
  }
  .repertory .intro_text {
    font-size: 3.7333333333vw;
    margin-top: 8vw;
  }
  .repertory .list {
    grid-template-columns: 1fr;
    gap: 2.6666666667vw;
    margin-top: 10.6666666667vw;
    padding: 0 5.3333333333vw;
  }
  .repertory .list .item .card {
    border-radius: 3.2vw;
    padding: 4vw 0 1.3333333333vw;
  }
  .repertory .list .item .card .card_header .card_title {
    font-size: 5.3333333333vw;
  }
  .repertory .list .item .card .card_header .card_title_en {
    font-size: 8vw;
    margin: 1.3333333333vw auto;
  }
  #top .repertory .list .item .card .card_header .card_title_en .line_before::before {
    left: -5.0666666667vw;
    top: 1.3333333333vw;
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  #top .repertory .list .item .card .card_header .card_title_en .line_after::before {
    left: -5.0666666667vw;
    top: 2.4vw;
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  #top .repertory .list .item .card .card_header .card_title_en .line_after::after {
    right: -5.0666666667vw;
    top: 1.3333333333vw;
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  #top .repertory .list .item .card .card_header .card_title_en .line_before::after {
    right: -5.0666666667vw;
    top: 2.4vw;
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  .repertory .list .item .card .card_header .card_time {
    font-size: 4.2666666667vw;
    margin-bottom: 4vw;
  }
  .repertory .list .item .card .card_content {
    flex: 1;
    margin: 1.3333333333vw;
    border-radius: 0 0 3.2vw 3.2vw;
    padding: 5.3333333333vw 4vw;
  }
  .repertory .list .item .card .card_content .card_text_box {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 3.2vw;
  }
  .repertory .list .item .card .card_content .card_text_box .card_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
  }
  .repertory .list .item .card .card_content .btn {
    width: 74.6666666667vw;
    height: 16vw;
    margin: 2.6666666667vw auto 0;
  }
  .repertory .list .item .card .card_content .btn::after {
    top: 6.4vw;
    right: 7.2vw;
    width: 2.1333333333vw;
    height: 3.4666666667vw;
  }
}
/*----------------------------------------
   menu
----------------------------------------*/
#top .menu.section {
  padding: 10.980966325vw 0 8.0527086384vw;
  overflow: hidden;
  position: relative;
}

#top .menu:before {
  content: "";
  position: absolute;
  right: 17.9355783309vw;
  top: 4.39238653vw;
  width: 9.0775988287vw;
  height: 10.541727672vw;
  background-image: url("../images/renewal/menu_illust01.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .menu .title {
  position: relative;
}

#top .menu .title::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -3.0014641288vw;
  width: 12.2254758419vw;
  height: 1.6837481698vw;
  background-image: url("../images/renewal/title_text.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .menu .intro_text {
  font-size: 1.317715959vw;
  line-height: 1.7777777778;
  color: #1f0b03;
  text-align: center;
  margin-top: 2.1229868228vw;
}

#top .menu .menu_bg {
  background-image: url("../images/renewal/menu_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding: 3.2942898975vw 3.6603221083vw 5.4904831625vw;
  margin-top: 2.9282576867vw;
}

#top .menu .menu_bg .menu_inner {
  background-color: #fff;
  border-radius: 10.980966325vw;
  max-width: 92.6793557833vw;
  padding: 5.8565153734vw 6.0761346999vw;
  margin: 0 auto;
  position: relative;
}

#top .menu .menu_bg .menu_image {
  position: absolute;
}

#top .menu .menu_bg .menu_image.basil {
  top: -1.756954612vw;
  right: 4.831625183vw;
  width: 9.3704245974vw;
  height: 8.9311859444vw;
}

#top .menu .menu_bg .menu_image.garlic {
  top: 36.6032210835vw;
  left: -10.4685212299vw;
  width: 14.1288433382vw;
  height: 14.934114202vw;
}

#top .menu .menu_bg .menu_image.oil {
  top: 37.9941434846vw;
  right: -16.1054172767vw;
  width: 22.2547584187vw;
  height: 21.0102489019vw;
}

#top .menu .menu_bg .menu_image.mushroom {
  top: 54.0263543192vw;
  right: -8.4187408492vw;
  width: 13.616398243vw;
  height: 13.17715959vw;
}

#top .menu .menu_bg .menu_image.cheese {
  top: 103.513909224vw;
  right: -12.0058565154vw;
  width: 18.0087847731vw;
  height: 17.3499267936vw;
}

#top .menu .menu_bg .menu_image.selfie {
  top: 123.8653001464vw;
  left: -12.737920937vw;
  width: 16.1786237189vw;
  height: 12.8843338214vw;
}

#top .menu .menu_bg .menu_image.olive {
  bottom: 8.9311859444vw;
  right: -2.2693997072vw;
  width: 15.5929721816vw;
  height: 12.9575402635vw;
}

#top .menu .menu_bg .menu_image.tomato {
  bottom: 1.756954612vw;
  right: -7.8330893119vw;
  width: 14.2752562225vw;
  height: 14.055636896vw;
}

#top .menu .category.lasagna_gratin {
  position: relative;
}

#top .menu .category.lasagna_gratin::before {
  content: "";
  position: absolute;
  top: 7.906295754vw;
  right: -1.9765739385vw;
  width: 7.3938506589vw;
  height: 6.2225475842vw;
  background-image: url("../images/renewal/menu_illust02.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .menu .category + .category {
  margin-top: 3.2942898975vw;
}

#top .menu .category .category_title {
  display: flex;
  gap: 1.1713030747vw;
  align-items: center;
  position: relative;
  padding-bottom: 0.439238653vw;
  border-bottom: 1px solid #222222;
  margin-bottom: 3.4407027818vw;
}

#top .menu .category .category_title::after {
  content: "";
  position: absolute;
  bottom: 0.2196193265vw;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #222222;
}

#top .menu .category .category_title .en {
  font-size: 4.39238653vw;
  font-family: "Little Brushy", sans-serif;
  line-height: normal;
}

#top .menu .category .category_title .jp {
  font-size: 1.5373352855vw;
  font-weight: 500;
}

#top .menu .category .menu_list {
  display: flex;
  flex-direction: column;
  gap: 2.196193265vw;
}

#top .menu .category .menu_list .menu_item {
  display: flex;
  align-items: center;
  gap: 3.1478770132vw;
}

#top .menu .category .menu_list .menu_item .image_box {
  width: 38.7994143485vw;
  aspect-ratio: 530/390;
  overflow: hidden;
}

#top .menu .category .menu_list .menu_item .image_box .image {
  width: 100%;
  height: 100%;
}

#top .menu .category .menu_list .menu_item .menu_content {
  flex: 1;
  padding-right: 1.4641288433vw;
}

#top .menu .category .menu_list .menu_item .menu_content .menu_name {
  font-size: 1.8301610542vw;
  margin-bottom: 1.317715959vw;
}

#top .menu .category .menu_list .menu_item .menu_content .menu_price {
  font-size: 1.317715959vw;
}

#top .menu .category .menu_list .menu_item .menu_content .menu_price .tax_included {
  font-size: 0.9516837482vw;
}

#top .menu .category .menu_list .menu_item .menu_content .menu_description_box {
  display: flex;
  flex-direction: column;
  gap: 1.317715959vw;
  margin-top: 2.3426061493vw;
  max-width: 35.1390922401vw;
}

#top .menu .category .menu_list .menu_item .menu_content .menu_description {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
}

#top .menu .btn {
  margin: 6.2225475842vw auto 0;
}

@media (max-width: 768px) {
  #top .menu.section {
    padding: 21.3333333333vw 0 8vw;
    overflow: hidden;
    position: relative;
  }
  #top .menu:before {
    content: "";
    position: absolute;
    right: 8vw;
    top: 21.8666666667vw;
    width: 16vw;
    height: 18.6666666667vw;
    background-image: url("../images/renewal/menu_illust01.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  #top .menu .title {
    position: relative;
  }
  #top .menu .title::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -7.2vw;
    width: 44.5333333333vw;
    height: 6.1333333333vw;
    background-image: url("../images/renewal/title_text.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  #top .menu .intro_text {
    font-size: 3.7333333333vw;
    line-height: 1.7777777778;
    color: #1f0b03;
    text-align: center;
    margin-top: 7.7333333333vw;
  }
  #top .menu .menu_bg {
    background-image: url("../images/renewal/menu_bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 10.6666666667vw 5.3333333333vw 10.6666666667vw;
    margin-top: 10.6666666667vw;
  }
  #top .menu .menu_bg .menu_inner {
    background-color: #fff;
    border-radius: 13.3333333333vw;
    max-width: 337.6vw;
    padding: 10.6666666667vw 4vw;
    margin: 0 auto;
    position: relative;
  }
  #top .menu .menu_bg .menu_image {
    position: absolute;
  }
  #top .menu .menu_bg .menu_image.basil {
    top: -2.6666666667vw;
    right: 20px;
    width: 17.0666666667vw;
    height: 16.2666666667vw;
  }
  #top .menu .menu_bg .menu_image.garlic {
    display: none;
  }
  #top .menu .menu_bg .menu_image.oil {
    display: none;
  }
  #top .menu .menu_bg .menu_image.mushroom {
    display: none;
  }
  #top .menu .menu_bg .menu_image.cheese {
    display: none;
  }
  #top .menu .menu_bg .menu_image.selfie {
    display: none;
  }
  #top .menu .menu_bg .menu_image.olive {
    display: none;
  }
  #top .menu .menu_bg .menu_image.tomato {
    display: none;
  }
  #top .menu .category.lasagna_gratin {
    position: relative;
  }
  #top .menu .category.lasagna_gratin::before {
    display: none;
  }
  #top .menu .category + .category {
    margin-top: 12vw;
  }
  #top .menu .category .category_title {
    display: flex;
    flex-direction: column;
    gap: 1.3333333333vw;
    align-items: flex-start;
    position: relative;
    padding-bottom: 1.6vw;
    border-bottom: 1px solid #222222;
    margin-bottom: 8vw;
  }
  #top .menu .category .category_title::after {
    content: "";
    position: absolute;
    bottom: 0.8vw;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #222222;
  }
  #top .menu .category .category_title .en {
    font-size: 16vw;
    font-family: "Little Brushy", sans-serif;
    line-height: normal;
  }
  #top .menu .category .category_title .jp {
    font-size: 5.6vw;
    font-weight: 500;
  }
  #top .menu .category .menu_list {
    display: flex;
    flex-direction: column;
    gap: 8vw;
  }
  #top .menu .category .menu_list .menu_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.3333333333vw;
  }
  #top .menu .category .menu_list .menu_item .image_box {
    width: 100%;
    aspect-ratio: 530/390;
    overflow: hidden;
  }
  #top .menu .category .menu_list .menu_item .image_box .image {
    width: 100%;
    height: 100%;
  }
  #top .menu .category .menu_list .menu_item .menu_content {
    flex: 1;
    padding-right: 5.3333333333vw;
  }
  #top .menu .category .menu_list .menu_item .menu_content .menu_name {
    font-size: 6.6666666667vw;
    margin-bottom: 1.3333333333vw;
  }
  #top .menu .category .menu_list .menu_item .menu_content .menu_price {
    font-size: 4.8vw;
  }
  #top .menu .category .menu_list .menu_item .menu_content .menu_price .tax_included {
    font-size: 3.4666666667vw;
  }
  #top .menu .category .menu_list .menu_item .menu_content .menu_description_box {
    display: flex;
    flex-direction: column;
    gap: 4.8vw;
    margin-top: 5.3333333333vw;
    max-width: 128vw;
  }
  #top .menu .category .menu_list .menu_item .menu_content .menu_description {
    font-size: 4.8vw;
    line-height: 1.6111111111;
  }
  #top .menu .btn {
    margin: 10.6666666667vw auto 0;
  }
}
/*----------------------------------------
   contact_box_area
----------------------------------------*/
.contact_box_area {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 1.756954612vw;
}

.contact_box_area .contact_phone_box {
  width: 31.7715959004vw;
  height: 11.420204978vw;
  border: 1px solid #222222;
  background-color: #fff;
  border-radius: 0.5856515373vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}

.contact_box_area .contact_phone_box:hover {
  opacity: 0.8;
}

.contact_box_area .contact_phone_box .contact_label {
  font-size: 1.317715959vw;
}

.contact_box_area .contact_phone_box .phone_number_area {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.878477306vw;
  position: relative;
  margin-top: 0.7320644217vw;
}

.contact_box_area .contact_phone_box .phone_number_area::before {
  content: "";
  position: absolute;
  left: -2.4158125915vw;
  top: 50%;
  transform: translateY(-50%);
  width: 1.756954612vw;
  height: 2.4890190337vw;
  background-image: url("../images/renewal/tel.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.contact_box_area .contact_phone_box .phone_number_area .phone_number {
  font-size: 2.7818448023vw;
  font-weight: 700;
  color: #1f0b03;
  font-family: "Alte Haas Grotesk", sans-serif;
}

.contact_box_area .contact_phone_box .business_hours_area {
  display: flex;
  flex-direction: column;
  margin-top: 0.3660322108vw;
  letter-spacing: -0.02em;
}

.contact_box_area .contact_phone_box .business_hours_area .business_hours_text {
  font-size: 1.0248901903vw;
  line-height: 1.2142857143;
}

.contact_box_area .contact_phone_box .business_hours_area .closed_day_text {
  font-size: 1.0248901903vw;
  line-height: 1.2142857143;
}

.contact_box_area .contact_form_box {
  width: 27.8184480234vw;
  height: 11.420204978vw;
  background-color: #da6334;
  border-radius: 0.5856515373vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity 0.3s;
  position: relative;
}

.contact_box_area .contact_form_box::before {
  content: "";
  width: 2.9282576867vw;
  height: 1.9765739385vw;
  background-image: url("../images/renewal/mail.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 1.317715959vw;
  display: block;
}

.contact_box_area .contact_form_box:hover {
  opacity: 0.8;
}

.contact_box_area .contact_form_box .form_text {
  font-size: 1.5373352855vw;
  color: #fff;
  position: relative;
}

.contact_box_area .contact_form_box .form_text::after {
  content: "";
  position: absolute;
  right: -1.6837481698vw;
  top: 0.5856515373vw;
  width: 0.6588579795vw;
  height: 1.0248901903vw;
  background-image: url("../images/renewal/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 768px) {
  .contact_box_area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8vw;
  }
  .contact_box_area .contact_phone_box {
    width: 64vw;
    height: auto;
    padding: 5.3333333333vw 0;
    border: 1px solid #222222;
    background-color: #fff;
    border-radius: 2.1333333333vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s;
  }
  .contact_box_area .contact_phone_box:hover {
    opacity: 0.8;
  }
  .contact_box_area .contact_phone_box .contact_label {
    font-size: 3.7333333333vw;
  }
  .contact_box_area .contact_phone_box .phone_number_area {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.6666666667vw;
    position: relative;
    margin-top: 2.6666666667vw;
  }
  .contact_box_area .contact_phone_box .phone_number_area::before {
    content: "";
    position: absolute;
    left: -5.8666666667vw;
    top: 50%;
    transform: translateY(-50%);
    width: 4.2666666667vw;
    height: 6.6666666667vw;
    background-image: url("../images/renewal/tel.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .contact_box_area .contact_phone_box .phone_number_area .phone_number {
    font-size: 6.4vw;
    font-weight: 700;
    color: #1f0b03;
    font-family: "Alte Haas Grotesk", sans-serif;
  }
  .contact_box_area .contact_phone_box .business_hours_area {
    display: flex;
    flex-direction: column;
    margin-top: 1.3333333333vw;
    letter-spacing: -0.02em;
  }
  .contact_box_area .contact_phone_box .business_hours_area .business_hours_text {
    font-size: 2.6666666667vw;
    line-height: 1.2;
  }
  .contact_box_area .contact_phone_box .business_hours_area .closed_day_text {
    font-size: 2.6666666667vw;
    line-height: 1.2142857143;
  }
  .contact_box_area .contact_form_box {
    width: 64vw;
    height: auto;
    padding: 5.3333333333vw 0;
    background-color: #da6334;
    border-radius: 2.1333333333vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity 0.3s;
    position: relative;
  }
  .contact_box_area .contact_form_box::before {
    content: "";
    width: 7.4666666667vw;
    height: 5.0666666667vw;
    background-image: url("../images/renewal/mail.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-bottom: 3.2vw;
    display: block;
  }
  .contact_box_area .contact_form_box:hover {
    opacity: 0.8;
  }
  .contact_box_area .contact_form_box .form_text {
    font-size: 3.7333333333vw;
    color: #fff;
    position: relative;
  }
  .contact_box_area .contact_form_box .form_text::after {
    content: "";
    position: absolute;
    right: -6.1333333333vw;
    top: 0.5333333333vw;
    width: 2.4vw;
    height: 3.7333333333vw;
    background-image: url("../images/renewal/arrow.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
}
/*----------------------------------------
   image_area
----------------------------------------*/
.image_area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  margin: 8.0527086384vw auto 0;
}

.image_area .image_box {
  width: 100%;
}

.image_area .image_box .image {
  width: 100%;
  height: 100%;
}

@media (max-width: 768px) {
  .image_area {
    margin: 10.6666666667vw auto 0;
  }
}
/*----------------------------------------
   news
----------------------------------------*/
#top .news.section {
  padding: 5.8565153734vw 0;
}

#top .news .inner .intro_text {
  text-align: center;
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin-top: 2.7818448023vw;
}

#top .news .inner .news_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.756954612vw 2.0497803807vw;
  width: 58.5651537335vw;
  margin: 3.3674963397vw auto 0;
}

#top .news .inner .news_list .news_item {
  background-color: #fff;
  border-radius: 0 0 0.5856515373vw 0.5856515373vw;
  transition: opacity 0.3s;
  box-shadow: 0 0 1.3909224012vw 0.1464128843vw rgba(224, 221, 207, 0.16);
  overflow: hidden;
}

#top .news .inner .news_list .news_item:hover {
  opacity: 0.8;
}

#top .news .inner .news_list .news_item .news_link {
  display: block;
  text-decoration: none;
  color: inherit;
}

#top .news .inner .news_list .news_item .image_box {
  width: 100%;
  aspect-ratio: 348/200;
}

#top .news .inner .news_list .news_item .image_box .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#top .news .inner .news_list .news_item .news_content {
  padding: 1.8301610542vw 1.0980966325vw 0.7320644217vw 1.4641288433vw;
  display: flex;
  flex-direction: column;
  gap: 1.317715959vw;
}

#top .news .inner .news_list .news_item .news_content .news_date {
  font-size: 1.317715959vw;
  color: #b5b5b5;
  font-weight: 500;
}

#top .news .inner .news_list .news_item .news_content .news_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  color: #222222;
  font-weight: 500;
}

#top .news .inner .btn {
  margin-top: 4.39238653vw;
}

@media (max-width: 768px) {
  #top .news.section {
    padding: 10.6666666667vw 0;
  }
  #top .news .inner .intro_text {
    text-align: center;
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    margin-top: 5.3333333333vw;
  }
  #top .news .inner .news_list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.6666666667vw 2.6666666667vw;
    margin: 5.3333333333vw auto 0;
    width: 100%;
  }
  #top .news .inner .news_list .news_item {
    background-color: #fff;
    border-radius: 0 2.1333333333vw 2.1333333333vw 0;
    transition: opacity 0.3s;
    box-shadow: 0 0 2.6666666667vw 0.5333333333vw rgba(224, 221, 207, 0.16);
    overflow: hidden;
  }
  #top .news .inner .news_list .news_item:hover {
    opacity: 0.8;
  }
  #top .news .inner .news_list .news_item .news_link {
    display: grid;
    grid-template-columns: 26.6666666667vw 1fr;
  }
  #top .news .inner .news_list .news_item .image_box {
    width: 100%;
    height: 100%;
    min-height: 32vw;
  }
  #top .news .inner .news_list .news_item .image_box .image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #top .news .inner .news_list .news_item .news_content {
    padding: 2.6666666667vw 4vw;
    display: flex;
    flex-direction: column;
    gap: 2.6666666667vw;
  }
  #top .news .inner .news_list .news_item .news_content .news_date {
    font-size: 3.7333333333vw;
    color: #b5b5b5;
    font-weight: 500;
  }
  #top .news .inner .news_list .news_item .news_content .news_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    color: #222222;
    font-weight: 500;
  }
  #top .news .inner .news_list .news_item:nth-child(n+4) {
    display: none;
  }
  #top .news .inner .btn {
    margin-top: 10.6666666667vw;
  }
}
/*----------------------------------------
   calendar
----------------------------------------*/
#top .calender.section {
  padding: 7.3206442167vw 0;
  background-color: #f8f6f3;
}

#top .calender .inner .intro_text {
  text-align: center;
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin-top: 2.7818448023vw;
}

#top .calender .inner .schedule_table_wrapper {
  margin-top: 2.9282576867vw;
  margin-bottom: 2.9282576867vw;
  display: flex;
  align-items: center;
  gap: 4.39238653vw;
}

#top .calender .inner .schedule_table {
  width: 49.7803806735vw;
  border-collapse: collapse;
  background-color: #fff;
  box-shadow: 0 0.1464128843vw 0.5856515373vw rgba(0, 0, 0, 0.1);
  height: 10.980966325vw;
}

#top .calender .inner .schedule_table thead {
  background-color: #42864b;
}

#top .calender .inner .schedule_table thead th {
  color: #fff;
  font-size: 1.1713030747vw;
  font-weight: 500;
  padding: 1.0980966325vw 0.7320644217vw;
  text-align: center;
  border: none;
}

#top .calender .inner .schedule_table thead th.schedule_header {
  text-align: left;
  padding-left: 1.4641288433vw;
}

#top .calender .inner .schedule_table tbody td {
  padding: 1.0980966325vw 0.7320644217vw;
  text-align: center;
  font-size: 1.1713030747vw;
  border: 1px solid #e4e1db;
  background-color: #fff;
}

#top .calender .inner .schedule_table tbody td.schedule_time {
  text-align: left;
  padding-left: 1.4641288433vw;
  font-weight: 500;
  background-color: #f8f6f3;
}

#top .calender .inner .schedule_table tbody .schedule_open {
  color: #42864b;
  font-size: 1.4641288433vw;
  display: inline-block;
}

#top .calender .inner .schedule_table tbody .schedule_closed {
  color: #42864b;
  font-size: 1.1713030747vw;
  font-weight: 500;
}

#top .calender .inner .schedule_table_note {
  font-size: 1.1713030747vw;
  margin-top: 0.7320644217vw;
}

#top .calender .inner .calender_area {
  width: 100%;
}

@media (max-width: 768px) {
  #top .calender.section {
    padding: 10.6666666667vw 0;
  }
  #top .calender .inner .intro_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    margin-top: 5.3333333333vw;
  }
  #top .calender .inner .schedule_table_wrapper {
    margin-top: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  #top .calender .inner .schedule_table_area {
    width: 100%;
  }
  #top .calender .inner .schedule_table {
    font-size: 3.2vw;
    width: 100%;
    height: auto;
  }
  #top .calender .inner .schedule_table thead th {
    font-size: 3.2vw;
    padding: 2.6666666667vw 1.3333333333vw;
  }
  #top .calender .inner .schedule_table thead th.schedule_header {
    padding-left: 2.6666666667vw;
  }
  #top .calender .inner .schedule_table tbody td {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.2vw;
  }
  #top .calender .inner .schedule_table tbody td.schedule_time {
    padding-left: 2.6666666667vw;
  }
  #top .calender .inner .schedule_table tbody .schedule_open {
    font-size: 4.2666666667vw;
  }
  #top .calender .inner .schedule_table tbody .schedule_closed {
    font-size: 3.2vw;
  }
  #top .calender .inner .schedule_table_note {
    font-size: 3.2vw;
    margin-top: 2.6666666667vw;
  }
  #top .calender .inner .calender_area {
    flex-direction: column;
    gap: 2.6666666667vw;
    margin-top: 2.6666666667vw;
  }
  #top .calender .inner .calender_area .calender_box {
    width: 100%;
  }
}
/*----------------------------------------
   concept
----------------------------------------*/
#top .concept.section {
  padding: 7.6866764275vw 0 10.2489019034vw;
  position: relative;
}

#top .concept.section::before {
  content: "";
  position: absolute;
  bottom: 3.3674963397vw;
  left: 20.4978038067vw;
  width: 9.4436310395vw;
  height: 6.149341142vw;
  background-image: url("../images/renewal/concept_illust02.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .concept .inner .content_area {
  display: flex;
  flex-direction: column;
  gap: 4.39238653vw;
  margin-top: 9.1508052709vw;
}

#top .concept .inner .content_area .content_block {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#top .concept .inner .content_area .content_block.content_block_01,
#top .concept .inner .content_area .content_block.content_block_03 {
  flex-direction: row-reverse;
}

#top .concept .inner .content_area .content_block.content_block_01 {
  margin-right: auto;
}

#top .concept .inner .content_area .content_block .content_image {
  margin-left: 5.1244509517vw;
}

#top .concept .inner .content_area .content_block .content_image .image_text {
  font-size: 1.317715959vw;
  margin-top: 1.4641288433vw;
}

#top .concept .inner .content_area .content_block .image_box {
  position: relative;
  z-index: 1;
  width: 38.0673499268vw;
}

#top .concept .inner .content_area .content_block.content_block_01 .image_box {
  width: 20.4978038067vw;
}

#top .concept .inner .content_area .content_block.content_block_01 .content_image .image_box::before {
  content: "";
  position: absolute;
  top: -3.3674963397vw;
  left: -7.1010248902vw;
  width: 8.0527086384vw;
  height: 4.3191800878vw;
  background-image: url("../images/renewal/concept_text01.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}

#top .concept .inner .content_area .content_block.content_block_02 .image_box::before {
  content: "";
  position: absolute;
  top: 0.5856515373vw;
  right: -2.7086383602vw;
  width: 9.5900439239vw;
  height: 4.9780380673vw;
  background-image: url("../images/renewal/concept_text02.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}

#top .concept .inner .content_area .content_block.content_block_03 .image_box::before {
  content: "";
  position: absolute;
  top: 0vw;
  left: -4.6120058565vw;
  width: 9.0775988287vw;
  height: 5.270863836vw;
  background-image: url("../images/renewal/concept_text03.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}

#top .concept .inner .content_area .content_block.content_block_01 .content_image .image_box::after {
  content: "";
  position: absolute;
  top: -3.0014641288vw;
  right: -14.3484626647vw;
  width: 16.7642752562vw;
  height: 17.3499267936vw;
  background-image: url("../images/renewal/concept_illust01.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}

#top .concept .inner .content_area .content_block.content_block_01 .image_box .image {
  border-radius: 1.756954612vw;
}

#top .concept .inner .content_area .content_block .content_image .image_box .image {
  width: 100%;
  height: auto;
  display: block;
}

#top .concept .inner .content_area .content_block .content_text {
  width: 40.2635431918vw;
}

#top .concept .inner .content_area .content_block.content_block_02 .content_text {
  padding-left: 1.4641288433vw;
}

#top .concept .inner .content_area .content_block.content_block_03 .content_text {
  padding-right: 1.4641288433vw;
}

#top .concept .inner .content_area .content_block .content_text .heading {
  font-size: 1.8301610542vw;
  font-family: "Zen Kurenaido", sans-serif;
  font-weight: 700;
  text-shadow: 0.02em 0 currentColor, -0.02em 0 currentColor, 0 0.02em currentColor, 0 -0.02em currentColor;
}

#top .concept .inner .content_area .content_block .content_text .sub_heading {
  font-size: 1.5373352855vw;
  color: #da6334;
  font-weight: 500;
  margin-top: 2.196193265vw;
}

#top .concept .inner .content_area .content_block .content_text .text_area {
  margin-top: 1.756954612vw;
  display: flex;
  flex-direction: column;
  gap: 1.317715959vw;
}

#top .concept .inner .content_area .content_block .content_text .text_area .text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
}

#top .concept .btn {
  margin: 4.7584187408vw auto 0;
}

#top .concept .btn .btn_text {
  letter-spacing: -0.06em;
}

/* 写真ができるまで1カラム */
#top .concept .inner .content_area .content_block {
  margin: 0 auto;
}

#top .concept .inner .content_area .content_block .content_image {
  display: none;
}

#top .concept .inner .content_area .content_block .image_box {
  display: none;
}

#top .concept .inner .content_area .content_block .content_text {
  width: 58.5651537335vw;
}

#top .concept .inner .content_area .content_block.content_block_02 .content_text {
  padding-left: 0;
}

/* ここまでを削除 */
#top .concept .btn {
  display: none;
}

@media (max-width: 768px) {
  #top .concept.section {
    padding: 10.6666666667vw 0 10.6666666667vw;
    position: relative;
  }
  #top .concept.section::before {
    display: none;
  }
  #top .concept .inner .content_area {
    display: flex;
    flex-direction: column;
    gap: 16vw;
    margin-top: 21.3333333333vw;
  }
  #top .concept .inner .content_area .content_block {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
  }
  #top .concept .inner .content_area .content_block.content_block_01,
#top .concept .inner .content_area .content_block.content_block_03 {
    flex-direction: column;
  }
  #top .concept .inner .content_area .content_block.content_block_01 {
    margin-right: 0;
  }
  #top .concept .inner .content_area .content_block .content_image {
    margin-left: 0;
  }
  #top .concept .inner .content_area .content_block .content_image .image_text {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
  #top .concept .inner .content_area .content_block .image_box {
    position: relative;
    z-index: 1;
    width: 100%;
  }
  #top .concept .inner .content_area .content_block.content_block_01 .image_box {
    width: 100%;
  }
  #top .concept .inner .content_area .content_block.content_block_01 .content_image .image_box::before {
    content: "";
    position: absolute;
    top: -8vw;
    left: 0;
    width: 18.6666666667vw;
    height: 10.6666666667vw;
    background-image: url("../images/renewal/concept_text01.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
  }
  #top .concept .inner .content_area .content_block.content_block_02 .image_box::before {
    content: "";
    position: absolute;
    top: -8vw;
    right: unset;
    left: 0;
    width: 21.3333333333vw;
    height: 10.6666666667vw;
    background-image: url("../images/renewal/concept_text02.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
  }
  #top .concept .inner .content_area .content_block.content_block_03 .image_box::before {
    content: "";
    position: absolute;
    top: -8vw;
    left: 0;
    width: 21.3333333333vw;
    height: 10.6666666667vw;
    background-image: url("../images/renewal/concept_text03.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
  }
  #top .concept .inner .content_area .content_block.content_block_01 .content_image .image_box::after {
    display: none;
  }
  #top .concept .inner .content_area .content_block.content_block_01 .image_box .image {
    border-radius: 4.2666666667vw;
  }
  #top .concept .inner .content_area .content_block .content_image .image_box .image {
    width: 64vw;
    height: auto;
    display: block;
  }
  #top .concept .inner .content_area .content_block .content_text {
    width: 100%;
    padding: 5.3333333333vw 0;
  }
  #top .concept .inner .content_area .content_block.content_block_02 .content_text {
    padding: 5.3333333333vw 0;
  }
  #top .concept .inner .content_area .content_block.content_block_03 .content_text {
    padding: 5.3333333333vw 0;
  }
  #top .concept .inner .content_area .content_block .content_text .heading {
    font-size: 4.2666666667vw;
    font-family: "Zen Kurenaido", sans-serif;
  }
  #top .concept .inner .content_area .content_block .content_text .sub_heading {
    font-size: 3.7333333333vw;
    color: #da6334;
    font-weight: 500;
    margin-top: 5.3333333333vw;
  }
  #top .concept .inner .content_area .content_block .content_text .text_area {
    margin-top: 2.6666666667vw;
    display: flex;
    flex-direction: column;
    gap: 2.6666666667vw;
  }
  #top .concept .inner .content_area .content_block .content_text .text_area .text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
  }
  #top .concept .btn {
    margin: 10.6666666667vw auto 0;
  }
}
/*----------------------------------------
   inside
----------------------------------------*/
#top .inside.section {
  padding: 0 0 5.4904831625vw;
  background-color: #fff;
  width: 100%;
  margin: 0 auto;
}

#top .inside .top_area {
  margin-bottom: 4.39238653vw;
  position: relative;
}

#top .inside .top_area .gallery_top_area {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

#top .inside .top_area .gallery_bottom_area {
  display: grid;
  grid-template-columns: 39.8243045388vw 1fr;
}

#top .inside .top_area .header_area {
  padding: 3.6603221083vw 3.6603221083vw 4.0263543192vw 3.6603221083vw;
  background-color: #fff;
  position: absolute;
  top: 26.3543191801vw;
  right: 0;
  width: 57.1010248902vw;
  height: 21.4494875549vw;
  z-index: 1;
}

#top .inside .top_area .header_area .title {
  align-items: start;
}

#top .inside .top_area .header_area .intro_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin-top: 1.317715959vw;
}

#top .inside .inner .bottom_area {
  margin-top: 5.1244509517vw;
}

#top .inside .inner .bottom_area .info_table {
  width: 57.1010248902vw;
  border-collapse: collapse;
  border-top: 1px solid #6d5442;
  border-bottom: 1px solid #6d5442;
  margin: 0 auto;
}

#top .inside .inner .bottom_area .info_table tr {
  border-bottom: 1px solid #6d5442;
}

#top .inside .inner .bottom_area .info_table tr:last-child {
  border-bottom: none;
}

#top .inside .inner .bottom_area .info_table .info_label {
  padding: 1.8301610542vw;
  font-size: 1.317715959vw;
  font-weight: 500;
  color: #6d5442;
  text-align: left;
  width: 10.980966325vw;
}

#top .inside .inner .bottom_area .info_table .info_value {
  padding: 1.8301610542vw;
  font-size: 1.317715959vw;
}

@media screen and (max-width: 768px) {
  #top .inside.section {
    padding: 0 0 10.6666666667vw;
  }
  #top .inside .top_area {
    margin-bottom: 5.3333333333vw;
  }
  #top .inside .top_area .header_area {
    padding: 5.3333333333vw;
    position: static;
    top: 64vw;
    width: 100%;
    height: auto;
  }
  #top .inside .top_area .header_area .title {
    align-items: start;
  }
  #top .inside .top_area .header_area .intro_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    margin-top: 2.6666666667vw;
  }
  #top .inside .inner .bottom_area {
    margin-top: 5.3333333333vw;
  }
  #top .inside .inner .bottom_area .info_table {
    width: 100%;
  }
  #top .inside .inner .bottom_area .info_table .info_label {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
    width: 26%;
  }
  #top .inside .inner .bottom_area .info_table .info_value {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
/*----------------------------------------
   voice
----------------------------------------*/
#top .voice.section {
  padding: 5.8565153734vw 0;
  background-color: #f4f8f3;
}

#top .voice .inner .intro_text {
  text-align: center;
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin: 2.5622254758vw auto 0;
}

#top .voice .inner .voice_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5622254758vw 1.8301610542vw;
  margin-top: 3.6603221083vw;
}

#top .voice .inner .voice_list .voice_item {
  width: 100%;
}

#top .voice .inner .voice_list .voice_item .voice_card {
  background-color: #fff;
  border: 1px solid #e4e4e4;
  padding: 1.4641288433vw 2.196193265vw 2.196193265vw 2.9282576867vw;
  height: 100%;
  display: flex;
  flex-direction: column;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_header {
  display: flex;
  align-items: center;
  gap: 0.7320644217vw;
  padding-bottom: 0.7320644217vw;
  margin-bottom: 0.7320644217vw;
  position: relative;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_header::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #d0cdcc;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_header .image_box {
  width: 5.1244509517vw;
  height: 5.1244509517vw;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_header .location {
  font-size: 1.6105417277vw;
  color: #6f6f6f;
  position: relative;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_name {
  font-size: 1.1713030747vw;
  color: #6f6f6f;
  margin-top: 0.7320644217vw;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_link {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  color: #ad9d88;
  transition: opacity 0.3s;
  align-self: flex-start;
  margin-left: auto;
  position: relative;
  padding-right: 1.317715959vw;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_link::after {
  content: "";
  position: absolute;
  top: 0.7320644217vw;
  right: 0;
  width: 0.5856515373vw;
  height: 0.9516837482vw;
  background-image: url("../images/renewal/arrow_brown.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .voice .inner .voice_list .voice_item .voice_card .voice_link:hover {
  opacity: 0.8;
}

@media screen and (max-width: 768px) {
  #top .voice.section {
    padding: 10.6666666667vw 0;
  }
  #top .voice .inner .intro_text {
    font-size: 3.7333333333vw;
    margin: 5.3333333333vw auto 0;
  }
  #top .voice .inner .voice_list {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw 2.6666666667vw;
    margin-top: 8vw;
  }
  #top .voice .inner .voice_list .voice_item {
    width: 100%;
  }
  #top .voice .inner .voice_list .voice_item .voice_card {
    padding: 2.6666666667vw 4vw 4vw 5.3333333333vw;
    height: 100%;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_header {
    display: flex;
    align-items: center;
    gap: 1.3333333333vw;
    margin-bottom: 2.6666666667vw;
    padding-bottom: 2.6666666667vw;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_header .image_box {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_header .location {
    font-size: 4.2666666667vw;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_name {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_link {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    padding-right: 3.4666666667vw;
  }
  #top .voice .inner .voice_list .voice_item .voice_card .voice_link::after {
    top: 1.8666666667vw;
    right: 0;
    width: 1.6vw;
    height: 2.6666666667vw;
  }
}
/*----------------------------------------
   faq
----------------------------------------*/
#top .faq.section {
  padding: 6.9546120059vw 0 9.5168374817vw;
}

#top .faq .inner .faq_list {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 62.9575402635vw;
  margin: 0 auto;
  border-top: 1px solid #494949;
  border-bottom: 1px solid #494949;
  margin-top: 2.9282576867vw;
}

#top .faq .inner .faq_list .faq_item {
  border-bottom: 1px dashed #adadad;
  padding: 1.8301610542vw 1.0980966325vw 1.8301610542vw 1.4641288433vw;
}

#top .faq .inner .faq_list .faq_item:last-child {
  border-bottom: none;
}

#top .faq .inner .faq_list .faq_item .question_area {
  display: flex;
  align-items: flex-start;
  gap: 1.1713030747vw;
  margin-bottom: 16px;
}

#top .faq .inner .faq_list .faq_item .question_area .icon_q {
  flex-shrink: 0;
  width: 2.196193265vw;
  height: 2.196193265vw;
  border-radius: 50%;
  background-color: #42864b;
  color: #fff;
  font-size: 3.074670571vw;
  font-family: Little Brushy, sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
}

#top .faq .inner .faq_list .faq_item .question_area .question_text {
  font-size: 1.5373352855vw;
  line-height: 1.380952381;
  font-weight: 500;
}

#top .faq .inner .faq_list .faq_item .answer_area {
  display: flex;
  align-items: flex-start;
  gap: 1.1713030747vw;
}

#top .faq .inner .faq_list .faq_item .answer_area .icon_a {
  flex-shrink: 0;
  width: 2.196193265vw;
  height: 2.196193265vw;
  border-radius: 50%;
  background-color: #da6334;
  color: #fff;
  font-size: 3.074670571vw;
  font-family: Little Brushy, sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
}

#top .faq .inner .faq_list .faq_item .answer_area .answer_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
}

@media screen and (max-width: 768px) {
  #top .faq.section {
    padding: 10.6666666667vw 0 16vw;
  }
  #top .faq .inner .faq_list {
    width: 100%;
    margin-top: 5.3333333333vw;
  }
  #top .faq .inner .faq_list .faq_item {
    padding: 2.6666666667vw 1.3333333333vw 2.6666666667vw 2.6666666667vw;
  }
  #top .faq .inner .faq_list .faq_item .question_area {
    gap: 2.6666666667vw;
    margin-bottom: 2.6666666667vw;
  }
  #top .faq .inner .faq_list .faq_item .question_area .icon_q {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    font-size: 8vw;
  }
  #top .faq .inner .faq_list .faq_item .question_area .question_text {
    font-size: 3.7333333333vw;
    line-height: 1.380952381;
  }
  #top .faq .inner .faq_list .faq_item .answer_area {
    gap: 2.6666666667vw;
  }
  #top .faq .inner .faq_list .faq_item .answer_area .icon_a {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    font-size: 8vw;
  }
  #top .faq .inner .faq_list .faq_item .answer_area .answer_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
  }
}
/*----------------------------------------
   access
----------------------------------------*/
#top .access.section {
  padding: 6.2225475842vw 0 6.9546120059vw;
  background-color: #f5f2eb;
}

#top .access .inner .info_table_area {
  margin-bottom: 4.39238653vw;
}

#top .access .inner .info_table_area .info_table {
  width: 57.1010248902vw;
  border-collapse: collapse;
  margin: 0 auto;
  margin-top: 2.5622254758vw;
}

#top .access .inner .info_table_area .info_table tr {
  border-bottom: 1px solid #ad9d88;
}

#top .access .inner .info_table_area .info_table .info_label {
  padding: 1.4641288433vw;
  font-size: 1.317715959vw;
  font-weight: 500;
  color: #6d5442;
  text-align: left;
  width: 12.0790629575vw;
}

#top .access .inner .info_table_area .info_table .info_value {
  padding: 1.4641288433vw 1.0980966325vw 1.4641288433vw 1.4641288433vw;
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
}

#top .access .inner .parking_area {
  margin-top: 4.0263543192vw;
}

#top .access .inner .parking_area .parking_title {
  font-size: 1.756954612vw;
  font-family: Zen Kurenaido, sans-serif;
  text-align: center;
  margin-bottom: 2.5622254758vw;
}

#top .access .inner .parking_area .parking_images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.439238653vw;
}

#top .access .inner .parking_area .parking_images .parking_image_item {
  width: 100%;
}

#top .access .inner .parking_area .parking_images .parking_image_item .image_box {
  width: 100%;
}

#top .access .inner .parking_area .parking_images .parking_image_item .image_box .image {
  width: 100%;
  height: auto;
  display: block;
}

@media screen and (max-width: 768px) {
  #top .access.section {
    padding: 10.6666666667vw 0 16vw;
  }
  #top .access .inner .info_table_area {
    margin-bottom: 10.6666666667vw;
  }
  #top .access .inner .info_table_area .info_table {
    width: 100%;
    margin-top: 5.3333333333vw;
  }
  #top .access .inner .info_table_area .info_table tr {
    display: flex;
    align-items: flex-start;
  }
  #top .access .inner .info_table_area .info_table .info_label {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    width: 26%;
  }
  #top .access .inner .info_table_area .info_table .info_value {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
  }
  #top .access .inner .parking_area {
    margin-top: 10.6666666667vw;
  }
  #top .access .inner .parking_area .parking_title {
    font-size: 4.8vw;
    margin-bottom: 5.3333333333vw;
  }
  #top .access .inner .parking_area .parking_images {
    grid-template-columns: 1fr;
    gap: 1.6vw;
  }
  #top .access .inner .parking_area .parking_images .parking_image_item {
    width: 100%;
  }
  #top .access .inner .parking_area .parking_images .parking_image_item .image_box {
    width: 100%;
  }
  #top .access .inner .parking_area .parking_images .parking_image_item .image_box .image {
    width: 100%;
    height: auto;
    display: block;
  }
}
/*----------------------------------------
   instagram
----------------------------------------*/
#top .instagram.section {
  padding: 8.78477306vw 0 6.2225475842vw;
}

#top .instagram .inner .header_area .instagram_logo_area {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.0980966325vw;
}

#top .instagram .inner .header_area .instagram_logo_area .image_box.instagram_logo {
  width: 2.196193265vw;
  height: 2.196193265vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

#top .instagram .inner .header_area .instagram_logo_area .image_box.instagram_text {
  width: 12.9575402635vw;
  height: 3.7335285505vw;
}

#top .instagram .inner .header_area .intro_text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  color: #222222;
  text-align: center;
  margin-top: 2.5622254758vw;
}

#top .instagram .inner .instagram_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 3.6603221083vw;
  width: 73.2064421669vw;
  margin: 3.6603221083vw auto 0;
}

#top .instagram .inner .instagram_list .instagram_item {
  width: 100%;
  aspect-ratio: 1;
}

#top .instagram .inner .instagram_list .instagram_item .image_box {
  width: 100%;
  height: 100%;
}

#top .instagram .inner .instagram_list .instagram_item .image_box .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

#top .instagram .inner .btn {
  margin: 4.39238653vw auto 0;
  background-image: url("../images/renewal/btn_instagram_new.png");
  transition: all 0.3s;
}

#top .instagram .inner .btn::after {
  background-image: url("../images/renewal/arrow_instagram.svg");
  transition: all 0.3s;
}

#top .instagram .inner .btn:hover {
  background-image: url("../images/renewal/btn_instagram_new_hover.png");
}

#top .instagram .inner .btn:hover::after {
  background-image: url("../images/renewal/arrow_black_hover.svg");
}

#top .instagram .inner .btn:hover .btn_text {
  background: unset;
  -webkit-background-clip: unset;
  background-clip: unset;
  -webkit-text-fill-color: unset;
  color: #fff;
}

#top .instagram .inner .btn .btn_text {
  background: linear-gradient(90deg, #ff6b3d, #ff4757, #ff6b9d, #ff69b4, #ff1493);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: all 0.3s;
  color: #fff;
}

@media screen and (max-width: 768px) {
  #top .instagram.section {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  #top .instagram .inner .header_area .instagram_logo_area {
    gap: 1.3333333333vw;
  }
  #top .instagram .inner .header_area .instagram_logo_area .image_box.instagram_logo {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    font-size: 8vw;
  }
  #top .instagram .inner .header_area .instagram_logo_area .image_box.instagram_text {
    width: 47.2vw;
    height: auto;
  }
  #top .instagram .inner .header_area .instagram_logo_area .image_box.instagram_text .image {
    width: 100%;
    height: auto;
  }
  #top .instagram .inner .header_area .intro_text {
    font-size: 3.7333333333vw;
    margin-top: 5.3333333333vw;
  }
  #top .instagram .inner .instagram_list {
    width: 100%;
    margin: 5.3333333333vw auto 0;
  }
  #top .instagram .inner .btn {
    margin: 10.6666666667vw auto 0;
  }
}
/*----------------------------------------
   recruit
----------------------------------------*/
#top .recruit.section {
  padding: 5.8565153734vw 0;
  background-image: url("../images/renewal/recruit_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

#top .recruit .recruit_inner {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

#top .recruit .inner .content_area {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

#top .recruit .images_area {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

#top .recruit .images_area .image_box {
  position: absolute;
  z-index: 1;
}

#top .recruit .images_area .image_box.image_item01 {
  top: 19.3997071742vw;
  left: 2.196193265vw;
  width: 17.5695461201vw;
  height: 17.5695461201vw;
}

#top .recruit .images_area .image_box.image_item02 {
  top: 2.196193265vw;
  right: 1.6837481698vw;
  width: 18.9604685212vw;
  height: 18.9604685212vw;
}

#top .recruit .images_area .image_box.image_item03 {
  bottom: 2.635431918vw;
  right: 5.8565153734vw;
  width: 15.9590043924vw;
  height: 14.3484626647vw;
}

#top .recruit .images_area .image_box.image_item04 {
  top: 5.4904831625vw;
  left: 6.8081991215vw;
  width: 11.1273792094vw;
  height: 9.5168374817vw;
}

#top .recruit .images_area .image_box.image_item05 {
  bottom: 1.756954612vw;
  left: -2.9282576867vw;
  width: 23.2064421669vw;
  height: 22.7672035139vw;
}

#top .recruit .images_area .image_box.image_item06 {
  top: 17.7891654466vw;
  right: 4.6852122987vw;
  width: 14.7144948755vw;
  height: 17.2767203514vw;
}

#top .recruit .main_content {
  position: relative;
  z-index: 2;
  background-color: #fff;
  padding: 7.6866764275vw 2.5622254758vw 4.0263543192vw;
  width: 51.2445095168vw;
  margin: 0 auto;
}

#top .recruit .main_content::before {
  content: "";
  position: absolute;
  top: 1.317715959vw;
  left: 50%;
  transform: translateX(-50%);
  width: 48.0234260615vw;
  height: 1.5373352855vw;
  background-image: url("../images/renewal/recruit_bg02.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#top .recruit .main_content .heading {
  font-size: 2.3426061493vw;
  font-family: Zen Kurenaido, sans-serif;
  text-align: center;
  margin-bottom: 1.0980966325vw;
}

#top .recruit .main_content .title .en {
  font-size: 9.5168374817vw;
}

#top .recruit .main_content .sub_heading {
  font-size: 1.756954612vw;
  font-family: Zen Kurenaido, sans-serif;
  color: #da6334;
  text-align: center;
  margin-top: 1.8301610542vw;
}

#top .recruit .main_content .text {
  font-size: 1.317715959vw;
  line-height: 1.6111111111;
  margin-top: 1.8301610542vw;
  text-align: center;
}

#top .recruit .main_content .info_table_area {
  width: 39.5314787701vw;
  margin: 2.5622254758vw auto 0;
  padding: 1.8301610542vw 2.196193265vw 1.4641288433vw;
  border: 1px solid #898989;
}

#top .recruit .main_content .info_table_area .info_table {
  width: 100%;
  border-collapse: collapse;
}

#top .recruit .main_content .info_table_area .info_table tr {
  border-bottom: 1px solid #e4e1db;
}

#top .recruit .main_content .info_table_area .info_table tr:last-child {
  border-bottom: none;
}

#top .recruit .main_content .info_table_area .info_table .info_label {
  padding: 1.0980966325vw 1.4641288433vw 1.0980966325vw 0.3660322108vw;
  font-size: 1.317715959vw;
  font-weight: 500;
  text-align: left;
  width: 7.3206442167vw;
}

#top .recruit .main_content .info_table_area .info_table .info_value {
  padding: 1.0980966325vw 1.4641288433vw 1.0980966325vw 0.3660322108vw;
  font-size: 1.317715959vw;
}

@media screen and (max-width: 768px) {
  #top .recruit.section {
    padding: 10.6666666667vw 0 10.6666666667vw;
    background-image: url("../images/renewal/recruit_bg.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  #top .recruit .recruit_inner {
    position: relative;
    width: 100%;
    margin: 0 auto;
  }
  #top .recruit .inner .content_area {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #top .recruit .images_area {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
  }
  #top .recruit .images_area .image_box {
    display: none;
  }
  #top .recruit .main_content {
    position: relative;
    z-index: 2;
    background-color: #fff;
    padding: 10.6666666667vw 5.3333333333vw 10.6666666667vw;
    width: 100%;
    margin: 0 auto;
  }
  #top .recruit .main_content::before {
    content: "";
    position: absolute;
    top: 2.6666666667vw;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 2.6666666667vw;
    background-image: url("../images/renewal/recruit_bg02.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  #top .recruit .main_content .heading {
    font-size: 6.4vw;
    font-family: Zen Kurenaido, sans-serif;
    text-align: center;
    margin-bottom: 2.6666666667vw;
  }
  #top .recruit .main_content .title .en {
    font-size: 26.6666666667vw;
  }
  #top .recruit .main_content .sub_heading {
    font-size: 4.8vw;
    font-family: Zen Kurenaido, sans-serif;
    color: #da6334;
    text-align: center;
    margin-top: 5.3333333333vw;
  }
  #top .recruit .main_content .text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    margin-top: 5.3333333333vw;
    text-align: center;
  }
  #top .recruit .main_content .info_table_area {
    width: 100%;
    margin: 5.3333333333vw auto 0;
    padding: 2.6666666667vw;
    border: 1px solid #898989;
  }
  #top .recruit .main_content .info_table_area .info_table {
    width: 100%;
    border-collapse: collapse;
  }
  #top .recruit .main_content .info_table_area .info_table tr {
    border-bottom: 1px solid #e4e1db;
    display: flex;
    align-items: flex-start;
  }
  #top .recruit .main_content .info_table_area .info_table tr:last-child {
    border-bottom: none;
  }
  #top .recruit .main_content .info_table_area .info_table .info_label {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
    font-weight: 500;
    text-align: left;
    width: 26%;
    line-height: 1.2857142857;
  }
  #top .recruit .main_content .info_table_area .info_table .info_value {
    padding: 2.6666666667vw 1.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.2857142857;
  }
}
/*----------------------------------------
   footer
----------------------------------------*/
.footer {
  position: relative;
  background-image: url("../images/renewal/footer_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 2.9282576867vw 0 0;
}

.footer .footer_contact_area .title .en {
  color: #fff;
}

.footer .footer_contact_area .title .jp {
  color: #fff;
}

.footer .footer_contact_area .footer_contact_text {
  text-align: center;
  font-size: 1.0248901903vw;
  line-height: 2.0714285714;
  color: #fff;
  margin: 1.4641288433vw 0 1.4641288433vw;
}

.footer .footer_main {
  padding: 3.2942898975vw 0 2.196193265vw;
  margin-top: 4.39238653vw;
  border-top: 1px solid #ad9d88;
  border-bottom: 1px solid #ad9d88;
}

.footer .footer_main .footer_main_inner {
  display: flex;
  justify-content: space-between;
}

.footer .footer_main .footer_main_inner .footer_left .footer_logo_area {
  display: flex;
  align-items: center;
  gap: 2.196193265vw;
}

.footer .footer_main .footer_main_inner .footer_left .footer_logo_area .footer_logo {
  width: 22.9868228404vw;
}

.footer .footer_main .footer_main_inner .footer_left .footer_logo_area .link .instagram_logo {
  width: 2.5622254758vw;
}

.footer .footer_main .footer_main_inner .footer_left .footer_info {
  margin-top: 1.4641288433vw;
  border-collapse: collapse;
  width: 100%;
}

.footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_label {
  font-size: 1.0980966325vw;
  line-height: 1.9333333333;
  color: #fff;
  text-align: left;
  vertical-align: top;
  width: 5.8565153734vw;
}

.footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_value {
  font-size: 1.0980966325vw;
  color: #ccc;
  line-height: 1.9333333333;
  vertical-align: top;
}

.footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_value .text .label {
  width: 3.6603221083vw;
  display: inline-block;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav {
  display: flex;
  gap: 2.9282576867vw;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav .footer_nav_column {
  display: flex;
  flex-direction: column;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav .footer_nav_column .footer_nav_link {
  font-size: 1.0980966325vw;
  line-height: 1.9333333333;
  color: #fff;
  transition: color 0.3s;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav .footer_nav_column .footer_nav_link.dot {
  position: relative;
  padding-left: 0.7320644217vw;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav .footer_nav_column .footer_nav_link.dot::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 0.2196193265vw;
  height: 0.2196193265vw;
  background-color: #fff;
  border-radius: 50%;
}

.footer .footer_main .footer_main_inner .footer_right .footer_nav .footer_nav_column .footer_nav_link:hover {
  opacity: 0.8;
}

.footer .footer_bottom {
  padding: 2.9282576867vw 0 2.5622254758vw;
  text-align: center;
}

.footer .footer_bottom .copyright {
  font-size: 0.9516837482vw;
  color: #fff;
  line-height: 1.8461538462;
}

.footer .footer_bottom .tech_support {
  font-size: 0.9516837482vw;
  color: #fff;
  line-height: 1.8461538462;
}

.footer .page_top {
  position: fixed;
  bottom: 2.196193265vw;
  right: 2.196193265vw;
  width: 4.3191800878vw;
  height: 2.4890190337vw;
  background-image: url("../images/renewal/pagetop.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: opacity 0.3s;
  z-index: 999;
  opacity: 0;
  pointer-events: none;
}

.footer .page_top.is_visible {
  opacity: 1;
  pointer-events: auto;
}

.footer .page_top:hover {
  opacity: 0.8;
}

@media screen and (max-width: 768px) {
  .footer {
    padding: 10.6666666667vw 0 0;
  }
  .footer .footer_contact_area .footer_contact_text {
    font-size: 3.7333333333vw;
    line-height: 1.6111111111;
    margin: 5.3333333333vw 0 5.3333333333vw;
    padding: 0 5.3333333333vw;
  }
  .footer .footer_main {
    padding: 5.3333333333vw 0 5.3333333333vw;
    margin-top: 5.3333333333vw;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_logo_area {
    gap: 5.3333333333vw;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_logo_area .footer_logo {
    width: 64vw;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_logo_area .link .instagram_logo {
    width: 8vw;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_info {
    margin-top: 5.3333333333vw;
    border-collapse: collapse;
    width: 100%;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_label {
    font-size: 3.7333333333vw;
    line-height: 1.9333333333;
    color: #fff;
    text-align: left;
    vertical-align: top;
    width: 26%;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_value {
    font-size: 3.7333333333vw;
    color: #ccc;
    line-height: 1.9333333333;
    vertical-align: top;
  }
  .footer .footer_main .footer_main_inner .footer_left .footer_info .footer_info_value .text .label {
    width: 20%;
    display: inline-block;
  }
  .footer .footer_main .footer_main_inner .footer_right {
    display: none;
  }
  .footer .footer_bottom {
    padding: 5.3333333333vw 0 5.3333333333vw;
  }
  .footer .footer_bottom .copyright {
    font-size: 2.6666666667vw;
    line-height: 1.8461538462;
  }
  .footer .footer_bottom .tech_support {
    font-size: 2.6666666667vw;
    line-height: 1.8461538462;
  }
}
/*----------------------------------------
  お知らせ一覧ページ
----------------------------------------*/
#content_wrap {
  padding: 2.9282576867vw 0 5.8565153734vw;
}

.breadcrumb {
  margin-bottom: 2.9282576867vw;
  font-size: 1.0248901903vw;
  color: #222222;
}

.breadcrumb_link {
  color: #222222;
  text-decoration: none;
  transition: opacity 0.3s;
}
.breadcrumb_link:hover {
  opacity: 0.7;
}

.breadcrumb_separator {
  margin: 0 0.5856515373vw;
  color: #222222;
}

.breadcrumb_current {
  color: #222222;
}

.news_archive_title {
  font-size: 3.513909224vw;
  font-weight: bold;
  text-align: center;
  color: #222222;
  margin-bottom: 2.196193265vw;
}

.news_archive_intro {
  font-size: 1.1713030747vw;
  line-height: 1.8125;
  text-align: center;
  color: #222222;
  margin-bottom: 4.39238653vw;
}

.news_archive_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.196193265vw 2.0497803807vw;
  margin-bottom: 4.39238653vw;
}

.news_archive_item {
  background-color: #fff;
  overflow: hidden;
  box-shadow: 0 0.1464128843vw 0.5856515373vw rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s;
}
.news_archive_item:hover {
  opacity: 0.8;
}

.news_archive_link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.news_archive_item .image_box {
  width: 100%;
  aspect-ratio: 348/200;
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.news_archive_item .image_box .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.news_archive_item .image_box .image_placeholder {
  color: #999;
  font-size: 1.1713030747vw;
}

.news_archive_content {
  padding: 1.4641288433vw 1.0980966325vw;
  display: flex;
  flex-direction: column;
  gap: 0.878477306vw;
}

.news_archive_date {
  font-size: 1.1713030747vw;
  color: #222222;
  font-weight: 500;
}

.news_archive_title_text {
  font-size: 1.1713030747vw;
  line-height: 1.5;
  color: #222222;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.news_archive_pagination {
  display: flex;
  justify-content: center;
  margin-top: 4.39238653vw;
}

.news_archive_pagination .page-numbers {
  display: flex;
  list-style: none;
  gap: 1.4641288433vw;
  margin: 0;
  padding: 0;
  align-items: center;
}

.news_archive_pagination .page-numbers li {
  margin: 0;
}

.news_archive_pagination .page-numbers a,
.news_archive_pagination .page-numbers span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2.9282576867vw;
  height: 2.9282576867vw;
  font-size: 1.1713030747vw;
  color: #666666;
  text-decoration: none;
  border: 1px solid #e0e0e0;
  border-radius: 50%;
  background-color: #f5f5f5;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}

.news_archive_pagination .page-numbers .prev,
.news_archive_pagination .page-numbers .next {
  background-color: #dde8d9;
  color: #222222;
}

.news_archive_pagination .page-numbers .prev:hover,
.news_archive_pagination .page-numbers .next:hover {
  background-color: #42864b;
  border-color: #e0e0e0;
  color: #fff;
}

.news_archive_pagination .page-numbers a:not(.prev):not(.next):not(.current) {
  background-color: transparent;
  border: none;
  min-width: auto;
  height: auto;
  color: #222222;
  border-radius: 0;
}

.news_archive_pagination .page-numbers a:not(.prev):not(.next):not(.current):hover {
  background-color: transparent;
  color: #42864b;
}

.news_archive_pagination .page-numbers .current {
  background-color: #42864b;
  color: #fff;
  border-color: #42864b;
  border-radius: 50%;
}

.news_archive_pagination .page-numbers .dots {
  background-color: transparent;
  border: none;
  color: #222222;
  min-width: auto;
  height: auto;
}

.news_archive_no_posts {
  text-align: center;
  font-size: 1.317715959vw;
  color: #999;
  padding: 4.39238653vw 0;
}

@media (max-width: 768px) {
  #content_wrap {
    padding: 5.3333333333vw 0 10.6666666667vw;
  }
  .breadcrumb {
    margin-bottom: 5.3333333333vw;
    font-size: 3.2vw;
  }
  .breadcrumb_separator {
    margin: 0 1.3333333333vw;
  }
  .news_archive_title {
    font-size: 7.4666666667vw;
    margin-bottom: 5.3333333333vw;
  }
  .news_archive_intro {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    margin-bottom: 8vw;
  }
  .news_archive_list {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
  .news_archive_item .image_box {
    aspect-ratio: 348/200;
  }
  .news_archive_item .image_box .image_placeholder {
    font-size: 3.7333333333vw;
  }
  .news_archive_content {
    padding: 4vw 3.2vw;
    gap: 2.6666666667vw;
  }
  .news_archive_date {
    font-size: 3.7333333333vw;
  }
  .news_archive_title_text {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
  .news_archive_pagination {
    margin-top: 10.6666666667vw;
  }
  .news_archive_pagination .page-numbers {
    gap: 4vw;
  }
  .news_archive_pagination .page-numbers a,
.news_archive_pagination .page-numbers span {
    min-width: 9.6vw;
    height: 9.6vw;
    font-size: 3.7333333333vw;
  }
  .news_archive_pagination .page-numbers a:not(.prev):not(.next):not(.current) {
    min-width: auto;
    height: auto;
  }
  .news_archive_pagination .page-numbers .dots {
    min-width: auto;
    height: auto;
  }
  .news_archive_no_posts {
    font-size: 4.2666666667vw;
    padding: 10.6666666667vw 0;
  }
}
/*----------------------------------------
  お知らせ詳細ページ
----------------------------------------*/
.news_single_header {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.4641288433vw;
  gap: 1.4641288433vw;
}

.news_single_title {
  font-size: 2.4890190337vw;
  font-weight: bold;
  color: #222222;
  line-height: 1.4;
  flex: 1;
}

.news_single_date {
  font-size: 1.317715959vw;
  color: #222222;
  white-space: nowrap;
  margin-left: auto;
}

.news_single_content_area {
  display: flex;
  flex-direction: column;
  gap: 1.4641288433vw;
}

.news_single_content_area .image_box {
  width: 100%;
  height: 100%;
}

.news_single_content_area .image_box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.news_single_content {
  font-size: 1.317715959vw;
  line-height: 1.7777777778;
  color: #222222;
}

.news_single_back {
  text-align: center;
  margin-top: 4.39238653vw;
}

@media (max-width: 768px) {
  .news_single_header {
    flex-direction: column;
    margin-bottom: 8vw;
    gap: 4.2666666667vw;
  }
  .news_single_title {
    font-size: 6.4vw;
  }
  .news_single_date {
    font-size: 3.7333333333vw;
    align-self: flex-end;
  }
  .news_single_content_area {
    flex-direction: column;
    gap: 2.6666666667vw;
  }
  .news_single_content_area .image_box {
    width: 100%;
    height: 100%;
  }
  .news_single_content_area .image_box img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .news_single_content_area .news_single_content {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .news_single_back {
    margin-top: 10.6666666667vw;
  }
}
/*----------------------------------------
  プライバシーポリシーページ
----------------------------------------*/
#page_privacy_policy .privacy_policy.section {
  padding: 2.9282576867vw 0 5.8565153734vw;
  background-color: #fff;
}

#page_privacy_policy .privacy_policy_content {
  max-width: 58.5651537335vw;
  margin: 0 auto;
  font-size: 1.317715959vw;
  line-height: 1.7777777778;
  color: #222222;
}

#page_privacy_policy .privacy_policy_content .privacy_policy_heading {
  padding: 0.2em 1em;
  border-left: 8px solid #b85800;
  background-color: #ef7300;
  color: #ffffff;
  font-weight: normal;
  margin-top: 2em;
  margin-bottom: 1em;
}

#page_privacy_policy .privacy_policy_content .privacy_policy_text {
  margin-bottom: 1.756954612vw;
}

#page_privacy_policy .privacy_policy_content .privacy_policy_link {
  color: #ef7300;
  text-decoration: underline;
  transition: opacity 0.3s;
}
#page_privacy_policy .privacy_policy_content .privacy_policy_link:hover {
  opacity: 0.7;
}

@media (max-width: 768px) {
  #top .privacy_policy.section {
    padding: 10.6666666667vw 0;
  }
  #page_privacy_policy .title {
    margin-top: 10.6666666667vw;
  }
  #page_privacy_policy .privacy_policy_content {
    max-width: 100%;
    width: 100%;
  }
  #page_privacy_policy .privacy_policy_content .privacy_policy_heading {
    font-size: 4.8vw;
    margin-top: 5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  #page_privacy_policy .privacy_policy_content .privacy_policy_text {
    margin-bottom: 4.2666666667vw;
    font-size: 3.7333333333vw;
  }
}
/*----------------------------------------
  メニューページ
----------------------------------------*/
#page_menu .menu_page.section {
  padding: 2.9282576867vw 0 5.8565153734vw;
}

#page_menu .intro_text {
  font-size: 1.317715959vw;
  line-height: 1.7777777778;
  color: #222222;
  text-align: center;
  margin: 2.9282576867vw 0 0;
}

/* カテゴリナビゲーション */
#page_menu .menu_category_nav {
  margin: 4.39238653vw 0;
  text-align: center;
}

#page_menu .category_nav_text {
  font-size: 1.1713030747vw;
  color: #222222;
  margin-bottom: 2.196193265vw;
}

#page_menu .category_buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.4641288433vw 2.196193265vw;
}

#page_menu .category_buttons .btn {
  margin: 0;
}

/* メニューカテゴリセクション */
#page_menu .menu_category_section {
  margin-top: 5.8565153734vw;
  scroll-margin-top: 7.3206442167vw;
  position: relative;
  padding: 2.9282576867vw 2.9282576867vw;
}

#page_menu .menu_category_section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.4641288433vw;
  background-size: cover;
  background-position: top center;
  background-repeat: repeat;
  z-index: -1;
}

#page_menu .menu_category_section.lunch::before {
  background-image: url(../images/renewal/repertory_bg02.jpg);
}

#page_menu .menu_category_section.dinner::before {
  background-image: url(../images/renewal/repertory_bg03.jpg);
  background-size: contain;
}

#page_menu .menu_category_section.course::before {
  background-image: url(../images/renewal/repertory_bg04.jpg);
}

#page_menu .menu_category_section.dessert::before {
  background-image: url(../images/renewal/repertory_bg02.jpg);
}

#page_menu .menu_category_section.drink::before {
  background-image: url(../images/renewal/repertory_bg03.jpg);
}

#page_menu .menu_category_section .category_title {
  display: flex;
  gap: 1.1713030747vw;
  align-items: center;
  justify-content: center;
  position: relative;
  padding-bottom: 0.439238653vw;
  border-bottom: 1px solid #222222;
  margin-bottom: 3.4407027818vw;
}

#page_menu .menu_category_section .category_title::after {
  content: "";
  position: absolute;
  bottom: 0.2196193265vw;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #222222;
}

#page_menu .menu_category_section .category_title .en {
  font-size: 4.39238653vw;
  font-family: "Little Brushy", sans-serif;
  line-height: normal;
}

#page_menu .menu_category_section .category_title .jp {
  font-size: 1.5373352855vw;
  font-weight: 500;
}

/* ランチセクション */
#page_menu .lunch_menu_detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.196193265vw;
  margin-bottom: 5.8565153734vw;
  padding: 2.196193265vw;
  background-color: #f9f9f9;
  border-radius: 0.5856515373vw;
  position: relative;
}

#page_menu .lunch_menu_detail::before {
  content: "";
  position: absolute;
  bottom: -65px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  background-image: url(../images/renewal/plus.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#page_menu .detail_title {
  font-size: 1.756954612vw;
  font-weight: bold;
  background-color: #42864b;
  color: #ffffff;
  padding: 0.7320644217vw 1.0980966325vw;
  margin-bottom: 1.0980966325vw;
  text-align: center;
}

#page_menu .detail_text {
  font-size: 1.4641288433vw;
  font-weight: 500;
  line-height: 1.75;
  margin-bottom: 0.7320644217vw;
  text-align: center;
}

#page_menu .detail_note {
  font-size: 1.1713030747vw;
  text-align: center;
}

#page_menu .lunch_addon {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.196193265vw;
  padding: 2.196193265vw;
  background-color: #f9f9f9;
  border-radius: 0.5856515373vw;
  margin-bottom: 2.9282576867vw;
}

#page_menu .addon_title {
  font-size: 1.756954612vw;
  font-weight: bold;
  background-color: #42864b;
  color: #ffffff;
  padding: 0.7320644217vw 1.0980966325vw;
  margin-bottom: 1.0980966325vw;
  text-align: center;
}

#page_menu .addon_list {
  list-style: none;
}

#page_menu .addon_list li {
  font-size: 1.4641288433vw;
  line-height: 1.4;
  position: relative;
  padding-left: 1.4641288433vw;
}

#page_menu .addon_list li::before {
  content: "";
  position: absolute;
  left: 0.7320644217vw;
  top: 50%;
  transform: translateY(-50%);
  color: #222222;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #222222;
}

#page_menu .addon_note {
  font-size: 1.317715959vw;
  text-align: center;
}

/* ディナーセクション */
#page_menu .dinner_subsection {
  margin-bottom: 4.39238653vw;
}

#page_menu .subsection_title {
  font-size: 2.0497803807vw;
  font-weight: bold;
  color: #d96a3e;
  margin-bottom: 2.9282576867vw;
  text-align: center;
}

#page_menu .menu_list {
  display: flex;
  flex-direction: column;
  gap: 2.9282576867vw;
}

#page_menu .menu_item {
  display: flex;
  align-items: stretch;
  gap: 2.9282576867vw;
}

#page_menu .menu_item .image_box {
  width: 29.2825768668vw;
  aspect-ratio: 4/3;
  overflow: hidden;
  flex-shrink: 0;
}

#page_menu .menu_item .image_box .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#page_menu .menu_item .menu_content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

#page_menu .menu_item .menu_name {
  font-size: 1.756954612vw;
  font-weight: bold;
  margin-bottom: 1.0980966325vw;
  color: #222222;
}

#page_menu .menu_item .menu_set_name {
  font-size: 1.4641288433vw;
  font-weight: 400;
  color: #222222;
}

#page_menu .menu_item .menu_name .small_text {
  font-size: 1.1713030747vw;
  font-weight: 400;
  color: #222222;
}

#page_menu .menu_item .menu_price {
  font-size: 1.6105417277vw;
  font-weight: bold;
  margin-bottom: 1.0980966325vw;
}

#page_menu .menu_item .menu_price .menu_price_size {
  display: block;
  font-size: 1.317715959vw;
}

#page_menu .menu_item .menu_price .tax {
  font-size: 1.1713030747vw;
  font-weight: 400;
  color: #222222;
}

#page_menu .menu_item .menu_description_box {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.0980966325vw;
  justify-content: center;
}

#page_menu .menu_item .menu_description {
  font-size: 1.1713030747vw;
  line-height: 1.75;
  color: #222222;
}

#page_menu .menu_item .menu_description.notice {
  color: #d96a3e;
}

/* コースセクション */
#page_menu .course_items {
  display: flex;
  flex-direction: column;
  gap: 2.9282576867vw;
}

#page_menu .course_item {
  background-color: #f9f9f9;
  padding: 2.9282576867vw;
  border-radius: 0.5856515373vw;
}

#page_menu .course_name {
  font-size: 1.756954612vw;
  font-weight: bold;
  margin-bottom: 1.4641288433vw;
  color: #222222;
}

#page_menu .course_price {
  font-size: 2.0497803807vw;
  font-weight: bold;
  color: #ef7300;
  margin-bottom: 1.8301610542vw;
}

#page_menu .course_price .tax {
  font-size: 1.1713030747vw;
  font-weight: 400;
  color: #222222;
}

#page_menu .course_list li .small_text {
  font-size: 1.0248901903vw;
  font-weight: 400;
  color: #222222;
}

#page_menu .course_list {
  list-style: none;
  padding: 0;
  margin: 0;
}

#page_menu .course_list li {
  font-size: 1.1713030747vw;
  line-height: 1.7777777778;
  padding-left: 2.196193265vw;
  position: relative;
  padding-left: 0.7320644217vw;
  position: relative;
}

#page_menu .course_list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #222222;
}

/* デザートセクション */
#page_menu .dessert_list {
  display: flex;
  flex-direction: column;
  gap: 2.9282576867vw;
}

#page_menu .dessert_item {
  background-color: #f9f9f9;
  padding: 2.196193265vw;
  border-radius: 0.5856515373vw;
}

#page_menu .dessert_name {
  font-size: 1.6105417277vw;
  font-weight: bold;
  margin-bottom: 1.0980966325vw;
  color: #222222;
}

#page_menu .dessert_price {
  font-size: 1.4641288433vw;
  font-weight: bold;
  color: #ef7300;
  margin-bottom: 1.0980966325vw;
}

#page_menu .dessert_description {
  font-size: 1.1713030747vw;
  line-height: 1.75;
  color: #222222;
}

/* ドリンクセクション */
#page_menu .drink_sections {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3.6603221083vw;
}

#page_menu .drink_section_title {
  font-size: 2.0497803807vw;
  font-weight: bold;
  margin-bottom: 2.196193265vw;
  color: #222222;
  text-align: center;
}

#page_menu .drink_list {
  list-style: none;
  padding: 0;
  margin: 0;
}

#page_menu .drink_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.0980966325vw 0;
  border-bottom: 1px dotted #cccccc;
  font-size: 1.317715959vw;
}

#page_menu .drink_item:last-child {
  border-bottom: none;
}

#page_menu .drink_name {
  font-size: 1.4641288433vw;
  color: #222222;
}

#page_menu .drink_price {
  font-size: 1.317715959vw;
  color: #222222;
  font-weight: bold;
}

#page_menu .drink_price .tax {
  font-size: 1.0248901903vw;
  font-weight: 400;
  color: #222222;
}

/* レスポンシブ */
@media (max-width: 768px) {
  #page_menu .menu_page.section {
    padding: 10.6666666667vw 0 16vw;
  }
  #page_menu .intro_text {
    font-size: 3.7333333333vw;
    line-height: 2;
    margin: 5.3333333333vw 0 0;
  }
  #page_menu .menu_category_nav {
    margin: 10.6666666667vw 0;
  }
  #page_menu .category_nav_text {
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  #page_menu .category_buttons {
    gap: 4vw;
  }
  #page_menu .category_btn {
    padding: 3.2vw 5.3333333333vw;
    font-size: 4.2666666667vw;
    padding-right: 9.3333333333vw;
  }
  #page_menu .category_btn::after {
    right: 3.2vw;
    font-size: 3.2vw;
  }
  #page_menu .menu_category_section {
    margin-top: 10.6666666667vw;
    scroll-margin-top: 16vw;
    padding: 5.3333333333vw;
  }
  #page_menu .menu_category_section .category_title {
    display: flex;
    flex-direction: column;
    gap: 1.3333333333vw;
    position: relative;
    padding-bottom: 1.6vw;
    border-bottom: 1px solid #222222;
    margin-bottom: 8vw;
  }
  #page_menu .menu_category_section .category_title::after {
    content: "";
    position: absolute;
    bottom: 0.8vw;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #222222;
  }
  #page_menu .menu_category_section .category_title .en {
    font-size: 16vw;
    font-family: "Little Brushy", sans-serif;
    line-height: normal;
  }
  #page_menu .menu_category_section .category_title .jp {
    font-size: 5.6vw;
    font-weight: 500;
  }
  #page_menu .lunch_menu_detail {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
    margin-bottom: 16vw;
    padding: 5.3333333333vw;
  }
  #page_menu .lunch_menu_detail::before {
    bottom: -12vw;
    width: 8vw;
    height: 8vw;
  }
  #page_menu .detail_title {
    font-size: 4.8vw;
    padding: 2.1333333333vw 3.2vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .detail_text {
    font-size: 3.7333333333vw;
    margin-bottom: 2.1333333333vw;
  }
  #page_menu .detail_note {
    font-size: 3.2vw;
  }
  #page_menu .lunch_addon {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
    padding: 5.3333333333vw;
  }
  #page_menu .addon_title {
    font-size: 4.8vw;
    padding: 2.1333333333vw 3.2vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .addon_list li {
    font-size: 3.7333333333vw;
    margin-bottom: 1.6vw;
    padding-left: 2.6666666667vw;
  }
  #page_menu .addon_note {
    font-size: 3.2vw;
  }
  #page_menu .dinner_subsection {
    margin-bottom: 10.6666666667vw;
  }
  #page_menu .subsection_title {
    font-size: 5.8666666667vw;
    margin-bottom: 8vw;
  }
  #page_menu .menu_list {
    gap: 8vw;
  }
  #page_menu .menu_item {
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  #page_menu .menu_item .image_box {
    width: 100%;
  }
  #page_menu .menu_item .menu_name {
    font-size: 5.3333333333vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .menu_item .menu_name .menu_set_name {
    font-size: 3.7333333333vw;
  }
  #page_menu .menu_item .menu_name .small_text {
    font-size: 3.2vw;
  }
  #page_menu .menu_item .menu_price {
    font-size: 4.2666666667vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .menu_item .menu_price .menu_price_size {
    font-size: 3.2vw;
  }
  #page_menu .menu_item .menu_price .tax {
    font-size: 3.2vw;
  }
  #page_menu .menu_item .menu_description {
    flex: 1;
    font-size: 3.7333333333vw;
  }
  #page_menu .course_items {
    gap: 8vw;
  }
  #page_menu .course_item {
    padding: 6.6666666667vw;
  }
  #page_menu .course_name {
    font-size: 5.3333333333vw;
    margin-bottom: 4vw;
  }
  #page_menu .course_price {
    font-size: 6.4vw;
    margin-bottom: 5.3333333333vw;
  }
  #page_menu .course_list li {
    font-size: 4.2666666667vw;
    padding-left: 2.6666666667vw;
    margin-bottom: 2.1333333333vw;
  }
  #page_menu .course_list li::before {
    top: 3.4666666667vw;
    transform: translateY(0);
  }
  #page_menu .course_list li .small_text {
    font-size: 3.2vw;
  }
  #page_menu .dessert_list {
    gap: 8vw;
  }
  #page_menu .dessert_item {
    padding: 6.6666666667vw;
  }
  #page_menu .dessert_name {
    font-size: 5.3333333333vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .dessert_price {
    font-size: 4.8vw;
    margin-bottom: 3.2vw;
  }
  #page_menu .dessert_description {
    font-size: 3.7333333333vw;
  }
  #page_menu .drink_sections {
    grid-template-columns: 1fr;
    gap: 10.6666666667vw;
  }
  #page_menu .drink_section_title {
    font-size: 5.3333333333vw;
    margin-bottom: 6.6666666667vw;
  }
  #page_menu .drink_item {
    padding: 3.2vw 0;
    font-size: 4.2666666667vw;
  }
  #page_menu .drink_name {
    font-size: 3.7333333333vw;
  }
  #page_menu .drink_price {
    font-size: 3.2vw;
  }
  #page_menu .drink_price .tax {
    font-size: 2.6666666667vw;
  }
}
/*----------------------------------------
  フレスカのこだわりページ
----------------------------------------*/
#page_about .about_page.section {
  padding: 2.9282576867vw 0 5.8565153734vw;
}

#page_about .intro_text {
  font-size: 1.317715959vw;
  line-height: 1.7777777778;
  color: #222222;
  text-align: center;
  margin: 2.9282576867vw 0 0;
}

/* カテゴリナビゲーション */
#page_about .about_category_nav {
  margin: 4.39238653vw 0;
  text-align: center;
}

#page_about .about_category_nav_text {
  font-size: 1.1713030747vw;
  color: #222222;
  margin-bottom: 2.196193265vw;
}

#page_about .about_category_buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.4641288433vw 2.196193265vw;
}

#page_about .about_category_buttons .btn {
  margin: 0;
}

#page_about .about_content {
  margin-bottom: 26.3543191801vw;
  display: flex;
  flex-direction: column;
  gap: 5.8565153734vw;
}

#page_about .about_content .item {
  display: flex;
  flex-direction: column;
}

#page_about .about_content .item .title_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  padding-bottom: 0.7320644217vw;
  border-bottom: 1px solid #222222;
  margin-bottom: 2.9282576867vw;
}

#page_about .about_content .item .title_box .number {
  font-size: 6.588579795vw;
  font-weight: bold;
  color: #222222;
  font-family: "Little Brushy", sans-serif;
}

#page_about .about_content .item .title_box .title {
  font-size: 2.3426061493vw;
  font-weight: bold;
  color: #222222;
}

#page_about .about_content .item .content_block {
  display: flex;
  gap: 2.196193265vw;
  margin-bottom: 4.39238653vw;
  align-items: center;
}

#page_about .about_content .item .content_block:last-child {
  margin-bottom: 0;
}

#page_about .about_content .item .content_block.reverse {
  flex-direction: row-reverse;
}

#page_about .about_content .item .content_block .content_text {
  flex: 1;
}

#page_about .about_content .item .content_block .heading {
  font-size: 1.756954612vw;
  font-weight: bold;
  color: #222222;
  margin-bottom: 0.7320644217vw;
}

#page_about .about_content .item .content_block .sub_heading {
  font-size: 1.1713030747vw;
  color: #222222;
  margin-bottom: 1.4641288433vw;
  color: #da6334;
}

#page_about .about_content .item .content_block .text_area {
  display: flex;
  flex-direction: column;
  gap: 2.0497803807vw;
}

#page_about .about_content .item .content_block .text_area .text {
  font-size: 1.1713030747vw;
  color: #222222;
  line-height: 1.75;
}

#page_about .about_content .item .content_block .content_image {
  flex: 1;
  display: flex;
  gap: 1.4641288433vw;
  width: 100%;
  height: 29.2825768668vw;
  -o-object-fit: cover;
     object-fit: cover;
}

#page_about .about_content .item .content_block .content_image .image_box {
  width: 100%;
  height: 29.2825768668vw;
  -o-object-fit: cover;
     object-fit: cover;
}

#page_about .about_content .item .content_block .content_image .image_box img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@media (max-width: 768px) {
  #page_about .about_page.section {
    padding: 2.9282576867vw 0 5.8565153734vw;
  }
  #page_about .intro_text {
    font-size: 3.7333333333vw;
    line-height: 2;
    margin: 5.3333333333vw 0 0;
  }
  /* カテゴリナビゲーション */
  #page_about .about_category_nav {
    margin: 10.6666666667vw 0;
  }
  #page_about .about_category_nav_text {
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  #page_about .about_category_buttons {
    gap: 2.6666666667vw 5.3333333333vw;
  }
  #page_about .about_category_buttons .btn {
    margin: 0;
  }
  #page_about .about_content {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 10.6666666667vw;
    margin-bottom: 16vw;
  }
  #page_about .about_content .item {
    flex-direction: column;
  }
  #page_about .about_content .item .title_box {
    flex-direction: column;
    padding-bottom: 1.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  #page_about .about_content .item .title_box .number {
    font-size: 16vw;
    line-height: 0.8333333333;
  }
  #page_about .about_content .item .title_box .title {
    font-size: 6.4vw;
  }
  #page_about .about_content .item .content_block {
    flex-direction: column;
    gap: 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
  #page_about .about_content .item .content_block.reverse {
    flex-direction: column;
  }
  #page_about .about_content .item .content_block .heading {
    font-size: 4.8vw;
    margin-bottom: 1.3333333333vw;
  }
  #page_about .about_content .item .content_block .sub_heading {
    font-size: 3.7333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  #page_about .about_content .item .content_block .text_area {
    flex-direction: column;
    gap: 4.8vw;
  }
  #page_about .about_content .item .content_block .text_area .text {
    font-size: 3.7333333333vw;
    line-height: 1.75;
  }
  #page_about .about_content .item .content_block .content_image {
    gap: 2.6666666667vw;
  }
  #page_about .about_content .item .content_block .content_image {
    height: auto;
  }
  #page_about .about_content .item .content_block .content_image .image_box {
    height: auto;
  }
  #page_about .about_content .item .content_block .content_image .image_box img {
    height: auto;
  }
}
/*# sourceMappingURL=renewal.css.map */