*,
*::before,
*::after {
  box-sizing: border-box;
  word-wrap: break-word;
}

html,
body {
  padding: 0;
  margin: 0;
  -webkit-text-size-adjust: 100%;
}

header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

ul,
ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

img {
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

p,
figure,
table,
dl,
dt,
dd {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
}

th,
td {
  vertical-align: top;
  font-weight: normal;
  text-align: left;
}

caption {
  text-align: left;
}

/* common */
@media (min-width: 1441px) {
  .u-hidden-pc {
    display: none;
  }
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .u-hidden-pc {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .u-hidden-tab {
    display: none;
  }
}

@media (max-width: 767px) {
  .u-hidden-sp {
    display: none;
  }
}

@media (min-width: 1441px) {
  .u-hidden-pc-only {
    display: block;
  }
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .u-hidden-pc-only {
    display: block;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .u-hidden-pc-only {
    display: none;
  }
}
@media (max-width: 767px) {
  .u-hidden-pc-only {
    display: none;
  }
}

@media (min-width: 1441px) {
  .u-hidden-sp-only {
    display: none;
  }
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .u-hidden-sp-only {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .u-hidden-sp-only {
    display: none;
  }
}
@media (max-width: 767px) {
  .u-hidden-sp-only {
    display: block;
  }
}

body {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(0.875rem, 0.8287037037rem + 0.2469135802vw, 1.125rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #404040;
  background-color: #FFFFFF;
}

.inner {
  padding-inline: 1.25rem;
  margin-inline: auto;
  max-width: 1200px;
	padding-top: 1rem;
}

.util-btn {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 900;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #333333;
  padding: 0.75rem 1.75rem 1.5625rem;
  position: relative;
  max-width: 350px;
  display: flex;
  background-color: #DDD4B4;
}
@media (max-width: 767px) {
  .util-btn {
    max-width: 620px;
    width: 100%;
  }
}
.util-btn:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}
.util-btn::before {
  position: absolute;
  border: 1px solid #707070;
  inset: -5px 5px 5px -5px;
  content: "";
}
.util-btn::after {
  width: 72px;
  height: 8px;
  border-bottom: 1px solid #707070;
  border-right: 1px solid #707070;
  transform: skew(45deg);
  position: absolute;
  content: "";
  top: 34%;
  right: 11%;
}

.section__ttl {
  font-family: "Great Vibes", cursive;
  font-size: clamp(1.875rem, 1.412037037rem + 2.4691358025vw, 4.375rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #333333;
  text-align: center;
  position: relative;
}
.section__ttl::before, .section__ttl::after {
  content: "";
  position: absolute;
  top: 65%;
  transform: translateY(-50%);
  width: 12.5vw;
  height: 1.0416666667vw;
  background-size: cover;
  background-image: url("../img/ttl_deco.png");
}
.section__ttl::before {
  left: 19%;
}
.section__ttl::after {
  right: 19%;
}

.section__ttl span {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.1em;
  color: #333333;
  display: block;
}

.line-btn {
  background-color: #3ACE00;
  box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  padding: 0.4375rem 0.625rem;
  max-width: 260px;
  display: flex;
  align-items: center;
  margin-left: auto;
}
.line-btn:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.line-btn .txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #FFFFFF;
}
.line-btn .txt span {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  color: #FFFFFF;
  display: block;
}

/* header
___________________________*/
.header__inner {
  display: flex;
  justify-content: space-between;
  padding: 1.375rem 3rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .header__inner {
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .header__inner {
    padding: 0.625rem 1.25rem;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .header__nav {
    display: none;
  }
}
@media (max-width: 767px) {
  .header__nav {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 1719px) {
  .header__nav {
    width: 100%;
  }
}
.header__logo {
  width: 23.39%;
  margin-top: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .header__logo {
    width: 26%;
  }
}
@media (max-width: 767px) {
  .header__logo {
    width: 60%;
  }
}

@media (min-width: 1200px) and (max-width: 1699px) {
  .header__logo {
    width: 15%;
  }
}
.header__items {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.25rem, 0.787037037rem + 2.4691358025vw, 3.75rem);
  margin-top: 2.1875rem;
}

@media (min-width: 768px) and (max-width: 1699px) {
  .header__items {
    gap: clamp(1.25rem, 1.1159756969rem + 0.7147962831vw, 1.875rem);
  }
}
.header__item {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(0.875rem, 0.8287037037rem + 0.2469135802vw, 1.125rem);
  font-weight: 700;
  line-height: 1.4444;
  letter-spacing: 0.1em;
}
.header__item a:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

/* hamburger */
.button {
  display: inline-block;
  text-decoration: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.hamburger {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 11;
  width: 48px;
  height: 48px;
  border: 1px solid #404040;
  box-shadow: 0 0 2rem transparent;
  background-color: #E8E4CD;
  outline: none;
  transition: all 0.3s ease-in-out;
}
.hamburger:hover, .hamburger:focus {
  box-shadow: 0 0 0.5rem rgba(161, 161, 161, 0.5);
}
@media (min-width: 1441px) {
  .hamburger {
    display: none;
  }
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .hamburger {
    display: none;
  }
}

.hamburger__line {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 18px;
  height: 2px;
  background-color: #404040;
  transition: inherit;
}
.hamburger__line::before, .hamburger__line::after {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: inherit;
  content: "";
  transition: inherit;
}

.hamburger__line::before {
  top: -5px;
}

.hamburger__line::after {
  top: 5px;
}

.hamburger[aria-expanded=true] {
  border: 1px solid #404040 !important;
}

.hamburger[aria-expanded=true] .hamburger__line {
  background-color: transparent;
}
.hamburger[aria-expanded=true] .hamburger__line::before, .hamburger[aria-expanded=true] .hamburger__line::after {
  top: 0;
  background-color: #404040;
}

.hamburger[aria-expanded=true] .hamburger__line::before {
  transform: rotate(45deg);
}

.hamburger[aria-expanded=true] .hamburger__line::after {
  transform: rotate(-45deg);
}

.sp-global-menu {
  position: fixed;
  width: 100vw;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  height: 100vh;
  background-color: #FFFFFF;
  color: #404040;
  visibility: hidden;
  z-index: 10;
  padding: 6.25rem 3.75rem;
}

.global-menu__items {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
}

.global-menu__item {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  letter-spacing: 0.1em;
}

/* main
___________________________*/
.main {
  margin-top: 0rem;
}
.main1 {
  margin-top: 5rem;
}

/* mv
___________________________*/
.mv {
  position: relative;
}

.main__lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.1em;
  color: #404040;
  text-align: center;
  position: relative;
  z-index: 2;
}

.main__subLead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(2.5rem, 1.6319444444rem + 4.6296296296vw, 6.1875rem);
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: 0.1em;
  color: #B49B44;
  opacity: 0.25;
  text-align: center;
  position: absolute;
  top: -5%;
  left: 8%;
  z-index: 1;
}
@media (max-width: 767px) {
  .main__subLead {
    top: -14%;
    left: 0;
  }
}

@media (min-width: 768px) and (max-width: 1699px) {
  .main__subLead {
    left: 4%;
    line-height: 1;
  }
}
.mv__img {
  display: flex;
  gap: 0.9375rem;
  margin-top: 6.25rem;
}
@media (max-width: 767px) {
  .mv__img {
    margin-top: 4.375rem;
  }
}

/* splide */
.splide__track {
  margin-top: 6.25rem;
}

/* top-info
___________________________*/
.top-info {
  position: relative;
  margin-top: 8.75rem;
  padding-bottom: 4.375rem;
  background: url("../img/info_bg.png") no-repeat center bottom/contain;
}
@media (max-width: 767px) {
  .top-info {
    margin-top: 4.375rem;
  }
}

.top-info__lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #404040;
  text-align: center;
}

.top-info__txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #333333;
  text-align: center;
  margin-top: 8.9375rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-info__txt {
    margin-top: 6.25rem;
    text-align: left;
  }
}
@media (max-width: 767px) {
  .top-info__txt {
    margin-top: 2rem;
    text-align: center;
  }
}

.top-info__btn {
  margin: 7.5rem auto 0;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-info__btn {
    margin: 6.25rem auto 0;
  }
}
@media (max-width: 767px) {
  .top-info__btn {
    margin: 4.375rem auto 0;
  }
}

.ytArea {
  width: 90%;
  margin: 6.25rem auto 0;
  background-color: #F4F4F4;
  aspect-ratio: 16/9;
}
.ytArea iframe {
  width: 100%;
  height: 100%;
}
@media (max-width: 767px) {
  .ytArea {
    margin: 4.375rem auto 0;
  }
}

.top-info__img {
  position: absolute;
}

/* top-menu
_______________*/
.top-menu {
  background: url("../img/menu_bg.png") no-repeat center center/cover;
  padding: 4.375rem 0 7.375rem;
}
@media (max-width: 767px) {
  .top-menu {
    padding: 4.375rem 0 3.125rem;
  }
}

.top-menu__inner {
  max-width: 1390px;
}

.top-menu__items {
  margin-top: 5.875rem;
}

.top-menu__item {
  display: flex;
  justify-content: space-between;
  gap: 4.375rem;
}
.top-menu__item:not(:first-child) {
  margin-top: 3.125rem;
}
@media (max-width: 767px) {
	.top-menu__items {
  margin-top: 3rem;
}
  .top-menu__item {
    display: block;
  }
}

.top-menu__itemImg {
  width: 49.3%;
}
@media (max-width: 767px) {
  .top-menu__itemImg {
    width: 94%;
    margin-inline: auto;
  }
}

.top-menu__item.flex-reverse {
  flex-direction: row-reverse;
}

.top-menu__itemWrap {
  width: 48%;
}
@media (max-width: 767px) {
  .top-menu__itemWrap {
    width: 90%;
    margin: 1.25rem auto 0;
  }
}

.top-menu__itemTtl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.7407407407vw, 1.875rem);
  line-height: 1.3333;
  letter-spacing: 0.1em;
  color: #605429;
}
.top-menu__itemTtl span {
  font-family: "Great Vibes", cursive;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  letter-spacing: 0.05em;
  color: #605429;
  display: block;
  margin-bottom: 0.8125rem;
}

.top-menu__itemTxt {
  font-size: clamp(0.875rem, 0.8287037037rem + 0.2469135802vw, 1.125rem);
  line-height: 2.22222;
  letter-spacing: 0.1em;
  color: #333333;
  margin-top: 1.25rem;
}

.top-menu__itemBtn {
  margin-top: 2.1875rem;
}

.top-menu__itemBtn.--removal {
  width: 100%;
}
.top-menu__itemBtn.--removal::after {
  width: 57px;
  top: 35%;
  right: 13%;
}

.btn__wrap {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .btn__wrap {
    display: block;
  }
}
@media (max-width: 767px) {
  .btn__wrap {
    display: block;
  }
}

/* top-recruit
_______________*/
.top-recruit {
  background-color: #CEC7C6;
  padding: 8.125rem 0 0.625rem;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-recruit {
    padding: 6.25rem 0 3.125rem;
  }
}
@media (max-width: 767px) {
  .top-recruit {
    padding: 4.375rem 0 3.125rem;
  }
}

.top-recruit__inner {
  display: flex;
  gap: clamp(1.25rem, 0.5787037037rem + 3.5802469136vw, 1.875rem);
  max-width: 1360px;
}
@media (max-width: 767px) {
  .top-recruit__inner {
    flex-direction: column-reverse;
  }
}

.top-recruit__ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.1342592593rem + 0.6172839506vw, 1.675rem);
  font-weight: 900;
  line-height: 1.3333;
  letter-spacing: 0.1em;
  color: #605429;
}
.top-recruit__ttl span {
  font-family: "Great Vibes", cursive;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  letter-spacing: 0.05em;
  color: #605429;
  display: block;
}

