/*フォント*/
@import url("https://fonts.googleapis.com/css2?family=Anton&family=Archivo+Black&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Cinzel:wght@400..900&family=DM+Serif+Display:ital@0;1&family=Dela+Gothic+One&family=Kaisei+Decol&family=Libre+Caslon+Display&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Pinyon+Script&family=Sawarabi+Gothic&family=Shippori+Mincho&family=Zen+Kaku+Gothic+New&family=Zen+Maru+Gothic&display=swap");

body {
  font-family: "Noto Serif JP", serif;
  font-size: 14px;
  line-height: 1.8;
  color: #2a2a2a;
}
.btn_totop {
  /* display: none; */
}
.top_menu ul li a p,
.contents_header p,
.cont_titile span,
.top_topics .sh,
.ranking .therapist-box .rank {
  font-family: "Zen Antique", serif;
  text-transform: uppercase;
  font-weight: 100;
  letter-spacing: 2px;
}
.cont_titile {
  line-height: 1.6;
  padding: 1rem 0 1.05rem;
}
.cont_titile span,
.contents_header p {
  font-size: 1.5rem;
  font-weight: 600;
}
 {
  font-size: 1.5rem;
  font-weight: 600;
}
.contents_header,
.cont_titile {
  font-size: 0.8rem;
}
@media screen and (min-width: 640px) {
  .contents_header,
  .cont_titile {
    /* font-size: 26px; */
  }

  .cont_titile {
    line-height: 1.6;
    padding: 4rem 0 3rem;
  }
}
.btn_tel.pc .material-icons {
  margin-right: 5px;
  margin-top: 2px;
}
.nav_follow .btn_tel a {
  display: flex;
  justify-content: center;
  align-content: center;
}

.contents {
  margin: 0;
  padding: 2rem 0 40px;
}
.profile-twi span,
.top_twitter span {
  display: flex;
  justify-content: center;
  align-items: center;
}
.ekkusu {
  font-family: "Noto Serif JP", serif;
  font-size: 1.5rem;
  margin-bottom: 0.35rem;
}
main {
  position: relative;
}
main::before {
  content: "";
  display: block;
  background: url(../img/bg.jpg);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
.inner_page .btn01 {
  margin-top: 2rem;
}
@media screen and (max-width: 640px) {
  .nav_follow .logo img {
    padding-top: 0.5rem;
  }
}
@media screen and (min-width: 640px) {
  main::before {
  }
}

.label-wrap {
  /* display: none; */
}
.room {
  /* display: none; */
}
body {
  /* font-weight:200; */
}
.inner {
  width: 100%;
}
.top_app,
.top_blog,
.top_credit,
.top_access,
.top_link {
  padding: 0 1rem;
}
@media screen and (min-width: 640px) {
  .top_information .information_list li {
    height: 140px;
  }
  .top_diary .diary_list li {
    /* height: 140px; */
  }
}
/*end*/

@media screen and (min-width: 640px) {
  .top_access .access-box {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    align-items: center;
  }
  .top_access .access-box .ggmap {
    width: 100%;
    margin: 0;
  }
  .top_access .access-box {
    padding: 0 2rem;
  }
  .top_access .btn01 {
    margin: 50px auto 25px auto;
  }
}

/*header,toggle*/
.nav_follow {
  padding: 0 0 0 10px;
}

.toggle span {
  width: 90%;
}
.toggle.active span:nth-child(2),
.toggle.active span:nth-child(3) {
  right: 0;
}

.global_nav_sp ul li a {
  font-size: 15px;
}

.global_nav_sp a span {
  font-size: 12px;
}

/*footer*/

footer small {
  font-size: 14px;
}
.f-hours {
  display: flex;
}
.f-hours div {
  width: 50%;
  margin: 0 auto;
  font-size: 12px;
}
.f-hours div:last-child {
  /* display: none; */
}

/*contents header*/

/* ---- particles.js container ---- */
#particles-js {
  position: absolute;
  width: 100%;
  height: 100vh;
  /* background-color: #232741; */
  /* background-image: url(""); */
  background-repeat: no-repeat;
  background-size: 20%;
  background-position: 50% 50%;
  z-index: 1;
}

