/* 基本样式 */
body {
    font-family: 'Comic Sans MS', cursive;
    margin: 0;
    padding: 0;
    color: #555;
    background-color: #fff;
	
	position: relative;
    letter-spacing: .1em;
    line-height: 1.5;
    font-size: 12px
}

.container {
    width: 98%;
    max-width: 1200px;
    margin: 0 auto;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}


#contents {
    width: 100%;
    height: auto;
    margin: 0px auto;
    background: url(../images/bg.jpg) repeat top center;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

#contents_wide {
    width: 98%;
    max-width: 1100px;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    background-color: rgba(255, 255, 255, 0.3);
}


.bg {
    border-bottom: 1px solid #e0e3e7;
    border-right: 1px solid #e0e3e7;
    background: url(../images/ue.gif), url(../images/sita.gif) #ffffff;
    background-repeat: no-repeat, no-repeat;
    background-size: 23px 23px, 23px 23px;
    background-position: top left, bottom right;
    margin-bottom: 10px;
    padding-bottom: 20px;
}

/* h2 */
h2.top {
    width: 100%;
    text-align: center;
    height: auto;
    margin: 0px auto;
    padding: 10px 0px 30px 0px;
    background: url(../images/bg.png) no-repeat;
    background-size: 200px 200px;
    background-position: bottom center;
    text-shadow: 1px 0px 0px #ffffff;
    font-weight: normal;
}

h2.top .en {
    display: block;
    width: 100%;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    font-family: eigo;
    font-size: 18px;
    line-height: 90%;
    color: #56261c;
}

h2.top small {
    display: block;
    width: 100%;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    font-family: eigo;
    font-size: 6px;
    letter-spacing: 2px;
    line-height: 140%;
    color: #875b04;
}

h2.top .ja {
    display: block;
    width: 100%;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    font-size: 12px;
    line-height: 140%;
    color: #875b04;
}



.d-sm-none{
	display:none;
	}
	
.d-md-block {
        display: block !important;
    }


/* 导航栏 */
#navbar {
    background-color: rgba(223, 144, 255, 0.9);
    padding: 20px 0;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
    transition: background-color 0.3s;
}

#navbar.scrolled {
    background-color: rgba(155, 89, 182, 0.7);
}


#navbar .logo img {
    height: 50px;
}

#navbar .nav-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
	display: flex;
    align-items: stretch;
    justify-content: space-between;
    width: 100%;
}

#navbar .nav-links li {
    margin-left: 20px;
}

#navbar .nav-links a {
    text-decoration: none;
    color: #555;
    font-weight: bold;
    transition: color 0.3s;
}

.nav-links .sitenavi-link-text {
    color: #fff;
    font-size: 18px;
    font-family: JUN501PRO-BOLD;
    font-weight: 700;
    position: relative;
}


.nav-links  .sitenavi-link {
    padding: 0 0;
	display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
}


.nav-links .sitenavi-linka:hover {
    color: #9b59b6;
}


#navbar .sitenavi-item {
	flex: 1;
    height: 50px;
}


#navbar .sitenavi-item:hover {
    background: rgba(240,135,150,.8)
}


.menu-toggle {
    display: none;
    font-size: 24px;
    cursor: pointer;
}

/* slideout-menu */	
.slideout-menu {
    display: none;
}



/* 主视觉区域 */
.main-visual {
    /*background-image: url('../images/main-visual.jpg');*/
    background-size: cover;
    background-position: center;
    /*height: 100vh;*/
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
}

.main-visual .container{
	text-align: center;
	margin-top:90px;
	}


.link-item {
    position: relative;
}

.image-box {
    height: 300px;
    display: flex;
    align-items: flex-end;
}

.top_info {
    /* position: absolute; */
    margin: 0 auto;
    margin-bottom: 10px;
    color: #fff;
    text-shadow: 0 0 25px #F27098, 0 0 25px #F27098, 0 0 25px #F27098, 0 0 15px #F27098, 0 0 15px #F27098, 0 0 15px #F27098, 0 0 5px #F27098, 0 0 5px #F27098, 0 0 5px #F27098, 0 0 5px #F27098, 0 0 5px #F27098, 0 0 5px #F27098, 0 0 5px #F27098;
}


