/*フォント*/
@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 Sans JP', sans-serif; */
	font-family: 'Noto Serif JP', serif;
}
.btn_totop {
	display: none;
}
.top_menu ul li a p,
.contents_header p,
.cont_titile span,
.top_topics .sh {
	font-family: 'EB Garamond', serif;
	text-transform: uppercase;
	font-weight: 100;
}
.contents_header,
.contents_header p,
.cont_titile,
.cont_titile span {
	/* text-shadow: -2px -2px 1px white, 2px -2px 1px white, -2px 2px 1px white, 2px 2px 1px white, 0px 0px 2px white; */
	text-shadow: 2px 0px 5px white, 0px 2px 5px white, -2px 0px 5px white, 0px -2px 5px white, 2px 2px 5px white,
		-2px -2px 5px white, 0px 0px 5px white, 2px 0px 3px white, 0px 2px 3px white, -2px 0px 3px white, 0px -2px 3px white,
		2px 2px 3px white, -2px -2px 3px white, 0px 0px 3px white;
	font-weight: bolder;
}

.top_special .cont_titile span {
	font-size: 1.6rem;
}
.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: 70px 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: linear-gradient(
			to top,
			rgba(255, 255, 255, 0) 0%,
			rgba(255, 255, 255, 0.3) 50%,
			rgba(255, 255, 255, 0.35) 100%
		),
		url(../img/bg-sp.jpg);
	background: url(../img/bg-sp.jpg);
	background-size: cover;
	background-size: 142%;
	background-position: center;
	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: 1rem;
	}
}
@media screen and (min-width: 640px) {
	main::before {
		background: linear-gradient(
				to top,
				rgba(255, 255, 255, 0.35) 0%,
				rgba(255, 255, 255, 0.4) 50%,
				rgba(255, 255, 255, 0.35) 100%
			),
			url(../img/bg-pc.jpg);
		background: url(../img/bg-pc.jpg);
		background-size: cover;
	}
}

.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;
	flex-direction: column;
	padding: 0.25rem 0;
}
.f-hours div {
	width: 100%;
	margin: 0 auto;
	font-size: 12px;
}
.f-hours div:nth-of-type(1) {
	font-size: 0.75rem;
	line-height: 1.3;
	font-weight: 700;
}
.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: #212121;
}
a {
	color: #212121;
}
/* a:link {
	color: #212121;
} */

/* a:visited {
	color: #212121;
}

a:hover {
	color: #212121;
}

a:active {
	color: #212121;
} */
option {
	color: #000;
}
select {
	color: #000;
}
.btn01 a {
	background: #000;
	color: #fff;
}
.cont_titile {
	color: #000;
}
.cont_titile span {
	color: #000;
}
.cont_titile a {
	color: #000;
}

/* header */

.nav_follow {
	background: #fff;
	border-bottom: 4px solid #bf333d;
	/* border-image: linear-gradient(to top, #0053c5 78%, #cff0f7 100%); */
}
.toggle {
	/* background: rgba(255,255,255,0.7); */
}
.toggle span {
	border-bottom: solid 3px #bf333d;
}
.global_nav_sp {
	background: rgba(255, 255, 255, 0.95);
	color: #454545;
	padding-top: 2rem;
}
.global_nav_sp ul li a {
	color: #212121;
}
.global_nav_sp a span {
	color: #ccc;
}
@media screen and (min-width: 640px) {
	.fix-header {
		background: #fff;
	}
	.nav_follow .head_btn.reserve a {
		background: #bf333d;
		color: #fff;
		height: 6rem;
	}
}

/*footer */

footer {
	background: #fff;
}
footer small {
	color: #212121;
}
.foot_navi {
	background: #000;
}

.foot_navi a {
	color: #fff;
}
.f-hours {
	background: #bf333d;
	color: #fff;
	border-top: 1px solid #666;
}
footer ul.foot_navi_list a {
	color: #212121;
}

@media screen and (min-width: 640px) {
	footer ul.foot_navi_list li {
		border-left: 1px solid #bbb;
	}
}

/* index */

.mainvisual .global-nav {
	background: rgba(0, 0, 0, 1);
}
.mainvisual .global-nav a {
	color: #fff;
}
.mainvisual .global-nav a span {
	color: #fff;
}
.mainvisual .global-nav_list li + li {
	border-right: 1px solid #333;
}
@media screen and (min-width: 768px) {
	.mainvisual .global-nav_list li:first-child {
		border-right: 1px solid #333;
	}
}

/*--------*/

.top_topics {
	background: #fff;
	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: #bf333d;
	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: #ffe2e7;
}
.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 #212121;
}
.top_contents,
.top_eventbanner {
	/* background: #fff; */
}
.top_schedule,
.top_blog,
.top_access {
	background: #fff;
}
/*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: #ffaeb4;
	color: #212121;
}

/* 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;
}
.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: #ffe2e7;
}

/* cast */

.catchcopy-box {
	background: #fff;
}
.therapist-box p.catchcopy {
	color: #212121;
}
.therapist-box .profile-icon li {
	/* border: 1px solid #0053c5; */
	background: #000;
	color: #fff;
}
.therapist-box .todays-time p {
	background: #000;
	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: #000;
	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: #ffe2e7;
}
.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: #212121;
}
.css-1v7shu4 {
	color: #212121;
}
.css-u60qnr {
	color: #212121 !important;
}
.profile-review {
	background: #fff;
}

