@charset "utf-8";

/*--------------------------------------------------------------------------------------------------

   second

--------------------------------------------------------------------------------------------------*/
.sp,
.title1-frame02-sp,
.title-frame04,
.list-menu-sp {
  display:none;
}


@media all and (max-width: 768px) {
  
		.spContact {
			display: block;
		}
		
		.spContact .tel a {
			display: block;
			padding: 10px;
			text-align: center;
			background-color: #3e3a39;
			color: #FFFFFF;
			font-size: 20px;
		}
		
		.spContact .reserve a {
			display: block;
			margin: 1px 0;
			padding: 10px;
			text-align: center;
			background-color: #3e3a39;
			color: #FFFFFF;
			font-size: 20px;
		}
		
  .pc {
    display:none;
  }
  
  .sp {
    display:block;
  }
  
.alignright, .alignleft, .aligncenter {
	display: block;
	margin: 0 auto 20px;
}

  #slide_menu ul {
	   width: 90%;
	   margin: 0 auto 20px;
  }

  #slide_menu ul li {
	  width: 100%;
	  margin-right: 0%;
	  float: none;
  }

  .container {
    width:100%;
    padding:0 10px;
  }
  
  nav .fl-left {
    margin: 14px 0 0 0px;
  }
  
  .list-menu-sp {
    position:absolute;
    width:100%;
    top:80px;
    left:0;
    z-index:2;
  }
  
  .list-menu-sp li {
    width:100%;
    height:60px;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
    background:rgba(46, 42, 41, 0.9);
    padding-right:20px;
  }
  
  .list-menu-sp a {
    line-height:60px;
    padding:0 20px;
    color: #fff;
    display: block;
    background:url(../image/icon-next-menu.png) no-repeat right center;
    opacity:0.8;
  }
		
		/*index*/
		.banner {
    position: relative;
   	width: 100%;
   	height: 400px;
	   background: url(../../image/top/bg-banner_20220208.jpg) no-repeat 60% center;
	   background-size: cover;
  }

  .banner .logo {
	   position: absolute;
	   width: 100%;
	   top: 20px;
	   text-align: center;
  }
 
  #index .map .info img {
    /*margin: 10px 15px;*/
    margin: 0 0 10px;
				max-width: 100%;
				height: auto;
  }
  
		#index .map .carBox {
	   width: 98%;
	   margin: 0 auto 20px;
  }

  #index .map .carstop {
	   width: 100%;
	   float: none;
	   text-align: left;
  }
		
		#index .frame h2 img{
			margin: 0 auto;
  }
		
		.ggmap {
   position: relative;
   padding-bottom: 56.25%;
   padding-top: 30px;
   height: 0;
   overflow: hidden;
  }
 
  .ggmap iframe,
  .ggmap object,
  .ggmap embed {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
  }

  #index .map .carstopgif {
	  float: none;
	  width: 98%;
			margin: 0 auto;
  }
		
  footer .info .fl-right {
    float:left;
  }
  
  #dish .content-top a,
  #oiwai .content-top a,
  #facility .content-top a{
				float: none;
    display: block;
    margin-bottom: 30px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  
  #dish .content-top a:last-child,
  #oiwai .content-top a:last-child,
  #facility .content-top a:last-child {
    margin-right: auto;
  }
  
  #oiwai .frame .container {
    padding:0 10px;
  }
  
  #oiwai .frame01 .info-room div,
  #oiwai .info-detail .box .fl-left {
    width:100%;
  }

  #oiwai .info-detail .box {
    padding: 0 0px 20px 0px;
  }
  
  #dish .info-detail .box .fl-left,
  #oiwai .info-detail .box .fl-right,
  #facility .info-detail .box .fl-right {
    width:100%;
    float:none;
  }
  
  #dish .list2 {
  width: auto;
  }
  
  #facility .frame03 li {
    float: none;
    margin-right: 0px;
    margin-bottom: 20px;
    text-align: center;
  }
  
  
  #oiwai .info-detail .box .fl-right,
  #oiwai .info-detail .box .text .fl-right {
    width:100%;
  }
  
  #oiwai .info-detail .box .text,
  #oiwai .frame02 .info-detail .box {
    margin-bottom: 30px;
  }
  
  #oiwai .frame02 {
    margin-bottom:0;
  }
  
  #oiwai .info-detail h1 img {
    margin:0 auto;
  }
  
  #oiwai .info-detail .box .fl-right {
    text-align:center;
  }
  
  #oiwai .frame02 .info-detail .box .fl-right img {
    text-align:center;
    margin-top:20px;
  }
  
  #oiwai .text-comment {
    width:100%;
  }
		
		#oiwai .frame01 .siki {
	  height: 300px;
	  background: url(../../image/oiwai/img-top-frame01.png) no-repeat center 0;
		}  

  #oiwai .text-comment {
   width:100%;
   padding:10px 20px 20px;
   margin:0 auto;
   text-align:left;
   border: 1px solid #B01F24;
   margin-bottom:10px;
  }
		
		#oiwai .info-top h1 .sp{
			margin: 0 auto;
  }
		
		#oiwai .info-detail .box .text .fl-right {
  width:100%;
		text-align: left;
		padding-bottom: 10px;
  }

  .frame-content .fl-left {
    width: 100%;
    text-align: center;
    float: none;
    margin: 0 auto;
  }
  
  .frame-content .fl-left .text1 {
    margin-left:20px;
  }
  
  .frame-content .fl-right {
    float: none;
    width: 100%;
    margin-top: 50px;
    text-align:center;
  }
  
  #facility .frame-content .fl-right img {
    width:100%;
  }
  
		#facility h1 {
			margin-left: 10px;
			margin-right: 10px;
		}
		
  #facility h1 img {
			 max-width: 100%;
				height: auto;
    text-align:center;
    margin:0 auto;
  }
  
  #dish .container, #facility .container {
    padding:0 10px;
  }
  
  .frame-content .fl-right .bt-detail {
    margin-top:20px;
  }
  
  #dish .box .list-product li {
    float:none;
    margin-right:0;
    margin-bottom:20px;
  }
  
  #dish .box .list-product .info .fl-left {
    text-align:left;
  }
  
  #dish .box .list-product .info .fl-right {
    width:100%;
  }
		
		#dish .dishUl {
   	width: 100%;
	   margin: 0;
  }

  #dish .dishUl li {
	   float: none;
   	width: auto;
	   margin: 0 0 30px;
	   text-align: center;
	   font-size: 18px;
	   line-height: 1.6;
  }

  #dish .dishUl li:last-child {
	   margin: 0;
  }
		
		#dish .annaiBox .annnai {
			margin: 0 10px 30px;
		}
		
		#dish .annaiBox .annnai img {
			 max-width: 100%;
				height: auto;
	   text-align: center;
  }
		
		#dish .annaiBox .kakaku {
			 padding: 20px 10px 0;
		}
		
		#dish .annaiBox .kakaku dt {
   	width: auto;
	   float: none;
	   margin: 0 0 5px;
  }

  #dish .annaiBox .kakaku dd {
	   margin: 0 0 20px;
  }
  
  #dish .list-info {
  width: 100%;
  }

  .cafedl {
	  width: 100%;
  	margin: 0 auto 60px;
  }

  .cafedl dt {
	   width: 200px;
	   float: left;
	   margin: 0 0 10px;
  }

  .cafedl dd {
	   text-align: right;
	   margin: 0 0 10px 200px;
  }
  
		#room .content-top li {
    float:none;
    display:inline-block;
				width: 260px;
				text-align: center;
				padding: 0;
				margin: 0 10px 10px;
  }
  
  #room .content-top li:nth-child(3n) {
				margin: 0 10px 10px;
  } 
		
  #room .content-top li:nth-child(7) {
			display: block;
			margin: 0 auto 10px;
		}
  
  #room .container {
    padding: 0 10px;
  }
  
  #room .content-top {
    padding-bottom:30px;
  }
  
  #room .frame-content .info-detail .fl-left {
    width: 100%;
    margin-right: 0;
    text-align: left;
  }
  
  #room .frame-content .info-detail .fl-right {
    width: 100%;
    margin-top:10px;
				text-align: left;
  }
  
  #room .frame-content .bt-top {
    margin-top: 30px;
  }
  
  #room .box li {
    float: none;
    margin-right: 0px;
    text-align: center;
  }
		
		#room .frame-content .fl-left .bt-frame {
    background:#727171;
    display:block;
    margin-top:25px;
				text-align: center;
  }
  
   #room .room3d {
