@charset "UTF-8";
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
/*	layout
------------------------------------ */
/*	font-size  cmn
------------------------------------ */
/*	com parts  PC
------------------------------------ */
.sns-none {
  display: none !important;
}

.over {
  overflow: hidden;
}

.spxs-only {
  display: none;
}
@media screen and (max-width: 390px) {
  .spxs-only {
    display: inherit;
  }
}

.com-ib {
  display: inline-block;
}

.f26 {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .f26 {
    font-size: 1.5rem;
  }
}

.pre {
  white-space: pre-line;
}

.anchor-mp {
  margin: -120px auto 0;
  padding-top: 120px;
}

.target {
  scroll-margin-top: 0; /* ヘッダーの高さ分 */
}

.nowrap {
  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .nowrap {
    white-space: nowrap;
  }
}
.no-sb {
  margin: 50px auto 0;
}

@media screen and (min-width: 768px) {
  .com-txt-box p:nth-of-type(n+2) {
    margin-top: 37px;
  }
}
.com-txt.sm {
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .com-txt.sm {
    font-size: 1.5rem;
  }
}
.com-txt .ac {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .com-txt .ac {
    font-size: 1.5rem;
  }
}
.com-txt rt {
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  letter-spacing: 0.2em;
  color: #a7a7a7;
}

.marker {
  position: relative;
  z-index: 1;
}
.marker::before {
  display: block;
  width: 100%;
  height: 14px;
  background: rgba(255, 188, 76, 0.2);
  border-radius: 5.5px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: "";
}

.clamp1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

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

.clamp3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.clamp4 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

@media screen and (min-width: 768px) {
  .com-pd {
    padding: 120px 0;
  }
}

.com-noimage {
  background: url(../img/top/logo.png) no-repeat center #abb793;
  background-size: clamp(48px, 65%, 209px);
}

/*  共通パーツ
------------------------------------ */
.com-tel {
  padding-left: 33px;
  background: url(../img/top/contact-tel.png) no-repeat left bottom;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 4.6rem;
}
@media screen and (max-width: 768px) {
  .com-tel {
    font-size: 2.3rem;
  }
}
.com-tel {
  letter-spacing: 0.06em;
  line-height: 1;
}

.com-box {
  max-width: 715px;
  margin: auto;
  padding: 42px 0 42px 50px;
  border-radius: 60px;
  background: #fff;
  position: relative;
}
.com-box::before {
  content: "";
  display: block;
  width: 96px;
  height: 118px;
  background: url(../img/top/com-box-ico-rt.png) no-repeat right top/contain;
  position: absolute;
  top: -39px;
  right: -53px;
}
.com-box02 {
  background-color: #fff7e8;
  border-radius: 60px;
}

.com-check-item {
  padding-left: 40px;
  background: url(../img/top/com-check.png) no-repeat left 4px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 2.3rem;
}
@media screen and (max-width: 768px) {
  .com-check-item {
    font-size: 1.5rem;
  }
}
.com-check-item {
  letter-spacing: 0.15em;
  color: #737373;
  line-height: 1.5;
}
.com-check li:nth-of-type(n+2) {
  margin-top: 15px;
}

.com-bg {
  background: #fff7e8;
}

.com-wave {
  background: url(../img/top/com-wave.png) no-repeat center bottom/100% 147px;
}
.com-wave02 {
  background: url(../img/top/com-wave02.png) no-repeat center bottom/100% 45px;
}

