@charset "UTF-8";
/*!
global > color
------------------------------
*/
/*!
global > content-width
------------------------------
*/
/*!
global > font
------------------------------
*/
.p_restaurant02_btn .btn_en {
  font-size: 0.6875rem;
}

.p_restaurant_item .item_subtxt,
.p_restaurant_item .list_content, .p_restaurant04 .box_item .sub, .p_restaurant05_item .item_sub, .p_restaurant05_txt {
  font-size: 0.875rem;
}

.p_restaurant .restaurant_ttl_jp, .p_restaurant_item .item_sub {
  font-size: 0.875rem;
}

.p_restaurant04 .box_ttl {
  font-size: 0.9375rem;
}

.p_restaurant02_btn .btn_jp {
  font-size: 1rem;
}

.p_restaurant03_content .item_ttl {
  font-size: 1.1875rem;
}

.p_restaurant05_item .item_ttl, .p_restaurant05_item .item_sub .number, .p_restaurant05_sub .sub_ttl {
  font-size: 1.25rem;
}

.p_restaurant_ttl .ttl_jp, .p_restaurant01_item .item_ttl, .p_restaurant02_content .item_ttl {
  font-size: 1.25rem;
}

.p_restaurant .restaurant_ttl_en {
  font-size: 1.5rem;
}

