@charset "utf-8";

/* regular - 400 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 400;
  src: url('../font/mplus-1p/mplus-1p-regular.eot');
  src: url('../font/mplus-1p/mplus-1p-regular.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-regular.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-regular.ttf') format('truetype');
}

/* medium - 500 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 500;
  src: url('../font/mplus-1p/mplus-1p-medium.eot');
  src: url('../font/mplus-1p/mplus-1p-medium.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-medium.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-medium.ttf') format('truetype');
}

/* medium - 700 */
@font-face {
  font-family: 'Mplus 1p';
  font-weight: 700;
  src: url('../font/mplus-1p/mplus-1p-bold.eot');
  src: url('../font/mplus-1p/mplus-1p-bold.eot?#iefix') format('embedded-opentype'),
    url('../font/mplus-1p/mplus-1p-bold.woff') format('woff'),
    url('../font/mplus-1p/mplus-1p-bold.ttf') format('truetype');
}

html,body,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,
p,blockquote,pre,
abbr,address,cite,code,
del,dfn,em,img,ins,kbd,q,samp,
small,strong,sub,sup,var,
b,i,
dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td,
article,aside,canvas,details,figcaption,figure, 
footer,header,hgroup,menu,nav,section,summary,
time,mark,audio,video {
margin:0;
padding:0;
border:0;
outline:0;
background:transparent;
}

html{ width:100%;}

body {
-webkit-print-color-adjust: exact;
width: 960px !important;
font-size:13px;
font-family: 'Mplus 1p','Meiryo',"ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Osaka", sans-serif;
font-weight: 400;
line-height: 1.5em;
text-size-adjust: 100%;
font-smoothing:antialiased;
-moz-osx-font-smoothing: grayscale;
background-color: rgba(246,244,241,1.0) !important;
color: rgb(49,42,38);
overflow-x: visible !important;
overflow-y: visible !important;
-webkit-text-size-adjust: 100%;
}

a {
    outline:none;
    text-decoration: none;
    transition: all 0.2s ease 0s;
    cursor: pointer;
}

a:link { color: inherit;}
a:visited { color: inherit;}
a:hover { color: tomato;}

img { border: 0; vertical-align: bottom;}/*画像の下にできる余白を消す*/

a img {cursor: pointer;}
a img:hover {opacity: 0.8; transition-duration: 0.3s;}

p { padding-bottom:1em;}

.justify {text-align: justify;}

h1,h2,h3,h4,h5,h6 {font-size:inherit; font-family:inherit ; font-weight:inherit; line-height: 1.2em; }

ul,dl,ol { text-indent: 0;}
li { list-style: none;}

address,caption,cite,code,dfn,em,strong,th,var { }

sup { vertical-align: text-top;}
sub { vertical-align: -5%;}

input,textarea,select { font-size: inherit; font-weight:400;}
* html input,* html textarea,* html select { font-size: 100%;}
*:first-child+html+input,*:first-child html+textarea,*:first-child+html select { font-size: 100%;}

table { border-collapse: collapse; border-spacing: 0; font-size: inherit;}
th,td { text-align: left; vertical-align: top;}
caption { text-align: left;}

pre,code,kbd,samp,tt { font-family: monospace;}
* html pre,* html code,* html kbd,* html samp,* html tt {font-size: 100%; line-height: 100%;}
*:first-child+html pre,*:first-child html+code,*:first-child html+kbd,*:first-child+html+samp,*:first-child+html tt {font-size: 108%; line-height: 100%;}

input,select,textarea { font-size: 100%; }

button{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}