.top-recruit__txt {
  line-height: 2.22222;
  letter-spacing: 0.1em;
  margin-top: 2.1875rem;
}

.top-recruit__btn {
  margin-top: 2.5rem;
}

.top-recruit__img {
  margin-right: 16%;
}

.top-recruit__logo {
  position: absolute;
  top: 14%;
  left: 75%;
}

/* top-skincare
_______________*/
.top-skincare {
  padding: 6.125rem 0 4.6875rem;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-skincare {
    padding: 6.25rem 0 3.125rem;
  }
}
@media (max-width: 767px) {
  .top-skincare {
    padding: 4.375rem 0 0.1rem;
  }
}

.top-skincare__inner {
  display: flex;
  justify-content: space-between;
  margin-top: 6.5rem;
  max-width: 1480px;
  padding-bottom: 6.3125rem;
}
@media (max-width: 767px) {
  .top-skincare__inner {
    display: block;
    margin-top: 2rem;
  }
}

.top-skincare__ttl::before, .top-skincare__ttl::after {
  top: 50%;
}
.top-skincare__ttl::before {
  left: 30%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-skincare__ttl::before {
    left: 19%;
  }
}
@media (max-width: 767px) {
  .top-skincare__ttl::before {
    left: 18%;
  }
}
.top-skincare__ttl::after {
  right: 30%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-skincare__ttl::after {
    right: 19%;
  }
}
@media (max-width: 767px) {
  .top-skincare__ttl::after {
    right: 18%;
  }
}

.top-skincare__txt {
  letter-spacing: 0.1em;
  line-height: 2.2;
}
.top-skincare__txt:nth-of-type(2) {
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .top-skincare__txt:nth-of-type(2) {
    margin-top: 1.25rem;
  }
}

.top-skincare__btn {
  margin-top: 3.75rem;
}

@media (max-width: 767px) {
  .top-skincare__img {
    margin-top: 4.375rem;
  }
}

.top-skincare__img--02 {
  position: absolute;
  top: 46%;
  left: 37%;
  max-width: 20.7291666667vw;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-skincare__img--02 {
    top: 66%;
    left: 51%;
  }
}
@media (max-width: 767px) {
  .top-skincare__img--02 {
    max-width: 31%;
    top: 65%;
    left: 66%;
    margin-top: 1.25rem;
  }
}

/* cta
_______________*/
.cta {
  position: relative;
  z-index: 2;
  background-color: #CEC7C6;
  padding: 6.125rem 0;
}
.cta::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url("../img/cta_img.png");
  background-position: right;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.8;
  z-index: -1;
}

.cta__inner {
  max-width: 1500px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3.125rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .cta__inner {
    display: block;
  }
}
@media (max-width: 767px) {
	.cta {
  position: relative;
  z-index: 2;
  background-color: #CEC7C6;
  padding: 3rem 0;
}
  .cta__inner {
    display: block;
  }
}

.cta__ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(2.1875rem, 1.9560185185rem + 1.2345679012vw, 3.4375rem);
  font-weight: 600;
  position: relative;
  z-index: 2;
	
}
@media (min-width: 768px) and (max-width: 1199px) {
  .cta__ttl {
    margin-top: 2.5rem;
  }
}
@media (max-width: 767px) {
  .cta__ttl {
    margin-top: 2.5rem;
	  text-shadow: -1px -1px 0 #FFFFFF, 1px -1px 0 #FFFFFF, -1px 1px 0 #FFFFFF, 1px 1px 0 #FFFFFF;
  }
}

.cta__btn {
  background-color: #C30D23;
  color: #FFFFFF;
  max-width: 403px;
  width: 100%;
  margin-left: auto;
  position: relative;
  z-index: 2;
}
.cta__btn::before {
  border: 1px solid #FFFFFF;
}
.cta__btn::after {
  width: 78px;
  border-bottom: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .cta__btn {
    margin-left: 0;
    margin-top: 2.5rem;
  }
}
@media (max-width: 767px) {
  .cta__btn {
    margin-left: 0;
    margin-top: 2.5rem;
  }
}

/* top-news
_______________*/
.top-news {
  background-color: rgba(217, 213, 198, 0.45);
  background-image: url("../img/flower01.png"), url("../img/flower02.png");
  background-position: left center, right center;
  background-repeat: no-repeat, no-repeat;
  background-size: auto;
  padding: 9rem 0 5.1875rem;
  position: relative;
}
@media (max-width: 767px) {
  .top-news {
    background-position: left top, right bottom;
    background-size: 50% 50%;
    padding: 4.375rem 0 3.125rem;
  }
}

.top-news__inner {
  max-width: 1500px;
}

.top-news__items {
  margin-top: 3.125rem;
}

.top-news__item {
  border: 1px solid #707070;
  background-color: #FFFFFF;
}
.top-news__item:not(:first-child) {
  margin-top: 1.25rem;
}

.newsItem .line {
  border-left: 2px dotted #B4A3A2;
  height: 3.8541666667vw;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .newsItem .line:nth-of-type(2) {
    display: none;
  }
}
@media (max-width: 767px) {
  .newsItem .line:nth-of-type(2) {
    display: none;
  }
}

.newsItem__list {
  display: flex;
  align-items: center;
  padding: 0.875rem;
  position: relative;
}
.newsItem__list::after {
  width: 4.0625vw;
  height: 0.4166666667vw;
  border-bottom: 1px solid #806B69;
  border-right: 1px solid #806B69;
  transform: skew(45deg);
  position: absolute;
  content: "";
  top: 50%;
  right: 1%;
}
@media (max-width: 767px) {
  .newsItem__list::after {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .newsItem__list {
    display: block;
  }
}
@media (max-width: 767px) {
  .newsItem__list {
    display: block;
  }
}

.newsItem__list .wrap {
  display: flex;
  align-items: center;
}

.newsItem__date {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  position: relative;
  padding: 0 2.5rem;
}
.newsItem__date::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: #B4A3A2;
}
@media (max-width: 767px) {
  .newsItem__date {
    margin-right: 0;
    padding: 0 0.875rem;
  }
}

.newsItem__genre {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  min-width: 255px;
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .newsItem__genre {
    padding: 0 2.5rem;
  }
}
@media (max-width: 767px) {
  .newsItem__genre {
    min-width: 100px;
    padding: 0 0.875rem;
  }
}

.newsItem__txt {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  padding: 0 3.75rem;
  width: 100%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .newsItem__txt {
    padding: 0 2.5rem;
    margin-top: 1.25rem;
  }
}
@media (max-width: 767px) {
  .newsItem__txt {
    padding: 0;
    margin-top: 1.25rem;
  }
}

.top-news__btn {
  background-color: #BEAA9C;
  margin: 4.5rem auto 0;
  color: #FFFFFF;
}
.top-news__btn::after {
  border-bottom: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
}

/* top-btnArea
_______________*/
.top-btnArea {
  padding: 5.625rem 0;
}

.top-btnArea__inner {
  display: flex;
  justify-content: space-between;
  gap: 8rem;
  max-width: 1500px;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-btnArea__inner {
    display: block;
  }
}
@media (max-width: 767px) {
	.top-btnArea {
  padding: 0rem 1rem 2.5rem 1rem;
}
  .top-btnArea__inner {
    display: block;
  }
}

