/*--------------------------------
Page 共通
--------------------------------*/

@import url('https://fonts.googleapis.com/css2?family=Hachi+Maru+Pop&display=swap');

html {
  font-size: 16px;
}
body {
  font-family: "Hachi Maru Pop","Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
  background: #f5a21b repeating-linear-gradient(135deg,transparent,transparent 1rem,#f17e02 1rem,#f17e02 2rem);
  color: #1a1a1a;
  font-feature-settings: "palt";
}
img {
  vertical-align: middle;
}
header {
  width: 100%;
  position: fixed;
  height: 4rem;
  z-index: 99;
  transition: ease 0.3s;
}
.h-bg {
  background: rgba(255,255,255,0.5);
}
main {
  width: 100%;
}
.logo-area {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 3;
}
.logo-area a {
  display: block;
  background: url("../img/h-logo.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 216px;
  height: 2rem;
  filter: drop-shadow(1px 1px 1px black);
}
#nav {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  right: -100%;
  text-align: left;
  padding: 4rem 1rem 0;
  background: rgba(255,255,255,0.9);
  transition: ease 0.5s;
}
.open #nav {
  right: 0;
}
#nav ul {
  width: 100%;
  list-style: none;
}
#nav li {
  border-bottom: 1px solid #420246;
  font-size: 1.25rem;
  font-weight: 600;
}
#nav p {
  font-size: 0.75rem;
  line-height: 1;
  display: inline;
  padding: 0 1rem;
}
.close-btn {
  padding: 0.5rem 0;
  color: #420246;
  font-weight: 600;
}
#nav .close-btn {
  border-bottom: 0;
  text-align: center;
}
#nav a {
  width: 100%;
  display: block;
  color: #420246;
  text-decoration: none;
  padding: 0.5rem 0;
  font-weight: 600;
  filter: drop-shadow(1px 0px 1px #fff);
  text-shadow: 1px 1px 1px #fff;
}
#nav-toggle {
  position: fixed;
  top: 1.25rem;
  right: 1rem;
  width: 2rem;
  height: 2rem;
  cursor: pointer;
  z-index: 2;
}
#nav-toggle > div {
  position: relative;
}
#nav-toggle span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #420246;
  position: absolute;
  transition: ease-in-out 0.35s;
  filter: drop-shadow(0px 2px 1px #fff);
}
#nav-toggle span:nth-child(1) {
  top: 0;
}
#nav-toggle span:nth-child(2) {
  top: 0.75rem;
}
#nav-toggle span:nth-child(3) {
  top: 1.5rem;
}
.open #nav-toggle span:nth-child(1) {
  top: 0.75rem;
  transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 0.75rem;
  transform: rotate(-45deg);
}
.container {
  width: 100%;
  padding: 0 1rem;
}
.more-btn {
  width: 100%;
  margin: 0 0 1rem;
}
.more-btn a,
.more-btn02 a {
  display: block;
  width: 100%;
  padding: 0.5rem 1rem;
  text-align: center;
  text-decoration: none;
  color: #420246;
  background: #fff;
  border: 1px solid #420246;
  font-weight: 600;
}
.more-btn i,
.more-btn02 i {
  margin-left: 0.25rem;
}
.map-box {
  color: #420246;
}
.map-box iframe {
  width: 100%;
  height: 380px;
}
.map-wrap {
  width: 100%;
  padding: 1rem;
  background: #faf2f3;
}
.link-bnr-wrap {
  width: 100%;
  padding: 1rem 0;
}
.reserve-bnr,
.qa-bnr,
.recruit-bnr {
  margin: 1rem 0;
}
.reserve-bnr a,
.qa-bnr a,
.recruit-bnr a {
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 1rem;
  font-size: 1.5rem;
  color: #fff;
  background: #420246;
  line-height: 1.2;
}
.reserve-bnr a p,
.qa-bnr a p,
.recruit-bnr a p {
  font-size: 0.75rem;
}
.under-main {
  padding-top: 3.5rem;
}
.pager {
  width: 100%;
  padding: 1rem 0 2rem;
}
.pager ul {
  display: flex;
  justify-content: center;
}
.pager li a {
  display: block;
  text-decoration: none;
  padding: 0.25rem 0.75rem;
  margin: 0 0.25rem;
  border: 1px solid #420246;
  color: #420246;
}
.pager li a.pager-current {
  background: #420246;
  color: #fff;
}
.bottom-link-wrap {
  padding:1rem 0;
}
.bottom-link-wrap ul {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}
.bottom-link-wrap li {
	padding:0.3rem;
	max-width:50%;
}
.bottom-link-wrap li img {
	max-width:100%;
}
/*--------------------------------
TOP Page
--------------------------------*/
.mainvisual {
  width: 100%;
  background: url("../img/mainvisual.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(3/2*100%);
  position: relative;
}
.visual-logo-box {
  width: 100%;
  padding: 0 2rem;
  text-align: center;
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
}
.top-sub-ttl {
  padding: 1rem 0;
}
.visual-logo {
  width: 100%;
  background: url("../img/visual-logo.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  padding: 10% 0;
  filter: drop-shadow(1px 1px 4px #fff);
}
.fixed-contact {
  position: fixed;
  bottom: 2rem;
  right: 2.5%;
  background: #fff;
  box-shadow: 0 1px 4px -1px #212121;
}
.fixed-contact li {
  padding: 0.5rem 1rem;
  color: #420246;
  text-align: center;
}
.fixed-contact li a {
  text-decoration: none;
  color: #420246;
  font-size: 1.5rem;
  padding: 0 0.5rem;
}
.fixed-contact li i {
  color: #212121;
  margin-right: 0.5rem;
  font-size: 2.5rem;
  vertical-align: bottom;
}
.fixed-contact li span {
  font-weight: 600;
  vertical-align: top;
}
.fixed-contact li:nth-child(2) a {
  margin-left: -1.35rem;
}
.fixed-contact li:nth-child(3) a {
  margin-left: -0.4rem;
}
.fixed-contact li:nth-child(3) i {
  font-size: 2.2rem;
}
.top-contact {
  padding: 0.5rem;
  margin: 1rem 0;
  color: #f17e02;
  font-weight: 600;
  background: #f51900;
  margin: 0 10%;
  filter: drop-shadow(2px 4px 6px black);
  text-shadow: 1px 1px 0px #fff;
}
.top-contact a {
	color: #f17e02;
	text-decoration:none;
}
.top-social {
  width: 100%;
}
.top-social ul {
  display: flex;
  justify-content: center;
}
.top-social li {
  padding: 0.5rem 1rem;
}
.top-social li a {
  text-decoration: none;
  font-size: 2rem;
  color: #f17e02;
}
.contents-ttl {
  width: 100%;
  padding: 2rem;
  text-align: center;
  line-height: 1.2;
  color: #420246;
}
.contents-ttl h2 {
  font-size: 2rem;
  text-shadow: 1px 1px 1px #fff;
}
.contents-ttl p {
  font-size: 0.75rem;
}
.twi-news-col {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.twitter-wrap {
  width: 100%;
}
.twitter-inner {
  width: 100%;
  max-height: 480px;
  overflow-y: scroll;
}
.news-wrap {
  width: 100%;
}
.news-box {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin: 0 0 1rem;
}
.news-image01,
.news-image02 {
  width: 50%;
}
.news-image01 a {
  background: url("../img/news01.jpg");
}
.news-image02 a {
  background: url("../img/news02.jpg");
}
.news-image01 a,
.news-image02 a {
  display: block;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(4/3*100%);
}
.news-text-wrap {
  width: 50%;
  padding: 1rem 0.5rem;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.news-ico span {
  display: inline-block;
  padding: 0.125rem 0.25rem 0.25rem;
  background: #420246;
  color: #fff;
  font-size: 0.75rem;
}
.news-update {
  font-size: 0.75rem;
}
.news-ttl {
  width: 100%;
  height: 3rem;
  overflow: hidden;
  margin: 0.5rem 0;
  font-size: 0.875rem;
  font-weight: 600;
}
.news-pager {
  width: 100%;
  padding: 1rem 0 0;
}
.news-pager ul {
  display: flex;
  flex-wrap:wrap;
  justify-content: center;
}
.news-pager li {
  margin-bottom:0.5rem;
}
.news-pager li a {
  display: block;
  text-decoration: none;
  padding: 0.25rem 0.75rem;
  margin: 0 0.25rem;
  border: 1px solid #420246;
  color: #420246;
}
.news-pager li a.pager-current {
  background: #420246;
  color: #fff;
}
.top-news-clamp {
  width: 100%;
  height: 3.25rem;
  overflow: hidden;
  position: relative;
  line-height: 1.4;
  font-size: 0.8rem;
}
.top-news-clamp:before,
.top-news-clamp:after {
  position: absolute;
  background: #fff;
}
.top-news-clamp:before {
  content:"…";
  bottom: 0;
  right: 0;
}
.top-news-clamp:after {
  content: "";
  width: 100%;
  height: 100%;
}
.news-detail {
  text-align: center;
  margin-top: auto;
}
.news-detail a {
  text-decoration: none;
  color: #fff;
  padding: 0.25rem 1rem 0.5rem;
  background: #f17e02;
  font-size: 0.75rem;
  font-weight: 600;
}
.news-detail i {
  margin-left: 0.25rem;
}
.tab-container {
  width: 100%;
  padding: 2rem 1rem;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.6) 0%,
    rgba(255, 255, 255, 0.6) 100%),
    url("../img/tab-bg.jpg");
  background-position: top;
  background-repeat: no-repeat;
  background-size:cover;
}
.main-contents {
  width: 100%;
}
.tab-box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.tab-box label {
  width: 33%;
  display: block;
  padding: 1rem 0;
  text-align: center;
  cursor: pointer;
  border-bottom: 2px solid #420246;
  font-weight: 600;
  font-size: 0.5rem;
}
.tab-box label p {
  font-size: 0.75rem;
}
.tab-box label.active {
  background: rgba(66,2,70,0.2);
}
.panel-area {
  padding: 2rem 0 0;
}
.main-tab-panel {
  width: 100%;
  display: none;
}
.main-tab-panel.active {
  display: block;
}
.tab-pick-wrap {
  width: 100%;
}
.tab-pick {
  width: 100%;
  display: flex;
  margin: 0 0 1rem;
  position: relative;
}
.tab-pick-image01,
.tab-pick-image02 {
  width: 40%;
}
.tab-pick-image01 a {
  background: url("../img/pick01.jpg");
}
.tab-pick-image02 a {
  background: url("../img/pick02.jpg");
}
.tab-pick-image01 a,
.tab-pick-image02 a {
  display: block;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 75% 0;
}
.tab-pick-info {
  width: 60%;
  padding: 1rem;
  background: #fff;
  color: #420246;
  display: flex;
  flex-direction: column;
}
.tab-pick-ttl {
  font-weight: 600;
  height: 3.25rem;
  overflow: hidden;
  margin: 0 0 1rem;
}
.tab-pick-text {
  width: 100%;
  height: 3.5rem;
  overflow: hidden;
  position: relative;
  line-height: 1.4;
  font-size: 0.875rem;
}
.tab-pick-text:after {
  content: "";
  display: block;
  width: 100%;
  height: 3.5rem;
  position: absolute;
  left: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
}
.detail-btn {
  margin-top: auto;
  text-align: center;
}
.detail-btn a {
  display: block;
  width: 70%;
  padding: 0.25rem 0;
  margin: 0 auto;
  text-decoration: none;
  background: #420246;
  font-size: 0.75rem;
  color: #fff;
}
.detail-btn i {
  padding-left: 0.25rem;
}
.tab-pick-last {
  margin: 0;
}
.concept-wrap {
  width: 100%;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.6) 0%,
    rgba(255, 255, 255, 0.6) 100%),
    url("../img/concept.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  text-align: center;
  padding: 2rem 1rem;
}
.concept-ttl {
  line-height: 1.2;
}
.concept-ttl h3 {
  font-size: 2rem;
}
.concept-text {
  padding: 1rem 0;
  font-family: "游ゴシック体", YuGothic;
}
/*--------------------------------
NEWS BOLG共通
--------------------------------*/
.col-wrap {
  width: 100%;
}
.col-left {
  width: 100%;
}
.col-right {
  width: 100%;
}
.contents-ttl-right {
  width: 100%;
  padding: 2rem;
  text-align: center;
  line-height: 1.2;
  color: #420246;
}
.contents-ttl-right h2 {
  font-size: 2rem;
}
.contents-ttl-right p {
  font-size: 0.75rem;
  text-shadow: 1px 1px 1px #fff;
}
.right-pick {
  width: 100%;
  margin-bottom: 1rem;
  position: relative;
}
.pick-image01 a {
  background: url("../img/pick01.jpg");
}
.pick-image02 a {
  background: url("../img/pick02.jpg");
}
.pick-image01 a,
.pick-image02 a {
  display: block;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(4/3*100%);
}
.right-pick-name {
  position: absolute;
  left: 1rem;
  bottom: 0.5rem;
  color: #fff;
}
.right-pick-name li {
  text-shadow: 2px 2px 5px #212121;
}
.archive {
  width: 100%;
  padding: 0 0 1rem;
}
.archive h3 {
  background: #420246;
  color: #fff;
  padding: 0.5rem 1rem;
  font-weight: 400;
}
.archive li {
  border: 1px solid #420246;
  border-top: 0;
  padding: 0.5rem 1rem;
  background: #fff;
}
.archive li a {
  display: block;
  text-decoration: none;
  color: #420246;
}
.archive li a i {
  margin-right: 0.5rem;
}
.prev-btn {
  width: 30%;
  margin: 1rem auto;
}
.prev-btn a {
  display: block;
  text-align: center;
  text-decoration: none;
  background: #420246;
  color: #fff;
  padding: 0.5rem 1rem;
}
/*--------------------------------
NEWS
--------------------------------*/
.news-detail-info {
  padding: 0 0 1rem;
}
.news-detail-info:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 0.5rem;
}
.news-detail-update {
  padding-bottom: 1rem;
}
.news-detail-update span {
  display: inline-block;
  background: #420246;
  padding: 0.125rem 0.5rem 0.25rem;
  margin-left: 0.5rem;
  font-size: 0.875rem;
  color: #fff;
}
.news-detail-ttl {
  font-weight: 600;
}
.news-clamp {
  width: 100%;
  height: 3.125rem;
  overflow: hidden;
  position: relative;
  line-height: 1.4;
  font-size: 0.8rem;
}
.news-clamp:before,
.news-clamp:after {
  position: absolute;
  background: #fff;
}
.news-clamp:before {
  content:"…";
  bottom: 0;
  right: 0;
}
.news-clamp:after {
  content: "";
  width: 100%;
  height: 100%;
}
.news-text-area {
  padding: 1rem 0;
}
.news-text-area:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 1rem;
}
.news-detail-wrap {
  width: 100%;
  background: #fff;
  padding: 1rem;
}
.news-detail-image {
  background: url("../img/news01.jpg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  padding: 75% 0;
}
/*--------------------------------
BLOG
--------------------------------*/
.blog-container {
  width: 100%;
  padding: 0.5rem 1rem;
  background: #fff;
}
.blog-wrap {
  width: 100%;
/*
  display: flex;
  justify-content: space-between;
*/
  padding: 0.5rem 0;
  border-bottom: 1px solid #420246;
}
.blog-box {
  background-color:#fff;
  display:flex;
  justify-content:space-between;
  padding:0.5rem;
}
.blog-box + .blog-box {
  border-top:1px solid #420246;
}
.blog-box ~ .more-btn {
  margin: 1rem 0;
}
.blog-image01 {
  width: 40%;
}
.blog-image01 a {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display:block;
  padding-top:calc(4/3*100%);
}
.blog-text-wrap {
  width: 55%;
  height:10.4rem;
  overflow:hidden;
}
.blog-bg01 a,
.blog-under-bg01 {
  background: url("../img/blog01.jpg");
}
.blog-bg02 a,
.blog-under-bg02 {
  background: url("../img/blog02.jpg");
}
.blog-bg03 a,
.blog-under-bg03 {
  background: url("../img/blog03.jpg");
}
.blog-bg04 a,
.blog-under-bg04 {
  background: url("../img/blog04.jpg");
}
.blog-bg05 a,
.blog-under-bg05 {
  background: url("../img/blog05.jpg");
}
.blog-bg01 a,
.blog-bg02 a,
.blog-bg03 a,
.blog-bg04 a,
.blog-bg05 a {
  display: block;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(3/4*100%);
}
.blog-under-bg01,
.blog-under-bg02,
.blog-under-bg03,
.blog-under-bg04,
.blog-under-bg05 {
  width: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  padding: 33.333% 0;
}
.blog-inner {
  width: 59%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-left: 0.5rem;
  line-height: 1.4;
}
.blog-inner a {
  color: #212121;
  font-size: 0.875rem;
}
.blog-update {
  font-size: 0.75rem;
  color: #420246;
}
.blog-sp-none {
  display: none;
}
.blog-btn {
  display: none;
}
.b-pager {
  width: 100%;
  padding: 1rem 0 0;
}
.b-pager ul {
  display: flex;
  justify-content: center;
}
.b-pager li a {
  display: block;
  text-decoration: none;
  padding: 0.25rem 0.75rem;
  margin: 0 0.25rem;
  border: 1px solid #420246;
  color: #420246;
}
.b-pager li a.pager-current {
  background: #420246;
  color: #fff;
}
.blog-detail-wrap {
  background: #fff;
  padding: 1rem;
}
.blog-detail-info {
  padding: 0 0 1rem;
}
.blog-detail-info:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 0.5rem;
}
.blog-detail-ttl {
  font-weight: 600;
  color: #212121;
}
/* .blog-ttl-clamp {
  width: 100%;
  max-height: 2.75rem;
  overflow: hidden;
  text-align: justify;
  background: #fff;
  position: relative;
  line-height: 1.4;
  font-size: 1rem;
  font-weight: 600;
}
.blog-ttl-clamp:before,
.blog-ttl-clamp:after {
  position: absolute;
  background: #fff;
}
.blog-ttl-clamp:before {
  content:"…";
  bottom: 0;
  right: 0;
}
.blog-ttl-clamp:after {
  content: "";
  width: 100%;
  height: 100%;
} */
.blog-text-area {
  padding: 1rem 0;
  color: #212121;
}
.blog-text-area:before {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-bottom: 1rem;
}
.blog-text-area:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 1rem;
}
/*--------------------------------
料金システム
--------------------------------*/
.list-wrap {
  width: 100%;
  padding: 1rem;
  margin-bottom: 1rem;
  background: #fff;
}
.list-wrap h3 {
  border-top: 1px solid #420246;
  border-bottom: 1px solid #420246;
  text-align: center;
  margin-bottom: 0.5rem;
}
.list-wrap h3:before {
  content: "";
  display: block;
  border-top: 1px solid #420246;
  margin-top: 0.25rem;
  padding: 0.5rem 0 0;
}
.list-wrap h3:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  margin-bottom: 0.25rem;
  padding: 0 0 0.5rem;
}
.list-wrap p {
  padding: 0.5rem;
  /*text-align: center;*/
  padding-bottom: 3rem;
}
.list-wrap dl {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.list-wrap dt,
.list-wrap dd {
  width: 50%;
  border: 1px solid #420246;
  margin-top: -1px;
  margin-bottom: 0.5rem;
  padding: 0.5rem;
  text-align: center;
}
.list-wrap dt {
  background: #420246;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.list-wrap dd {
  background: #fff;
  border-left: 0;
}
.list-wrap .system-caution {
  width: 100%;
  text-align: left;
  padding: 0.5rem 0;
  font-family: "游ゴシック体", YuGothic;
}
.list-wrap li {
  padding: 0.5rem 0;
}
.list-wrap li img {
  width: 100%;
}
/*--------------------------------
SCHEDULE
--------------------------------*/
.therapist-list {
  width: 100%;
  display: flex;
  flex-wrap:wrap;
  justify-content: space-between;
}
.weekly-schedule {
  width: 100%;
  padding: 0 1rem 1rem;
}
.weekly-schedule ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.weekly-schedule li {
  text-align: center;
  background: #fff;
}
.weekly-schedule li:first-child {
  width: 100%;
  margin-bottom: 0.25rem;
}
.weekly-schedule li:nth-child(n+2) {
  width: 49%;
  margin: 0.25rem 0;
}
.weekly-schedule li a {
  display: block;
  text-decoration: none;
  color: #420246;
  padding: 0.5rem 1rem;
  border: 1px solid #420246;
}
.weekly-schedule li a.current {
  background: #420246;
  color: #fff;
}
.staff-box {
  width: 48%;
  text-align: center;
  color: #fff;
  margin-bottom: 1rem;
  position: relative;
}
.staff-box ul li + li {
    border-top: 1px solid #061f57;
}
.staff-box li {
  padding: 0.5rem 0;
}
.staff-box li i {
  padding-right: 0.25rem;
}
.staff-image01 a {
  background: url("../img/today1.jpg");
}
.staff-image02 a {
  background: url("../img/today2.jpg");
}
.staff-image03 a {
  background: url("../img/today3.jpg");
}
.staff-image04 a {
  background: url("../img/today4.jpg");
}
.staff-image01 a,
.staff-image02 a,
.staff-image03 a,
.staff-image04 a {
  width: 100%;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(4/3*100%);
  position: relative;
  text-decoration: none;
  color: #420246;
}
.box-inner {
  width: 100%;
  /* position: absolute;
  left: 0;
  bottom: 0; */
  /* background: rgba(255,255,255,0.8); */
  color: #1a1a1a;
}
.box-inner li {
  padding: 0.25rem 0;
}
.therapist-list .ico-area {
  position: absolute;
  top: 1rem;
  right: 1rem;
}
.therapist-list .ico-area li {
  padding: 0;
}
.therapist-list .ico-newface,
.therapist-list .ico-deli,
.therapist-list .ico-popular {
  width: 2rem;
  height: 2rem;
  color: #fff;
  transform: rotate(45deg);
  overflow: hidden
}
.therapist-list .ico-newface {
  background: rgba(110,198,146,0.8);
  margin-bottom: 1rem;
}
.therapist-list .ico-deli {
  background: rgba(207,147,229,0.8);
  margin-bottom: 1rem;
}
.therapist-list .ico-popular {
  background: rgba(237,100,147,0.8);
}
.therapist-list .ico-newface p,
.therapist-list .ico-deli p,
.therapist-list .ico-popular p {
  transform: rotate(-45deg);
  width: 2rem;
  height: 2rem;
  text-align: center;
  font-size: 0.6rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.therapist-list .ico-deli p {
  line-height: 1.2;
}
.filter-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 1rem 1rem;
}
.filter-wrap select {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
}
.filter-wrap select {
  font-size: 1rem;
  padding: 0.5rem;
  border: 1px solid #420246;
  color: #420246;
  width: 68%;
  height: 2.625rem;
  background-image: url("../img/filter-arrow.svg"),linear-gradient(to bottom, #420246 0%, #420246 100%);
  background-size: 2.625rem;
  background-position: right center;
  background-repeat: no-repeat;
  background-color: #fff;
}
.filter-wrap .filter-reset {
  width: 32%;
  text-align: center;
}
.filter-wrap .filter-reset a {
  text-decoration: underline;
  color: #420246;
}
.filter-inner {
  width: 100%;
  text-align: left;
  border: 1px solid #420246;
  background: #fff;
  padding: 0.5rem;
  margin-top: 1rem;
  position: relative;
  height: 2.625rem;
}
.filter-inner label {
  margin-right: 1rem;
  color: #420246;
}
.filter-inner input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}
.filter-inner input[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background: #420246;
  color: #fff;
  font-size: 1rem;
  position:absolute;
  right: 0;
  top: 0;
  width: 4rem;
  height: 2.5rem;
  line-height: 2.5rem;
  border-radius: 0;
}
/*--------------------------------
FAQ
--------------------------------*/
.accordion ul {
	width: 100%;
}
.accordion li {
	position: relative;
	list-style: none;
  margin-bottom: 1rem;
}
.accordion > ul > li > div {
	cursor: pointer;
	position: relative;
  color: #fff;
  padding: 0.5rem 3.5rem 0.5rem 0.5rem;
  background: #420246;
  height: 52px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2;
  border: 1px solid #420246;
}
.accordion > ul > li > p {
	display: none;
	text-align: left;
	padding: 0.5rem;
	color: #212121;
  background: #fff;
}
.accordion li .accordion_icon,
.accordion li .accordion_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
}
.accordion li .accordion_icon {
	position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  background: #fff;
  text-align: center;
}
.accordion li .accordion_icon span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 1.5rem;
  height: 2px;
  background: #420246;
}
.accordion li .accordion_icon span:nth-of-type(1) {
	transform: rotate(0deg);
}
.accordion li .accordion_icon span:nth-of-type(2) {
	transform: rotate(90deg);
}
.accordion li .accordion_icon.active span:nth-of-type(1) {
	display:none;
}
.accordion li .accordion_icon.active span:nth-of-type(2) {
	transform: rotate(180deg);
}
.toggle > div > span {
  font-size: 0.5rem;
}
/*--------------------------------
RESERVE
--------------------------------*/
.form-caution {
  width: 100%;
  padding: 0 1rem 1rem;
  font-size: 0.75rem;
  text-align: center;
}
.form-caution .text-red {
  color: #420246;
}
.form-wrap {
  padding: 0 0 1rem;
}
.reserve {
  padding: 0 0 1rem;
}
.reserve > div {
  position: relative;
  padding: 0.5rem 1rem;
  background: #ffedd2;
}
.reserve input[type="text"],
.reserve input[type="number"],
.reserve input[type="tel"],
.reserve input[type="email"],
.reserve input[type="date"],
.reserve select {
  width: 100%;
  padding: 0 0.5rem;
  display: block;
  height: 2.5rem;
  border: 1px solid #420246;
  font-size: 1rem;
  border-radius: 0;
}
.reserve textarea {
  width: 100%;
  display: block;
  padding: 0.5rem;
  border: 1px solid #420246;
  font-size: 1rem;
  border-radius: 0;
}
.reserve select::-ms-expand {
	display: none;
}
.reserve select {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("../img/select-arrow.svg"),linear-gradient(to bottom, #420246 0%, #420246 100%);
  background-size: 2.5rem 2.5rem;
  background-position: right center;
  background-repeat: no-repeat;
  background-color: #fff;
}
img.ui-datepicker-trigger {
  position: absolute;
  bottom: 0.5rem;
  right: 1rem;
  cursor: pointer;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.25rem;
  background: #420246;
  display: none;
}
.reserve #schedule {
  -webkit-appearance: none;
  appearance: none;
  padding: 0 0.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  border: 1px solid #420246;
  border-radius: 0;
  background-image: url("../img/calendar.svg"),linear-gradient(to bottom, #420246 0%, #420246 100%);
  background-size: 2.5rem 2.5rem;
  background-position: right center;
  background-repeat: no-repeat;
  background-color: #fff;
}
.reserve input[type="time"] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  padding: 0 0.5rem;
  display: block;
  height: 2.5rem;
  line-height: 2.5rem;
  border: 1px solid #420246;
  font-size: 1rem;
  border-radius: 0;
  background-image: url("../img/select-arrow.svg"),linear-gradient(to bottom, #420246 0%, #420246 100%);
  background-size: 2.5rem 2.5rem;
  background-position: right center;
  background-repeat: no-repeat;
  background-color: #fff;
}
.reserve input[type="submit"] {
  -webkit-appearance: button;
  appearance: button;
  display: block;
  margin: 0 auto;
  border: none;
  border-radius: 0;
  cursor: pointer;
  padding: 0.5rem 2rem;
  background: #420246;
  color: #fff;
  font-size: 1rem;
  transition: ease 0.3s;
}
.reserve input[type="submit"][disabled] {
  background: #ccc;
  color: #e0e0e0;
}
.reserve input[type="checkbox"] {
  margin: 0 auto;
}
.reserve input[type="radio"],
.reserve input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}
.reserve input[type="radio"] + label {
  padding-left: 1.25rem;
  margin-right: 1.25rem;
  position: relative;
}
.reserve input[type="radio"] + label:before {
  content: "";
  display: block;
  position: absolute;
  top: 0.125rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  background: #fff;
  border: 1px solid #420246;
  border-radius: 50%;
}
.reserve input[type="radio"]:checked + label:after {
  content: "";
  display: block;
  position: absolute;
  top: 0.375rem;
  left: 0.25rem;
  width: 0.5rem;
  height: 0.5rem;
  background: #420246;
  border-radius: 50%;
}
.check-point {
  padding-left: 1.25rem;
  position: relative;
}
.check-point:before {
  content: "";
  display: block;
  position: absolute;
  top: 0.4375rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  background: #fff;
  border: 1px solid #420246;
  border-radius: 4px;
}
.filter-inner input[type="checkbox"]:checked + .check-point:after,
.reserve input[type="checkbox"]:checked + .check-point:after {
  content: "";
  display: block;
  position: absolute;
  top: 0.125rem;
  left: 0.25rem;
  width: 0.65rem;
  height: 1rem;
  transform: rotate(40deg);
  border-bottom: 5px solid #420246;
  border-right: 5px solid #420246;
}
div.checkbox {
  background: transparent;
  width: 100%;
  padding: 1rem 0;
  text-align: center;
}
.kakunin > div:nth-child(1) {
  padding-top: 2rem;
}
.kakunin > div:nth-child(11) {
  padding-bottom: 2rem;
}
.kakunin input[type="submit"] {
  margin: 2rem auto 0;
}
.comp-btn {
  width: 30%;
  margin: 2rem auto;
  padding: 0.5rem 1rem;
  background: #420246;
}
.comp-btn a {
  display: block;
  text-decoration: none;
  color: #fff;
  font-size: 1rem;
}
.reserve > .chui {
  padding-bottom: 2rem;
  font-family: "游ゴシック体", YuGothic;
}
/*--------------------------------
PROFILE
--------------------------------*/
.profile-wrap {
  width: 100%;
  padding: 1rem;
  background: #fff;
  margin-bottom: 2rem;
  align-items:flex-start;
}
.tab-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.tab-label {
  flex: 1;
  color: #fff;
  background: #f17e02;
  order:-1;
  font-size: 0.75rem;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
}
.tab-content {
  width: 100%;
  display: none;
}
.tab-switch:checked + .tab-label {
  background: #420246;
}
.tab-switch:checked + .tab-label + .tab-content {
  display: block;
}
.tab-switch {
  display: none;
}
.tab-image01 {
  background: url("../img/profile01.jpg");
}
.tab-image02,.tab-image03 {
  background: url("../img/noimage.jpg");
}
.tab-image01,
.tab-image02,
.tab-image03 {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: calc(4/3*100%);
}
.shame-btn {
  width: 100%;
  margin-top: 1rem;
}
.shame-btn a {
  display: block;
  text-align: left;
}
.shame-btn img {
  width: 100%;
}
.staff-name {
  font-size: 1.25rem;
  padding: 0.5rem 0 0;
}
.staff-name:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 0.5rem;
}
.detail-wrap li {
  border-bottom: 1px dotted #212121;
  padding: 0.5rem 0;
  font-size: 0.875rem;
}
.shop-cmt {
  font-weight: 600;
  padding: 1.5rem 0 0.5rem;
}
.shop-cmt:after {
  content: "";
  display: block;
  border-bottom: 1px solid #420246;
  border-top: 1px solid #420246;
  padding: 0 0 0.25rem;
  margin-top: 0.5rem;
}
.shop-cmt + div {
  padding: 0.5rem 0;
  font-size: 0.875rem;
}
.weekly-ttl {
  margin-top: auto;
}
.detail-tbl {
  width: 100%;
  display: flex;
  font-size: 0.875rem;
}
.detail-tbl thead {
  display: block;
  width: 30%;
  background: #420246;
  color: #fff;
}
.detail-tbl tbody {
  display: block;
  width: 70%;
}
.detail-tbl tr {
  display: block;
}
.detail-tbl th {
  font-weight: 400;
}
.detail-tbl tr th,
.detail-tbl tr td {
  display: block;
  text-align: center;
  padding: 0.5rem;
  border: 1px solid #420246;
}
/* .detail-tbl tr th + th,
.detail-tbl tr td + td {
  border-top: none;
} */
.sat,
.weekly-schedule .sat a {
  color: #0265b8;
}
.sun,
.weekly-schedule .sun a {
  color: #b71c1c;
}
.ico-area {
  position: absolute;
  top: 3.5rem;
  right: 1.5rem;
}
.ico-newface {
  background: rgba(110,198,146,0.8);
  margin-bottom: 2.5rem;
}
.ico-deli {
  background: rgba(207,147,229,0.8);
  margin-bottom: 2.5rem;
}
.ico-popular {
  background: rgba(237,100,147,0.8);
}
.ico-newface,
.ico-deli,
.ico-popular {
  width: 4rem;
  height: 4rem;
  color: #fff;
  transform: rotate(45deg);
  overflow: hidden;
}
.ico-newface p,
.ico-deli p,
.ico-popular p {
  transform: rotate(-45deg);
  width: 4rem;
  height: 4rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ico-deli p {
  line-height: 1.2;
}
.ico-area li:first-child {
  border-bottom: 0;
}
/*--------------------------------
RECRUIT
--------------------------------*/
.recruit-main {
  padding-top: 3.5rem;
  background: #fff;
}
.recruit-mainvisual {
/*  background: url("../img/recruit-top.jpg");*/
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 0;
  width: 100%;
}
.recruit-mainvisual img{
    width:100%;
}
.recruit-ttl {
  background: #420246;
  text-align: center;
  padding: 1rem 0;
}
.recruit-ttl h2 {
   color: #fff;
   font-size: 1.25rem;
}
.recruit-container {
  width: 100%;
}
.recruit-bg01 {
  background: #f3f3f3;
}
.recruit-wrap {
  width: 100%;
  text-align: center;
  font-family:  "游ゴシック体", YuGothic;
}
.shop-intro {
  padding: 1rem;
}
.recruit-info-ttl {
  padding: 1.5rem 0;
  font-size: 1.25rem;
  color: #420246;
}
.recruit-info {
  width: 100%;
  padding: 0 1rem;
}
.text-under-line {
  text-decoration: underline;
  font-size: 0.875rem;
}
.recruit-image01,
.recruit-image02 {
  width: 100%;
}
.recruit-image01 img,
.recruit-image02 img {
  width: 100%;
}
.salary-example {
  width: 100%;
  padding: 0 2rem;
  overflow: hidden;
  margin-bottom: 1rem;
}
.salary-example li {
  background: #fff;
  padding: 1rem;
  margin: 0 0 1rem;
  border-radius: 1rem;
}
.recruit-contact {
  width: 100%;
  padding: 0 2rem;
  overflow: hidden;
}
.recruit-contact li {
  background: #420246;
  color: #fff;
  padding: 1rem;
  margin: 0 0 1rem;
  border-radius: 1rem;
}
.recruit-contact li a {
  text-decoration: none;
  color: #fff;
  display: block;
}
.recruit-contact i {
  margin-right: 0.25rem;
}
.padding-ud {
  padding: 1rem 0;
}
.padding-under {
  padding: 0 0 1rem;
}
.access-container {
  width: 100%;
  padding: 1rem;
  background: #fff;
}
.access-box h3 {
  font-size: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #420246;
}
.access-box address {
  padding: 0.5rem 0;
  font-style: normal;
}
.access-box p {
	padding-bottom:0.5rem;
}
.access-box iframe {
  width: 100%;
  height: 380px;
}
/*--------------------------------
FOOTER
--------------------------------*/
footer {
  padding: 2rem 2rem 4rem;
  background: #420246;
  text-align: center;
  color: #fff;
}
.footer-logo {
  width: 100%;
  background: url("../img/f-logo.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  padding: 10% 0;
  filter: drop-shadow(0 0 4px #fff);
}
.foot-social {
  width: 100%;
}
.foot-social ul {
  display: flex;
  justify-content: center;
}
.foot-social li {
  padding: 0.5rem 1rem;
}
.foot-social li a {
  text-decoration: none;
  font-size: 2rem;
  color: #fff;
}
.sp-foot {
  width: 100%;
  height: 4rem;
  padding: 0.5rem;
  background: rgba(66,2,70,0.8);
  transform: translateY(100%);
  transition: ease 0.5s;
  position: fixed;
  bottom: 0;
  opacity: 0;
}
.sp-foot ul {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-around;
}
.sp-foot li {
  flex: 1;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp-foot li + li {
  border-left: 1px solid #fff;
}

.sp-foot a {
  color: #fff;
  font-size: 1.25rem;
  display: block;
  text-decoration: none;
}
.sp-foot a i {
  padding: 0 0.5rem;
}
.fixed-foot.sp-foot {
  transform: translateY(0);
  opacity: 1;
}
.foot-padding-top {
  padding-top: 0;
}
/*--------------------------------
レスポンシブ表示非表示
--------------------------------*/
.sp {
  display: block;
}
.pc {
  display: none;
}
/*--------------------------------
その他
--------------------------------*/
.last-border {
  border-bottom: 0;
}
.credit-wrap {
  width: 100%;
/*  padding: 2rem 0;*/
}
.credit-wrap ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.credit-wrap li {
  width: 100%;
  padding: 1rem 0;
}
.credit-wrap li img {
  width: 100%;
}

@media screen and (min-width: 769px) {
/*--------------------------------
PC TOP Page
--------------------------------*/
  header {
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    height: 67px;
    position: absolute;
    top: 0;
    background: rgba(255,255,255,0.3);
  }
  .h-bg {
    background: transparent;
  }
  .logo-area {
    position: static;
    top: inherit;
    left: inherit;
    z-index: 3;
  }
  #nav-toggle {
    display: none;
  }
  #nav {
    position: static;
    width: auto;
    height: auto;
    right: auto;
    text-align: center;
    padding: 0;
    background: transparent;
  }
  #nav ul {
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
  }
  #nav li {
    font-weight: 400;
  }
  #nav p {
    display: block;
    font-size: 0.5rem;
    padding: 0;
    filter: drop-shadow(1px 1px 1px #fff);
    text-shadow: 0px 0px 1px #fff;
  }
  #nav ul li {
    padding: 0 0.5rem;
    border-bottom: 0;
    font-size: 1rem;
  }
  #nav ul li i {
    font-size: 1.5rem;
  }
  .tab-pick-wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 0 4rem;
  }
  .tab-pick {
    width: 49%;
    margin: 0;
    position: relative;
  }
  .tab-box label {
    font-size: 1.5rem;
  }
  .tab-pick-image01,
  .tab-pick-image02 {
    width: 50%;
  }
  .tab-pick-info {
    width: 55%;
    padding: 2rem;
    position: absolute;
    height: 100%;
    right: 0;
    top: 15%;
  }
  .tab-pick-ttl {
    font-size: 1.25rem;
    height: 4rem;
  }
  .tab-pick-text {
    height: 12.5rem;
    font-size: 1rem;
    line-height: 1.6;
  }
  .tab-pick-text:after {
    height: 4rem;
  }
  .detail-btn a {
    font-size: 1rem;
  }
  .map-container {
    width: 100%;
    padding: 0 1rem;
  }
  .map-wrap {
    width: 100%;
  }
  .map-box {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .map-box iframe {
    width: 50%;
  }
  .map-text {
    width: 50%;
    padding: 0 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 1rem;
  }
  .map-text p {
    text-align: left;
  }
  .map-text p:nth-child(3) {
    padding: 1rem 0;
  }
  .link-bnr-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 2rem 0;
  }
  .reserve-bnr,
  .qa-bnr,
  .recruit-bnr {
    width: 30%;
  }
  .more-btn {
    width: 50%;
    margin: 1rem auto 2rem;
  }
  .more-btn02 {
    width: 50%;
    margin: 1rem auto 0;
  }
  .under-main {
    padding-top: 6.25rem;
  }
