/* CSS Document */
/*キャッチコピー*/
#wccatchcopy{
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
  border-bottom: 0 !important;
}
#wccatchcopy div.wcinner > * {
  padding: 0 !important;
  white-space: inherit !important;
  line-height: 0 !important;
  font-size: 0 !important;
  height: 0  !important;
}
/*画像*/
figure{
}
figure picture{
	width: 100%;
	height: 100%;
	display: block;
}
figure img{
	width: 100%;
	height: auto;
	object-fit: cover;
}
/*透明*/
.opa{
	width: 0;
	height: 0;
	opacity: 0;
	display: block;
	overflow: hidden;
}
/*btn*/
.btn{
	width: fit-content;
}
.btn a{
	display: flex;
  padding: 0.5rem 0.75rem 0.5rem 1rem;
  border-radius: 2rem;
  box-sizing: border-box;
  text-decoration: none;
	align-items: center;
	gap: 0.5rem;
	line-height: 1em;
	border: solid 1px var(--borderColor);
	background-color: #fff;
	justify-content: space-between;
}
.btn.back_50 a{
  background-color: rgba(59,55,56,0.25);
  border: solid 1px #fff;
}
.btn a .b_icon{
	display: table;
	width: 25px;
	height: 25px;
	border: solid 1px var(--borderColor);
	border-radius: 50%;
	position: relative;
	z-index: 1;
	box-sizing: border-box;
}
.btn.back_50 a .b_icon{
	border: solid 1px #fff;
	background-color: transparent !important;
	width: 33px;
	height: 34px;
}
.btn a .b_icon::after{
	content: "";
	width: 40px;
	height: 40px;
	background-color: var(--borderColor);
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.btn.back_50 a .b_icon::after{
	width: 40px;
	height: 40px;
}
.btn.back_50 a .b_icon{
	background-color: #fff;
}
.btn a .btn_text{
	line-height: calc(1rem +(1em - 1lh) / 2);
	padding-bottom: 0.13rem;
	display: table;
	color: var(--supportColor);
	font-size: 1.15rem;
}
.btn.back_50 a .btn_text{
	color: #fff;
	font-size: 1.25rem;
}
/*ボタンブロック*/
.btn_block{
	display: flex;
}
body[wc-view-type="tb"] .btn_block,
body[wc-view-code="sp"] .btn_block{
	flex-direction: column;
  width: fit-content;
  gap: 0.75rem;
}
.btn_block .btn{
}
body[wc-view-code="sp"] .btn_block .btn{
}
body[wc-view-type="tb"] .btn_block .btn,
body[wc-view-type="tb"] .btn_block .btn a,
body[wc-view-code="sp"] .btn_block .btn,
body[wc-view-code="sp"] .btn_block .btn a{
	width: 100%;
}
.btn_block .btn a{
}
body[wc-view-code="sp"] .btn_block .btn a{
}
/*タイトル*/
.contents_title{
	font-size: 1.4rem;
	transition: opacity linear 600ms,filter linear 700ms;
	opacity: 0;
	filter: blur(15px);
}

.contents_title.wcvisible{
	opacity: 1;
	filter: blur(0);
}
body[wc-view-code="pc"] .contents_title{
	font-size: 1.55rem;
}
.contents_title::before{
	content: "Concept";
	color: var(--accentColor);
	font-family: "Roboto";
	letter-spacing: 1.5px;
	font-size: 1.1rem;
	display: table;
	margin-bottom: 0.25rem; 
}
body[wc-view-code="pc"] .contents_title::before{
	font-size: 1.2rem;
}
/*ページタイトル*/
.page_title{
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
body[wc-view-code="sp"] .page_title{
	height: 180px;
	padding: 0 7vw;
}
body[wc-view-type="tb"] .page_title{
	height: 200px;
	padding: 0 5vw;
}
body[wc-view-type="tb-l"] .page_title{
	height: 220px;
	padding: 0 5vw;
}
body[wc-view-code="pc"] .page_title{
	height: 280px;
	padding: 0 calc((100vw - 1100px) / 2);
}
.page_title .contents_title{
	position: relative;
	z-index: 4;
}
.page_title .contents_title,
.page_title .contents_title::before{
	color: #fff;
}
.page_title > figure{
	position: absolute;
	inset:0;
	z-index: 1;
}
.page_title > figure::before{
	content: "";
	position: absolute;
	z-index: 2;
	background-color: rgba(59,55,56,0.5);
	inset: 0;
}
.page_title > figure img{
}
body[wc-view-code="sp"] .page_title > figure img{
	height: 180px;
}
body[wc-view-type="tb"] .page_title > figure img{
	height: 200px;
}
body[wc-view-type="tb-l"] .page_title > figure img{
	height: 220px;
}
body[wc-view-code="pc"] .page_title > figure img{
	height: 280px;
}
/*header*/
header{
	position: relative;
	z-index: 1;
}
header::before,
header::after{
	content: "";
	width: 40px;
	height: 40px;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
	position: absolute;
	z-index: 2;
	bottom: -40px;
	background-color: #fff;
}
body[wc-view-code="pc"] header::before,
body[wc-view-code="pc"] header::after{
	width: 120px;
	height: 120px;
	bottom: -120px;
}
header::before{
	-webkit-mask-image: url("/cp_works/standard/massage/img/svg/header_left.svg");
  mask-image: url("/cp_works/standard/massage/img/svg/header_left.svg");
	left: 0;
}
header::after{
	-webkit-mask-image: url("/cp_works/standard/massage/img/svg/header_right.svg");
  mask-image: url("/cp_works/standard/massage/img/svg/header_right.svg");
	right: 0;
}
header#wcheader .menubtn[wc-icon][name]:not([item-pos*="show"])::after{
	color: var(--accentColor) !important;
}
header#wcheader .menubtn:not(.wcshowmenuwrap) span.btndeco{
	display: none !important;
}
/*ドロワーメニュー*/
.wcdrawermenu div.header {
  background-color: var(--defBgColor) !important;
}
.wcdrawermenu div.wcdrawermenuwrap > div.wcinner {
  background-color: var(--defBgColor) !important;
}
.wcdrawermenu div.header div.drawerclosebtn[wc-icon] span::before {
  background-color: var(--supportColor) !important;
  -webkit-mask-size: cover !important;
	mask-size: cover !important;
}
.wcdrawermenu div.header div.drawerclosebtn span[name]::after {
  color: var(--supportColor) !important;
}
.wcdrawermenu div.header div.drawerclosebtn span[name]::after {
  color: var(--supportColor) !important;
}
.wcdrawermenuwrap{
	background-color: var(--defBgColor) !important;
}
/*footer*/
footer{
	text-align: left !important;
}
.f_contact{
	box-sizing: border-box;
	display: flex;
}
body:not([wc-view-type="tb"]) .f_contact{
	flex-direction: column;
}
body[wc-view-code="sp"] .f_contact{
	padding: var(--headerHeight) 7vw 0;
}
body[wc-view-code="tb"] .f_contact{
	padding: var(--headerHeight) 5vw 0;
}
body[wc-view-code="pc"] .f_contact{
	padding: var(--headerHeight) calc((100vw - 1100px) / 2) 0;
}
.f_contact .fc_title_box{
	display: flex;
	box-sizing: border-box;
}
body[wc-view-code="sp"] .f_contact .fc_title_box,
body[wc-view-type="tb"] .f_contact .fc_title_box{
	flex-direction: column;
}
body[wc-view-type="tb"] .f_contact .fc_title_box{
	width: 320px;
	padding-right: 1rem;
}
.f_contact .fc_title_box .contents_title{
	opacity: 1;
	filter: blur(0);
}
body[wc-view-type="tb-l"] .f_contact .fc_title_box .contents_title{
	width: 420px;
}
body[wc-view-code="pc"] .f_contact .fc_title_box .contents_title{
	width: 450px;
}
.f_contact .fc_title_box .contents_title::before{
	content: "contact";
}
.f_contact .fc_title_box .fc_text{
}
body[wc-view-type="tb-l"] .f_contact .fc_title_box .fc_text{
	width: calc(100% - 420px);
	margin: 2rem 0 1.5rem;
}
body[wc-view-code="pc"] .f_contact .fc_title_box .fc_text{
	width: calc(100% - 450px);
	margin: 2rem 0 1.5rem;
}
.f_contact .fc_title_box .fc_text{
	margin: 1rem 0;
}