position:relative;
width:96%;
height:0;
padding-top:75%;
margin: 40px auto;
}
#room .room3d iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}

.container2 {
width: 96%;
margin: 0 auto;
}

    
		
  #index .map p {
    padding:0 10px;
  }
  
  #saijiki .content h3 {
    margin-top:40px;
    margin-bottom:10px;
  }
  
  #saijiki .content .container {
    padding:0px 10px 50px 10px;
  }
  
  #info .content h1 {
    margin:0 40px;
  }
  
  #info .content .container {
    padding:0 10px;
  }
  
  #info .content .fl-right {
    width:100%;
    margin-left:0px;
  }
  
  #info .content .fl-left {
    margin-bottom:30px;
    text-align:center;
    float:none;
  }
  
  #info .content .text-right {
    margin: 0 0 40px 0;
  }
  
  #info .content .fl-left img {
    margin-top:0px;
  }
  
  .info_banner {
	   height: 220px;
   	background: url(../image/info_banner.png) no-repeat center center;
	   background-size: cover;
  }

  .info_banner div {
   	width: 100%;
   	margin: 0;
	   padding: 12px 0;
   	text-align: right;
  }
		
  .info_banner div img {
			 width: auto;
				height: 200px;
				padding-right: 10px;
		}
		
  #okami .content {
    margin-bottom:60px;
  }
  
  #okami .content .container {
    padding: 0 10px;
  }
  
  #okami .content .fl-left {
    width:100%;
  }
  
  #okami .content .fl-right {
    text-align: center;
    width: 100%;
    margin-top: 20px;
  }

  .saijiki_banner {
	   height: 220px;
   	background: url(../image/info_banner.png) no-repeat center center;
	   background-size: cover;
  }
		
  .saijiki_banner div {
   	width: 100%;
   	margin: 0;
	   padding: 12px 10px;
   	text-align: left;
  }
		
  .saijiki_banner div img {
			 width: 220px;
				height: auto;
				padding-right: 10px;
		}

  .okami_banner {
	   height: 220px;
   	background: url(../image/info_banner.png) no-repeat center center;
	   background-size: cover;
  }
  .okami_banner div {
   	width: 100%;
   	margin: 0;
	   padding: 12px 10px;
   	text-align: left;
  }
		
  .okami_banner div img {
			 width: 190px;
				height: auto;
		}
		
		#facility .list-info {
  	width: auto;
  	margin: 0 auto;
  }
		
	.addTop {
	margin: 20px 0 0;
	border-bottom: 1px dotted #CCC;
 }