.count-particles {
  border-radius: 0 0 3px 3px;
}
#scroll-top {
  opacity: 0;
  transition: opacity 350ms ease;
}
.no-schedule {
  font-size: 1rem;
  padding: 1rem 1rem 0;
  font-weight: bold;
}
.no-schedule .btn01 {
  margin-top: 2rem;
}
@media screen and (min-width: 640px) {
  .no-schedule {
    font-size: 1.2rem;
    text-align: center;
  }
  .no-schedule .btn01 {
    font-size: 14px;
  }
}
.error .text p {
  margin-bottom: 2rem;
}
.error .text p.btn01 a {
  padding: 10px;
}

/*************** color ***************/

/* common */

body {
  color: #2a2a2a;
}
a {
  color: #2a2a2a;
}
/* a:link {
	color: #2a2a2a;
} */

/* a:visited {
	color: #2a2a2a;
}

a:hover {
	color: #2a2a2a;
}

a:active {
	color: #2a2a2a;
} */
option {
  color: #2a2a2a;
}
select {
  color: #2a2a2a;
}
.btn01 a {
  background: #2a2a2a;
  color: #fff;
}
.cont_titile {
  color: #2a2a2a;
}
.cont_titile span {
  color: #2a2a2a;
}
.cont_titile a {
  color: #2a2a2a;
}

/* header */

.nav_follow {
  background: #fff;
  /* border-image: linear-gradient(to top, #0053c5 78%, #cff0f7 100%); */
}
.toggle {
  /* background: rgba(255,255,255,0.7); */
}
.toggle span {
  border-bottom: solid 1px #2a2a2a;
}
.global_nav_sp {
  background: rgba(255, 255, 255, 0.95);
  color: #454545;
}
.global_nav_sp ul li a {
  color: #2a2a2a;
}
.global_nav_sp a span {
  color: #ccc;
}
@media screen and (min-width: 640px) {
  .fix-header {
    background: #fff;
  }
  .nav_follow .head_btn.reserve a {
    background: #2a2a2a;
    color: #fff;
  }
}

/*footer */

footer {
  /* background: #ebf3ff; */
}
footer small {
  color: #2a2a2a;
}
.foot_navi {
  background: #2a2a2a;
}

.foot_navi a {
  color: #fff;
}
.f-hours {
  background: #2a2a2a;
  color: #fff;
  border-top: 1px solid #666;
}
footer ul.foot_navi_list a {
  color: #2a2a2a;
}

@media screen and (min-width: 640px) {
  footer ul.foot_navi_list li {
    border-left: 1px solid #bbb;
  }
}

/* index */

.mainvisual .mainlogo {
  display: flex;
  flex-direction: column;
}
.mainvisual .global-nav {
  background: rgba(0, 0, 0, 1);
  display: none;
}
.mainvisual .global-nav a {
  color: #fff;
}
.mainvisual .global-nav a span {
  color: #bbb;
}
.mainvisual .global-nav_list li + li {
  /* border-right: 1px solid #bbb; */
}
@media screen and (min-width: 768px) {
  .mainvisual .global-nav_list li:first-child {
    /* border-right: 1px solid #bbb; */
  }
}

/*--------*/

.top_topics {
  /* background: #2a2a2a; */
  /* margin: 1rem auto; */
}
.top_topics .sh {
  /* background: linear-gradient(15deg, rgba(224,40,40,1) 0%, rgba(254,151,151,1) 260%, rgba(224,40,40,1) 100%); */
  background: #282828;
  color: #fff;
}
.top_information .information_list li {
  border-bottom: 1px solid #ccc;
}
.top_diary .diary_list li:nth-of-type(n + 2) {
  border-top: 1px dashed #ccc;
}