/*--------------------------------
PC TOP Page
--------------------------------*/
  .mainvisual {
    padding-top: calc(9/16*100%);
  }
  .visual-logo-box {
    width: 65%;
    bottom: auto;
    top: 65%;
    transform: translate(-50%,-50%);
  }
  .twitter-wrap {
    width: 22%;
  }
  .twitter-inner {
    max-height: 365px;
    background: #fff;
  }
  .news-wrap {
    width: 76%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .news-box {
    width: 49%;
  }
  .news-ttl {
    height: 3.125rem;
    margin: 1rem 0;
    font-size: 1rem;
  }
  .news-text-wrap {
    justify-content: flex-start;
    padding: 1rem 0.5rem 1.5rem;
    position: relative;
  }
  .top-news-clamp {
    /* height: 9.25rem; */
    line-height: 1.6;
    font-size: 1rem;
  }
  /* .news-ico {
    position: absolute;
    top: 0.5rem;
    left: 7.25rem;
  }
  .news-ico span {
    font-size: 0.5rem;
  } */
  .concept-wrap {
    padding: 4rem 1rem;
  }
  .concept-text {
    width: 70%;
    margin: 0 auto;
    font-family: "游ゴシック体", YuGothic;
  }
  .concept-social {
    width: 100%;
    padding: 2rem 0 0;
  }
  .concept-social ul {
    display: flex;
    justify-content: center;
  }
  .concept-social li {
    padding: 0 1rem;
  }
  .concept-social li a {
    text-decoration: none;
    color: #420246;
    display: flex;
    align-items: center;
  }
  .concept-social li i {
    color: #212121;
    font-size: 2rem;
    padding: 0 0.25rem;
  }
/*--------------------------------
PC NEWS BOLG共通
--------------------------------*/
  .col-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 0 2rem;
  }
  .col-left {
    width: 73.5%;
  }
  .col-left .news-wrap {
    width: 100%;
  }
  .col-right {
    width: 25%;
  }
