@charset "UTF-8";
.container__news {
  text-align: center;
  max-width: 800px;
  min-height: 50vh;
  width: 100%;
  margin: auto;
  padding: 0 20px;
}
.container__news .titleBlock img {
  width: 300px;
}
@media screen and (max-width: 599px) {
  .container__news .titleBlock img {
    width: 200px;
  }
}

.bg-gray {
  background: #ddd;
  padding: 3px 5px;
  border-radius: 3px;
}

.article-news {
  text-align: left;
}

.article__meta {
  display: flex;
  gap: 20px;
  align-items: center;
  font-size: 14px;
}

.news__cate {
  padding: 0;
}

.newsTitle {
  margin: 0;
}

.content__area {
  padding-bottom: 20px;
}
.content__area p {
  margin: 0;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.news-block {
  margin-bottom: 25px;
}

.overview p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

hr.line {
  margin: 0px;
}

.postlinks {
  width: 90%;
  margin: 50px auto 0;
}

.postlink-prev {
  float: left;
}

.postlink-next {
  float: right;
}

.postlink-prev,
.postlink-next {
  border-radius: 3px;
  padding: 10px 15px;
  font-size: 14px;
}
.postlink-prev .fa-solid,
.postlink-next .fa-solid {
  font-size: 14px;
}

article.shampooPage {
  margin-bottom: 100px;
}
article.shampooPage section.shampoo {
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 1px dotted #666;
  max-width: 800px;
  text-align: left;
  flex-direction: row;
  margin: 0 auto 30px;
  padding: 0 0 30px;
}
article.shampooPage section.shampoo h5 {
  margin: 0;
}
article.shampooPage section.shampoo img {
  width: 300px;
}
article.shampooPage section.shampoo:last-child {
  border-bottom: none;
}
article.shampooPage section.shampoo .textPart {
  width: 100%;
}
article.shampooPage section.shampoo ul {
  margin: 0;
  padding: 0 10px;
}
article.shampooPage section.shampoo ul li {
  list-style-position: outside;
  list-style-type: disc;
}
article.shampooPage section.beautyshampoo,
article.shampooPage section.vitalmask {
  margin-top: 50px;
}
article.shampooPage section.detoxshampoo,
article.shampooPage section.detoxmask {
  border-bottom: none;
  margin-bottom: 80px;
}
article.shampooPage section.herbs {
  max-width: 900px;
  width: 100%;
  margin: auto;
}
article.shampooPage section.herbs .textPart {
  margin-top: 50px;
}
article.shampooPage section.herbs .textPart img {
  max-width: 400px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 10px;
}
article.shampooPage section.herbs .textPart ul {
  margin: 50px 0 0;
  padding: 20px 20px;
}
article.shampooPage section.herbs .textPart ul li {
  margin-bottom: 10px;
}

#hotelPage article.hotelPage {
  text-align: center;
}
#hotelPage article.hotelPage h3 {
  font-family: "Walter Turncoat", cursive;
}
#hotelPage article.hotelPage section.businessHours {
  margin-bottom: 50px;
  padding: 10px 3px 20px;
}
#hotelPage article.hotelPage section.description {
  max-width: 800px;
  width: 98%;
  margin: auto;
  margin-bottom: 50px;
  padding: 10px 10px 20px;
  background-color: rgba(219, 219, 219, 0.1294117647);
  border-radius: 5px;
}
#hotelPage article.hotelPage section.description h5 {
  margin-bottom: 0;
  padding-bottom: 0;
}
#hotelPage article.hotelPage section.description img {
  display: block;
  margin: auto;
  width: 80%;
}
@media screen and (max-width: 768px) {
  #hotelPage article.hotelPage section.description br.check {
    display: none;
  }
}
#hotelPage article.hotelPage section.description:nth-of-type(2) p.caution {
  text-align: start;
}
#hotelPage article.hotelPage section.roomType {
  width: 100%;
}
#hotelPage article.hotelPage section.roomType ul.roomLists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 80px auto;
}
@media screen and (max-width: 1024px) {
  #hotelPage article.hotelPage section.roomType ul.roomLists {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 690px) {
  #hotelPage article.hotelPage section.roomType ul.roomLists {
    grid-template-columns: repeat(1, 1fr);
  }
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList {
  margin: 0 auto;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul {
  display: flex;
  flex-direction: column;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomImg img {
  width: 90%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomText {
  padding: 20px 5px 45px;
  margin-bottom: 10px;
  width: 100%;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomText table {
  width: 90%;
  margin: auto;
  text-align: center;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomText table th {
  width: 77px;
  padding: 10px 5px;
  word-wrap: normal;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomText table td {
  padding: 10px 5px;
}
#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList ul li.roomText table td.text {
  text-align: start;
}
#trainingPage article.hotelPage .hotel-list__block,
#hotelPage article.hotelPage .hotel-list__block {
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 20px;
  margin-bottom: 55px;
}
#hotelPage article.hotelPage .hotel-list__block dl {
  max-width: 300px;
  width: 100%;
  margin: auto;
}
#hotelPage article.hotelPage .hotel-list__block dl.room {
  margin-top: 30px;
}
#hotelPage article.hotelPage .hotel-list__block dl dt {
  padding-bottom: 8px;
  float: left;
  clear: both;
}
#hotelPage article.hotelPage .hotel-list__block dl dd {
  position: relative;
  float: right;
  margin: 0;
}
#hotelPage article.hotelPage .hotel-list__block .clear {
  clear: both;
}

