@charset "UTF-8";
/* CSS Document */
.pc { display: none !important;}
.sp { display: block;}
.land { display: none;}
.port { display: block;}

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

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



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

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

article {
position: relative;
}

#photo_slider {
width:100%;
height:100vw;
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;
}

#photo_slider_2nd {
width:100vw;
height:100vw;
animation-name: photo_fade;
animation-duration: 3s;
}

 #info { height:auto; background: rgba(246,244,241,1.0); padding-top: 0; padding-bottom: 100px;}
 #news { height:auto; background: rgba(220,200,190,1.0); padding-bottom: 100px;}
 #facility { height:auto; background: rgba(246,244,241,1.0); padding-bottom: 0px;}
 #gmap_area { }
 
footer {
position: relative;
height:auto;
margin: 0;
padding: 0;
background: rgba(47,39,34,1.0) url("../img/bg_footer.png")top left / 800px repeat;
}


/************************* header *************************/
.header_logo {
position: absolute;
width:144px;
height:84px;
margin: 0;
padding: 0;
top:0;
left:20px;
background: rgba(160,20,30,1.0) url("../img/bg_grade.svg")top left / contain no-repeat;
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;
transition: 0.8s;
}

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

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

.header_tel img {
width:100%;
}



/************************* nav btn / menu for sp *************************/
#nav_btn {
position: fixed;
width:33px;
height:24px;
top:13px;
right:20px;
background-image: url("../img/nav_btn.svg");
background-position: 0px 0px;
background-size: 33px 480px;
background-repeat: no-repeat;
cursor: pointer;
z-index: 10020;
animation: nav_btn 0.5s steps(10) forwards;
}
@keyframes nav_btn {
  0% { background-position: 0px 0px; }
  100% { background-position: 0px -240px; }
}

#nav_btn.active {
animation: nav_btn_active 0.3s steps(9) forwards;
}
@keyframes nav_btn_active {
  0% { background-position: 0px -240px; }
  100% { background-position: 0px -456px; }
}

#global_menu {
display: none;
position: fixed;
width:100%;
height:100%;
top:0;
left:0;
background: rgba(220,205,190,1.0) url("../img/bg_footer_sp.png")top left / 800px repeat;
z-index: 10010;
}
#global_menu.active {
display: block;
}

.global_menu_box {
letter-spacing: -0.5em;
}

.global_menu_box_1st {
width:100%;
height:200px;
margin: 0 auto;
background: url("../img/global_menu_1st.svg")center 10px / contain no-repeat;
letter-spacing: normal;
}

.global_menu_box_2nd {
width:calc(100% - 30px);
margin: 0 15px;
letter-spacing: -0.5em;
text-align: center;
}

.global_menu_box_2nd ul li {
display: inline-block;
width:calc(50% - 30px);
margin: 5px;
padding:10px;
background: rgba(49,42,38,1.0);
color: rgba(246,244,241,1.0);
cursor: pointer;
letter-spacing: normal;
transition: 0.3s;
}

.global_menu_wide {
display: inline-block;
width:calc(100% - 30px) !important;
margin: 5px;
padding:10px;
background: rgba(49,42,38,1.0);
color: rgba(246,244,241,1.0) !important;
cursor: pointer;
letter-spacing: normal;
transition: 0.3s;
}

.global_menu_tel {
display: inline-block;
width:calc(100% - 30px) !important;
margin: 5px;
padding:10px;
background: rgba(49,42,38,1.0);
color: rgba(246,244,241,1.0) !important;
cursor: pointer;
letter-spacing: normal;
transition: 0.3s;
}

.global_menu_box_2nd ul li:hover, .global_menu_wide:hover, .global_menu_tel:hover {
background: rgba(160,20,30,1.0);
color: rgba(246,244,241,1.0);
}

/************************* section titles *************************/
.section_title {
width:280px;
height:91px;
margin: 0 auto 35px;
}

/************************* section / main photo *************************/
.main_photo_1 {
position: relative;
width:100%; height:100vw;
background: url("../../img/mainphoto_sp.jpg")center / cover no-repeat;
}

.main_photo_2 {
position: relative;
width:100%; height:100vw;
background: url("../../img/mainphoto_sp.jpg")center / cover no-repeat;
}

.main_photo_copy {
width:100%; height:100vw;
background: url("../img/main_photo_copy.svg")center / cover no-repeat;
}

