@charset "UTF-8";
/*- variable*/
/*- mixin*/
/*---------------------------------------
    リセットCSS（編集不要）
----------------------------------------*/
html {
  overflow-y: scroll;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

q:before, q:after {
  content: '';
}

object, embed {
  vertical-align: top;
}

hr, legend {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

ul li {
  list-style-type: none;
}

a, label {
  cursor: pointer;
}

img {
  vertical-align: bottom;
  margin: 0;
  padding: 0;
}

* {
  -ms-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN" , "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
  font-size: 76%;
  line-height: 1.4;
  color: #000b36;
  min-width: 980px;
}
.gsc-clear-button {
  display: none!important;
}
.cse form.gsc-search-box,
form.gsc-search-box {
  padding: 0!important;
  margin-bottom: 0!important;
}
.cse table.gsc-search-box td.gsc-input,
table.gsc-search-box td.gsc-input {
  padding-right: 0!important;
}
.cse input.gsc-search-button,
input.gsc-search-button {
  height: 32px!important;
}
.cse input.gsc-input,
input.gsc-input {
  padding: 6px!important;
  font-size: 12px!important;
}
table.gsc-search-box {
  margin-bottom: 0!important;
}
@media (max-width: 767px) {
  body {
    margin-bottom: 50px;
    min-width: 100%;
    -webkit-text-size-adjust: 100%;
    /*for iPhone*/
  }
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

a:hover {
  opacity: 0.7;
}
a img {
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}
a:hover img {
  opacity: 0.7;
}

button {
  outline: 0;
}

input[type=text]:focus {
  outline: none;
}

img.sp {
  display: none;
}

@media (max-width: 767px) {
  img.pc {
    display: none;
  }
  img.sp {
    display: block;
  }
  a:hover {
  opacity: 1;
  }
  a:hover img {
    opacity: 1;
  }
}

.content_inner {
  width: 980px;
  margin: 0 auto;
  position: relative;
}

@media (max-width: 767px) {
  .content_inner {
    width: 100%;
    padding: 0 15px;
  }
}

/*----------------------------------------
    Top Header
----------------------------------------*/
.top_header {
  background: #212325;
  height: 35px;
  line-height: 35px;
  overflow: hidden;
}

.top_header:after {
  display: block;
  content: '';
  clear: both;
}

.top_logo {
  display: inline-block;
  padding-left: 15px;
}

.top_logo img {
  vertical-align: middle;
  margin-bottom: 2px;
}

.WHG_block {
  float: right;
}

.WHG_block:after {
  display: block;
  content: '';
  clear: both;
}

.WHG_block li {
  float: left;
}

@media (max-width: 767px) {
  .WHG_block li:not(:last-child) {
    display: none;
  }
}

.WHG_block li a {
  color: #fff;
  text-decoration: none;
  font-size: 100%;
  padding: 12px 15px;
  position: relative;
}

.WHG_block li a.active {
  color: #12256b;
  background: #f1f4f9;
}

.WHG_block li:nth-child(2) a {
  padding-left: 40px;
}

.WHG_block li:nth-child(2) a:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 15px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(/common/img/ico-wh.png) no-repeat left center;
  width: 20px;
  height: 20px;
}

.WHG_block li:nth-child(3) a {
  padding-left: 44px;
}

.WHG_block li:nth-child(3) a:before {
  position: absolute;
  content: '';
  top: 50%;
  left: 15px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(/common/img/ico-hg.png) no-repeat left center;
  width: 22px;
  height: 14px;
}

.WHG_block li:last-child a {
  background: #45484a;
}

/*  Header
----------------------------------------*/
header {
  background: #f1f4f9 url(/common/img/bg-header.png) no-repeat left top;
  background-size: 100%;
}

.row {
  position: relative;
}

.row:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  .row {
    padding-top: 10px;
    display: flex;
    flex-direction: column;
    width: 100%;
  }
}

.logo {
  vertical-align: middle;
  position: absolute;
  top: 8px;
  left: 10px;
}
.logo.sp_message {
  display: none;
}
.logo a {
  display: inline-block;
}

@media (max-width: 767px) {
  .logo {
    position: relative;
    top: 0;
    left: 0;
    display: block;
  }
  .logo.sp_message {
    display: block;
  }
  .logo.pc_message {
    display: none;
  }
  .logo img {
    display: none;
  }
  .logo img.sp {
    display: block;
  }
}

.top_menu {
  padding-top: 7px;
}

.top_menu:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  .top_menu {
    padding: 0;
    display: block;
  }
}

.top_menu_list {
  float: right;
}

.top_menu_list .tel {
  display: none;
}

.top_menu_list > li {
  float: left;
}

@media (max-width: 767px) {
  .top_menu_list > li:not(:last-child) {
    display: none;
  }
}

.top_menu_list > li a {
  display: block;
  padding: 7px 10px;
}

.top_menu_list > li:last-child > a:before, .top_menu_list > li:nth-last-child(2) > a:before {
  display: none;
}

.top_menu_list a {
  font-size: 100%;
  color: #2b4aba;
}

.top_menu_list a:before {
  content: '';
  padding-right: 12px;
  background: url(/common/img/ico-arrow_left.png) no-repeat left center;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

.logo .logo_nav {
  display: none;
}

.fixed_nav {
  position: fixed;
  z-index: 100;
  top: -200px;
  width: 100%;
}

.fixed_nav:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  .fixed_nav {
    display: none;
  }
}

.fixed_nav .global_nav > li.reservation button {
  padding: 13px 0;
}

.fixed_nav .global_nav .dropdown_list {
  margin-top: 11px;
}

.fixed_nav .logo .logo_nav {
  display: block;
}
.fixed_nav .logo .logo_nav img {
  width: auto;
  max-height: 22px;
}
.fixed_nav .logo .default_logo {
  display: none;
}

.fixed_nav .header_inner {
  background: #f1f4f9;
}

.fixed_nav .navigation {
  background: rgba(241, 244, 249, 0.95);
}

.fixed_nav .inner_content {
  display: none;
}

.fixed_nav .top_menu {
  padding-top: 0;
}

.fixed_nav .top_menu_list .tel {
  display: block;
  padding: 7px 10px;
  font-weight: bold;
}

.fixed_nav .top_menu_list .tel .label {
  font-size: 84%;
  padding-right: 5px;
}

.fixed_nav .top_menu_list .tel .number {
  font-size: 108%;
}
.tablet_area .fixed_nav .top_menu_list .tel {
  padding: 5px 10px;
}
.tablet_area .fixed_nav .top_menu_list .tel a {
  display: inline;
  padding: 0;
    font-size: 84%;
}
.tablet_area .fixed_nav .top_menu_list .tel a:before {
    display: none;
}
.fixed_nav .top_menu_list #language, .fixed_nav .top_menu_list #search {
  display: none;
}

.dropdown {
  position: relative;
}

#language {
  position: relative;
}

#language > a {
  color: #bfbfbf;
  font-size: 117%;
}

#language > a:hover {
  opacity: 1;
}

#language > a:after {
  content: '';
  background: url(/common/img/ico-dropdown.png) no-repeat right center;
  width: 10px;
  height: 6px;
  padding-left: 18px;
}

#language .dropdown_list {
  width: 100%;
}

#language .dropdown_list li {
  width: 100%;
}

#language.open {
  background: #bfbfbf;
}

#language.open > a {
  color: #fff;
}

#language.open > a:after {
  background: url(/common/img/ico-dropdown_active.png) no-repeat right center;
}

@media (max-width: 767px) {
  #language {
    display: block;
    padding: 0;
  }
  #language > a {
    color: #979899;
    font-size: 100%;
  }
}

#search {
  position: relative;
}

#search a {
  background: url(/common/img/ico-search.png) no-repeat center center;
  text-indent: -9999px;
  width: 30px;
  height: 17px;
  padding: 15px 10px;
}

#search a:hover {
  opacity: 1;
}

#search.open a {
  background: #bfbfbf url(/common/img/ico-search_active.png) no-repeat center center;
}

#search #search_content {
  border: 10px solid #bfbfbf;
  background: #bfbfbf;
  width: 260px;
}

#search #search_content li {
  width: auto;
  float: none;
}

#search #search_content .input_text {
  padding: 0 10px;
  width: 175px;
  height: 30px;
  border: 0;
}

#search #search_content input[type=text] {
  color: #bfbfbf;
}

#search #search_content button {
  background: #12256b;
  overflow: visible;
  position: relative;
  float: right;
  font-size: 100%;
  border: 0;
  padding: 0;
  cursor: pointer;
  height: 30px;
  color: #fff;
  width: 65px;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

@media (min-width: 1024px) {
  #search #search_content button:hover {
    opacity: 0.7;
  }
}

.dropdown_list {
  position: absolute;
  z-index: 102;
  display: none;
  background: #fff;
  right: 0;
  width: 200px;
}

.dropdown_list:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  .dropdown_list {
    width: 100%;
  }
}

.dropdown_list li {
  width: 50%;
  float: left;
}

@media (max-width: 767px) {
  .dropdown_list li {
    width: 100%;
    float: none;
  }
}

