@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}

@media screen and (max-width:768px){

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size:3.6vw
}
	
.pc{display:none!important;}
.sp{display:block!important;}	

p{
	margin-bottom:2.5em;
}


/*header
----------------------------------------------------*/
header{
	position:fixed;
	top:0;
	width:100%;
	height:80px;
	padding:2vw;
	background:rgba(0, 0, 0, 0.8);
	z-index:9;
}

header h1{
	width:15%;
	padding:0 0 0 3%;
}

header h1 img{
	height:60px;
}

.box_tel{
	position:absolute;
	top:20px;
	right:calc(3vw + 50px);
	color:#FFF;
	display:grid;
    grid-template-columns:1fr auto;
    gap:2em;
}

.box_tel p{
	margin-bottom:0;
}

.box_tel .tel{
	padding:0.1em 0 0.3em 1.2em;
	background:url(../img/icon_tel.png) no-repeat left center / 0.6em;
	font-size:4.8vw;
	font-weight:bold;
	line-height:1.0;
}


/*navigation
-------------------------------------------------*/
.box_tel{
	position:absolute;
	top:28px;
	right:calc(4.5vw + 50px);
	color:#FFF;
	display:grid;
    grid-template-columns:1fr;
    gap:2em;
}

.box_tel .tel{
	padding:0.1em 0 0.3em 1.2em;
	font-size:4.8vw;
}

.box_tel .tel a{
	font-size:4.8vw;
}


/*Contents layout
----------------------------------------------------*/
.contents{
	width:90%;
	margin:0 auto;
}


/*top mv
----------------------------------------------------*/
#mv .contents{
	height:calc(85vh + 12vw);
	padding-top:12vw;
}

.mv_top{
	padding-top:30vw;
}

#mv img{
	width: 80%;
}

#mv h2{
	font-size:6vw;
}


/*sec01
----------------------------------------------------*/
.sec01{
	/*background:url(../img/r601.jpg) no-repeat left -160vw center / cover;*/
	padding-bottom: 20vh;
}

.box_about02{
	margin-top:0;
	padding-top:24vw;
}

.box_about03{
	margin-top:0;
	padding:18vw 0;
}

.box_about02 .box_txt{
	width:90%;
	margin:0 auto;
	padding:4vw 0 1vw 0;
}

.box_about02 .box_txt p{
font-size: 1.2em;
}

.box_about02 .box_txt ul li{
	margin-bottom: 6vw;
	padding: 4vw 0;
}

.box_about03 .box_img{
	position:relative;
	float:right;
	width:60%;
}


/*sec02
----------------------------------------------------*/
.sec02{
	background:url(../img/dmy02_sp.jpg) no-repeat center / cover;
	color:#FFF;
}