.top-btn {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: clamp(1.25rem, 1.0648148148rem + 0.987654321vw, 2.25rem);
  color: #333333;
  letter-spacing: 0.1em;
  background-color: #E9EAEC;
  border: 1px solid #707070;
  padding: 3.75rem 3rem;
  position: relative;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.4);
  width: 60%;
  display: block;
}
.top-btn:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}
.top-btn::after {
  width: 118px;
  height: 16px;
  border-bottom: 3px solid #373737;
  border-right: 3px solid #373737;
  transform: skew(45deg);
  position: absolute;
  content: "";
  top: 48%;
  right: 6%;
}
@media (max-width: 767px) {
  .top-btn::after {
    width: 40px;
    height: 10px;
    top: 41%;
    right: 6%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-btn {
    width: 100%;
    margin: 2.5rem auto 0;
  }
}
@media (max-width: 767px) {
  .top-btn {
    width: 100%;
    margin: 2.5rem auto 0;
    padding: 1.25rem;
  }
}

/* top-about
_______________*/
.top-about {
  background: url("../img/about_bg.png") no-repeat center center/cover;
  padding: 7.375rem 0 8rem;
}
@media (max-width: 767px) {
  .top-about {
    padding: 1rem 0 3.125rem;
  }
}

.top-about__inner {
  max-width: 1460px;
}

.top-about__contents {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 4.8125rem;
       column-gap: 4.8125rem;
  row-gap: 2.1875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__contents {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .top-about__contents {
    grid-template-columns: 1fr;
  }
}

.top-about__logo {
  margin-top: 3rem;
}
.top-about__logo img {
  width: 76%;
}
@media (max-width: 767px) {
  .top-about__logo img {
    margin-inline: auto;
    display: block;
  }
}

.top-about__address {
  background-color: #FFFFFF;
  border-radius: 19px;
  font-size: clamp(1.125rem, 1.0439814815rem + 0.4320987654vw, 1.5625rem);
  line-height: 1.6;
  text-align: center;
  padding: 5.9375rem 0;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .top-about__address {
    padding: 3.125rem 2.5rem;
    text-align: left;
  }
}
@media (max-width: 767px) {
  .top-about__address {
    padding: 1.25rem;
  }
}

.top-about__info {
  background-color: #FFFFFF;
  border-radius: 19px;
  padding: 1.875rem 4.4375rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .top-about__info {
    padding: 1.875rem 2.5rem;
  }
}
@media (max-width: 767px) {
  .top-about__info {
    padding: 1.25rem;
  }
}

.top-about__info .tel {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .tel {
    display: block;
  }
}
@media (max-width: 767px) {
  .top-about__info .tel {
    display: block;
  }
}

.top-about__info .tel .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .tel .wrap {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .top-about__info .tel .wrap {
    justify-content: center;
  }
}

.top-about__info .tel-number {
  font-family: "Noto Serif JP", serif;
  font-weight: 900;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  line-height: 1.8;
  letter-spacing: 0.1em;
  margin-right: 1.25rem;
}
@media (max-width: 767px) {
  .top-about__info .tel-number {
    margin-right: 0;
  }
}

.top-about__info .txt {
  font-family: "Noto Serif JP", serif;
  font-weight: 900;
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  color: #FFFFFF;
  background-color: #999999;
  padding: 0.3125rem 1rem;
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .txt {
    display: block;
    margin-top: 1.25rem;
  }
}
@media (max-width: 767px) {
  .top-about__info .txt {
    display: block;
    margin-top: 1.25rem;
  }
}

.top-about__info .open {
  border: 1px solid #C7C7C7;
  padding: 1.3125rem 2.125rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .open {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .top-about__info .open {
    text-align: center;
    padding: 1.25rem 0rem;
  }
}

.top-about__info .open .daytime {
  display: flex;
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .open .daytime {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .top-about__info .open .daytime {
    display: block;
  }
}

.top-about__info .open .label {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 500;
  color: #FFFFFF;
  background-color: #999999;
  text-align: center;
  padding: 0 1rem;
  margin-right: 1.875rem;
  min-width: 98px;
}
@media (max-width: 767px) {
  .top-about__info .open .label {
    margin-right: 0;
  }
}

.top-about__info .open .time {
  font-size: clamp(1.25rem, 1.1921296296rem + 0.3086419753vw, 1.5625rem);
  font-weight: 500;
  color: #333333;
}
.top-about__info .open .time span {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
}

.top-about__info .open .saturday {
  display: flex;
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .top-about__info .open .saturday {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .top-about__info .open .saturday {
    display: block;
    margin-top: 1.25rem;
  }
}

.top-about__info .attention {
  text-align: center;
}

.top-about__reserve {
  background-color: #FFFFFF;
  border-radius: 19px;
  padding: 5.125rem 0 4.375rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .top-about__reserve {
    padding: 3.75rem;
  }
}
@media (max-width: 767px) {
  .top-about__reserve {
    padding: 1.25rem;
  }
}
.top-about__reserve img {
  margin-inline: auto;
  display: block;
}

.top-about__reserve .txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.125rem, 1.0439814815rem + 0.4320987654vw, 1.5625rem);
  line-height: 1.2;
  text-align: center;
  margin-top: 1.25rem;
}

.top-about__map {
  background-color: #FFFFFF;
  border-radius: 19px;
  padding: 1.8125rem 2.4375rem;
  margin-top: 2.1875rem;
}
@media (max-width: 767px) {
  .top-about__map {
    padding: 1.25rem;
  }
}

.mapArea {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 60.9%;
}
.mapArea iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map__ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.1342592593rem + 0.6172839506vw, 1.875rem);
  font-weight: 900;
  line-height: 1.333;
  margin-top: 2.1875rem;
}

.map__txt {
  font-size: clamp(1.125rem, 1.0787037037rem + 0.2469135802vw, 1.375rem);
  line-height: 1.6;
  margin-top: 1.4375rem;
}

/* footer
_______________*/
.footer {
  padding: 7.375rem 0 5rem;
}
@media (max-width: 767px) {
  .footer {
    padding: 4.375rem 0 3.125rem;
  }
}

.footer__inner {
  max-width: 1600px;
}

.footer__logo img {
  margin-inline: auto;
  display: block;
  width: 33%;
}
@media (max-width: 767px) {
  .footer__logo img {
    width: 80%;
  }
}

.footer__sns {
  margin: 3.25rem auto 0;
  display: block;
}
.footer__sns img {
  margin-inline: auto;
  display: block;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .footer__sns {
    margin-top: 3.125rem;
  }
}
@media (max-width: 767px) {
  .footer__sns {
    margin-top: 3.125rem;
  }
}

.footer__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2.625rem;
}
@media (max-width: 767px) {
  .footer__nav {
    display: block;
    margin-top: 3.125rem;
    gap: 1.25rem;
    justify-content: center;
  }
}

.footer__items {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.25rem, 0.787037037rem + 2.4691358025vw, 3.75rem);
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .footer__items {
    gap: 1.125rem;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .footer__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    width: 60%;
  }
}
@media (max-width: 767px) {
  .footer__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}

.footer__item {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(0.875rem, 0.8287037037rem + 0.2469135802vw, 1.125rem);
  font-weight: 700;
  line-height: 1.4444;
  letter-spacing: 0.1em;
}
.footer__item a:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.footer__btn {
  margin-left: 2rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .footer__btn {
    margin: 1.25rem auto 0;
  }
}
@media (max-width: 767px) {
  .footer__btn {
    margin: 1.25rem auto 0;
  }
}

/* page-common
___________________________*/
.page__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1428px;
  padding: 3.125rem 2.25rem 0.5rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .page__inner {
    padding: 3.125rem 0.625rem 7.5rem;
  }
}
@media (max-width: 767px) {
  .page__inner {
    display: block;
  }
}

.page__inner.flex-reverse {
  flex-direction: row-reverse;
}

.page__wrap {
  width: 60%;
}

.page__ttlWrap.flex {
  display: flex;
  align-items: baseline;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .page__ttlWrap.flex {
    display: block;
  }
}
@media (max-width: 767px) {
  .page__ttlWrap.flex {
    display: block;
  }
}

.page__ttl {
  font-family: "Great Vibes", cursive;
  font-size: clamp(6.25rem, 5.6712962963rem + 3.0864197531vw, 9.375rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #A0925E;
  text-align: center;
	margin-top: 2rem;
}
@media (max-width: 767px) {
  .page__ttl {
    font-size: clamp(5.625rem, 4.420503212rem + 6.4239828694vw, 7.5rem);
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  #pg-concept .page__ttl {
    text-align: left;
  }
}
@media (max-width: 767px) {
  #pg-concept .page__ttl {
    text-align: left;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  #pg-concept .page__subTtl {
    text-align: left;
  }
}
@media (max-width: 767px) {
  #pg-concept .page__subTtl {
    text-align: left;
  }
}

.page__subTtl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.875rem, 1.7592592593rem + 0.6172839506vw, 2.5rem);
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0.1em;
  color: #A0925E;
  margin-left: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .page__subTtl {
    margin-top: 1.25rem;
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .page__subTtl {
    margin-top: 1rem;
    margin-left: 0;
    text-align: center;
	padding-bottom: 2rem;
  }
}

.page__txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 12.0625rem;
}
@media (max-width: 767px) {
  .page__txt {
    margin-top: 1.25rem;
  }
}

@media (max-width: 767px) {
  .page__img img {
    margin-inline: auto;
    display: block;
  }
}

.page__main {
  background: url("../img/page-main_bg.jpg") no-repeat center top;
  background-size: contain;
}

.pg-section__ttl {
  color: #605429;
}
.pg-section__ttl::before, .pg-section__ttl::after {
  top: 35%;
}
.pg-section__ttl span {
  font-size: clamp(1.125rem, 0.9861111111rem + 0.7407407407vw, 1.875rem);
  font-weight: 900;
  letter-spacing: 0.1em;
  color: #605429;
  display: block;
}

/* page-concept
___________________________*/
.concept {
  padding-top: 11.6875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept {
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  .concept {
    padding-top: 0;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  #pg-concept {
    padding: 0 1.25rem;
  }
}
@media (max-width: 767px) {
  #pg-concept {
    padding: 3.125rem 1.25rem 0.5rem;
  }
}

#pg-concept .page__inner {
  background-image: url("../img/concept_img.png");
  background-position: right 7% bottom;
  background-repeat: no-repeat;
  background-size: inherit;
  padding: 6.5625rem 1.25rem 12.3125rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  #pg-concept .page__inner {
    background-position: right 7% center;
    background-size: 50%;
    padding: 6.5625rem 1.25rem 7.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  #pg-concept .page__inner {
    background-position: right 7% center;
    background-size: 60%;
    padding: 6.5625rem 0 7.5rem;
  }
}
@media (max-width: 767px) {
  #pg-concept .page__inner {
    background-position: right bottom;
    background-size: 70%;
    padding: 0 0 15.5rem;
  }
}

@media (max-width: 767px) {
  #pg-concept .page__wrap {
    width: 100%;
    margin-left: 1.25rem;
  }
}

.concept__inner {
  max-width: 1380px;
}

.concept__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3.75rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept__wrap {
    display: block;
  }
}
@media (max-width: 767px) {
  .concept__wrap {
    display: block;
  }
}

.concept__message {
  background-image: url("../img/frame.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  max-width: 600px;
  width: 100%;
  height: 352px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  box-sizing: border-box;
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept__message {
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .concept__message {
    margin-inline: auto;
    width: 100%;
  }
}
.concept__message .lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.5625rem, 1.4467592593rem + 0.6172839506vw, 2.1875rem);
  font-weight: 700;
  line-height: 1.45714;
  letter-spacing: 0.1em;
  padding: 5.9375rem 0;
  text-align: center;
}