::selection { background: rgba(155,155,155,0.5) !important;}
::-moz-selection { background: rgba(155,155,155,0.5) !important;} /*Firefox/

.clear { clear:both;}

/*** ===== common animation ===== 
.inview {
opacity: 0;
transform: translate3d(0, 35px, 0);
}
.fadeInUp {
  animation-name: fadeInUp;
  animation-duration: 0.5s;
  animation-fill-mode: both;
}
@keyframes fadeInUp {
  0% { opacity: 0; transform: translate3d(0, 35px, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_logo {
opacity: 0;
transform: translate3d(0, -20px, 0);
}
.fadeInDown {
  animation-name: fadeInDown;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInDown {
  0% { opacity: 0; transform: translate3d(0, -20px, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_left {
opacity: 0;
transform: translate3d(-35px, 0, 0);
}
.fadeInLeft {
  animation-name: fadeInLeft;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInLeft {
  0% { opacity: 0; transform: translate3d(-35px, 0, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_right {
opacity: 0;
transform: translate3d(35px, 0, 0);
}
.fadeInRight {
  animation-name: fadeInRight;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadeInRight {
  0% { opacity: 0; transform: translate3d(35px, 0, 0);}
  100% { opacity: 1; transform: none;}
}

.inview_fade {
opacity: 0;
}
.fadeInFade {
  animation-name: fadeInFade;
  animation-duration: 2s;
  animation-fill-mode: both;
}
@keyframes fadeInFade {
  0% { opacity: 0;}
  100% { opacity: 1;}
}

.delay_01 {animation-delay: 0.1s;}
.delay_02 {animation-delay: 0.2s;}
.delay_03 {animation-delay: 0.3s;}
.delay_04 {animation-delay: 0.4s;}
.delay_05 {animation-delay: 0.5s;}
.delay_06 {animation-delay: 0.6s;}
.delay_07 {animation-delay: 0.7s;}
.delay_08 {animation-delay: 0.8s;}
.delay_09 {animation-delay: 0.9s;}
.delay_10 {animation-delay: 1.0s;}
***/

/*** ===== common spacer & line ===== ***/
.solid_line {width:100%; height:1px; margin:5px 0 15px 0;}

/*** ===== common background color ===== ***/
.bg_white {background-color: rgba(246,244,241,1.0) !important;}
.bg_cream {background-color: rgba(215,206,199,1.0) !important;}
.bg_red {background-color: rgba(160,20,30,1.0) !important;}
.bg_green {background-color: rgba(67,88,71,1.0) !important;}
.bg_yellow {background-color: rgba(249,190,0,1.0) !important;}
.bg_brown {background-color: rgba(49,42,38,1.0) !important;}

.red {color: rgba(160,20,30,1.0);}

/*** ===== common margin ===== ***/
.margin_top_20px { margin-top:20px !important;}
.margin_top_30px { margin-top:30px !important;}
.margin_top_50px { margin-top:50px !important;}
.margin_top_100px { margin-top:100px !important;}
.margin_top_25vh { margin-top:25vh !important;}
.margin_bottom_20px {margin-bottom:20px !important;}
.margin_bottom_30px {margin-bottom:30px !important;}
.margin_bottom_50px {margin-bottom:50px !important;}
.margin_bottom_100px {margin-bottom:100px !important;}
.margin_bottom_25vh {margin-bottom:25vh !important;}
.padding_top_1em { padding-top:1em !important;}
.padding_top_20px { padding-top:20px !important;}
.padding_top_30px { padding-top:30px !important;}
.padding_top_50px { padding-top:50px !important;}
.padding_bottom_20px { padding-bottom:20px !important;}
.padding_bottom_30px { padding-bottom:30px !important;}
.padding_bottom_50px { padding-bottom:50px !important;}
.padding_bottom_100px { padding-bottom:100px !important;}

/*** ===== common font ===== ***/
.font_50 {font-size:50%;}
.font_80 {font-size:80%;}
.font_120 {font-size:120%;}
.font_150 {font-size:150%;}
.font_200 {font-size:200%;}
.bold {font-weight:500;}

/******************************************** ===== for Print rayout ===== *****************************************************/

.pc { display: block;}
.sp { display: none !important;}

.fas { padding-left:0.15em; padding-right:0.5em;}
.passive {pointer-events: none; opacity: 0.35;}

