@charset "utf-8";

.lower .page-title {
  background-image: url(../images/img_title.jpg);
}

.content h2:first-child {
  margin-bottom: 40px;
}

.imgbox_text {
  background: rgba(255, 255, 255, .8);
}
.room p.new {
  color: #57b4c6;
  font-size: 2.4rem;
  font-weight: bold;
  margin-top: 90px;
}
.room .imgbox_text {
  background: none;
}
.room .imgbox_text .title {
  padding: 20px;
  background: rgba(255, 255, 255, .8);
}
.room .box-wide .imgbox_text {
  padding: 0;
}
.room .box-wide .imgbox_text span.x-small,
.room-list li .title2 span.x-small {
  font-size: 70%;
}
.room .box-wide .imgbox_text table,
.room .room-list .text2 table{
  border: none;
  font-size:87%; 
}
.room .box-wide .imgbox_text table th,
.room .room-list .text2 table th{
  background: none;
  border: none;
  border-bottom: 1px solid #ccc;
}
.room .box-wide .imgbox_text table td,
.room .room-list .text2 table td {
  background: none;
  text-align: left;
  border: none;
  border-bottom: 1px solid #ccc;
}
.room .box-wide .imgbox_img {
  width: 790px;
  border-radius: 10px;
}
.room .room-list li:last-child .title span:first-letter {
  letter-spacing: 1em;
}
.room .point_ttl {
  font-weight: bold;
  margin-top: 60px;
  text-align: center;
}
.room .point_ttl span {
  display: block;
  color: #57b4c6;
  font-family: 'Quicksand';
  font-size: 2.0rem;
}
.room .room_color {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 40px 0;
}
.room .room_color::after {
  display: none;
}
.room .room_color .txt {
  position: relative;
  z-index: 2;
}
.room .room_color .txt .room_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: 0;
}
.room .room_color .txt .room_ttl .floor {
  color: #fff;
  border-radius: 100px;
  font-size: 2.4rem;
  font-weight: bold;
  font-family: 'Quicksand';
  padding: 10px;
}
.room .room_color .txt .room_ttl .ttl {
  font-weight: bold;
  font-size: 2.4rem;
}
.room .room_color .txt .room_ttl .ttl .en {
  font-family: 'Quicksand';
  font-size: 1.6rem;
  display: inline-block;
  padding-left: 15px;
}
.room .room_color.orange .txt .room_ttl .floor {
  background-color: #ff5e00;
}
.room .room_color.orange .txt .room_ttl .ttl {
  color: #ff5e00;
}
.room .room_color.green .txt .room_ttl .floor {
  background-color: #77a436;
}
.room .room_color.green .txt .room_ttl .ttl {
  color: #77a436;
}
.room .room_color.blue .txt .room_ttl .floor {
  background-color: #3185bf;
}
.room .room_color.blue .txt .room_ttl .ttl {
  color: #3185bf;
}
.room .room_color .img {
  width: 700px;
  position: relative;
  z-index: 2;
}
.room .room_color .img img {
  width: 100%;
  margin-top: 20px;
}
.room .room_color.orange {
  margin-top: 40px;
}
.room .room_color.green .txt {
  order: 1;
}
.room .room_color::before,
.room .exhibition::before {
	background-repeat: no-repeat;
	background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100vw;
    height: 100%;
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    content: "";
	  z-index: 1;
}
.room .room_color.orange::before {
  background-image: url(../images/bg_orange.png);
}
.room .room_color.green::before {
  background-image: url(../images/bg_green.png);
}
.room .room_color.blue::before {
  background-image: url(../images/bg_blue.png);
}
@media only screen and (max-width: 1024px) {
	.room .room_color::before,
  .room .exhibition::before {
		width: calc(100% + 50px);
		margin-left: -25px;
		margin-right: 0;
	}
}
.room .exhibition {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 100px 0;
}
.room .exhibition::before {
  background-image: url(../images/bg_exhibition.png);
}
.room .exhibition_text {
  background-color: rgba(255, 255, 255, .8);
  margin: 0;
  padding: 0 30px 30px 30px;
  z-index: 2;
}
.room .exhibition_text p {
  text-align:right;
  margin-top:30px;
}
.room .point-box .layout-unit {
  border: 3px solid #57b4c6;
  padding: 0 25px 30px;
  margin-top: 40px;
}
.room .point-box .layout-unit p {
  letter-spacing: -1px;
}
.room .point-box .layout-unit.grid-4 {
  width: 373px;
}
.room .point-box .layout-unit .ttl {
  color: #57b4c6;
  font-weight: bold;
  text-align: center;
  font-size: 1.8rem;
}
.room .point-box .layout-unit img {
  border-radius: 0;
  margin-bottom: 5px;
}
.room .calm-box {
  margin-top: 50px;
}
.room .calm-box .layout-unit img {
  border-radius: 0;
  margin-bottom: 5px;
}
.room .calm-box .grid-8 {
  position: relative;
}
.room .calm-box .grid-8 .txt-box {
  position: absolute;
  top: 30px;
  left: 30px;
  padding: 30px;
  background-color: rgba(0, 0, 0, 0.3);
  width: 345px;
}
.room .calm-box .grid-8 p {
  color: #fff;
  line-height: 1.5;
}
.room .calm-box .grid-8 p.ttl {
  font-weight: bold;
  margin-top: 0;
  font-size: 1.8rem;
  text-align: center;
}