/*------- 価格表の内容 --------*/
/*---------  optionの設定 -----------*/
article.trimmingPage h3 {
  font-family: "Walter Turncoat", cursive;
}
@media screen and (min-width: 425px) {
  article.trimmingPage .title-trimming {
    margin-bottom: 35px;
  }
}
article.trimmingPage .modules__shampoo {
  padding: 20px 20px 50px;
  border-radius: 10px;
  margin-bottom: 50px;
}
article.trimmingPage .modules__shampoo ul {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
  padding: 0;
}
article.trimmingPage .modules__shampoo ul li {
  padding: 0 5px 10px;
  margin: 0 5px 0;
}
article.trimmingPage .bg-pink {
  background-color: #fff9fb;
}
article.trimmingPage section.listsAll {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  article.trimmingPage {
    max-width: 990px;
    width: 100%;
    margin: auto;
    margin-top: 20px;
  }
}
article.trimmingPage .price__content {
  position: relative;
  max-width: 990px;
  margin: auto;
  width: 90%;
  border: 2px solid #ddd;
  margin: 40px auto 30px;
}
article.trimmingPage .fixedTitle {
  background-color: #fff;
  padding: 20px 10px;
  width: 33.3333333333%;
  top: 78px;
}
article.trimmingPage .price__ttl {
  max-width: 990px;
  width: 100%;
  display: flex;
  justify-content: center;
  border-bottom: 2px solid #ddd;
  margin: 0;
}
article.trimmingPage .price-list__content {
  overflow-y: scroll;
  height: 600px;
}
article.trimmingPage .price__list {
  margin: 0;
}
article.trimmingPage .listsAll .list__item {
  display: flex;
  font-size: clamp(16px, 2.182vw, 20px);
  line-height: 1.5;
  border-bottom: 1px solid #ccc;
  min-width: 150px;
}
article.trimmingPage .listsAll .list__item p {
  width: 33.3333333333%;
  display: block;
  padding: 10px;
  margin: 0;
  border-right: 1px solid #ccc;
}
article.trimmingPage .listsAll .list__item p:first-child {
  font-size: clamp(18px, 2.182vw, 22px);
  font-weight: bold;
}
article.trimmingPage .listsAll .list__item p:last-child {
  border: 0;
}
article.trimmingPage .titleBlock-cat {
  max-width: 650px;
  margin: 80px auto;
}
article.trimmingPage .titleBlock-cat .option-cat-text {
  margin-bottom: 0px;
}
article.trimmingPage .titleBlock-cat .option-cat-text span {
  /* color: #f6bccc; */
  color: #e892a4;
}
@media screen and (max-width: 425px) {
  article.trimmingPage .titleBlock-cat {
    margin-bottom: -50px;
  }
}
@media screen and (max-width: 350px) {
  article.trimmingPage .titleBlock-cat .option-cat-text {
    font-size: 18px;
  }
}
article.trimmingPage .titleBlock-cat img.cat {
  width: 100%;
  height: auto;
}
article.trimmingPage img.cat-hand {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  display: block;
  opacity: 0;
  transform: translate(30px, 50px);
  -webkit-animation: scroll-hand 2s ease-out;
          animation: scroll-hand 2s ease-out;
  -webkit-animation-iteration-count: 5;
          animation-iteration-count: 5;
}
@-webkit-keyframes scroll-hand {
  0% {
    opacity: 1;
    transform: translate(30px, 50px);
  }
  30% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(30px, 180px);
  }
}
@keyframes scroll-hand {
  0% {
    opacity: 1;
    transform: translate(30px, 50px);
  }
  30% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(30px, 180px);
  }
}
article.trimmingPage .container__option .option-list {
  max-width: 650px;
  width: 100%;
  margin: 30px auto 70px;
  text-align: left;
  display: grid;
  place-items: center;
}
article.trimmingPage .container__option .option-list li {
  max-width: 300px;
  width: 100%;
  margin: 0 auto 20px;
  letter-spacing: 0.1em;
}
article.trimmingPage .container__option .option-list li span {
  margin-right: 10px;
}
article.trimmingPage .container__option .option-text {
  max-width: 650px;
  width: 100%;
  margin: auto;
  color: #333;
}
article.trimmingPage .container__option .option-text br {
  display: none;
}
@media screen and (max-width: 425px) {
  article.trimmingPage .container__option .option-text br {
    display: block;
  }
}
article.trimmingPage .container__option .option-name {
  color: #f78da7;
}
article.trimmingPage section.largeDog {
  margin-bottom: 20px;
}

