@charset "utf-8";
/* CSS Document */
.new{
	font-size: 30px!important;
	color: #CA475C!important;
}

.room_box {
	width: 940px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	justify-content: space-between;
}

.room_box_card {
	width: 430px;
}

.cap_room_overlay {
	line-height: 1.4;
	position: static;
	font-size: 14px;
	min-height: 90px;
	height: auto;
}

#facility .cap_room_overlay {
	min-height: auto;
}

.room_box_card img {
	cursor: pointer;
}

.room_box_card img:hover {
	opacity: 0.7;
}

.room_ttl01{
	text-align: center;
}

.room_img {
	position: relative;
}

.room_img::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 3.2px;
	right: 0;
	width: 30px;
	height: 30px;
	background: url(../../images/common/icon_lupe.png) no-repeat center/contain;
}

ul[id^="thumb_slider_room"] {
	padding: 10px;
	background-color: #221f1e;
	font-size: 0;
	display: flex;
}

ul[id^="thumb_slider_room"] li {
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
	width: calc((100% - 10px * 2) / 3);
	cursor: pointer;
}

ul[id^="thumb_slider_room"] li:last-of-type {
	margin-right: 0;
}

.thumbnail-item>img {
	margin: auto;
	max-width: 100%;
}

.thumbnail-item {
	opacity: 0.4;
}

.thumbnail-item.thumbnail-current {
	opacity: 1;
}

.wrap_bnr{
  margin: 20px 10px;
  max-width: 1000px;
}

.yolulu {
	text-align: center;
}

.japantv{
  text-align: center;
  margin-bottom: 20px;
}

.room_box02_item > div {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.room_list li {
	width: 250px;
}

.room_list li:nth-child(3n + 2) {
	width: 280px;
}

.price_normal_box {
	margin-bottom: 60px;
}

table.price_tbl {
	margin: 0 0 30px 0;
	height: 762px;
}

.price_ttl03 {
	color: #fff;
	font-size: 21px;
	margin-bottom: 20px;
	padding: 15px;
	background: #4A251C;
	position: relative;
}

.price_ttl03::after {
	content: "+";
	border: solid 1px #fff;
	color: #fff;
	position: absolute;
	font-weight: bolder;
	top: calc(50% - 15px);
	right: 30px;
	padding: 1px 5px;
	vertical-align: middle;
	display: inline-block;
	width: 16px;
	text-align: center;
	font-size: 17px;
	transition: 0.3s;
}

.price_ttl03.open::after {
	content: "-";
	transition: 0.3s;
}

.price_caption02 {
	display: inline-block;
	font-size: 18px;
	vertical-align: middle;
	margin-left: 5px;
}
.tb_bold tr:nth-child(3n) {
	border-bottom: 1px solid #674c45;
}

.tb_bold tr:nth-child(4n) {
	border-bottom: 3px solid #674c45;
}
.price_caption03 {
  margin-left: 2em;
  font-size: 0.7em;
}
.price_ttl02_last{margin-top: 40px;}
.nyholiday01{
    margin-top: -20px;
}

#concept {
	padding: 80px 0;
}

#concept * {
	font-family: a-otf-ryumin-pr6n,serif;
}

.concept_inner {
	display: flex;
	justify-content: space-between;
}

.concept_inner {
	margin-top: 100px;
}

.concept_inner:nth-of-type(even) {
	flex-direction: row-reverse;
}

.concept_left_box {
	width: 600px;
	max-width: 100%;
	height: auto;
}

.concept_left_box > img {
	height: 100%;
	object-fit: cover;
}

.section_heading {
	font-size: 2.1rem;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	letter-spacing: 3px;
	top: 60px;
	left: 0;
	right: 0;
	color: #D3B268;
}

.section_heading::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: url(/images/index/ttl_icon.svg) no-repeat center;
	background-size: contain;
	margin: 0 auto;
	padding-bottom: 24px;
}

.section_heading::after {
	content: '';
	display: block;
	width: 100%;
	height: 6px;
	background: url(/images/reserve_border_h2.png) repeat-x center;
	padding-top: 24px;
}

.concept_right_box {
	width: 360px;
	max-width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	font-family: 'Noto Serif JP', serif;
}

.concept_ttl {
	font-size: 30px;
	color: #D3B268;
}

.concept_txt {
	color: #fff;
	font-size: 16px;
}

.concept_txt > span {
	font-size: 14px;
}

.concept_link {
	line-height: 80px;
	background-color: #231F1E;
	transition: all .2s;
	position: relative;
  z-index: 1;
}

.concept_link > a {
	display: block;
	height: auto;
	width: 100%;
	text-align: center;
	color: #D3B268;
	position: relative;
	transition: all .5s;
	font-family: baskerville-poster-pt,serif;
}

.concept_link > a::after {
	content: "";
	display: block;
	height: 24px;
	width: 24px;
	border-radius: 50%;
	border: 1px solid #D3B268;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-45%);
	transition: all .5s;
}

.concept_link > a::before {
	content: "";
	display: block;
	width: 5px;
  height: 5px;
  border: 2px solid;
  border-color:  transparent transparent #D3B268 #D3B268;
  transform: rotate(-45deg) translateY(-50%);
	position: absolute;
	top: 47.5%;
	right: 35.5px;
	transition: all .5s;
}

/* facility */
#facility {
	padding: 80px 0;
}

#facility * {
	font-family: a-otf-ryumin-pr6n, serif;
}

#facility p,
#facility li {
	font-family: 'Noto Sans JP', sans-serif;
}