.dropdown_list li a {
  padding: 15px 10px;
  display: block;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

@media (min-width: 1024px) {
  .dropdown_list li a.active, .dropdown_list li a:hover, .dropdown_list li a:focus {
    background: #12256b;
    color: #fff;
    opacity: 1;
  }
  .dropdown_list li a.active:before, .dropdown_list li a:hover:before, .dropdown_list li a:focus:before {
    background: url(/common/img/ico-arrow_right.png) no-repeat left center;
  }
}

@media (max-width: 767px) {
  .dropdown_list li a {
    padding: 15px 10px 15px 15px;
  }
}

@media (max-width: 767px) {
  .inner_content {
    display: flex;
    flex-direction: column;
    padding: 10px 0 10px;
  }
}

.inner_content .tel {
  padding-top: 0;
  text-align: right;
  color: #12256b;
  font-weight: bold;
}
.inner_content .tel.sp_message {
  display: none;
}
.inner_content .tel span a {
  color: #12256b;
}

.inner_content .tel .label {
  font-size: 142%;
  padding-right: 10px;
}

.inner_content .tel .number {
  font-size: 200%;
}

@media (max-width: 767px) {
  .inner_content .tel {
    color: #2b4aba;
    text-align: left;
    padding-top: 10px;
  }
  .inner_content .tel.sp_message {
    display: block;
  }
  .inner_content .tel.pc_message {
    display: none;
  }
  .inner_content .tel .label {
    font-size: 117%;
    padding-right: 7px;
  }
  .inner_content .tel .number {
    font-size: 150%;
  }
}

.inner_content .slogan {
  padding-left: 33px;
}

.inner_content .slogan img {
  max-width: 390px;
  height: auto;
  vertical-align: middle;
}

.inner_content .slogan a {
  font-size: 0;
  display: block;
  color: #000b36;
}

@media (max-width: 767px) {
  .inner_content .slogan {
    padding-left: 0;
  }
	.inner_content .slogan img {
    max-width: 300px;
    width: 100%;
    height: auto;
    vertical-align: middle;
}
  .inner_content .slogan a {
    font-size: 167%;
  }
}

.navigation {
  border-bottom: 1px solid #dcdcdc;
}

.navigation_sp {
  display: none;
}

@media (max-width: 767px) {
  .navigation_sp {
    display: block;
    position: fixed;
    bottom: 0;
    z-index: 9999;
    width: 100%;
    background: #fff;
  }
  .navigation_sp .global_nav_sp {
    position: relative;
    z-index: 1000;
  }
  .navigation_sp .global_nav_sp:after {
    display: block;
    content: '';
    clear: both;
  }
  .navigation_sp .global_nav_sp > li {
    height: 50px;
    line-height: 50px;
    float: left;
    /* 2017/07/12変更　ここから */
	width: 28%;
	/* 2017/07/12変更　ここまで */
    text-align: center;
    background: #00124a;
    border-left: 1px solid #12246b;
  }
  .navigation_sp .global_nav_sp > li:first-child {
    background: #b9232a;
    border: 0;
  }
  .navigation_sp .global_nav_sp > li.dropup {
	/* 2017/07/12変更　ここから */
    width: 16%;
	/* 2017/07/12変更　ここまで */
  }
  .navigation_sp .global_nav_sp > li.dropup .btn_menu {
    cursor: pointer;
    border: none;
    text-align: center;
    padding: 0;
    display: block;
  }
  .navigation_sp .global_nav_sp > li.dropup .btn_menu img {
    /* 2017/07/12変更　ここから */
	margin-bottom: 10px;
    width: auto;
    height: 27px;
	/* 2017/07/12変更　ここまで */
  }
  .navigation_sp .global_nav_sp > li.dropup .btn_menu.open {
    background: #f7f9fc;
    opacity: 1;
  }
  .navigation_sp .global_nav_sp > li a {
    font-size: 108%;
    color: #fff;
    display: block;
    width: 100%;
    padding: 0 15px;
  }
  .navigation_sp .global_nav_sp > li a:hover {
    opacity: 1;
  }
  .navigation_sp .global_nav_sp > li a:hover img:hover {
    opacity: 1;
  }
  .navigation_sp .global_nav_sp > li .dropup_list {
    position: absolute;
    background: #f7f9fc;
    width: 100%;
    left: 0;
    z-index: -1;
	/* 2017/07/12変更　ここから */
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; 
    flex-direction: row;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	/* 2017/07/12変更　ここまで */
  }
  .navigation_sp .global_nav_sp > li .dropup_list li {
    line-height: 1.5;
    width: 50%;
    text-align: left;
    border-bottom: 1px solid #eeeeee;
	/* 2017/07/12変更　ここから */
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; 
	/* 2017/07/12変更　ここまで */
    padding: 0 0 0 4%;
  }
  .navigation_sp .global_nav_sp > li .dropup_list li:nth-child(even) {
    border-right: 1px solid #eeeeee;
  }
  .navigation_sp .global_nav_sp > li .dropup_list li.title {
    padding: 15px;
    width: 100%;
    border: 0;
    background: #00124a;
    color: #fff;
    font-size: 125%;
  }
  .navigation_sp .global_nav_sp > li .dropup_list li a {
    color: #00124a;
    padding: 10px 15px;
		background: url(/common/img/ico-arrow_left.png) no-repeat left center;
		/* 2017/07/12変更　ここから */
		display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; 
    -webkit-box-flex: 1;
    -moz-box-flex: 1;        
    -webkit-flex: 1;  
    -ms-flex: 1;    
    flex: 1;       
	-webkit-align-items:center;
	/* 2017/07/12変更　ここまで */       
    align-items: center;
  }
}

.global_nav {
  text-transform: uppercase;
  text-align: justify;
  display: table;
  width: 100%;
  table-layout: fixed;
}

@media (max-width: 767px) {
  .global_nav {
    display: none;
  }
}


.global_nav .dropdown_list {
  margin-top: 18px;
  padding: 10px 0;
  border-bottom: none;
  width: 285px;
  left: 0;
  z-index: 102;
  -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=20, Direction=0, Color=#000000)";
  -moz-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
  filter: progid:DXImageTransform.Microsoft.Shadow(Strength=20, Direction=135, Color=#000000);
}

.global_nav .dropdown_list li {
  width: 100%;
  text-align: left;
}

.global_nav .dropdown_list li a {
  font-size: 100%;
  color: #12256b;
  padding: 15px 20px;
  font-weight: normal;
}

.global_nav .dropdown_list li a:before {
  content: '';
  padding-right: 14px;
  background: url(/common/img/ico-arrow_left.png) no-repeat left center;
  color: #12256b;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

.global_nav .dropdown_list li a:hover, .global_nav .dropdown_list li a.active, .global_nav .dropdown_list li a:focus {
  background: #12256b;
  color: #fff;
  opacity: 1;
}

.global_nav .dropdown_list li a:hover:before, .global_nav .dropdown_list li a.active:before, .global_nav .dropdown_list li a:focus:before {
  color: #fff;
  background: url(/common/img/ico-arrow_right.png) no-repeat left center;
}

.global_nav > li {
  display: table-cell;
  width: auto;
  cursor: pointer;
  text-align: center;
}

.global_nav > li.open {
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

.global_nav > li.open:after {
  content: '';
  position: absolute;
  bottom: 0;
  margin-bottom: -1px;
  z-index: 103;
  left: 50%;
  margin-left: -14px;
  background: url(/common/img/ico-arrow_drop.png) no-repeat top center;
  width: 28px;
  height: 14px;
}

.global_nav > li.current {
  border-bottom: 4px solid #bfbfbf;
  box-sizing: border-box;
}

.global_nav > li.current.open:after {
  margin-bottom: -5px;
}

.global_nav > li:not(:first-child) > a {
  border-left: 1px solid #dcdcdc;
}

.global_nav > li a {
  font-size: 100%;
  color: #12256b;
  font-weight: bold;
  display: block;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

.global_nav > li a:before {
  content: "";
  min-height: 15px;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  padding: 2px 0;
}

.global_nav > li.room > a:before {
  background: url(/common/img/ico-guest_room.png) no-repeat left center;
  width: 16px;
  height: 15px;
  padding-right: 26px;
}

.global_nav > li.breakfast > a:before {
  background: url(/common/img/ico-breakfast.png) no-repeat left center;
  width: 16px;
  height: 15px;
  padding-right: 21px;
}

.global_nav > li.restaurant > a:before {
  background: url(/common/img/ico-restaurant.png) no-repeat left center;
  width: 9px;
  height: 15px;
  padding-right: 14px;
}

.global_nav > li.services > a:before {
  background: url(/common/img/ico-facilities_services.png) no-repeat left center;
  width: 16px;
  height: 14px;
  padding-right: 21px;
}

.global_nav > li.parking > a:before {
  background: url(/common/img/ico-access_parking.png) no-repeat left center;
  width: 11px;
  height: 15px;
  padding-right: 16px;
}

.global_nav > li.meeting > a:before {
  background: url(/common/img/ico-meetings_conference.png) no-repeat left center;
  width: 10px;
  height: 15px;
  padding-right: 15px;
}
.global_nav > li.wedding > a:before {
  background: url(/common/img/ico-wedding.png) no-repeat left center;
  width: 13px;
  height: 14px;
  padding-right: 18px;
}
.global_nav > li.photogallery > a:before {
  background: url(/common/img/ico_photogallery.png) no-repeat left center;
  width: 10px;
  height: 15px;
  padding-right: 20px;
}
.global_nav > li.reservation {
  width: auto;
}

.global_nav > li.reservation button {
  background: #b9232a;
  border: 0;
  line-height: 1;
  font-size: 134%;
  color: #fff;
  width: 100%;
  padding: 20px 0;
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  cursor: pointer;
}

.global_nav > li.reservation button:before {
  content: "";
  background: url(/common/img/ico-check.png) no-repeat left bottom;
  width: 15px;
  height: 16px;
  padding-right: 22px;
  margin-top: -1px;
}

.global_nav > li.reservation button:hover {
  opacity: 0.7;
}

.global_nav > li.reservation.open {
  position: relative;
}

.global_nav > li.reservation.open button:after {
  content: '';
  margin-bottom: -1px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #fff;
}

.caption {
  text-align: center;
  background: #f1f0e9;
  padding: 15px;
  position: relative;
  border-bottom: 1px solid #eeeeee;
}

.caption .text_info, .caption .text_descripton {
  color: #000b36;
  font-size: 117%;
  line-height: 1.4em;
  overflow: hidden;
}

@media (max-width: 767px) {
  .caption .text_info, .caption .text_descripton {
    font-size: 125%;
  }
}

.caption .text_descripton {
  padding-top: 1.4em;
  display: none;
}

.caption .btn_scrolldown {
  cursor: pointer;
  border: 1px solid #eeeeee;
  margin-top: -1px;
  display: block;
  position: absolute;
  margin-left: -10px;
  width: 70px;
  height: 16px;
  background: #f1f0e9;
  bottom: 0;
  left: 50%;
  top: 100%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.caption .btn_scrolldown:after {
  content: '';
  background: url(/common/img/ico-scrolldown.png) no-repeat center;
  height: 9px;
  display: block;
  text-align: center;
}

.caption .btn_scrolldown.active {
  -webkit-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  -ms-transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
  transition: 170ms cubic-bezier(0.76, 0.005, 0.23, 0.9);
}

.caption .btn_scrolldown.active:after {
  -ms-transform: rotate(180deg);
  /* IE 9 */
  -webkit-transform: rotate(180deg);
  /* Chrome, Safari, Opera */
  transform: rotate(180deg);
}

@media (max-width: 767px) {
  .caption {
    padding: 10px;
    margin-bottom: 25px;
  }
}

/*----------------------------------------
    #contents
----------------------------------------*/
#contents #main_title {
  background: #fbfbfb;
  border-bottom: 1px solid #dcdcdc;
  margin-bottom: 50px;
  position: relative;
  padding-bottom: 23px;
}

#contents #main_title .inner {
  width: 980px;
  margin: 0 auto;
}

#contents #main_title .inner h1 {
  color: #000b36;
  font-size: 209%;
  font-weight: bold;
  padding: 47px 0 18px 0;
}

#contents #main_title .inner .message {
  max-height: 40px;
  overflow: hidden;
}

#contents #main_title .inner p {
  color: #000b36;
  line-height: 20px;
}

#contents #main_title .inner .message.opened {
  max-height: none;
}

#contents #main_title .btn_click {
  position: absolute;
  bottom: -16px;
  right: 50%;
  transform: translateX(50%);
  -webkit-transform: translateX(50%);
  -moz-transform: translateX(50%);
  -ms-transform: translateX(50%);
  -o-transform: translateX(50%);
  display: none;
}

#contents #main_title .btn_click .close,
#contents #main_title .btn_click.opened .open {
  display: none;
}

#contents #main_title .btn_click.opened .close {
  display: block;
}

#contents .inner, .inner {
  width: 980px;
  margin: 0 auto;
}
#contents .sp_message {
  display: none;
}

@media (max-width: 767px) {
  #contents #main_title {
    margin-bottom: 50px;
    padding-bottom: 23px;
  }
  #contents #main_title .inner {
    width: 100%;
    padding: 0 15px;
  }
  #contents #main_title .inner h1 {
    font-size: 159%;
    padding: 25px 0 5px 0;
  }
  #contents #main_title .inner p {
    font-size: 117%;
  }
    #contents .inner, .inner {
    width: 100%;
  }
  #contents .pc_message {
    display: none;
  }
  #contents .sp_message {
    display: block;
  }
}