.mask{
	height:100%;
	padding:18vw 0;
	background:linear-gradient(to top, #252525, rgba(0, 0, 0, 0.5) 60%, rgba(255, 255, 255, 0) 100% );
}

.sec02 h2{
	font-size:12vw;
}

.sec02 dl{
	width:100%;
	margin:0 0 6vw 0;
}

.sec02 dl:nth-of-type(2){
	margin-top:6vw;
}

.sec02 dl:nth-of-type(3){
	margin-top:6vw;
}

.sec02 dl:nth-of-type(4){
	margin-top:6vw;
}

.sec02 dl dt img{
	width:100%;
	height:auto;
	margin:0 auto 4vw auto;
}

.sec02 dl dd h3{
	margin-bottom:0;
	font-size:4.8vw;
}

.sec02 dl dd .btn{
	padding:3vw;
}

.sec02 dl:hover dd .btn{
	padding:3vw;
}

.sec02 dl:hover:before {
  animation:none;
}

.caution p span{
	font-size:3.7vw;
}


/*sec03
----------------------------------------------------*/
.sec03{
	height:auto;
}

.sec03_room01,
.sec03_room02,
.sec03_room03,
.sec03_food01,
.sec03_food02,
.sec03_food03{
	background:none;
}

.sec03 .name{
	position:relative;
	right:auto;
	bottom:auto;
	width:100%;
	padding:6vw;
	background:rgba(255, 255, 255, 1.0);
	z-index:9;
}

.sec03 .name.sp{
	position:relative;
	right:auto;
	bottom:auto;
	width:100%;
	padding:10vw 6vw 2vw 6vw;
	background:#000;
	color:#FFF;
	z-index:9;
}

.sec03 h2{
	margin-bottom:4vw;
	padding-bottom:3vw;
}

.sec03 h2 a{
	font-size:3.4vw;
}

.sec03 .name.sp h2{
	margin-bottom:0;
	padding-bottom:0;
	font-size:6.4vw;
}

.sec03 .name.sp h2 a {
  top: 2px;
  background: #FFF;
  color: #000;
}

.sec03 .slider{
	width:100%;
	height:auto;
}

.sec03 .thumb{
	position:relative;
	left:auto;
	bottom:auto;
	width:100%;
	padding:5px 10px 0 5px;
	background:rgba(255, 255, 255, 1.0);
	color:#000;
	text-align:center;
	z-index:1;
	box-sizing:border-box;
}

.sec03 .thumb01,
.sec03 .thumb02,
.sec03 .thumb03,
.sec03 .thumb04{
	width:100%;
}

.lightbox h2{
	position:relative;
	margin-bottom:20px;
	padding:0 0 15px 0;
	border-bottom:1px solid #000;
}
.lightbox table{
	width:100%;
	border-collapse:collapse;
}

.lightbox th,
.lightbox td{
	padding:8px;
	border-bottom:1px solid #CCC;
}

.lightbox td.center{
	padding:8px 16px;
}

.featherlight-content{
	max-width:1000px;
}


/*sec04
----------------------------------------------------*/
.sec04{
	padding:18vw 0;
}

.sec04 h2{
	font-size:12vw;
}

.sec04 ul{
	padding:0;
}


/*sec05
----------------------------------------------------*/
.sec05{
	padding:12vh 0 6vw 0;
}

.sec05 h2{
	font-size:12vw;
}

.sec05 p{
	width:90%;
	margin:0 auto 2em auto;
}



/*sec06
----------------------------------------------------*/
.sec06{
	padding:18vw 0;
}

.sec06 table{
	width:100%;
}

.sec06 table th,
.sec06 table td{
	width:100%;
	display:block;
}

.sec06 .kakomi{
	height:60vw;
	margin-bottom:1em;
	padding:2vw;
	border:1px solid #999;
	border-radius:6px;
	background:#FEFEFE;
	font-size:1vw;
	color:#000;
	overflow:auto;
	overflow-y:scroll;
}


/*sec07
----------------------------------------------------*/
.sec07{
	padding:18vw 0 8vw 0;
	height:auto;
}

#access{
	padding:18vw 0 8vw 0;
	height:auto;	
}

.sec07 h2{
	font-size:12vw;
}

.sec07 .box_map{
	margin:0 auto 4em auto;
}

.sec07 .box_map .box_left{
	float:none;
	width:100%;
	margin-bottom:4vw;
}

.sec07 .box_map .box_right{
	float:none;
	width:100%;
	padding:4vw;
}

.sec07 .box_map .box_right ul{
	text-align: center;
}
.sec07 .box_map .box_right ul .tel{
	font-size: 8vw;
}
	
.sec07 .box_map .box_right dl{
	margin-bottom:0.9em;
	padding-bottom:0.3em;
	line-height:1.4;
}

.sec07 .box_map .box_facility dl{
	width:100%;
	display:block;
}

.sec07 .box_map .box_facility dt{
	float:none;
	width:100%;
	display:block;
}

.sec07 .box_googlemap p a{
	width:80%;
}

/*page top
--------------------------------------------*/
#page-top a{
	display:none;
}


/*footer
----------------------------------------------------*/
footer{
	padding:14vw 0 7vw 0;
}

footer.luxy-el{
	/*luxy用設定*/
	padding-bottom:3vw;
	background-size:cover;
}

footer h2{
	width:50%;
	margin:0 auto 3vw auto;
	font-size:3.4vw;
}

.box_r18{
	margin-bottom:6vw;
	font-size:2.8vw;
}

footer ul li{
	margin:0 2vw 6vw 2vw;
}


footer .copyright{
	margin-top:8vw;
	font-size:2.8vw;
}


}