/*フォント*/
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo+Black&family=M+PLUS+2:wght@100..900&family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&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=Raleway:ital,wght@0,100..900;1,100..900&family=Shippori+Mincho:wght@400;500;600;700;800&family=Shippori+Mincho&family=Zen+Kaku+Gothic+New&family=Zen+Maru+Gothic&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

body {
	/* font-family: 'Noto Sans JP', sans-serif; */
	/* font-family: 'Noto Serif JP', serif; */
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-optical-sizing: auto;
	font-weight: 100;
	color: #707070;
}
.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: 'Josefin Sans', sans-serif; */
	font-family: 'Raleway', sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	/* text-transform: uppercase; */
	font-weight: 200;
}
.contents_header p,
.cont_titile span {
	font-size: 2.5rem;
}
.btn_tel.pc .material-icons {
	margin-right: 5px;
	margin-top: 2px;
}
.nav_follow .btn_tel a {
	display: flex;
	justify-content: center;
	align-content: center;
}

main.contents::before {
	margin: 0;
	padding: 70px 0 40px;
	background: none;
}
.profile-twi span,
.top_twitter span {
	display: flex;
	justify-content: center;
	align-items: center;
}
.ekkusu {
	font-size: 1.5rem;
	margin-bottom: 0.35rem;
}
main {
	position: relative;
	overflow: hidden;
}
main::before {
	content: '';
	display: block;
	/* background: linear-gradient(to left, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0.35) 100%),
		url(../img/bg-pc.jpg); */
	background-size: 356%;
	background-position: left 12% top 100vh;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
}
.inner_page .btn01 {
	margin-top: 2rem;
}
@media screen and (max-width: 640px) {
	.nav_follow .logo img {
		padding-top: 0.325rem;
	}
}
@media screen and (min-width: 640px) {
	main::before {
		background-size: contain;
		background-repeat: no-repeat;
		background-position: top 100vh center;
		/* position: fixed; */
	}
}

.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 2rem;
}
@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: 0.875rem;
	font-weight: 500;
}
.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;
	text-align: center;
}
.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 */

a {
	color: #707070;
}
/* a:link {
	color: #707070;
} */

/* a:visited {
	color: #707070;
}

a:hover {
	color: #707070;
}

a:active {
	color: #707070;
} */
option {
	color: #707070;
}
select {
	color: #707070;
}
.btn01 a {
	background: #707070;
	color: #fff;
}
.cont_titile {
	color: #2c2c2c;
}
.cont_titile span {
	color: #2c2c2c;
}
.cont_titile a {
	color: #2c2c2c;
}

/* header */

.nav_follow {
	background: #fff;
	z-index: 1;
	/* border-image: linear-gradient(to top, #0053c5 78%, #cff0f7 100%); */
}
.toggle {
	/* background: rgba(255,255,255,0.7); */
}
.toggle span {
	border-bottom: solid 1px #707070;
}
.global_nav_sp {
	background: rgba(255, 255, 255, 0.95);
	color: #454545;
}
.global_nav_sp ul li a {
	color: #707070;
}
.global_nav_sp a span {
	color: #ccc;
}
@media screen and (min-width: 640px) {
	.fix-header {
		background: #fff;
	}
	.nav_follow .head_btn.reserve a {
		background: linear-gradient(48deg, #000 50%, #2a2a2a 51%);
		color: #fff;
	}
}

/*footer */

footer {
	background: #fff;
}
footer small {
	/* color: #fff; */
}
.foot_navi {
	background: #707070;
}

.foot_navi a {
	color: #707070;
}
.f-hours {
	background: #707070;
	color: #fff;
	border-top: 1px solid #707070;
}
footer ul.foot_navi_list a {
	/* color: #fff; */
}

@media screen and (min-width: 640px) {
	footer ul.foot_navi_list li {
		border-left: 1px solid #e6eff1;
	}
}

/* index */

.mainvisual .mainlogo {
	/* filter: drop-shadow(1px 1px 2px #fff); */
}
.mainvisual .global-nav {
	background: rgba(0, 0, 0, 1);
}
.mainvisual .global-nav a {
	color: #fff;
}
.mainvisual .global-nav a span {
	color: #e6eff1;
}
.mainvisual .global-nav_list li + li {
	/* border-right: 1px solid #e6eff1; */
}
@media screen and (min-width: 768px) {
	.mainvisual .global-nav_list li:first-child {
		/* border-right: 1px solid #e6eff1; */
	}
}

/*--------*/

.top_topics {
	background: #e6eff1;
	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: #e6eff1;
}
.top_app .btn_webreserve {
	box-shadow: 0px 1px 6px #ccc;
}
.top_menu ul li a {
	color: #fff;
	background: rgba(255, 255, 255, 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: #e6eff1;
}
.top_access .access-box {
	border-bottom: 1px solid #707070;
}

/*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: #707070;
}

/* blog */

.blog_list li {
	border-bottom: 1px solid #ccc;
}

/* ranking */

.ranking .therapist-box {
	border-bottom: 1px solid #ccc;
}
.ranking .therapist-box .rank {
	background: #e7e7e7;
	color: #707070;
}
.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 #707070;
}
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;
}
.recruit-detail dl dd {
	background: #fff;
}
.recruit-detail dl dd p a {
	border: 1px solid #707070;
	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 #e6eff1);
}
.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 #707070;
	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: #e6eff1;
}

