@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&family=Questrial&display=swap");
body {
  font-size: 1.6rem;
  font-family: "Arial", "Helvetica", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
@media (max-width: 767.98px) {
  body {
    font-size: 3.2vw;
  }
}

div, p {
  overflow-wrap: normal;
  word-break: normal;
}

header .wrap02 {
  grid-template-columns: 1fr 190px;
}

#sideMenu .subMenu {
  text-transform: uppercase;
}

.fontB,
.breadcrumbs li,
footer .footer_in nav ul li.guide,
footer .footer_in .wrap03 .links,
footer .footer_in .wrap04 .sitemenu,
#relaxation .relaxationNav,
#info .info_box h3 time,
#info .info_box h3 span,
#gallery .item .caption,
#contact form table th,
#sitemap .sitemapList .nav > li > a,
#sitemap .sitemapList .nav > li > ul li {
  letter-spacing: 0.02em;
}

.btnStyle01,
.btnStyle02,
.btnStyle03,
.sp-menu .menu-nav .contact a,
.sp-menu .menu-nav .reservation a,
#online-consultation a,
footer .footer_in .wrap02 .btns .contact a,
footer .footer_in .wrap02 .btns .reservation a,
#treatmentSub .treatmentLinks,
#faq .faqNav {
  font-family: "Bodoni Moda", serif;
}

footer .footer_in nav ul li.guide {
  font-weight: normal;
}

#faq .contact_box > div.title {
  text-transform: uppercase;
}

#faq .faqBlock h3 + div a.btnStyle03 {
  text-transform: uppercase;
}

#faq .faqNav li a,
#treatmentSub .treatmentLinks ul li a,
footer .footer_in nav ul li.guide a,
footer .footer_in .wrap03,
footer .footer_in .wrap04 .sitemenu {
  font-family: "Arial", "Helvetica", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

#location .salon_box .info .locationTitle {
  padding: 7px 10px 5px 10px;
}

.contactPannel .tel,
.contactPannel .tel a {
  color: #FFF !important;
}

.contactPannel .tel > p:first-of-type {
  font-family: "Arial", "Helvetica", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.hdgTtl_01 {
  display: flex;
  align-items: center;
  background: #0A2864;
  height: 48px;
  padding: 0 15px;
  color: #FFF;
  line-height: 1;
  font-family: "Bodoni Moda", serif;
  margin-bottom: 25px;
}
@media (max-width: 767.98px) {
  .hdgTtl_01 {
    height: 17.3333333333vw;
    margin-bottom: 6.6666666667vw;
    padding-bottom: 0.5333333333vw;
  }
}
.hdgTtl_01 > span {
  display: flex;
  align-items: center;
}
@media (max-width: 767.98px) {
  .hdgTtl_01 > span {
    display: block;
  }
}
.hdgTtl_01 > span span {
  display: inline-block;
}
@media (max-width: 767.98px) {
  .hdgTtl_01 > span span {
    display: block;
  }
}
.hdgTtl_01 > span span.en {
  font-size: 2rem;
  font-family: "Bodoni Moda", serif;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .hdgTtl_01 > span span.en {
    font-size: 4.8vw;
    margin-bottom: 0;
  }
}
.hdgTtl_01.more {
  justify-content: space-between;
}
.hdgTtl_01.more .moreBtn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75px;
  height: 24px;
  border: solid 1px #FFF;
  border-radius: 12px;
  color: #FFF;
  font-family: "Bodoni Moda", serif;
  font-size: 1.3rem;
  line-height: 1;
  padding-right: 4px;
  letter-spacing: 0.1em;
}
@media (max-width: 767.98px) {
  .hdgTtl_01.more .moreBtn {
    margin-top: 6.6666666667vw;
  }
}
.hdgTtl_01.more .moreBtn:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 8px;
  width: 6px;
  height: 6px;
  border: solid 1px #FFF;
  border-right: none;
  border-bottom: none;
  transform: translate(-50%, -50%) rotate(135deg);
}
.hdgTtl_01.more .moreBtn span {
  font-weight: normal;
}
@media (min-width: 768px) {
  .hdgTtl_01.more .moreBtn:hover {
    background: #FFF;
    color: #0A2864;
  }
  .hdgTtl_01.more .moreBtn:hover:after {
    border: solid 1px #0A2864;
    border-right: none;
    border-bottom: none;
  }
}
.hdgTtl_01.line {
  height: initial;
  padding: 15px;
}
.hdgTtl_01.line > span {
  display: block;
}
.hdgTtl_01.line > span .en {
  margin-bottom: 0.2em;
}
.hdgTtl_01.line > span .ja {
  margin: 0;
}