footer {
  text-align: center;
  padding-bottom: 90px;
}
@media screen and (min-width: 1024px) {
  footer {
    padding-bottom: 30px;
  }
}
footer .footerLeft {
  padding: 10px 0 0;
}
footer .footerLeft ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0 5px;
  margin-bottom: 30px;
  font-family: "Walter Turncoat", cursive;
}
footer .footerLeft ul li {
  padding: 0 10px 15px;
}
footer .footerLeft ul li img {
  width: 145px;
}
@media screen and (max-width: 768px) {
  footer .footerLeft ul li:first-child {
    width: 100%;
    margin-bottom: 20px;
  }
}
footer .footerLeft .footerRight {
  padding: 10px 0 20px;
}
@media screen and (min-width: 768px) {
  footer .footerLeft {
    display: flex;
    align-items: center;
    justify-content: space-around;
    width: 100%;
  }
  footer .footerLeft .logo img {
    width: 145px;
  }
  footer .footerLeft ul {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
  }
  footer .footerLeft ul li {
    padding-right: 20px;
    margin-right: 20px;
  }
  footer .footerLeft a.footerBtn {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media (min-width: 766px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
header {
  max-width: 1200px;
  width: 100%;
  height: auto;
  background-color: #fff;
  z-index: 100;
}

.globalNav {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  background-color: #fff;
  width: 100%;
  padding: 5px 10% 0;
  font-family: "Walter Turncoat", cursive;
  z-index: 110;
}
@media screen and (max-width: 1024px) {
  .globalNav {
    padding: 5px 2% 0;
    justify-content: left;
  }
}
@media screen and (max-width: 780px) {
  .globalNav {
    padding: 5px 0 0 5px;
    justify-content: left;
  }
}
@media screen and (max-width: 599px) {
  .globalNav {
    justify-content: left;
    position: absolute;
    top: 0;
    padding: 10px 0 0 4px;
  }
}
.globalNav h1.logo {
  margin: 0;
  padding: 0 0 0 10px;
}
@media screen and (min-width: 766px) {
  .globalNav h1.logo {
    padding: 7px 0 0 0;
  }
}
.globalNav h1.logo img {
  width: 145px;
}
.globalNav ul.navLists {
  display: flex;
  justify-content: end;
  align-items: center;
  width: 100%;
  height: 80px;
  margin: 0;
  padding: 0;
}
.globalNav ul.navLists li.navList {
  margin: 5px 18px 12px 0;
  padding-right: 12px;
  border-right: 1px solid #ddd;
  letter-spacing: 1.2px;
}
.globalNav ul.navLists li.navList:last-child {
  border-right: none;
}
.globalNav ul.navLists li.navList a {
  width: 100%;
  display: inline-block;
  text-align: center;
}
.globalNav ul.navLists li.navList:last-child {
  border-right: none;
}
@media screen and (max-width: 766px) {
  .globalNav ul.navLists {
    display: none;
  }
}

#globalNav.upNav {
  -webkit-animation: navUp 0.5s forwards;
          animation: navUp 0.5s forwards;
}

@-webkit-keyframes navUp {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}

@keyframes navUp {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}
#blobalNsv.upDown {
  -webkit-animation: navDown 0.5s forwards;
          animation: navDown 0.5s forwards;
}

@-webkit-keyframes navDown {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 0;
    transform: translateY(0);
  }
}

@keyframes navDown {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 0;
    transform: translateY(0);
  }
}
#hamburgerBtn {
  position: fixed;
  top: 1%;
  right: 1%;
  width: 5rem;
  height: 5rem;
  z-index: 998;
}
@media screen and (min-width: 767px) {
  #hamburgerBtn {
    display: none;
  }
}
#hamburgerBtn div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60%;
  height: 1px;
  background-color: #555;
  transform: translate(-50%, -50%);
  transition: 0.1ms;
}
#hamburgerBtn div:nth-child(2) {
  position: absolute;
  top: 66%;
  left: 50%;
  width: 60%;
  height: 1px;
  background-color: #555;
  transform: translate(-50%, -50%);
  transition: 0.1s;
}
#hamburgerBtn div:nth-child(3) {
  position: absolute;
  top: 33%;
  left: 50%;
  width: 60%;
  height: 1px;
  background-color: #555;
  transform: translate(-50%, -50%);
  transition: 0.1s;
}
#hamburgerBtn div:nth-child(1).open {
  opacity: 0;
}
#hamburgerBtn div:nth-child(2).open {
  transform: translate(-50%, -10px) rotate(45deg);
}
#hamburgerBtn div:nth-child(3).open {
  transform: translate(-50%, 7px) rotate(-45deg);
}

.hamburgerMenu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 900;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.hamburgerMenu.active {
  opacity: 1;
  visibility: visible;
}
.hamburgerMenu ul.lists {
  width: 100%;
  height: 100%;
  padding: 10px 25px 40px;
  margin: 0;
  background-color: #fff;
  overflow: auto;
}
.hamburgerMenu ul.lists li.list {
  padding: 0 20px 25px;
  margin: 0 10px 0;
  font-size: 20px;
}
.hamburgerMenu ul.lists li.list img {
  width: 145px;
}
.hamburgerMenu ul.lists li:first-child {
  padding: 0 0 20px 0;
  margin: 0 0 0 -11px;
}