.top_app h3 {
  background: #efefef;
}
.top_app .btn_webreserve {
  box-shadow: 0px 1px 6px #ccc;
}
.top_menu ul li a {
  color: #fff;
  background: rgba(0, 0, 0, 0.2);
}
.top_menu ul li a:hover {
  background: rgba(0, 0, 0, 0);
}
@media screen and (min-width: 640px) {
  .top_menu ul li {
    background: #ccc;
  }
}
.top_access {
  background: #f4f4f4;
}
.top_access .access-box {
  border-bottom: 1px solid #2a2a2a;
}
.top_contents,
.top_eventbanner {
  /* background: #fff; */
}
.top_schedule,
.top_blog,
.top_access {
  background: #f4f4f4;
}
/*top information*/
.top_infoarea {
  /* background: #fbf5ed; */
}
.top_therapist {
  /* background: #fbf5ed; */
}
.top_credit {
  /* background: #fbf5ed; */
}
.realtime-box {
  /* background: rgba(0, 0, 0, 0.7); */
  border: 1px solid #ccc;
}

/* schedule */

.calendar {
  border-bottom: 1px solid #ccc;
}
.calendar ul li {
  background: rgba(255, 255, 255, 0.8);
}
.calendar ul li.target {
  background: #f4f0e9;
}

.calendar ul li.sat a {
  color: #0043ff;
}

.calendar ul li.sun a {
  color: red;
}
.calendar ul li a {
  border: 1px solid #ccc;
}
.schedule label {
  background: #fff;
  border: 1px solid #ccc;
}
.schedule input:checked + label {
  background-color: #ebf3ff;
  color: #2a2a2a;
}

/* blog */

.blog_list li {
  border-bottom: 1px solid #ccc;
}

/* access */

/* event */

/* price */

.attention {
  border: 1px solid #666;
}
.attention dd {
  border-bottom: 1px dotted #666;
}
.price h2 {
  border-bottom: 1px solid #666;
}
.price-detail dt {
  border-bottom: 1px solid #666;
}
.price-detail dd {
  border-bottom: 1px solid #666;
}
dd.none {
  color: #666;
}
.detail-dd {
  color: #999;
}

/* ranking */

.ranking .therapist-box {
  border-bottom: 1px solid #ccc;
}
.ranking .therapist-box .rank {
  background: #e7e7e7;
  color: #666;
}
.ranking .therapist-box .rank1 {
  border-bottom: 1px solid #d3bd7e;
  color: #c59719;
  background: none;
}
.ranking .therapist-box .rank2 {
  border-bottom: 1px solid #ccc;
  color: #909fab;
  background: none;
}
.ranking .therapist-box .rank3 {
  border-bottom: 1px solid #91675a;
  color: #8d4523;
  background: none;
}
.ranking .therapist-box .comment dt {
  border-bottom: 1px dashed #666;
}
ul.ranking_list li {
  border: 1px solid #ccc;
}
.therapist-box.rank1box {
  /* background: #fffad3; */
}
.therapist-box.rank2box {
  /* background: #f2f2f2; */
}
.therapist-box.rank3box {
  /* background: #fbe9dc; */
}

/* recruit */

.recruit .recruit-point dd {
  /* border-bottom: 1px solid #CCC; */
}
.recruit .recruit-point dd h3 {
  background: #ffe7f4;
}
.recruit-detail dl dt {
  background: #ffe7f4;
  background: #ed80ad;
  color: #fff;
  text-align: center;
}
.recruit-detail dl dd {
  background: #fff;
}
.recruit-detail dl dd p a {
  border: 1px solid #666;
  background: rgb(232, 232, 232);
  background: linear-gradient(0deg, rgba(232, 232, 232, 1) 0%, rgba(255, 255, 255, 1) 38%);
}
.recruit-contact-wrap dl dd p a {
  background: #f2689c;
  color: #fff;
  filter: drop-shadow(1px 1px 1px #bbb);
}
.recruit-contact-wrap dl dd .second a {
  background: #05d745;
}
.recruit-contact-wrap dl dd .third a {
  background: #709aee;
}

/* reserve */

.reserve-btn a {
  border: 1px solid #666;
  background: rgb(232, 232, 232);
  background: linear-gradient(0deg, rgba(232, 232, 232, 1) 0%, rgba(255, 255, 255, 1) 38%);
}
.mailform-tbl tbody tr th {
  border-top: 1px solid #ccc;
}
.mailform-tbl input[type="text"],
.mailform-tbl input[type="email"],
.mailform-tbl textarea {
  border: 1px solid #999;
}
.mailform-tbl select {
  border: 1px solid #999;
  background: #fff;
}
.ccb-lower {
  background: #fff;
  border: 1px solid #ccc;
}
p#submit-button input {
  background: #454545;
  color: #fff;
}
span.attention {
  color: red;
}
.mw_wp_form_complete {
  border: 1px solid #ccc;
}