.news-post {
  width: 100%;
  max-width: 788px;
}
.news-post-item:nth-of-type(n+2) {
  margin-top: 19px;
}
.news-post-link {
  display: block;
  padding: 35px 40px 30px;
  border-radius: 60px;
  background: #fff7e8;
}
.news-post-time {
  margin-right: 25px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .news-post-time {
    font-size: 1.5rem;
  }
}
.news-post-time {
  letter-spacing: 0.12em;
  color: #737373;
  line-height: 1.4;
  flex-shrink: 0;
}
.news-post-tag {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.1;
}
.news-post-tag-txt {
  margin: 0 8px 8px 0;
  padding: 4px 18px;
  background: #ffbc4c;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  border-radius: 12px;
  font-size: 1.5rem;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
.news-post-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .news-post-ttl {
    font-size: 1.5rem;
  }
}
.news-post-ttl {
  letter-spacing: 0.15em;
  line-height: 1.6;
}
.news-post-time, .news-post-tag-txt, .news-post-ttl {
  transition: all 0.3s ease;
}

.com-tag {
  margin: 46px auto 0;
}
.com-tag-list {
  display: flex;
  margin: 30px auto 0;
  flex-wrap: wrap;
}
.com-tag-list-item {
  width: 100%;
  max-width: 255px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .com-tag-list-item:not(:nth-of-type(4n-3)) {
    margin-left: 20px;
  }
  .com-tag-list-item:nth-of-type(n+5) {
    margin-top: 20px;
  }
}
.com-tag-list-link.current {
  background-color: #ffdfa9;
}

/* =========================================

  main layout  all

========================================= */
/* top-greeting  PC
------------------------------------ */
#top-greeting .greeting-txt {
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  #top-greeting .greeting-txt {
    font-size: 1.5rem;
  }
}
#top-greeting .greeting-txt-box {
  margin-top: 47px;
}

/* top-problems  PC
------------------------------------ */
#top-problems .problems-box {
  margin: 30px auto 0;
}
#top-problems .problems-txt-box {
  margin: 28px auto 0;
}

/* top-features  PC
------------------------------------ */
#top-features .features-list {
  margin: 50px auto 0;
}
#top-features .features-list-num {
  margin-left: 35px;
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 7rem;
}
@media screen and (max-width: 768px) {
  #top-features .features-list-num {
    font-size: 3.5rem;
  }
}
#top-features .features-list-num {
  letter-spacing: 0.05em;
  color: #ffbc4c;
  line-height: 1;
  position: relative;
  z-index: 1;
}
#top-features .features-list-img {
  margin: -90px auto 0;
}
#top-features .features-list-ttl {
  display: flex;
  margin: -50px auto 0;
  min-height: 90px;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  #top-features .features-list-ttl {
    font-size: 1.6rem;
  }
}
#top-features .features-list-ttl {
  letter-spacing: 0.1em;
  line-height: 1.4;
  justify-content: center;
  align-items: center;
}
#top-features .features-list-txt {
  margin: 16px auto 0;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  #top-features .features-list-txt {
    font-size: 1.5rem;
  }
}
#top-features .features-list-txt {
  line-height: 1.6;
}

/* top-course  PC
------------------------------------ */
.com-course {
  width: calc(100% - 30px);
  max-width: 1500px;
  margin: auto;
  border-radius: 60px;
  background: #fff7e8;
}
.com-course .course-txt {
  margin: 35px auto 0;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .com-course .course-txt {
    font-size: 1.5rem;
  }
}
.com-course .course-txt {
  text-align: center;
}
.com-course .course-list {
  margin: 45px auto 0;
}
.com-course .course-list-item:nth-of-type(n+2) {
  margin: 56px auto 0;
}
.com-course .course-list-img img {
  border-radius: 40px;
}
.com-course .course-list-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .com-course .course-list-ttl {
    font-size: 1.6rem;
  }
}
.com-course .course-list-ttl {
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.com-course .course-list-txt {
  margin-top: 25px;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .com-course .course-list-txt {
    font-size: 1.5rem;
  }
}
.com-course .course-list-btn {
  margin-top: 30px;
}

/* top-works  PC
------------------------------------ */
#top-works .works-list {
  margin: 55px auto 0;
}
#top-works .works-list-link {
  display: block;
  border-radius: 40px;
  overflow: hidden;
  position: relative;
  z-index: 0;
}
#top-works .works-list-link::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(115, 115, 115, 0.7);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  #top-works .works-list-link:hover {
    opacity: 1;
  }
  #top-works .works-list-link:hover::before {
    opacity: 1;
  }
  #top-works .works-list-link:hover .works-list-ttl {
    opacity: 1;
  }
}
#top-works .works-list-img {
  width: 100%;
  height: 0;
  padding-top: 115.625%;
  position: relative;
  z-index: -1;
}
#top-works .works-list-ttl {
  width: 116px;
  margin: auto;
  padding-bottom: 5px;
  background: url(../img/top/com-btn-arw.png) no-repeat right 15px;
  border-bottom: 1px solid;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #top-works .works-list-ttl {
    font-size: 1.5rem;
  }
}
#top-works .works-list-ttl {
  letter-spacing: 0.08em;
  justify-content: center;
  align-items: center;
  color: #fff;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  opacity: 0;
  transition: all 0.3s ease;
}