/*  title_green
----------------------------------------*/
#contents .title_green {
  font-size: 167%;
  font-weight: bold;
  padding: 0 0 10px 20px;
  background: url(/common/img/bg-h3.gif) no-repeat left 1px;
}

@media (max-width: 767px) {
  #contents .title_green {
    font-size: 142%;
    background: url(/common/img/bg-h3.gif) no-repeat left top;
    padding-top: 1px !important;
  }
}

/*  related_info
----------------------------------------*/
#contents .line_section {
	padding-bottom: 60px;
}
#related_info .related_list {
  overflow: hidden;
  margin-top: 48px;
  text-align: center;
}
#related_info .related_list.related_special {
  margin-top: 0;
}
#related_info .related_list li {
  display: inline-block;
  width: 311px;
  border: 1px solid #bfbfbf;
  margin: 0 0 15px 16px;
  max-height: 60px;
  overflow: hidden;
}
#related_info .related_list li.special {
  max-height: 90px;
}
#related_info .related_list li:nth-child(3n+1) {
  margin-left: 0;
}
#related_info .related_item a {
  display: table;
  width: 100%;
  font-size: 100%;
  text-decoration: none;
  color: #2b4aba;
}
#related_info .related_item span {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
#related_info .related_item .logo_photo {
  width: 59px;
  vertical-align: top;
}
#related_info .related_item.special .logo_photo {
  width: 89px;
}
#related_info .related_item .logo_photo img {
  width: 100%;
  height: auto;
}
#related_info .related_item a:hover .logo_photo img {
  opacity: 1;
}
#related_info .related_item .related_txt {
  padding: 0 13px 0 20px;
}

@media (max-width: 767px) {
/*  related_info
----------------------------------------*/
#contents .line_section {
  padding-bottom: 40px;
}
#contents #related_info .title {
  margin-bottom: 26px;
}
#related_info .inner {
  padding: 0 15px;
}
#related_info .related_list {
  overflow: hidden;
  margin-top: 0;
}
#related_info .related_list li {
  display: block;
  float: none;
  width: 100%;
  border: 1px solid #bfbfbf;
  margin: 0 0 10px 0;
  max-height: 60px;
  overflow: hidden;
}
#related_info .related_item a {
  display: table;
  width: 100%;
  font-size: 100%;
  text-decoration: none;
  color: #2b4aba;
}
#related_info .related_item span {
  display: table-cell;
  vertical-align: middle;
}
#related_info .related_item .logo_photo {
  width: 59px;
  vertical-align: top;
}
#related_info .related_item .related_txt {
  padding: 0 13px 0 20px;
  font-size: 109%;
}
#contents #related_info .btn_related {
  width: 100%;
  margin: 0 auto;
  font-size: 125%;
  color: #ffffff;
  padding: 9px 0 10px 0;
  text-align: center;
  background: url(../img/top/ico-arow_button02.png) no-repeat 92% 50% #12256a;
  background-size: 14px 8px;
}
#contents #related_info .btn_related.current {
  display: none;
}
#contents #related_info .related_list.last {
  display: none;
}
#contents #related_info .related_list.last.current {
  display: block;
}	
}

/*  btn_view
----------------------------------------*/
.view_area{
	position: relative;
}

#contents .btn_view {
  width: auto;
  max-width: 260px;
  margin: 5px 0;
  background: #12256a;
}
#contents .btn_view a {
  color: #fff !important;
  font-size: 120%;
  padding: 10px 15% 10px 10%;
  text-decoration: none !important;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arow_button.png) no-repeat 94% 50%;
}

#contents .btn_view_shop {
  width: auto;
  max-width: 300px;
  margin: 10px auto 0;
  background: #12256a;
}
#contents .btn_view_shop a {
  color: #fff !important;
  font-size: 120%;
  padding: 15px 15% 15px 10%;
  text-decoration: none !important;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arow_button.png) no-repeat 94% 50%;
}

#contents .btn_view_bath {
  width: auto;
  max-width: 240px;
  margin: 5px 0;
  background: #12256a;
}
#contents .btn_view_bath a {
  color: #fff !important;
  font-size: 110%;
  padding: 5px 15% 5px 10%;
  text-decoration: none !important;
  display: block !important;
  text-align: center;
  margin: 0 !important;
  background: url(/common/img/ico-arow_button.png) no-repeat 94% 50%;
}

#contents .btn_view_lobby {
  width: auto;
  max-width: 95px;
  margin: 5px 0;
  background: #12256a;
  position: absolute;
  top: 128px;
  left: 5px;
}
#contents .btn_view_entrance {
  width: auto;
  max-width: 95px;
  margin: 5px 0;
  background: #12256a;
  top: 192px;
  left: 5px;
  position: absolute;
}
#contents .btn_view_lobby a,
#contents .btn_view_entrance a {
  color: #fff !important;
  font-size: 100%;
  padding: 10px 7px 10px 7px;
  text-decoration: none !important;
  display: block;
  text-align: center;
}

#contents .btn_view_lobby span,
#contents .btn_view_entrance span {
  display: none;
}

@media (max-width: 767px) {

#contents .btn_view a {
  font-size: 100%;
}
#contents .btn_view_shop {
  width: auto;
  max-width: 92%;
}
#contents .btn_view_shop a {
  font-size: 110%;
}
#contents .btn_view_bath {
    width: auto;
    max-width: 260px;
    margin: 5px 0;
    background: #12256a;
}
#contents .btn_view_bath a {
    color: #fff !important;
    font-size: 100%;
    padding: 3px 5px;
    text-decoration: none !important;
    display: block !important;
    text-align: center;
    margin: 0 !important;
    background: none;
}
#contents .btn_view_lobby {
	width: 100%;
	max-width: 100%;
	margin: 0 0 2%;
	background: #12256a;
	position: relative;
	top: 0;
	left: 0;
	float: left;
}
#contents .btn_view_entrance {
	width: 100%;
	max-width: 100%;
	margin: 0 0 5%;
	background: #12256a;
	position: relative;
	top: 0;
	left: 0;
	float: left;
}
#contents .btn_view_lobby a,
#contents .btn_view_entrance a {
  color: #fff !important;
  font-size: 110%;
  padding: 12px 13% 12px 5%;
  text-decoration: none !important;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arow_button.png) no-repeat 94% 50%;
}

#contents .btn_view_lobby span,
#contents .btn_view_entrance span {
  display: inline-block;
  margin: 0 5px 0 0;
}
}


/*  btn_catenate
----------------------------------------*/
#contents .btn_catenate {
  width: 330px;
  margin: 40px auto 0;
  background: #12256a;
}

#contents .btn_catenate a {
  color: #fff;
  font-size: 134%;
  padding: 19px 12%;
  text-decoration: none;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arow_button.png) no-repeat 94% 50%;
}

@media (max-width: 767px) {
  #contents .btn_catenate {
    width: 83.33%;
    margin: 20px auto 0;
  }
  #contents .btn_catenate a {
    font-size: 125%;
    padding: 9px 12% 10px 12%;
    background: url(/common/img/ico-arow_button_sp.png) no-repeat 94% 50%;
    background-size: 9px 14px;
  }
}

/*  tab_section
----------------------------------------*/
#contents .tab_section {
  width: 980px;
  margin: 0 auto;
}

#contents .tab_section .tab_menu {
  overflow: hidden;
}

#contents .tab_section .tab_menu li {
  width: 170px;
  float: left;
  margin-right: 7px;
  text-align: center;
  color: #2b4aba;
  font-size: 117%;
  background: #f2f2f2;
  padding: 16px 0;
}

#contents .tab_section .tab_menu li.current {
  color: #ffffff;
  background: #1e51a2;
}

#contents .tab_section .tab_menu li:hover {
  cursor: pointer;
}

#contents .tab_section .tab_menu li.current:hover {
  cursor: default;
}

#contents .tab_section .tab_content .tab_inner {
  display: none;
}

#contents .tab_section .tab_content .tab_inner.current {
  display: block;
}
@media (max-width: 767px) {
#contents .tab_section {
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}
#contents .tab_section .tab_menu li {
  width: 32%;
  margin: 0 2% 5px 0;
  font-size: 100%;
  padding: 10px 0;
  display: table;
  height: 58px;
}
#contents .tab_section .tab_menu li:nth-child(3n) {
  margin-right: 0;
}
#contents .tab_section .tab_menu li span {
  display: table-cell;
  padding: 0 5px;
  vertical-align: middle;
}
}

/*  recommend
----------------------------------------*/
#contents #recommend {
  background: #f2f2f2;
  padding: 50px 0;
}

#contents #recommend .inner {
  width: 980px;
  margin: 0 auto;
}

#contents #recommend .title_green {
  padding: 0 0 36px 20px;
}

#contents #recommend ul {
  overflow: hidden;
}

#contents #recommend li {
  width: 243px;
  float: left;
  background: #fff;
  border-top: 6px solid #b6b7b4;
}

#contents #recommend .col_photo {
  text-align: center;
}

#contents #recommend .col_photo img {
	width: 100%;
	height: auto;
}
#contents #recommend a:hover .col_photo img {
	opacity: 1;
}

#contents #recommend li a {
  text-decoration: none;
  color: #000b36;
  display: block;
}

#contents #recommend li a:after {
  content:"";display:block;clear:both;
}

#contents #recommend li + li {
  margin-left: 2px;
}

#contents #recommend .col_text {
  padding: 17px 15px 17px 15px;
}

#contents #recommend .standard_detail {
  margin-bottom: 15px;
}

#contents #recommend .time_price {
  border-top: 2px dotted #e3dcc1;
}

#contents #recommend .standard_detail .detail {
  font-size: 134%;
  text-decoration: underline;
  font-weight: bold;
  max-height: 72px;
  line-height: 24px;
  overflow: hidden;
}

#contents #recommend .time_price .time {
  padding-top: 15px;
}

#contents #recommend .standard_detail .notice {
  font-size: 100%;
  padding-top: 9px;
  max-height: 57px;
  line-height: 19px;
  overflow: hidden;
}

#contents #recommend .time_price .price {
  padding-top: 15px;
  text-align: right;
  margin-bottom: 25px;
}

#contents #recommend .time_price .price .people {
  font-size: 100%;
}

#contents #recommend .time_price .price_value {
  font-weight: bold;
  font-size: 134%;
}

#contents #recommend .time_price .tax {
  font-size: 100%;
}