/* cast */

.catchcopy-box {
	background: #fff;
}
.therapist-box p.catchcopy {
	color: #707070;
}
.therapist-box .profile-icon li {
	/* border: 1px solid #0053c5; */
	background: #707070;
	color: #fff;
}
.therapist-box .todays-time p {
	background: linear-gradient(12deg, #000 50%, #2a2a2a 51%);
	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: #707070;
	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 #707070;
	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: #e6eff1;
}
.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: #707070;
}

/* 口コミ */
.css-auobc3 {
	border-bottom: 1px solid #e6eff1;
}
.css-1cpjif9 {
	color: #707070;
}
.css-1v7shu4 {
	color: #707070;
}
.css-u60qnr {
	color: #707070 !important;
}
.profile-review {
	background: #fff;
}
/*************** ご案内情報 ***************/
.realtime-box {
	border: 1px solid #e6eff1;
	padding: 1.5rem 1rem;
	line-height: 1.6;
	background: rgba(255, 255, 255, 0.5);
}
.realtime-inner {
	padding: 0.75rem 0.25rem 1rem;
	overflow: scroll;
	/* height: 480px; */
}

@media screen and (min-width: 640px) {
	.realtime-box {
		padding: 2.5rem 3rem;
	}
	.realtime-inner {
		padding: 0.75rem 0.25rem 1rem;
		width: 98%;
		max-width: 1100px;
		margin: 0 auto;
	}
}

/*************** カスタム ***************/

.therapist-box .profile-icon li,
.therapist-single .profile-icon li {
	background: #e2cfae;
	color: #707070;
}

.single-cast-calendar .calendar ul li .schedule-castreserve-btn {
	display: none;
}
.single-cast-calendar .calendar ul li {
	justify-content: space-around;
}

.mv-info {
	width: 100%;
	position: absolute;
	bottom: 5rem;
	z-index: 1;
}
.mv-hours {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	font-size: 1.15rem;
	text-align: center;
	color: #fff;
}
.mv-hours div {
	display: flex;
	align-items: center;
}
.mv-hours span {
	font-size: 0.9rem;
	padding: 0rem 0.25rem;
	margin-right: 0.25rem;
}
.mv-tel {
	text-align: center;
	width: 100%;
	padding-top: 0.5rem;
}
.mv-tel a {
	font-size: 2.5rem;
	font-weight: 300;
	text-align: center;
	display: flex;
	align-content: center;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	line-height: 1;
	color: #fff;
}