/***** editor's memo
CSS for over 768px
z-index:10020 nav_btn
        10010 Global menu
        10000 header
         1000 News category
		  100 
		   10 
		    1 
Ray-out:header
          navigation
        article
		  main photo
		  sections
		    section box
		footer
		other absolute divs
Color:white 246,244,241
      cream 215,206,199
      red   160,20,30
	  yellow 249,190,0
	  brown 49,42,38
	  green 67,88,71
*****/


/************************* Ray-out *************************/
header {
position: absolute;
width: 960px; height: 80px;
margin: 0; padding: 0;
top:0; left:0;
background: rgba(246,244,241,1.0) !important;
z-index: 10000;
}

#header_spacer {width:100%; height:80px;}

article {
position: relative;
}

#photo_slider {
width:960px;
height:480px;
animation-name: photo_fade;
animation-duration: 3s;
}
@keyframes photo_fade {
  0% { opacity: 0;}
  100% { opacity: 1;}
}
/*施設案内を追加時に使用*/
#photo_slider_2nd::after {
content: "";
position: absolute;
bottom: 0;
width: 100%;
height: 10vw;
background:url("../img/section_divider.svg")center bottom / 100% no-repeat !important;
}

#photo_slider_2nd {
width:960px;
height:316px;
animation-name: photo_fade;
animation-duration: 3s;
}

#info {
width:960px;
height:auto;
background: rgba(246,244,241,1.0) url("../img/bg_campaign.svg") center top / 100% repeat-y !important;
padding-top: 0;
padding-bottom: 100px;
page-break-before: always;
}

#news { height:auto; background: rgba(215,206,199,1.0) url("../img/bg_news.png"); padding-bottom: 100px !important;}

#facility { height:auto; background: rgba(246,244,241,1.0); padding-bottom: 0px !important;}
#gmap_area { }
 
footer {
position: relative;
height:auto;
padding-top:50px;
padding-bottom: 40px;
background: rgba(47,39,34,1.0) url("../img/bg_footer.png")top left / 800px repeat !important;
}


/************************* header *************************/
.header_logo {
position: absolute;
width:240px;
height:140px;
margin: 0;
padding: 0;
top:0;
left:25px;
background: rgba(160,20,30,1.0) url("../img/bg_grade.svg")top left / contain no-repeat !important;
z-index: 10001;
}

header nav {
position: absolute;
right:calc(195px + 2em);
}

header nav ul li {
display: inline-block;
padding:calc(60px / 2) 2.2vw;
cursor: pointer;
background: url("../img/header_menu_bg.svg")center left / 10px 80px no-repeat !important;
transition: 0.8s;
}

header nav ul li:hover {
background-color:rgba(215,206,199,1.0) !important;
}

.header_tel {
position: absolute;
top:0;
right:25px;
width:170px;
}

.header_tel img {
width:100%;
}


/************************* section titles *************************/
.section_title {
width:400px;
height:130px;
margin: 0 auto 50px;
}

/************************* section / main photo *************************/
.main_photo_1 {
position: relative;
width:960px; height:480px;
background: url("../../img/mainphoto_1.jpg")center / cover no-repeat !important;
}

.main_photo_copy {
width:960px; height:480px;
background: url("../img/main_photo_copy.svg")center / cover no-repeat !important;
}

h1 {
width:960px;
text-align: center !important;
margin-top:calc(240px - 2em);
text-shadow:
0px 0px 30px #FFF, 0px 0px 30px #FFF,
1px 1px 20px #FFF, -1px -1px 20px #FFF,
-1px 1px 10px #FFF, 1px -1px 10px #FFF,
0px 1px 5px #FFF,  0-1px 5px #FFF,
-1px 0 3px #FFF, 1px 0 3px #FFF;
}

.h1copy_large {
width:960px;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 265%;
color: rgba(160,20,30,1.0);
}

.h1copy_small {
width:960px;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 125%;
line-height: 3em;
}

/* 2nd directory */
.main_photo_bath {
position: relative;
width:100vw; height:33.3vw;
background: url("../../img/mainphoto_bath.jpg")center / cover no-repeat !important;
}