/*------ トップページ　ボタンの設定 -------*/
.btn-block {
  max-width: 160px;
  margin: 30px auto 0;
}
.btn-block a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  box-sizing: border-box;
  background: #fff;
  position: relative;
}
.btn-block a.btn span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 58px;
  background: #fff;
  box-sizing: border-box;
  color: #333;
  font-size: 15px;
  letter-spacing: 0.1em;
  text-decoration: none;
  box-shadow: 0px 5px 12px #CAD4E2, -6px -6px 12px #FFF;
  border-radius: 10px;
  position: absolute;
  top: -5px;
  left: 0;
  transition-duration: 0.2s;
}
@media (hover: hover) {
  .btn-block a.btn:hover span {
    left: 0;
    top: 0;
    box-shadow: 0 0 4px #CAD4E2, -2px -2px 4px #FFF;
  }
}
@media (hover: none) {
  .btn-block a.btn:active span {
    left: 0;
    top: 0;
    box-shadow: 0 0 4px #CAD4E2, -2px -2px 4px #FFF;
  }
}

.btn-block-wide {
  max-width: 250px;
  width: 100%;
}

/*------ トップページ　ブログのボタンの設定 -------*/
.btnBlog {
  text-align: center;
  padding-bottom: 20px;
}
.btnBlog a.btnBlog {
  padding: 25px 60px;
  background: none;
  border: none;
  position: relative;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 3px;
  color: rgb(91, 91, 91);
}
@media screen and (min-width: 768px) {
  .btnBlog a.btnBlog {
    padding: 25px 100px;
  }
}
.btnBlog a.btnBlog:after, .btnBlog a.btnBlog:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border: 2px solid #000;
  transition: transform 0.2s;
}
.btnBlog a.btnBlog:after {
  transform: translate(3px, 3px);
}
.btnBlog a.btnBlog:before {
  transform: translate(-3px, -3px);
}
@media (hover: hover) {
  .btnBlog a.btnBlog:hover:after, .btnBlog a.btnBlog:hover:before {
    transform: translate(0);
  }
}
@media (hover: none) {
  .btnBlog a.btnBlog:active:after, .btnBlog a.btnBlog:active:before {
    transform: translate(0);
  }
}

.blogFoto {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  margin-bottom: -5px;
  display: flex;
}
@media screen and (min-width: 1201px) {
  .blogFoto {
    margin: auto;
    width: 100%;
    margin-bottom: -135px;
  }
}
.blogFoto img {
  width: 100%;
}

/*---------  シャンプー,ハーブパック説明ページのボタン -----------*/
.shampooDescription {
  display: flex;
  flex-direction: column;
  margin: -50px 0 50px;
}
@media screen and (max-width: 768px) {
  .shampooDescription {
    margin: -50px 0 50px;
  }
}