@media screen and (min-width: 640px) {
	.mv-info {
		bottom: 5rem;
		background: none;
	}
	.mv-tel a {
		font-size: 2.75rem;
	}
	.mv-hours div {
		margin-left: 5px;
	}

	.mv-info-child {
		display: flex;
		justify-content: space-around;
		align-items: center;
		width: 100%;
		max-width: 980px;
		margin: 0 auto;
		flex-wrap: nowrap;
		flex-direction: column;
	}

	.mv-tel {
		width: auto;
		font-weight: 100;
	}

	.mv-hours {
		font-size: 1.5rem;
		padding-bottom: 2rem !important;
		margin-top: 5px;
	}
}

/*************** カスタム2 ***************/

.btn01 {
	width: 100%;
	max-width: 280px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #707070;
	margin-top: 4rem;
}
.btn01 a {
	background: none;
	color: #707070;
}
@media screen and (max-width: 640px) {
	.top_information .information_list li:nth-child(even) {
		flex-direction: row-reverse;
	}
}
.under-number {
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	/* font-size: 1.25rem; */
}

.num-tel {
	margin-top: -2px;
	font-size: 1.5rem !important;
	font-weight: 200;
}
.tel-time {
	font-size: 12px !important;
	margin-top: 2px;
}
.foot_navi {
	background: #e2cfae;
	background: #707070;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	background: rgba(24, 24, 24, 0.85);
	grid-template-columns: repeat(auto-fit, 56% 14% 15% 15%);
}
.foot_navi a {
	color: #fff;
}
.nav_follow {
	border-bottom: 1px solid #909fab;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	background: rgba(255, 255, 255, 0.8);
}

.sp-head-btn {
	display: flex;
	width: 80%;
	margin-left: 20%;
	padding-right: 4.25rem;
	justify-content: flex-end;
	box-sizing: border-box;
	align-items: center;
	height: 4rem;
	position: fixed;
	z-index: 2;
}
.sp-head-btn li {
	color: #707070;
	border-left: 1px solid #909fab;
}

.sp-head-btn .btn-last {
	border-right: 1px solid #909fab;
}
.sp-head-btn li a {
	display: flex;
	color: #707070;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	align-content: center;
	flex-wrap: wrap;
	font-size: 0.7rem;
	font-weight: 400;
	padding: 0.6rem 0.5rem 0;
	height: 4rem;
	box-sizing: border-box;
}
.sp-head-btn img {
	width: 1.5rem;
}
.sp-head-btn li span {
	color: #707070;
}
.toggle span {
	width: 60%;
	border-bottom: solid 2px #707070;
	right: 12px;
}
.toggle span:nth-child(1) {
	top: 1px;
}
.toggle span:nth-child(2) {
	top: 10px;
}
.toggle span:nth-child(3) {
	top: 19px;
}
.toggle span:nth-child(4) {
	font-size: 0.75rem;
	top: 20px;
	left: 0.1rem;
	letter-spacing: 2px;
	font-weight: 400;
}

.top_therapist,
.top_schedule {
	overflow: hidden;
}

@media screen and (max-width: 640px) {
	.castlist {
		margin-top: 2rem;
		padding: 0 2rem;
		grid-template-columns: repeat(auto-fit, 47%);
		position: relative;
	}
	.castlist li.therapist-box:nth-of-type(odd) {
		margin-top: -3rem;
		margin-bottom: 6rem;
	}
	.newface .castlist li.therapist-box:nth-of-type(odd) {
		margin-top: -3rem;
		margin-bottom: 6rem;
	}
	.castlist li {
		box-sizing: border-box;
	}
}

.therapist-box {
	position: relative;
	z-index: 0;
	margin: 0 0 3rem 0;
}
.therapist-box::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background: #fff;
}
.therapist-box::after {
	content: '';
	display: block;
	width: 101%;
	height: 108%;
	position: absolute;
	top: -4%;
	left: 8%;
	z-index: -2;
	background: #e6eff1;
}
.cast_data {
	padding: 0 0.25rem 0.25rem;
}
.top_schedule,
.top_blog,
.top_access {
	position: relative;
}