.concept__content {
  display: grid;
  grid-template-columns: 17.875rem 11.8125rem 3.25rem 9.5625rem;
  row-gap: 2.3125rem;
  align-items: center;
  width: 100%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept__content {
    grid-template-columns: 2fr 1fr 0.5fr 1.5fr;
    margin-top: 7.5rem;
    width: 80%;
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .concept__content {
    grid-template-columns: 1fr 2fr 0.5fr 1.5fr;
    margin-top: 0rem;
    margin-inline: auto;
  }
}
.concept__content .item {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.3rem);
  font-weight: 700;
  color: #A0935D;
  line-height: 1.45;
  letter-spacing: 0.1em;
  text-align: center;
}
@media (max-width: 767px) {
  .concept__content .item {
    font-size: clamp(1rem, 0.6788008565rem + 1.7130620985vw, 1.5rem);
  }
}
.concept__content .item .red {
  color: #9E0101;
}

.concept__lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  font-weight: 700;
  color: #A0935D;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 3.5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept__lead {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .concept__lead {
    text-align: center;
  }
}

.concept__txt {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 2rem;
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .concept__txt {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .concept__txt {
    text-align: left;
  }
}

.concept__gallery {
  max-width: 1750px;
}

.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 9.5625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .gallery {
    margin-top: 6.25rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .gallery {
    margin-top: 5rem;
    grid-template-columns: 1fr;
  }
}

.gallery__item img {
  width: 100%;
  height: 354px;
  -o-object-fit: cover;
     object-fit: cover;
}

/* page-menu
___________________________*/
#pg-menu .page__inner {
  max-width: 1692px;
  padding: 0 3.125rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  #pg-menu .page__inner {
    padding: 0 1.25rem;
  }
}
@media (max-width: 767px) {
  #pg-menu .page__inner {
    padding: 3.125rem 3.25rem 0.5rem;
  }
}

#pg-menu .page__ttlWrap {
  margin-right: 6.25rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  #pg-menu .page__ttlWrap {
    margin-right: 1.25rem;
  }
}
@media (max-width: 767px) {
  #pg-menu .page__ttlWrap {
    margin-right: 0;
  }
}

.menu__inner {
  max-width: 1360px;
}

#pg-menu .menu-section__ttl {
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.5rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
  margin-top: 5.6875rem;
}
@media (max-width: 767px) {
  #pg-menu .menu-section__ttl {
    text-align: center;
    line-height: 1.5;
	  margin-top: 2rem;
  }
}

#pg-menu .menu-section__txt {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
  margin-top: 2.5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  #pg-menu .menu-section__txt {
    text-align: justify;
  }
}
@media (max-width: 767px) {
  #pg-menu .menu-section__txt {
    text-align: justify;
  }
}

@media (min-width: 1200px) and (max-width: 1440px) {
  .page__img {
    width: 55%;
  }
}

.menu__img {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3.125rem;
  margin-top: 5.8125rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .menu__img {
    gap: 1.875rem;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .menu__img {
    gap: 1.25rem;
  }
}
@media (max-width: 767px) {
  .menu__img {
    display: block;
  }
}
.menu__img img {
  width: 50%;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .menu__img img {
    width: 48%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .menu__img img {
    width: 48%;
  }
}
@media (max-width: 767px) {
  .menu__img img {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .menu__img img:not(:first-child) {
    margin-top: 1.25rem;
  }
}

.menu__table {
  padding: 2.3125rem 3.5rem 3.6875rem;
  background: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  z-index: 1;
  position: relative;
  margin-top: 2.875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .menu__table {
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .menu__table {
    padding: 0.625rem;
  }
}
.menu__table table {
  width: 100%;
}
.menu__table thead {
  background-color: #E8E4CD;
}
.menu__table th {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
  padding: 1.25rem;
}
@media (max-width: 767px) {
  .menu__table th {
    padding: 0.375rem;
  }
}
.menu__table td {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
  padding: 1.875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .menu__table td {
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .menu__table td {
    padding: 0.625rem;
  }
}
.menu__table td[colspan="2"] {
  text-align: left;
}
@media (max-width: 767px) {
  .menu__table td[colspan="2"] {
    text-align: center;
  }
}

@media (max-width: 767px) {
  .menu__table .td-block {
    width: 300%;
    display: block;
    margin-inline: auto;
  }
}

.menu-option {
  border: 1px solid #C3B27A;
}
.menu-option .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  line-height: 2.5;
  letter-spacing: 0.05em;
  color: #605429;
  padding: 0.625rem 2.3125rem;
}
@media (max-width: 767px) {
  .menu-option .txt {
    padding: 0.625rem;
  }
}

.menu__attention {
  display: flex;
  justify-content: space-between;
  gap: 1.25rem;
  margin-top: 1.875rem;
}
@media (max-width: 767px) {
  .menu__attention {
    display: block;
  }
}

.attention__box {
  background-color: #F0EBE6;
  padding: 2.8125rem 1.125rem 1.8125rem;
  width: 50%;
  z-index: 1;
  position: relative;
}
@media (max-width: 767px) {
  .attention__box:not(:first-child) {
    margin-top: 1.25rem;
  }
}
@media (max-width: 767px) {
  .attention__box {
    width: 100%;
  }
}
.attention__box .ttl {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  font-weight: 700;
  line-height: 2.5;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
}
.attention__box .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.05em;
  color: #605429;
  margin-top: 2rem;
}

/* herb-peeling */
.herb-peeling {
  padding: 6.875rem 0 6.25rem;
}

.herb-peeling .section__ttl::before {
  left: 15%;
}
@media (max-width: 767px) {
	.herb-peeling {
  padding: 1.875rem 0 6.25rem;
}
  .herb-peeling .section__ttl::before {
    left: 7%;
  }
}
.herb-peeling .section__ttl::after {
  right: 15%;
}
@media (max-width: 767px) {
  .herb-peeling .section__ttl::after {
    right: 7%;
  }
}

.herb-peeling__info {
  background-color: #E5E3D8;
  background-image: url("../img/star.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-top: 1.9375rem;
  padding: 1.6875rem 9.0625rem 2.75rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__info {
    background-size: contain;
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .herb-peeling__info {
    background-size: contain;
    padding: 1.25rem;
  }
}
.herb-peeling__info .ttl {
  text-align: center;
}
.herb-peeling__info .ttl img {
  margin-inline: auto;
}

.herb-peeling__infoWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .herb-peeling__infoWrap {
    display: block;
  }
}
.herb-peeling__infoWrap .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(2.0625rem, 1.8310185185rem + 1.2345679012vw, 3.3125rem);
  font-weight: 900;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .ttl {
    font-size: clamp(1.875rem, -0.3523781903rem + 4.6403712297vw, 3.125rem);
  }
}
.herb-peeling__infoWrap .ttl span {
  font-size: clamp(1.125rem, 1.0787037037rem + 0.2469135802vw, 1.375rem);
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: block;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .ttl span {
    font-size: clamp(1rem, 0.5545243619rem + 0.9280742459vw, 1.25rem);
  }
}
@media (max-width: 767px) {
  .herb-peeling__infoWrap .ttl span {
    text-align: center;
  }
}
.herb-peeling__infoWrap .price {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(2.0625rem, 1.8078703704rem + 1.3580246914vw, 3.4375rem);
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #605429;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .price {
    font-size: clamp(1.875rem, -0.3523781903rem + 4.6403712297vw, 3.125rem);
  }
}
@media (max-width: 767px) {
  .herb-peeling__infoWrap .price {
    text-align: center;
  }
}
.herb-peeling__infoWrap .price span {
  font-size: clamp(1.4375rem, 1.2060185185rem + 1.2345679012vw, 2.6875rem);
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .price span {
    font-size: clamp(1.25rem, -0.9773781903rem + 4.6403712297vw, 2.5rem);
  }
}
.herb-peeling__infoWrap .price-b {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(3.0625rem, 2.8310185185rem + 1.2345679012vw, 4.3125rem);
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #A01F00;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .price-b {
    font-size: clamp(2.5rem, 0.2726218097rem + 4.6403712297vw, 3.75rem);
  }
}
@media (max-width: 767px) {
  .herb-peeling__infoWrap .price-b {
    text-align: center;
  }
}
.herb-peeling__infoWrap .price-b span {
  font-size: clamp(2.125rem, 1.8935185185rem + 1.2345679012vw, 3.375rem);
}
@media (min-width: 768px) and (max-width: 1199px) {
  .herb-peeling__infoWrap .price-b span {
    font-size: clamp(1.875rem, -0.3523781903rem + 4.6403712297vw, 3.125rem);
  }
}

.herb-peeling__menu th,
.herb-peeling__menu td {
  width: 33.3%;
}

/* serum */
.serum {
  padding: 6.875rem 0 6.25rem;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.serum::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}

#pg-menu .serum .menu-section__ttl {
  line-height: 1.75;
}

.serum__menu {
  margin-top: 3.125rem;
}
.serum__menu th,
.serum__menu td {
  width: 50%;
}

.serum .attention__box {
  width: 100%;
}
@media (max-width: 767px) {
  .serum .attention__box {
    margin-top: 1.25rem;
  }
}
.serum .attention__box .txt {
  text-align: center;
}
@media (max-width: 767px) {
  .serum .attention__box .txt {
    text-align: justify;
  }
}

/* hair-removal */
.hair-removal {
  padding: 6.875rem 0 6.25rem;
}

#pg-menu .hair-removal .menu-section__ttl {
  line-height: 1.75;
}

.hair-removal .section__ttl::before {
  left: 13%;
}
@media (max-width: 767px) {
  .hair-removal .section__ttl::before {
    left: 7%;
  }
}
.hair-removal .section__ttl::after {
  right: 13%;
}
@media (max-width: 767px) {
  .hair-removal .section__ttl::after {
    right: 7%;
  }
}

.hair-removal__menu {
  background: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  margin-top: 3.4375rem;
  padding: 2.9375rem 0.75rem 4.1875rem;
}
@media (max-width: 767px) {
  .hair-removal__menu {
    padding: 1.25rem;
  }
}

.hair-removal__menu .menu__table th,
.hair-removal__menu .menu__table td {
  width: 50%;
}
.hair-removal__menu .menu__table td {
  padding: 1.1875rem;
}
@media (max-width: 767px) {
  .hair-removal__menu .menu__table td {
    padding: 0.625rem;
  }
}
.hair-removal__menu .menu__table td span {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  display: block;
  margin-top: 0.25rem;
}