.addTop a {
	width: 100%;
	margin: 0 auto;
	display: block;
	padding: 10px;
}

.addTop a:hover {
	background-color: #F3F2F1;
}

.addTop dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.addTop dl dt {
	width: 18%;
	margin-right: 2%;
	text-align: left;
}

.addTop dl dt img {
	max-width: 100% !important;
	height: auto;
}

.addTop dl dd {
	width: 78%;
	font-size: 14px;
	text-align: left;
	line-height: 1.4;
}

.iziModal {
	width: 90% !important;
	margin: auto !important;
	max-height: 80% !important;
}

.iziModal1 .iziModal-content {
	padding: 20px !important;
	line-height: 1.3;
}

.iziModal1 .closebtn {
	position: absolute;
	top: 5px !important;
	left: inherit;
	right: 5px !important;
	width: 20px;
	height: 20px;
	line-height:20px;
}



/*--------------------------------------------------------------------------------------------
  inquiry
--------------------------------------------------------------------------------------------*/
.inquiry {
	width: 100%;
	margin-bottom: 20px;
}

.inquiry th {
	width: 100%;
	display: block;
	padding: 10px;
	font-weight: normal;
	text-align: left;
	border-bottom: 1px solid #CCC;
	background-color: #EEE;
}

.inquiry td {
	width: 100%;
	display: block;
	padding: 10px;
	border-bottom: 1px solid #CCC;
}

.inquiry td input {
	display: block;
	width: 100%;
}

.inquiry td textarea {
	display: block;
	width: 100%;
}


/*--------------------------------------------------------------------------------------------
  index-news.news
--------------------------------------------------------------------------------------------*/
.newsBox {
	padding: 40px 0 0;
}

.newsBox h2 {
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 0.2em;
	margin: 0 0 40px;
}

.newsList {
	display: block;
	justify-content: normal;
	flex-wrap: nowrap;	
	margin: 0 20px 40px;
}

.newsList .list {
	width: 100%;
	margin: 0 0 30px;
}

.newsList .list .box {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px dotted #CCC;
	padding: 0 0 10px;
}

.newsList .list .newsImage {
	width: 24%;
}

.newsList .list .newsImage img {
	max-width: 100%;
	height: auto;
}

.newsList .list .newsText {
	width: 70%;
	text-align: left;
	font-weight: bold;
	font-size: 16px;
}

#index .newsList .list .newsText p {
	line-height: normal;
	margin: 0 0 10px;
}

.newsBox .btn {
	text-align: center;
	margin: 0 0 40px;
}