/* sitemap */

.sitemap h3 {
  background: #efefef;
}

/* cast */

.catchcopy-box {
  background: #fff;
}
.therapist-box p.catchcopy {
  color: #2a2a2a;
}
.therapist-box .profile-icon li {
  /* border: 1px solid #0053c5; */
  background: #2a2a2a;
  color: #fff;
}
.therapist-box .todays-time p {
  background: #2a2a2a;
  color: #fff;
}
.therapist-box .guide {
  border: 1px #ccc solid;
  background: #fff;
}
.therapist-single h1.name {
  border-bottom: 1px solid #ccc;
}
.therapist-single .profile-icon li {
  /* border: 1px solid #0053c5; */
  background: #2a2a2a;
  color: #fff;
}
.therapist-box .photo .today-icon {
  border-color: transparent #e22d2d transparent transparent;
}
.therapist-box .photo .today-icon span {
  color: #fff;
}
.therapist-single .photo .today-icon {
  border-color: transparent #e22d2d transparent transparent;
}
.therapist-single .photo .today-icon span {
  color: #fff;
}
.therapist-single .btn_scheudle a {
  border: 1px solid #666;
  background: rgb(232, 232, 232);
  background: linear-gradient(0deg, rgba(232, 232, 232, 1) 0%, rgba(255, 255, 255, 1) 38%);
}
.therapist-single .pickup dt {
  background: #efefef;
}
.therapist-single .comment {
  border: 1px solid #ccc;
}
.therapist-single .comment dt {
  background: rgba(255, 255, 255, 0.7);
}
.therapist-single .comment.cast dt {
  background: #ffdbdb;
}
.therapist-single .comment.master dt {
  background: #cedce9;
}
.therapist-single .comment dd {
  background: rgba(255, 255, 255, 0.7);
}
.single-cast-calendar .calendar ul li {
  border-bottom: 1px solid #ccc;
}
.single-cast-calendar .calendar ul li.sat a.date {
  color: #0043ff;
}
.single-cast-calendar .calendar ul li.sun a.date {
  color: red;
}
.single-cast-calendar .calendar ul li .schedule-castreserve-btn {
  border: 1px solid #ccc;
  background: rgb(232, 232, 232);
  background: linear-gradient(0deg, rgba(232, 232, 232, 1) 0%, rgba(255, 255, 255, 1) 38%);
}
.therapist-single .calendar ul li .schedule-castreserve-btn span {
  color: #666;
}

/* 口コミ */
.css-auobc3 {
  border-bottom: 1px solid #bbb;
}
.css-1cpjif9 {
  color: #2a2a2a;
}
.css-1v7shu4 {
  color: #2a2a2a;
}
.css-u60qnr {
  color: #2a2a2a !important;
}
.profile-review {
  background: #fff;
}