.hair-removal__menuWrap {
  display: flex;
  justify-content: space-between;
  gap: 4.9375rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__menuWrap {
    display: block;
  }
}
@media (max-width: 767px) {
  .hair-removal__menuWrap {
    display: block;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__menuWrap {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal-menu__img img {
    margin-inline: auto;
  }
}

.hair-removal .menu__table {
  background: none;
  box-shadow: none;
  padding: 0;
  margin-right: 2.5rem;
  width: 37%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal .menu__table {
    margin-right: 0;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .hair-removal .menu__table {
    margin-right: 0;
    width: 100%;
  }
}

.hair-removal__info {
  background-color: #E5E3D8;
  background-image: url("../img/star.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-left: 39%;
  padding-top: 1.3125rem;
  padding-bottom: 2.4375rem;
  position: relative;
  margin-top: 3.125rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__info {
    background-size: contain;
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .hair-removal__info {
    background-size: contain;
    padding: 1.25rem;
    margin-top: 8.75rem;
  }
}
.hair-removal__info::before {
  content: "";
  position: absolute;
  top: 0;
  left: 7%;
  width: 354px;
  height: 262px;
  background-image: url("../img/present.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__info::before {
    width: 16.9270833333vw;
    height: 13.0208333333vw;
    top: 0;
    left: 7%;
  }
}
@media (max-width: 767px) {
  .hair-removal__info::before {
    width: 200px;
    height: 133px;
    top: -32%;
    left: 0;
  }
}
.hair-removal__info .ttl img {
  margin-left: 10.1875rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .hair-removal__info .ttl img {
    margin-inline: auto;
    display: block;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__info .ttl img {
    margin-inline: auto;
    display: block;
  }
}
@media (max-width: 767px) {
  .hair-removal__info .ttl img {
    margin-inline: auto;
    display: block;
  }
}

.hair-removal__infoWrap {
  margin-top: 1.1875rem;
  width: 80%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hair-removal__infoWrap {
    margin-inline: auto;
    width: 68%;
  }
}
@media (max-width: 767px) {
  .hair-removal__infoWrap {
    margin-inline: auto;
    width: 75%;
  }
}

.otameshi,
.sikkari {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .otameshi,
.sikkari {
    display: block;
  }
}
.otameshi .ttl,
.sikkari .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.3125rem, 1.2662037037rem + 0.2469135802vw, 1.5625rem);
  font-weight: 900;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #FFFFFF;
  background-color: #746200;
  min-width: 189px;
  text-align: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .otameshi .ttl,
.sikkari .ttl {
    min-width: 117px;
  }
}
@media (max-width: 767px) {
  .otameshi .ttl,
.sikkari .ttl {
    min-width: 117px;
  }
}
.otameshi .txt, .otameshi .arrow,
.sikkari .txt,
.sikkari .arrow {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.75rem, 1.6342592593rem + 0.6172839506vw, 2.375rem);
  font-weight: 900;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
}
@media (max-width: 767px) {
  .otameshi .txt, .otameshi .arrow,
.sikkari .txt,
.sikkari .arrow {
    text-align: center;
  }
}

.sikkari {
  margin-top: 0.8125rem;
}

.hair-removal__banner {
  margin-top: 0.625rem;
}

/* facial */
.facial {
  padding: 6.875rem 0 6.25rem;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.facial::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}

#pg-menu .facial .menu-section__ttl {
  line-height: 1.75;
}

.facial__info {
  background-color: #E5E3D8;
  background-image: url("../img/star.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-top: 1.875rem;
  padding: 1.875rem 0 1.625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .facial__info {
    background-size: contain;
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .facial__info {
    background-size: contain;
    padding: 1.25rem;
  }
}
.facial__info .ttl {
  text-align: center;
}
.facial__info .ttl img {
  margin-inline: auto;
}

.facial__infoWrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 767px) {
  .facial__infoWrap {
    display: block;
  }
}
.facial__infoWrap .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  font-weight: 700;
  letter-spacing: -0.05em;
  color: #605429;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .facial__infoWrap .ttl {
    font-size: clamp(1.875rem, -0.3523781903rem + 4.6403712297vw, 3.125rem);
  }
}
@media (max-width: 767px) {
  .facial__infoWrap .ttl {
    text-align: center;
  }
}
.facial__infoWrap .price {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(3.625rem, 3.3935185185rem + 1.2345679012vw, 4.875rem);
  font-weight: 900;
  color: #A01F00;
  margin-left: 2rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .facial__infoWrap .price {
    font-size: clamp(1.875rem, -0.3523781903rem + 4.6403712297vw, 3.125rem);
    margin-left: 0.625rem;
  }
}
@media (max-width: 767px) {
  .facial__infoWrap .price {
    margin-left: 0;
    text-align: center;
  }
}
.facial__infoWrap .price span {
  font-size: clamp(1.8125rem, 1.5810185185rem + 1.2345679012vw, 3.0625rem);
  line-height: 1.18367;
  display: inline-block;
  margin-left: -1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .facial__infoWrap .price span {
    font-size: clamp(1.25rem, -0.9773781903rem + 4.6403712297vw, 2.5rem);
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .facial__infoWrap .price span {
    margin-left: -0.625rem;
  }
}
.facial__infoWrap .price-b {
  font-size: clamp(1.75rem, 1.7037037037rem + 0.2469135802vw, 2rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  background-color: #746200;
  padding: 1rem 0;
  color: #FFFFFF;
  min-width: 139px;
  margin-left: 1.1875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .facial__infoWrap .price-b {
    font-size: clamp(1.5rem, 1.0545243619rem + 0.9280742459vw, 1.75rem);
    min-width: 1009x;
  }
}
@media (max-width: 767px) {
  .facial__infoWrap .price-b {
    margin: 0 auto;
    width: 30%;
  }
}

.facial__menu {
  margin-top: 1.875rem;
}

/* body */
.body {
  padding: 6.875rem 0 6.25rem;
}

.body .section__ttl::before {
  left: 19%;
}
.body .section__ttl::after {
  right: 19%;
}

.body .menu-section__ttl {
  width: 105%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .body .menu-section__ttl {
    width: 100%;
    text-align: justify;
  }
}

.body__menu th,
.body__menu td {
  width: 33.3%;
  padding: 0.8125rem;
}

.body__attention .attention__box {
  padding: 2.8125rem 1.125rem 3.0625rem;
}

/* before-after */
.before-after {
  padding: 6.875rem 0 6.25rem;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.before-after::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}

@media (max-width: 767px) {
  .before-after .section__ttl::before {
    left: 7%;
  }
}
@media (max-width: 767px) {
  .before-after .section__ttl::after {
    right: 7%;
  }
}

.before-after__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.875rem;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  margin-top: 8.875rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .before-after__lists {
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
  }
}
@media (max-width: 767px) {
  .before-after__lists {
    grid-template-columns: 1fr;
    margin-top: 5rem;
  }
}

.before-after__list {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}

.before-after__listImg {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.before-after__listImg img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.before-after__listBody {
  background: #FCFBF5;
  padding: 2.875rem 1.4375rem;
  z-index: 1;
}
@media (max-width: 767px) {
  .before-after__listBody {
    padding: 1.25rem;
  }
}
.before-after__listBody .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.7407407407vw, 1.875rem);
  letter-spacing: 0.05em;
  color: #605429;
}
.before-after__listBody .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  font-weight: 400;
  color: #605429;
  line-height: 2.5;
  letter-spacing: 0.05em;
  padding: 1.25rem 2.3125rem;
  border: 1px solid #C3B27A;
  width: 100%;
  min-height: 202px;
  margin-top: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .before-after__listBody .txt {
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .before-after__listBody .txt {
    padding: 1.25rem;
    min-height: auto;
  }
}

/* page-products
___________________________*/
.products__inner {
  max-width: 1480px;
}

.products__lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.875rem, 1.7592592593rem + 0.6172839506vw, 2.5rem);
  font-weight: 900;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
	padding-top: 5rem;
}
@media (max-width: 767px) {
  .products__lead {
    text-align: center;
  }
}

.products__wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 5rem;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__wrap {
    gap: 1.25rem;
  }
}
@media (max-width: 767px) {
  .products__wrap {
    display: block;
  }
}

.products__info {
  width: 32.1%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__info {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .products__info {
    width: 100%;
  }
}
.products__info .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.1342592593rem + 0.6172839506vw, 1.875rem);
  font-weight: 700;
  letter-spacing: 0.1em;
}
.products__info .ttl span {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
}
.products__info .txt {
  line-height: 2.22222;
  letter-spacing: 0.1em;
  margin-top: 2.5rem;
}

@media (max-width: 767px) {
  .products__img {
    margin-top: 2.5rem;
  }
}

.products__img--02 {
  position: absolute;
  top: 23%;
  left: 32%;
  max-width: 20.7291666667vw;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__img--02 {
    top: 56%;
    left: 45%;
  }
}
@media (max-width: 767px) {
  .products__img--02 {
    max-width: 31%;
    left: 66%;
    top: 63%;
  }
}

.products__txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.5625rem, 1.4467592593rem + 0.6172839506vw, 2.1875rem);
  font-weight: 900;
  color: #A0935D;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 11.625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__txt {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .products__txt {
    margin-top: 3.75rem;
    text-align: center;
	  line-height: 2;
	  font-weight: 600;
        font-size: 1.3rem;
  }
}

.products__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.875rem;
  margin-top: 4.9375rem;
  padding-bottom: 6.6875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__lists {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .products__lists {
    grid-template-columns: 1fr;
  }
}

.products__list {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 1.4375rem;
  background-color: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  padding: 2.9375rem 2.125rem;
}
.products__list .ttl {
  background-color: #E8E4CD;
  font-size: clamp(1.3125rem, 1.2662037037rem + 0.2469135802vw, 1.5625rem);
  font-weight: 900;
  line-height: 1.44;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 1.25rem 0;
}
.products__list .img {
  aspect-ratio: 16/9;
  width: 100%;
  height: 268px;
  margin-inline: auto;
  overflow: hidden;
}
.products__list .img img {
  -o-object-fit: cover;
     object-fit: cover;
  margin-inline: auto;
  display: block;
}
.products__list .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  line-height: 2;
  letter-spacing: 0.05em;
}
.products__list .price {
  font-size: clamp(1.3125rem, 1.2662037037rem + 0.2469135802vw, 1.5625rem);
  font-weight: 900;
  line-height: 1.44;
  letter-spacing: 0.1em;
  text-align: right;
}