/*--------------------------------
PC NEWS
--------------------------------*/
  .news-detail-wrap {
    width: 100%;
    padding: 1.5rem;
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .news-detail-info {
    width: 70%;
    padding-left: 1.5rem;
  }
  .news-detail-info:after {
    display: none;
  }
  .news-text-area:after {
    display: none;
  }
  .news-detail-update:after {
    content: "";
    display: block;
    border-bottom: 1px solid #420246;
    border-top: 1px solid #420246;
    padding: 0 0 0.25rem;
    margin-top: 1rem;
  }
  .news-detail-ttl {
    margin: 1rem 0;
    font-size: 1.25rem;
    font-weight: 600;
  }
  .news-clamp {
    font-size: 0.8rem;
    height: 5.4rem;
  }
  .news-detail-image {
    width: 30%;
    padding: 22.5% 0;
  }
/*--------------------------------
PC BLOG
--------------------------------*/
  .blog-container {
    padding: 0;
    background: transparent;
  }
  .blog-wrap {
    padding: 1rem;
    margin-bottom: 1rem;
    background: #fff;
    border-bottom: 0;
    position: relative;
  }
  .blog-inner {
    padding: 0.5rem;
    overflow: hidden;
  }
  .blog-inner a {
    font-size: 1rem;
  }
  .blog-update {
    font-size: 0.875rem;
  }
  .blog-ttl {
    margin: 1.5rem 0;
    border-bottom: 1px solid #420246;
  }
  .blog-ttl a {
    font-weight: 600;
    text-decoration: none;
  }
  .blog-sp-none {
    display: block;
    width: 100%;
    max-height: 3rem;
    overflow: hidden;
    text-align: justify;
    background: #fff;
    position: relative;
  }
  .blog-sp-none:before,
  .blog-sp-none:after {
    position: absolute;
    background: #fff;
  }
  .blog-sp-none:before {
    content:"…";
    bottom: 0;
    right: 0;
  }
  .blog-sp-none:after {
    content: "";
    width: 100%;
    height: 100%;
  }
  .blog-sp-none a {
    color: #212121;
    font-size: 0.875rem;
  }
  .blog-btn {
    display: block;
    position: absolute;
    bottom: 1.55rem;
    right: 1.5rem;
  }
  .blog-btn a {
    text-decoration: none;
    color: #faf2f3;
    background: #420246;
    padding: 0.25rem 0.5rem 0.5rem;
  }
  .blog-btn i {
    margin-right: 0.25rem;
  }
  .blog-ttl-clamp {
    max-height: 1.5rem;
    background: transparent;
    margin: 0.5rem 0;
    font-size: 1.25rem
  }
  .blog-ttl-clamp:before {
    display: none;
  }
  .blog-image01 {
    width:20%;
  }
  .blog-text-wrap {
    width:78%;
  }
/*--------------------------------
PC 料金システム
--------------------------------*/
  .list-wrap {
    padding: 2rem 3rem;
    margin-bottom: 2rem;
  }
  .list-wrap ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .list-wrap li {
    width: 50%;
    padding: 1rem 0 0;
    font-family: "游ゴシック体", YuGothic;
  }
/*--------------------------------
PC SCHEDULE
--------------------------------*/
  .staff-box {
    width: 19%;
  }
  .weekly-schedule {
    width: 100%;
    padding: 1rem 0;
    background: #420246;
  }
  .weekly-schedule ul {
    justify-content: center;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding: 0.25rem 0;
  }
  .weekly-schedule ul:before {
    content: "";
    width: 100%;
    display: block;
    border-top: 1px solid #fff;
  }
  .weekly-schedule ul:after {
    content: "";
    width: 100%;
    display: block;
    border-bottom: 1px solid #fff;
  }
  .weekly-schedule li {
    background: transparent;
  }
  .weekly-schedule li:first-child {
    width: auto;
    margin: 0;
  }
  .weekly-schedule li:nth-child(n+2) {
    width: auto;
    margin: 0;
  }
  .weekly-schedule li a {
    border: 0;
    padding: 1rem;
    color: #fff;
  }
  .weekly-schedule li a.current {
    background: transparent;
    color: #fff;
    text-decoration: underline;
  }
  .filter-wrap {
    padding: 1rem;
  }
  .filter-wrap select {
    order: 1;
    width: 10rem;
    background-size: 2.5rem 2.6875rem;
    margin-right: 1rem;
  }
  .filter-inner {
    order: 2;
    width: 20rem;
    margin-top: 0;
  }
  .filter-wrap .filter-reset {
    order: 3;
    width: 6rem;
  }
/*--------------------------------
PC FAQ
--------------------------------*/
  .accordion {
    padding: 2rem 0;
  }
/*--------------------------------
PC RESERVE
--------------------------------*/
  .form-caution {
    font-size: 1rem;
  }
  .reserve .pc-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 10rem;
  }
  .reserve .radio-box {
    display:flex;
    justify-content: center;
    padding: 0.5rem 10rem;
  }
  .reserve .radio-box p {
    width: 50%;
    text-align: left;
  }
  .reserve input[type="radio"] + label {
    margin-right: 0;
    width: 16.7%;
  }
  .reserve > div:first-child {
    padding-top: 4rem;
  }
  .reserve > div:nth-child(12) {
    padding: 0.5rem 10rem 4rem;
  }
  .reserve input[type="text"],
  .reserve input[type="number"],
  .reserve input[type="tel"],
  .reserve input[type="email"],
  .reserve input[type="date"],
  .reserve input[type="time"],
  .reserve select,
  .reserve textarea {
    width: 50%;
  }
  /* img.ui-datepicker-trigger {
    right: 10rem;
  } */
  .reserve input[type="time"] {
    padding: 0.5rem;
    background-image: none;
  }