.main_photo_facilities {
position: relative;
width:100vw; height:33.3vw;
background: url("../../img/mainphoto_facilities.jpg")center / cover no-repeat !important;
}

.main_photo_bath h1, .main_photo_facilities h1 {
margin-top:calc(16.65vw - 2em);
}

.main_photo_copy_bath {
width:960px; height:480px;
background: url("../img/main_photo_copy_bath.svg")center / cover no-repeat !important;
}

.main_photo_faci {
position: relative;
width:960px; height:480px;
background: url("../../img/facility_dummy_2.jpg")center / cover no-repeat !important;
}

.main_photo_copy_faci {
width:960px; height:480px;
background: url("../img/main_photo_copy_faci.svg")center / cover no-repeat !important;
}


/************************* section / facility *************************/
.facility_box {
width:960px;
margin:0;
padding:0;
letter-spacing: -0.5em;
}

.bg_facility_1 { background: url("../img/bg_facility_1.svg")right top / 30% no-repeat !important;}
.bg_facility_2 { background: url("../img/bg_facility_2.svg")left top / 33% no-repeat !important;}
.bg_facility_3 { background: url("../img/bg_facility_3.svg")right top / 33% no-repeat !important;}
.bg_facility_4 { background: url("../img/bg_facility_4.svg")left top / 33% no-repeat !important;}

.facility_subtitle {font-size: 200%;}

.facility_box .photo {
display: inline-block;
width:50%;
height:30vw;
letter-spacing: normal;
vertical-align: middle;
}

.dummy_1 {background: url("../../img/facility_1.jpg")center / cover no-repeat !important;}
.dummy_2 {background: url("../../img/facility_2.jpg")center / cover no-repeat !important;}
.dummy_3 {background: url("../../img/facility_3.jpg")center / cover no-repeat !important;}
.dummy_4 {background: url("../../img/facility_4.jpg")center / cover no-repeat !important;}

.facility_box .text_right {
display:inline-block;
width:calc(38% - 50px);
padding:0 12% 0 50px;
letter-spacing: normal;
vertical-align: middle;
text-align: justify;
}

.facility_box .text_left {
display:inline-block;
width:calc(38% - 50px);
padding:0 50px 0 12%;
letter-spacing: normal;
vertical-align: middle;
text-align: justify;
}

.facility_button {
width:8em;
margin-top:1vw;
padding: 10px 1.5em;
background: rgba(49,42,38,1.0) !important;
color: rgba(246,244,241,1.0);
text-align: center;
cursor: pointer;
transition: 0.3s;
}

.facility_button:hover {
background: rgba(160,20,30,1.0) !important;;
}


.facility_text {margin:auto;}



/************************* section / news *************************/
.news_inner { width:calc(960px - 156px); margin:0 auto; letter-spacing: -0.5em;}

.news_box {
display:inline-block;
width:calc((100% / 3) - 61px);
padding:20px 20px 10px 20px;
margin:0 10px;
background: rgba(246,244,241,1.0) !important;
border: solid 0.5px rgba(49,42,38,1.0);
letter-spacing: normal;
vertical-align: top;
}

/* Safari (ただし、iOSのChromeにも適用される) */
_::-webkit-full-page-media, _:future, :root .news_box {
width:calc((100% / 3) - 62px);
border: solid 1px rgba(49,42,38,1.0);
}

.news_box img { width:100%;}

.news_category {}

.event {background: rgba(160,20,30,1.0) url("../img/bg_grade2.svg") top left / cover no-repeat !important;}
.oshirase {background: rgba(67,88,71,1.0) url("../img/bg_grade2.svg") top left / cover no-repeat !important;}

.news_title {
margin-top:20px;
margin-bottom: 15px;
font-size: 110%;
font-weight: 500;
height:2em;
}

.news_article {
text-align: justify;
height:5.2em;
}

.blog_article {
width:calc(100% - 42px);
padding:20px 20px 10px 20px;
margin-bottom:20px;
background: rgba(246,244,241,1.0) !important;
border: solid 1px rgba(49,42,38,0.5);
}