h1 {
width:100%;
text-align: center;
margin-top:calc(50vw - 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:100%;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 160%;
color: rgba(160,20,30,1.0);
}

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

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

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

.main_photo_coupon {
position: relative;
width:100vw; height:100vw;
background: url("../../img/mainphoto_coupon_sp.jpg")center / cover no-repeat;
}

.main_photo_copy_bath {
width:100%; height:100vw;
background: url("../img/main_photo_copy_bath.svg")center / cover no-repeat;
}

.main_photo_faci {
position: relative;
width:100%; height:100vw;
background: url("../../img/facility_dummy_2.jpg")center / cover no-repeat;
}

.main_photo_copy_faci {
width:100%; height:100vw;
background: url("../img/main_photo_copy_faci.svg")center / cover no-repeat;
}


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

.facility_subtitle {
font-size: 150%;
font-weight: 400;
}

.facility_box .photo {
display: inline-block;
width:100%;
height:35vh !important;
letter-spacing: normal;
vertical-align: middle;
}

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

.facility_box .text_right {
display:inline-block;
width:calc(100% - 80px);
padding:30px 40px 50px 40px;
letter-spacing: normal;
vertical-align: middle;
text-align: justify;
}

.facility_box .text_left {
display:inline-block;
width:calc(100% - 80px);
padding:30px 40px 50px 40px;
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);
color: rgba(246,244,241,1.0);
text-align: center;
cursor: pointer;
}

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

.facility_text {
}




/************************* section / news *************************/
.news_inner {
width:calc(100% - 40px);
margin:0 20px;
letter-spacing: -0.5em;
}

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

.news_box img { width:100%;}

.news_category {
position: absolute;
margin-top:-20px;
margin-left: -20px;
padding:20px 12px;
color:rgba(246,244,241,1.0);
}

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

.news_title {
margin-top:20px;
font-size: 100%;
font-weight: 500;
}

.news_article {
text-align: justify;
}

.blog_article {
width:calc(100% - 42px);
padding:20px 20px 10px 20px;
margin-bottom:20px;
background: rgba(246,244,241,1.0);
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;
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;
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;
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);
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(100% - 80px); margin:20px 40px 0; letter-spacing: -0.5em;}

.info_100 {
width:calc(100% - 40px);
padding:0;
margin:0 20px;
letter-spacing: -0.5em;
}

.info_100 .box_40 {
display: inline-block;
width:80%;
margin:auto 10%;
vertical-align: top;
letter-spacing: normal;
}

.info_100 .box_60 {
display: inline-block;
width:calc(100% - 20px);
margin: 30px 10px 0;
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_50 {
display:inline-block;
width:calc(100% - 20px);
height:auto;
padding:10px 0 10px 0;
margin:10px 10px 10px;
letter-spacing: normal;
text-align: justify;
vertical-align: top;
}

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

.info_33 {
display:inline-block;
width:calc(100% - 20px);
height:auto;
padding:10px 0 10px 0;
margin:10px 10px 10px;
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(100% - 40px);
padding:50px 20px 40px 20px;
color:rgba(246,244,241,1.0);
letter-spacing: -0.5em;
text-align: center;
}

.footer_inner_box .left_box {
display: inline-block;
width:auto;
margin: 0 auto;
letter-spacing: normal;
text-align: left;
}

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


.footer_logo {width:250px; margin:auto auto;}
.footer_text {padding:1em 0; text-align: left;}
.footer_time {width:auto; margin-left:2px; padding:0 0em 0 0em;}

.copyright {
margin-top: 30px;
margin-left:0px;
padding-bottom:0px;
color:rgba(246,244,241,1.0);
letter-spacing: normal;
}

.sns_box {
width:100px;
margin:20px auto 0;
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;
}

/*** 2025 edit ***/
#sidebar_coupon {
position: fixed;
right: 0;
bottom: 50px;
background: rgb(170,20,30);
border-radius:10px 0 0 10px;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 120%;
width: 3em;
padding-left: 1em;
box-sizing: border-box;
filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.5));
}

#sidebar_coupon p.vartical {
writing-mode:vertical-rl;
color: white;
letter-spacing: 1px;
padding:1em 0;
}

#sidebar_coupon:hover {
cursor: pointer;
background: rgb(150,10,20);
bottom:53px;
transition: all 0.3s ease;
}

a.coupon_box {
width: calc(100% - 30px - 40px);
background: rgba(255,255,255,1);
border-radius: 10px;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding: 20px;
}

a.coupon_box .box_left {width: 100%;}
a.coupon_box .box_right {width: 100%;}

a.coupon_box .box_left figure img {
width: 80%;
margin: 0 10% 20px;
}

a.coupon_box .box_right p {
letter-spacing: normal;
}

a.coupon_box .box_right figure img {
width: 100%;
}

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

.leadtext {
width:calc(100% - 60px);
margin:0 auto 50px;
text-align: justify;
}

.inner_box {
width:calc(100% - 60px);
margin:0 auto 50px;
letter-spacing: -0.5em;
}

.inner_box_300px {
display: inline-block;
width:calc(100% - 31px);
padding:15px;
margin: 0 0 20px;
background: rgba(255,255,255,1.0);
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:calc(100% - 32px);
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;
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;
padding-top: 0;
padding-bottom: 50px;
}


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

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

.facility_box .text_right_2nd {
display:inline-block;
width:calc(100% - 40px);
padding:0 20px 0 20px;
letter-spacing: normal;
vertical-align: top;
text-align: left;
}

.facility_box .text_left_2nd {
display:inline-block;
width:calc(100% - 40px);
padding:0 20px 0 20px;
letter-spacing: normal;
vertical-align: top;
text-align: left;
}