.top_blog:before,
.top_access:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/dotted.png);
	background-size: 100%;
	background-repeat: repeat;
	background-position: top;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0.15;
}

.top_blog:after,
.top_access:after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	/* background: url(../img/b-sub.jpg); */
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
	opacity: 0.1;
}

.top_contents .inner {
	width: 100%;
	padding: 1.5rem 1rem 1rem;
	box-sizing: border-box;
	background: #e6eff1;
	position: relative;
}
.top_contents .inner h2 {
	position: absolute;
	top: -0.75rem;
	left: 0;
	right: 0;
	font-weight: 500;
}
.newface {
	position: relative;
}
.newface .castlist::after {
	background: rgba(229, 238, 241, 0.94);
	width: 100%;
	height: calc((0.45 * 673) / 523 * 15% * 2 + 100%);
	content: '';
	display: block;
	position: absolute;
	top: 0;
	z-index: -1;
	transform: translate(15%, -7.5%);
}

.newface .therapist-box::after {
	background: none;
}

.nav_follow .logo {
	width: 16%;
}
.mainvisual .slick-slider {
	width: 100%;
	padding: 0 1rem;
	box-sizing: border-box;
	opacity: 0.95 !important;
	width: 94%;
	margin-left: 2.5%;
	margin-top: 15%;
	display: none;
}
.mainvisual .mainlogo {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	top: 3%;
	width: 100%;
	filter: drop-shadow(0px 0px 12px #212121);
	/* filter: drop-shadow(2px 2px 1px #707070); */
	/* mix-blend-mode: difference;
	mix-blend-mode: screen;
	mix-blend-mode: color-burn;
	mix-blend-mode: color-dodge;
	mix-blend-mode: overlay;
	mix-blend-mode: soft-light;
	mix-blend-mode: lighten;
	mix-blend-mode: hard-light; */
}
.mainvisual .mainlogo img {
	width: 70%;
	/* margin-left: 27.5%; */
}
.mv-info {
	bottom: 4.3rem;
	bottom: 0;
	padding-top: 50%;
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.5) 0%,
		rgba(0, 0, 0, 0.4) 25%,
		rgba(0, 0, 0, 0) 75%,
		rgba(0, 0, 0, 0) 100%
	);
	/* background: linear-gradient(
		to top,
		rgba(255, 255, 255, 0.9) 0%,
		rgba(255, 255, 255, 0.8) 25%,
		rgba(255, 255, 255, 0) 75%,
		rgba(255, 255, 255, 0) 100%
	); */
	/* filter: drop-shadow(0px 0px 12px #212121); */
}
.mv-info-child {
	/* filter: drop-shadow(2px 2px 1px #707070); */
}
.mv-info-child,
.mv-info-child a,
.mv-hours {
	color: #fff !important;
}
.mv-hours {
	padding-bottom: 2.5rem;
}
.mv-catch {
	font-family: 'Noto Serif JP', serif;
	/* border: 1px solid #fff; */
	padding: 1rem 0rem;
	margin: 20% 0% 0 0%;
	box-sizing: border-box;
	text-align: center;
	width: 95%;
	font-size: 7.5vw;
	/* font-style: italic; */
	/* letter-spacing: 0.04rem; */
	line-height: 1.5;
	font-weight: 100;
	color: #fff;
	transform: scale(1, 1.075) !important;
	display: flex;
	align-items: baseline;
	justify-content: center;
	box-sizing: border-box;
}
.m-left {
	margin-left: -4px;
	margin-right: -4px;
}