.products__about {
  padding: 6.25rem 0;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.products__about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}

.productsAbout__inner {
  max-width: 1400px;
}

.products__aboutWrap {
  display: flex;
  align-items: flex-start;
  gap: 2.8125rem;
}
@media (max-width: 767px) {
  .products__aboutWrap {
    display: block;
  }
}
.products__aboutWrap:not(:first-child) {
  margin-top: 9.375rem;
}
@media (max-width: 767px) {
  .products__aboutWrap:not(:first-child) {
    margin-top: 2.5rem;
  }
}
.products__aboutWrap .img {
  position: relative;
  width: 83%;
}
@media (max-width: 767px) {
  .products__aboutWrap .img {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .products__aboutWrap .img img {
    display: block;
    margin-inline: auto;
    width: 100%;
  }
}
.products__aboutWrap .img .price {
  font-size: clamp(1.125rem, 1.0439814815rem + 0.4320987654vw, 1.5625rem);
  font-weight: 900;
  letter-spacing: 0.1em;
  position: absolute;
  right: 3%;
  bottom: 2%;
}
@media (max-width: 767px) {
  .products__aboutWrap .img .price {
    right: 10%;
  }
}
.products__aboutWrap .content {
  width: 90%;
}
@media (max-width: 767px) {
  .products__aboutWrap .content {
    width: 100%;
  }
}
.products__aboutWrap .content .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.1342592593rem + 0.6172839506vw, 1.875rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-top: 1.0625rem;
}
.products__aboutWrap .content .ttl span {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  letter-spacing: 0.1em;
  margin-left: 1.0625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__aboutWrap .content .ttl span {
    display: block;
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .products__aboutWrap .content .ttl span {
    display: block;
    margin-left: 0;
  }
}
.products__aboutWrap .content .txt {
  margin-top: 2.5rem;
  line-height: 2.22222;
  letter-spacing: 0.1em;
}

.products__aboutWrap.reverse {
  flex-direction: row-reverse;
}

.products__cta {
  background: url("../img/products_cta_bg.jpg") no-repeat center center/cover;
}
@media (max-width: 767px) {
  .products__cta {
    background: url("../img/products_cta_bg.jpg") no-repeat center right 66%/cover;
  }
}
.products__cta .txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.1em;
  color: #A25252;
  text-align: right;
  text-shadow: -1px -1px 0 #FFFFFF, 1px -1px 0 #FFFFFF, -1px 1px 0 #FFFFFF, 1px 1px 0 #FFFFFF;
  position: relative;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .products__cta .txt {
    width: 80%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__cta .txt {
    width: 80%;
  }
}
@media (max-width: 767px) {
  .products__cta .txt {
    font-size: clamp(1.5rem, 1.2591006424rem + 1.2847965739vw, 1.875rem);
    width: 80%;
  }
}
.products__cta .txt::after {
  position: absolute;
  content: "";
  width: 117px;
  height: 44px;
  top: 50%;
  transform: translateY(-50%);
  right: -13%;
  background: url("../img/products_cta_arrow.png") no-repeat center center;
  background-size: contain;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .products__cta .txt::after {
    right: -20%;
  }
}
@media (max-width: 767px) {
  .products__cta .txt::after {
    right: -20%;
    width: 15.2542372881vw;
    height: 5.7366362451vw;
  }
}

.products__link {
  padding: 7.375rem 0 6.875rem;
  display: block;
}
.products__link:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

/* page-skincare
___________________________*/
.skincare {
  padding-top: 0.9375rem;
}

.skincare .section__ttl::before {
  left: 30%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare .section__ttl::before {
    left: 28%;
  }
}
@media (max-width: 767px) {
  .skincare .section__ttl::before {
    left: 22%;
  }
}
.skincare .section__ttl::after {
  right: 30%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare .section__ttl::after {
    right: 28%;
  }
}
@media (max-width: 767px) {
  .skincare .section__ttl::after {
    right: 22%;
  }
}

.skincare__contents {
  padding-bottom: 6.3125rem;
  position: relative;
}
.skincare__contents::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 24%;
  background-color: #FCFBF5;
  z-index: -1;
}

#pg-skincare .page__inner {
  max-width: 1618px;
  padding: 0 2.25rem 0.5rem;
}

#pg-skincare .page__ttlWrap {
  margin-left: 5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  #pg-skincare .page__ttlWrap {
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  #pg-skincare .page__ttlWrap {
    margin-left: 0;
	  padding-bottom: 2rem;
  }
}

.skincare__inner {
  max-width: 1480px;
}

.skincare__lead {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.875rem, 1.7592592593rem + 0.6172839506vw, 2.5rem);
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0.1em;
  text-align: center;
}
.skincare__lead:nth-of-type(2) {
  margin-top: 5rem;
}
@media (max-width: 767px) {
  .skincare__lead:nth-of-type(2) {
    margin-top: 2.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__lead {
    text-align: justify;
  }
}
@media (max-width: 767px) {
  .skincare__lead {
    text-align: center;
    margin-top: 2.5rem;
  }
}

.skincare__txt {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__txt {
    text-align: justify;
  }
}
@media (max-width: 767px) {
  .skincare__txt {
    text-align: left;
    margin-top: 1rem;
  }
}
.skincare__txt:nth-of-type(2) {
  margin-top: 5rem;
}
@media (max-width: 767px) {
  .skincare__txt:nth-of-type(2) {
    margin-top: 2.5rem;
  }
}

.skincare__wrap {
  background-color: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  padding: 2.9375rem 3.4375rem 5rem;
  margin-top: 4.5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__wrap {
    padding: 1.25rem;
  }
}
@media (max-width: 767px) {
  .skincare__wrap {
    padding: 1.25rem;
  }
}

.skincare__img {
  background: #FFFFFF;
}
.skincare__img img {
  margin-inline: auto;
  width: 83.7%;
  display: block;
  padding-top: 3.9375rem;
  padding-bottom: 3.125rem;
}

.skincare__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 3.125rem;
}
@media (max-width: 767px) {
  .skincare__info {
    display: block;
  }
}
.skincare__info .txt {
  font-size: clamp(1.1875rem, 1.1412037037rem + 0.2469135802vw, 1.4375rem);
  line-height: 2.1739;
  letter-spacing: 0.05em;
  position: relative;
  width: 33%;
}
@media (max-width: 767px) {
  .skincare__info .txt {
    width: 100%;
  }
}
.skincare__info .txt::after {
  content: "";
  position: absolute;
  width: 100px;
  height: 114px;
  background: url("../img/polygon.png") no-repeat center center;
  background-size: contain;
  top: 50%;
  right: -31%;
  transform: translateY(-50%);
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__info .txt::after {
    width: 70px;
    height: 70px;
    right: -25%;
  }
}
@media (max-width: 767px) {
  .skincare__info .txt::after {
    width: 9.1264667536vw;
    height: 9.1264667536vw;
    top: 100%;
    right: 46%;
    transform: rotate(90deg);
  }
}

.skincare__info .box {
  background-color: #E8E4CD;
  padding: 2.125rem;
  width: 62%;
}
@media (max-width: 767px) {
  .skincare__info .box {
    padding: 1.25rem;
    margin-top: 2.5rem;
    width: 100%;
  }
}
.skincare__info .box .box__txt {
  font-size: clamp(1.25rem, 1.1921296296rem + 0.3086419753vw, 1.5625rem);
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.1em;
  text-align: center;
	font-family: "Noto Serif JP", serif;
}
@media (max-width: 767px) {
  .skincare__info .box .box__txt {
    text-align: center;
  }
}
.skincare__info .box .box__lead {
  font-size: clamp(1.875rem, 1.7592592593rem + 0.6172839506vw, 2.5rem);
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0.1em;
  text-align: center;
	font-family: "Noto Serif JP", serif;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .skincare__info .box .box__lead {
    font-size: clamp(1.875rem, -1.25rem + 4.1666666667vw, 2.5rem);
	  
  }
}
@media (max-width: 767px) {
  .skincare__info .box .box__lead {
    text-align: center;
    font-family: "Noto Serif JP", serif;
        font-size: 2em;
        line-height: 1.8;
        margin-top: 0.5em;
  }
}