@media (max-width: 767px) {
  #contents #recommend {
    margin-top: 0;
    min-width: auto;
        padding: 30px 0;
  }
  #contents #recommend .inner {
    width: 100%;
    padding: 0 15px;
  }
    #contents #recommend .title_green {
    padding: 1px 0 10px 20px;
  }
  #contents #recommend li {
    width: 100%;
    float: none;
    border-top: none;
    padding: 3.33%;
    border-bottom: 1px solid #f1f0e9;
    margin: 0;
  }
  #contents #recommend li:after {
    content: "";
    display: block;
    clear: both;
  }
  #contents #recommend li + li {
    margin: 0;
  }
  #contents #recommend .col_photo {
    text-align: left;
    width: 45%;
    border-top: 3px solid #b6b7b4;
    float: left;
  }
  #contents #recommend .col_photo img {
    width: 100%;
    height: auto;
  }
  #contents #recommend .col_text {
    float: right;
    padding: 0;
    width: 52%;
    padding-left: 3%;
  }
  #contents #recommend .standard_detail .detail {
    font-size: 109%;
  }
  #contents #recommend .standard_detail .notice,
  #contents #recommend .time_price .time {
    display: none;
  }
  #contents #recommend .standard_detail {
    padding: 0;
    margin: 0 0 10px 0;
    border: 0;
  }
  #contents #recommend .time_price {
    border-top: none;
  }
  #contents #recommend .time_price .price {
    padding-top: 15px;
    margin-bottom: 0;
  }
  #contents #recommend .time_price .price_value {
    font-size: 109%;
  }
  #contents #recommend .time_price .price .people,
  #contents #recommend .time_price .price .tax {
    font-size: 84%;
  }
  #contents #recommend .content_bottom {
    padding: 20px 0 0;
    min-height: auto;
  }
}

/*  topic_path
----------------------------------------*/
#topic_path {
  background: #f1f4f9;
  border-top: 1px solid #dcdcdc;
}

#topic_path .inner {
  width: 980px;
  margin: 0 auto;
}

#topic_path ol {
  max-height: 43px;
  overflow: hidden;
}

#topic_path ol li {
  display: inline-block;
}

#topic_path ol li a {
  color: #2b4aba;
  background: url(/common/img/ico-breadcrumb.png) no-repeat right center;
  text-decoration: underline;
  padding: 12px 30px 12px 0;
  display: block;
  margin-right: 19px;
}

@media (max-width: 767px) {
  #topic_path {
    display: none;
  }
}

/*  introduce
----------------------------------------*/
#contents #introduce {
    width: 980px;
    margin: 0 auto 50px;
    text-align: center;
    border-bottom: 1px solid #e2e2e2;
    padding-bottom: 50px;
}
#contents #introduce .main_img {
    margin-bottom: 30px;
}
#contents #introduce .main_img img {
    max-width: 488px;
    height: auto;
}
#contents #introduce p {
    font-weight: bold;
}
#contents #introduce  .btn_catenate {
    margin: 34px auto 0;
}

@media (max-width: 767px) {
  #contents #introduce {
    width: 100%;
    padding: 0 15px;
    margin: 0 auto 30px;
    text-align: left;
    border-bottom: none;
  }
    #contents #introduce .main_img {
      margin: 0 -15px 15px -15px;
  }
    #contents #introduce .main_img img {
        width: 100%;
        max-width: none;
    }
  #contents #introduce  .btn_catenate {
      margin: 15px auto 0;
  }
}

/*  room_list
----------------------------------------*/
#contents #room_list {
    background: #f2f2f2;
    padding: 48px 0 35px 0;
}
#contents #room_list .inner {
    width: 980px;
    margin: 0 auto;
}
#contents #room_list ul {
    width: 100%;
    padding-top: 27px;
}
#contents #room_list ul:after {
    content: "";
    display: block;
    clear: both;
}
#contents #room_list ul > li {
    width: 480px;
    display: table;
    margin-bottom: 20px;
    vertical-align: middle;
    background: #fff;
}
#contents #room_list ul > li:nth-child(2n+1) {
    clear: both;
    float: left;
}
#contents #room_list ul > li:nth-child(2n) {
    float: right;
}
#contents #room_list ul > li a {
    display: block;
}
#contents #room_list ul > li .photo {
    display: table-cell;
    width: 144px;
    overflow: hidden;
    padding: 4px 0 4px 4px;
}
#contents #room_list ul > li .photo img {
    width: 100%;
    max-width: 154px;
}
#contents #room_list ul > li a:hover .photo img {
	opacity: 1;
}
#contents #room_list ul > li .information {
    display: table-cell;
    vertical-align: middle;
    padding-left: 22px;
}
#contents #room_list ul > li .information p {
    color: #074fb1;
    font-size: 134%;
    padding-left: 17px;
  padding-right: 20px;
    font-weight: bold;
    background: url(/common/img/ico-arrow_button.png) no-repeat left 4px;
}

@media (max-width: 767px) {
  #contents #room_list {
      background: #f2f2f2;
      padding: 48px 0 35px 0;
  }
  #contents #room_list .inner {
      width: 100%;
    padding: 0 15px;
  }
  #contents #room_list ul > li {
    width: 100%;
    margin-bottom: 10px;
  }
  #contents #room_list ul > li:nth-child(2n+1),
  #contents #room_list ul > li:nth-child(2n) {
    float: none;
  }
  #contents #room_list ul > li .photo {
    width: 25%;
  }
  #contents #room_list ul > li .photo img {
    width: 100%;
        max-width: 197px;
  }
  #contents #room_list ul > li .information {
      display: table-cell;
      vertical-align: middle;
      padding-left: 22px;
  }
  #contents #room_list ul > li .information p {
      display: inline-block;
      font-size: 125%;
  }
}

/*  プラン一覧
----------------------------------------*/
#contents.detail .tab_section {
  width: 100%;
}
#contents.detail .tab_section .tab_list {
  width: 980px;
  margin: 0 auto;
  overflow: hidden;
}
#contents.detail .tab_section .tab_list:after {
	content: "";
	display: block;
	clear: both;
}
#contents.detail .tab_section .tab_list li {
  float: left;
  margin-right: 6px;
  text-align: center;
  color: #12256b;
  font-size: 117%;
  background: #f2f2f2;
  padding: 16px 10px;
	margin-bottom: 6px;
}
#contents.detail .tab_section .tab_list li:last-child {
  margin-right: 0;
}
#contents.detail .tab_section .tab_list li.current {
  color: #ffffff;
  background: #1e51a2;
}
#contents.detail .tab_section .tab_list li:hover {
  cursor: pointer;
}
#contents.detail .tab_section .tab_list li.current:hover {
  cursor: default;
}
#contents.detail .tab_section .tab_content .tab_inner {
  display: none;
}
#contents.detail .tab_section .tab_content .tab_inner.current {
  display: block;
}
#contents.detail #recommend {
	border-top: 1px solid #cccccc;
	padding: 50px 0 20px 0;
	margin-top: -6px;
}
#contents.detail #recommend .standard_detail .detail {
  max-height: none;
}
#contents.detail #recommend .tab_inner .inner ul li {
	margin-bottom: 30px;
}
/*----------------------------------------
    .room_message
----------------------------------------*/
#contents.detail .room_message {
  width: 980px;
  margin: 0 auto;
  padding: 52px 0 70px 0;
}
#contents.detail .room_message:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .room_guide {
  width: 465px;
  float: left;
}
#contents.detail .room_message .room_guide:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .room_point {
  width: 515px;
  float: left;
  padding-left: 50px;
}
#contents.detail .room_message .room_point:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .btn_catenate {
  width: 210px;
  margin: 12px auto 0 auto;
}
#contents.detail .room_message .btn_catenate a {
  padding: 15px 12% 14px 12%;
}

/*  .photo
----------------------------------------*/
#contents.detail .room_message .photo {
  width: 180px;
  float: left;
  padding-top: 4px;
}
#contents.detail .room_message .room_point .photo {
  padding-top: 2px;
}
#contents.detail .room_message .photo img {
  width: 100%;
  height: auto;
}
/*  .message
----------------------------------------*/
#contents.detail .room_message .message {
  width: 265px;
  float: right;
}
#contents.detail .room_message .message .text {
  font-size: 117%;
  line-height: 1.7;
}
#contents.detail .room_message .message dt {
  font-size: 134%;
  font-weight: bold;
  padding-left: 17px;
  padding-bottom: 6px;
  background: url(/common/stay/img/ico-title1.gif) no-repeat left 4px;
}

/*  プラン詳細
----------------------------------------*/
#contents.detail #main_title.mb0 {
  margin-bottom: 0;
}
#contents.detail .detail_message {
  background: #f2f2f2;
	padding: 48px 0 53px 0;
}
#contents.detail .detail_message .detail_inner {
	width: 980px;
	margin: 0 auto;
}
#contents.detail .detail_message h2 {
  font-size: 167%;
  font-weight: bold;
  padding: 0 0 0 20px;
  border-left: 8px solid #bed35f;
	margin-bottom: 45px;
}
#contents.detail .detail_message .detail_area {
	overflow: hidden;
}
#contents.detail .detail_message .detail_left {
	width: 480px;
	float: left;
}
#contents.detail .detail_message .detail_left ul.time {
	margin: 0 0 26px 0;
}
#contents.detail .detail_message .detail_left ul.time li {
	border-bottom: 1px solid #b6b7b4;
}
#contents.detail .detail_message .detail_left ul.time li:last-child {
	border-bottom: none;
}
#contents.detail .detail_message .detail_left ul.time dl {
	display: table;
	font-size: 117%;
	color: #000b36;
	width: 100%;
	background: #FFFFFF;
}
#contents.detail .detail_message .detail_left ul.time dt {
	background: #e6e6e6;	
	font-weight: bold;
	width: 90px;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 19px 0 18px 0;
}
#contents.detail .detail_message .detail_left ul.time dd {
	display: table-cell;
	vertical-align: middle;
	padding: 19px 20px 18px 30px;
}
#contents.detail .detail_message .detail_left h3 {
  background: url(/common/img/ico-list_style_small.png) no-repeat left 6px;
	background-size: 12px;
	padding-left: 20px;
	font-size: 150%;
	margin-bottom: 9px;
}
#contents.detail .detail_message .detail_left .txt {
	line-height: 1.3;
}
#contents.detail .detail_message .detail_left .txt span.tel {
	font-size: 134%;
	font-weight: bold;
}
#contents.detail .detail_message .detail_left .txt span.number {
	font-size: 200%;
	font-weight: bold;
}
#contents.detail .detail_message .detail_left .link {
	background: url(/common/img/ico-arrow_button.png) no-repeat left 3px;
	padding-left: 15px;
	margin-top: 13px;
}
#contents.detail .detail_message .detail_left .link a {
	font-size: 117%;
	color: #2b4aba;
}
#contents.detail .detail_message .detail_right {
	width: 480px;
	float: right;
}
#contents.detail .detail_message .detail_right h3 {
	font-size: 150%;
	background: #e3e6e8;
	padding: 14px 20px 12px 20px;
}
#contents.detail .detail_message .detail_right .area {
	background: #ffffff;
	padding: 26px 20px 28px 20px;
	margin-bottom: 20px;
}
#contents.detail .detail_message .detail_right .area.bg_non {
	background: none;
	padding: 10px 20px 0 20px;
}
#contents.detail .detail_message .detail_right .area h4 {
	font-size: 117%;
	margin-bottom: 3px;
}
#contents.detail .detail_message .detail_right .area p {
	line-height: 1.6;
}
#contents.detail .detail_message .detail_right .area p.txt {
	margin-bottom: 18px;
}
#contents.detail .detail_message .detail_right .area ol {
	list-style: none;
	margin-bottom: 18px;
}
#contents.detail .detail_message .detail_right .area ol li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.7;
}
#contents.detail .detail_message .detail_right .area ul.special {
	margin-bottom: 18px;
}
#contents.detail .detail_message .detail_right .area ul li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.7;
}
#contents.detail .detail_message .detail_right .area ul li a {
	color: #2b4aba;
	text-decoration: underline;
}
#contents.detail .detail_message .detail_right .btn_catenate {
	width: 100%;
  margin: 30px auto 0;
  background: #b9232a;
}
#contents.detail .btn_catenate.special {
	width: 210px;
  margin: 50px auto;
  background: #12256a;
}
#contents.detail .btn_catenate.special a {
	color: #fff;
  font-size: 134%;
  padding: 14px 12%;
  text-decoration: none;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arrow_left_button.png) no-repeat 6% 50%;
}
#contents.detail .pagination_list {
	padding-top: 10px;
}
#contents.detail .pagination_list li {
	width: 90px;
	float: left;
	margin-left: 7px;
	margin-bottom: 7px;
	position: relative;
	cursor: pointer;
}
#contents.detail .pagination_list li:hover {
	opacity: 0.7;
}
#contents.detail .pagination_list li img {
	position: relative;
	z-index: 1;
}
#contents.detail .pagination_list li.current:after {
	position: absolute;
	width: 100%;
	height: 100%;
	content: "";
	top: 0;
	left: 0;
	z-index: 10000;
	border: 2px solid #bed35f;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#contents.detail .pagination_list li:nth-child(5n+1) {
	margin-left: 0;
}
#contents.detail .swiper-container img {
	width: 100%;
	height: auto;
}
#contents.detail .detail_left .photo {
	margin-bottom: 25px;
}
#contents.detail .detail_left .photo img {
	width: 100%;
	height: auto;
}