.hdgTtl_02 {
  margin-bottom: 15px;
  font-family: "Bodoni Moda", serif;
  font-size: 1.8rem;
  letter-spacing: 0.02em;
  color: #0A2864;
  border-bottom: solid 1px #0A2864;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .hdgTtl_02 {
    font-size: 4.5333333333vw;
  }
}
.hdgTtl_02 > a {
  letter-spacing: 0.05em;
}
.hdgTtl_02 > a > span {
  letter-spacing: 0.05em;
}

.contBlock {
  margin-bottom: 30px;
}
@media (max-width: 767.98px) {
  .contBlock {
    margin: 0 6.6666666667vw 6.6666666667vw;
  }
}

p + p {
  margin-top: 1em;
}

.upp {
  text-transform: uppercase;
}

.breadcrumbs li {
  text-transform: uppercase;
}

.contactPannel .title {
  font-size: 1.2rem;
  font-family: "Bodoni Moda", serif;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
@media (max-width: 767.98px) {
  .contactPannel .title {
    font-size: 4.5333333333vw;
    line-height: 1.4;
  }
}

#mv.mv-top {
  margin-bottom: 65px;
}
@media (max-width: 767.98px) {
  #mv.mv-top {
    margin-bottom: 0;
  }
}

#top .top_words {
  margin-bottom: 40px;
}
@media (max-width: 767.98px) {
  #top .top_words {
    margin: 5.8666666667vw 5.8666666667vw 11.7333333333vw;
  }
}
#top .top_words .hdgTtl_02 {
  color: #9F8A53;
}
@media (max-width: 767.98px) {
  #top .top_words .hdgTtl_02 {
    font-size: 1.3rem;
  }
}
#top .top_words .title {
  margin-bottom: 1em;
  font-family: "Bodoni Moda", serif;
  font-size: 2.5rem;
  line-height: 1.6;
  color: #0A2864;
  font-weight: 600;
}
@media (max-width: 767.98px) {
  #top .top_words .title {
    font-size: 1.8rem;
  }
}
#top .side .sideBnr {
  margin-bottom: 40px;
}
@media (max-width: 767.98px) {
  #top .side .sideBnr {
    margin: 5.8666666667vw;
  }
}
#top .fb-page-wrap {
  width: 100%;
  max-width: 340px;
  margin: 0 auto;
}
@media (max-width: 767.98px) {
  #top #newsArea .newsList {
    margin-bottom: 0;
  }
}
#top #newsArea .newsList .item > p {
  margin-left: 7.2em;
}
@media (max-width: 767.98px) {
  #top #newsArea .newsList .item > p {
    margin-left: 0;
  }
}
@media (max-width: 767.98px) {
  #top .hdgTtl_01 > span span.en {
    margin-bottom: 0;
  }
  #top #nemuSP .menuList li a {
    padding: 0;
    margin-bottom: 3.5vw;
  }
  #top #nemuSP .menuList li a > span > span.en {
    margin-bottom: 0;
  }
  #top #nemuSP .menuList li a:after {
    top: 50%;
  }
  #top #nemuSP .menuList li:nth-child(1) a {
    margin-top: 2.33333vw;
  }
}

#about .msg01 {
  font-size: 1.8rem;
  font-family: "Bodoni Moda", serif;
}
@media (max-width: 767.98px) {
  #about .msg01 {
    font-size: 4.2666666667vw;
  }
}
#about .btnStyle01 {
  max-width: 340px;
  text-transform: uppercase;
}

#treatment .ph01 {
  margin-bottom: 40px;
}
#treatment .msg01 {
  font-family: "Bodoni Moda", serif;
  line-height: 1.4;
  font-size: 2rem;
  color: #0A2864;
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 20px;
}
@media (max-width: 767.98px) {
  #treatment .msg01 {
    font-size: 1.6rem;
    margin-left: 5.8666666667vw;
    margin-right: 5.8666666667vw;
  }
}
#treatment .txt01 {
  margin-bottom: 40px;
}
@media (max-width: 767.98px) {
  #treatment .txt01 {
    margin-left: 5.8666666667vw;
    margin-right: 5.8666666667vw;
  }
}
#treatment .note01 {
  font-size: 1.2rem;
  background: #e2dccb;
  padding: 20px;
  margin-bottom: 40px;
}
@media (max-width: 767.98px) {
  #treatment .note01 {
    margin-left: 5.8666666667vw;
    margin-right: 5.8666666667vw;
  }
}
#treatment .note01 > span {
  color: #9F8A53;
}
#treatment .btnStyle02 {
  padding-bottom: 0.3em;
}
@media (max-width: 767.98px) {
  #treatment .menuList .item .txt .title span.en {
    font-size: 2rem;
    margin-bottom: 0;
    margin-top: 0.6vw;
  }
}