.f_contact .f_in_contact{
	width: 100%;
	display: flex;
	padding: 1rem;
	box-sizing: border-box;
	background-color: var(--defBgColor);
	border-radius: 1rem;
}
body[wc-view-code="sp"] .f_contact .f_in_contact,
body[wc-view-type="tb"] .f_contact .f_in_contact{
	flex-direction: column;
  gap: 1rem;
}
body[wc-view-code="sp"] .f_contact .f_in_contact{
  padding: 1rem 0.75rem;
}
body[wc-view-type="tb"] .f_contact .f_in_contact{
	width: calc(100% - 320px);
}
body[wc-view-type="tb-l"] .f_contact .f_in_contact,
body[wc-view-code="pc"] .f_contact .f_in_contact{
	gap:1rem;
}
.f_contact .f_in_contact a{
	text-decoration: none;
	display: block;
}
body:not([wc-view-code="sp"]) .f_contact .f_in_contact a.tel{
	pointer-events: none;
}
body[wc-view-type="tb-l"] .f_contact .f_in_contact a,
body[wc-view-code="pc"] .f_contact .f_in_contact a{
	width: calc((100% / 3) - 0.67rem);
}
.f_contact .f_in_contact a > dl{
	height: 100%;
}
.f_contact .f_in_contact a > dl > dt{
	display: flex;
  padding: 0 0.5rem 0.35rem;
}
body[wc-view-code="sp"] .f_contact .f_in_contact a > dl > dt,
body[wc-view-type="tb-l"] .f_contact .f_in_contact a > dl > dt{
  flex-direction: column-reverse;
}