/* top-grooming  PC
------------------------------------ */
#top-grooming .grooming-txt {
  margin: 33px auto 0;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  #top-grooming .grooming-txt {
    font-size: 1.5rem;
  }
}
#top-grooming .grooming-box {
  max-width: 978px;
  margin: 33px auto 0;
  padding: 45px 0 50px;
  border-radius: 60px;
  text-align: center;
  background-color: #fff;
  position: relative;
}
#top-grooming .grooming-box::before {
  content: "";
  display: block;
  width: 279px;
  height: 173px;
  background: url(../img/top/grooming-ico.png) no-repeat right top/contain;
  position: absolute;
  right: -118px;
  bottom: -52px;
}
#top-grooming .grooming-box-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  #top-grooming .grooming-box-ttl {
    font-size: 1.6rem;
  }
}
#top-grooming .grooming-box-ttl {
  letter-spacing: 0.1em;
}
#top-grooming .grooming-box-list {
  margin: 27px auto 0;
}
#top-grooming .grooming-box-btn {
  max-width: 480px;
  margin: 40px auto 0;
}

/* top-salon  PC
------------------------------------ */
#top-salon .salon-left {
  width: 100%;
  max-width: 600px;
}
#top-salon .salon-table {
  margin-top: 50px;
}
#top-salon .salon-btn {
  width: 100%;
  max-width: 480px;
  margin-top: 56px;
}
#top-salon .salon-right {
  width: 100%;
  max-width: 434px;
  border-radius: 30px;
  overflow: hidden;
  position: relative;
}
#top-salon .salon-right iframe {
  width: 100%;
  height: 100%;
  border: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/* com-contact  PC
------------------------------------ */
.com-contact .contact-box {
  padding: 80px 90px 80px 65px;
  border-radius: 60px;
  background: #fffdf9;
  position: relative;
}
.com-contact .contact-box::before {
  content: "";
  display: block;
  width: 204px;
  height: 143px;
  background: url(../img/top/contact-ico.png) no-repeat left top/contain;
  position: absolute;
  left: -86px;
  bottom: -82px;
}
.com-contact .contact-box-txt {
  margin-top: 32px;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-box-txt {
    font-size: 1.5rem;
  }
}
.com-contact .contact-box-txt {
  line-height: 1.88;
}
.com-contact .contact-box .ja {
  font-size: 4.6rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-box .ja {
    font-size: 2.3rem;
  }
}
.com-contact .contact-list {
  margin-top: 34px;
}
.com-contact .contact-list-item:nth-of-type(n+2) {
  margin-top: 30px;
}
.com-contact .contact-list-link {
  display: flex;
  height: 75px;
  background-color: #ffbc4c;
  border-radius: 37.5px;
  justify-content: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .com-contact .contact-list-link {
    font-size: 1.5rem;
  }
}
.com-contact .contact-list-link {
  letter-spacing: 0.05em;
  color: #fff;
  align-items: center;
}
.com-contact .contact-list-link::before {
  content: "";
  display: block;
}
.com-contact .contact-list-link.line::before {
  width: 32px;
  height: 32px;
  margin-right: 16px;
  background: url(../img/top/contact-line.png) no-repeat center/contain;
}
.com-contact .contact-list-link.mail::before {
  width: 30px;
  height: 23px;
  margin-right: 19px;
  background: url(../img/top/contact-mail.png) no-repeat center/contain;
}