.facility_innner {
	width: 940px;
	max-width: 100%;
	margin: 80px auto 0;
}

.facility_heading {
	color: #fff;
	font-size: 28px;
	display: flex;
	align-items: center;
}

.facility_heading::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 20px;
	background-image: url(/images/common/room_icon01.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.facility_list {
	display: flex;
	justify-content:flex-start;
	flex-wrap: wrap;
	color: #fff;
	margin-bottom: -20px;
	margin-left: 20px;
}
.facility_list02 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	color: #fff;
	margin-bottom: -20px;
	margin-left: 20px;
}

.facility_item {
	width: calc((100% - 30px) / 3);
	list-style-type: disc;
	margin-bottom: 20px;
}

.facility_list02 {
	justify-content: flex-start;
}

.facility_list02 .facility_item {
		width: auto;
}

.facility_list02 .facility_item:not(:last-child) {
	margin-right: 20px;
	padding-right: 20px;
}

.slider_facility {
	margin-top: 36px;
}

.thumb_slider_facility {
	margin-top: 25px;
	background-color: transparent !important;
	padding: 0 !important;
}

.facility_heading_wrap {
	display: flex;
	align-items: end;
	justify-content: space-between;
	padding-bottom: 10px;
	margin-bottom: 25px;
	position: relative;
}

.facility_heading_wrap::after {
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	background: linear-gradient(to right, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
	position: absolute;
	bottom: 0;
}

.facility_heading_wrap > p {
	color: #D3B268;
}

.facility_txt {
	color: #fff;
	margin-bottom: 10px;
}
@media screen and (min-width: 751px) {
	.concept_link::before {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		background: #D3B268;
		transform-origin: 100% 50%;
		transform: scaleX(0);
		transition: transform ease-in .2s;
	}

	.concept_link:hover::before {
		transform-origin: 0% 50%;
		transform: scaleX(1);
	}

	.concept_link > a:hover {
		color: #231F1E;
		opacity: 1;
	}

	.concept_link > a:hover:after {
		border: 1px solid #231F1E;
	}

	.concept_link > a:hover:before {
		border-color:  transparent transparent #231F1E #231F1E;
	}

	.price_ttl03::after{
		content: none;
   }
}

@media screen and (min-width: 751px) {
	#g_nav {
		display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
	}

	#g_nav .logo {
		order: 0;
	}

	.h_tel {
		order: 1;
		margin-right: 10px !important;
	}

	.h_reserve {
		order: 2;
	}

  .wrap_bnr{
    margin: 20px auto;
  }
	#g_nav ul li {
		margin: 0 20px;
	}
	#g_nav .h_tel,
	#g_nav .h_reserve {
		width: 214px;
	}
	#g_nav .h_tel dd {
		font-size: 20px;
	}
	#g_nav .h_tel dd span {
		margin-top: 0;
	}

	.reserve_contact dt {
		color: #fff;
		font-size: 40px;
		letter-spacing: 0.1em;
		transform: rotate(.03deg);
		font-weight: bold;
		font-style: italic;
		line-height: 1.4em;
	}

	.reserve_contact dt span {
		display: inline-block;
		width: 34px;
		vertical-align: middle;
		margin-right: 10px;
		margin-top: -12px;
		line-height: 1em;
	}

	.reserve_contact dt {
		width: 100%;
		text-align: center;
		padding: 9px 0;
		position: relative;
	}

	.reserve_contact dt:before {
		content: "";
		position: absolute;
		width: 100%;
		height: 1px;
		left: 0;
		top: 0;
		background: -moz-linear-gradient(left, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		background: -webkit-linear-gradient(left, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		background: linear-gradient(to right, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5b94a', endColorstr='#e5b94a', GradientType=1);
	}

	.reserve_contact dt:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 1px;
		left: 0;
		bottom: 0;
		background: -moz-linear-gradient(left, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		background: -webkit-linear-gradient(left, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		background: linear-gradient(to right, #e5b94a 0%, #f9e895 30%, #e5a14e 70%, #e5b94a 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5b94a', endColorstr='#e5b94a', GradientType=1);
	}

	.reserve_contact dt img {
		width: 98px;
	}

	.room_box02_item .vertical_img {
		height: 270px;
	}

	.facility_box {
		margin: auto;
		width: 594px;
		margin-top: 20px;
	}

	.shinjuku_reserve_now {
		display: inline-block;
		margin-top: 0px;
		vertical-align: top;
		width: calc((100% - 50px) / 2);
	}

}
dl.mb60{
  margin-bottom:60px;
}
*-webkit-scrollbar-track {
  background: transparent;
}
@media only screen and (min-width:1580px){
  body #g_nav {
    width: 1500px;
  }
}
@media only screen and (max-width: 1580px) and (min-width:760px){
  .header {
    overflow-y: auto;
    overflow-x: scroll;
  }
  .header::-webkit-scrollbar {
    -webkit-border-radius: 3px;
    border-radius: 3px;
    overflow-x: scroll;
    height: 5px;
  }
  .header::-webkit-scrollbar-thumb {
    border-radius:20px;
    background: rgba(255,255,255,0.5);
  }
  #g_nav {
    width: 95vw;
    min-width: 1400px;
  }
	#g_nav .logo {
    float: none;
    padding: 27px 0 15px;
    display: inline-table;
	}
  #g_nav ul li {
    margin: 0 10px;
  }
	.logo img{
		width:150px;
	}
  .store_name {
    font-size: 16px;
  }
  #g_nav .h_reserve {
    width: 180px;
  }
}