.skincare__desc {
  font-size: clamp(1.125rem, 1.0439814815rem + 0.4320987654vw, 1.4rem);
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 4.25rem;
}
@media (max-width: 767px) {
  .skincare__desc {
    text-align: left;
  }
}
.skincare__desc.bold {
  font-weight: 700;
}
@media (max-width: 767px) {
  .skincare__desc.bold {
    margin-top: 2.5rem;
	  font-weight: 400;
  }
}
.skincare__desc.mt {
  margin-top: 2.5rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__desc.mt {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .skincare__desc.mt {
    text-align: left;
  }
}

.skincare__lists {
  background-color: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  padding: 2.9375rem 3.4375rem 4rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.875rem;
  margin-top: 5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__lists {
    gap: 1.25rem;
  }
}
@media (max-width: 767px) {
  .skincare__lists {
    grid-template-columns: 1fr;
    padding: 1.25rem;
    gap: 1.25rem;
  }
}

.skincare__list {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 1.875rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__list {
    gap: 1.25rem;
  }
}
.skincare__list .ttl {
  background-color: #E8E4CD;
  font-size: clamp(1.3125rem, 1.2662037037rem + 0.2469135802vw, 1.5625rem);
  font-weight: 700;
  line-height: 1.44;
  text-align: center;
  padding: 1.25rem 0;
}
.skincare__list .img {
  aspect-ratio: 16/9;
  width: 100%;
  height: 293px;
  margin-inline: auto;
  overflow: hidden;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincare__list .img {
    width: 173px;
    height: 173px;
  }
}
.skincare__list .img img {
  -o-object-fit: cover;
     object-fit: cover;
  margin-inline: auto;
  display: block;
}
.skincare__list .lead {
  font-size: clamp(1.3125rem, 1.2662037037rem + 0.2469135802vw, 1.5625rem);
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.05em;
  text-align: center;
}
.skincare__list .txt {
  font-size: clamp(1rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}

.skincare__about {
  padding-top: 6.25rem;
  padding-bottom: 6.125rem;
  position: relative;
  background-color: #FCFBF5;
}
.skincare__about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: 0;
}

.skincareAbout__inner {
  max-width: 1320px;
}

.skincare__aboutWrap {
  display: flex;
  justify-content: space-between;
  gap: 2.8125rem;
  margin-top: 7.125rem;
}
@media (max-width: 767px) {
  .skincare__aboutWrap {
    display: block;
    margin-top: 5rem;
  }
}
.skincare__aboutWrap:not(:first-child) {
  margin-top: 5rem;
}

.skincare__aboutWrap.flex-reverse {
  flex-direction: row-reverse;
}

.skincare__aboutWrap .content {
  width: 49%;
}
@media (max-width: 767px) {
  .skincare__aboutWrap .content {
    width: 100%;
    margin-top: 1.875rem;
  }
}
.skincare__aboutWrap .content .ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.5rem, 1.4305555556rem + 0.3703703704vw, 1.875rem);
  font-weight: 700;
  line-height: 1.46666;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .skincare__aboutWrap .content .ttl {
    margin-top: 1.25rem;
  }
}
.skincare__aboutWrap .content .txt {
  line-height: 2.2222;
  letter-spacing: 0.1em;
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .skincare__aboutWrap .content .txt {
    margin-top: 1.25rem;
  }
}
.skincare__aboutWrap .content .wrap {
  display: flex;
  gap: 0.6875rem;
  margin-top: 3.0625rem;
}
@media (max-width: 767px) {
  .skincare__aboutWrap .content .wrap {
    margin-top: 1.25rem;
    justify-content: center;
  }
}
.skincare__aboutWrap .content .wrap .price h4, .skincare__aboutWrap .content .wrap .period h4 {
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.1em;
  text-align: center;
  color: #805E5E;
  background-color: #E8E4CD;
  padding: 0.75rem 0;
  min-width: 160px;
}
.skincare__aboutWrap .content .wrap .price p, .skincare__aboutWrap .content .wrap .period p {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 0.9375rem;
}

.skincare__btn {
  background-color: #E8E4CD;
  color: #653D3D;
  margin-top: 3.125rem;
}
@media (max-width: 767px) {
  .skincare__btn {
    margin: 1.25rem auto 0;
    width: 80%;
  }
}
.skincare__btn::before {
  border: 1px solid #653D3D;
}
.skincare__btn::after {
  border-bottom: 1px solid #653D3D;
  border-right: 1px solid #653D3D;
}

.skincare__cta {
  background: url("../img/skincare-cta_bg.jpg") no-repeat center center/cover;
  padding: 2.6875rem;
}
@media (max-width: 767px) {
  .skincare__cta {
    padding: 3.75rem 0;
  }
}

.skincareCta__link:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.skincareCta__inner {
  display: flex;
  align-items: center;
  gap: 1.875rem;
  max-width: 1566px;
}
@media (max-width: 767px) {
  .skincareCta__inner {
    display: block;
  }
}

.skincareCta__ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(2.5rem, -1.2604384134rem + 4.1753653445vw, 3.75rem);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #C30D23;
  text-shadow: -1px -1px 0 #FFFFFF, 1px -1px 0 #FFFFFF, -1px 1px 0 #FFFFFF, 1px 1px 0 #FFFFFF;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .skincareCta__ttl {
    font-size: clamp(1.875rem, -1.25rem + 4.1666666667vw, 2.5rem);
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .skincareCta__ttl {
    font-size: clamp(1.875rem, 0.7613109049rem + 2.3201856148vw, 2.5rem);
  }
}
@media (max-width: 767px) {
  .skincareCta__ttl {
    font-size: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
    margin-top: 1.25rem;
  }
}

.skincareCta__txt {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1.25rem, 1.0185185185rem + 1.2345679012vw, 2.1rem);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #333333;
  text-shadow: -1px -1px 0 #FFFFFF, 1px -1px 0 #FFFFFF, -1px 1px 0 #FFFFFF, 1px 1px 0 #FFFFFF;
	padding-top: 1rem;
}
@media (max-width: 767px) {
  .skincareCta__txt {
    margin-top: 1.25rem;
  }
}

/* page-qa
___________________________*/
#pg-qa .page__inner {
  max-width: 1727px;
}

#pg-qa .page__ttlWrap {
  margin-left: 8.625rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  #pg-qa .page__ttlWrap {
    margin-left: 3.125rem;
  }
}
@media (max-width: 767px) {
  #pg-qa .page__ttlWrap {
    margin-left: 0;
  }
}

#pg-qa .pg-section__ttl::before {
  left: 9%;
}
#pg-qa .pg-section__ttl::after {
  right: 9%;
}

#pg-qa .page__img {
  width: 50%;
}
@media (max-width: 767px) {
  #pg-qa .page__img {
    width: 100%;
  }
}

.qa__inner {
  max-width: 1505px;
}

.qa-removal {
  padding-top: 3.125rem;
}

#pg-qa .qa-removal .pg-section__ttl::before {
  left: 17%;
}
@media (max-width: 767px) {
  #pg-qa .qa-removal .pg-section__ttl::before {
    left: 7%;
  }
}
#pg-qa .qa-removal .pg-section__ttl::after {
  right: 17%;
}
@media (max-width: 767px) {
  #pg-qa .qa-removal .pg-section__ttl::after {
    right: 7%;
  }
}

#pg-qa .qa-facial .pg-section__ttl::before {
  left: 25%;
}
@media (max-width: 767px) {
  #pg-qa .qa-facial .pg-section__ttl::before {
    left: 20%;
  }
}
#pg-qa .qa-facial .pg-section__ttl::after {
  right: 25%;
}
@media (max-width: 767px) {
  #pg-qa .qa-facial .pg-section__ttl::after {
    right: 20%;
  }
}

#pg-qa .qa-voice .pg-section__ttl::before {
  left: 23%;
}
@media (max-width: 767px) {
  #pg-qa .qa-voice .pg-section__ttl::before {
    left: 23%;
  }
}
#pg-qa .qa-voice .pg-section__ttl::after {
  right: 23%;
}
@media (max-width: 767px) {
  #pg-qa .qa-voice .pg-section__ttl::after {
    right: 23%;
  }
}

.accordion {
  margin-top: 4.3125rem;
}

.accordion__item {
  background-color: #FFFFFF;
  border: 1px solid #707070;
  border-radius: 10px;
  width: 100%;
  padding: 2.75rem 2.625rem;
  position: relative;
}
@media (max-width: 767px) {
  .accordion__item {
    padding: 1.25rem 1.875rem;
  }
}
.accordion__item:not(:first-child) {
  margin-top: 1.875rem;
}

.accordion__ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0.1em;
  color: #000000;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.accordion__ttl::before, .accordion__ttl::after {
  content: "";
  display: block;
  background-color: #D8D3C2;
  position: absolute;
  top: 50%;
  width: 41px;
  height: 2px;
  right: 0;
}
@media (max-width: 767px) {
  .accordion__ttl::before, .accordion__ttl::after {
    width: 20px;
    right: -3%;
  }
}
.accordion__ttl::after {
  transform: rotate(90deg);
  transition-duration: 0.3s;
}

.accordion__ttl .q {
  font-family: "Allura", cursive;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #605429;
  margin-right: 1.3125rem;
}

.accordion__ttl.is-active::before {
  opacity: 0;
}

.accordion__ttl.is-active::after {
  transform: rotate(0);
}

.accordion__content {
  padding: 0 1.25rem;
  width: 94%;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: 0.3s;
  display: flex;
  align-items: center;
}
.accordion__content .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  line-height: 2;
  letter-spacing: 0.1em;
}

.accordion__content .a {
  font-family: "Allura", cursive;
  font-size: clamp(1.875rem, 1.6435185185rem + 1.2345679012vw, 3.125rem);
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #605429;
  margin-right: 2.5625rem;
}
@media (max-width: 767px) {
  .accordion__content .a {
    margin-right: 0.875rem;
  }
}

.accordion__content.is-open {
  background-color: #F8F7F2;
  padding: 12px 18px;
  margin: 12px 0;
  line-height: normal;
  height: auto;
  opacity: 1;
  width: 94%;
  margin-left: 2.6875rem;
}
@media (max-width: 767px) {
  .accordion__content.is-open {
    margin-left: 0;
    width: 100%;
  }
}

.qa-facial {
  margin-top: 6.875rem;
  padding-bottom: 8.75rem;
}

.qa-voice {
  padding: 6.25rem 0;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.qa-voice::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}

.voice__inner {
  max-width: 1460px;
}

.voice__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 1.875rem;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
  margin-top:3rem;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  .voice__lists {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1000px) and (max-width: 1199px) {
  .voice__lists {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 999px) {
  .voice__lists {
    grid-template-columns: 1fr;
  }
}

.voice__list {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 1.125rem;
  background-color: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  padding: 2.9375rem 1.875rem 1.25rem;
  position: relative;
}
@media (max-width: 767px) {
 .qa-voice {
  padding: 3.25rem 0;
  position: relative;
  z-index: 2;
  background-color: #FCFBF5;
}
.qa-voice::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/menu_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.45;
  z-index: -1;
}
	.voice__list {
    padding: 1.25rem;
  }
	.qa-facial {
  margin-top: 6.875rem;
  padding-bottom: 3.75rem;
}
}
.voice__list .ttl {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 900;
  line-height: 1.45;
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .voice__list .ttl {
    padding: 0 0.625rem;
    text-align: left;
  }
}
.voice__list .txt {
  font-size: clamp(0.75rem, 0.7037037037rem + 0.2469135802vw, 1rem);
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 1.125rem;
}
.voice__list .customer {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  text-align: right;
}

.balloon {
  position: relative;
  display: inline-block;
  padding: 1.5625rem 0;
  text-align: center;
  background-color: #E8E4CD;
  border-radius: 10px;
}
.balloon::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #E8E4CD;
}