html {
  font-size: 62.5%;
  box-sizing: border-box;
}
html::before, html::after {
  box-sizing: border-box;
}
html body {
  position: relative;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  background-color: #fff;
  color: rgb(151, 151, 151);
  max-width: 1200px;
  width: 100%;
  margin: auto;
}
@media screen and (min-width: 599px) {
  html body {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1024px) {
  html body {
    font-size: 2rem;
  }
}
html li {
  list-style-type: none;
}
html main {
  overflow-x: hidden;
}

h1 {
  font-size: 4.6rem;
  font-weight: bold;
  margin: 1rem 0 4rem;
}
@media screen and (max-width: 1024px) {
  h1 {
    font-size: 3.6rem;
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 375px) {
  h1 {
    font-size: 2.2rem;
    margin-bottom: 1rem;
    height: auto;
  }
}

h2 {
  display: inline;
  width: 100%;
  height: 100%;
  margin: 0;
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 0.7;
  color: #676767;
}
@media screen and (max-width: 599px) {
  h2 {
    font-size: 3.2rem;
  }
}

.titleLine {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 280px;
  max-width: 300px;
  width: 100%;
  height: auto;
  margin: auto;
  transform: translate(-50%);
}
@media screen and (min-width: 599px) {
  .titleLine {
    max-width: 550px;
  }
}

.black {
  color: rgb(44, 44, 44);
}

.titleBlock {
  position: relative;
  top: 0;
  left: 0;
  max-width: 900px;
  width: 100%;
  height: auto;
  margin: auto;
  padding: 15px 0 25px;
  display: inline-block;
}

h3 {
  font-size: 4.2rem;
  font-weight: bold;
  margin: 7px 0;
}
@media screen and (max-width: 599px) {
  h3 {
    font-size: 3.3rem;
  }
}

h4 {
  font-size: 2.6rem;
  font-weight: bold;
  padding-bottom: 20px;
}
@media screen and (max-width: 599px) {
  h4 {
    font-size: 2rem;
  }
}

h5 {
  font-size: 2.4rem;
  font-weight: bold;
  padding-bottom: 20px;
}
@media screen and (max-width: 599px) {
  h5 {
    font-size: 2rem;
    margin: 10px 0;
  }
}

p {
  line-height: 1.8;
}

a {
  color: rgb(151, 151, 151);
  text-decoration: none;
}

.caution {
  font-size: 1.6rem;
  margin: 8px auto;
  padding: 0 1em;
  /* color: #f6bccc; */
  color: #e892a4;
  text-indent: -1em;
}
.caution::before {
  content: "※";
  /* color: #f6bccc; */
  color: #e892a4;
}
@media screen and (max-width: 425px) {
  .caution {
    text-align: left;
  }
}

.breadcrumbs {
  text-align: right;
  font-size: 16px;
  margin-bottom: 10px;
}

.cautionCenter {
  text-align: center;
}

span.explanNav {
  font-size: 1.1rem;
  padding-left: 5px;
}

span.shower {
  /* color: #f6bccc; */
  color: #e892a4;
  display: inline-block;
  margin: 5px 0;
  font-size: 20px;
}
span.shower.slash {
  margin-bottom: 5px;
  font-weight: 600;
  letter-spacing: 0.04rem;
  display: inline-block;
  position: relative;
}
span.shower.slash:before, span.shower.slash::after {
  display: inline-block;
  position: absolute;
  top: 120%;
  width: 58px;
  height: 3px;
  border-radius: 5px;
  background-color: rgb(151, 151, 151);
  content: "";
}
span.shower.slash:before {
  left: -45px;
  transform: rotate(60deg);
}
span.shower.slash::after {
  right: -45px;
  transform: rotate(-60deg);
}

@media screen and (max-width: 599px) {
  br.check {
    display: none;
  }
}

i {
  font-size: 30px;
}

article {
  text-align: center;
}
article section {
  padding: 5px 0 15px;
}
article section ul {
  padding: 0;
}

.wrapper {
  max-width: 1200px;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.firstview__content .content {
  position: relative;
  top: 80;
  left: 0;
  right: 0;
  width: 100%;
  opacity: 0;
  -webkit-animation: imgFade 1.5s ease forwards;
          animation: imgFade 1.5s ease forwards;
}
@-webkit-keyframes imgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes imgFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.firstview__content .content__vertical-text-img {
  position: absolute;
  top: 27%;
  right: 7%;
  max-height: 320px;
  height: 100%;
  z-index: 99;
}
@media screen and (min-width: 500px) {
  .firstview__content .content__vertical-text-img {
    right: 10%;
    max-height: 400px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 599px) {
  .firstview__content .content__vertical-text-img {
    top: 25%;
    right: 15%;
    max-height: 450px;
    height: 100%;
    width: auto;
  }
}
@media screen and (min-width: 1024px) {
  .firstview__content .content__vertical-text-img {
    top: 15%;
    right: 20%;
    max-height: 580px;
    height: 100%;
    width: auto;
  }
}
.firstview__content .content__vertical-bgImg {
  position: relative;
  top: 80px;
  left: 0;
}
@media screen and (min-width: 1024px) {
  .firstview__content .content__vertical-bgImg {
    height: 100vh;
    overflow: hidden;
  }
}
.firstview__content .content__vertical-bgImg img {
  width: 100%;
}
@media screen and (min-width: 1440px) {
  .firstview__content .content__vertical-bgImg img img {
    max-width: 950px;
  }
}
@media screen and (min-width: 1024px) {
  .firstview__content .content__vertical-bgImg img {
    max-width: 800px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%);
  }
}

.all-container {
  padding: 140px 20px 0;
}

.w-45 img {
  max-width: 200px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 599px) {
  .w-45 img {
    min-width: 270px;
  }
}
.w-45 .titleLine {
  left: 50%;
  min-width: 280px;
  max-width: 300px;
  width: 100%;
  height: auto;
  margin: auto;
  transform: translate(-50%);
}
@media screen and (min-width: 599px) {
  .w-45 .titleLine {
    max-width: 550px;
  }
}

.w-90 img {
  max-width: 310px;
  min-width: 280px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 599px) {
  .w-90 img {
    min-width: 400px;
  }
}
@media screen and (min-width: 1024px) {
  .w-90 {
    width: 450px;
  }
}

/*------------- content ----------------*/
.container {
  text-align: center;
  padding-bottom: 30px;
  margin-bottom: 60px;
}

/*------------- content__area01 ----------------*/
.content__area01 {
  max-width: 800px;
  width: 100%;
  margin: auto;
  text-align: justify;
  padding: 0 15px;
}
@media screen and (min-width: 1024px) {
  .content__area01 {
    margin-top: 40px;
  }
}
.content__area01 .text {
  line-height: 1.8;
}

/*------------- content__area02 ----------------*/
.content__area02 {
  padding-top: 35px;
}
.content__area02 img {
  width: 90%;
  margin-bottom: 30px;
}
@media screen and (min-width: 1024px) {
  .content__area02 img {
    width: 65%;
  }
}

/*------------- ニュース ----------------*/
.newsText {
  overflow-y: scroll;
  max-width: 900px;
  width: 100%;
  height: 280px;
  margin: auto;
  padding: 10px;
  border-radius: 7px;
}
@media screen and (min-width: 768px) {
  .newsText {
    height: 450px;
    padding: 20px 30px;
  }
}
.newsText article.newsContent {
  margin: 20px 0 50px 0;
}
.newsText article.newsContent .newsList {
  text-align: start;
  padding: 0 15px;
}
.newsText article.newsContent .newsList p.newsMeta {
  margin: 0 0 5px 0;
  font-size: 14px;
}
.newsText article.newsContent .newsList p.newsText {
  height: auto;
  border: none;
  padding: 0;
  margin: 0;
  font-size: 16px;
}
.newsText article.newsContent .newsList h4.newsTitle {
  margin: 5px 0 -20px;
  color: #ffa813;
}
@media screen and (max-width: 768px) {
  .newsText article.newsContent .newsList h4.newsTitle {
    font-size: 18px;
  }
}
.newsText article.newsContent hr.line {
  margin-bottom: 35px;
}

/*-------------- ブログ ----------------*/
.container__blog {
  padding: 0;
}
.container__blog h4.title {
  margin-bottom: 0;
  padding-bottom: 5px;
}
@media screen and (min-width: 768px) {
  .container__blog h4.title {
    margin-bottom: 30px;
    font-size: 25px;
  }
}

/*-------------- info ----------------*/
.container__info {
  background-color: #ffa813;
  margin: -60px calc(50% - 50vw) 0;
  width: 100vw;
  color: #fff;
  text-align: center;
  padding-bottom: 100px;
}
@media screen and (min-width: 599px) {
  .container__info {
    padding-bottom: 80px;
  }
}
.container__info .title {
  color: #fff;
}
.container__info .content__area-info {
  margin-top: -20px;
  padding-top: 0px;
}
.container__info .content__area-info img {
  width: 80%;
}
@media screen and (min-width: 768px) {
  .container__info .content__area-info img {
    width: 70%;
  }
}
.container__info .content__area-info .gmap {
  margin: 10px 0 20px 0;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.container__info .content__area-info .gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 80%;
  width: 80%;
  margin: 0 10%;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .container__info .content__area-info .gmap iframe {
    height: 60%;
    width: 70%;
    margin: 0 15%;
  }
}
@media screen and (min-width: 768px) {
  .container__info .content__area-info .infoList {
    max-width: 900px;
    width: 100%;
    margin: auto;
    padding-bottom: 50px;
    font-size: 24px;
  }
  .container__info .content__area-info .infoList br.point {
    display: none;
  }
}
.container__info .content__area-info .infoList .info__list {
  display: flex;
  text-align: start;
  width: 100%;
  padding-right: 15px;
}
.container__info .content__area-info .infoList .info__list li.leftList {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10%;
}
.container__info .content__area-info .infoList .info__list li.rightList a {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .container__info .content__area-info .infoList .info__list li.rightList a {
    text-decoration: underline;
  }
}
.container__info .content__area-info .infoList .info__list li.rightList ul {
  display: flex;
  justify-content: center;
  align-items: baseline;
  flex-direction: column;
  padding-bottom: 10px;
}
.container__info .content__area-info .infoList .info__list li.rightList ul li {
  line-height: 1.8;
}

/*-------------- SNS ----------------*/
.container__sns {
  text-align: center;
  background-color: #ff9900;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  color: #fff;
}
.container__sns .titleBlock {
  padding-bottom: 0;
}
.container__sns .titleBlock h3.title img {
  position: relative;
  top: -25px;
}
.container__sns .titleBlock h4 {
  padding-bottom: 0;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .container__sns .titleBlock h4 {
    margin-bottom: 30px;
    font-size: 25px;
  }
}
.container__sns .titleBlock h4:before, .container__sns .titleBlock h4::after {
  display: inline-block;
  position: absolute;
  top: 45%;
  width: 20px;
  height: 3px;
  border-radius: 5px;
  background-color: #fff;
  content: "";
}
.container__sns .btnSNS {
  margin-bottom: 50px;
}
.container__sns .btnSNS p {
  max-width: 350px;
  margin: 15px auto;
  text-align: left;
  padding: 0 10px;
}
.container__sns .btnSNS i {
  padding-right: 10px;
  font-size: 45px;
}
.container__sns .btnSNS a.btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 28px;
  font-weight: 600;
  color: #fff;
  width: 232px;
  height: 72px;
  box-shadow: 6px 6px 6px 0px rgba(0, 0, 0, 0.45);
  border-radius: 0.5rem;
}
.container__sns .btnSNS a.btnInsta {
  background-color: #ff8eab;
}

.neko {
  position: relative;
  top: 0;
  left: 0;
}
.neko img {
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translate(-50%, 0);
}
@media screen and (max-width: 768px) {
  .neko img {
    width: 70%;
  }
}

/*-------------- ページトップボタン ----------------*/
#pageTopBtn {
  position: fixed;
  right: 10%;
  bottom: 15px;
  z-index: 100;
  width: 50px;
  height: 50px;
}
@media screen and (max-width: 450px) {
  #pageTopBtn {
    right: 3%;
    bottom: 15px;
  }
}
#pageTopBtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 7px;
  background-color: #ffb70d;
  opacity: 0.6;
}
#pageTopBtn a i.fa-solid {
  font-size: 30px;
  color: #fff;
}