.m-right {
	margin-right: -10px;
	margin-left: 2px;
}
.mv-catch span {
	font-size: 6vw;
	font-weight: 100;
}
.mainvisual .global-nav {
	display: none;
}
.nav_follow .logo {
	width: 14%;
}
.nav_follow .logo img {
	opacity: 0.25;
	padding-top: 0.5rem;
}
@media screen and (min-width: 640px) {
	.mainvisual {
		/* height: 900px !important; */
	}
	.mv-catch span {
		font-size: 2rem;
		font-weight: 500;
	}
	.mv-catch {
		margin: unset;
		width: 100%;
		font-size: 2.5rem;
		margin-top: 2rem;
		min-width: 600px;
	}
	.mainvisual .slick-slider {
		width: 86%;
		margin-left: 7.5%;
		margin-top: -6%;
	}
	.top_blog:before,
	.top_access:before {
		background-size: 40%;
		opacity: 0.1;
	}
	.nav_follow .logo {
		width: 4%;
	}

	.mv-info {
		width: 69.5%;
		background: none !important;
		bottom: 18%;
	}
	.mv-info-child,
	.mv-info-child a,
	.mv-hours {
		color: #fff !important;
	}
	.mainvisual .mainlogo {
		width: 40%;
		top: -10%;
		left: -30%;
	}
	.mainvisual .mainlogo img {
		width: 100%;
		width: 65%;
	}
	.mainvisual .slick-slide img {
		width: 50%;
		margin: 14% 2rem 4rem 48%;
	}
}
.foot_navi {
	padding: 2px;
	box-sizing: border-box;
	grid-template-columns: repeat(auto-fit, 56% 14% 14% 14%);
	grid-gap: 3px;
}