#food .attention,
#hotel .attention {
  margin-top: 50px;
}

.content .btn {
  width: 500px;
  margin: 50px auto 0;
}
.content .yellow {
  background: #f8ea63;
  border: 5px solid #f8ea63;
  color: #000;
  font-weight: bold;
}
.content .yellow:hover,
.content .yellow:active {
  background: #fff;
}
.content .btn:last-child {
  margin: 20px auto 40px;
}

.content td {
  text-align: right;
}

.box-wide {
  margin-top: 50px;
}
.imgbox img {
  border-radius: 10px;
}
.imgbox .title {
  font-size: 150%;
  margin-top: 0;
}

.room-list li:nth-of-type(2) .text,
.room-list li:last-child .text {
  margin-top: -120px;
}

.room-list li .title2{
  margin: 0 0 0 20px;
  display: inline-block;
  background: rgba(255, 255, 255, .8);
  padding: 20px;
  font-size: 150%;
  float: left;
}

.room-list li .text2{
  padding-left: 200px;
  /*font-size: 87%;*/
  margin-top: 0;
}

.room-list li .text2 table {
  margin-top: 10px;
}

.in-out {
  margin-top: 60px;
}
.in-out p {
  margin: 20px auto 50px;
  text-align: center;
}

.bg-gray .t-scroll + p.right {
  margin: 10px auto 0;
  max-width: 700px;
}

p.right.mini {
  margin: 30px auto 10px;
  max-width: 700px;
	
}　

.box-white {
  background: #fff;
  border-radius: 20px;
  margin: 50px auto 0;
  clear: both;
  padding: 0px 80px 60px;
}
.box-white h2 {
  padding: 50px 0 20px;
}
.box-white .fr {
  margin-top: 30px;
}
.fl {
  float: left;
  width: 50%;
  padding-right: 30px;
}
.fr {
  float: right;
  width: 50%;
}
.fr ul,
.fl ul {
  margin: 0;
}
.fr li,
.fl li {
  display: inline-block;
  vertical-align: top;
}
.fr li:nth-child(1n),
.fl li:nth-child(1n) {
  width: 52%;
}
.fr li:nth-child(2n),
.fl li:nth-child(2n) {
  width: 46%;
}
.fr.img li:nth-child(1n),
.fl.img li:nth-child(1n) {
  width: 31%;
  margin-bottom: 10px;
}
/*.fr li:nth-child(2n),
.fl li:nth-child(2n) {
  width: 31%;
  margin-bottom: 10px;
}*/
.fr li span,
.fl li span {
  font-size: .8em;
}

.service td {
  text-align: left;
}
.service-list {
  border: 4px double #999;
  width: 80%;
  margin: 30px auto 0;
  padding: 20px 30px;
}
.service-list div {
  width: 49%;
  padding-right: 0;
}
.service-list dl {
  margin-top: 0;
}
.service-list .fl dl {
  border-right: 1px solid #999;
}
.service-list dt {
  text-align: center;
  padding-bottom: 10px;
  font-weight: bold;
  font-size: 1.2em;
}
.service .fl li:nth-child(1n) {
  width: 49%;
}