@media (max-width: 767px) {

/*  プラン一覧
----------------------------------------*/
#contents.detail #main_title {
  margin-bottom: 30px;
}
#contents.detail .tab_section {
  width: 100%;
	margin: 0 auto;
  padding: 0 15px;
}
#contents.detail .tab_section .tab_list {
  width: 98%;
  margin: 0 auto 10px auto;
}
#contents.detail .tab_section .tab_list li {
  float: left;
  margin: 0;
  text-align: center;
  font-size: 117%;
  background: #f2f2f2;
  padding: 10px;
	border-bottom: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
}
#contents.detail .tab_section .tab_list li:last-child {
  margin: 0;
}
#contents.detail #recommend {
	margin: 0 -15px;
	padding: 25px 0 20px 0;
}
#contents.detail #recommend .tab_inner .inner ul li {
	margin-bottom: 25px;
}
#contents.detail #recommend li {
	padding: 0;
}
#contents.detail #recommend .col_photo {
	width: 100%;
	float: none;
}
#contents.detail #recommend .col_text {
	float: none;
	width: 100%;
	padding: 10px 10px 20px 10px;
}
#contents.detail #recommend .standard_detail .notice, 
#contents.detail #recommend .time_price .time {
  display: block;
}
#contents.detail #recommend .standard_detail .notice {
	padding-bottom: 10px;
}
#contents.detail #recommend .time_price {
  border-top: 2px dotted #e3dcc1;
}

/*----------------------------------------
    .room_message
----------------------------------------*/
#contents.detail .room_message {
  width: 100%;
  padding: 20px 15px 30px 15px;
}
#contents.detail .room_message:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .room_guide {
  width: 100%;
  float: none;
}
#contents.detail .room_message .room_guide:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .room_point {
  width: 100%;
  float: none;
  padding-left: 0;
  margin-top: 30px;
}
#contents.detail .room_message .room_point:after {
  content:"";display:block;clear:both;
}
#contents.detail .room_message .btn_catenate {
  clear: both;
  width: 83.33%;
  margin: 0 auto;
}
#contents.detail .room_message .btn_catenate a {
  padding: 9px 12% 10px 12%;
}
/*  .photo
----------------------------------------*/
#contents.detail .room_message .photo {
  width: 30%;
  float: left;
  padding-top: 4px;
  margin-bottom: 20px;
}
#contents.detail .room_message .room_point .photo {
  padding-top: 2px;
}
#contents.detail .room_message .photo img {
  width: 100%;
  height: auto;
}
/*  .message
----------------------------------------*/
#contents.detail .room_message .message {
  width: 65%;
  float: right;
  padding-bottom: 20px;
}
#contents.detail .room_message .message .text {
  font-size: 109%/*13px*/;
  line-height: 1.7;
}
#contents.detail .room_message .message dt {
  font-size: 125%/*15px*/;
  font-weight: bold;
  padding-left: 17px;
  padding-bottom: 5px;
  background: url(/common/stay/img/ico-title1.png) no-repeat left 4px;
  background-size: 12px 12px;
}

/*  プラン詳細
----------------------------------------*/
#contents.detail .detail_message {
  background: #f2f2f2;
	padding: 30px 0;
}
#contents.detail .detail_message .detail_inner {
	width: 100%;
	padding: 0 15px;
}
#contents.detail .detail_message h2 {
  font-size: 142%;
  border-left: none;
	background: url(/common/img/bg-h3.gif) no-repeat left top;
	margin-bottom: 20px;
}
#contents.detail .detail_message .detail_left {
	width: 100%;
	float: none;
}
#contents.detail .detail_message .detail_left ul.time {
	margin: 0 0 25px 0;
}
#contents.detail .detail_message .detail_left ul.time dl {
	display: table;
	font-size: 100%;
	color: #000b36;
}
#contents.detail .detail_message .detail_left ul.time dt {
	background: #e6e6e6;	
	font-weight: bold;
	width: 90px;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 19px 0 18px 0;
}
#contents.detail .detail_message .detail_left ul.time dd {
	display: table-cell;
	vertical-align: middle;
	padding: 19px 20px 18px 30px;
}
#contents.detail .detail_message .detail_left h3 {
  background: url(/common/img/ico-title1.png) no-repeat left 4px;
  background-size: 12px 12px;
	padding-left: 17px;
	font-size: 125%;
	margin-bottom: 9px;
}
#contents.detail .detail_message .detail_left .txt span.tel {
	font-size: 109%;
	font-weight: bold;
}
#contents.detail .detail_message .detail_left .txt span.number {
	font-size: 142%;
	font-weight: bold;
}
#contents.detail .detail_message .detail_left .txt span.number a {
	color: #000b36;
}
#contents.detail .detail_message .detail_left .link {
	background: url(/common/img/ico-arrow_button.png) no-repeat left 3px;
	padding-left: 15px;
	margin-top: 13px;
}
#contents.detail .detail_message .detail_left .link a {
	font-size: 109%;
}
#contents.detail .detail_message .detail_right {
	width: 100%;
	float: none;
	margin-top: 30px;
}
#contents.detail .detail_message .detail_right h3 {
	font-size: 125%;
	background: #e3e6e8;
	padding: 14px 10px 12px 10px;
}
#contents.detail .detail_message .detail_right .area {
	background: #ffffff;
	padding: 20px 10px 20px 10px;
}
#contents.detail .detail_message .detail_right .area.bg_non {
	padding: 10px 10px 0 10px;
}
#contents.detail .detail_message .detail_right .area h4 {
	font-size: 125%;
	margin-bottom: 3px;
}
#contents.detail .detail_message .detail_right .area p {
	font-size: 109%;
}
#contents.detail .detail_message .detail_right .area p.txt {
	margin-bottom: 18px;
}
#contents.detail .detail_message .detail_right .area ol {
	list-style: none;
	margin-bottom: 18px;
}
#contents.detail .detail_message .detail_right .area ol li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.7;
}
#contents.detail .detail_message .detail_right .area ul li {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.7;
}
#contents.detail .detail_message .detail_right .area ul li a {
	color: #2b4aba;
	text-decoration: underline;
}
#contents.detail .detail_message .detail_right .btn_catenate {
	width: 280px;
  margin: 30px auto 0;
  background: #b9232a;
}
#contents.detail .btn_catenate.special {
	width: 280px;
  margin: 30px auto 40px auto;
  background: #12256a;
}
#contents.detail .btn_catenate.special a {
	color: #fff;
  font-size: 125%;
  padding: 9px 12% 10px 12%;
  text-decoration: none;
  display: block;
  text-align: center;
  background: url(/common/img/ico-arrow_left_button.png) no-repeat 6% 50%;
  background-size: 9px 14px;
}
#contents.detail .pagination_list li {
	width: 19%;
	float: left;
	margin-left: 1.25%;
	position: relative;
}
#contents.detail .pagination_list li img {
	position: relative;
	z-index: 1;
}
#contents.detail .pagination_list li.current:after {
	position: absolute;
	width: 100%;
	height: 100%;
	content: "";
	top: 0;
	left: 0;
	z-index: 10000;
	border: 2px solid #bed35f;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#contents.detail .pagination_list li:nth-child(5n+1) {
	margin-left: 0;
}
#contents.detail .swiper-container img {
	width: 100%;
	height: auto;
}
#contents.detail .detail_left .photo img {
	width: 100%;
	height: auto;
}

	

}


/*  Footer
----------------------------------------*/
#footer {
  padding: 0;
}

#footer .motionlogo {
  text-align: center;
  padding-top: 70px;
}

#footer .motionlogo .pc_motion {
  width: 100%;
  border: none;
  height: 180px;
}

@media (max-width: 767px) {
  #footer .motionlogo {
    margin-left: -15px;
    margin-right: -15px;
    padding-top: 20px;
  }
  #footer .motionlogo img {
    width: 100%;
    height: auto;
  }
}

#footer .bottom_nav {
  padding: 25px 70px 0;
  width: 100%;
}

#footer .bottom_nav:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  #footer .bottom_nav {
    display: block;
    text-align: center;
    padding: 15px 0 0;
    width: 70%;
    margin: 0 auto;
  }
  #footer .bottom_nav:after {
    display: block;
    content: '';
    clear: both;
  }
  #footer .bottom_nav li {
    padding: 5px;
    display: block;
    margin: 0 auto;
    width: 50%;
    float: left;
  }
  #footer .bottom_nav li:first-child, #footer .bottom_nav li:nth-child(2), #footer .bottom_nav li:nth-child(5) {
    width: 100%;
  }
}

#footer .bottom_nav li {
  display: inline-block;
  text-align: center;
  padding-right: 20px;
}

#footer .bottom_nav li a {
  font-size: 100%;
  color: #2b4aba;
  text-decoration: underline;
}

@media (max-width: 767px) {
  #footer .bottom_nav li a {
    font-size: 92%;
  }
}

#footer .social {
  margin: 40px auto;
  display: table;
}

#footer .social:after {
  display: block;
  content: '';
  clear: both;
}

@media (max-width: 767px) {
  #footer .social {
    margin: 20px auto;
  }
}

#footer .social li {
  display: table-cell;
  vertical-align: middle;
  padding: 0 20px;
}

#footer #copyright {
  position: relative;
  line-height: 30px;
  height: 30px;
  background: #212325;
  text-align: center;
}

#footer #copyright img {
  top: 50%;
  /*-webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);*/
  float: none;
	vertical-align: middle;
	line-height: 0;
}

#tab_info.tab_info_top {
  display: none;
  background: #fff;
  width: 100%;
  position: absolute;
  z-index: 99;
  padding: 25px 0 110px;
  margin-top: 0;
  border-top: 1px solid #bfbfbf;
  border-bottom: none;
	-moz-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.1);
}