/*--------------------------------
PC PROFILE
--------------------------------*/
  .profile-wrap {
    display: flex;
  }
  .tab-wrap {
    width: 35%;
  }
  .tab-label {
    height: 3rem;
    line-height: 3rem;
  }
  .ico-area {
    top: 4.5rem;
  }
  .detail-wrap {
    width: 65%;
    padding: 0.5rem 0 0 1rem;
    display: flex;
    flex-direction: column;
  }
  .staff-name {
    padding: 0;
  }
  .shame-btn img {
    width: 375px;
  }
  .detail-tbl {
    display: table;
    table-layout: fixed;
  }
  .detail-tbl thead {
    display: table-header-group;
  }
  .detail-tbl tbody {
    display: table-row-group;
  }
  .detail-tbl tr {
    display: table-row;
  }
  .detail-tbl tr th,
  .detail-tbl tr td {
    display: table-cell;
  }
  .detail-tbl tr td {
    padding: 0.5rem 2rem;
    line-height: 1;
    vertical-align: middle;
  }
/*--------------------------------
PC RECRUIT
--------------------------------*/
  .recruit-mainvisual {
    padding: 8rem;
        width: 85%;
    margin: 0rem auto;
  }
  .recruit-main {
    padding-top: 0.5rem;
    background: #fff;
  }
  .recruit-ttl h2 {
    font-size: 1.5rem;
  }
  .recruit-container {
    padding: 0 1rem;
  }
  .recruit-wrap {
    width: 100%;
    padding: 0 2rem;
  }
  .shop-intro {
    padding: 2rem 0;
  }
  .recruit-info-ttl {
    font-size: 1.5rem;
  }
  .recruit-col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .recruit-info {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 2;
  }
  .recruit-image01,
  .recruit-image02 {
    width: 50%;
    padding: 1rem;
  }
  .recruit-contact {
    width: 100%;
    padding: 1rem 2rem;
  }
  .salary-example {
    padding: 0 2rem;
  }
  .salary-example ul,
  .recruit-contact ul {
    display:flex;
    justify-content: center;
  }
  .salary-example li,
  .recruit-contact li {
    width: 30%;
    margin: 1rem;
  }
  .padding-under {
    padding: 0 0 2rem;
  }
  .margin-under {
    margin: 0 0 2rem;
  }