.top_info .open {
    font-size: 1.45rem;
    color: #fff;
    line-height: 1;
}

.top_info .open span {
    font-size: .75rem;
}

.top_info .tel a {
    color: #fff;
    font-size: 2.25rem;
}

.top_info .tel a span {
    color: #fff;
    font-size: 1rem;
}

.top_info .access_info {
    font-size: 1.25rem;
    letter-spacing: 0;
}


.main-visual h1 {
    font-size: 3rem;
    margin: 0;
}

.main-visual p {
    font-size: 1.5rem;
    margin: 20px 0;
}

.main-visual .btn {
    background-color: #9b59b6;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.3s;
}

.main-visual .btn:hover {
    background-color: #ff1493;
}


/* イベント */
.event {
    text-align: center;
    margin-top: 10px;
}

.event h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.event  .container{
	max-width:900px;
	}
	
.slick-dots li button:before{
	color:#F69 !important
	}



/* -お知らせ- */
.news {
    padding-bottom: 20px;
}

.news h2 {
    font-size: 2rem;
    margin-bottom: 20px;
}

.news  .container{
	max-width:900px;
	}
	
.news  .news-cont {
    padding: 5px;
    height: 320px;
    overflow-y: auto;
    background: #fff;
    font-size: 14px;
} 
	

.news-cont  .list-group {
    margin: 0;
}

.list-group {
    list-style: none;
}


.news-cont .list-group-item {
    border: 0;
    border-radius: 0;
    border-bottom: 1px dotted #CCCCCC;
}


.news-cont .list-group-item .date {
    padding: 3px 5px;
    text-align: left;
}

.news-cont  .list-group-item .title {
    padding: 0.5rem 0.5rem;
    border-left: 6px double #000;
    background: #f4f4f4;
}

.news-cont  .list-group-item .message {
    padding: 5px;
}

	
/* 服务区域  Pick Up */
.services {
    text-align: center;
}

.services h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.slider-section {
    position: relative;
}

.swiper-pagination {
    display: none;
}



/* セラピスト紹介 */
 
.therapist {
    text-align: center;
}