/*************** カスタム ***************/
.therapist-box .profile-icon li,
.therapist-single .profile-icon li {
  background: linear-gradient(147deg, rgba(144, 114, 30, 1) 0%, rgba(217, 186, 83, 1) 100%);
  color: #fff;
  font-size: 0.5rem;
}
@media screen and (max-width: 640px) {
  .schedule h3 a {
    font-size: 0.75rem;
    text-align: center;
  }
  .therapist-box p.date {
    font-size: 0.75rem;
    text-align: center;
  }
  .therapist-box .todays-time p,
  .guide {
    font-size: 0.75rem;
    text-align: center;
  }
}
.catchcopy {
  display: none;
}
.toggle {
  width: 50px;
  height: 44px;
  background: #00000040;
}
.toggle span {
  border-bottom: solid 1px #fff;
  width: 72%;
}
.toggle span:nth-child(1) {
  top: 5px;
}

.toggle span:nth-child(2) {
  top: 16px;
}

.toggle span:nth-child(3) {
  top: 26px;
}

.toggle.active span:nth-child(1) {
  top: 17px;
  left: 4px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: 1px solid #fff;
}

/* 2番目と3番目のspanを45度に */
.toggle.active span:nth-child(2),
.toggle.active span:nth-child(3) {
  top: 17px;
  left: 9px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: 1px solid #fff;
}
.f-hours {
  position: fixed;
  left: 0;
  bottom: 63px;
  text-align: center;
  background: #ffffffad;
  width: 100%;
  z-index: 999;
  height: 1.5rem;
  line-height: 1.6;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  font-size: 0.75rem;
  padding-left: 0.25rem;
  border-top: 1px solid #bbb;
  border-bottom: 1px solid #bbb;
  color: #2a2a2a;
}

.f-hours div {
  padding-right: 0.5rem;
  /* font-size: 0.9rem; */
}
.global_nav_sp {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateX(100%);
  z-index: 1001;
  /* padding-top: 75px; */
  text-align: center;
  color: #2a2a2a;
  transition: all 0.8s;
  background: #2a2a2acc;
  opacity: 1;
  padding: 0.5rem 0;
}
.global_nav_sp a {
  padding: 0 0;
  display: block;
  line-height: 1.4;
  color: #ffffff !important;
  text-shadow: 0px 0px 7px #ffffff;
  letter-spacing: 2px;
}
.global_nav_sp a span {
  display: block;
  font-size: 12px;
  color: #ffffff !important;
  text-shadow: 0px 0px 7px #ffffff;
  text-transform: uppercase;
}
.global_nav_sp ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
.global_nav_sp ul li {
  padding: 0.5rem 0;
  width: 80%;
  border-bottom: 1px dotted #bbb;
}
.global_nav_sp ul li a {
  padding: 0;
  font-size: 12px;
}
.foot_navi li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 0px 11px;
  /* font-size: 13px; */
  justify-content: center;
  height: 45px;
  line-height: 1.2;
  text-align: center;
  background: linear-gradient(#919191, #4b4b4b);
  color: #ffffff;
  border-right: 1px solid #ccc;
  text-shadow: 0 0 5px #ffffff;
  font-size: 0.45rem;
}
.mainvisual .global-nav {
  display: none;
}
@media screen and (max-width: 768px) {
  .nav_follow {
    background: none;
    border: none;
  }
  .nav_follow .logo {
    display: none;
  }
}
.mainvisual {
  padding: 0;
}
.catch {
  color: #fff;
  font-size: 1rem;
  text-align: center;
  display: flex;
  justify-content: center;
  line-height: 1.3;
  letter-spacing: 3px;
  margin-top: 1rem;
  flex-direction: column;
  filter: drop-shadow(0px -1px 2px rgba(255, 255, 255, 0.4)) drop-shadow(0px -1px 2px rgba(255, 255, 255, 0.4)) drop-shadow(0px 0px 2px rgba(255, 255, 255, 0.4));
  border: 1px solid;
  width: 90%;
  padding: 4px;
  font-size: 0.8rem;
}
.btn01 a {
  background: #2a2a2a;
  width: max-content;
  box-sizing: border-box;
  text-align: center;
  margin: 15px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  position: relative;
  font-size: 14px;
  border-radius: 2px;
  text-shadow: 0 0 8px #ffffff;
  border: 1px solid;
}
.global_nav_sp .sns {
  display: none;
}
footer .logo {
  width: 28%;
}
footer {
  margin-bottom: 3.25rem;
}
footer .sns {
  display: none;
}
footer ul.foot_navi_list a {
  display: none;
}
footer small {
  color: #fff;
  text-shadow: 0 0 5px #ffffff;
  padding: 16% 0 0;
}
footer .btn_tel {
  font-size: 0.85rem;
  width: auto;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 1rem;
  color: #fff;
  text-shadow: 0px 0px 7px #fff;
}