#tab_info.tab_info_top .txt_image {
  line-height: 0;
}
/*  tab change
----------------------------------------*/
.tabs_item {
  min-height: 170px;
  margin-top: 15px;
}
.tabs_item ul {
  position: relative;
}
.tabs_item li {
  float: left;
  z-index: 5;
}
.tabs_item li + li {
  margin-left: 2px;
}
.tabs_item li span.text {
  display: none;
}
.tabs_item li.active .tab_click {
  position: relative;
  z-index: 3;
}
.tabs_item li.active .section_content {
  display: block;
}
.tabs_item li .section_content {
  display: none;
}
.tabs_item li.tab .section_content {
  position: absolute;
  width: 100%;
  left: 0;
}
.tabs_item li.handy a {
  display: block;
  background: url(/common/img/top/txt-tab_handy.png) no-repeat 0 0;
  width: 166px;
  height: 42px;
  margin-top: 10px;
}
.tabs_item li.booking a {
  display: block;
  background: url(/common/img/top/txt-tab_booking.png) no-repeat 0 0;
  width: 231px;
  height: 42px;
  margin-top: 10px;
}

.booking_info {
  text-align: center;
  color: #fff;
}
.booking_info .booking_list {
  display: inline-block;
}

.booking_info .booking_item {
  float: left;
  margin: 0 12px;
}

.booking_info .booking_item dl {
  display: table;
}

.booking_info .booking_item dt {
  display: table-cell;
  vertical-align: middle;
  font-weight: bold;
  padding-right: 10px;
  font-size: 117%;
}

.booking_info .booking_item dd {
  display: table-cell;
}
.booking_info .booking_item dd.date_year {
  display: inline-table;
}
.booking_info .booking_item .select_year,
.booking_info .booking_item .select_date {
  display: inline-block;
}
.booking_info .booking_item .select_date ,
.booking_info .booking_item dd + dd {
  padding-left: 2px;
}

.booking_info .booking_item dd.calendar {
  padding-left: 0;
}

.booking_info .booking_item dd.btn_search {
  padding-left: 24px;
}
.booking_info .booking_item .select {
  background: #fff;
}
.booking_info .booking_item select {
  height: 34px;
  padding: 0 35px 0 10px;
  border: 0;
  font-size: 117%;
  color: #000b36;
  position: relative;
}

.booking_info .booking_item select:after {
  position: absolute;
  right: 10;
  background: #fff url(/common/img/top/ico-arow_down.png) no-repeat right center;
  width: 14px;
  height: 9px;
}

.booking_info .booking_item .count_room {
  font-size: 117%;
  padding-left: 6px;
  vertical-align: middle;
}

.booking_info .booking_item .calendar {
  width: 34px;
  height: 34px;
  vertical-align: middle;
}

.booking_info .booking_item .calendar img {
  display: none;
}
.booking_info .booking_item .search {
  width: 160px;
  background: #9b735b;
  text-align: center;
  border: 1px solid #ffffff;
}

.booking_info .booking_item .search a {
  display: block;
  height: 32px;
  line-height: 32px;
  text-decoration: none;
  color: #fff;
  position: relative;
  font-size: 117%;
}

.booking_info .booking_item .search a:after {
  content: "";
  background: url(/common/img/top/ico-arow_right.png) no-repeat right center;
  width: 6px;
  height: 10px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -5px;
}

.booking_info select {
  font-smooth: always;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-kerning: normal;
  font-kerning: normal;
  text-rendering: optimizeLegibility;
  background: transparent;
  -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.booking_info .select {
  vertical-align: middle;
  position: relative;
  display: inline-block;
  background: #fff;
  overflow: -moz-hidden-unscrollable;
}

.booking_info .select:after {
  content: "";
  position: absolute;
  background: #fff url(/common/img/top/ico-arow_down.png) no-repeat 0 0;
  top: 50%;
  right: 10px;
  width: 14px;
  height: 9px;
  margin-top: -4px;
}

.select select {
  position: relative;
  z-index: 1;
  display: block;
  border: 0;
  border-radius: 0;
  background: none;
}
.btn_calender {
  padding: 0;
  margin: 0;
  position: relative;
}
 .ui-datepicker-trigger {
   overflow: hidden;
   text-indent: -99999px;
   color: #fff;
   width: 34px;
   height: 34px;
   float: none;
   padding: 0;
 }
.public_input .ui-datepicker-trigger {
  border: 1px solid #fff;
  background: #12256b url(/common/img/top/ico-calendar.png) center center no-repeat        !important;
}
.member_input .ui-datepicker-trigger {
  border: 1px solid #fff;
  background: #23a9a8 url(/common/img/top/ico-calendar.png) center center no-repeat        !important;
}
div#ui-datepicker-div {
  margin: 34px 0 0 0;
  position: absolute;
  top: 0;
  z-index: 99 !important;
  display: none;
}

.select select {
  position: relative;
  z-index: 1;
  display: block;
  border: 0;
  border-radius: 0;
  background: none;
}

/*  tab_bottom
----------------------------------------*/
.tab_info .tab_bottom {
  background: #f1f0e9;
  text-align: center;
  padding: 8px 0;
}

.tab_info .tab_bottom .txt_image {
  background: url(/common/img/top/txt-tab_two_bottom.png) no-repeat 0 0;
  width: 260px;
  height: 13px;
}

.tab_info .tab_bottom .txt_image img {
  display: none;
}

.tab_info .tab_bottom ul {
  overflow: hidden;
  display: inline-block;
}

.tab_info .tab_bottom li {
  float: left;
  margin: 0 13px;
  font-size: 117%;
}

.tab_info .tab_bottom li span {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.tab_info .tab_bottom li a {
  text-decoration: none;
  color: #2b4aba;
  padding-left: 15px;
  background: url(/common/img/top/ico-arrow_left.png) no-repeat left center;
}


/*  tab_bottom
----------------------------------------*/
.tabs_item .tab_content {
  border-top: 1px solid #7e8eaf;
  margin-top: -1px;
  position: relative;
  z-index: 2;
  padding: 24px 0;
}
.public_input .tab_content {
  background: #12256b;
}
.member_input .tab_content {
  background: #23a9a8;
}
/*  tab_bottom
----------------------------------------*/
.tabs_item .tab_bottom {
	background: #f1f0e9;
	text-align: left;
	padding: 8px 0 4px 0;
	min-height: 41px;
}
.tabs_item .tab_bottom .sp_message {
	display: none;
}
.tabs_item .public .tab_bottom {
	padding: 0;
}
.member_input .tab_bottom {
  text-align: right;
  padding-right: 26px;
}
.tabs_item .tab_bottom .txt_image {
  background: url(/common/img/top/txt-tab_two_bottom.png) no-repeat 0 0;
	width: 284px;
	height: 14px;
	margin-top: 6px;
}
.tabs_item .tab_bottom li.login {
  margin: 0;
  width: 110px;
}
.tabs_item .tab_bottom li.login a {
  background: none;
  color: #fff;
  font-size: 92%;
  padding: 3px 0;
  background: #b9232a;
  text-align: center;
  display: block;
  position: relative;
}
.tabs_item .tab_bottom li.login a:after {
  content: "";
  background: url(/common/img/top/ico-arow_right.png) no-repeat right center;
  width: 6px;
  height: 10px;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -5px;
}
.tabs_item .tab_bottom:after {
	content:"";display:block;clear:both;
}
.member_input .tab_bottom .txt_image {
	margin-top: 6px;
	background: url(/common/img/top/txt-tab_two_bottom.png) no-repeat 0 0;
	width: 284px;
	height: 14px;
}

.tabs_item .tab_bottom .txt_image img {
  display: none;
}

.tabs_item .tab_bottom .waon_area {
	float: right;
	width: 490px;
	position: relative;
}

.tabs_item .tab_bottom ul {
	margin-top: 17px;
	border-left: 1px solid #bfbfbf;
	padding: 0 0 0 20px;
}

.tabs_item .tab_bottom li {
	margin: 0 13px;
	font-size: 117%;
}

.tabs_item .tab_bottom li span {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.tabs_item .tab_bottom li:first-child {
	margin-bottom: 8px;
}
.tabs_item .tab_bottom .waon_area .note {
	position: absolute;
	right: 30px;
	top: 17px;
	border-radius: 3px;
	background-color: #fff;
	padding: 9px;
	color: #12256b;
	font-size: 84%;
	font-weight: bold;
}
.tabs_item .tab_bottom .waon_area .note span {
	position: relative;
}
.tabs_item .tab_bottom .waon_area .note span:after {
	content: "";
	width: 7px;
	height: 8px;
	background: url(/common/img/top/bg-waon_area.png) no-repeat left top;
	position: absolute;
	top: 50%;
	margin-top: -4px;
	left: -16px;
}
.tabs_item .tab_bottom li span {
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
}
.tabs_item .tab_bottom li a {
  text-decoration: none;
  color: #2b4aba;
  padding-left: 15px;
  background: url(/common/img/top/ico-arrow_left.png) no-repeat left center;
}
.tabs_item .tab_bottom .app_area {
	width: 490px;
	float: left;
}

.tabs_item .tab_bottom .app_area a {
	display: block;
	background: url(/common/img/top/bg-app_arrow.png) no-repeat 97% center #f9f5ec;
	padding: 10px 0 0 30px;
}

.tabs_item .tab_bottom .app_area a:after {
	content:"";display:block;clear:both;
}

.tabs_item .tab_bottom .app_area a .icon {
	float: left;
	display: block;
}

.tabs_item .tab_bottom .app_area a .text {
	float: left;
	padding: 17px 0 0 12px;
	color: #f27b02;
	display: block;
	font-size: 109%;
	font-weight: bold;
}

.tabs_item .tab_bottom .app_area a .text span.big_txt {
	font-size: 142%;
	display: block;
}

.tabs_item .tab_bottom.special {
	text-align: right;
}
.tabs_item .tab_bottom.special ul {
	margin-top: 0;
	border-left: none;
}
.select_area01 {
  width: 126px;
  overflow: hidden;
}
.select_area02 {
  width: 76px;
  overflow: hidden;
}
.select_area03 {
  width: 68px;
  overflow: hidden;
}
.select_area01 select {
  width: 200px;
}
.select_area02 select {
  width: 140px;
}
.select_area03 select {
  width: 140px;
}

@media (max-width: 767px) {
.select_area01 {
  width: auto;
  overflow: hidden;
}
.select_area02 {
  width: auto;
  overflow: hidden;
}
.select_area03 {
  width: auto;
  overflow: hidden;
}
.select_area01 select {
  width: 100%;
}
.select_area02 select {
  width: 100%;
}
.select_area03 select {
  width: 100%;
}
}



/*  sitemap
----------------------------------------*/
#sitemap {
  margin-top: 0;
  background: #041144;
  padding: 70px 0 80px;
}
#sitemap.special {
  margin-top: 60px;
}
#sitemap .inner {
  width: 980px;
  margin: 0 auto;
}
#sitemap .box_whg {
  overflow: hidden;
}

#sitemap .box_whg .sitemap_list {
  overflow: hidden;
}

#sitemap .box_whg .sitemap_list .item {
  float: left;
}

#sitemap .box_whg .sitemap_list .item.col_one {
  width: 430px;
}