.therapist h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.therapist-list {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.therapist-card {
    background-color: #F5F7F9;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    width: 25%;
    margin-bottom: 20px;
    transition: transform 0.3s, box-shadow 0.3s;
    padding: 3px 0px;
    border-bottom: 1px solid #e0e3e7;
    border-right: 1px solid #e0e3e7;
}

.therapist-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.therapist-card img {
    width: 100%;
    border-radius: 10px;
}


.therapist-name{
    width: 95%;
    height: 17px;
    margin: 5px auto;
    padding: 5px 0px;
    overflow: hidden;
}

.gra {
    box-shadow: 0 0 0 1px #d4c5b5 inset, 0 0 0 2px #ffffff inset;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 1%, #eadccc 100%);
    background: -webkit-linear-gradient(top, #ffffff 1%, #eadccc 100%);
    background: linear-gradient(to bottom, #ffffff 1%, #eadccc 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eadccc',GradientType=0 );
}

.therapist-size {
    width: 95%;
    height: auto;
    margin: 0px auto;
    padding: 4px 0px;
    border-bottom: 1px solid #e0e3e7;
    background: url(../images/ue.gif), url(../images/sita.gif) #ffffff;
    background-repeat: no-repeat, no-repeat;
    background-size: 20px 20px, 20px 20px;
    background-position: top left, bottom right;
}

.therapist-size .size {
    width: 93%;
    height: auto;
    margin: 0px auto;
    padding-top: 2px;
}

.point {
    color: #875b04;
}


.therapist-card p {
    width: 100%;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    line-height: 23px;
}


.therapist-card h3 {
    font-size: 1.0rem;
    margin: 5px 0;
}

.therapist-card p {
    color: #666;
}




/* Profile */
 
.profile {
    padding: 20px 0;
    text-align: center;
}

.profile h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.staff-detail {
    padding: 30px 0;
}

.staff-detail .row {
    padding: 30px 50px;
    background: #fff;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

ol, ul {
    list-style: none;
}

.staff-detail .row .imgbox {
    width: 45%;
}

.staff-detail .row .imgbox .page-therapist-thumb img {
    width: 100%
}

.staff-detail .row .imgbox .list-inline {
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap;
    margin-left: -5px
}

.staff-detail .row .imgbox .list-inline .list-inline-item {
    width: calc(20% - 5px);
    margin-bottom: 5px;
    margin-left: 5px;
    margin-right: 0
}

img {
    vertical-align: top;
    max-width: 100%;
}

.staff-detail .row .des {
    width: 45%;
    padding-left: 5%;
    font-size: 16px
}

.staff-detail .row .des .page-therapist-info {
    margin-bottom: 20px
}

.staff-detail .row .des .page-therapist-info dl {
    display: flex;
    padding: 10px 0;
    border-bottom: 1px solid #999
}

.staff-detail .row .des .page-therapist-info dl dt {
    width: 20%
}

.staff-detail .row .des .page-therapist-info dl dd {
    width: 80%
}

.staff-detail .row .des .page-therapist-info dl dd .sizechart {
    display: block;
    text-align: left
}

.staff-detail .row .des .page-therapist-info dl dd .girl-size-separation {
    display: inline;
    background: none;
    letter-spacing: 0;
    width: auto;
    flex-basis: auto
}



.intro {
    background-size: 100%;
    padding: 15px 10px;
    line-height: 2;
    margin: 20px 0;
    border: 3px solid #9b59b6;
    border-radius: 8px;
}


/* 料金システム */
.page-system  {
    text-align: center;
	background-color:#f9edf2;
}

.page-system  h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.page-system   .container{
	max-width:900px;
	}

    .page-system .system-cont .system-cost {
        border: 1px solid #865593;
        background-color: #FFE7EB;
        margin: 40px 10px;
        padding: 30px 10px 10px;
        position: relative;
        box-sizing: border-box;
        line-height: 1.5
    }
    
    .page-system .system-cont .system-cost .block-system-title .systemtitle-head {
        background-color: #865593;
        border: 1px solid #865593;
        border-radius: 5px;
        padding: 10px 20px;
        position: absolute;
        left: 20px;
        top: -20px;
        line-height: 1.5;
        z-index: 10;
        color: #fff;
        font-size: 16px;
        font-weight: 700
    }
    
    .page-system .system-cont .system-cost .block-system-title .systemtitle-desc {
        font-size: .875rem;
        margin-bottom: 10px;
        color: #9E6570
    }
    
    .page-system .system-cont .system-cost {
        margin-bottom: 5px
    }
    
    .page-system .system-cont .system-cost-title {
        display: none
    }
    
    .page-system .system-cont .system-cost-data {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap
    }
    
    .page-system .system-cont .system-cost-data dl {
        margin-top: 5px
    }
    
    .page-system .system-cont .cost-data-bundle {
        width: 100%;
        display: flex;
        flex-wrap: wrap
    }
    
    .page-system .system-cont .cost-data-bundle:last-child {
        align-self: center
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-label {
        flex: 0 0 30%;
        background: #9E6570;
        color: #fff;
        font-size: .875rem
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-label,
    .page-system .system-cont .cost-data-bundle .cost-data-price {
        display: flex;
        line-height: 1.5;
        padding: 5px 10px;
        box-sizing: border-box;
        justify-content: center;
        border: 1px solid #9E6570
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-price {
        flex: 0 0 70%;
        background: #fff;
        color: #9E6570;
        font-weight: 700
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-price .price-1 {
        display: flex;
        flex: 0 0 50%;
        font-size: 1rem;
        color: #9E6570;
        justify-content: center
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-price .price-1 .price-sub {
        text-decoration: line-through
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-price .arrow {
        font-size: .875rem
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-price .price-2 {
        display: flex;
        flex: 0 0 50%;
        font-size: 1rem;
        color: #ff799c;
        justify-content: center
    }
    
    .page-system .system-cont .cost-data-bundle .cost-data-desc {
        font-size: .875rem;
        margin: 5px auto 10px
    }
    
    .page-system .system-fee_remark1-box,
    .page-system .system-fee_remark2-box {
        margin-bottom: 15px
    }
    
    .page-system .system-fee_remark1-box .systemtitle-head,
    .page-system .system-fee_remark2-box .systemtitle-head {
        background-color: #655047;
        border: 1px solid #655047;
        border-radius: 5px;
        padding: 5px 10px;
        line-height: 1.5;
        color: #fff;
        font-size: 1rem;
        font-weight: 700;
        text-align: center
    }
    
    .page-system .system-fee_remark1-box .system-snippet,
    .page-system .system-fee_remark2-box .system-snippet {
        background: #fff;
        border: 1px solid #934757;
        color: #9E6570;
        font-size: .875rem;
        padding: 10px
    }
    
    :after,
    :before {
        box-sizing: content-box
    }
    
    .system-options .system-options-item {
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        border-bottom: 1px solid #FF5294
    }
    
    .system-options .system-options-item .system-options-price {
        padding: 10px 0;
        width: 25%;
        text-align: center;
        color: #fff;
        font-size: 14px;
        background: #fa90b6
    }
    
    .system-options .system-options-item .system-options-services {
        width: 75%;
        padding: 10px;
        color: #FF5294;
        font-weight: 700;
        font-size: 14px;
        text-align: left
    }
    
 
/* 店内風景 */
.gallery {
    text-align: center;
}

.gallery h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.gallery-grid {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.gallery-grid img {
    width: 30%;
    border-radius: 10px;
    margin-bottom: 20px;
    transition: transform 0.3s, box-shadow 0.3s;
}

.gallery-grid img:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* アクセス案内 */ 

.access {
    margin-bottom: 10px;
}


.access h2 {
    font-size: 2rem;
    margin-bottom: 20px;
}

.access-content {
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
}

.map {
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    margin: 10px 0;
}


.access-content  .map-des {
    margin-top: 10px;
    background: hsla(0, 0%, 100%, .65);
    padding: 15px 10px;
    border: 2px solid #865593
}

.access-content  .access-info {
    margin: 0;
    border: none;
    padding: 0;
    background: none
}

.access-content  .access-info .access-item {
    border-bottom: 1px dashed #000;
    padding: 10px 0
}

.access-content  .access-info .access-item+.access-item {
    margin-top: 0 !important
}

.access-content  .access-info .access-list-item-label {
    width: 25%;
    color: #865593
}


.access-info {
    margin-bottom: 20px;
	background: #FFE7EB;
    border: 2px solid #865593;
    padding: 10px
}


.access-top .access-info {
    margin-bottom: 20px;
	background: #FFE7EB;
    border: 2px solid #865593;
    padding: 10px
}

.access-info .access-item {
    display: flex;
    font-size: 14px;
}

.access-info .access-item .access-list-item-label {
    width: 10%;
    -moz-text-align-last: justify;
    text-align-last: justify;
}

.access-info .access-item .access-list-item-context {
    width: 80%;
    padding-left: 10px
}

.access-info .access-item+.access-item {
    margin-top: 10px
}

.access-iframemap+.access-iframemap {
    margin-top: 15px
}

.access-iframemap .iframemap-desc {
    display: none
}

.access-iframemap iframe {
    width: 100%;
    height: 320px !important
}



/* 求人情報 */
.page-recruit  {
    text-align: center;
	background-color:#f9edf2;
}

.page-recruit  h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}

.page-recruit   .container{
	max-width:900px;
	}
.recruit-box .box-body {
     padding: 20px 10px;
     background: #fff;
    }

.recruit-box {
    padding: 20px 0
}
    
.recruit-box .box-body {
   padding: 20px 10px;
   background: #fff
}
    
.recruit-description {
   font-size: 14px;
   line-height: 2;
   margin-bottom: 20px
}
    
.recruit-list .recruit-item {
  display: block;
  font-size: 14px;
  padding: 15px 0;
  border-bottom: 1px dashed #865593
}
    
.recruit-list .recruit-item .recruit-context,
 .recruit-list .recruit-item .recruit-label {
  width: 100%
}


/* 底部联系信息 */
.footer {
    background-color: rgba(134, 85, 147, 1.0);
    padding: 20px 0;
    text-align: center;
    color: #fff;
}

.footer p {
    margin: 0;
    font-size: 1rem;
}

.social-links {
    margin-top: 10px;
}

.social-links a {
    color: #fff;
    margin: 0 10px;
    font-size: 0.5rem;
    transition: color 0.3s;
}

.social-links a:hover {
    color: #ff1493;
}

/* 浮动菜单 */
.floating-menu {
	z-index: 9999;
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.btn-circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #9b59b6;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s, transform 0.3s;
}

.btn-circle:hover {
    background-color: #ff1493;
    transform: scale(1.1);
}

/* 返回顶部按钮 */
.back-to-top {
	z-index: 9999;
    position: fixed;
    bottom: 20px;
    left: 20px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #9b59b6;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition: opacity 0.3s, background-color 0.3s, transform 0.3s;
}

.back-to-top.show {
    opacity: 1;
}

.back-to-top:hover {
    background-color: #ff1493;
    transform: scale(1.1);
}


dl,
ol,
ul {
    margin-top: 0
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

dd {
    margin-bottom: .5rem;
    margin-left: 0
}

blockquote {
    margin: 0 0 1rem
}

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: #FF5294;
    background-color: transparent
}

a:hover {
    color: #F9BD95;
 
}

a, a:hover {
    text-decoration: none;
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}
 
.link1 {
    color: #fcf5cf; /* 设置链接1的颜色为红色 */
}

.link2 {
    color: #9b59b6; /* 设置链接2的颜色为绿色 */
}
 

 dd,
dt {
    margin: 0
}

blockquote,
body,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
td,
th,
ul {
    margin: 0;
    padding: 0
}

.block-title-newface {
    font-size: 34px;
    text-align: center;
    color: #934757;
    font-family: "Lobster", sans-serif;
    font-weight: 400;
    text-shadow: 0.05em 0.05em #fff;
    font-style: normal;
    margin-bottom: 20px;
}

.block-title-news {
    font-size: 30px;
    text-align: center;
    color: #934757;
    font-family: "Noto Serif JP", serif;
    font-weight: 900;
    text-shadow: 0.05em 0.05em #fff;
    font-style: normal;
    margin-bottom: 20px;
}

/* mastFoot */
.mastFoot {
    background: #fde8e7;
    color: #212529;
    padding: 1rem 0 0
}
 

.mastFoot .footer-brand,.mastFoot__logo {
    display: flex;
    align-items: center;
    justify-content: center
}

.mastFoot__logo img {
    width: 262px
}

.mastFoot__space {
    padding-top: 1rem
}

.mastFoot__box,.mastFoot__tel {
    display: flex;
    justify-content: center
}

.mastFoot__opening, .mastFoot__tel, .mastHead__opening, .mastHead__tel {
    margin: 0 .5rem;
}

.mastFoot__tel {
    font-size: 1rem;
    color: #bb725d;
    align-items: center
}

.mastFoot__tel a {
    font-size: 1.5rem;
    color: #bb725d
}

.mastFoot__tel a:hover {
    color: #c3e2dc
}

.mastFoot__tel dt {
    font-size: .875rem
}

.mastFoot__tel dt span {
    margin-left: 20px
}

.mastFoot__opening {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-size: 1rem;
    color: #bb725d;
    align-items: center
}

.mastFoot__opening dt {
    font-size: .875rem
}

.mastFoot__opening dt:last-child {
    display: block
}

.mastFoot__opening dd span {
    margin-left: 20px
}

.mastHead__navi {
    border-top: 2px solid rgba(253,232,231,.7);
    background-color: rgba(195,226,220,.8);
    display: flex;
    justify-content: center;
    align-self: center;
    height: 45px
}

.mastHead__navi .sitenavi {
    width: 650px
}

.mastHead__navi .sitenavi-list .sitenavi-item {
    text-align: center;
    font-size: 1rem;
    padding: 10px 0
}

.mastHead__navi .sitenavi-list .sitenavi-item a {
    color: #000
}

.mastHead__navi .sitenavi-list .sitenavi-item a:hover {
    color: #bb725d;
    font-size: 1.25rem;
    font-weight: 700
}

.mastHead__navi .sitenavi-list .sitenavi-link-text {
    display: none
}

.mastFoot__navi {
    margin: 0 auto;
    padding: 1rem 0;
    text-align: center
}

.mastFoot__navi .sitenavi-list {
    display: inline-block;
    width: auto;
    text-align: center
}

.mastFoot__navi .sitenavi-list .sitenavi-item {
    display: inline-block;
    color: #bb725d;
    position: relative
}

.mastFoot__navi .sitenavi-list .sitenavi-item:not(:first-child):before {
    content: "|";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.mastFoot__navi .sitenavi-list .sitenavi-item .sitenavi-link {
    font-size: 1rem;
    color: #bb725d;
    opacity: 1;
    display: inline-block;
    padding: 0 16px
}

.mastFoot__navi .sitenavi-list .sitenavi-item .sitenavi-link:hover {
    opacity: .3
}

.mastFoot__navi .sitenavi-list .sitenavi-item .sitenavi-link-slug {
    display: none
}

/* 响应式设计 */
@media (max-width: 768px) {
	
.d-block {
    display: block !important;
	position: relative;
}

.d-none {
    display: none !important;
}

	
#navbar{
		display:none;
	}
	
.menu-toggle {
        display: block;
    }
	
.d-block {
    display: block !important;
    position: relative;
}

.link-item {
    position: relative;
}

 
img {
    vertical-align: top;
    max-width: 100%;
}

.tran-top-info{
	background-color: rgba(155,89,182,0.85);
	width: calc(100% - 20px);
	height: 90px;
	position: absolute;
	z-index: 2;
	bottom: 15px;
	left: 10px;
	border-radius: 7px;
}
.mobile-top_info{
	color: #fcf5cf;
	font-size: 1.5rem;
	text-align: center;
}
.mobile-top_info .tel{
	color: #fcf5cf;
}
.mobile-top_info span{
	color: #fcf5cf;
	font-size: .85rem;
}
.mobile-top_info .open{
	font-size: 1rem;
}
.mobile-top_info .access_info{
	font-size: 1.2rem;
}


.access-info .access-item .access-list-item-label {
    width: 20% !important
}

/* slideout-menu */	
.slideout-menu {
    position: absolute;
    min-height: 100vh;
    width: 256px;
    overflow-y: scroll;
    z-index: 0;
    display: none;
    flex-direction: column;
    background: #F9EDF2;
    background-repeat: repeat-x;
    color: #fff;
}

.slideout-menu .global_mobile_navi_bar {
    background: #F9EDF2;
    flex-shrink: 0;
    flex-grow: 0;
    height: 50px;
    line-height: 50px;
    font-size: 18px;
    text-align: center
}

.slideout-menu .global_mobile_navi_content {
    height: calc(100vh - 50px);
    flex-shrink: 1;
    flex-grow: 1;
    flex-basis: auto;
    -webkit-overflow-scrolling: touch;
    overflow: hidden;
    overflow-y: auto
}

.slideout-menu .global_mobile_navi_content .global_mobile_menu {
    margin-bottom: 100px
}

.slideout-menu .global_mobile_menu a {
    padding: .625rem .625rem .625rem 2rem;
    display: block;
    color: #9E6570;
	transition: none;
}

.slideout-menu .global_mobile_menu a:hover {
    color: #540B17
}

.slideout-menu .global_mobile_menu .sitenavi-item .sitenavi-link-text {
    font-size: 1.2rem;
    font-weight: 700
}

.slideout-menu .global_mobile_menu .sitenavi-item .sitenavi-link-slug {
    font-size: 1.00rem;
    opacity: .75
}

.slideout-menu .global_mobile_menu .sitenavi-item:not(:last-child) {
    border-bottom: 1px solid;
	color: #FFCDDE
}

.slideout-menu-left {
    left: 0
}

.slideout-menu-right {
    right: 0
}

.slideout-panel {
    position: relative;
    z-index: 1;
    will-change: transform;
    min-height: 100vh
}

.slideout-open,
.slideout-open .slideout-panel,
.slideout-open body {
    overflow: hidden
}

.slideout-open .slideout-menu {
    display: block
}

.toggle-gmn-button {
    min-width: 38px;
    min-height: 38px;
    background: #F9EDF2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: absolute;
    left: .5rem;
    top: .75rem;
    border-radius: .25rem;
    z-index: 999;
    padding: 5px
}

.toggle-gmn-button span {
    display: flex;
    width: 100%;
    height: 3px;
    left: -50%;
    margin-bottom: 5px;
    position: relative;
    background: #9E6570;
    border-radius: 3px;
    z-index: 1;
    transform-origin: 50% 50%;
    transform: translate(50%);
    transition: transform .5s cubic-bezier(.77, .2, .05, 1), background .5s cubic-bezier(.77, .2, .05, 1), opacity .55s ease
}

.toggle-gmn-button span:last-child {
    margin-bottom: 0
}

.toggle-gmn-button.open-gmn span {
    transform: rotate(45deg) translate(5px, -15px)
}

.toggle-gmn-button.open-gmn span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(.2)
}

.toggle-gmn-button.open-gmn span:nth-last-child(2) {
    transform: rotate(-45deg) translate(10px, 10px)
}



/* ↑↑↑slideout-menu↑↑ */		
	

.nav-links {
        display: none !important;
        flex-direction: column;
        background-color: rgba(255, 255, 255, 0.9);
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        padding: 20px;
    }

.nav-links.active {
        display: flex;
    }

.service-card, .therapist-card, .gallery-grid img {
        width: 45%;
    }

/*Profile*/
    .staff-detail {
        padding: 20px 0;
    }
    
    .staff-detail .row {
        padding: 30px 10px;
        background: #fff;
        margin: 0;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap
    }
    
    .staff-detail .row .imgbox,
    .staff-detail .row .imgbox .page-therapist-thumb img {
        width: 100%
    }
    
    .staff-detail .row .imgbox .list-inline {
        margin-top: 10px;
        display: flex;
        justify-content: left;
        flex-wrap: wrap;
        margin-bottom: -.5rem;
        margin-right: -.5rem
    }
    
    .staff-detail .row .imgbox .list-inline .list-inline-item {
        width: 20%;
        margin-bottom: .5rem;
        margin-right: .5rem
    }
    
    .staff-detail .row .des {
        width: 100%;
        font-size: 16px
    }
    
    .staff-detail .row .des .page-therapist-info {
        margin-bottom: 20px
    }
    
    .staff-detail .row .des .page-therapist-info dl {
        display: flex;
        padding: 10px 0;
        border-bottom: 1px solid #999
    }
    
    .staff-detail .row .des .page-therapist-info dl dt {
        width: 20%
    }
    
    .staff-detail .row .des .page-therapist-info dl dd {
        width: 80%
    }
    
    .staff-detail .row .des .page-therapist-info dl dd .sizechart {
        display: block;
        text-align: left
    }
    
    .staff-detail .row .des .page-therapist-info dl dd .girl-size-separation {
        display: inline;
        background: none;
        letter-spacing: 0;
        width: auto;
        flex-basis: auto
    }

/*mastFoot*/
.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

    .mastFoot__navi .sitenavi-list {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 0 5px;
    }

    .mastFoot__navi .sitenavi-list .sitenavi-item {
        flex: 0 0 32%;
        color: #bb725d;
        position: relative;
        border: 2px dotted #fff;
        margin-top: 5px;
    }

    .mastFoot__navi .sitenavi-list .sitenavi-item .sitenavi-link {
        font-size: .75rem;
        color: #bb725d;
        opacity: 1;
        display: inline-block;
        padding: 5px 8px;
    }

    .mastFoot__navi {
        margin: 0 30px;

    }

    .mastFoot__navi .sitenavi-list .sitenavi-item::before {
        content: "|";
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }

 

    .small, small {
        font-size: 80%;
        font-weight: 400;
    }

    
}