/*==========================================================================*/
/*                           LP HAIR REMOVAL                                    */
/*==========================================================================*/
.page-hair-removal .key {
  height: 900px;
  background-image: url(../images/hair-removal_key_bg.jpg);
  z-index: 2;
  font-size: 10px;
}
.page-hair-removal .key::after {
  content: '';
  position: absolute;
  bottom: -5.6em;
  left: 0;
  background: url(../images/hair-removal_key_at.svg) no-repeat top center/ 100% auto;
  width: 100%;
  height: 15em;
  z-index: -1;
}
.page-hair-removal .key .inner {
  max-width: 1600px;
}
.page-hair-removal .key .catch {
  position: relative;
  display: table;
  margin-left: auto;
}
.page-hair-removal .key .catch::before {
  content: '';
  position: absolute;
  background: url(../images/hair-removal_key_bf.png) no-repeat center/contain;
  width: 26.9em;
  aspect-ratio: 269 / 383;
  filter: drop-shadow(-8.485px 8.485px 25px rgba(0, 0, 0, 0.5));
}
.page-hair-removal .key .key_text {
  padding-top: 13.6em;
}
.page-hair-removal .key .key_text .title {
  font-size: 6.2em;
  font-weight: 500;
  line-height: 1.4;
  color: var(--clr2);
  text-shadow: 3px 3px 20px #ffffff, 3px 3px 30px #ffffff, 3px 3px 60px #ffffff;
  text-align: center;
  letter-spacing: .1em;
  margin-bottom: 0;
}
.page-hair-removal .key .list_circle {
  display: flex;
  justify-content: center;
  margin-top: 2.4em;
  margin-bottom: -0.5em;
}
.page-hair-removal .key .list_circle .it {
  width: 22em;
  height: 22em;
  border-radius: 50%;
  margin: 0 0.8em;
  text-align: center;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.page-hair-removal .key .list_circle .it::before {
  content: '';
  position: absolute;
  border-radius: 50%;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(90deg, rgba(155, 200, 58, 0.9) 0%, rgba(91, 203, 153, 0.9) 50%, rgba(0, 184, 238, 0.9) 100%);
  mix-blend-mode: soft-light;
}
.page-hair-removal .key .list_circle .tt {
  font-size: 2.4em;
  line-height: 1.5;
  font-weight: 500;
  color: #ffffff;
}
.page-hair-removal .key .list_circle .tt span {
  font-size: 0.6666666667em;
}
.page-hair-removal .key .list_circle .it01 {
  background-color: rgba(149, 221, 198, 0.9);
}
.page-hair-removal .key .list_circle .it02 {
  background-color: rgba(255, 196, 124, 0.9);
}
.page-hair-removal .key .list_circle .it03 {
  background-color: rgba(91, 163, 208, 0.9);
  padding-bottom: 8px;
}
.page-hair-removal .key .hair_bnr {
  background-color: #fff;
  border-radius: 1em;
  border: 1px solid #005d96;
  display: flex;
  padding: 2em 0.5em 2em 2em;
  width: fit-content;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  margin-top: 3em;
}
.page-hair-removal .key .hair_bnr .tt {
  position: relative;
  font-size: 1.8em;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .1em;
  color: var(--clr2);
  text-align: center;
}
.page-hair-removal .key .hair_bnr .tt::after {
  content: "";
  position: absolute;
  background-color: rgba(51, 51, 51, .3);
}
.page-hair-removal .key .hair_bnr .tt .lg {
  display: block;
  font-size: 1.4444em;
  font-weight: 700;
  margin-bottom: 0px;
}
.page-hair-removal .key .hair_bnr .tt .sm {
  color: #fff;
  background-color: var(--clr2);
  border-radius: 999em;
  font-size: 0.8889em;
  margin-right: 0.5em;
  padding: 0.1875em;
}
.page-hair-removal .key .hair_bnr .price {
  font-weight: 900;
  line-height: 1;
  font-size: 5.8em;
  color: #f91c63;
}
.page-hair-removal .key .hair_bnr .price .unit {
  font-size: 0.4828em;
  margin: 0 -0.5em;
}
.page-hair-removal .key .hair_bnr .price .sm {
  font-size: 0.3448em;
  color: var(--clr2);
  margin-left: -0.5em;
}
.page-hair-removal #mainContent {
  margin-top: 0;
  font-feature-settings: "palt";
}
.page-hair-removal #mainContent > .inner {
  max-width: 1064px;
}
.page-hair-removal #mainContent:before, .page-hair-removal #mainContent::after {
  display: none;
}
.page-hair-removal .topic_path {
  display: none;
}
.page-hair-removal .btn-group .btn.style01 {
  max-width: 640px;
  width: 100%;
  overflow: unset;
}
.page-hair-removal .btn-group .btn.style01 a {
  font-size: 24px;
  font-weight: bold;
  border-radius: 80px;
  min-height: 5em;
  width: 100%;
  padding: .5em 0.75em 0.625em 1em;
  font-feature-settings: "palt";
}
.page-hair-removal .btn-group .btn.style01 a:before {
  border-radius: 80px;
  background-image: linear-gradient(90deg, rgb(155, 200, 58, 0.4) 0%, rgb(91, 203, 153, 0.4) 50%, rgb(0, 184, 238, 0.4) 100%);
  mix-blend-mode: soft-light;
}
.page-hair-removal .btn-group .btn.style01 a::after {
  width: 0.54166666667em;
  height: 0.91666666667em;
  top: 0;
  right: 1.29166666667em;
  bottom: 0;
  margin: auto;
}
.page-hair-removal section h2 {
  font-feature-settings: "palt";
  line-height: calc(52 / 36);
  font-weight: bold;
  color: var(--clr2);
  font-size: calc(var(--ttl_size) + 8px);
  letter-spacing: .1em;
  text-align: center
}
.page-hair-removal section h3 {
  background-image: none;
  color: var(--main-color);
  font-size: 24px;
  padding: 0;
  font-feature-settings: "palt";
  text-align: left;
  margin-top: 0;
}
.page-hair-removal section h3::after {
  content: '';
  position: relative;
  display: block;
  background-color: var(--main-color);
  width: 100px;
  height: 2px;
  margin-top: 15px;
}
.page-hair-removal section .inner {
  max-width: 1064px;
}
/*******SEC01*********/
.page-hair-removal .sec01 {
  padding: 59px 0 101px;
}
.page-hair-removal .sec01 .box_img img {
  border-radius: 10px;
}
.page-hair-removal .sec01 .btn-group {
  margin-bottom: 70px;
}
.page-hair-removal .sec01 h2 {
  margin-bottom: 50px;
}
/*******SEC02*********/
.page-hair-removal .sec_white {
  background-color: #fff;
}
.page-hair-removal .sec02 {
  padding: 90px 0 100px;
}
.page-hair-removal .sec02 h2 {
  margin-bottom: 54px;
}
.page-hair-removal .sec02 h3 {
  line-height: 1.75;
  letter-spacing: 0.1em;
  margin-bottom: 29px;
}
.page-hair-removal .sec02 .b_img img {
  border-radius: 10px;
}
.page-hair-removal .sec02 .btn-group {
  margin-top: 80px;
}
/*******SEC03*********/
.page-hair-removal .sec03 {
  padding: 90px 0 100px;
}
.page-hair-removal .sec03 h2 {
  margin-bottom: 54px;
}
.page-hair-removal .sec03 .ttl {
  position: relative;
  font-size: 22px;
  line-height: 1.4;
  font-weight: 500;
  padding-left: 1.13636363636em;
  color: var(--clr1);
  margin-bottom: 22px;
}
.page-hair-removal .sec03 .ttl::before {
  content: '';
  position: absolute;
  top: 0.54545454545455em;
  left: 0.0909090909em;
  background-color: #eb6ea5;
  border-radius: 3px;
}
.page-hair-removal .sec03 .ttl.male::before {
  background-color: var(--clr2);
}
.page-hair-removal .sec03 .ttl::after {
  display: none;
}
.page-hair-removal .sec03 .row {
  margin-bottom: 55px;
}
.page-hair-removal .sec03 .l_note {
  margin-top: 13px;
  padding-left: 3px;
}
.page-hair-removal .sec03 .l_note li {
  position: relative;
  padding-left: 1.2em;
  line-height: 2.133333;
  font-size: 15px;
}
.page-hair-removal .sec03 .l_note li::before {
  content: '';
  position: absolute;
  top: 0.8em;
  left: 0;
  background-color: #eb6ea5;
  width: round(0.5333333333em, 1px);
  height: round(0.5333333333em, 1px);
  border-radius: 50%;
}
.page-hair-removal .sec03 .btn-group {
  margin-top: 80px;
}
.page-hair-removal .sec03 .b_tb {
  margin-bottom: 25px;
}
.tab_fees .TabPager {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 3;
}
.tab_fees .TabPager > div {
  width: calc(50% - 1px);
  background-color: #c9c9c9;
  border-radius: 10px 10px 0 0;
  text-align: center;
  color: #ffffff;
  transition: all 0.3s;
  position: relative;
}
.tab_fees .TabPager > div::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #eb6ea5;
  width: 24px;
  height: 16px;
  margin: auto;
  opacity: 0;
  transition: all 0.3s;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.tab_fees .TabPager > div:nth-child(2)::before {
  background-color: var(--clr2);
}
.tab_fees .TabPager > div .tt {
  font-size: 24px;
  line-height: 1.5;
  padding: 11px 15px 13px;
  background-color: #c9c9c9;
  border-radius: 10px 10px 0 0;
  transition: all 0.3s;
  cursor: pointer;
}
.tab_fees .TabPager > div.active {
  background-color: #eb6ea5;
}
.tab_fees .TabPager > div.active .tt {
  background-color: #eb6ea5;
}
.tab_fees .TabPager > div:nth-child(2).active {
  background-color: var(--clr2);
}
.tab_fees .TabPager > div:nth-child(2).active .tt {
  background-color: var(--clr2);
}
.tab_fees .TabPager > div.active::before {
  opacity: 1;
  bottom: -16px;
}
.tab_fees .TabContent {
  position: relative;
  z-index: 2;
  overflow: hidden
}
.tab_fees .TabContent .content {
  transition: all 0.3s ease-in-out;
}
.tab_fees .TabContent .content > div {
  opacity: 0;
  z-index: -10;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transition: all 0.5s ease-in-out;
  padding: 55px 59px 69px 58px;
  background-color: #ffffff;
  border-radius: 0 0 10px 10px;
}
.tab_fees .TabContent .content > div:nth-child(1) {
  border: 1px solid #eb6ea5;
}
.tab_fees .TabContent .content > div:nth-child(2) {
  border: 1px solid var(--clr2);
}
.tab_fees .TabContent .content > div.active {
  opacity: 1;
  z-index: 1;
  visibility: visible
}
.cl_pink {
  color: #eb6ea5;
}
.tbl_fees th, .tbl_fees td {
  border: 1px solid rgba(0, 0, 0, 0.15);
  font-feature-settings: "palt";
  text-align: center;
  font-weight: 400;
  width: 11%;
}
.tbl_fees th:first-child, .tbl_fees td:first-child {
  width: 22.5%;
}
.tbl_fees th {
  color: #ffffff;
  border-top: 0;
  line-height: 1.125;
  padding: 0.75em 0.1875em 0.6875em;
}
.tbl_fees th span {
  font-size: 0.75em;
}
.tbl_fees td {
  background-color: #f2f2f2;
  line-height: 1.5;
  padding: 1.3125em 0.1875em 1.3125em;
}
.tbl_fees td:first-child {
  background-color: #fff;
}
.tbl_fees.tbl_female th {
  background-color: #eb6ea5;
}
.tbl_fees.tbl_male th {
  background-color: var(--clr2);
}
/*******SEC04*********/
.page-hair-removal .sec04 {
  padding: 91px 0 99px;
}
.page-hair-removal .sec04 h2 {
  margin-bottom: 42px;
}
.page-hair-removal .sec04 h3 {
  margin-bottom: 29px;
}
.page-hair-removal .sec04 h3::after {
  margin-top: 20px;
}
.page-hair-removal .sec04 .box_center {
  text-align: center;
  max-width: 790px;
  margin-bottom: 52px;
}
.page-hair-removal .sec04 .box_center p {
  font-size: 18px;
  line-height: 2.222;
}
.page-hair-removal .sec04 .image_center {
  display: table;
  margin: 41px auto 30px;
}
.page-hair-removal .sec04 .image_center img {
  border: 1px solid #d0d0d0;
  border-radius: 10px;
}
.page-hair-removal .sec04 .box_h3 {
  margin-top: 54px;
}
.page-hair-removal .sec04 .box_h3 p,
.page-hair-removal .sec04 .box_h4 p {
  margin-bottom: 32px;
}
.page-hair-removal .sec04 .box_h3 p:last-child,
.page-hair-removal .sec04 .box_h4 p:last-child {
  margin-bottom: 0;
}
.page-hair-removal .sec04 .box_h4 {
  margin-top: 32px;
}
.page-hair-removal .sec04 .btn-group {
  margin-top: 53px;
}
.tbl_difference th {
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  border: 0;
  padding: 0.88888888em 0.2em 0.9444444444444em;
}
.tbl_difference td {
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  padding: 1em 1.5625em 1.25em;
}
.tbl_difference th, .tbl_difference td {
  width: 39%;
}
.tbl_difference th:first-child, .tbl_difference td:first-child {
  width: 22%;
}
.tbl_difference tr:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
.tbl_difference th.th_bg01 {
  background-color: #69c0a4;
}
.tbl_difference th.th_bg02 {
  background-color: #266c9e;
}
.tbl_difference td.td_bg01 {
  background-color: #ebf7f3;
}
.tbl_difference td.td_bg02 {
  background-color: #ffffff;
}
.tbl_difference td.td_bg03 {
  background-color: #f2f2f2;
}
/*******SEC05*********/
.page-hair-removal .sec05 .b_flex .b_img {
  max-width: 512px;
}
.page-hair-removal .sec05 .b_flex .b_img img {
  border-radius: 10px;
}
.page-hair-removal .sec05 .b_flex .b_cont p {
  letter-spacing: .1em;
  line-height: calc(40 / 18);
}
.page-hair-removal .sec05 .b_detail {
  counter-reset: item;
}
.page-hair-removal .sec05 .b_detail .item {
  counter-increment: item;
  border-bottom: 1px solid rgba(0, 0, 0, .2);
}
.page-hair-removal .sec05 .b_detail .item .tt::before {
  content: counter(item, decimal-leading-zero);
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  left: 1px;
  border-radius: 50%;
  font-size: 0.8333em;
  font-weight: 300;
  color: #fff;
  background-color: var(--main-color);
}
.page-hair-removal .sec05 .b_detail .item .tt::after {
  content: none;
}
/*******SEC06*********/
.page-hair-removal .sec06 h3 {
  letter-spacing: .1em;
  text-indent: 2px;
}
.page-hair-removal .sec06 .b_cont .item {
  border-bottom: 1px solid rgba(0, 0, 0, .2);
}
/*******SEC07*********/
/*******SEC08*********/
.page-hair-removal .sec08 .b_faq .ttl_faq {
  letter-spacing: .1em;
  color: #e8912b;
  border-bottom: 1px solid #dfdfdf;
}
.page-hair-removal .sec08 .b_faq .faq_group .item {
  position: relative;
  border-radius: 6px;
  background-color: #005d96;
  box-shadow: -14.142px 14.142px 51px 0px rgba(0, 0, 0, 0.1);
  z-index: 0;
}
.page-hair-removal .sec08 .b_faq .faq_group .item::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: linear-gradient(90deg, rgb(155, 200, 58) 0%, rgb(91, 203, 153) 50%, rgb(0, 184, 238) 100%);
  opacity: .2;
  z-index: -1;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question {
  position: relative;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question .tt::before,
.page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
  position: absolute;
  letter-spacing: .1em;
  line-height: 1;
  font-weight: 300;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question .tt {
  position: relative;
  letter-spacing: .1em;
  color: #fff;
  margin-bottom: 0px;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question .tt::before {
  content: "Q.";
}
.page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
  content: "A.";
  color: var(--main-color);
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question .ic {
  position: absolute;
  height: 1px;
  top: 1px;
  bottom: 0;
  margin: auto 0;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .question .ic::before,
.page-hair-removal .sec08 .b_faq .faq_group .item .question .ic::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 2;
}
.page-hair-removal .sec08 .b_faq .faq_group .question:not(.rotate) .ic::after {
  transform: rotate(90deg);
}
.page-hair-removal .sec08 .b_faq .faq_group .item .answer {
  position: relative;
}
.page-hair-removal .sec08 .b_faq .faq_group .item .answer .content {
  background-color: #fff;
  border-radius: 4px;
}
/*******SEC09*********/
.page-hair-removal .sec09 .b_doctor {
  position: relative;
  max-width: 600px;
  margin: 0 auto;
  margin-bottom: 20px;
}
.page-hair-removal .sec09 .b_doctor picture {
  border-radius: 0;
}
.page-hair-removal .sec09 .b_doctor .b_name {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
}
.page-hair-removal .sec09 .b_doctor .b_name span {
  display: block;
  text-align: center;
  font-family: var(--f-notosans);
  line-height: 1;
  letter-spacing: .1em;
}
.page-hair-removal .sec09 .b_doctor .b_name .subname {
  font-size: 1.125em;
  font-weight: 500;
  margin-bottom: 1.2222em;
}
.page-hair-removal .sec09 .b_doctor .name {
  font-size: 1.875em;
  font-weight: 700;
  color: var(--clr2);
  margin-bottom: 0.5333em;
}
.page-hair-removal .sec09 .b_doctor .b_name .en {
  font-family: var(--f-notosans);
  font-size: 0.8125em;
  font-weight: 500;
  color: var(--main-color);
}
.page-hair-removal .sec09 h4 {
  font-size: 1.5em;
  padding: 0.2917em 0.7917em 0.3333em;
}
.page-hair-removal .sec09 h4::after {
  content: none;
}
.page-hair-removal .sec09 .list01 {
  background-color: #fff;
}
/*******FIXED BANNER*********/
.page-hair-removal .fixed_banner .banner {
  position: relative;
}
.page-hair-removal .fixed_banner .banner a {
  z-index: 1;
  inset: 0;
  position: absolute;
}
.page-hair-removal .fixed_banner .banner .tt {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  letter-spacing: .065em;
  color: #fff;
  font-family: var(--f-notosans);
}
.page-hair-removal .fixed_banner .banner01 {
  background-color: #62bda0;
}
.page-hair-removal .fixed_banner .banner02 {
  background-color: #2c8e6f;
}
.page-hair-removal .fixed_banner .banner03 {
  background-color: #e2923b;
}
@media only screen and (min-width: 769px) {
  .b_grid {
    display: grid;
  }
  .b_grid .column-star1 {
    grid-row: 1 / span 3;
  }
  .b_grid .column-star2 {
    grid-column-start: 2;
    grid-row: 1 / span 3;
  }
  .page-hair-removal .key .key_text .catch {
    padding-right: 20.3em;
  }
  .page-hair-removal .key .catch::before {
    bottom: -14em;
    right: -3em;
  }
  .page-hair-removal .key .hair_bnr .tt {
    padding-right: 0.5556em;
    margin-right: 0.5556em;
    margin-bottom: 0px;
  }
  .page-hair-removal .key .hair_bnr .tt::after {
    width: 2px;
    height: 3.3333em;
    top: 0;
    right: 0px;
    margin: auto 0;
  }
  .page-hair-removal .sec01 .box_img {
    width: 50%;
  }
  .page-hair-removal .sec01 .box_cont {
    width: calc(50% - 50px);
    padding-top: 13px;
  }
  .page-hair-removal .sec02 .b_grid {
    justify-content: space-between;
    margin-bottom: 73px;
  }
  .page-hair-removal .sec02 .b_grid:last-child {
    margin-bottom: 0;
  }
  .page-hair-removal .sec02 .b_right {
    grid-template-columns: calc(50% - 56px) 50%;
  }
  .page-hair-removal .sec02 .b_left {
    grid-template-columns: 50% calc(50% - 48px);
    margin-bottom: 80px;
  }
  .page-hair-removal .sec02 h3 {
    margin-top: 9px;
  }
  .tab_fees .TabPager > div:nth-child(1) .tt:hover {
    background-color: #eb6ea5;
  }
  .tab_fees .TabPager > div:nth-child(2) .tt:hover {
    background-color: var(--clr2);
  }
  .page-hair-removal .sec03 .ttl::before {
    width: 0.4545454545454545em;
    height: 0.4545454545454545em;
  }
  .page-hair-removal .sec03 .row .item {
    width: calc(50% - 12px);
  }
  .page-hair-removal .sec03 .row .item .tbl_fees td {
    padding: 18px 3px 18px;
  }
  .page-hair-removal .sec03 .row .item .tbl_fees th:first-child,
  .page-hair-removal .sec03 .row .item .tbl_fees td:first-child {
    width: 23.8%;
  }
  .page-hair-removal .sec03 .row .item .tbl_fees th:nth-child(2),
  .page-hair-removal .sec03 .row .item .tbl_fees td:nth-child(2) {
    width: 11.5%;
  }
  .page-hair-removal .sec03 .row .item .tbl_fees th:nth-child(3),
  .page-hair-removal .sec03 .row .item .tbl_fees td:nth-child(3) {
    width: 9.5%;
  }
  .page-hair-removal .sec03 .row .item .ttl {
    margin-bottom: 15px;
  }
  .page-hair-removal .sec03 .row .item.w_lg {
    width: calc(60% - 12px);
  }
  .page-hair-removal .sec03 .row .item.w_sm {
    width: 40%;
  }
  .page-hair-removal .sec04 .box_h3.h3_mt {
    margin-top: 49px;
  }
  .page-hair-removal .sec04 .box_h3.h3_mt .image_center {
    margin-bottom: 29px;
    margin-top: 38px;
  }
  .page-hair-removal .sec05 {
    padding: 92px 0 99px;
  }
  .page-hair-removal .sec05 h2 {
    margin-bottom: 54px;
  }
  .page-hair-removal .sec05 .b_flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 55px;
  }
  .page-hair-removal .sec05 .b_flex .b_img {
    width: 50%;
  }
  .page-hair-removal .sec05 .b_flex .b_cont {
    width: 45%;
    max-width: 455px;
    padding-bottom: 10px;
  }
  .page-hair-removal .sec05 .b_flex .b_cont p {
    font-size: 1.125em;
  }
  .page-hair-removal .sec05 .b_detail {
    margin-bottom: 3.75em;
  }
  .page-hair-removal .sec05 .b_detail .item {
    padding-bottom: 50px;
  }
  .page-hair-removal .sec05 .b_detail .item:not(:last-child) {
    margin-bottom: 4em;
  }
  .page-hair-removal .sec05 .b_detail .item .tt {
    padding-left: 3.25em;
    margin-bottom: 1.7917em;
  }
  .page-hair-removal .sec05 .b_detail .item .tt::before {
    width: 2.975em;
    height: 2.975em;
    top: calc(50% - 1.425em);
  }
  .page-hair-removal .sec05 .b_detail .item .txt p:not(:last-child) {
    margin-bottom: 2em;
  }
  .page-hair-removal .sec06 {
    padding: 91px 0 98px;
  }
  .page-hair-removal .sec06 h2 {
    margin-bottom: 48px;
  }
  .page-hair-removal .sec06 h3 {
    margin-bottom: 1.25em;
  }
  .page-hair-removal .sec06 h3::after {
    margin-top: 0.875em;
  }
  .page-hair-removal .sec06 .b_cont .item {
    padding-bottom: 3.25em;
  }
  .page-hair-removal .sec06 .b_cont .item:not(:last-child) {
    margin-bottom: 2.6875em;
  }
  .page-hair-removal .sec07 {
    padding: 91px 0 99px;
  }
  .page-hair-removal .sec07 h2 {
    margin-bottom: 46px;
  }
  .page-hair-removal .sec07 .desc {
    margin-bottom: 3.375em;
  }
  .page-hair-removal .sec07 .desc p:not(:last-child) {
    margin-bottom: 2em;
  }
  .page-hair-removal .sec08 {
    padding: 91px 0 99px;
  }
  .page-hair-removal .sec08 h2 {
    margin-bottom: 56px;
  }
  .page-hair-removal .sec08 .b_cont {
    margin-bottom: 3.6875em;
  }
  .page-hair-removal .sec08 .b_faq:not(:last-child) {
    margin-bottom: 2.9375em;
  }
  .page-hair-removal .sec08 .b_faq .ttl_faq {
    font-size: 22px;
    padding-left: 0.2727em;
    padding-bottom: 0.1364em;
    margin-bottom: 1.8182em;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item:not(:last-child) {
    margin-bottom: 0.9375em;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question {
    padding: 10px 20px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .tt::before,
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
    font-size: 32px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .tt {
    font-size: 20px;
    padding-left: 46px;
    padding-right: 26px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .tt::before {
    left: 2px;
    top: 0;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
    left: 75px;
    top: 18px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .ic {
    width: 23px;
    right: 20px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer {
    padding: 0px 20px 20px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content {
    padding: 24px 56px 32px 96px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .question:hover {
    cursor: pointer;
    opacity: .7;
  }
  .page-hair-removal .sec09 {
    padding: 93px 0 0;
  }
  .page-hair-removal .sec09 h2 {
    margin-bottom: 54px;
  }
  .page-hair-removal .sec09 .b_doctor .b_name {
    padding: 1.5625em 1.3125em 1.625em 1.5em;
  }
  .page-hair-removal .sec09 .b_doctor .b_name .subname {
    margin-bottom: 1.2222em;
  }
  .page-hair-removal .sec09 .b_doctor .name {
    margin-bottom: 0.5333em;
  }
  .page-hair-removal .fixed_banner {
    font-size: min(.9vw, 0.625em);
    top: calc(50% - 25.6em);
  }
  .page-hair-removal .fixed_banner .banner {
    border-radius: 5px 0 0 5px;
    height: 14em;
  }
  .page-hair-removal .fixed_banner .banner .tt {
    font-size: 1.8em;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    -moz-text-orientation: mixed;
    -ms-text-orientation: mixed;
    text-orientation: mixed;
  }
  .page-hair-removal .fixed_banner .banner03 {
    height: 28em;
  }
  .page-hair-removal .fixed_banner .banner:not(:last-child) {
    margin-bottom: 1px;
  }
}
@media only screen and (min-width: 1921px) {
  .page-hair-removal .key {
    height: 35vw;
  }
  .page-hair-removal .key::after {
    bottom: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1560px) {
  .page-hair-removal .key {
    height: clamp(520px, 50vw, 750px);
    font-size: clamp(6px, .58vw, 8.75px);
  }
  .page-hair-removal .key .key_text {
    padding-left: 60px;
    padding-right: 60px;
  }
  .page-hair-removal .fixed_banner {
    font-size: clamp(6.4px, .5vw, 7.5px);
    top: calc(50% - 28em);
  }
}
@media only screen and (max-width: 1200px) and (min-width: 769px) {
  .page-hair-removal .key {
    z-index: 2;
  }
  .page-hair-removal h3 {
    font-size: 22px;
  }
  .page-hair-removal h3::after {
    margin-top: 8px;
  }
  .page-hair-removal .btn-group .btn.style01 {
    max-width: 550px;
  }
  .page-hair-removal .sec01 .btn-group {
    margin-bottom: 45px;
  }
  .page-hair-removal .btn-group .btn.style01 a {
    font-size: 20px;
  }
  .page-hair-removal .sec01 {
    padding-top: 50px;
    padding-bottom: 70px;
  }
  .page-hair-removal .sec01 h2 {
    margin-bottom: 25px;
  }
  .page-hair-removal .sec01 .box_cont {
    width: calc(50% - 30px);
  }
  .page-hair-removal .sec02 {
    padding: 70px 0;
  }
  .page-hair-removal .sec02 .b_grid {
    margin-bottom: 40px;
  }
  .page-hair-removal .sec02 h3 {
    margin-top: 0;
    margin-bottom: 20px;
  }
  .page-hair-removal .sec02 .b_right {
    grid-template-columns: calc(54% - 30px) 46%;
  }
  .page-hair-removal .sec02 .b_left {
    grid-template-columns: 46% calc(54% - 28px);
    margin-bottom: 40px;
  }
  .page-hair-removal .sec02 .btn-group {
    margin-top: 40px;
  }
  .page-hair-removal .sec03 {
    padding: 70px 0;
  }
  .page-hair-removal .sec03 h2 {
    margin-bottom: 25px;
  }
  .page-hair-removal .sec03 .ttl {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .tab_fees .TabContent .content > div {
    padding: 40px 5%;
  }
  .tbl_fees th, .tbl_fees td {
    font-size: min(14px, 1.5vw);
  }
  .page-hair-removal .sec03 .l_note li {
    font-size: 13px;
  }
  .page-hair-removal .sec03 .btn-group {
    margin-top: 40px;
  }
  .tbl_difference th {
    font-size: 16px;
  }
  .page-hair-removal .sec04 .box_center {
    margin-bottom: 35px;
  }
  .page-hair-removal .sec04 .box_center p {
    font-size: 16px;
  }
  .page-hair-removal .sec04 .btn-group {
    margin-top: 40px;
  }
  .page-hair-removal .sec08 .b_faq .ttl_faq {
    font-size: 20px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content {
    padding-left: 66px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
    left: 45px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .tt {
    font-size: 18px;
  }
  .page-hair-removal .sec08 .b_faq .faq_group .item .question .tt::before, .page-hair-removal .sec08 .b_faq .faq_group .item .answer .content::before {
    font-size: 28px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 992px) {
  .page-hair-removal .key {
    height: clamp(420px, 50vw, 750px);
    font-size: clamp(4.7px, .6vw, 8.75px);
  }
  .page-hair-removal .key .key_text {
    padding-left: 40px;
    padding-right: 40px;
  }
}