#treatmentSub .treatmentLinks ul li a {
  font-size: 1.4rem;
}
@media (max-width: 767.98px) {
  #treatmentSub .reservationBox tr th, #treatmentSub .reservationBox tr td {
    width: 100%;
  }
}
@media (max-width: 767.98px) and (max-width: 767.98px) {
  #treatmentSub .reservationBox tr th {
    width: 5em;
  }
}
@media (max-width: 767.98px) {
  #treatmentSub .reservationBox tr td {
    min-height: 85px;
  }
}
@media (max-width: 767.98px) and (max-width: 767.98px) {
  #treatmentSub .reservationBox tr td .price {
    flex: 1;
  }
  #treatmentSub .reservationBox tr td .btnStyle02 {
    min-width: 150px;
    margin-left: 20px;
  }
}
#treatmentSub .btnStyle02 {
  width: 150px;
  font-size: 1.4rem;
}
@media (max-width: 767.98px) {
  #treatmentSub .btnStyle02.wide {
    width: 200px;
  }
}
#treatmentSub .itemBlock.mt {
  margin-top: 60px;
}

#relaxationSub .detail dd table tr th {
  text-align: left;
}
#relaxationSub .type2 th {
  width: 90px;
}

#payment .txt {
  text-align: center;
}
#payment .tel {
  font-family: "Bodoni Moda", serif;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #9f8a53;
  line-height: 1;
}
@media (max-width: 767.98px) {
  #payment .tel {
    font-size: 5.8666666667vw;
  }
}
#payment .tel a {
  color: #9f8a53;
}
#payment .att {
  margin-top: 10px;
  line-height: 1.4;
}
#payment .l_indent {
  font-size: 1.2rem;
}
@media (max-width: 767.98px) {
  #payment .cancel_box p {
    text-align: left;
  }
}

#info .info_box h3 {
  font-size: 1.6rem;
}
#info .info_box > p {
  margin-left: 6.5em;
}
@media (max-width: 767.98px) {
  #info .info_box > p {
    margin-left: 0;
  }
}

#faq .faqNav li a {
  font-size: 1.4rem;
}
#faq .faqBlock h3 {
  font-size: 1.6rem;
}
#faq .faqBlock h3 + div a.btnStyle03 {
  font-size: 1.4rem;
}
#faq .faqNav li a {
  text-transform: uppercase;
}
#faq .l_indent b {
  color: #8493b1;
}
#faq .contact_box .txt {
  text-align: center;
}
#faq .contact_box .tel {
  font-family: "Bodoni Moda", serif;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #9f8a53;
  line-height: 1;
}
@media (max-width: 767.98px) {
  #faq .contact_box .tel {
    font-size: 5.8666666667vw;
  }
}
#faq .contact_box .tel a {
  color: #9f8a53;
}
#faq .contact_box .att {
  margin-top: 10px;
  line-height: 1.4;
}
#faq .cancel_box > p b {
  color: #9F8A53;
}
#faq .cancel_box > p:not(:first-of-type) {
  margin-top: 1em;
}

#location .mapArea .btn .btnStyle03 {
  font-size: 1.4rem;
}

#contact .fm.name {
  display: block;
}
#contact .nameFlex {
  display: flex;
  align-items: center;
}
#contact .nameFlex:first-of-type {
  margin-bottom: 0.5em;
}
#contact .nameFlex .fmi {
  display: block;
  width: 10em;
}
#contact .nameFlex input {
  flex: 1;
}
#contact .fm.birth {
  display: flex;
  align-items: center;
}
#contact .fm.birth select {
  width: 6em;
  margin-left: 0.5em;
}
@media (max-width: 767.98px) {
  #contact .fm.birth select {
    width: 16%;
  }
}
#contact .fm.birth > span {
  display: inline-block;
  width: 16%;
  text-align: center;
}
@media (max-width: 767.98px) {
  #contact form table {
    display: block;
    width: auto;
  }
}
@media (max-width: 767.98px) {
  #contact form table tbody {
    display: block;
  }
}
#contact form table th {
  width: 14em;
}
@media (max-width: 767.98px) {
  #contact form table th {
    width: auto;
  }
}
#contact button {
  text-transform: uppercase;
}
#contact form .buttons {
  font-size: 1.4rem;
}
#contact .attention02 .notice_list li {
  letter-spacing: 0.02em;
}

#company .company_table th,
#company .company_table td {
  word-break: break-word;
}

#sitemap .sitemapList .nav > li {
  text-transform: uppercase;
}
#sitemap .sitemapList .nav > li > ul li > a br.forPC {
  display: none !important;
}

#notfound .buttons a.blue {
  width: 250px;
}

#privacy .btnStyle01 {
  max-width: 200px;
  height: 40px;
  margin: 40px auto 0;
  padding-right: 0;
  margin-bottom: 0;
}