footer .btn_tel a {
  /* padding: 1rem; */
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #fff;
  text-shadow: 0px 0px 7px #ffffff;
}
footer .inner .logo {
  padding-top: 20%;
}
.top_info-wrap {
  padding: 0.75rem 0.25rem 1rem;
}
.top_info-box {
  border: 1px solid #bbb;
  padding: 1.5rem 1rem;
  line-height: 1.6;
  background: rgba(255, 255, 255, 0.5);
  color: #2a2a2a;
}
.top-guide {
  display: block;
  width: 100%;
  border-bottom: 1px solid #454545;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  font-weight: bold;
}
.top_eventbanner {
  width: 100%;
  max-width: unset;
}

.mainvisual .slick-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slider-nav2 .slick-slide img,
.slider-nav3 .slick-slide img {
  opacity: 0.3;
  transition: opacity 0.3s linear;
}
.slick-current img {
  opacity: 1 !important;
}
.top_info-box a {
  text-decoration: underline;
}
.top_schedule,
.top_blog,
.top_access {
  background: none;
}
.top_caution {
  width: 93%;
  margin: 0 auto;
  max-width: 1000px;
}
.headsup-dt {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  border-bottom: 1px solid #ccc;
  padding: 5px;
  margin: 1rem 0 1rem 0;
}
.catch {
  left: 23.5%;
  right: 0;
  top: 67%;
  bottom: 0;
  z-index: 3;
  border: 1px solid #fff;
  height: 0.5rem;
  padding-bottom: 7px;
  font-size: 0.7rem;
}
.therapist-box {
  border: 2px solid #e7ce78;
  padding: 3px;
  background: #fff;
  border-radius: 7px;
}

.therapist-single .photo {
  border: 2px solid #e7ce78;
  padding: 0.5rem;
  background: #fff;
  border-radius: 7px;
  height: fit-content;
  box-sizing: border-box;
  margin: 0;
}

.therapist-single .frame {
  background-image: url(../img/cast_frame.png);
  width: 58px;
  height: 58px;
  position: absolute;
  background-size: cover;
}

.therapist-single .frame.lt {
  left: -19px;
  top: -19px;
  z-index: 100;
  transform: scale(-1, 1);
}
.therapist-single .frame.rt {
  right: -19px;
  top: -19px;
  z-index: 100;
}

.therapist-single .frame.lb {
  left: -19px;
  bottom: -27px;
  z-index: 100;
  transform: scale(-1, -1);
}