#callBottom {
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  width: 100%;
  background-color: #fff;
  z-index: 99;
}
#callBottom a {
  display: flex;
  align-items: baseline;
  justify-content: center;
  border: 1px solid #676767;
  width: 50%;
  padding: 10px 15px;
  margin: 10px 15px;
  border-radius: 10px;
  font-size: 4vw;
}
#callBottom a i {
  font-size: 3vw;
  padding-right: 5px;
}

/*-------------- 送迎 block ----------------*/
.container__pickup {
  margin-top: 80px;
  margin-bottom: 35%;
}
@media screen and (max-width: 768px) {
  .container__pickup {
    margin-top: 50px;
  }
}
.container__pickup h4 {
  margin-bottom: 0;
}
.container__pickup img {
  width: 95%;
  margin-top: 15px;
}
.container__pickup section.pickup {
  background-color: rgba(219, 219, 219, 0.1294117647);
  border-radius: 5px;
}
.container__pickup section.pickup .price {
  display: flex;
  justify-content: space-around;
  max-width: 650px;
  width: 100%;
  margin: 20px auto 50px;
}
.container__pickup section.pickup .cautionText__list {
  max-width: 730px;
  width: 100%;
  text-align: justify;
  padding: 20px 10px;
  margin: auto;
}

.slash {
  margin-bottom: 5px;
  font-weight: 600;
  color: rgb(151, 151, 151);
  letter-spacing: 0.04rem;
  display: inline-block;
  position: relative;
}
.slash:before, .slash::after {
  display: inline-block;
  position: absolute;
  top: 45%;
  width: 20px;
  height: 3px;
  border-radius: 5px;
  background-color: rgb(151, 151, 151);
  content: "";
}
.slash:before {
  left: -30px;
  transform: rotate(50deg);
}
.slash::after {
  right: -30px;
  transform: rotate(-50deg);
}