/* page-revi
___________________________*/
#pg-revi .page__inner {
  padding: 12.875rem 0 0;
  align-items: flex-start;
}
@media (min-width: 1200px) and (max-width: 1440px) {
  #pg-revi .page__inner {
    padding: 3.125rem 1.25rem 0;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  #pg-revi .page__inner {
    padding: 3.125rem 1.25rem 0;
  }
}
@media (max-width: 767px) {
  #pg-revi .page__inner {
    padding: 3.125rem 1.25rem 0;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  #pg-revi .page__img {
    width: 50%;
  }
}

.revi__inner {
  padding-top: 2.6875rem;
}

.revi__content {
  margin-top: 5.1875rem;
}

.revi__logo {
  margin-top: 7.0625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .revi__logo {
    margin-top: 3.75rem;
  }
}
@media (max-width: 767px) {
  .revi__logo {
    margin-top: 2.5rem;
  }
}
.revi__logo img {
  display: block;
  margin-inline: auto;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .revi__logo img {
    width: 30%;
  }
}
@media (max-width: 767px) {
  .revi__logo img {
    width: 30%;
  }
}

.revi__txt {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
  text-align: center;
  margin-top: 5.1875rem;
}
@media (max-width: 767px) {
  .revi__txt {
    text-align: left;
  }
}
.revi__txt:not(:first-child) {
  margin-top: 1.875rem;
}

.revi-contact__inner {
  max-width: 1480px;
}

/* Form */
.Form {
  background-color: #FCFBF5;
  box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.1607843137);
  margin-top: 5.1875rem;
  padding: 6.25rem 0;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .Form {
    padding: 3.125rem 1.25rem;
  }
}
@media (max-width: 767px) {
  .Form {
    padding: 3.125rem 1.25rem;
  }
}

.Form .pg-section__ttl::before {
  left: 24%;
}
@media (max-width: 767px) {
  .Form .pg-section__ttl::before {
    left: 15%;
  }
}
.Form .pg-section__ttl::after {
  right: 24%;
}
@media (max-width: 767px) {
  .Form .pg-section__ttl::after {
    right: 15%;
  }
}

.Form-Item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1030px;
  margin-inline: auto;
}
@media (max-width: 767px) {
  .Form-Item {
    display: block;
  }
}
.Form-Item:not(:first-child) {
  margin-top: 1.5625rem;
}

.Form-Item.name {
  margin-top: 6.875rem;
}
@media (max-width: 767px) {
  .Form-Item.name {
    margin-top: 2.5rem;
  }
}

.Form-Item.textarea {
  display: block;
}

.Form-Item-Label {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.05em;
  color: #605429;
}

.wpcf7-form-control-wrap {
  width: 82%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .wpcf7-form-control-wrap {
    width: 75%;
  }
}

.wpcf7-form-control {
  width: 100%;
  height: 5.9375rem;
  padding: 0 1.25rem;
  background-color: #FFFFFF;
  border-radius: 48px;
  border: 1px solid #C9BDBC;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}
@media (max-width: 767px) {
  .wpcf7-form-control {
    height: 3.75rem;
  }
}

.wpcf7-radio {
  background: none;
  border: none;
}

input[type=radio] {
  display: none;
}

@media (max-width: 767px) {
  .wpcf7-list-item:not(:first-child) {
    padding: 0 1.25rem;
    margin-top: 0.3125rem;
    display: block;
  }
}

.wpcf7-list-item-label {
  font-size: clamp(1rem, 0.9537037037rem + 0.2469135802vw, 1.25rem);
  color: #605429;
  cursor: pointer;
  display: inline-block;
  margin-right: 3.1875rem;
  padding: 0 0 0 2.8125rem;
  position: relative;
}
.wpcf7-list-item-label::before {
  -webkit-transform: translateY(-50%);
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  content: "";
  display: block;
  height: 24px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}
.wpcf7-list-item-label::after {
  -webkit-transform: translateY(-50%);
  background: #C9BDBC;
  border: 1px solid #C9BDBC;
  border-radius: 50%;
  content: "";
  height: 12px;
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease 0s;
  width: 12px;
}

input[type=radio]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.wpcf7-textarea {
  background-color: #FFFFFF;
  border-radius: 21px;
  height: 346px;
  padding: 1.25rem;
  resize: vertical;
  text-align: left;
  width: 100%;
  border: 1px solid #C9BDBC;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  margin-top: 1.25rem;
}

.wpcf7-submit {
  font-size: clamp(1.125rem, 1.0439814815rem + 0.4320987654vw, 1.5625rem);
  font-weight: 500;
  letter-spacing: 0.05em;
  background-color: #E8E4CD;
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.5019607843);
  border-radius: 18px;
  color: #605429;
  padding: 1.6875rem 0;
  width: 24%;
  max-width: 100%;
  text-align: center;
  border: none;
  margin: 5rem auto 0;
  display: block;
  cursor: pointer;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .wpcf7-submit {
    width: 40%;
  }
}
@media (max-width: 767px) {
  .wpcf7-submit {
    line-height: 1;
    width: 80%;
    padding: 1.25rem 0;
  }
}
.wpcf7-submit:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

/*--------------------------------
 ARCHIVE
--------------------------------*/
#archive-blog {
  margin-top: 10rem;
}
#archive-blog .inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
#archive-blog .page__subTtl {
  text-align: center;
}
#archive-blog .news__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 1.25rem;
  list-style: none;
  padding: 0;
  margin: 2.5rem auto 0;
}
@media (min-width: 768px) and (max-width: 1199px) {
  #archive-blog .news__lists {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
	#archive-blog {
  margin-top: 0rem;
}
  #archive-blog .news__lists {
    grid-template-columns: 1fr;
  }
}
#archive-blog .news__thumbnail {
  height: 200px;
}
#archive-blog .news__item {
  background: #fff;
  border: 1px solid #eaeaea;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s;
}
@media (min-width: 768px) and (max-width: 1199px) {
  #archive-blog .news__item:nth-child(9) {
    display: none;
  }
}
#archive-blog .news__item:hover {
  transform: translateY(-5px);
}
#archive-blog .news__item .news__link {
  display: block;
  color: inherit;
  text-decoration: none;
}
#archive-blog .news__item .news__link .news__thumbnail img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
}
#archive-blog .news__item .news__link .news__content {
  padding: 20px;
}
#archive-blog .news__item .news__link .news__content .news__title {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 10px;
}
#archive-blog .news__item .news__link .news__content .news__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.875rem;
  color: #333;
}
#archive-blog .news__item .news__link .news__content .news__meta .news__date {
  color: #666;
}
#archive-blog .news__item .news__link .news__content .news__meta .news__category {
  display: inline-block;
  padding: 5px 10px;
  background-color: #E8E4CD;
  color: #605429;
  border-radius: 4px;
  margin-left: 10px;
}
#archive-blog .wp-pagenavi {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}
#archive-blog .wp-pagenavi a,
#archive-blog .wp-pagenavi span {
  padding: 10px 15px;
  margin: 0 5px;
  border: 1px solid #eaeaea;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  transition: background-color 0.3s;
}
#archive-blog .wp-pagenavi a:hover,
#archive-blog .wp-pagenavi span:hover {
  background-color: #f0f0f0;
}
#archive-blog .wp-pagenavi a.current,
#archive-blog .wp-pagenavi span.current {
  background-color: #A0925E;
  color: #fff;
}

/*--------------------------------
 SINGLE POST
--------------------------------*/
#single-post {
  margin-top: 3rem;
}
#single-post .inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
#single-post article {
  margin-bottom: 60px;
}
#single-post article .post-header {
  margin-bottom: 20px;
}
#single-post article .post-header .post-title {
  font-size: clamp(1.875rem, 1.7592592593rem + 0.6172839506vw, 2.5rem);
  font-weight: bold;
  margin-bottom: 10px;
}
#single-post article .post-header .post-meta {
  font-size: clamp(1rem, 0.9768518519rem + 0.1234567901vw, 1.125rem);
  color: #666;
  display: flex;
  gap: 10px;
}
#single-post article .post-header .post-meta .post-date {
  color: #666;
}
#single-post article .post-header .post-meta .post-category {
  background-color: #E8E4CD;
  color: #605429;
  border-radius: 4px;
  padding: 5px 10px;
}
#single-post article .post-thumbnail {
  margin-bottom: 20px;
}
#single-post article .post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}
#single-post article .post-content {
  font-size: clamp(1.125rem, 1.0787037037rem + 0.2469135802vw, 1.375rem);
  line-height: 1.5;
}
#single-post article .post-content p {
  margin-bottom: 20px;
}
#single-post article .post-footer {
  margin-top: 40px;
}
#single-post article .post-footer .page-links {
  display: flex;
  gap: 10px;
}
#single-post article .post-footer .page-links a {
  padding: 10px 15px;
  border: 1px solid #eaeaea;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  transition: background-color 0.3s;
}
@media (max-width: 767px) {
  #single-post article .post-footer .page-links a {
    padding: 0.375rem;
  }
}
#single-post article .post-footer .page-links a:hover {
  background-color: #f0f0f0;
}
#single-post .post-navigation {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  gap: 3.75rem;
}
@media (max-width: 767px) {
	#single-post {
  margin-top: 1rem;
}
  #single-post .post-navigation {
    gap: 0.625rem;
  }
}
#single-post .post-navigation .nav-previous,
#single-post .post-navigation .nav-next,
#single-post .post-navigation .nav-home {
  font-size: clamp(0.875rem, 0.8287037037rem + 0.2469135802vw, 1.125rem);
}
@media (max-width: 767px) {
  #single-post .post-navigation .nav-previous,
#single-post .post-navigation .nav-next,
#single-post .post-navigation .nav-home {
    font-size: clamp(0.875rem, 0.7947002141rem + 0.4282655246vw, 1rem);
  }
}
#single-post .post-navigation .nav-previous a,
#single-post .post-navigation .nav-next a,
#single-post .post-navigation .nav-home a {
  padding: 10px 15px;
  border-radius: 4px;
  text-decoration: none;
  color: #fff;
  background-color: #BEAA9C;
  transition: background-color 0.3s;
}
#single-post .post-navigation .nav-previous a:hover,
#single-post .post-navigation .nav-next a:hover,
#single-post .post-navigation .nav-home a:hover {
  background-color: #aa907d;
}
#single-post .post-navigation .nav-previous.nav-home a,
#single-post .post-navigation .nav-next.nav-home a,
#single-post .post-navigation .nav-home.nav-home a {
  background-color: #BEAA9C;
  color: #fff;
}