.foot_navi a {
	border: 1px solid #fff;
	background: linear-gradient(48deg, #000 50%, #2a2a2a 51%);
}
footer .btn_tel a {
	background: linear-gradient(18deg, #000 50%, #2a2a2a 51%);
}
.slick-slider {
	overflow: hidden;
}
.toggle.active span:nth-child(2),
.toggle.active span:nth-child(3) {
	right: 8px;
}
.toggle.active span:nth-child(1) {
	left: 6px;
}
.disc p a {
	text-decoration: underline;
}

.mainvisual {
	height: 100vh;
	padding-top: 0;
}
.foot_navi {
	background: #e3edf0;
	grid-template-columns: repeat(auto-fit, 20%);
	grid-gap: 2rem;
	height: 3.5rem;
}
.foot_navi li a {
	background: #fff;
	border: 1px solid #707070;
	color: #707070;
	padding: 0;
	border-radius: 5px;
	font-size: 4vw;
	height: 2.5rem;
	font-weight: 400;
}
.foot_navi li a span {
	display: none;
}
.foot_navi {
	align-items: center;
	justify-content: center;
}

/*------------------------------*/

.contents_header p,
.cont_titile span {
	font-size: 1.75rem !important;
	font-weight: 300;
	padding-bottom: 0;
	margin-left: -0.5rem;
}
.cont_titile {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
	margin-left: 1.5rem;
	font-size: 1rem;
	line-height: 1.8;
	padding: 3rem 0 5.5rem;
}
.cont_titile::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 4.9rem;
	left: -3.5rem;
	border-top: 2px solid #707070;
	width: calc(24% - 3rem);
}
.cont_titile a {
	margin: unset;
}
.btn01 {
	border: none;
	justify-content: flex-end;
	max-width: unset;
	box-sizing: border-box;
	margin-left: -2.5rem;
}
.btn01 a {
	position: relative;
	display: inline-block;
	border-radius: unset;
	padding: 0;
	box-sizing: border-box;
}
.btn01 a::after {
	content: '';
	position: absolute;
	top: calc(50% - -0.75rem);
	right: -58%;
	border-bottom: 2px solid #707070;
	width: 165%;
	box-sizing: border-box;
}
.btn01 a .material-icons {
	display: none;
}

.btn01 a::before {
	content: '';
	position: absolute;
	top: calc(50% - -3px);
	right: -42px;
	width: 16px;
	border-radius: 9999px;
	border-bottom: 2px solid #707070;
	transform: rotate(52deg);
	transform-origin: calc(100% - 13px) 50%;
}
.btn01 a .material-icons {
	display: none;
}

.date li {
	border-bottom: none !important;
	padding: 0 !important;
	margin: 0 !important;
	flex-direction: column !important;
	justify-content: center !important;
	line-height: 0.75;
}
.date {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	margin-bottom: 0.75rem;
	position: relative;
	margin: 0.5rem 0 2rem;
}
.date::before {
	padding: 1.5rem;
	content: '';
	position: absolute;
	top: calc(0% - 0.25rem);
	right: -0.5rem;
	/* border-bottom: 1px solid #707070; */
	width: 24%;
	height: 100%;
	box-sizing: border-box;
}
.year {
	font-size: 0.9rem;
	padding-top: 0.25rem;
}
.date li.day {
	font-size: 2rem;
	margin-left: 0.25rem !important;
}
.month {
	font-size: 1.05rem;
}
footer .logo img {
	filter: brightness(0.85);
}
.blog_list li .disc {
	margin-top: -1.5rem;
}
.top_blog .date {
	margin: 0.5rem 0 0.5rem;
}
.top_blog .btn01 {
	margin-left: -1.5rem;
}
.top_access {
	margin-top: 2rem;
}
.top_access .access-box {
	border: none;
	margin-top: -7rem;
}
.global_nav_sp {
	text-align: left;
}
.global_nav_sp ul {
	display: flex;
	flex-direction: column;
	width: 70%;
	margin-left: 36%;
	height: 72%;
	margin-top: 11%;
}
.global_nav_sp ul li a {
	padding: 0;
	font-size: 1.1rem;
	font-weight: 500;
}
.global_nav_sp.active {
	width: 75%;
}
.global_nav_sp::before {
	content: '';
	position: absolute;
	top: 8%;
	right: 0;
	background: #e6eff1;
	width: 58%;
	height: 80%;
	box-sizing: border-box;
	z-index: -1;
}
.global_nav_sp {
	left: unset;
	right: 0;
}
.global_nav_sp .sns {
	display: none;
}
.global_nav_sp .credit {
	width: 68%;
}
.global_nav_sp a span {
	font-size: 1rem;
	font-weight: 500;
}
.cast_data .date {
	display: block;
	margin: unset;
}

@media screen and (min-width: 640px) {
	.contents_header p,
	.cont_titile span {
		font-size: 2.5rem !important;
		font-weight: 300;
		padding-bottom: 0;
		margin-left: -0.5rem;
	}
	.cont_titile {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		position: relative;
		margin-left: 1.5rem;
		font-size: 1rem;
		line-height: 1.8;
		padding: 3rem 0 5.5rem;
	}
	.cont_titile::before {
		top: 5.5rem;
		left: -3.5rem;
		width: calc(24% - 10rem);
	}
	.cont_titile a {
		margin: unset;
	}
}
.top_eventbanner {
	position: relative;
	padding: 2rem 0.1rem;
}
.top_eventbanner::before {
	content: '';
	display: block;
	background: linear-gradient(to left, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0.35) 100%),
		url(../img/bg-pc.jpg);
	background-size: cover;
	background-position: left top;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
}
.m-slide {
	width: 100%;
	padding: 2rem 1rem 1rem;
	max-width: 800px;
	margin: 0 auto;
	box-sizing: border-box;
}
.m-slide img {
	width: 100%;
}
.mv-catch {
	position: relative;
	display: inline-block; /* 文字幅に合わせて下線を引く */
	padding-bottom: 0; /* テキストと線の間隔 */
}

/* 下線のベース */
.mv-catch::after {
	content: '';
	position: absolute;
	left: 20px;
	bottom: 4px;
	height: 2px;
	width: 0; /* 最初は0 */
	background-color: #fff; /* 線の色 */
	animation: lineReveal 1s ease-out forwards;
	animation-delay: 1.5s; /* fadeInLeft後に出すなら調整 */
}

/* アニメーション：左→右 */
@keyframes lineReveal {
	from {
		width: 0;
	}
	to {
		width: 86%;
	}
}
.therapist-box .sns-icon img {
	margin-top: 0.2rem;
}
.grade-diamond {
	background: linear-gradient(
		to top,
		rgba(43, 43, 255, 0.7) -80%,
		rgba(132, 132, 251, 0.8) 50%,
		rgba(43, 43, 255, 1) 180%
	) !important;
}