.therapist-single .frame.rb {
  right: -19px;
  bottom: -27px;
  transform: scale(1, -1);
  z-index: 100;
}
.shingle-single {
  position: relative;
}
.therapist-single .therapist-name {
  position: absolute;
  width: 100%;
  background: #ffffffd4;
  margin: 0 auto;
  text-align: center;
  bottom: 15%;
}
@media screen and (min-width: 640px) {
  .therapist-single .therapist-name {
    bottom: 14.8%;
  }
}
.therapist-name h1.name,
.therapist-name .data {
  position: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
}
.grade-icon {
  font-size: 0.8rem !important;
  /* padding: 0.25rem 0.25rem !important; */
  text-align: center;
  margin: 0 !important;
}
@media screen and (min-width: 640px) {
  .grade-icon {
    padding: 0.25rem 0.25rem;
    font-size: 1.25rem;
  }
  footer .inner .logo {
    padding-top: 0%;
    width: 17%;
  }
  footer small {
    padding: 10% 0 1rem;
  }
  .nav_follow {
    background: #000;
    color: #fff;
    height: 71px;
  }
  .global-nav_list a,
  .nav_follow .btn_tel a {
    color: #fff;
  }
  .nav_follow .logo {
    width: 45px;
    padding-top: 4px;
  }
}
.therapist-single .comment dd {
  font-size: 15px;
  line-height: 1.4;
  padding: 0 0 15px 0;
  background: unset;
}
.price-frame {
  background: #00000059;
  text-shadow: 0 0 7px #fff;
  color: #fff;
}
.price dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  .price dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 95%;
    margin: 0 auto;
  }
  .blog_list li {
    display: block;
  }
  .blog_list li .image,
  .blog_list li .disc {
    width: 100%;
  }
}
.price dl dt {
  width: 75%;
  border-bottom: 1px dotted #ccc;
  padding: 10px 0;
}
.price dl dd {
  width: 25%;
  text-align: right;
  border-bottom: 1px dotted #ccc;
  padding: 10px 0;
}
.price h2 {
  border: none;
}
.price-discri {
  width: 100%;
  text-align: center;
  background: #00000063;
  text-shadow: 0 0 7px #fff;
  color: #fff;
  margin-bottom: 2rem;
}

.price-discri dl {
  width: 100%;
}
.price-discri dt {
  width: 100%;
  font-size: 16px;
  font-weight: 400;
  text-align: center;
  padding: 1rem 0 0;
}
.price-discri dd {
  width: 100%;
  padding: 0.5rem 0 1rem;
  border-bottom: 1px solid #bbb;
}
.detail-dd {
  color: #fff;
}
.price h2 {
  display: none;
}