.slash2 {
  margin-bottom: 5px;
  font-weight: 600;
  letter-spacing: 0.04rem;
  display: inline-block;
  position: relative;
}
.slash2:before, .slash2::after {
  display: inline-block;
  position: absolute;
  top: 45%;
  width: 38px;
  height: 3px;
  border-radius: 5px;
  /* background-color: #f6bccc; */
  background-color: #e892a4;
  content: "";
}
.slash2:before {
  left: -40px;
  transform: rotate(50deg);
}
.slash2::after {
  right: -40px;
  transform: rotate(-50deg);
}

.newDiscount,
.benefits,
.stamp {
  display: block;
  padding-bottom: 0;
  margin-bottom: 0;
}
.newDiscount .cardImg,
.benefits .cardImg,
.stamp .cardImg {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .newDiscount .cardImg,
.benefits .cardImg,
.stamp .cardImg {
    flex-direction: row;
  }
}
.newDiscount img,
.benefits img,
.stamp img {
  max-width: 330px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .newDiscount img,
.benefits img,
.stamp img {
    width: 350px;
  }
}
.newDiscount .titleBlock,
.benefits .titleBlock,
.stamp .titleBlock {
  padding: 0;
}
.newDiscount .titleBlock h4,
.benefits .titleBlock h4,
.stamp .titleBlock h4 {
  padding-bottom: 0;
  margin-bottom: 0;
}

section.stamp img {
  width: 260px;
  display: block;
  margin: auto;
  padding-top: 15px;
}
@media screen and (min-width: 768px) {
  section.stamp img {
    width: 350px;
  }
}

.fadeInTrigger {
  opacity: 0;
}

.fadeUpDiv {
  -webkit-animation: fadeInAni 2s forwards;
          animation: fadeInAni 2s forwards;
  opacity: 0;
}

@-webkit-keyframes fadeInAni {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInAni {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/*---------お手入れ単品,部分カット-----------*/
/*---------container__modules-part01-----------*/
.mb-0 {
  margin-bottom: 0;
}

.pb-0 {
  padding-bottom: 0;
}

.container__modules-part01 .section__modules-part01 {
  max-width: 800px;
  width: 98%;
  margin: 50px auto 50px;
  padding: 10px 30px 80px;
  background-color: rgba(219, 219, 219, 0.1294117647);
  border-radius: 5px;
}
.container__modules-part01 .section__modules-part01 hr {
  width: 80%;
  margin: 50px auto 0;
}
@media screen and (max-width: 768px) {
  .container__modules-part01 .section__modules-part01 {
    padding: 10px 10px 20px;
  }
}
.container__modules-part01 .part-menu__list01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 90%;
  margin: auto;
}
.container__modules-part01 .part-menu__list01 li {
  padding: 10px 0;
}
.container__modules-part01 .part-menu__list02 {
  margin: 50px 0 10px;
}
.container__modules-part01 .part-menu__list03 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  width: 80%;
  margin: auto;
}
.container__modules-part01 .part-menu__list03 li {
  padding: 0 5px 10px;
  margin: 0 5px 0;
}
.container__modules-part01 .part-menu__list04 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}

.showIn {
  opacity: 0;
  -webkit-animation: show 0.8s ease-in forwards;
          animation: show 0.8s ease-in forwards;
}

@-webkit-keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.delay-500 {
  -webkit-animation-delay: 500ms;
          animation-delay: 500ms;
}