/* =========================================

  sub layout  all

========================================= */
/* com-about  PC
------------------------------------ */
.com-about .about-txt {
  margin: 30px auto 0;
}

.com-problem .problem-box {
  margin: 39px auto 0;
  padding: 50px;
}
.com-problem .problem-flx {
  margin: 120px auto 0;
  position: relative;
}
.com-problem .problem-flx::before {
  content: "";
  display: block;
  width: 78px;
  height: 73px;
  margin: auto;
  background: url(../img/shampoo/com-read.png) no-repeat center/contain;
  position: absolute;
  top: -136px;
  left: 0;
  right: 0;
}
.com-problem .problem-img img {
  border-radius: 40px;
}
.com-problem .problem-con {
  position: relative;
}
.com-problem .problem-con::before {
  display: block;
  width: 179px;
  height: 157px;
  background: url(../img/shampoo/solution-ico.png) no-repeat right top/contain;
  position: absolute;
  right: -75px;
  bottom: -144px;
  content: "";
}
.com-problem .problem-con-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .com-problem .problem-con-ttl {
    font-size: 1.5rem;
  }
}
.com-problem .problem-con-ttl {
  letter-spacing: 0.1em;
  line-height: 1.6;
  position: relative;
}
.com-problem .problem-con-ttl::before {
  content: "";
  width: 34px;
  height: 44px;
  background: url(../img/shampoo/solution-ttl-ico.png) no-repeat right top/contain;
  position: absolute;
  right: -27px;
  bottom: 20px;
}
.com-problem .problem-con-ttl .ac {
  color: #ffbc4c;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .com-problem .problem-con-ttl .ac {
    font-size: 1.6rem;
  }
}
.com-problem .problem-con-ttl .ac {
  line-height: 1.2;
}
.com-problem .problem-con-txt {
  margin-top: 25px;
}

.com-feature .feature-box {
  margin: 40px auto 0;
  padding: 54px 54px 45px;
}
.com-feature .feature-box-list {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .com-feature .feature-box-list {
    max-width: 550px;
  }
}
.com-feature .feature-box-list-item:nth-of-type(n+2) {
  border-top: 1px solid #d5d3d1;
}
.com-feature .feature-box-list-txt {
  margin-top: 19px;
}
.com-feature .feature-box-img img {
  border-radius: 40px;
}

.com-detail .detail-txt {
  margin: 30px auto 0;
}
.com-detail .detail-box {
  width: 100%;
  max-width: 878px;
  margin: 30px auto 0;
}
.com-detail .detail-check {
  display: grid;
  margin: 23px auto 0;
  padding: 50px 32.5px 43px;
  grid-template-columns: repeat(3, 1fr); /* 横3列 */
  gap: 19px 50px; /* 要素間の余白 */
}
.com-detail .detail-check li:nth-of-type(n+2) {
  margin: 0;
}