#sitemap .box_whg .sitemap_list .item.col_two {
  width: 490px;
  margin: 0 0 56px 60px;
}

#sitemap .box_whg .sitemap_list .item.col_three {
  width: 490px;
  margin: 0 0 13px 60px;
}

#sitemap .box_whg .sitemap_list .item.modal {
  width: 490px;
  margin-left: 60px;
}

#sitemap .box_whg .sitemap_list .modal_area {
  color: #fff;
  text-decoration: underline;
}

#sitemap .box_whg .item a {
  color: #fff;
}

#sitemap .box_whg .item dt {
  color: #fff;
  font-size: 150%;
  font-weight: bold;
  position: relative;
  margin-bottom: 15px;
  overflow: hidden;
}

#sitemap .box_whg .item dt span {
  background: #041144;
  padding-right: 14px;
  position: relative;
  z-index: 1;
  display: inline-block;
}

#sitemap .box_whg .item dt:after {
  background: #484b5a;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  top: 50%;
  width: 100%;
}

#sitemap .box_whg .item .txt_waon span {
  padding-right: 85px;
  background: #041144 url(/common/img/txt-waon.png) no-repeat 96% 50%;
  background-size: 69px 15px;
}

#sitemap .box_whg .item .txt_whg span {
  padding-left: 55px;
  background: #041144 url(/common/img/txt-whg.png) no-repeat 0 0;
  background-size: 45px 20px;
}

#sitemap .box_whg .modal_area a {
  font-size: 117%;
  text-decoration: underline;
  color: #fff;
}

#sitemap .box_whg .modal_area span {
  padding-left: 30px;
  background: url(/common/img/ico-modal.png) no-repeat left center;
}

#sitemap .sub_site li + li {
  margin-top: 8px;
}

#sitemap .sub_site li a {
  font-size: 100%;
  color: #fff;
}

#sitemap .box_hotels {
  margin-top: 48px;
  color: #fff;
}

#sitemap .box_hotels .hotels_list {
  font-size: 150%;
  font-weight: bold;
  position: relative;
  margin-bottom: 15px;
}

#sitemap .box_hotels .hotels_list span {
  background: #041144;
  padding-right: 14px;
  position: relative;
  z-index: 1;
  display: inline-block;
}

#sitemap .box_hotels .hotels_list:after {
  background: #484b5a;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  top: 50%;
  width: 100%;
}

#sitemap .box_hotels .sitemap_hotel dt {
  font-size: 117%;
  font-weight: bold;
  margin-bottom: 20px;
}

#sitemap .box_hotels .sitemap_hotel {
  position: relative;
  overflow: hidden;
}

#sitemap .box_hotels .sitemap_hotel .item {
  float: left;
  width: 270px;
  margin-left: 85px;
}

#sitemap .box_hotels .sitemap_hotel .item:nth-child(3n+1) {
  margin-left: 0;
}

#sitemap .box_hotels .sitemap_hotel .item dl + dl {
  margin-top: 57px;
}

/*  sitemap
----------------------------------------*/
.modal_window {
  width: 980px;
  margin: 0 auto;
  background: #ffffff;
  display: none;
}
.modal_window.tablet {
  width: 780px;
}

.modal_window .modal_content .modal_title {
  overflow: hidden;
  background: #fbfbfb;
  padding: 30px 50px;
  border-bottom: 1px solid #dcdcdc;
}

.modal_window .modal_content .title {
  display: inline-block;
  float: left;
  vertical-align: middle;
  font-size: 28px;
  color: #000;
}

.modal_window .modal_content .modal_list {
  padding: 50px;
}

.modal_window .modal_content .modal_list.map_link {
  padding: 37px 50px 10px 50px;
}
.modal_window.tablet .modal_content .modal_list.map_link {
  padding: 37px 20px 10px 20px;
}

.modal_window .modal_list .list_info {
  overflow: hidden;
}

.modal_window .modal_list .item {
  float: left;
  width: 408px;
  margin-bottom: 20px;
}

.modal_window.tablet .modal_list .item {
  width: 49%;
}

.modal_window .modal_list .item:nth-child(2n) {
  margin-left: 60px;
}

.modal_window.tablet .modal_list .item:nth-child(2n) {
  margin-left: 2%;
}

.modal_window .modal_list .hotel_address {
  display: table;
}

.modal_window .modal_list .photo {
  display: table-cell;
  vertical-align: top;
}

.modal_window .modal_list .details {
  display: table-cell;
  vertical-align: middle;
  padding-left: 29px;
}

.modal_window .modal_list .details .name {
  font-size: 134%;
  color: #2b4aba;
  padding-left: 20px;
  margin-bottom: 10px;
  background: url(/common/img/ico-arrow_left.png) no-repeat 0 6px;
}

.modal_window .modal_list .details .address {
  font-size: 100%;
}

.modal_content .guide_map {
  display: inline-block;
  vertical-align: middle;
  float: left;
}

.modal_content .guide_map .item {
  float: left;
  margin-left: 50px;
}

.modal_content .guide_map span {
  position: relative;
  padding-left: 12px;
  color: #000000;
  font-size: 100%;
}

.modal_content .guide_map span + span {
  margin-top: 5px;
}

.modal_content .guide_map .item span {
  display: block;
}

.modal_content .map_link .text_link {
  float: left;
  width: 260px;
}
.tablet .modal_content .map_link .text_link {
  float: left;
  width: 30%;
}

.modal_content .map_link .text_link + .text_link {
  margin-left: 50px;
}

.tablet .modal_content .map_link .text_link + .text_link {
  margin-left: 3%;
}
.modal_content .map_link dl {
  margin-bottom: 30px;
}

.modal_content .map_link dt {
  font-weight: bold;
  font-size: 117%;
  margin-bottom: 10px;
  color: #000;
}

.modal_content .map_link .sub_link li {
  padding-left: 10px;
  margin-bottom: 10px;
  display: inline-table;
  width: 100%;
}

.modal_content .map_link .sub_link li a {
  text-decoration: underline;
  font-size: 100%;
  color: #000;
  position: relative;
  display: inline-block;
}

.modal_content .map_link .sub_link li span {
  padding-left: 12px;
  display: block;
}

.modal_content .ico_pink:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 10px;
  background: #d88383;
  top: 0;
  left: 0;
  margin-top: 3px;
}

.modal_content .ico_blue:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 10px;
  background: #2b4aba;
  top: 0;
  left: 0;
  margin-top: 3px;
}

.modal_content .list_info .ico_blue,
.modal_content .list_info .ico_gray,
.modal_content .list_info .ico_green,
.modal_content .list_info .ico_pink {
  width: 90%;
}

.modal_content .ico_gray:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 10px;
  background: #ab8350;
  top: 0;
  left: 0;
  margin-top: 3px;
}

.modal_content .ico_green:after {
  content: "";
  position: absolute;
  width: 4px;
  height: 10px;
  background: #58c679;
  top: 0;
  left: 0;
  margin-top: 3px;
}

.modal_content .map_link .sub_link li a.pin_address {
  float: right;
}

/*  #hotel_group
----------------------------------------*/
#hotel_group.modal_window .modal_list .list_related {
  overflow: hidden;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: 20px;
	margin-bottom: 30px;
}
#hotel_group .modal_content .map_link .list_related dl {
  margin-bottom: 0;
}
#hotel_group .modal_content .map_link .text_link02 {
  float: left;
  width: 260px;
}
#hotel_group .modal_content .map_link .text_link02 + .text_link02 {
  margin-left: 50px;
}
#hotel_group .modal_content .map_link .text_link02 .sub_link li {
  padding-left: 0;
}
#hotel_group .modal_content .ico_link:after {
  content: "";
  position: absolute;
  width: 6px;
  height: 10px;
  background: url(/common/img/ico-modal_arrow.gif) no-repeat 0 0;
  top: 0;
  left: 0;
  margin-top: 3px;
}
#hotel_group.tablet .modal_content .map_link .text_link02 {
  float: left;
  width: 30%;
}
#hotel_group.tablet .modal_content .map_link .text_link02 + .text_link02 {
  margin-left: 3%;
}
#hotel_group .modal_content .map_link p.title_sub {
  font-weight: normal;
  font-size: 167%;
  margin-bottom: 25px;
  color: #000;
  clear: both;
}
#hotel_group .modal_content .map_link .text_link {
  float: left;
  width: 211px;
}
#hotel_group .modal_content .map_link .text_link + .text_link {
  margin-left: 10px;
}
#hotel_group .modal_content .map_link .sub_link li a {
	text-decoration: underline;
	font-size: 100%;
	color: #000;
	position: relative;
	display: inline-block;
}
#hotel_group .modal_content .map_link .sub_link li span.ico_blue {
	text-decoration: none;
	font-size: 100%;
	color: #000;
	position: relative;
	display: inline-block;
}
#hotel_group.tablet .modal_content .map_link .text_link {
  float: left;
  width: 24%;
}
#hotel_group.tablet .modal_content .map_link .text_link + .text_link {
  margin-left: 1%;
}

/*  #reset fancybox
----------------------------------------*/
.fancybox-opened .fancybox-skin {
  -webkit-box-shadow: 0 0 0 0;
  -moz-box-shadow: 0 0 0 0;
  box-shadow: 0 0 0 0;
}

.fancybox-skin {
  position: relative;
  background: none;
  color: #212f53;
  border-radius: 0;
}

.fancybox-overlay {
  background: url("/common/img/modal/bg-overlay.png");
}

.fancybox-close, .fancybox-prev span, .fancybox-next span {

  background: url("/common/img/modal/btn-close.png") no-repeat right center;
}

.fancybox-close {
  top: 45px;
  right: 50px;
  width: 32px;
  height: 32px;
}