.headsup h2 {
  border-bottom: 1px solid #666;
  display: block;
}
.top_recruit img {
  width: 100%;
}
.blog .image img {
  aspect-ratio: unset;
}
@media screen and (min-width: 640px) {
  .blog .blog_list li img {
    aspect-ratio: unset;
  }
}
.single-cast-calendar .calendar ul li {
  justify-content: space-around;
}
.single-cast-calendar .calendar ul li .schedule-castreserve-btn {
  display: none;
}
.calendar ul li {
  background: none;
}
@media screen and (min-width: 640px) {
  header .btn_tel {
    font-size: 0.78rem;
    text-align: center;
    display: block !important;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    align-content: flex-end;
    margin: 0 15px 0 auto;
  }
}
@media screen and (min-width: 640px) {
  .global-nav_list li a span {
    font-size: 9px !important;
    color: #bbb !important;
  }
  .global-nav_list a {
    font-size: 0.69vw;
    padding: 0 2rem;
  }
  .global-nav_list li {
    padding: 0;
  }
  .global-nav_list li + li {
    border-left: 1px solid #bbb;
  }
}
@media screen and (min-width: 640px) {
  .top_info-wrap {
    padding: 0.75rem 0.25rem 1rem;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
  }
  .therapist-box .profile-icon li,
  .therapist-single .profile-icon li {
    font-size: 10px;
  }
  footer {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
.therapist-box p.date {
  padding: 0 0 6px 0;
  text-align: center;
}
.therapist-single .comment.vvvf dd {
  background: #fff;
  padding: 10px;
}
/*************** 年齢認証 ***************/
.age-gate__wrapper {
  padding: 0;
}
.age-gate {
  background: rgba(0, 0, 0, 0.6);
  color: #212121;
  max-width: 900px;
  height: 75vh;
  border: 1px solid #fff !important;
  padding: 0;
}
.age-gate__form {
  height: 80vh !important;
}
.age-gate__background-color {
  /* background-image: url(../img/age-gate-bg.jpg); */
  -webkit-backdrop-filter: blur(2px) !important;
  backdrop-filter: blur(2px) !important;
  background: rgba(0, 0, 0, 0.4);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}
.age-gate__background-color {
  background-image: none !important;
}
.age-gate__submit {
  /* background: linear-gradient( 180deg ,#454545 0%, #000 100%); */
  background: rgba(0, 0, 0, 0);
}
.age-gate__heading {
  width: 100%;
  max-width: 184px;
}
.age-gate__challenge {
  margin-bottom: 1rem;
  color: #fff;
}
button.age-gate-button,
button.age-gate-submit-no,
button.age-gate-submit-yes,
button.age-gate__button,
button.age-gate__submit--no,
button.age-gate__submit--yes {
  background: #ff0099;
}
.age-gate-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 2.5rem !important;
}

.age-gate-link > div {
  margin-top: 1rem !important;
  font-size: 12px;
}

.age-gate-link img {
  width: 100%;
}

.age-gate__link-area > div {
  display: grid;
  flex-wrap: wrap;
  justify-content: flex-start;
  max-width: 1200px;
  grid-template-columns: repeat(auto-fit, 47.2%);
}

@media screen and (min-width: 420px) {
  .age-gate__link-area > div {
    grid-template-columns: repeat(auto-fit, 49%);
    grid-gap: 1%;
  }
}

@media screen and (min-width: 640px) {
  .age-gate {
    height: 50vh;
  }
  .age-gate__background-color {
    background: rgba(0, 0, 0, 0.4);
  }
  .age-gate__form {
    height: 58vh !important;
  }
}

@media screen and (min-width: 768px) {
  .age-gate__link-area > div {
    grid-template-columns: repeat(auto-fit, 24%);
    grid-gap: 1%;
  }
}

@media screen and (min-width: 1200px) {
  .age-gate__link-area > div {
    grid-template-columns: repeat(auto-fit, 18.2%);
    grid-gap: 1%;
  }
}
.age-gate__buttons {
  width: 100%;
  display: flex;
  justify-content: space-around;
  padding: 0 1rem;
  position: relative;
}
.age-gate-text {
  position: absolute;
  z-index: -1;
  font-size: 4rem;
  font-weight: 200;
  left: 0;
  right: 0;
  width: 100%;
  display: block;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}

.age-gate__submit {
  width: 45%;
  padding: 2rem 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 !important;
}
.age-gate-link {
  padding: 0 1.5rem 3rem;
}
.age-gate__subheadline {
  display: none;
}
.age-gate-form,
.age-gate__form {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-evenly;
}
.kin {
  margin-top: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  font-weight: 600;
}
button.age-gate-submit-yes,
button.age-gate__submit--yes {
  background: #000;
  border: 1px solid #fff;
}

button.age-gate-submit-no,
button.age-gate__submit--no {
  background: #a3a3a3;
  border: 1px solid #fff;
}
.age-gate__challenge {
  font-size: 1.5rem;
}
.age-gate__link-area a {
  color: #fff;
}
.foot_navi {
  background: none;
}
@media screen and (min-width: 640px) {
  .foot_navi {
    display: block;
    position: fixed;
    right: 5px;
    bottom: 15px;
    width: 100px;
    display: flex;
    flex-direction: column;
  }
  .foot_navi li a {
    background: none;
    border-right: none;
    border-radius: 50%;
    height: 80px;
    width: 80px;
    margin: 0.25rem;
    padding: 0;
    font-size: 0.6rem;
  }
  .foot_navi .btn_tel a {
    background: rgba(206, 0, 0, 0.8);
  }

  .foot_navi .btn_line a {
    background: rgb(80 175 69 / 80%);
  }

  .foot_navi .btn_recruit a {
    background: rgba(255, 162, 189, 0.8);
  }

  .foot_navi .btn_totop a {
    background: #deb887d1;
  }

  .foot_navi .btn_reserve a {
    background: #6495edb0;
  }
}
@media screen and (min-width: 640px) {
  .contents_header p {
    font-size: 2.5rem;
  }
  .therapist-single .grade-icon {
    font-size: 1.25rem !important;
  }
}
.therapist-single .therapist-name.pc {
  position: unset;
  background: none;
  text-align: left;
}
.therapist-name.pc h1.name,
.therapist-name.pc .data {
  justify-content: flex-start;
}