.com-price .price-txt {
  margin: 30px auto 0;
}
.com-price .price-flx {
  margin: 37px auto 0;
}
.com-price .price-img img {
  border-radius: 40px;
}
.com-price .price-con-ttl li {
  width: 50%;
  height: 38px;
  padding: 0 20px;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .com-price .price-con-ttl li {
    font-size: 1.5rem;
  }
}
.com-price .price-con-ttl li {
  letter-spacing: 0.1em;
  line-height: 38px;
}
.com-price .price-con-ttl .ttl {
  border-radius: 10px 0 0 10px;
  background: #ffbc4c;
}
.com-price .price-con-ttl .num {
  margin-left: 1px;
  border-radius: 0 10px 10px 0;
  background: #737373;
}
.com-price .price-con-table {
  margin-top: 20px;
}
.com-price .price-con-table th, .com-price .price-con-table td {
  padding: 20px 0;
}
.com-price .price-con-table th {
  width: 300px;
}
.com-price .price-con-table td {
  padding-left: 10px;
}
.com-price .option {
  margin: 90px auto 0;
}
.com-price .option-list {
  margin: 37px auto 0;
}
.com-price .option-list-item {
  padding-bottom: 11px;
  border-bottom: 4px double #d5d3d1;
}
.com-price .option-list-item:nth-of-type(n+2) {
  margin: 20px auto 0;
}
.com-price .option-list-txt {
  margin: 12px auto 0;
  line-height: 1.625;
}
.com-price .option-list-price {
  margin-top: 9px;
  text-align: right;
}
.com-price .other {
  margin: 34px auto 0;
}
.com-price .other-ttl {
  width: 100%;
  max-width: 300px;
  height: 38px;
  padding: 0 20px;
  background: #ffbc4c;
  border-radius: 10px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .com-price .other-ttl {
    font-size: 1.5rem;
  }
}
.com-price .other-ttl {
  letter-spacing: 0.1em;
  color: #fff;
  line-height: 38px;
}
.com-price .other-list {
  margin: 17px auto 0;
}
.com-price .other-list li {
  padding-left: 19px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .com-price .other-list li {
    font-size: 1.5rem;
  }
}
.com-price .other-list li {
  letter-spacing: 0.1em;
  line-height: 1.625;
  white-space: pre-line;
  position: relative;
}
.com-price .other-list li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.com-faq .faq-list {
  margin: 40px auto 0;
}
.com-faq .faq-list-item {
  padding: 35px 40px;
  border-radius: 40px;
}
.com-faq .faq-list-item:nth-of-type(n+2) {
  margin-top: 44px;
}
.com-faq .faq-list-qa {
  padding-left: 44px;
  position: relative;
}
.com-faq .faq-list-qa::before {
  content: "";
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 3.5rem;
}
@media screen and (max-width: 768px) {
  .com-faq .faq-list-qa::before {
    font-size: 1.75rem;
  }
}
.com-faq .faq-list-qa::before {
  color: #ffbc4c;
  line-height: 1;
  position: absolute;
  left: 0;
}
.com-faq .faq-list-ttl {
  padding-bottom: 20px;
  border-bottom: 1px solid #d5d3d1;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .com-faq .faq-list-ttl {
    font-size: 1.5rem;
  }
}
.com-faq .faq-list-ttl {
  letter-spacing: 0.08em;
  line-height: 1.6;
}
.com-faq .faq-list-ttl::before {
  content: "Q";
  top: -7px;
}
.com-faq .faq-list-txt {
  margin: 25px auto 0;
  white-space: pre-line;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.5;
}
.com-faq .faq-list-txt::before {
  content: "A";
  top: -6px;
}

.com-note .note-box {
  max-width: 932px;
  margin: 30px auto 0;
  padding: 39px 50px 50px;
}
.com-note .note-txt {
  text-align: center;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .com-note .note-txt {
    font-size: 1.5rem;
  }
}
.com-note .note-txt {
  line-height: 1.875;
  line-height: 1.9;
}
.com-note .note-btn {
  max-width: 480px;
  margin: 30px auto 0;
}