.slug_event {
position: absolute;
margin-top:-20px;
margin-left:-20px;
padding:20px 15px;
background: rgba(160,20,30,1.0) url("/common/img/bg_grade2.svg") top left / cover no-repeat !important;
color:rgba(246,244,241,1.0);
z-index: 1000 !important;
}

.slug_info {
position: absolute;
margin-top:-20px;
margin-left:-20px;
padding:20px 15px;
background: rgba(67,88,71,1.0) url("/common/img/bg_grade2.svg") top left / cover no-repeat !important;
color:rgba(246,244,241,1.0);
z-index: 1001 !important;
}

.slug_other {
position: absolute;
margin-top:-20px;
margin-left:-20px;
padding:20px 15px;
background: rgba(49,42,38,1.0) url("/common/img/bg_grade2.svg") top left / cover no-repeat !important;
color:rgba(246,244,241,1.0);
z-index: 1002 !important;
}

.news_button {
width:calc(5em + 50px);
text-align: center;
padding:12px 25px;
margin:50px auto 0;
background: rgba(49,42,38,1.0) !important;
color:rgba(246,244,241,1.0);
cursor: pointer;
transition: 0.3s;
}

.news_button:hover {
background: rgba(160,20,30,1.0);
}

/************************* section / info *************************/
.info_box { width:calc(960px - 156px); margin:20px auto 0; letter-spacing: -0.5em;}

.info_100 {
width:768px;
padding:0;
margin:0 auto;
letter-spacing: -0.5em;
}

.info_100 .box_40 {
display: inline-block;
width:calc(40% - 50px);
margin:auto 30px auto 20px;
vertical-align: top;
letter-spacing: normal;
}

.info_100 .box_60 {
display: inline-block;
width:calc(60% - 20px);
margin-right: 20px;
vertical-align: top;
letter-spacing: normal;
}

.info_strong {
font-size: 150%;
font-weight: 500;
color: rgba(160,20,30,1.0);
margin-top:-0.4em;
}

.info_33 {
display:inline-block;
width:calc((100% / 3) - 20px);
height:auto;
padding:20px 0 10px 0;
margin:20px 10px 0;
letter-spacing: normal;
text-align: justify;
vertical-align: top;
}

.info_33 .text {
margin-top:1.5em;
}


/************************* section / access *************************/

#gmap {
width:100%;
height:55vh;
margin:0;
}



/************************* footer *************************/
.footer_inner_box {
width:calc(768px - 80px);
margin:0 auto;
padding:50px auto 40px auto;
color:rgba(246,244,241,1.0);
letter-spacing: -0.5em;
}

.footer_inner_box .left_box {
display: inline-block;
width:auto;
letter-spacing: normal;
vertical-align: bottom;
}

.footer_inner_box .center_box {
display: inline-block;
width:auto;
letter-spacing: normal;
margin-left:5em;
padding:0 0.5em 0 1.5em;
border-left: solid 0.5px rgba(180,130,70,1);
vertical-align: bottom;
}


.footer_logo {width:250px; margin-left:-5px;}
.footer_text {padding:1em 0;}
.footer_time {width:25em; margin-left:2px; padding:0 0.5em 0 1.5em; border-left: solid 0.5px rgba(180,130,70,1);}

.copyright {
width:100%;
padding-top:50px;
color:rgba(246,244,241,1.0);
letter-spacing: normal;
}

.sns_box {
width:100px;
margin:0 auto;
letter-spacing: -0.5em;
}

#fb{
display: inline-block;
letter-spacing: normal;
width:40px;
height:40px;
margin-right: 20px;
}
#tw{
display: inline-block;
letter-spacing: normal;
width:40px;
height:40px;
}

#pagetop_btn {
position: absolute;
display: block;
top:50px;
right:50px;
width:100px;
height:100px;
}


/************************* 2nd directory *************************/
#2nd_directory { height:auto; background: rgba(246,244,241,1.0);}