.p_restaurant .c_ttl04_en {
  letter-spacing: 0.05em;
}
.p_restaurant .icon_note {
  position: relative;
  display: flex;
}
.p_restaurant .icon_note::before {
  content: "※";
  position: relative;
}
.p_restaurant_ttl {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: space-between;
  padding-bottom: 14px;
  border-bottom: 1px solid #a29b70;
}
.p_restaurant_ttl .ttl_jp {
  color: #a29b70;
  position: relative;
  font-weight: 700;
  line-height: 1.1666666667;
  letter-spacing: 0.05em;
  padding-left: 20px;
}
.p_restaurant_ttl .ttl_jp::after {
  content: "";
  position: absolute;
  width: 11px;
  height: 11px;
  top: 8px;
  left: 0;
  background-color: #a29b70;
}
.p_restaurant_ttl .ttl_en {
  color: #907f19;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.45;
  font-family: "Noto Serif JP", serif;
  flex-shrink: 0;
  white-space: nowrap;
}
.p_restaurant .restaurant_ttl {
  text-align: center;
}
.p_restaurant .restaurant_ttl_en {
  color: #907f19;
  letter-spacing: 0.1em;
  line-height: 1.425;
  font-family: "Noto Serif JP", serif;
  display: block;
}
.p_restaurant .restaurant_ttl_jp {
  font-weight: 700;
  line-height: 2.1875;
  display: block;
}
.p_restaurant_item .item_sub {
  font-weight: 700;
  line-height: 2.1875;
  letter-spacing: 0.05em;
}
.p_restaurant_item .item_ttl {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  letter-spacing: 0.15em;
}
.p_restaurant_item .item_txt {
  line-height: 2.0588235294;
}
.p_restaurant_item .item_subtxt,
.p_restaurant_item .list_content {
  line-height: 2;
  letter-spacing: 0.05em;
}
.p_restaurant_item .list_item {
  padding-left: 16px;
  position: relative;
  letter-spacing: 0.05em;
}
.p_restaurant_item .list_item::after {
  content: "■";
  position: absolute;
  left: 0;
  top: 0;
}
.p_restaurant01 {
  padding: 60px 0;
}
.p_restaurant01_item {
  display: flex;
  gap: 20px;
  flex-direction: column;
}
.p_restaurant01_item .item_ttl {
  letter-spacing: 0.2em;
  line-height: 1.6666666667;
  font-family: "Noto Serif JP", serif;
}
.p_restaurant01_item .item_txt {
  line-height: 2.0588235294;
  padding-top: 12px;
}
.p_restaurant01_item .item_img {
  padding-top: 3px;
}
.p_restaurant01_img {
  padding-top: 20px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(clamp(9.375rem, 7.6530612245vw + 7.5813137755rem, 11.25rem), 1fr));
  gap: 20px;
}
.p_restaurant01_img .img {
  width: 100%;
}
.p_restaurant02_content {
  padding-top: 40px;
}
.p_restaurant02_content .p_restaurant_item + .p_restaurant_item {
  margin-top: 50px;
}
.p_restaurant02_content .item_sub {
  padding-bottom: 2px;
}
.p_restaurant02_content .item_ttl {
  padding-bottom: 11px;
  line-height: 1.3333333333;
}
.p_restaurant02_content .item_txt {
  padding-bottom: 12px;
}
.p_restaurant02_content .item_img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1.5576323988;
}
.p_restaurant02_content .item_desc {
  padding-top: 20px;
}
.p_restaurant02_btn {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 20px;
  padding: 40px 0;
}
.p_restaurant02_btn .btn {
  width: 100%;
  height: 100%;
  min-height: 89px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: #f2f1ed;
  border-radius: 50px;
}
.p_restaurant02_btn .btn_jp {
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.75;
  display: block;
  width: 100%;
  padding-bottom: 0;
}
.p_restaurant02_btn .btn_en {
  letter-spacing: 0.2em;
  display: block;
  width: 100%;
  font-family: "Noto Serif JP", serif;
  color: #907f19;
  text-transform: uppercase;
}
.p_restaurant02_inner {
  background-color: rgba(219, 216, 206, 0.27);
  padding: 60px 0;
}
.p_restaurant03 {
  padding: 60px 0;
}
.p_restaurant03_content {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 40px;
  padding-top: 40px;
}
.p_restaurant03_content .item_sub {
  padding-bottom: 2px;
  font-feature-settings: "palt";
}
.p_restaurant03_content .item_sub.nowrap {
  white-space: nowrap;
}
.p_restaurant03_content .item_ttl {
  padding-bottom: 14px;
  line-height: 1.6086956522;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #a29b70;
}
.p_restaurant03_content .item_txt {
  padding: 18px 0;
  line-height: 1.7647058824;
}
.p_restaurant03_content .item_subtxt {
  line-height: 1.6666666667;
}
.p_restaurant03_content .list_content {
  line-height: 1.6666666667;
}
.p_restaurant03_content .item_desc {
  padding-top: 14px;
}
.p_restaurant03_content .item_img img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.6;
  -o-object-fit: cover;
  object-fit: cover;
}
.p_restaurant04 {
  background-color: rgba(219, 216, 206, 0.27);
  padding: 60px 0;
}
.p_restaurant04 .p_restaurant_ttl {
  border-bottom: 0;
}
.p_restaurant04_item + .p_restaurant04_item {
  padding-top: 40px;
}
.p_restaurant04_content {
  background-color: #fff;
  padding: 20px;
}
.p_restaurant04 .box {
  padding-bottom: 15px;
  border-bottom: 1px solid #a29b70;
}
.p_restaurant04 .box:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.p_restaurant04 .box + .box {
  margin-top: 30px;
}
.p_restaurant04 .box.box03 .box_item + .box_item {
  margin-top: 13px;
}
.p_restaurant04 .box_ttl {
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.9444444444;
  padding-left: 1px;
  padding-bottom: 11px;
}
.p_restaurant04 .box_content {
  display: flex;
  flex-wrap: wrap;
  gap: 10.5px 40px;
  justify-content: space-between;
}
.p_restaurant04 .box_item {
  line-height: 2.0588235294;
  letter-spacing: 0.05em;
  position: relative;
  padding-left: 21px;
}
.p_restaurant04 .box_item:first-child {
  margin-top: 0;
}
.p_restaurant04 .box_item + .box_item {
  margin-top: 10px;
}
.p_restaurant04 .box_item::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 12px;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background-color: #801e34;
}
.p_restaurant04 .box_item .sub {
  line-height: 1.8666666667;
  letter-spacing: 0.05em;
  display: block;
}
.p_restaurant04 .box_item .sub_txt {
  display: block;
}
.p_restaurant05 {
  padding: 60px 0;
}
.p_restaurant05_item {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 40px 0 30px;
  border-bottom: 1px solid #707070;
}
.p_restaurant05_item .item_ttl {
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.p_restaurant05_item .item_txt {
  padding: 12px 0 11px 1px;
  line-height: 1.7647058824;
}
.p_restaurant05_item .item_sub {
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: right;
  width: 100%;
  padding-right: 6px;
}
.p_restaurant05_item .item_sub .number {
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  line-height: 1.6;
  letter-spacing: 0.1em;
  display: inline-block;
  padding-left: 8px;
}
.p_restaurant05_sub {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px 0 20px;
  gap: 20px;
}
.p_restaurant05_sub .sub_img {
  display: flex;
  gap: 18px;
}
.p_restaurant05_sub .sub_ttl {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
  font-family: "Noto Serif JP", serif;
}
.p_restaurant05_sub .sub_txt {
  line-height: 1.7647058824;
  padding-left: 1px;
  padding-top: 10px;
}
.p_restaurant05_txt {
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px){
  .p_restaurant02_btn .btn_en {
    font-size: 0.75rem;
  }
  .p_restaurant_item .item_subtxt,
  .p_restaurant_item .list_content, .p_restaurant04 .box_item .sub, .p_restaurant05_item .item_sub, .p_restaurant05_txt {
    font-size: 0.9375rem;
  }
  .p_restaurant .restaurant_ttl_jp, .p_restaurant_item .item_sub {
    font-size: 1rem;
  }
  .p_restaurant04 .box_ttl {
    font-size: 1.125rem;
  }
  .p_restaurant02_btn .btn_jp {
    font-size: 1.25rem;
  }
  .p_restaurant03_content .item_ttl {
    font-size: 1.4375rem;
  }
  .p_restaurant05_item .item_ttl, .p_restaurant05_item .item_sub .number, .p_restaurant05_sub .sub_ttl {
    font-size: 1.5625rem;
  }
  .p_restaurant_ttl .ttl_jp, .p_restaurant01_item .item_ttl, .p_restaurant02_content .item_ttl {
    font-size: 1.875rem;
  }
  .p_restaurant .restaurant_ttl_en {
    font-size: 2.5rem;
  }
  .p_restaurant_ttl {
    flex-direction: row;
  }
  .p_restaurant_ttl .ttl_jp {
    padding-left: 23px;
  }
  .p_restaurant_ttl .ttl_jp::after {
    top: 12px;
  }
  .p_restaurant_ttl .ttl_en {
    letter-spacing: 0.2em;
    font-size: 1.25rem;
    display: block;
    margin-right: -5px;
  }
  .p_restaurant01 {
    padding: clamp(5rem, 5.5288461538vw + 2.3461538462rem, 7.875rem) 0 clamp(5rem, 1.9230769231vw + 4.0769230769rem, 6rem);
  }
  .p_restaurant01_item {
    flex-direction: row;
    justify-content: space-between;
  }
  .p_restaurant01_item .item_desc {
    width: 46.5765765766%;
  }
  .p_restaurant01_item .item_img {
    width: 50.4504504505%;
  }
  .p_restaurant01_img {
    grid-template-columns: 1fr 1fr 1fr;
    width: calc(100% + clamp(0rem, 3vw + -2.25rem, 0.75rem));
    margin-left: clamp(-0.75rem, -3vw + 2.25rem, 0rem);
    padding-top: 42px;
  }
  .p_restaurant02_content {
    padding-top: 80px;
  }
  .p_restaurant02_content .p_restaurant_item {
    display: flex;
    justify-content: space-between;
    gap: 30px;
  }
  .p_restaurant02_content .item_img {
    width: 45.045045045%;
  }
  .p_restaurant02_content .item_desc {
    padding-top: clamp(0rem, 8.3333333333vw + -6.25rem, 1.25rem);
    width: 50.3603603604%;
  }
  .p_restaurant02 .p_restaurant_ttl .ttl_en {
    padding-top: clamp(0rem, 5.8333333333vw + -4.375rem, 0.875rem);
  }
  .p_restaurant02_btn {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: clamp(0.9375rem, 2.4038461538vw + -0.2163461538rem, 2.1875rem);
    padding: 70px 0 86px;
  }
  .p_restaurant02_inner {
    padding: clamp(3.75rem, 14.5vw + -7.125rem, 7.375rem) 0 clamp(3.75rem, 17.5vw + -9.375rem, 8.125rem);
  }
  .p_restaurant03 {
    padding: 94px 0 107px;
  }
  .p_restaurant03 .p_restaurant_ttl .ttl_en {
    padding-top: clamp(0rem, 5.8333333333vw + -4.375rem, 0.875rem);
  }
  .p_restaurant03_content {
    padding-top: 80px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: clamp(2.5rem, 2.1634615385vw + 1.4615384615rem, 3.625rem) clamp(2.5rem, 4.8076923077vw + 0.1923076923rem, 5rem);
  }
  .p_restaurant03_content .item_txt {
    padding: 18px 0 25px;
  }
  .p_restaurant04 {
    padding: clamp(3.75rem, 14vw + -6.75rem, 7.25rem) 0 clamp(3.75rem, 11.75vw + -5.0625rem, 6.6875rem);
  }
  .p_restaurant04 .p_restaurant_ttl .ttl_en {
    padding-top: clamp(0rem, 2.9166666667vw + -2.1875rem, 0.4375rem);
  }
  .p_restaurant04_item + .p_restaurant04_item {
    padding-top: clamp(3.75rem, 4.8076923077vw + 1.4423076923rem, 6.25rem);
  }
  .p_restaurant04_item.item02 .p_restaurant_ttl .ttl_en {
    padding-top: 11px;
  }
  .p_restaurant04_item.item02 .p_restaurant04_content {
    padding: 66px clamp(2.5rem, 3.6057692308vw + 0.1923076923rem, 3.4375rem) 71px;
  }
  .p_restaurant04_content {
    padding: 46px clamp(2.5rem, 3.6057692308vw + 0.1923076923rem, 3.4375rem) 41px;
    margin-top: 11px;
  }
  .p_restaurant04 .box + .box {
    margin-top: 32px;
  }
  .p_restaurant04 .box.box03 {
    padding-bottom: 38px;
  }
  .p_restaurant04 .box.box04 {
    padding-bottom: 32px;
  }
  .p_restaurant04 .box.box04 .box_ttl {
    padding-bottom: 1px;
  }
  .p_restaurant04 .box.box05 {
    padding-bottom: 44px;
  }
  .p_restaurant04 .box_content .col {
    width: calc(47% - clamp(0.3125rem, 1.4423076923vw + -0.6105769231rem, 0.6875rem));
  }
  .p_restaurant04 .box_item::after {
    top: 14px;
  }
  .p_restaurant05 {
    padding: clamp(5rem, 5.8894230769vw + 2.1730769231rem, 8.0625rem) 0 47px;
  }
  .p_restaurant05_item {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 51px 0 58px;
  }
  .p_restaurant05_item .item_desc {
    max-width: clamp(17.5rem, 27.4038461538vw + 4.3461538462rem, 31.75rem);
    padding-top: clamp(0rem, 4.1666666667vw + -3.125rem, 0.625rem);
    flex-shrink: 0;
  }
  .p_restaurant05_item .item_img {
    max-width: clamp(25rem, 16.2259615385vw + 17.2115384615rem, 33.4375rem);
  }
  .p_restaurant05_sub {
    flex-direction: row;
    width: calc(100% + 10px);
    padding: 55px 0 42px;
  }
  .p_restaurant05_sub .sub_img {
    gap: 27px;
    max-width: clamp(30rem, 22.4759615385vw + 19.2115384615rem, 41.6875rem);
  }
  .p_restaurant05_sub .sub_desc {
    max-width: clamp(18.75rem, 10.9375vw + 13.5rem, 24.4375rem);
    padding: clamp(0rem, 3.8461538462vw + -2.4615384615rem, 1rem) 0;
    flex-shrink: 0;
  }
  .p_restaurant05_sub .sub_txt {
    padding-top: 18px;
  }
}
/*# sourceMappingURL=maps/restaurant.css.map */