.com-bnr .bnr-list-link {
  display: block;
  position: relative;
}
.com-bnr .bnr-list-img img {
  border-radius: 40px;
}
.com-bnr .bnr-list-ttl {
  display: flex;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .com-bnr .bnr-list-ttl {
    font-size: 1.6rem;
  }
}
.com-bnr .bnr-list-ttl {
  letter-spacing: 0.1em;
  line-height: 1;
  align-items: center;
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
  position: absolute;
  left: 27px;
  bottom: 35px;
}
.com-bnr .bnr-list-ttl::after {
  content: "";
  display: block;
  width: 38px;
  height: 38px;
  margin-left: 17px;
  background: url(../img/shampoo/bnr-arw.png) no-repeat center/contain;
}

/* shampoo_cut  PC
------------------------------------ */
#shampoo_cut .problem-con::before {
  width: 170px;
  height: 140px;
  background-image: url(../img/shampoo_cut/solution-ico.png);
  right: -66px;
  bottom: -120px;
}
@media screen and (min-width: 768px) {
  #shampoo_cut .problem-con-ttl::before {
    right: 32px;
    bottom: 66px;
  }
}
@media screen and (min-width: 768px) {
  #shampoo_cut .feature-box-list-ttl {
    white-space: nowrap;
  }
}
#shampoo_cut .works-list {
  margin: 40px auto 0;
}
@media screen and (min-width: 768px) {
  #shampoo_cut .works-list-item {
    width: 100%;
    max-width: 520px;
    padding: 40px 40px 28px;
  }
  #shampoo_cut .works-list-item:nth-of-type(n+3) {
    margin-top: 43px;
  }
}
#shampoo_cut .works-list-img {
  height: 0;
  position: relative;
}
#shampoo_cut .works-list-img img {
  border-radius: 40px;
}
#shampoo_cut .works-list-before {
  width: 204px;
  padding-top: 236px;
}
#shampoo_cut .works-list-before::before {
  content: "Before";
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #shampoo_cut .works-list-before::before {
    font-size: 1.5rem;
  }
}
#shampoo_cut .works-list-before::before {
  letter-spacing: 0.1em;
  line-height: 1;
  color: #ffbc4c;
  position: absolute;
  left: 0;
  bottom: -29px;
}
#shampoo_cut .works-list-after {
  width: 320px;
  padding-top: 370px;
  margin: -68px 0 0 auto;
}
#shampoo_cut .works-list-after::before {
  content: "After";
  display: block;
  width: 120px;
  height: 38px;
  margin: auto;
  text-align: center;
  background: #ffbc4c;
  border-radius: 10px;
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  #shampoo_cut .works-list-after::before {
    font-size: 1.5rem;
  }
}
#shampoo_cut .works-list-after::before {
  letter-spacing: 0.1em;
  line-height: 38px;
  color: #fff;
  position: absolute;
  left: 0;
  top: -16px;
  right: 0;
  z-index: 1;
}
#shampoo_cut .works-list-dl {
  margin: 35px auto 0;
}
#shampoo_cut .works-list-dl-item {
  display: flex;
  align-items: flex-start;
}
#shampoo_cut .works-list-dl dt, #shampoo_cut .works-list-dl dd {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #shampoo_cut .works-list-dl dt, #shampoo_cut .works-list-dl dd {
    font-size: 1.5rem;
  }
}
#shampoo_cut .works-list-dl dt, #shampoo_cut .works-list-dl dd {
  letter-spacing: 0.08em;
  line-height: 1.5;
}
#shampoo_cut .works-list-dl dt {
  flex-shrink: 0;
}
#shampoo_cut .works-list-dl dd {
  margin-left: 13px;
}