.point {
  width: 635px;
  margin: 0 auto !important;
}
.point li {
  width: 140px;
  height: 140px;
  display: inline-block;
  text-align: center;
  background: #57b4c6;
  vertical-align: top;
  border-radius: 50%;
  color: #fff;
  margin-right: 20px;
  font-size: .9em;
  padding-top: 30px;
  line-height: 1.5;
}
.point li:last-child {
  margin-right: 0;
}
.point li img {
  padding-bottom: 8px;
  width: 50px;
}
.point li span {
  font-size: .8em;
}

.meal .cost {
  text-align: right;
  font-size: 1.2em;
  font-weight: bold;
}
.meal .room-list li:nth-of-type(2) .text {
  margin-top: -120px;
}

.layout-unit img {
  border-radius: 20px;
}

.meal .imgbox_img {
  width: 652px;
}
.meal .imgbox_text {
  width: 500px;
}

td.card img {
  height: 17px;
  vertical-align: middle;
  margin-right: 3px;
}


/* --- sp ---------------------------------- */

.sp .content .btn {
  width: 100%;
}

.sp .in-out p {
  text-align: left;
}

.sp .box-white {
  margin: 30px 0 50px;
  width: 100%;
  padding: 30px;
}
.sp .box-white h2 {
  line-height: 1.1;
}
.sp .box-white h2 span {
  margin-top: 10px;
}
.sp .box-white ul {
  margin-top: 20px;
}
.sp .box-white li {
  font-size: 95%;
}
.sp .fl {
  float: none;
  width: 100%;
  padding-right: 0;
}
.sp .fr {
  float: none;
  width: 100%;
}
.sp .fr li:nth-child(1n),
.sp .fl li:nth-child(1n) {
  width: 49%;
}
.sp .service th,
.sp .service td {
  display: block;
}
.sp .service colgroup{display:none;}

.sp .no-photo .layout-unit:last-child img {
  margin-top: 10px;
}

/*.sp .room-list li:first-child .text {
  margin-top: -80px;
}*/

.sp .point {
  width: 290px;
  margin: 0 auto
}
.sp .point li {
  margin-right: 10px;
  width: 135px;
  margin-bottom: 10px;
}
.sp .point li:nth-child(2n) {
  margin-right: 0;
}

.sp .service-list {
  width: 100%;
  padding: 10px;
  margin: 20px auto 30px;
}
.sp .service-list dl {
  padding: 10px 0;
}
.sp .service-list .fl dl {
  border-right: 0;
  border-bottom: 1px solid #999;
}
.sp .service-list li {
  font-size: 95%;
}
.sp .service-list .fr {
  padding-top: 10px;
}
.sp .service-list dt {
  font-size: 1em;
}

/*.sp .meal .room-list li:first-child .text {
  margin-top: -50px;
}*/

.sp .box-wide {
  margin-top: 30px;
}

.sp .meal .imgbox_img {
  width: 100%;
}
.sp .meal .imgbox_text {
  width: 90%;
}

.sp .room p.new {
  margin-top:30px;
  font-size: 1.8rem;
}
.sp .room .room_color {
  display: block;
}
.sp .room .room_color .img {
  width: 100%;
}
.sp .room .room_color .txt .room_ttl .ttl {
  font-size: 1.8rem;
}
.sp .room .room_color.orange::before,
.sp .room .room_color.blue::before {
  background-position: left center;
}
.sp .room .room_color.green::before {
  background-position: right center;
}
.sp .room .exhibition {
  padding: 10px;
}
.sp .room .point-box .layout-unit,
.sp .room .point-box .layout-unit.grid-4 {
  display: block;
  width: 100%;
  margin-top: 20px;
  padding: 0 15px 15px;
}
.sp .room .point-box .layout-unit img {
  display: block;
  margin: 10px auto;
  float: none;
}
.sp .room .calm-box .grid-8 .txt-box {
  position: relative;
  width: 100%;
  margin-bottom: 5px;
  top: inherit;
  left: inherit;
  padding: 15px;
  background-color: rgba(0, 0, 0, 0.6);
}
.sp .room .point_ttl{
  text-align: center;
}
.sp .room .imgbox img {
  max-height: inherit;
}
.sp .room .imgbox_text .title {
  width: 100%;
}
.sp .room .box-wide .imgbox_img {
  width: 100%;
  margin: 10px 0;
}
.sp .room .imgbox_text {
  margin: 0;
  width: 100%;
}
.sp .room-list li .title2 {
  width: 100%;
  float: none;
  margin: 0;
}
.sp .room-list li .text2 {
  padding: 0;
}