.leadtext {
width:calc(768px - 176px);
margin:0 auto 50px;
text-align: justify;
}

.inner_box {
width:calc(768px - 156px);
margin:0 calc((100% - 612px) / 2) 50px;
letter-spacing: -0.5em;
}

.inner_box_300px {
display: inline-block;
width:249px;
padding:15px;
margin: 0 10px 20px;
background: rgba(255,255,255,1.0) !important;
border: solid 0.5px rgba(49,42,38,1.0);
letter-spacing: normal;
vertical-align: top;
}

/* Safari (ただし、iOSのChromeにも適用される) */
_::-webkit-full-page-media, _:future, :root .inner_box_300px {
width:244px;
border: solid 1px rgba(49,42,38,1.0);
}

.inner_box_300px img {width:100%; margin-bottom: 15px;}
.inner_box_300px .text {height:5em; text-align: justify;}



#info_2nd {
height:auto;
background: rgba(236,234,231,1.0) url("../img/bg_campaign.svg") center top / 100% repeat-y !important;
padding-top: 0;
padding-bottom: 100px;
}

.info_2nd {
height:auto;
background: rgba(236,234,231,1.0) url("../img/bg_campaign.svg") center top / 100% repeat-y !important;
padding-top: 0;
padding-bottom: 50px;
}


/***** 2nd floor Bath *****/

.bath_1 {background: url("../../bath/img/bath_1.jpg")center / cover no-repeat !important;}
.bath_2 {background: url("../../bath/img/bath_2.jpg")center / cover no-repeat !important;}

.facility_box .text_right_2nd {
display:inline-block;
width:calc(35% - 50px);
padding:0 15% 0 50px;
letter-spacing: normal;
vertical-align: top;
text-align: justify;
}

.facility_box .text_left_2nd {
display:inline-block;
width:calc(35% - 50px);
padding:0 50px 0 15%;
letter-spacing: normal;
vertical-align: top;
text-align: justify;
}