/* grooming  PC
------------------------------------ */
#grooming .problem-con::before {
  width: 214px;
  height: 133px;
  background-image: url(../img/grooming/solution-ico.png);
  bottom: -140px;
  right: -70px;
}
@media screen and (min-width: 768px) {
  #grooming .problem-con-ttl::before {
    right: 0;
  }
}
#grooming .ok-txt {
  margin: 25px auto 0;
}
#grooming .ok-course {
  margin: 30px auto 0;
}
#grooming .flow-list {
  margin: 41px auto 0;
}
#grooming .flow-list-item {
  display: flex;
  padding: 31px 40px;
  border-radius: 40px;
  background: #fff7e8;
  align-items: center;
  justify-content: space-between;
}
#grooming .flow-list-item:nth-of-type(n+2) {
  margin: 37px auto 0;
  position: relative;
}
#grooming .flow-list-item:nth-of-type(n+2)::before {
  content: "";
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  border-top: 16px solid #ffbc4c;
  border-bottom: 0;
  position: absolute;
  left: 0;
  top: -26px;
  right: 0;
}
@media screen and (min-width: 768px) {
  #grooming .flow-list-ico {
    margin-right: 40px;
    flex-shrink: 0;
  }
}
#grooming .flow-list-con {
  width: 100%;
}
#grooming .flow-list-con-ttl .en {
  margin: 0;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #grooming .flow-list-con-ttl .en {
    font-size: 1.5rem;
  }
}
#grooming .flow-list-con-ttl .ja {
  margin-top: 10px;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #grooming .flow-list-con-ttl .ja {
    font-size: 1.5rem;
  }
}
#grooming .flow-list-txt {
  margin-top: 10px;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  #grooming .flow-list-txt {
    font-size: 1.5rem;
  }
}
#grooming .flow-list-txt {
  line-height: 1.7;
}
#grooming .bring-list {
  margin: 40px auto 0;
}
#grooming .bring-list-item:nth-of-type(n+2) {
  margin: 32px auto 0;
  padding-top: 34px;
  border-top: 1px solid #d5d3d1;
}
#grooming .bring-list-txt {
  margin: 23px auto 0;
}
#grooming .price-box {
  margin: 45px auto 0;
  padding: 35px 58px 60px;
}
#grooming .price-box-txt {
  line-height: 1.625;
}
#grooming .price-box p:nth-of-type(n+2) {
  margin: 19px auto 0;
}

/* salon  PC
------------------------------------ */
#salon .greeting-inner {
  position: relative;
}
#salon .greeting-ttl {
  margin-top: 20px;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  #salon .greeting-ttl {
    font-size: 1.5rem;
  }
}
#salon .greeting-ttl {
  letter-spacing: 0.1em;
  line-height: 1.7;
}
#salon .greeting-txt-box {
  margin-top: 25px;
}
#salon .salon-table {
  margin: 50px auto 0;
}
@media screen and (min-width: 768px) {
  #salon .salon-table th {
    width: 150px;
  }
}
#salon .salon-map {
  margin: 60px auto 0;
  padding-top: 460px;
}

/* contact  PC
------------------------------------ */
#contact .contact-txt {
  margin: 30px auto 0;
}
#contact .contact-link {
  border-bottom: 1px solid;
  color: #0012ff;
}
#contact .contact-list {
  margin: 40px auto 0;
}
#contact .contact-list-dl .item {
  display: flex;
  align-items: flex-start;
}
#contact .contact-list-dl dt, #contact .contact-list-dl dd {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  #contact .contact-list-dl dt, #contact .contact-list-dl dd {
    font-size: 1.5rem;
  }
}
#contact .contact-list-dl dt, #contact .contact-list-dl dd {
  letter-spacing: 0.1em;
  line-height: 1.5;
}
#contact .contact-list-dl dt {
  margin-right: 14px;
}
#contact .contact-form-table {
  margin: 50px auto 0;
}
#contact .mail {
  margin-bottom: 40px;
}

/* news  PC
------------------------------------ */
#news .com-news-link {
  padding: 50px;
}
#news .com-news-img {
  border-radius: 40px;
  overflow: hidden;
}
#news .detail-box {
  padding: 50px;
}
#news .detail-tag {
  margin: 30px auto 0;
  justify-content: flex-end;
}

/* site  PC
------------------------------------ */
#site .site-box {
  padding: 50px;
}/*# sourceMappingURL=all.css.map */