.newsBox .btn a {
	width: 80%;
	margin: 0 auto;
	padding: 14px 0;
	display: block;
	color: #FFF;
	background: url(../image/arrow-03.png) #727171 no-repeat 96% center;
}

.newsDetailBox {
	width: 96%;
	margin: 0 auto;
}

.news_banner {
	height: 220px;
}

.news_banner h1 {
	width: 96%;
	margin: 0 auto;
	line-height: 220px;
}

#okami .content h3 {
	margin-top: 0;
}

.newsBox img {
	max-width: 100%;
	height: auto;
}

/*--------------------------------------------------------------------------------------------
  oiwai
--------------------------------------------------------------------------------------------*/
#oiwai .frame03 {
	padding: 60px 0;
}

#oiwai .frame03 h2 {
	font-size: 30px;
	margin: 0 0 20px;
}


#oiwai .frame03 .box {
	width: 94%;
	margin: 0 auto;
}

#oiwai .frame03 .box .fl-left {
	width: 100%;
	float: none;
}

#oiwai .frame03 .box .title {
	width: 100%;
}

#oiwai .frame03 .box .text .fl-right {
	width: 100%;
	padding-bottom: 10px;
	float: none;
}

#oiwai .frame03 .box .fl-right {
	float: none;
}

#oiwai .frame03 .box .fl-right img {
	display: block;
	margin: 20px auto 0;
}

.sp-slide.view img {
    width: 100% !important;
    height: 50vw !important;
    object-fit: cover !important;
}


}

@media all and (max-width: 640px) {
  #index .banner .logo {
    top:15%;
  }
  
  #index .frame .list-link {
    width:100%;
    padding-bottom: 25px;
  }
  
  #index .frame .list-link a {
    float: none;
    display: block;
  }
  
  #index .content-top h1 img {
    /*width:215px;*/
				max-width: 100%;
  }
  
  #index .frame01 h2 img {
    /*width:244px;*/
				max-width: 100%;
  }
  
  #index .frame02 h2 img {
    /*width:440px;*/
				max-width: 100%;
  }
  
  #index .frame03 h2 img {
    /*width:300px;*/
				max-width: 100%;
  }
  
  #index .frame04 h2 img {
    /*width:432px;*/
				max-width: 100%;
  }
  
  #index .map h2 img {
    /*width:86px;*/
				max-width: 100%;
  }
  
  #index .frame p {
    line-height:20px;
				text-align: left;
  }
  
  #index .frame .bt-frame {
    margin: 25px 0 45px 0;
				text-align: center;
  }

		#index .content-top p {
				margin: 0 auto;
    line-height:25px;
    margin-top:20px;
				text-align: left;
  }
		
		#index .frame .list-link {
    width: 96%;
    text-align: center;
    margin: 0 auto;
  }

  #index .frame .list-link ul li {
    float:left;
				width: 32%;
    margin:0 2% 40px 0;
		  background-color: #FFFFFF;
  }

  #index .frame .list-link ul li img {
			max-width: 100%;
		}
		

}

@media all and (max-width: 460px) {
  header .lang {
    /*display:none;*/
  }

/*index*/
  #index .banner .logo {
    display:none;
  }
  
  #index .map .info img {
    width:90%;
  }
		
		#index .content-top p {
			 width: 90%;
				margin: 0 auto;
    line-height:25px;
    margin-top:20px;
				text-align: left;
  }

  #index .frame .list-link ul li {
    float:none;
				width: 100%;
    margin:0 0 20px 0;
				background-color: transparent;
  }
 
  .title1-frame02,
  .title-frame04 {
    display:none;
  }
  
  .title1-frame02-sp {
    display: initial;
    width:255px!important;
  }
  
  .title-frame04-sp {
    display: initial;
    width:310px!important;
  }
  
  footer .info .fl-right img {
    width:300px;
  }
  
  #room .content-top h2 img,
  #room .content-top h3 img {
    max-width: 90%;
				height: auto;
  }
  
  #room .box h2 img {
    width:285px;
  }
  
  #room .content-top li,
  #room .content-top li:nth-child(3n) {
  }
  
  #room .box li img {
    width:100%;
  }
  
  #oiwai .frame01 .info-room div>img {
    width:100%;
  }
  
  #index .frame .list-link2 {
width: 96%;
margin: 0 auto;
}

#index .frame .list-link2 ul li {
float: none;
width: 100%;
background-color: transparent;
}

}

@media all and (max-width: 340px) {
  .frame-content .fl-left .text1 {
    width:100%;
    margin-left:0;
  }
}