/*************** カスタム ***************/
.therapist-box .profile-icon li,
.therapist-single .profile-icon li {
	background: #bf333d;
}
.top_contents {
	width: 100%;
	padding: 1rem;
	box-sizing: border-box;
}
.top_contents .inner {
	background: #fff;
	box-sizing: border-box;
	width: 100%;
	padding: 2rem 1rem;
	outline: solid 3px #fff;
	outline-offset: 2px;
}
#sbi_mod_link,
#sbi_mod_error {
	display: none !important;
}
.sb_instagram_header {
	display: none;
}
@media screen and (min-width: 640px) {
	.x-instagram {
		width: 100%;
		max-width: 1100px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
}
.slider_special {
	padding-bottom: 4rem;
}
.slider_special .slick-slide img {
	padding: 0 0.5rem;
	box-sizing: border-box;
}
.toggle span {
	width: 80%;
	right: unset;
}
.toggle span:nth-child(1) {
	top: 0;
	left: 1px;
}

.toggle span:nth-child(2) {
	top: 9px;
	left: 1px;
}

.toggle span:nth-child(3) {
	top: 18px;
	left: 1px;
}
.toggle span:nth-child(4) {
	border: none;
	top: 21px;
	left: 2px;
	font-size: 0.65rem;
	font-weight: bolder;
	letter-spacing: 1px;
	color: #bf333d;
}
.toggle.active span:nth-child(1) {
	top: 9px;
	left: 0;
}
.toggle.active span:nth-child(2),
.toggle.active span:nth-child(3) {
	right: unset;
	top: 10px;
	left: 4px;
}
.global_nav_sp ul li a {
	display: flex;
	flex-direction: column-reverse;
	font-size: 0.7rem;
	font-weight: bold;
}
.global_nav_sp a span {
	color: #bf333d;
	font-size: 1.05rem;
	font-weight: bolder;
}
.therapist-box {
	position: relative;
	background-color: rgba(255, 255, 255, 1);
	padding: 0.5rem;
	margin: 0 0 10px 0;
}
.therapist-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 3px solid #bf333d;
}
.cast_data {
	padding: 0.25rem;
}

@media screen and (max-width: 640px) {
	.castlist {
		grid-template-columns: repeat(auto-fit, 49%);
		padding: 0 0.75rem;
	}
}
.top_credit p {
	background: #fff;
	padding: 2rem 1rem;
	box-sizing: border-box;
	width: 100%;
	padding: 2rem 0.5rem;
	outline: solid 3px #fff;
	outline-offset: 2px;
	font-size: 0.85rem;
}
.inner_under {
	padding: 0 1rem;
	box-sizing: border-box;
}
.cast {
	background: #fff;
	padding: 2rem 0;
	outline: solid 5px #bf333d;
	/* outline-offset: 2px; */
}
.cast .comment.cast {
	background: unset;
	padding: unset;
	outline: unset;
}
.contents_header h1 {
	font-weight: bolder;
}
@media screen and (min-width: 640px) {
	.contents_header {
		padding: 5rem 0 0rem;
	}
}
.breadcrumb,
.breadcrumb a,
.breadcrumb span:first-child {
	text-shadow: 2px 0px 5px white, 0px 2px 5px white, -2px 0px 5px white, 0px -2px 5px white, 2px 2px 5px white,
		-2px -2px 5px white, 0px 0px 5px white, 2px 0px 3px white, 0px 2px 3px white, -2px 0px 3px white, 0px -2px 3px white,
		2px 2px 3px white, -2px -2px 3px white, 0px 0px 3px white;
	font-size: 0.7rem;
	font-weight: bolder;
}
.therapist-single .comment {
	border: none;
}
.therapist-single .comment.cast dt {
	background: #ffe2e7;
}
.therapist-single .comment.master {
	border: 1px solid #ccc;
}
.therapist-single .comment.master dt {
	background: #bf333d;
	color: #fff;
}
.single-cast-calendar .calendar ul li .schedule-castreserve-btn {
	display: none;
}
.single-cast-calendar .calendar ul li {
	justify-content: space-around;
}
.inner_page {
	width: 100%;
	background: #fff;
	padding: 2rem 1rem 1rem;
	box-sizing: border-box;
}
.blog_list li :last-of-type {
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
@media screen and (min-width: 640px) {
	.nav_follow {
		height: 6rem;
		padding: 0 !important;
	}
	.nav_follow .head_btn a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 0;
	}
	.nav_follow div {
		display: flex;
		justify-content: space-between;
		align-content: center;
		flex-wrap: wrap;
		align-items: center;
	}
	.nav_follow .head_btn {
		margin: 0 !important;
	}
	.btn-set-size {
		line-height: 1.4;
		margin-top: 0.2rem;
	}
	.nav_follow .btn_tel a {
		padding-top: 0;
	}
	.top_information {
		width: 100%;
		margin: 0 auto;
	}
	.top_twitter {
		width: 48%;
	}
	.top_instagram {
		width: 48%;
	}
	.inner {
		padding: 3rem 0 3.5rem;
	}
	.top_schedule .inner {
		padding: 4rem 0;
	}
	.top_information .information_list {
		padding: 3rem 4rem;
	}
	.top_information .information_list li {
		max-width: 1100px;
		margin: 20px auto;
	}
}
.access {
	background: #fff;
}
.inner_under {
	background: #fff;
	width: 90%;
	padding: 0;
}
@media screen and (min-width: 640px) {
	.inner_under {
		background: #fff;
		width: 100%;
		padding: 2rem 4rem 6rem;
	}
}
.inner_under.archivecast {
	padding: 0.5rem;
	box-sizing: border-box;
	width: 94%;
}
.inner_under.archivecast .castlist {
	padding: 0.25rem 0.25rem;
}
@media screen and (max-width: 640px) {
	.top_special .cont_titile span {
		font-size: 7vw;
	}
}