@media (max-width: 767px) {
  /*  sitemap
  ----------------------------------------*/
  #sitemap {
    margin-top: 0;
    background: #fff;
    padding: 0;
    min-width: auto;
  }
    #sitemap.special {
        margin-top: 40px;
    }
    #sitemap .inner {
    width: 100%;
    padding: 0;
    }
  #sitemap .box_hotels {
    display: none;
  }
  #sitemap .box_whg .sitemap_list .item {
    float: none;
    width: 100%;
    border-bottom: 1px solid #fff;
  }
  #sitemap .box_whg .sitemap_list .item.col_one {
    width: 100%;
  }
  #sitemap .box_whg .sitemap_list .item.col_two,
  #sitemap .box_whg .sitemap_list .item.col_three,
  #sitemap .box_whg .sitemap_list .item.modal {
    width: 100%;
    margin: 0;
  }
  #sitemap .box_whg .sitemap_list .modal_area {
    color: #2b4aba;
    font-size: 125%;
  }
  #sitemap .sub_site li + li {
    margin: 0;
  }
  #sitemap .box_whg .item a,
  #sitemap .sub_site li a {
    color: #2b4aba;
    font-size: 109%;
  }
  #sitemap .box_whg .item dt {
    background: #12246b;
    font-size: 125%;
    margin: 0;
    display: block;
  }
  #sitemap .box_whg .item dt {
    background: #12246b url(/common/img/ico-close.png) no-repeat 95% 50%;
    background-size: 15px 15px;
  }
  #sitemap .box_whg .item dt.active {
    background: #12246b url(/common/img/ico-open.png) no-repeat 95% 50%;
    background-size: 15px 15px;
  }
  #sitemap .box_whg .item .txt_waon {
    font-size: 100%;
  }
  #sitemap .box_whg .item .txt_waon span {
    padding-right: 65px;
    background: #12246b url(/common/img/txt-waon.png) no-repeat 96% 50%;
    background-size: 52px 11px;
  }
  #sitemap .box_whg .item .txt_whg span {
    padding-left: 55px;
    background: #12246b url(/common/img/txt-whg.png) no-repeat 15px 43%;
    background-size: 34px 15px;
  }
  #sitemap .box_whg .item dt:after {
    display: none;
  }
  #sitemap .box_whg .item dt span {
    background: #12246b;
    padding: 12px 15px;
  }
  #sitemap .box_whg .item dd {
    display: none;
  }
  #sitemap .sub_site {
    overflow: hidden;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
        border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
  }
  #sitemap .box_whg .item + .item {
    margin: 0;
  }
  #sitemap .sub_site li {
    float: left;
    width: 50%;
    border-bottom: 1px solid #eee;
    border-right: 1px solid #eee;
    margin: 0;
    padding: 15px 4% 15px 6.4%;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    flex-direction: column;
    -webkit-flex-direction: column;
    box-sizing: border-box;
    align-items: stretch;
  }
    #sitemap .sub_site li.special_line {
    border-bottom: none;
  }
  #sitemap .sub_site li:nth-child(2n) {
    border-right: 0;
  }
  #sitemap .sub_site li a {
    display: block;
    padding-left: 15px;
    background: url(/common/img/ico-arrow_left.png) no-repeat left center;
    display: flex;
    width: 100%;
    flex: 1;
    align-items: center;
  }
  #sitemap .box_whg .sitemap_list .item.modal {
    text-align: center;
    padding: 30px 0 25px;
  }
  #sitemap .box_whg .modal_area a {
    color: #2b4aba;
    font-size: 100%;
  }
  #sitemap .box_whg .modal_area span {
    padding-left: 25px;
    background: url(/common/img/ico-modal_sp.png) no-repeat left center;
    background-size: 18px 15px;
  }
  /*  sitemap
  ----------------------------------------*/
  .modal_window {
    width: 100%;
  }
  .modal_window .modal_content .modal_title {
    padding: 20px 20px 10px;
    padding: 20px 20px 10px;
    position: fixed;
    width: 100%;
    opacity: 1;
    z-index: 1;
  }
  .modal_window .modal_content .title {
    font-size: 18px;
    padding-bottom: 10px;
    width: 100%;
    display: block;
  }
  .modal_window .modal_content .modal_list {
    padding: 80px 15px 0;
    overflow: auto;
    height: 100%;
  }
  .modal_window .modal_content .modal_list.map_link {
    padding: 115px 10px 10px;
  }
  .modal_window .modal_list .list_info {
    overflow: hidden;
  }
  .modal_window .modal_list .item {
    float: none;
    width: 100%;
    margin-bottom: 20px;
  }
  .modal_window .modal_list .item:nth-child(2n) {
    margin-left: 0;
  }
  .modal_window .modal_list .hotel_address {
    display: table;
  }
  .modal_window .modal_list .photo {
    display: table-cell;
    vertical-align: top;
  }
  .modal_window .modal_list .details {
    padding-left: 15px;
  }
  .modal_window .modal_list .details .name {
    font-size: 100%;
    color: #2b4aba;
    padding-left: 20px;
    margin-bottom: 10px;
    background: url(/common/img/ico-arrow_left.png) no-repeat 0 4px;
  }
  .modal_window .modal_list .details .address {
    font-size: 100%;
  }
  .modal_content .guide_map {
    display: inline-block;
    vertical-align: middle;
    float: left;
  }
  .modal_content .guide_map .item {
    float: left;
    margin-left: 0;
  }
  .modal_content .guide_map .item:nth-child(2) {
    margin-left: 30px;
  }
  .modal_content .guide_map span {
    position: relative;
    padding-left: 8px;
    font-size: 100%;
  }
  .modal_content .guide_map span + span {
    margin-top: 5px;
  }
  .modal_content .guide_map .item span {
    display: block;
  }
  .modal_content .map_link .text_link {
    float: left;
    width: 100%;
  }
  .modal_content .map_link .text_link + .text_link {
    margin-left: 0;
  }
  .modal_content .map_link dl {
    margin-bottom: 20px;
  }
  .modal_content .map_link dt {
    font-size: 100%;
    margin-bottom: 5px;
  }
  .modal_content .map_link .sub_link li {
    width: 100%;
  }
  .modal_content .map_link .sub_link li a {
    text-decoration: none;
    font-size: 100%;
  }
  .modal_content .map_link .sub_link li span {
    padding-left: 12px;
    display: block;
  }
  .modal_content .map_link .sub_link li a.pin_address {
    float: right;
  }
	
	/*  #hotel_group
----------------------------------------*/
#hotel_group.modal_window .modal_list .list_related {
  overflow: hidden;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: 5px;
	margin-bottom: 20px;
}
#hotel_group .modal_content .map_link .text_link02 {
  float: left;
  width: 100%;
}
#hotel_group .modal_content .map_link .text_link02 + .text_link02 {
  margin-left: 0;
}
#hotel_group .modal_content .map_link .text_link02 .sub_link li {
  padding-left: 10px;
}
#hotel_group .modal_content .ico_link:after {
  content: "";
  position: absolute;
  width: 6px;
  height: 10px;
  background: url(/common/img/ico-modal_arrow.gif) no-repeat 0 0;
  top: 0;
  left: 0;
  margin-top: 2px;
}
#hotel_group .modal_content .map_link p.title_sub {
  font-weight: normal;
  font-size: 150%;
	padding-left: 10px;
  margin-bottom: 10px;
  color: #000;
  clear: both;
}
#hotel_group .modal_content .map_link .text_link {
  float: left;
  width: 100%;
}
#hotel_group .modal_content .map_link .text_link + .text_link {
  margin-left: 0;
}
#hotel_group .modal_content .map_link .sub_link li a {
	text-decoration: none;
	font-size: 100%;
	font-weight: normal;
	color: #000;
	position: relative;
	display: inline-block;
}
#hotel_group .modal_content .map_link .sub_link li span.ico_blue {
	text-decoration: none;
	font-size: 100%;
	font-weight: normal;
	color: #000;
	position: relative;
	display: inline-block;
}
#hotel_group .modal_content .map_link dt {
	font-size: 117%;
	padding-left: 10px;
	margin-bottom: 5px;
}
#hotel_group .modal_content .map_link dl,
#hotel_group .modal_content .map_link .list_related dl {
  margin-bottom: 10px;
}

  /*  #reset fancybox
  ----------------------------------------*/
  .fancybox-overlay-fixed {
    z-index: 10001;
  }
  .fancybox-wrap {
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
    position: fixed !important;
    z-index: 10002 !important;
  }
  .fancybox-skin {
    padding: 0 !important;
  }
  .fancybox-inner {
    width: 100% !important;
  }
  .fancybox-close, .fancybox-prev span, .fancybox-next span {
    background-image: url("/common/img/modal/btn-close.png") right center;
    background-size: 70%;
  }
  .fancybox-close {
    top: 15px;
    right: 20px;
    background-size: 70%;
    z-index: 2;
  }
}

/*  .room_table_message
----------------------------------------*/
#contents .room_table_message {
  width: 980px;
  margin: 0 auto 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid #e2e2e2;
  position: relative;
}
#contents .room_table_message.last {
  padding-bottom: 0;
  border-bottom: none;
  margin-bottom: 65px;
}
#contents .room_table_message .big {
  font-size: 125%;
}
#contents .room_table_message .title_style .title_green {
  width: 60%;
}
#contents .room_table_message .note {
  width: 40%;
  font-size: 117%;
  text-align: right;
  position: absolute;
  top: 4px;
  right: 0;
}
#contents .room_table_message table {
  font-size: 117%;
  width: 980px;
  margin-top: 25px;
}
#contents .room_table_message table tr {
  background-color: #f8f8f8;
}
#contents .room_table_message table tr:nth-child(2n) {
  background-color: #ffffff;
}
#contents .room_table_message table tr td {
  width: 33.3%;
  padding: 18px 40px 12px;
  box-sizing: border-box;
  border-bottom: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
}
#contents .room_table_message table tr td:last-child {
  border-right: none;
}
#contents .room_table_message table tr:last-child td {
  border-bottom: none;
}
#contents .room_table_message table .txt_main {
  display: table;
  width: 100%;
}
#contents .room_table_message table .txt_main p.main {
  width: 90%;
  display: table-cell;
  vertical-align: middle;
}
#contents .room_table_message table .txt_main p.main small {
  font-size: 84%;
  display: block;
}
#contents .room_table_message table .txt_main p.symbol {
  width: 7%;
  display: table-cell;
  vertical-align: middle;
}
#contents .room_table_message dl {
  margin-top: 30px;
}
#contents .room_table_message dl dt {
  font-size: 134%;
  font-weight: bold;
  padding-left: 15px;
  padding-bottom: 13px;
  background: url(/common/stay/img/ico-title1.gif) no-repeat left 4px;
}
#contents .room_table_message dl dd {
  line-height: 1.7;
}
@media (max-width: 767px) {
  /*  .room_table_message
  ----------------------------------------*/
  #contents .room_table_message {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    border-bottom: 2px solid #ffffff;
  }
  #contents .room_table_message.last {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 40px;
  }
  #contents .room_table_message .big {
    font-size: 109%;
  }
  #contents .room_table_message .title_style .title_green {
    float: none;
    width: 100%;
    padding: 10px 0 10px 35px !important;
    background: url(/common/img/bg-h3.gif) no-repeat 15px center #f2f2f2;
    position: relative;
  }
  #contents .room_table_message .title_style .title_green:after {
    position: absolute;
    content: "";
    width: 15px;
    height: 15px;
    background: url(/common/stay/room/img/bg-open.gif) no-repeat center;
    background-size: 100%;
    top: 15px;
    right: 20px;
  }
  #contents .room_table_message .title_style.current .title_green:after {
    position: absolute;
    content: "";
    width: 15px;
    height: 15px;
    background: url(/common/stay/room/img/bg-close.gif) no-repeat center;
    background-size: 100%;
    top: 15px;
    right: 20px;
  }
  #contents .room_table_message .show_main {
    padding: 0 15px 30px;
    display: none;
  }
	#contents .room_table_message .show_main.current {
    display: block;
  }
  #contents .room_table_message .table_info {
    overflow: auto;
  }
  #contents .room_table_message .note {
    width: 100%;
    font-size: 100%;
    text-align: left;
    position: inherit;
    margin-top: 15px;
  }
  #contents .room_table_message .note .sp_message {
    margin-bottom: 10px;
  }
  #contents .room_table_message table {
    font-size: 100%;
    margin-top: 5px;
  }
  #contents .room_table_message dl {
    margin-top: 20px;
  }
  #contents .room_table_message dl dt {
    font-size: 125%;
    font-weight: bold;
    padding-left: 17px;
    padding-bottom: 7px;
    background: url(/common/stay/img/ico-title1.png) no-repeat left 4px;
    background-size: 12px 12px;
  }
}