.bath_title_dark {
margin-left: -50px;
padding:20px 0 0 50px;
background: rgba(49,42,38,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat !important;
}

.bath_title_red {
margin-left: -20px;
margin-right: -50px;
padding:20px 50px 0 20px;
background: rgba(160,20,30,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat !important;
}

.bath_title_dark h2, .bath_title_red h2 {
}

.bath_title_dark h2 .small, .bath_title_red h2 .small {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 100%;
color:rgba(246,244,241,1.0);
}

.bath_title_dark h2 .large, .bath_title_red h2 .large {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 220%;
color:rgba(246,244,241,1.0);
}

.onsenmark {
width:40px;
float: left;
}

.ul_disc li {
margin-left:1em;
list-style-type: disc;
}

.bath_title_small {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 100%;
}

.bath_title_large {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 150%;
}

/******** 内風呂のご案内 **********/

.bath_inner { width:calc(768px - 168px); margin:0 auto; letter-spacing: -0.5em;}
@media screen and (min-width:900px){.bath_inner  { width:calc(900px - 168px);}}


.bath_inner img{margin-bottom:20px;}

.bath_inner_text {letter-spacing: normal;}

.price {
border-top:solid 1px rgba(49,42,38,0.5);
border-bottom:solid 1px rgba(49,42,38,0.5);
padding-top:20px;
padding-bottom:10px;
}

.bath_inner_inline {
width:calc(100% + 20px);
margin:0 -10px;
}

.bath_box {
display:inline-block;
width:calc((100% / 2) - 20px);
margin:0 10px;
letter-spacing: normal;
vertical-align: top;
}

.bath_box img {
margin-top: 30px;
margin-bottom: 20px;
}

/***** Floor Map Tab *****/
.tab-group{
display: flex;
justify-content: center;
}

.tab{
flex-grow: 1;
padding:5px;
list-style:none;
border:solid 1px #CCC;
text-align:center;
cursor:pointer;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 120%;
}

.panel-group{
height:auto;
margin-top:20px;
}

.panel{
display:none;
}

.tab.is-active{
background:rgba(49,42,38,1.0) !important;
color:rgba(246,244,241,1.0);
transition: all 0.2s ease-out;
}

.panel.is-show{
display:block;
}

/***** Floor Map Table *****/

.floormap_inline {
width:calc(100% + 10px);
margin:0 -5px;
}

.floormap_box {
display:inline-block;
width:calc((100% / 3) - 10px);
margin:-1px 5px 0;
letter-spacing: normal;
vertical-align: top;
border: solid 1px rgba(49,42,38,0.2);
}

/* Safari (ただし、iOSのChromeにも適用される) */
_::-webkit-full-page-media, _:future, :root .floormap_box {
width:calc((100% / 3) - 12px);
}

/* chrome opera */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
.floormap_box {
width:calc((100% / 3) - 12px);
}
}

/* Firefox */
@-moz-document url-prefix() {
.floormap_box {
width:calc((100% / 3) - 10px);
}
}

.floormap_box td {
padding:5px 5px;
}

.width_2em {
width:2em;
text-align: center;
}

.facility_button_inner {
width:calc(100% + 18px);
margin:40px -9px;
letter-spacing: -0.5em;
}

.facility_button_bath {
display: inline-block;
width:calc((100% / 3) - 18px);
margin:0 9px;
padding: 40px 0;
background: rgba(47,39,34,1.0) url("../img/bg_footer.png")top left / 800px repeat !important;
color: rgba(246,244,241,1.0);
text-align: center;
cursor: pointer;
transition: 0.3s;
letter-spacing: normal;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 120%;
}

.facility_button_bath:hover {
background: rgba(160,20,30,1.0) url("../img/bg_footer.png")top left / 800px repeat !important;
}


/***** 2nd floor Facilities *****/

.faci_1 {background: url("../../facilities/img/facilities_1.jpg")center / cover no-repeat !important;}
.faci_2 {background: url("../../facilities/img/facilities_5.jpg")center / cover no-repeat !important;}

.faci_title_green {
margin-left: -50px;
padding:30px 0 10px 50px;
background: rgba(67,88,71,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat !important;
}

.faci_title_green2 {
margin-left: -20px;
margin-right: -50px;
padding:30px 50px 10px 20px;
background: rgba(67,88,71,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat !important;
}

.faci_title_green h2, .faci_title_green2 h2 {
}

.faci_title_green h2 .mid, .faci_title_green2 h2 .mid {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 135%;
line-height: 1.2em;
color:rgba(246,244,241,1.0);
}

.faci_title_large {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 120%;
}

/************************* massage *************************/
.massage_box { width:calc(768px - 156px); margin:0 auto 100px; letter-spacing: -0.5em;}
@media screen and (min-width:900px){.massage_box { width:calc(900px - 156px);}}
@media screen and (min-width:1000px){.massage_box { width:calc(1000px - 156px);}}
@media screen and (min-width:1100px){.massage_box { width:calc(1100px - 156px);}}
@media screen and (min-width:1200px){.massage_box { width:calc(1200px - 156px);}}

.massage_33 {
display:inline-block;
width:calc((100% / 3) - 20px);
height:auto;
padding:0px 0 10px 0;
margin:0px 10px 0;
letter-spacing: normal;
text-align: justify;
vertical-align: top;
}

.massage_66 {
display:inline-block;
width:calc(66.66% - 20px);
height:auto;
padding:0px 0 10px 0;
margin:0px 10px 0;
letter-spacing: normal;
text-align: justify;
vertical-align: top;
}

.massage_text {
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 120%;
line-height: 1.6em;
}

.padding-left_3em {padding-left: 3.1em;}

.massage_tel_button {
float: left;
margin-top:1em;
padding:1em 2em;
background: rgba(49,42,38,1.0) !important;
color: rgba(246,244,241,1.0);
cursor: pointer;
transition: 0.3s;
font-size: 130%;
font-weight: 600;
}

.massage_tel_button:hover {
background: rgba(160,20,30,1.0) !important;
color: rgba(246,244,241,1.0) !important;
}