@media screen and (max-width: 690px) {
  .breadcrumbs {
    text-align: right;
    font-size: 12px;
    margin-bottom: 10px;
  }
  /*-------- トリミングページ ------*/
}
@media screen and (max-width: 600px) {
  /*-------- headerメニュー ------*/
  .fa-phone:before {
    font-size: 20px;
  }
  /*-------- トリミングページ ------*/
  article.trimmingPage .price__content {
    width: 100% !important;
  }
  article.trimmingPage .list__item p {
    font-size: 3vw;
  }
  article.trimmingPage .list__item p:first-child {
    font-size: 3vw !important;
  }
  /*---------お手入れ単品,部分カット-----------*/
  /*---------container__modules-part01-----------*/
  .mb-0 {
    margin-bottom: 0;
  }
  .pb-0 {
    padding-bottom: 0;
  }
  .container__modules-part01 .section__modules-part01 {
    padding: 30px 10px 30px;
  }
  .container__modules-part01 .section__modules-part01 hr {
    width: 80%;
    margin: 25px auto;
  }
  .container__modules-part01 .part-menu__list01 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 95%;
    margin: auto;
  }
  .container__modules-part01 .part-menu__list03 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 90%;
    margin: auto;
  }
  /*-------------- ページトップボタン ----------------*/
  /*-------------- シャンプーページ ----------------*/
}
@media screen and (max-width: 600px) and (max-width: 424px) {
  .container__modules-part01 .part-menu__list03 {
    flex-direction: column;
    justify-content: center;
  }
}
@media screen and (max-width: 600px) {
  #pageTopBtn {
    right: 20px;
    bottom: 15px;
  }
}
@media screen and (max-width: 600px) {
  article.shampooPage section.shampoo {
    text-align: left;
    margin: 0 auto 50px;
    padding: 0 0 50px;
    width: 100%;
    flex-direction: column;
  }
  article.shampooPage section.shampoo h5 {
    margin-top: 30px;
    margin-bottom: 0;
    text-align: center;
    font-size: 18px;
  }
  article.shampooPage section.shampoo h5 span.small {
    font-size: 12px;
  }
}
@media screen and (max-width: 600px) and (max-width: 599px) {
  article.shampooPage section.herbs .textPart ul {
    text-align: left;
  }
}/*# sourceMappingURL=style.css.map */



#hotelPage article.hotelPage section.roomType ul.roomLists li.roomList h5{
  margin: 0 !important;
}

.Poppins {
  font-family: 'Poppins', sans-serif;
}
.sec-title{
  position: relative;
  text-align: center;
  padding: 0;
  margin: 0;
}
.sec-title .en{
  line-height: 1;
  font-size: 5rem;
  letter-spacing: 0.05em;
}
.sec-title .jp{
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  transform: translate(-50%,0);
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
article.trainingPage .modules__shampoo{
  margin-top: 8rem;
  margin-bottom: 20px;
}
article.trainingPage .modules__shampoo h5{
  padding-bottom: 0;
}
article.trainingPage .modules__shampoo ul{
  display: flex;
  flex-direction: column;
  align-items:flex-start;
  margin: 0 auto;
  max-width: max-content;
  width: 100%;
  padding: 0;
}
article.trainingPage .modules__shampoo ul li{
  color: #1C1F26;
  text-align: justify;
}
.fa-square-check {
  color: #1C1F26;
  font-size: 1em;
  margin-right: 0.8rem;
}
.bg-gleen{
  background: #BDE4C7;
}
.color-red{
  color: #e892a4 !important;
}
.point-training{
  border: 3px solid #ddd;
  border-radius: 10px;
  margin-top: 20px;

}
.point-training h5{
  padding-bottom: 0;
  font-size: 3rem;
}
.point-training .caution{
  color: #e892a4;
  font-size: 2rem;
  padding-bottom: 3rem;
  font-weight: 700;
}
.point-training .caution::before{
  display: none;
}
.arrow-icon{
  width: 11rem;
  height: auto;
}
.training-img{
  padding: 8rem 2rem 0;
  text-align: center;
}
.training-img img{
  max-width: 600px;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.training-list__block{
  margin-top: 80px;
  margin-bottom: 35%;
  background: rgba(219, 219, 219, 0.1294117647);
  padding: 10px 30px 80px;
  border-radius: 5px;
}
#trainingPage article.trainingPage .hotel-list__block dl {
  max-width: 300px;
  width: 100%;
  margin: auto;
  color: #1C1F26;
}
#trainingPage article.trainingPage .hotel-list__block dl.room {
  margin-top: 30px;
}
#trainingPage article.trainingPage .hotel-list__block dl dt {
  padding-bottom: 8px;
  float: left;
  clear: both;
}
#trainingPage article.trainingPage .hotel-list__block dl dd {
  position: relative;
  float: right;
  margin: 0;
}
#trainingPage article.trainingPage .hotel-list__block dl dd .first {
  margin-right: 1.5rem;
  font-size: 1.8rem;
}
#trainingPage article.trainingPage .hotel-list__block .clear {
  clear: both;
}
#trainingPage article.trainingPage .hotel-list__block .description {
  font-size: 1.6rem;
}
#trainingPage article.trainingPage .hotel-list__block .description span{
  color: #e892a4;
}
@media screen and (max-width:600px) {
  .training-img {
    padding: 4rem 2rem 0;
  }
  .point-training h5{
    font-size: 2rem;
  }
  section.businessHours.point-training {
    padding: 20px 20px 50px;
  }
  article.trainingPage .modules__shampoo {
    margin-top: 4rem;
  }
  .arrow-icon {
    width: 7rem;
    height: auto;
  }
  .point-training .caution{
    text-align: center;
    padding-bottom: 0;
  }
  .training-list__block{
    margin-top: 40px;
  }
  #trainingPage article.trainingPage .hotel-list__block dl dd .first {
    font-size: 1.4rem;
  }
  #trainingPage article.trainingPage .hotel-list__block dl {
    max-width: 270px;
  }
}