body[wc-view-type="tb"] .f_contact .f_in_contact a > dl > dt,
body[wc-view-code="pc"] .f_contact .f_in_contact a > dl > dt{
  align-items: baseline;
  justify-content: space-between;
	padding: 0 0.75rem 0.35rem;
}
.f_contact .f_in_contact a > dl > dt > p{
	font-size: 1.05rem;
}
body[wc-view-type="sp"] .f_contact .f_in_contact a > dl > dt > p{
	font-size: 1.1rem;
}
body[wc-view-code="tb"] .f_contact .f_in_contact a > dl > dt > p,
body[wc-view-code="pc"] .f_contact .f_in_contact a > dl > dt > p{
	font-size: 1.15rem;
}
.f_contact .f_in_contact a > dl > dt > .fc_eg{
	display: table;
  font-family: "Roboto";
  letter-spacing: 1.5px;
  color: var(--accentColor);
  font-size: 0.95rem;
}
.f_contact .f_in_contact a > dl > dd{
	padding: 1rem;
	background-color: #fff;
	border-radius: 1rem;
	position: relative;
	z-index: 1;
	height: calc(100% - 1.8rem);
  box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
body[wc-view-type="tb-l"] .f_contact .f_in_contact a > dl > dd{
	height: calc(100% - 2.8rem);
}
/*
.f_contact .f_in_contact a > dl > dd::before{
	content: "";
  width: 1.25rem;
  height: 1.25rem;
  background-color: var(--defBgColor);
  position: absolute;
  top: 0;
  left: 1rem;
  transform: translateY(-50%) rotate(45deg);
  border-radius: 0 0 0.45rem 0;
}*/
.f_contact .f_in_contact a > dl > dd .tel_num{
	font-family: "Roboto";
	font-size: 1.75rem;
	color: var(--borderColor);
	width: fit-content;
	display: flex;
	align-items: center;
	margin: 0 auto;
	column-gap:0.5rem; 
}
body[wc-view-code="pc"] .f_contact .f_in_contact a > dl > dd .tel_num{
	height: 48px;
}
.f_contact .f_in_contact a > dl > dd .tel_num span{
	width: 30px;
	height: 30px;
	border: solid 1px var(--borderColor);
	border-radius: 50%;
	position: relative;
	z-index: 1;
}
.f_contact .f_in_contact a > dl > dd .tel_num span::before{
	content: "";
	width: 32px;
	height: 32px;
	background-color: var(--borderColor);
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.f_contact .f_in_contact a > dl > dd .b_time{
	display: flex;
  justify-content: center;
	align-items: baseline;
  gap:0.75rem;
  margin-top: 0.5rem;
}
body[wc-view-code="pc"] .f_contact .f_in_contact a > dl > dd .b_time{
	margin-top: auto;
}
.f_contact .f_in_contact a > dl > dd .b_time > dl{
	display: flex;
	flex-direction: column;
}
.f_contact .f_in_contact a > dl > dd .b_time > dl dt{
}
.f_contact .f_in_contact a > dl > dd .b_time > dl dt span{
	font-size: 0.82rem;
  color: var(--supportColor);
  border: solid 1px var(--borderColor);
  line-height: 1em;
  padding: 0.15rem 0.5rem;
  border-radius: 1rem;
  display: table;
  margin: 0 auto 0.15rem;
}
.f_contact .f_in_contact a > dl > dd .b_time > dl dd{
	text-align: center;
}
.f_contact .f_in_contact a > dl > dd .b_time > dl .b_num{
	font-family: "Roboto";
	padding-top: 0.15rem;
}
.f_contact .f_in_contact a > dl dd .more .fc_in_text{
	margin-bottom: 0.5rem;
}
.f_contact .f_in_contact a > dl dd .more{
	width: fit-content;
  margin: 0 auto;
  display: flex;
  gap: 0.25rem;
  border: solid 1px var(--borderColor);
  padding: 0.25rem 0.5rem;
  border-radius: 1rem;
  align-items: center;
  color: var(--supportColor);
	margin-top: 0.75rem;
}
.f_contact .f_in_contact a > dl dd .more .fc_icon{
	width: 20px;
	height: 20px;
	border: solid 1px var(--borderColor);
	border-radius: 50%;
	position: relative;
	z-index: 1;
}

.f_contact .f_in_contact a > dl dd .more .fc_icon::before{
	content: "";
	width: 25px;
	height: 25px;
	background-color: var(--borderColor);
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
/*元の記述から変更*/
footer .namedataarea[flex-flow]{
  justify-content: flex-start !important;
}
footer .namedataarea{
}
footer div.footer .footeritem.logolineitem {
  width: fit-content !important;
  margin: 0 !important;
}
footer .namedataarea{
  width: auto !important;
}
body[wc-view-code="pc"] footer div.footer .footeritem.logolineitem{
  margin-left: 1.5rem !important;
}
footer .footerflex {
  flex-direction: column !important;
  align-items: baseline !important;
}
body[wc-view-code="tb"] footer div.footer,
body[wc-view-code="pc"] footer div.footer{
  justify-content: flex-start !important;
}
body[wc-view-code="tb"] footer .footerflex > :not(.topauto),
body[wc-view-code="pc"] footer .footerflex > :not(.topauto){
  margin-top: 0 !important;
}

.footersnsarea > div{
  background-color: transparent !important;
}
.footersnsarea > div[svg-color="true"] a {
  background-color: #fff !important;
  border: solid 1px var(--borderColor) !important;
}
#wcCopyright, #wcCopyright a{
  font-weight: 400 !important;
}
body[touch-pos] footer div.footer::before, body[touch-pos] footer div.footer::after{
  background-color: var(--defColor) !important;
}
body[touch-pos] footer div.footer{
  border-color: var(--defColor) !important;
}
body[touch-pos] footer div.footer::before, body[touch-pos] footer div.footer::after{
  display: none !important;
}
body[touch-pos] footer div.footer {
  border-bottom: none !important;
}
/*スクロールボタン*/
#wcscrollbtns .scrollbtnwrap .wcscrbtn{
  background-color: transparent !important;
  color: var(--supportColor) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border-radius: 2rem;
  border: solid 1px var(--borderColor) !important;
	box-sizing: border-box;
}
#wcscrollbtns .scrollbtnwrap .wcscrbtn::after {
  background-color: var(--supportColor) !important;
}
/*サイトの雰囲気に合わせて変更*/
body[wc-view-type="tb"] footer div.footerlogo{
	flex-direction: column !important;
}
body[wc-view-type="tb"] footer div.footerlogo .logomark{
	width: 80px !important;
}
body[wc-view-type="tb"] footer div.footerlogo .logotype{
	width: 150px !important;
  margin-top: 0.5rem;
}
#wcfooter .footerflex .wc-dlbox_address dt::before {
  background-color: var(--supportColor) !important;
}
#wcfooter .footerflex .wc-dlbox_address dt::after{
	background-color: #fff !important;
  border: solid 1px var(--borderColor) !important;
  box-sizing: border-box;
}
footer .footertextlinks > div + div:not(.noneline)::before{
	display: none !important;
}
footer .footertextlinks a{
	text-decoration: none !important;
}