/*--------------------------------
PC FOOTER
--------------------------------*/
  footer {
    padding: 2rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .foot-global {
    width: 100%;
    padding: 0 0 2rem;
  }
  .foot-global ul {
    display: flex;
    justify-content: center;
  }
  .foot-global li {
    padding: 0 1rem;
  }
  .foot-global li + li {
    border-left: 1px solid #fff;
  }
  .foot-global li a {
    text-decoration: none;
    color: #fff;
  }
  .footer-logo {
    width: 15rem;
    height: 3.125rem;
    padding: 0;
  }
  .foot-access {
    width: 20%;
  }
  .foot-padding-top {
    padding-top: 0;
  }
/*--------------------------------
PC レスポンシブ表示非表示
--------------------------------*/
  .close-btn,
  .sp-foot,
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
/*--------------------------------
PC MODAL
--------------------------------*/
  .modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 199;
  }
  .modal__bg {
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
  }
  .modal__content {
    background: #fff;
    left: 50%;
    padding: 1rem;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 200;
    text-align: center;
  }
  .modal__content .text-bold {
    font-size: 2.25rem;
    font-weight: 600;
  }
  .modal__content > div {
    border: 1px solid #420246;
    padding: 1rem;
  }
  .modal__content > div p:nth-child(1) {
    font-size: 1.25rem;
    font-weight: 600;
  }
  a.js-modal-close {
    position: static;
    background: #420246;
    padding: 0.5rem 1rem;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    display: block;
    width: 25%;
    margin: 1rem auto 0;
    text-decoration: none;
  }
  .access-box iframe {
    height: 480px;
  }
  .credit-wrap li {
    width: 100%;
  }
}
@media screen and (min-width: 1024px) {

}
@media screen and (min-width: 1200px) {
  #nav ul li {
    padding: 0 1rem;
  }
  .container {
    width: 1168px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .main-contents {
    width: 1168px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .map-container {
    width: 1168px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .filter-wrap {
    width: 1168px;
    max-width: 100%;
    margin: 0 auto;
    padding: 1rem 0;
  }
  .recruit-wrap {
    width: 1168px;
    margin: 0 auto;
  }
  .col-wrap {
    width: 1168px;
    max-width: 100%;
    margin: 0 auto;
  }
}
.loading {
  width: 100vw;
  height: 100vh;
  /* background: #f5a21b repeating-linear-gradient(135deg,transparent,transparent 1rem,#f17e02 1rem,#f17e02 2rem); */
  background: #420246;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
.loading img {
  width: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  filter: drop-shadow(0 0 4px #fff);
  animation: bound 1s infinite;
}
@keyframes bound {
  0%,100% {
    transform: translate(-50%,-50%)scale(1);
  }
  30% {
    top: 40%;
  }
  50% {
    transform: translate(-50%,-50%)scale(1);
  }
  90% {
    transform: translate(-50%,-50%)scale(1.1,0.8);
  }
}
.btn-magazine {
	width:100%;
}
.btn-magazine a {
	background:#f9e2e5;
	color:inherit;
	display:block;
	padding:0.5rem;
	text-align:center;
	text-decoration:none;
	border:1px solid #420246;
	border-radius:1rem;
}
@media screen and (min-width: 769px) {
	.btn-magazine {
		width:12rem;
	}
  .loading img {
    width: 30%;
  }
}

.w100 {
	width:100%;
}

.movie_wrap video {
  width: 100%;
}

.new-room {
  position: relative; 
  padding-top: calc(9/16*100%);
}

.new-room img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* filter: blur(7px); */
}

.new-room .new-room-text {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2rem;
  /* line-height: 1.2; */
  font-weight: bold;
  display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    background: -webkit-linear-gradient(-90deg, #F84500 45%, #FFBD2B 57%, #FFBD2B 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(1px 2px 1px white);
  }


@media screen and (min-width:801px) {
  
  .new-room .new-room-text{
      font-size: 4rem;
      background:-webkit-linear-gradient(-90deg, #F84500 45%, #FFBD2B 55%, #FFBD2B 100%);
      -webkit-background-clip: text;
      filter: drop-shadow(1px 4px 2px white);
    }
}

#new-room h2 {

  filter: drop-shadow(1px 1px 0px white) drop-shadow(-1px 1px 0px white) drop-shadow(1px -1px 0px white) drop-shadow(-1px -1px 0px white);
}

.contents-ttl#new-room {
  padding: 2rem 0 2rem;
}

.twitter-btn {
  display: block;
width: 100%;
height: auto;
padding: 2rem 0 0;
/* background: linear-gradient(to top,rgba(255,255,255,0)0%,rgba(255,255,255,0)100%),url(../img/); */
}
.twitter-btn a{
  display: flex;
  max-width: 300px;
  width: 100%;
  height: 100px;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  text-decoration: unset;
  color: #fff;
  font-weight: bold;
  background: linear-gradient(135deg, #d95a1d 0%, #ffac84 100%);
  border-radius: 10px;
  filter: drop-shadow(0px 0px 5px #ffddcc);
  margin: 0 auto;
  border: 2px solid #ffddcc;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


@media screen and (min-width:801px) {
  .twitter-btn {
  padding: 3rem 0;
  }

  .profile-wrap .twitter-btn {
    padding-top: 2rem;
  }
}

#twi-news-col {
  display: block;
}
#twi-news-col .twitter-wrap,
#twi-news-col .news-wrap
{
  width: 100%;
}


.top-contact {
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter: blur(5px);
  background: rgba(0,0,0,.3);
  border-radius: 5px;
}


 .news-box {
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter: blur(5px);
  background: rgba(0,0,0,.5);
  color: #fff;
}

.news-text-wrap {
  background: unset;
}

 .top-news-clamp::before,
 .top-news-clamp::after
 {
  content: none;
}
 .news-clamp::before,
.news-clamp::after
 {
  content: none;
}

.news-ico span {
  background:#c768cd;
}
.news-detail-wrap {
 -webkit-backdrop-filter:blur(5px);
  backdrop-filter: blur(5px);
  background: rgba(0,0,0,.5);
  color: #fff;
}
 .news-detail-update span {
  background:#c768cd;
}

.news-text-area:after {
  border-color: #fff;
  
}
.news-detail-info:after {
  border-color: #fff;
}

.news-detail-wrap .prev-btn a {
  background-color: #c768cd;
}


@media screen and (min-width:769px) {
  .news-detail-update:after {
    color: #fff;
  }
}



.staff-box > div{
  border: 6px solid;
  border-image:linear-gradient(135deg, #92979A 0%, #A2A3A6 20%,#E8E8E7 25%,#FAFBFA 40%,#4F575C 50%, #70767A 60%,#efefef 70%,#B6B8BB 100%);
  border-image-slice: 1;
  position: relative;
  z-index: 0;
  outline: 1px solid #999;
}

.staff-box > div::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  outline: 1px solid #999;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.staff-box .box-inner {
  background: rgba(0,0,0,0.5);
    color: #fff;
}

.staff-box ul li + li {
  border-top-color: #fff;
}