.bath_title_dark {
width:calc(100% + 40px);
margin-left: -20px;
margin-right: -20px;
padding:20px 0 0 20px;
background: rgba(49,42,38,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat;
}

.bath_title_red {
width:calc(100% + 40px);
margin-left: -20px;
margin-right: -20px;
padding:20px 0px 0 20px;
background: rgba(160,20,30,1.0) url("../img/bg_grade2.svg")top left / cover no-repeat;
}

.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: 150%;
color:rgba(246,244,241,1.0);
}

.onsenmark {
width:35px;
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: 125%;
}

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

.bath_inner { width:100%; margin:0 auto; letter-spacing: -0.5em;}

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

.bath_inner_text {letter-spacing: normal; margin:0 20px;}

.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);
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% - 20px);
margin:0 10px;
}

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

.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) - 16px);
margin:0 5px;
padding: 40px 3px;
background: rgba(49,42,38,1.0) url("../img/bg_footer.png")top left / 800px repeat;
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: 100%;
}

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


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

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

.faci_title_green {
width:calc(100% + 50px);
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;
}

.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;
}

.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: 125%;
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: 100%;
}

/************************* massage *************************/
.massage_box { width:calc(100% - 40px); margin:0 auto 100px; letter-spacing: -0.5em;}

.massage_33 {
display:inline-block;
width:calc((100% / 2) - 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_100 {
display:inline-block;
width:calc(100%- 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);
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);
color: rgba(246,244,241,1.0) !important;
}


/************************* for landscape *************************/

@media screen and (orientation:landscape){

#info { height:auto; background: rgba(246,244,241,1.0); padding-top: 0; padding-bottom: 50px;}
#news { height:auto; background: rgba(215,206,199,1.0); padding-bottom: 50px;}

.global_menu_box {
height: 70vh;
margin: 20vh auto 10vh;
}


.global_menu_box_1st {
display: inline-block;
width:50%;
height:200px;
margin: 0 auto;
background: url("../img/global_menu_1st.svg")center 10px / contain no-repeat;
letter-spacing: normal;
}

.global_menu_box_2nd {
display: inline-block;
width:calc(50% - 30px);
margin: 0 15px;
letter-spacing: -0.5em;
text-align: center;
}

#photo_slider, #photo_slider_2nd::after {width:100%; height:50vw;}

/*施設案内を追加時に使用*/
#photo_slider_2nd::after {
content: "";
position: absolute;
bottom: 0;
width: 100%;
height: 10vw;
background:url("../img/section_divider.svg")center bottom / 100% no-repeat;
}

#photo_slider_2nd {
width:100vw;
height:33.3vw;
animation-name: photo_fade;
animation-duration: 3s;
}

.main_photo_1 {
position: relative;
width:100%; height:50vw;
background: url("../../img/mainphoto_sp.jpg")center / cover no-repeat;
}

.main_photo_2 {
position: relative;
width:100%; height:50vw;
background: url("../../img/mainphoto_2.jpg")center / cover no-repeat;
}

.main_photo_copy {
width:100%; height:50vw;
background: url("../img/main_photo_copy.svg")center / cover no-repeat;
}

h1 {
width:100%;
text-align: center;
margin-top:calc(25vw - 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;
}

#photo_slider_2nd h1 {
width:100%;
text-align: center;
margin-top:calc(16.5vw - 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:100%;
font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
font-size: 220%;
color: rgba(160,20,30,1.0);
}

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

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

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

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

.main_photo_copy_bath {
width:100%; height:50vw;
background: url("../img/main_photo_copy_bath.svg")center / cover no-repeat;
}

.main_photo_faci {
position: relative;
width:100%; height:50vw;
background: url("../../img/facility_dummy_2.jpg")center / cover no-repeat;
}

.main_photo_copy_faci {
width:100%; height:50vw;
background: url("../img/main_photo_copy_faci.svg")center / cover no-repeat;
}

.info_100 .box_40 {
display: inline-block;
width:50%;
margin:auto 25%;
vertical-align: top;
letter-spacing: normal;
}

.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;
}

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

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

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

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

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

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

.facility_box .photo {
display: inline-block;
width:100%;
height:65vh !important;
letter-spacing: normal;
vertical-align: middle;
}

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

.footer_inner_box {
width:calc(100% - 200px);
padding:50px 100px 40px 100px;
color:rgba(246,244,241,1.0);
letter-spacing: -0.5em;
}

.leadtext {
width:calc(100% - 60px);
margin:0 auto 50px;
text-align: justify;
}

/************************* 2nd directory *************************/

.inner_box {
width:calc(100% - 40px);
margin:0 auto 50px;
letter-spacing: -0.5em;
}

.inner_box_300px {
display: inline-block;
width:calc(50% - 51px);
padding:15px;
margin: 0 10px 20px;
background: rgba(255,255,255,1.0);
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:calc(100% - 52px);
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;}

}

/************ Landscape用ここまで **************/