@charset "UTF-8";
/* Scss Document */
/*基本*/
html {
  font-size: 10px;
  overflow: auto;
  width: 100%;
}

@media screen and (max-width: 1460px) {
  html {
    font-size: calc( 10vw / 1460 * 100 );
  }
}
body {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6em;
  line-height: 1.7;
  color: #333;
  width: 100% !important;
  overflow-x: hidden !important;
}

* {
  box-sizing: border-box;
}

a {
  text-decoration: none;
  color: #333;
  transition: ease-in 0.2s;
}
a:hover {
  opacity: 0.8;
}

.container {
  width: 100%;
  position: relative;
  padding-top: 0 !important;
}

/*SPパーツ非表示*/
.spmode {
  display: none;
}

#modal-nav, .right_sp {
  display: none;
}

#reservation_area .btn_submit.sp input {
  display: none;
}

img {
  vertical-align: bottom;
}

/*
--------------------------------------------------
	header
-------------------------------------------------- */
.header_wrap {
  position: absolute;
  z-index: 1;
  width: 100%;
  background: url("../img/header_bg.png") repeat-y;
  background-size: auto 100%;
  height: 15.1rem;
}

header {
  margin: 0 auto;
  position: relative;
  height: 12rem;
}
header .header-inner {
  margin: 0 auto;
}
header h1 a {
  display: block;
}
header h1 a img {
  width: 16.8rem;
  margin: 1rem;
}
header .right {
  text-align: right;
}
header .hnav li {
  float: left;
  margin-bottom: 2rem;
}
header .hnav li a {
  width: 12rem;
  background: black;
  margin-left: 1rem;
  display: block;
  text-align: center;
  color: #fff;
  height: 3rem;
  line-height: 3rem;
}
header .hnav li a:hover {
  background: gray;
}
header .header_tel {
  background: url(../img/header_tel.png) no-repeat bottom left;
  background-size: 2.4rem;
  padding-left: 3rem;
  font-size: 2.6rem;
  line-height: 2.4rem;
  position: absolute;
  right: 0;
  top: 0;
  display: none;
}
header .hnavSP {
  display: none;
}

/*外国語リンク*/
header .langnav {
  float: right;
  position: absolute;
  top: 8.4rem;
  right: 0;
  z-index: 9998;
}
header .langnav li {
  float: left;
  margin: 0 0 0 2rem;
}
header .langnav li a {
  background: url(../img/langnav_arrow.png) no-repeat left center;
  display: block;
  padding: 0 0 0 1.2rem;
}
header .langnav li a:hover {
  opacity: 0.5;
}

/*パーツボタン*/
header .cnav {
  position: absolute;
  top: 0;
  right: 0;
}
header .cnav li {
  float: left;
  margin-left: 1rem;
}
header .cnav li a {
  display: block;
  padding: 0.6rem 1rem 0.6rem 1.8rem;
  color: #fff;
  font-size: 1.4rem;
  background: #000 url(../img/langnav_arrow_w.png) no-repeat left 0.8rem center;
}
header .cnav li a:hover {
  background: gray url(../img/langnav_arrow_w.png) no-repeat left 0.8rem center;
}

#headerMenu {
  width: 100%;
}
#headerMenu ul {
  letter-spacing: -.4em;
}
#headerMenu nav {
  margin: 0 auto;
  width: 96rem;
}
#headerMenu nav li {
  letter-spacing: normal;
}
#headerMenu nav li a {
  margin: 0 auto;
  float: left;
  display: block;
  width: 12rem;
  height: 8rem;
  line-height: 8rem;
  text-align: center;
  transition: initial;
}
#headerMenu nav li a:hover {
  background: url(../img/navArrow.png) no-repeat center bottom;
  translate: 0s;
}

/*-----------------------------------------------
	検索パネル
----------------------------------------------- */
body:not(#page-home) #reservation_area {
  display: none;
}

#reservation_area {
  margin: 5.2rem 0;
}
#reservation_area .inner {
  width: 96rem;
  margin: 0 auto;
  padding: 2rem 3.6rem;
  background: #F0F0F0;
}
#reservation_area .inner-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#reservation_area .inner-inner::after {
  content: none;
}
#reservation_area h3.search_title {
  font-size: 2.4rem;
  margin: 1.4rem 4rem 0 0;
  width: 10rem;
  float: left;
}
#reservation_area input, #reservation_area select {
  padding: 0.6rem;
  border: 1px solid #ACACAC;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-size: 16px;
}
#reservation_area input.datepicker {
  width: 80%;
}
#reservation_area input#datepicker {
  background: #fff url(../img/calIcon.png) no-repeat right 1rem center;
  background-size: 2rem;
}
#reservation_area .searchBtns li {
  float: left;
}
#reservation_area .searchBtns li.pulldownWrap {
  width: 10rem;
}
#reservation_area .searchBtns li.btn_submit {
  width: 16rem;
  margin-top: 1rem;
}
#reservation_area .searchBtns li.btn_submit.sp {
  display: none;
}
#reservation_area .searchBtns p.textbottom {
  margin: 1rem 0 0 0;
}
#reservation_area li.box_day input {
  width: 100%;
}
#reservation_area .pulldown01, #reservation_area .pulldown02 {
  width: 9rem;
}
#reservation_area .btnToday {
  display: none;
}
#reservation_area .btn_submit input.search {
  width: 100%;
  background: #000;
  color: #fff;
  border-radius: 0.6rem;
  height: 7rem;
  margin: 0 0 1rem 0;
  transition: ease-in-out 0.2s;
  font-size: 2.4rem;
  letter-spacing: 0.5em;
}
#reservation_area .btn_submit input.search:hover {
  cursor: pointer;
  background: gray;
}
#reservation_area .search_btn01, #reservation_area .search_btn02, #reservation_area .search_btn03, #reservation_area .search_btn04, #reservation_area .search_btn05, #reservation_area .search_radio {
  float: left;
  font-size: 1.4rem;
  vertical-align: top;
  padding-right: 1.8rem;
  text-align: left;
}
#reservation_area .search_btn01 ul {
  width: 20rem;
}
#reservation_area .search_btn02 ul {
  width: 7rem;
}
#reservation_area .search_btn03 ul {
  width: 7rem;
}
#reservation_area .search_btn04 ul {
  display: flex;
  align-items: flex-end;
}
#reservation_area .search_btn05 {
  padding-right: 0;
}
#reservation_area .search_btn05 li {
  position: relative;
}
#reservation_area .search_btn05 li::before {
  content: "";
  position: absolute;
  right: 1.1rem;
  top: 0;
  bottom: .5rem;
  margin: auto;
  width: 0.7rem;
  height: 0.7rem;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#reservation_area .search_btn05 li.sp::before {
  display: none;
}
#reservation_area .search_btn05 input.button {
  width: 13.6rem;
  height: 4rem;
  line-height: 2rem;
  background: #0D004C;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  border-radius: .4rem;
  margin-bottom: .4rem;
  transition: ease-in-out 0.2s;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  border: none;
  cursor: pointer;
}
#reservation_area .search_btn05 input.button.btn_cancel {
  font-size: 1.4rem;
  background: #D98869;
  height: 2.8rem;
  line-height: 2.8rem;
  letter-spacing: 0;
  padding: 0;
  width: 100%;
  border-radius: .4rem;
}
#reservation_area .search_radio input {
  vertical-align: middle;
  margin-right: .4rem;
}
#reservation_area .search_radio p {
  font-size: 1.3rem;
}
#reservation_area p.reservetitle {
  border-left: 0.4rem solid #53B9AC;
  padding-left: .8rem;
  margin: 0 0 .8rem 0;
  line-height: 1.6rem;
}
#reservation_area .bottom_menu {
  background: #e0e0e0;
  font-size: 0;
  display: none;
}
#reservation_area .bottom_menu ul {
  text-align: center;
}
#reservation_area .bottom_menu ul li {
  display: inline-block;
  border-right: 1px solid #c1c1c1;
  font-size: 1.4rem;
}
#reservation_area .bottom_menu ul li:first-child {
  border-left: 1px solid #c1c1c1;
}
#reservation_area .bottom_menu ul li a {
  display: block;
  padding: 0.6rem 2rem;
}
#reservation_area .bottom_menu ul li a:hover {
  background: gray;
  color: #fff;
}
#reservation_area .checktext, #reservation_area .checktext2 {
  margin-top: .4rem;
  font-size: 1.2rem;
}
#reservation_area .checkA {
  display: inline-block;
  position: relative;
  margin-left: 0.5rem;
  border: 1px solid #999;
  vertical-align: middle;
  box-sizing: border-box;
  appearance: button;
  	/*	-webkit-box-sizing: border-box;
  		-webkit-appearance: button;
  	}
  
  	.checkA:checked::after {
  		position: absolute;
  		content: "";
  		top: 0px;
  		left: .4rem;
  		width: .4rem;
  		height: 1rem;
  		border-right: .4rem solid #009933;
  		border-bottom: .4rem solid #009933;
  		-webkit-transform: rotate(45deg);
  		transform: rotate(45deg);*/
}

/*--------------------------------------------------
	Navigation
-------------------------------------------------- */
.nav_wrap .header_btn {
  position: absolute;
  top: 9.4rem;
  right: 2.5rem;
  z-index: 2;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.nav_wrap .header_btn .header_nav {
  cursor: pointer;
}
.nav_wrap .header_btn .header_btn_eng a {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12rem;
  height: 2.8rem;
  background: #fff;
  border-radius: 1.4rem;
}
.nav_wrap .header_btn .header_btn_insta {
  margin-right: -1rem;
}
.nav_wrap .header_btn .header_btn_insta img {
  width: 4rem;
}
.nav_wrap .header_btn .header_btn_fb {
  margin-left: 3.2rem;
}
.nav_wrap .header_btn .header_btn_fb img {
  width: 4rem;
}

nav.gnav {
  position: absolute;
  z-index: 1;
  width: calc(100% - 19.3rem);
  left: 19.3rem;
  height: 8.2rem;
  display: flex;
  align-items: flex-end;
  transition: all  0.5s ease;
}
nav.gnav .hotel {
  display: flex;
}
nav.gnav .wedding {
  display: flex;
}
nav.gnav .wedding .nav_logo {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  transition: all  0.3s ease;
  left: 0;
  top: 0;
  width: 14.1rem;
  height: 9.7rem;
}
nav.gnav .wedding .nav_logo img {
  width: 11.5rem;
}
nav.gnav .wedding .nav_logo img.fix_on {
  display: none;
}
nav.gnav .wedding .nav_logo img.fix_off {
  display: block;
}
nav.gnav .wedding .header_btn {
  height: 100%;
}
nav.gnav .wedding .header_btn li {
  height: 8.2rem;
  width: 26rem;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
nav.gnav .wedding .header_btn li a {
  font-size: 1.6rem;
  text-align: left;
}
nav.gnav .wedding .header_btn li:nth-child(1) a {
  background: #D98869;
  flex: 1 0 0%;
}
nav.gnav .wedding .header_btn li:nth-child(2) {
  width: 26rem;
}
nav.gnav .wedding .header_btn li:nth-child(2) a {
  background: #2C6D93;
}
nav.gnav .nav_logo {
  display: none;
}
nav.gnav .header_btn {
  width: auto;
  margin: 0 0 0 auto;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
nav.gnav .header_btn li {
  margin: 0;
  height: 7.2rem;
  position: relative;
  overflow: hidden;
}
nav.gnav .header_btn li::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 2rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid #fff;
  border-bottom: 1px solid #fff;
  transform: skewX(50deg);
  background: none;
}
nav.gnav .header_btn li:hover::before {
  left: auto;
  right: 2rem;
}
nav.gnav .header_btn li a {
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0;
  color: #fff;
  opacity: 1;
  text-shadow: none;
  padding: 0 5rem 0 2rem;
  font-size: 1.8rem;
}
nav.gnav .header_btn li:nth-child(1) a {
  background: #53B9AC;
}
nav.gnav .header_btn li:nth-child(2) a {
  background: #0D004C;
}
nav.gnav ul {
  letter-spacing: -.4em;
  width: auto;
}
nav.gnav ul::after {
  content: "";
  clear: both;
  display: block;
}
nav.gnav li {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  margin-right: 2em;
}
nav.gnav li::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #0D004C;
  height: 0.2rem;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
nav.gnav li:hover::before, nav.gnav li:focus::before, nav.gnav li:active::before {
  left: 0;
  right: 0;
}
nav.gnav li a {
  text-align: center;
  display: block;
  background-position: center bottom -.4rem;
  letter-spacing: normal;
  font-size: 1.4rem;
  line-height: 1.3;
  padding: 1rem 0;
  color: #fff;
  text-shadow: 0 0 1rem black;
}
nav.gnav li a span {
  display: block;
  font-family: 'Sorts Mill Goudy', serif;
  font-size: 2rem;
}
nav.gnav li a:hover {
  translate: 0s;
}
nav.gnav li.current a {
  border-bottom: 0.2rem solid #0D004C;
}

/*fixed*/
nav.fixed {
  background: #fff;
  box-shadow: 0px 0px 0.4rem 1px rgba(0, 0, 0, 0.18);
  align-items: center;
  height: 7.2rem;
  left: 0;
  width: 100%;
}
nav.fixed .nav_logo {
  display: block;
  margin-left: 3.2rem;
}
nav.fixed .nav_logo img {
  width: 10.3rem;
}
nav.fixed .nav-inner {
  margin-left: 5.9rem;
}
nav.fixed li a {
  color: #BCBCBC;
  text-shadow: none;
}
nav.fixed li a span {
  color: #0D004C;
}
nav.fixed .wedding .nav_logo {
  margin-left: 0;
  background: #fff;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
}
nav.fixed .wedding .nav_logo img {
  width: 11.5rem;
}
nav.fixed .wedding .nav_logo img.fix_on {
  display: block;
}
nav.fixed .wedding .nav_logo img.fix_off {
  display: none;
}
nav.fixed .wedding .header_btn li {
  height: 7.2rem;
}

@media screen and (max-width: 1610px) {
  nav.gnav .header_btn {
    width: 23rem;
    height: 7.2rem;
  }
  nav.gnav .header_btn li {
    height: calc(7.2rem / 2);
    width: 100%;
  }
  nav.gnav .header_btn li a {
    font-size: 1.4rem;
  }
  nav.gnav .wedding .header_btn {
    width: 23rem;
  }
  nav.gnav .wedding .header_btn li {
    height: calc(8.2rem / 2);
    width: 100%;
  }
  nav.gnav .wedding .header_btn li a {
    font-size: 1.4rem;
  }
  nav.fixed .wedding .header_btn li {
    height: calc(7.2rem / 2);
  }
  nav.fixed .wedding .header_btn li a {
    font-size: 1.3rem;
  }
}
/* ■ モーダルメニュー部分 ------------------------------------------- */
/*　モーダルメニュー用背景　*/
.main_cover {
  width: 100vw;
  height: 100vh;
  position: fixed;
  visibility: hidden;
  overflow: hidden;
  z-index: -1;
  -webkit-transition: .3s;
  transition: .3s;
}

.main_cover.active {
  top: 0;
  visibility: visible;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}

/*ナビ=====*/
.mnav {
  display: none;
  position: fixed;
  margin: auto;
  text-align: center;
  z-index: 10000;
  padding-top: 2em;
}
.mnav > .header_nav {
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  width: 7em;
  line-height: 3.2rem;
  border-radius: 1.6rem;
  text-align: center;
  font-size: 1.6rem;
  cursor: pointer;
}
.mnav div {
  background: #fff;
}
.mnav .tab {
  display: flex;
}
.mnav .tab li {
  width: calc(100% / 5);
  background: #53B9AC;
  cursor: pointer;
  color: #fff;
  border-left: 1px solid #fff;
}
.mnav .tab li:nth-child(1) {
  border: none;
}
.mnav .tab li.select {
  background: #fff;
  color: #333;
}
.mnav .content {
  margin: 0;
}
.mnav .content li {
  height: 100%;
  flex-direction: column;
  justify-content: center;
}
.mnav .content li.hide {
  display: none;
}
.mnav .content li .style_block_area {
  float: none;
}
.mnav .content li form {
  text-align: left;
}
.mnav .content li form#Test2 {
  display: none;
}
.mnav .content li form span {
  padding: 0;
}
.mnav .content li form h4 {
  font-size: 2rem;
  font-weight: normal;
  width: 4em;
  margin-right: 1em;
}
.mnav .content li form #dynCalendarTest1 {
  left: 12rem !important;
  top: 1rem !important;
}
.mnav .content li form select {
  padding: 0.5rem 2rem;
  margin-right: 0.5rem;
}
.mnav .content li form label {
  margin-left: 1.5rem;
}
.mnav .content li form .search_date, .mnav .content li form .search_night, .mnav .content li form .search_room {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 1.6rem;
}
.mnav .content li form .search_date input[type="text"], .mnav .content li form .search_night input[type="text"], .mnav .content li form .search_room input[type="text"] {
  border: 1px solid #ACACAC;
  padding: 0.5rem 1rem;
  margin: 0 0.5rem;
}
.mnav .content li form .search_date input[type="text"]:nth-child(1), .mnav .content li form .search_night input[type="text"]:nth-child(1), .mnav .content li form .search_room input[type="text"]:nth-child(1) {
  margin-left: 0;
}
.mnav .content li form .search_date span, .mnav .content li form .search_night span, .mnav .content li form .search_room span {
  display: flex;
  align-items: center;
}
.mnav .content li form .search_date span div, .mnav .content li form .search_night span div, .mnav .content li form .search_room span div {
  width: 100%;
}
.mnav .content li form .bookingDate {
  display: flex;
  flex-wrap: wrap;
}
.mnav .content li form .bookingDate .search_date {
  width: 100%;
}
.mnav .content li form .bookingDate .search_night {
  margin-right: 6.4rem;
}
.mnav .content li form .dynPersons {
  display: flex !important;
  align-items: center;
  margin-bottom: 3.2rem;
}
.mnav .content li form .dynPersons::before {
  content: "宿泊人数";
  font-size: 2rem;
  margin-right: 1em;
}
.mnav .content li form .dynPersons .search_ninzu_title {
  display: none;
}
.mnav .content li form .dynPersons label {
  order: 2;
}
.mnav .content li form .dynPrice {
  display: none;
}
.mnav .content li form .dynSubmit {
  width: 100%;
}
.mnav .content li form .dynSubmit .btn.cancel {
  display: none;
}
.mnav .content li form .dynSubmit .btn.kensaku {
  position: relative;
  max-width: 57.2rem;
  margin: 3.4rem auto 0 !important;
}
.mnav .content li form .dynSubmit .btn.kensaku::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 5.5rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid #fff;
  border-bottom: 1px solid #fff;
  transform: skewX(50deg);
  background: none;
}
.mnav .content li form .dynSubmit .btn.kensaku input {
  display: block !important;
  background: #0D004C;
  color: #fff;
  width: 100%;
  height: 7.2rem;
  margin: auto;
  border-radius: 3.6rem;
  font-size: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  transition: all  0.3s ease;
}
.mnav .content li form .dynSubmit .btn.kensaku input:hover {
  opacity: 0.8;
}
.mnav .content li form .dynSubmit .txt_cancel {
  text-align: center;
  margin-top: 1.6rem;
}
.mnav .content li form .dynSubmit .txt_cancel a {
  text-decoration: underline;
  position: relative;
  text-align: center;
  display: inline-block;
}
.mnav .content li form .dynSubmit .txt_cancel a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: -5.5rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid;
  border-bottom: 1px solid;
  transform: skewX(50deg);
  background: none;
}
.mnav .content li form .dynSubmit .txt_cancel.gaibu a::after {
  content: "";
  width: 1rem;
  height: 1rem;
  display: block;
  background: url("../img/icon_newwin_white.svg") no-repeat;
  background-size: 100%;
  margin-left: 1.6rem;
}
.mnav .content li .toiawase_midasi {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  margin-bottom: 1.3rem;
}
.mnav .content li .toiawase_btn a {
  display: block;
  background: #0D004C;
  color: #fff;
  max-width: 57.2rem;
  height: 5.6rem;
  margin: auto;
  border-radius: 2.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.mnav .content li .toiawase_btn a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 5.5rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid #fff;
  border-bottom: 1px solid #fff;
  transform: skewX(50deg);
  background: none;
}
.mnav .content li .toiawase_btn.gaibu a::after {
  content: "";
  width: 1rem;
  height: 1rem;
  display: block;
  background: url("../img/icon_newwin_white.svg") no-repeat;
  background-size: 100%;
  margin-left: 1.6rem;
}

@media screen and (min-width: 781px) {
  .mnav {
    width: 86rem;
    top: 50%;
    right: 9.6rem;
    transform: translateY(-50%);
    line-height: 1.5;
    font-size: 1.8rem;
  }
  .mnav .tab li {
    height: 5.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mnav .content {
    height: 59.2rem;
    padding: 0 6.8rem;
  }
  .mnav .content li {
    display: flex;
  }
  .mnav .content li .toiawase_btn {
    margin-top: 3rem;
  }
  .mnav .content li .toiawase_midasi .tel {
    font-size: 2.8rem;
  }
}
/*
--------------------------------------------------
	main
-------------------------------------------------- */
/*
--------------------------------------------------
	バナーエリア
-------------------------------------------------- */
.banner {
  width: 96rem;
  margin: 1rem auto;
}
.banner::after {
  content: "";
  clear: both;
  display: block;
}
.banner img {
  vertical-align: bottom;
  float: left;
  margin-right: 20.6rem;
}
.banner img:last-child {
  margin: 0;
}

/*
--------------------------------------------------
	Main Image
-------------------------------------------------- */
.photo {
  width: 100%;
  text-align: center;
}
.photo img {
  width: 100%;
  vertical-align: bottom;
}

.main-photo {
  height: auto !important;
}
.main-photo .main-photo-inner img {
  width: 100% !important;
  height: 100vh !important;
  vertical-align: bottom;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.mv_slide {
  margin-bottom: 0 !important;
}
.mv_slide .slick-slide {
  font-size: 0;
}
.mv_slide .slick-dots {
  bottom: .7rem;
}
.mv_slide .slick-dots li button:before {
  color: #fff;
  opacity: .5;
  font-size: 1.5rem;
}
.mv_slide .slick-dots li.slick-active button:before {
  opacity: 1;
}
.mv_slide img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

/*
--------------------------------------------------
	パンくず
-------------------------------------------------- */
.breadcrumbs {
  width: 96rem;
  margin: 0 auto 7.8rem;
  font-size: 1.3rem;
}
.breadcrumbs ul li {
  display: inline;
}
.breadcrumbs ul li::before {
  content: "＞";
  padding: 0 0.6rem;
}
.breadcrumbs ul li:first-child:before {
  content: none;
}

/*
--------------------------------------------------
	Page structure
-------------------------------------------------- */
.content {
  width: 100%;
  margin: 4rem 0;
}
.content .inner {
  width: 96rem;
  margin: 0 auto;
}
.content .maincol > h2.hd {
  position: absolute;
  top: 45vh;
  left: 0;
  right: 0;
  margin: auto;
  color: #fff;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.8rem;
  text-shadow: 0 0 1rem rgba(0, 0, 0, 0.8);
}
.content .maincol > h2.hd::before {
  content: "";
  display: block;
  font-family: 'mina', serif;
  font-size: 5.6rem;
  font-weight: normal;
  letter-spacing: -0.1rem;
}
.content h2 {
  text-align: center;
  margin: 0 0 2rem 0;
  letter-spacing: 0.1em;
  font-size: 2.4rem;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #0D004C;
}

.wrapper {
  margin: 2rem 0 0 0;
}

/*
--------------------------------------------------
	記事
-------------------------------------------------- */
.column {
  width: 100%;
  margin: 0;
  padding: 0;
  clear: both;
}

.column-inner {
  margin: 0 0 2rem;
  padding: 0 0 2rem;
}
.column-inner::after {
  content: "";
  display: block;
  clear: both;
}
.column-inner h3 {
  margin-bottom: 1em;
  font-size: 2rem;
  color: #0D004C;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.column-inner h4 {
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.8rem;
  margin: 1em 0 0;
}
.column-inner h5 {
  border-left: 4px solid #53B9AC;
  color: #0D004C;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.8rem;
  padding-left: 1.2rem;
  margin-bottom: 2.6rem;
}
.column-inner table {
  margin: 1rem 0;
  border: solid #a0a0a0;
  border-width: 1px 0 0 1px;
  border-collapse: collapse;
  border-spacing: 0;
}
.column-inner th, .column-inner td {
  padding: .8rem;
  border: solid #a0a0a0;
  border-width: 0 1px 1px 0;
}
.column-inner th {
  background: #efefef;
}
.column-inner ul, .column-inner ol {
  padding-left: 3rem;
}
.column-inner ul {
  list-style: disc;
}
.column-inner ol {
  list-style: decimal;
}

/*photo*/
.photos-right {
  float: right;
  margin-left: 3rem;
}

.photos-left {
  float: left;
  margin-right: 3rem;
}

.plandetail-left {
  /* float: right;*/
  margin-left: 3rem;
}

.plandetail a {
  color: #53B9AC;
}
.plandetail a:hover {
  text-decoration: underline;
}

.photos-center {
  width: 100%;
  text-align: center;
  margin-bottom: 1rem;
}
.photos-center img {
  width: 100% !important;
  height: auto;
}

.photos-conformity {
  margin: 0 auto;
}

.photos-conformity-left {
  margin: 0;
}
.photos-conformity-left > div {
  margin-right: 1rem;
}
.photos-conformity-left > div:last-of-type {
  margin-right: 0;
}

.photos-conformity-right {
  margin: 0;
  margin: 0 0 2rem 0;
}

.photos-conformity-center {
  margin: 0 auto;
}

.photos-conformity::after, .photos-conformity-left::after, .photos-conformity-right::after, .photos-conformity-center::after {
  content: "";
  clear: both;
  display: block;
}
.photos-conformity div, .photos-conformity-left div, .photos-conformity-right div, .photos-conformity-center div {
  float: left;
}
.photos-conformity div::last-child, .photos-conformity-left div::last-child, .photos-conformity-right div::last-child, .photos-conformity-center div::last-child {
  margin: 0;
}

.photos,
.photos-left,
.photos-right,
.photos-top,
.photos-top-headline,
.photos-center,
.photos-conformity,
.photos-conformity-left,
.photos-conformity-right,
.photos-conformity-center {
  overflow: hidden;
}
.photos img,
.photos-left img,
.photos-right img,
.photos-top img,
.photos-top-headline img,
.photos-center img,
.photos-conformity img,
.photos-conformity-left img,
.photos-conformity-right img,
.photos-conformity-center img {
  vertical-align: bottom;
  margin-bottom: 1rem;
  width: 100% !important;
}
.photos .caps,
.photos-left .caps,
.photos-right .caps,
.photos-top .caps,
.photos-top-headline .caps,
.photos-center .caps,
.photos-conformity .caps,
.photos-conformity-left .caps,
.photos-conformity-right .caps,
.photos-conformity-center .caps {
  padding-top: 1rem;
  display: block;
}

.photos-left-headline {
  float: left;
  margin-right: 2rem;
}

.photos-right-headline {
  float: right;
  margin-left: 2rem;
}

.plandetail-center {
  clear: both;
}

.plandetail-conformity {
  padding-top: 1rem;
  clear: both;
}

.plandetail-conformity-left {
  width: auto;
}

.plandetail-conformity-right {
  padding-top: 1rem;
  width: auto;
}

.plandetail-conformity-center {
  padding-top: 1rem;
  clear: both;
}

p.statement_link a {
  display: block;
  background: #D98869;
  background-size: 1rem;
  color: #fff;
  width: 24rem;
  height: 3.2rem;
  line-height: 3.2rem;
  text-align: center;
  margin: 2rem 0 0;
  text-decoration: none;
  transition: ease-in 0.2s;
  border-radius: 1.6rem;
  border: 1px solid #D98869;
  position: relative;
}
p.statement_link a:hover {
  background: #fff;
  text-decoration: none;
  color: #D98869;
  border: 1px solid;
  opacity: 1;
}
p.statement_link a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 2rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid;
  transform: skewX(50deg);
  background: none;
}
p.statement_link a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.6rem;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-bottom: 1px solid;
}

/* Move */
.move {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.move ul li a {
  width: 6rem;
  height: 6rem;
  background: #fff url(../img/pagetop.png) no-repeat 100% 0;
  border: 1px solid;
  background-size: 6rem;
  display: block;
  text-indent: -300%;
  overflow: hidden;
}

/*stop*/
.move.stop a {
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}

/*news*/
.news {
  width: 96rem;
  margin: 0 auto;
  padding-bottom: 9rem;
}
.news h2 {
  font-size: 2.4rem;
  text-align: center;
  line-height: 7rem;
  height: 7rem;
  border-bottom: 1px solid #000;
  margin: 0 0 4rem 0;
}
.news .articleWrap article {
  float: left;
  width: 30rem;
  margin-right: 3rem;
  position: relative;
}
.news .articleWrap article:last-of-type {
  margin-right: 0px;
}
.news .articleWrap article a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.news .articleWrap article a:hover {
  background: rgba(0, 0, 0, 0.2);
}
.news .articleWrap p.detailBtn {
  padding: 1rem 0;
  background: #fff url(../img/arrow.png) no-repeat right 0.6rem center;
  background-size: 1.4rem;
  border: 1px solid #333;
  color: #000;
  text-align: center;
  text-decoration: none;
  width: 100%;
  margin: 2rem 0;
}
.news .articleWrap p.detailBtn:hover {
  background: #fff url(../img/arrow.png) no-repeat right 0.6rem center;
  background-size: 1.4rem;
}
.news .recentPost h3 {
  font-weight: bold;
  height: 7rem;
  font-size: 1.6rem;
}
.news .more {
  margin-top: 2rem;
}
.news .more a {
  display: block;
  background: #333 url(../img/arrow_w.png) no-repeat right 0.8rem center;
  background-size: 1.4rem;
  border: 1px solid #333;
  color: #fff;
  text-align: center;
  text-decoration: none;
  width: 38rem;
  margin: 0 auto;
  height: 5rem;
  line-height: 5rem;
  font-size: 1.6rem;
}
.news .more a:hover {
  border: 1px solid #000;
  color: #000;
  background: #fff url(../img/arrow.png) no-repeat right 0.6rem center;
  background-size: 1.4rem;
}

#entries {
  margin: 2rem 0;
  padding: 0;
}
#entries .column {
  margin: 0;
  padding: 0;
}

/*news詳細*/
span.new {
  color: #fff;
  background: #c30000;
  padding: 0 0.5rem;
  border-radius: 0.6rem;
  margin: 0;
}

/*すべての記事を見るボタン*/
.more {
  margin: 0 0 1rem;
  clear: both;
}
.more::after {
  content: "";
  display: block;
  clear: both;
}
.more a {
  background-size: 1.2rem;
  color: #0D004C;
  border: 1px solid #0D004C;
  border-radius: 2rem;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33.2rem;
  height: 4rem;
  font-size: 1.4rem;
  margin: 0 auto;
  position: relative;
}
.more a:hover {
  text-decoration: none;
  background: #0D004C;
  color: #fff;
  opacity: 1;
}
.more a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 2rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid;
  border-bottom: 1px solid;
  transform: skewX(50deg);
  background: none;
}

/* Tabs Contents */
/* Caution! Ensure accessibility in print and other media types... */
@media projection, screen {
  /* Use class for showing/hiding tab content,
  so that visibility can be better controlled in different media types... */
  .ui-tabs-hide {
    display: none;
  }
}
/* Hide useless elements in print layouts... */
@media print {
  .ui-tabs-nav {
    display: none;
  }
}
ul.ui-tabs-nav {
  width: 100%;
  height: 7rem;
}
ul.ui-tabs-nav li {
  float: left;
  position: relative;
}
ul.ui-tabs-nav li a {
  width: 23rem;
  height: 5rem;
  line-height: 5rem;
  margin: 0 0.5rem 0 0;
  padding-top: 0px;
  display: block;
  float: left;
  background: #d6d6d6;
  text-decoration: none;
  text-align: center;
  font-size: 1.6rem;
}
ul.ui-tabs-nav li#entries-tab-recommend.ui-tabs-selected a {
  background: #000000;
  color: #fff;
}
ul.ui-tabs-nav li#entries-tab-restaurant.ui-tabs-selected a {
  background: #000000;
  color: #fff;
}
ul.ui-tabs-nav li#entries-tab-news a {
  background: #d6d6d6;
  background-position: bottom center;
}
ul.ui-tabs-nav li#entries-tab-news a::after {
  position: absolute;
  content: "";
  width: 23rem;
  height: 1rem;
  bottom: -1rem;
  left: 0;
  display: block;
}
ul.ui-tabs-nav li#entries-tab-news.ui-tabs-selected a {
  background: #000000;
  color: #fff;
}
ul.ui-tabs-nav li#entries-tab-news.ui-tabs-selected::after,
ul.ui-tabs-nav li#entries-tab-recommend.ui-tabs-selected::after,
ul.ui-tabs-nav li#entries-tab-restaurant.ui-tabs-selected::after {
  content: "";
  position: absolute;
  background: url(../img/tab_arrow.png) no-repeat center bottom;
  width: 23rem;
  height: 1rem;
  bottom: -1rem;
  left: 0;
  display: block;
}
ul.ui-tabs-nav li#entries-tab-news a :hover,
ul.ui-tabs-nav li#entries-tab-recommend a :hover,
ul.ui-tabs-nav li#entries-tab-restaurant a :hover {
  opacity: 0.5;
}

/*
--------------------------------------------------
	ギャラリー表示
-------------------------------------------------- */
/* Small-16rem */
.imagesurfingsmall {
  width: 16.4rem;
  height: auto;
  text-align: center;
  overflow: hidden;
}
.imagesurfingsmall ul {
  width: 16rem;
  margin: 0 auto;
}
.imagesurfingsmall ul li {
  width: 4rem;
  padding: 1px 0 0 0;
  margin: 0;
  float: left;
  list-style: none;
}
.imagesurfingsmall ul li a {
  width: 4rem;
  height: 3rem;
  border: none;
  border-bottom: .4rem solid #DECBA6;
  display: block;
  float: left;
  outline: none;
  overflow: hidden;
}
.imagesurfingsmall ul li a.imagesurfing-selected {
  border-bottom: .4rem solid #BB471F;
}
.imagesurfingsmall ul li img {
  width: 3.9rem;
  height: 2.9rem;
  margin: 0;
  padding: 0;
  background: #FFF;
  border-right: 1px solid #FFF;
}
.imagesurfingsmall img {
  width: auto;
  height: 12rem;
  text-align: center;
  vertical-align: bottom;
}
.imagesurfingsmall p.imagesurfing-caption {
  margin: 0 !important;
  padding: .3rem 0;
  font-size: 1rem;
  line-height: 1.2;
}

/* Normal-22rem */
.imagesurfingnormal {
  width: 22.4rem;
  height: auto;
  text-align: center;
  overflow: hidden;
}
.imagesurfingnormal ul {
  width: 22rem;
  margin: 0 auto;
}
.imagesurfingnormal ul li {
  width: 50.5rem;
  padding: 1px 0 0 0;
  margin: 0;
  float: left;
  list-style: none;
}
.imagesurfingnormal ul li a {
  width: 50.5rem;
  height: 40.2rem;
  border: none;
  border-bottom: .4rem solid #dcdcdc;
  display: block;
  float: left;
  outline: none;
  overflow: hidden;
}
.imagesurfingnormal ul li a.imagesurfing-selected {
  border-bottom: .4rem solid #5f5f5f;
}
.imagesurfingnormal ul li img {
  width: 5.4rem;
  height: 4.1rem;
  margin: 0;
  padding: 0;
  background: #FFF;
  border-right: 1px solid #eee;
}
.imagesurfingnormal img {
  width: auto;
  height: 160.5rem;
  text-align: center;
  vertical-align: bottom;
}
.imagesurfingnormal p.imagesurfing-caption {
  margin: 0 !important;
  padding: .3rem 0;
  font-size: 1rem;
  line-height: 1.2;
}

/* Large-28rem */
.imagesurfinglarge {
  width: 28.4rem;
  height: auto;
  text-align: center;
  overflow: hidden;
}
.imagesurfinglarge ul {
  width: 28rem;
  margin: 0 auto;
}
.imagesurfinglarge ul li {
  width: 7rem;
  padding: 1px 0 0 0;
  margin: 0;
  float: left;
  list-style: none;
}
.imagesurfinglarge ul li a {
  width: 7rem;
  height: 5.3rem;
  border: none;
  border-bottom: .4rem solid #DECBA6;
  display: block;
  float: left;
  outline: none;
  overflow: hidden;
}
.imagesurfinglarge ul li a.imagesurfing-selected {
  border-bottom: .4rem solid #BB471F;
}
.imagesurfinglarge ul li img {
  width: 6.9rem;
  height: 50.2rem;
  margin: 0;
  padding: 0;
  background: #FFF;
  border-right: 1px solid #FFF;
}
.imagesurfinglarge img {
  width: auto;
  height: 21rem;
  text-align: center;
  vertical-align: bottom;
}
.imagesurfinglarge p.imagesurfing-caption {
  margin: 0 !important;
  padding: .3rem 0;
  font-size: 1rem;
  line-height: 1.2;
}

/*Banner Area*/
.bannerArea {
  width: 96rem;
  margin: 0 auto;
}
.bannerArea li {
  float: left;
  margin-right: 20.6rem;
}
.bannerArea li:last-child {
  margin-right: 0px;
}

/*sns icons*/
.snsIcon .inner {
  width: 96rem;
  margin: 0 auto;
  text-align: center;
  padding: 4rem;
}
.snsIcon li {
  display: inline-block;
  vertical-align: middle;
  margin-right: 4rem;
}
.snsIcon li a {
  /*display:block;*/
}
.snsIcon li img {
  width: 4rem;
}

/*
--------------------------------------------------
	footer
-------------------------------------------------- */
.top_bnr {
  width: 96rem;
  margin: 12rem auto 0;
}
.top_bnr ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top_bnr ul li {
  width: 30rem;
}
.top_bnr ul li img {
  width: 100%;
}

footer {
  width: 100%;
  margin-top: 9.8rem;
}
footer .infoPhoto {
  float: left;
  width: 20rem;
  margin-right: 2rem;
}
footer .infoPhoto img {
  width: 20rem;
}
footer .rowWrap {
  margin: 2rem 0;
}
footer .infoaddress {
  float: left;
  width: 30rem;
}
footer .infoText {
  float: right;
  width: 40rem;
}
footer nav#footerMenu {
  margin: 2rem 0;
}
footer nav#footerMenu ul {
  font-size: 0;
  text-align: center;
}
footer nav#footerMenu ul li {
  display: inline-block;
  margin-right: 1rem;
  position: relative;
}
footer nav#footerMenu ul li a {
  color: #fff;
  width: 11rem;
  height: 20.6rem;
  display: block;
  font-size: 1.4rem;
}
footer nav#footerMenu ul li:last-child {
  margin-right: 0px;
}
footer nav#footerMenu ul li:before {
  content: "test";
  width: 1rem;
  height: 1rem;
  background: url(../img/fnavArrow_w.png) no-repeat;
  position: absolute;
  left: 0.5rem;
  top: 0.6rem;
}
footer .information {
  width: 96rem;
  margin: 0 auto;
}
footer .information .information-inner {
  text-align: center;
}
footer .information .information-inner .footer_logo img {
  width: 21.5rem;
}
footer .information .information-photo {
  width: 20rem;
  float: left;
  margin: 0 2rem 0 0;
}
footer .information .information-access h4 {
  margin: 4.4rem 0 1.4rem;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 2rem;
}
footer .information .information-access a {
  color: #333;
}
footer .information .information-access .address {
  margin-bottom: 0.5rem;
}
footer .information .information-read {
  overflow: hidden;
}
footer .footer_sns {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.7rem;
}
footer .footer_sns li:nth-child(1) {
  margin-right: 4rem;
}
footer .footer_sns li a {
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .footer_sns li a img {
  margin-right: 1.6rem;
  width: 4rem;
}
footer .fnav {
  width: 100%;
  padding-top: 1rem;
  width: 100%;
}
footer .fnav ul li a {
  text-decoration: none;
}
footer .footer_nemu {
  width: 96rem;
  margin: 4.5rem auto 7rem;
  display: flex;
  justify-content: space-between;
}
footer .footer_nemu .footer_nemu_box {
  width: 45.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer .footer_nemu .footer_nemu_box h4 {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-bottom: 1rem;
}
footer .footer_nemu .footer_nemu_box h4::before {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border: .5rem solid;
  border-color: transparent transparent transparent #0D004C;
}
footer .footer_nemu .footer_nemu_box h4::after {
  content: "";
  flex: 1 0 0%;
  margin-left: 1em;
  height: 1px;
  background: #707070;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase {
  width: 100%;
  margin-top: 3rem;
  display: flex;
  align-items: center;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase .footer_toiawase_link {
  margin-right: 2rem;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase .footer_toiawase_link:nth-last-child(1) {
  margin-right: 0;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase .footer_toiawase_link a {
  display: block;
  color: #0D004C;
  display: flex;
  white-space: nowrap;
  align-items: center;
  padding: 0 6rem 0 2rem;
  border: 1px solid;
  height: 4rem;
  border-radius: 2rem;
  position: relative;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase .footer_toiawase_link a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 2.8rem;
  left: auto;
  margin: auto;
  width: 2rem;
  height: .6rem;
  border-bottom: 1px solid;
  border-right: 2px solid;
  transform: skewX(50deg);
  background: none;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase .footer_toiawase_link a:hover {
  background: #0D004C;
  color: #fff;
}
footer .footer_nemu .footer_nemu_box .footer_toiawase > p:nth-last-child(1) span {
  font-weight: bold;
}
footer .footer_nemu .footer_nemu_box ul li {
  margin-left: 1.7rem;
}
footer .footer_nemu .footer_nemu_box ul li a {
  position: relative;
  display: flex;
  align-items: center;
  color: #333;
}
footer .footer_nemu .footer_nemu_box ul li a::before {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border: .5rem solid;
  border-color: transparent transparent transparent #0D004C;
}
footer .footer_nemu .footer_nemu_box ul li a::after {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  transition: all  0.3s ease;
}
footer .footer_nemu .footer_nemu_box ul li a:hover::after {
  background: #0D004C;
  width: 100%;
}
footer .footer_nemu .footer_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress {
  position: relative;
}
footer .footer_nemu .footer_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress::after {
  position: absolute;
  content: "";
  width: 1rem;
  height: 100%;
  background: url("../img/icon_newwin.svg") center center no-repeat;
  background-size: 100%;
  top: 0;
  bottom: 0;
  left: 4em;
  margin: auto;
}
footer .footer_nemu .footer_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress:hover::after {
  opacity: 0.8;
}
footer .copyright {
  text-align: center;
  line-height: 4rem;
  font-size: 1.2rem;
}

/*
--------------------------------------------------
	go pagetop
-------------------------------------------------- */
.pagetop {
  position: fixed;
  right: 50%;
  bottom: 0;
  z-index: 80;
  margin-right: -68rem;
}
.pagetop a {
  background: #333;
  color: #fff;
  width: 8rem;
  height: 8rem;
  line-height: 8rem;
  text-align: center;
  display: block;
  border-radius: 0.5rem;
}
.pagetop a::hover {
  text-decoration: none;
  background: #999;
}

/*フッタに固定時*/
.pagetop.stop a {
  border-radius: 0.6rem 0.6rem 0 0;
}

/*hover.css*/
/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-center::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #000;
  height: 0.2rem;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
  left: 0;
  right: 0;
}

/*-----------------------------------------
パララックス
-----------------------------------------*/
.fadein {
  opacity: 0;
  transition: 1.2s;
}

.fade_left {
  transform: translate(-80px, 0);
}

.fade_right {
  transform: translate(80px, 0);
}

.fade_up {
  transform: translate(0, 80px);
}

.fade_scale {
  transform: scale(0.5, 0.5);
}

.fadein.parallax {
  opacity: 1;
  transform: translate(0, 0);
}

/* 2つ目の要素に400msのdelayをかける */
.fadein.slidein2 {
  -moz-transition-delay: 400ms;
  -webkit-transition-delay: 400ms;
  -o-transition-delay: 400ms;
  -ms-transition-delay: 400ms;
}

.fadein.slidein3 {
  -moz-transition-delay: 800ms;
  -webkit-transition-delay: 800ms;
  -o-transition-delay: 800ms;
  -ms-transition-delay: 800ms;
}

.view_more {
  width: 6.5em;
  margin-top: 3.3rem;
  position: relative;
  font-family: 'Sorts Mill Goudy', serif;
}
.view_more a {
  color: #806940;
  display: block;
  border-bottom: 1px solid;
}
.view_more a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: -3.4rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-right: 2px solid;
  border-bottom: 1px solid;
  transform: skewX(50deg);
  background: none;
}
.view_more a:hover {
  text-decoration: none;
  color: #53B9AC;
  opacity: 1;
}

/*下層共通要素*/
.column-inner .pagetop_txt {
  text-align: center;
  color: #0D004C;
}
.column-inner .pagetop_txt h3 {
  color: #0D004C;
  font-weight: normal;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
.column-inner .pagetop_txt h4 {
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-top: 1em;
}
.column-inner .pagetop_nav {
  max-width: 96rem;
  margin: auto;
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: center;
}
.column-inner .pagetop_nav li {
  position: relative;
  border: 1px solid #0D004C;
  text-align: center;
}
.column-inner .pagetop_nav li.active {
  background: #0D004C;
  color: #fff;
}
.column-inner .pagetop_nav li::after {
  content: "";
  position: absolute;
  right: 2.6rem;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 1rem;
  height: 1rem;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
}
.column-inner .pagetop_nav li:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.column-inner .pagetop_nav li a {
  color: #0D004C;
  display: block;
  height: 100%;
}
.column-inner .pagetop_nav li a:hover {
  color: #fff;
  text-decoration: none;
  background: #0D004C;
}
.column-inner .ud_mainslide {
  position: relative;
  padding: 0;
  list-style: none;
}
.column-inner .ud_mainslide img {
  width: 100% !important;
  height: 100% !important;
}
.column-inner .ud_mainslide .slick-prev {
  width: 4.7rem;
  height: 4.7rem;
  left: -5rem;
  border: solid #0D004C;
  border-width: 0 0 1px 1px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.column-inner .ud_mainslide .slick-prev::before {
  content: none;
}
.column-inner .ud_mainslide .slick-next {
  width: 4.7rem;
  height: 4.7rem;
  right: -5rem;
  border: solid #0D004C;
  border-width: 1px 1px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.column-inner .ud_mainslide .slick-next::before {
  content: none;
}
.column-inner .ud_mainslide .slick-dots {
  bottom: 4rem;
}
.column-inner .ud_mainslide .slick-dots li {
  margin: 0;
}
.column-inner .ud_mainslide .slick-dots li button::before {
  color: #fff;
  opacity: 1;
}
.column-inner .ud_mainslide .slick-dots li.slick-active button::before {
  color: #0D004C;
  opacity: 1;
}
.column-inner .txt_en {
  font-family: 'mina', serif;
}

@media screen and (min-width: 781px) {
  .column-inner .pagetop_txt h3 {
    font-size: 4rem;
  }
  .column-inner .pagetop_txt .txt_en {
    font-size: 2rem;
  }
  .column-inner .pagetop_nav {
    margin-bottom: 7.8rem;
  }
  .column-inner .pagetop_nav li {
    width: 30.8rem;
    height: 4.8rem;
    border-radius: 2.4rem;
    line-height: 4.8rem;
    margin-right: 1.8rem;
  }
  .column-inner .pagetop_nav li:nth-child(3n), .column-inner .pagetop_nav li:nth-last-child(1) {
    margin: 0;
  }
  .column-inner .pagetop_nav li a {
    border-radius: 2.4rem;
  }
  .column-inner .ud_mainslide {
    max-width: 140rem;
    width: 90%;
    margin: 11.8rem auto 0;
  }
}
/*TOP*/
#page-home .content .inner {
  width: 100%;
}
#page-home .content h3 {
  color: #0D004C;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-home .content .txt_en {
  color: #0D004C;
  font-family: 'mina', serif;
}
#page-home .content .txt {
  color: #0D004C;
}
#page-home .content img {
  width: 100%;
}
#page-home #top_1column {
  background: url("../img/bg_img.jpg");
}
#page-home #news h2, #page-home #recommends h2 {
  font-size: 1.6rem;
}
#page-home #news h2::before, #page-home #recommends h2::before {
  content: "";
  display: block;
  font-size: 4rem;
  line-height: 1.3;
}
#page-home #news h2::before {
  content: "TOPICS";
}
#page-home #news h3 {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: bold;
  color: #806940;
}
#page-home #news .column-inner {
  border-bottom: 1px solid #A1A1A1;
}
#page-home #news .plandetail .statement_link {
  text-align: right;
}
#page-home #news .plandetail .statement_link a {
  display: inline-block;
  padding: 0 5rem 0 3rem;
  width: auto;
}
#page-home #recommends h2::before {
  content: "STAY PLAN";
}
#page-home #recommends h3 {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: bold;
  color: #333;
}
#page-home .top_taiken {
  position: relative;
}
#page-home .top_taiken .img1 {
  position: relative;
}
#page-home .top_taiken .img1::after {
  content: "";
  display: block;
  background: rgba(83, 185, 172, 0.2);
  position: absolute;
  right: 0;
  bottom: -3.2rem;
}
#page-home .top_taiken .img2 {
  position: relative;
}
#page-home .top_taiken .img2::after {
  content: "";
  display: block;
  background: rgba(83, 185, 172, 0.2);
  position: absolute;
  z-index: -1;
  top: -2.4rem;
  left: -2.4rem;
}
#page-home .top_concept .box1 .txt, #page-home .top_concept .box1 .ph {
  position: relative;
}
#page-home .top_concept .box1 .ph::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background: rgba(83, 185, 172, 0.2);
  left: -2.4rem;
  bottom: -2.4rem;
}
#page-home .top_concept .box1 .txt h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-home .top_concept .box1 .txt h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-home .top_other .box2 .txt {
  background: rgba(83, 185, 172, 0.9);
  text-align: center;
  color: #fff;
}
#page-home .top_other .box2 .txt h3 {
  color: #fff;
}
#page-home .top_other .box2 .txt h4 {
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-home .top_other .box2 .txt .view_more a:hover {
  color: #fff;
}
#page-home .top_wedding .txt h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-home .top_access .txt {
  background: #fff;
  color: inherit;
}
#page-home .top_access .txt h4 {
  font-weight: bold;
}
#page-home .top_access .txt .address {
  margin-bottom: 1em;
}
#page-home .top_access .txt::before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 42.4rem;
  background: rgba(83, 185, 172, 0.2);
  position: absolute;
  left: -1.6rem;
  bottom: -1.6rem;
}
#page-home .top_access .txt::after {
  content: "";
  display: block;
  width: 42.4rem;
  height: 1.6rem;
  background: rgba(83, 185, 172, 0.2);
  position: absolute;
  left: 0;
  bottom: -1.6rem;
}
#page-home .top_access .map {
  overflow: hidden;
}
#page-home .top_access .map iframe {
  width: 100%;
  height: 150%;
  margin-top: -18%;
}

@media screen and (min-width: 781px) {
  #page-home #top_1column {
    padding: 11rem 0;
    margin-bottom: 13.7rem;
  }
  #page-home #news, #page-home #recommends {
    width: 96rem;
    margin: auto;
  }
  #page-home #news .more, #page-home #recommends .more {
    margin-top: 4rem;
  }
  #page-home #news {
    margin-bottom: 11rem;
  }
  #page-home #news .plandetail {
    /*
    padding-right: 27.2rem;
    */
    position: relative;
    font-size: 1.4rem;
  }
  #page-home #news .plandetail h3 {
    margin-left: auto;
    margin-right: auto;
    width: 96rem;
  }
  #page-home #news .plandetail .statement_link {
    /*
    position: absolute;
    right: 0;
    bottom: 0;
    */
  }
  #page-home #recommends {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #page-home #recommends h2, #page-home #recommends .more {
    width: 100%;
  }
  #page-home #recommends .column {
    width: 30rem;
  }
  #page-home #recommends .column .column-inner {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  #page-home #recommends .column .column-inner::after {
    content: none;
  }
  #page-home #recommends .column img {
    width: 100%;
    height: 23.2rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-home #recommends .column .photos-left {
    margin: 0;
    float: none;
  }
  #page-home #recommends .column .plandetail-left {
    margin: 0;
    font-size: 1.4rem;
    flex: 1 0 auto;
  }
  #page-home #recommends .column .plandetail-left h3 {
    font-size: 1.4rem;
  }
  #page-home .top_taiken {
    height: 69.6rem;
    margin: 10.4rem 0 11rem;
  }
  #page-home .top_taiken h3 {
    font-size: 4rem;
    background: url("../img/top_midasi_bg.png") left center repeat-y;
    background-size: auto 6.4rem;
  }
  #page-home .top_taiken .txt {
    position: absolute;
    z-index: 2;
    width: 80rem;
    top: 6.4rem;
    right: calc(50% - 13.6rem);
  }
  #page-home .top_taiken .txt .txt_en {
    font-size: 2rem;
    margin-bottom: 3.3rem;
  }
  #page-home .top_taiken .img1 {
    position: absolute;
    left: calc(50% - 11.2rem);
    width: 107.2rem;
  }
  #page-home .top_taiken .img1::after {
    width: 89.6rem;
    height: 3.2rem;
  }
  #page-home .top_taiken .img2 {
    position: absolute;
    width: 75.2rem;
    right: 50%;
    bottom: 0;
  }
  #page-home .top_taiken .img2::after {
    width: 19.2rem;
    height: 19.2rem;
  }
  #page-home .top_concept .box1 {
    height: 68.8rem;
    position: relative;
    margin-bottom: 13.6rem;
  }
  #page-home .top_concept .box1 .txt, #page-home .top_concept .box1 .ph {
    position: absolute;
  }
  #page-home .top_concept .box1 .txt {
    z-index: 1;
    width: 80rem;
    left: 16rem;
    top: 11.7rem;
  }
  #page-home .top_concept .box1 .txt h3 {
    font-size: 1.6rem;
    text-align: center;
    border-bottom: 1px dotted;
    margin-bottom: 5.6rem;
  }
  #page-home .top_concept .box1 .txt h3 .txt_en {
    font-size: 4.6rem;
    display: block;
  }
  #page-home .top_concept .box1 .txt h4 {
    font-size: 3rem;
    background: url("../img/top_midasi_bg.png") top right repeat-y;
    background-size: auto 5rem;
    margin-bottom: 2.7rem;
  }
  #page-home .top_concept .box1 .ph {
    max-width: 136rem;
    left: 56rem;
    text-align: center;
  }
  #page-home .top_concept .box1 .ph img {
    width: 100%;
    height: 66.4rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-home .top_concept .box1 .ph::after {
    width: 89.6rem;
    height: 23.2rem;
  }
  #page-home .top_concept .top_room h3 {
    width: 44rem;
  }
  #page-home .top_concept .top_restaurant .txt {
    left: auto;
    right: 16rem;
    text-align: right;
  }
  #page-home .top_concept .top_restaurant .txt h3 {
    width: 40rem;
    margin-right: 0;
    margin-left: auto;
  }
  #page-home .top_concept .top_restaurant .txt h3 span {
    text-align: right;
  }
  #page-home .top_concept .top_restaurant .txt h4 {
    background: url("../img/top_restaurant_bg.png") top left repeat-y;
    background-size: auto 5rem;
  }
  #page-home .top_concept .top_restaurant .txt .view_more {
    margin-left: auto;
    margin-right: 3.5rem;
  }
  #page-home .top_concept .top_restaurant .ph {
    right: 56rem;
    left: auto;
  }
  #page-home .top_concept .top_restaurant .ph::after {
    left: auto;
    right: -2.4rem;
  }
  #page-home .top_concept .top_spa h3 {
    width: 50rem;
  }
  #page-home .top_concept .top_spa .txt h4 {
    background: url("../img/top_spa_bg.png") right top repeat-y;
    background-size: auto 5rem;
  }
  #page-home .top_other .box2 {
    height: 61.6rem;
    position: relative;
    margin-bottom: 16rem;
  }
  #page-home .top_other .box2 .txt {
    position: absolute;
    z-index: 1;
    width: 67.2rem;
    height: 54.4rem;
    right: 11.2rem;
    top: 3.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  #page-home .top_other .box2 .txt h3 {
    position: relative;
    margin-bottom: 7.1rem;
    width: 100%;
  }
  #page-home .top_other .box2 .txt h3::after {
    width: 42.4rem;
    content: "";
    display: block;
    border-bottom: 1px dotted #fff;
    margin: auto;
    position: absolute;
    bottom: -1.5rem;
    left: 0;
    right: 0;
  }
  #page-home .top_other .box2 .txt h3 span {
    display: block;
    font-size: 4.6rem;
    color: #fff;
  }
  #page-home .top_other .box2 .txt h4 {
    font-size: 2.4rem;
    margin-bottom: 3.2rem;
  }
  #page-home .top_other .box2 .ph {
    position: absolute;
    max-width: 106.4rem;
    right: 74.4rem;
  }
  #page-home .top_other .box2 .ph img {
    width: 106.4rem;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-home .top_other .box2.top_party .txt {
    left: 11.2rem;
    right: auto;
  }
  #page-home .top_other .box2.top_party .ph {
    left: 74.4rem;
    right: auto;
  }
  #page-home .top_wedding {
    height: 66.4rem;
    background: url("../img/top_wedding_ph.jpg") center top no-repeat;
    background-size: cover;
    position: relative;
  }
  #page-home .top_wedding .txt {
    position: absolute;
    width: 45.8rem;
    height: 43rem;
    background: #fff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    top: 13.2rem;
    right: calc( 252vw / 1920 * 100 );
  }
  #page-home .top_wedding .txt h3 {
    position: absolute;
    top: -4.3rem;
    left: 0;
    right: 0;
    margin: auto;
  }
  #page-home .top_wedding .txt h3 span {
    font-size: 4.6rem;
    display: block;
  }
  #page-home .top_wedding .txt h4 {
    font-size: 3rem;
    margin-bottom: 3.1rem;
  }
  #page-home .top_bottomarea {
    background: url("../img/bg_img.jpg");
    padding: 27.2rem 0 12.8rem;
  }
  #page-home .top_access {
    height: 61.6rem;
    position: relative;
  }
  #page-home .top_access .txt {
    position: absolute;
    width: 51.2rem;
    height: 47.2rem;
    top: 7.2rem;
    left: calc( 224vw / 1920 * 100 );
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
  }
  #page-home .top_access .txt h3 span {
    display: block;
    font-size: 4.6rem;
    line-height: 1.3;
  }
  #page-home .top_access .txt h4 {
    margin-top: 2.3rem;
    font-size: 2.2rem;
  }
  #page-home .top_access .map {
    margin-left: 48rem;
    height: 100%;
  }
  #page-home .top_bnr.under {
    display: none;
  }
}
/*新着一覧*/
#page-detail h2.hd::before {
  content: 'Topics';
}
#page-detail .plandetail .statement_link {
  text-align: right;
}
#page-detail .plandetail .statement_link a {
  display: inline-block;
  padding: 0 5rem 0 3rem;
  width: auto;
}

@media screen and (min-width: 781px) {
  #page-detail .column-inner {
    margin-bottom: 5rem;
    padding-bottom: 5rem;
    border-bottom: 1px solid #ececec;
  }
}
/*レストラン・バー*/
#page-restaurant h2.hd::before {
  content: 'Restaurant';
}
#page-restaurant .content > .inner {
  width: 100%;
}
#page-restaurant .restaurant_list {
  background: #F2F0EB;
}
#page-restaurant .restaurant_list .box1::before {
  content: "";
  display: block;
  position: absolute;
  width: 57.6rem;
  height: 37.6rem;
  background: rgba(217, 136, 105, 0.2);
  z-index: 1;
}
#page-restaurant .restaurant_list .box1 .txt {
  background: #fff;
  position: relative;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  color: #0D004C;
  z-index: 2;
}
#page-restaurant .restaurant_list .box1 .txt h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-restaurant .restaurant_list .box1 .txt p:nth-child(3) {
  line-height: 2;
}
#page-restaurant .ud_mainslide::before {
  content: "";
  display: block;
  width: 58.4rem;
  height: 57.2rem;
  background: rgba(83, 185, 172, 0.2);
  top: -2.4rem;
  left: -2.8rem;
  position: absolute;
}

@media screen and (min-width: 781px) {
  #page-restaurant .ud_mainslide {
    margin-bottom: 10rem;
  }
  #page-restaurant .restaurant_list {
    padding: 14.4rem 0;
  }
  #page-restaurant .restaurant_list .box1 {
    margin-bottom: 8rem;
    height: 64rem;
    position: relative;
  }
  #page-restaurant .restaurant_list .box1:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-restaurant .restaurant_list .box1::before {
    top: 17.6rem;
  }
  #page-restaurant .restaurant_list .box1 .txt {
    width: 62.4rem;
    height: 41.6rem;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  #page-restaurant .restaurant_list .box1 .txt .txt_en {
    font-size: 3.6rem;
  }
  #page-restaurant .restaurant_list .box1 .txt h4 {
    font-size: 2.4rem;
    margin: 1.3rem 0 2.8rem;
  }
  #page-restaurant .restaurant_list .box1 .txt .view_more {
    margin-top: 3rem;
  }
  #page-restaurant .restaurant_list .box1 .ph {
    max-width: 96rem;
    position: absolute;
  }
  #page-restaurant .restaurant_list .box1 .ph img {
    width: 100%;
    height: 64rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n+1)::before {
    right: calc(50% - 1.6rem);
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n+1) .txt {
    /*
    box-shadow: 2.4rem 2.4rem 0 rgba(217,136,105,0.2);
    */
    right: calc(50% - 8.8rem);
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n+1) .ph {
    left: calc(50% - 6.4rem);
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n)::before {
    left: calc(50% - 1.6rem);
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n) .txt {
    /*
    box-shadow: -2.4rem 2.4rem 0 rgba(217,136,105,0.2);
    */
    left: calc(50% - 8.8rem);
  }
  #page-restaurant .restaurant_list .box1:nth-child(2n) .ph {
    right: calc(50% - 6.4rem);
  }
}
#page-shiosai h2.hd::before {
  content: 'Restaurant "Shiosai"';
}

#page-cafe h2.hd::before {
  content: 'Cafe Terrace';
}

#page-bar h2.hd::before {
  content: 'Bar"Blue Lagoon"';
}

#page-shiosai .content > .inner, #page-cafe .content > .inner, #page-bar .content > .inner {
  width: 100%;
}
#page-shiosai .content ul, #page-cafe .content ul, #page-bar .content ul {
  list-style: none;
  padding: 0;
}
#page-shiosai .column-inner, #page-cafe .column-inner, #page-bar .column-inner {
  margin: 0;
  padding: 0;
  position: relative;
}
#page-shiosai .column-inner h3, #page-cafe .column-inner h3, #page-bar .column-inner h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-shiosai .column-inner h4, #page-cafe .column-inner h4, #page-bar .column-inner h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-shiosai .cont_shiosai, #page-cafe .cont_shiosai, #page-bar .cont_shiosai {
  text-align: center;
  background: #F2F0EB;
  color: #0D004C;
  line-height: 2;
}
#page-shiosai .cont_shiosai .btn, #page-cafe .cont_shiosai .btn, #page-bar .cont_shiosai .btn {
  max-width: 96rem;
  margin: auto;
  display: flex;
  justify-content: center;
}
#page-shiosai .cont_shiosai .btn li, #page-cafe .cont_shiosai .btn li, #page-bar .cont_shiosai .btn li {
  width: calc((100% - 1.6rem) / 2);
  background: #0D004C;
}
#page-shiosai .cont_shiosai .btn li:nth-child(1), #page-cafe .cont_shiosai .btn li:nth-child(1), #page-bar .cont_shiosai .btn li:nth-child(1) {
  margin-right: 1.6rem;
}
#page-shiosai .cont_shiosai .btn li img, #page-cafe .cont_shiosai .btn li img, #page-bar .cont_shiosai .btn li img {
  width: 100%;
}
#page-shiosai .cont_menu, #page-cafe .cont_menu, #page-bar .cont_menu {
  max-width: 96rem;
  margin: auto;
}
#page-shiosai .cont_menu h3, #page-cafe .cont_menu h3, #page-bar .cont_menu h3 {
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  border-bottom: 1px solid #76718E;
  margin-bottom: 1.6rem;
}
#page-shiosai .cont_menu .attention, #page-cafe .cont_menu .attention, #page-bar .cont_menu .attention {
  margin-left: 1em;
  text-indent: -1em;
}
#page-shiosai .photos-bottom, #page-cafe .photos-bottom, #page-bar .photos-bottom {
  max-width: 96rem;
  width: 100% !important;
  margin: auto;
}
#page-shiosai .photos-bottom img, #page-cafe .photos-bottom img, #page-bar .photos-bottom img {
  width: 100% !important;
}
#page-shiosai .cont_chef, #page-cafe .cont_chef, #page-bar .cont_chef {
  background: #F2F0EB;
}
#page-shiosai .cont_chef .txt, #page-cafe .cont_chef .txt, #page-bar .cont_chef .txt {
  background: rgba(255, 255, 255, 0.9);
}
#page-shiosai .cont_chef .txt::after, #page-cafe .cont_chef .txt::after, #page-bar .cont_chef .txt::after {
  content: "";
  display: block;
  position: absolute;
  border: 1px solid #9B98AB;
  margin: 1.6rem;
  width: calc(100% - 3.2rem);
  height: calc(100% - 3.2rem);
  left: 0;
  top: 0;
}
#page-shiosai .cont_chef .txt .txt_en, #page-cafe .cont_chef .txt .txt_en, #page-bar .cont_chef .txt .txt_en {
  color: #0D004C;
}
#page-shiosai .cont_chef .txt h3 span, #page-cafe .cont_chef .txt h3 span, #page-bar .cont_chef .txt h3 span {
  display: block;
}
#page-shiosai .cont_chef .txt h3 span:nth-of-type(2), #page-cafe .cont_chef .txt h3 span:nth-of-type(2), #page-bar .cont_chef .txt h3 span:nth-of-type(2) {
  display: inline-block;
  font-size: 1.6rem;
}
#page-shiosai .cont_chef .txt .keireki, #page-cafe .cont_chef .txt .keireki, #page-bar .cont_chef .txt .keireki {
  font-size: 1.4rem;
}
#page-shiosai .box1, #page-cafe .box1, #page-bar .box1 {
  max-width: 96rem;
  margin: auto;
  line-height: 2;
}
#page-shiosai .box1 h4, #page-shiosai .box1 .txt_en, #page-cafe .box1 h4, #page-cafe .box1 .txt_en, #page-bar .box1 h4, #page-bar .box1 .txt_en {
  text-align: center;
  color: #0D004C;
}
#page-shiosai .box1 .txt_en, #page-cafe .box1 .txt_en, #page-bar .box1 .txt_en {
  margin-bottom: 0;
}
#page-shiosai .box1 ul li, #page-cafe .box1 ul li, #page-bar .box1 ul li {
  border-bottom: 1px solid #9B98AB;
}
#page-shiosai .box1 p, #page-cafe .box1 p, #page-bar .box1 p {
  margin-bottom: 2em;
}
#page-shiosai .box1 .attention, #page-cafe .box1 .attention, #page-bar .box1 .attention {
  margin: 0 0 0 1em;
  text-indent: -1em;
}

@media screen and (min-width: 781px) {
  #page-shiosai .cont_shiosai, #page-cafe .cont_shiosai, #page-bar .cont_shiosai {
    padding: 10.6rem 0;
    margin-bottom: 12.8rem;
  }
  #page-shiosai .cont_shiosai .txt_en, #page-cafe .cont_shiosai .txt_en, #page-bar .cont_shiosai .txt_en {
    font-size: 3.6rem;
  }
  #page-shiosai .cont_shiosai h3, #page-cafe .cont_shiosai h3, #page-bar .cont_shiosai h3 {
    font-size: 2.2rem;
    margin-bottom: 5rem;
  }
  #page-shiosai .cont_shiosai h4, #page-cafe .cont_shiosai h4, #page-bar .cont_shiosai h4 {
    font-size: 1.8rem;
    margin-bottom: 3.3rem;
  }
  #page-shiosai .cont_shiosai .ud_mainslide, #page-cafe .cont_shiosai .ud_mainslide, #page-bar .cont_shiosai .ud_mainslide {
    margin-bottom: 12rem;
    margin-top: 10rem;
  }
  #page-shiosai .cont_menu, #page-cafe .cont_menu, #page-bar .cont_menu {
    margin-bottom: 1.6rem;
  }
  #page-shiosai .cont_menu h3, #page-cafe .cont_menu h3, #page-bar .cont_menu h3 {
    font-size: 2.2rem;
  }
  #page-shiosai .cont_menu .attention, #page-cafe .cont_menu .attention, #page-bar .cont_menu .attention {
    font-size: 1.2rem;
  }
  #page-shiosai .photos-bottom, #page-cafe .photos-bottom, #page-bar .photos-bottom {
    margin-bottom: 11.2rem;
  }
  #page-shiosai .cont_chef, #page-cafe .cont_chef, #page-bar .cont_chef {
    width: 140rem;
    padding: 10.4rem 10.8rem;
    margin-bottom: 19.2rem;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page-shiosai .cont_chef .txt, #page-cafe .cont_chef .txt, #page-bar .cont_chef .txt {
    position: absolute;
    width: 62.7rem;
    padding: 6.8rem 7.5rem;
    left: 11.6rem;
    top: 15.2rem;
  }
  #page-shiosai .cont_chef .txt .txt_en, #page-cafe .cont_chef .txt .txt_en, #page-bar .cont_chef .txt .txt_en {
    font-size: 3.6rem;
    margin-bottom: 2.9rem;
  }
  #page-shiosai .cont_chef .txt h3, #page-cafe .cont_chef .txt h3, #page-bar .cont_chef .txt h3 {
    font-size: 3.4rem;
    font-weight: normal;
    margin-bottom: 3rem;
  }
  #page-shiosai .cont_chef .txt h3 span, #page-cafe .cont_chef .txt h3 span, #page-bar .cont_chef .txt h3 span {
    font-size: 1.8rem;
  }
  #page-shiosai .cont_chef .txt .keireki, #page-cafe .cont_chef .txt .keireki, #page-bar .cont_chef .txt .keireki {
    border-bottom: 1px solid #9B98AB;
    margin-bottom: 1em;
    padding-bottom: 1em;
  }
  #page-shiosai .cont_chef .ph, #page-cafe .cont_chef .ph, #page-bar .cont_chef .ph {
    text-align: right;
  }
  #page-shiosai .box1, #page-cafe .box1, #page-bar .box1 {
    margin-bottom: 12rem;
  }
  #page-shiosai .box1 .txt_en, #page-cafe .box1 .txt_en, #page-bar .box1 .txt_en {
    font-size: 3.6rem;
  }
  #page-shiosai .box1 h4, #page-cafe .box1 h4, #page-bar .box1 h4 {
    font-size: 1.8rem;
    margin-bottom: 4rem;
  }
  #page-shiosai .box1 ul li, #page-cafe .box1 ul li, #page-bar .box1 ul li {
    margin-bottom: 1.7rem;
    padding-bottom: 1rem;
  }
}
/*スパ*/
#page-spa h2.hd::before {
  content: 'Spa Blue Lagoon';
}
#page-spa h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", serif;
  font-weight: normal;
  margin-bottom: 0;
}
#page-spa table {
  border: none;
}
#page-spa table tr th, #page-spa table tr td {
  background: none;
  border: solid #9B98AB;
  border-width: 1px 0 0 0;
}
#page-spa table tr:nth-last-child(1) th, #page-spa table tr:nth-last-child(1) td {
  border-bottom: 1px solid #9B98AB;
}
#page-spa table tr th {
  font-weight: bold;
}
#page-spa table tr td .more {
  margin: 0.8rem 0 0;
}
#page-spa table tr td .more a {
  margin: 0;
}
#page-spa table tr td .more a::before {
  content: "";
  position: absolute;
  right: 2rem;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 7px;
  height: 7px;
  border-top: 1px solid;
  border-right: 1px solid;
  border-bottom: none;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#page-spa table tr td ul {
  padding: 0;
  list-style: none;
}
#page-spa table tr td ul li {
  margin-left: 1em;
  text-indent: -1em;
}
#page-spa table tr td ul li::before {
  content: "・";
}
#page-spa .column {
  position: relative;
}
#page-spa .spa_box_title {
  position: relative;
  color: #0D004C;
}
#page-spa .spa_box_spa {
  position: relative;
  color: #fff;
  background: url("../img/spa_box2_photo01.jpg") left top no-repeat;
  background-size: cover;
}
#page-spa .spa_box_spa::before {
  content: "";
  display: block;
  width: 67.2rem;
  height: 46.4rem;
  top: -2.4rem;
  left: -2.4rem;
  position: absolute;
  background: rgba(83, 175, 182, 0.2);
}
#page-spa .spa_box_spa::after {
  content: "";
  background: url("../img/spa_box2_photo01.jpg") left top no-repeat;
  background-size: cover;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}
#page-spa .spa_box_spa .txt {
  position: relative;
  z-index: 2;
}
#page-spa .spa_box_spa .txt_en {
  border-bottom: 1px solid;
}
#page-spa .spa_box_food {
  position: relative;
  color: #0D004C;
}
#page-spa .spa_box_food::before {
  content: "";
  display: block;
  position: absolute;
  background: rgba(83, 175, 182, 0.2);
  z-index: -1;
}
#page-spa .spa_box_food .txt_en {
  color: #94C6DC;
}
#page-spa .spa_box_table .txt .txt_en, #page-spa .spa_box_table .txt h3 {
  color: #0D004C;
}
#page-spa .spa_box_terms {
  background: #F2F0EB;
}
#page-spa .spa_box_terms .txt .txt_en {
  text-align: center;
  color: #0D004C;
}
#page-spa .spa_box_terms .txt h3 {
  text-align: center;
}
#page-spa .spa_box_terms .txt ul {
  list-style: none;
  padding: 0;
}
#page-spa .spa_box_terms .txt ul li {
  margin: 0 1em 0 0;
  padding: 0.5em 1em 0.5em 2em;
  text-indent: -1em;
  border-bottom: 1px solid #9B98AB;
}
#page-spa .spa_box_terms .txt ul li::before {
  content: "・";
}
#page-spa .spa_box_inquiry {
  background: url("../img/spa_bg_img2.jpg");
  background-size: cover;
  text-align: center;
  color: #0D004C;
}
#page-spa .spa_box_inquiry p {
  font-weight: bold;
}
#page-spa .spa_box_inquiry p.more {
  font-weight: normal;
  margin: 3.2rem 0 2rem;
}
#page-spa .spa_box_inquiry p.more a {
  background: #fff;
}
#page-spa .spa_box_inquiry p.more a::before {
  border: none;
  width: 2.6rem;
  height: 2rem;
  position: static;
  transform: none;
  margin: auto 1.5rem auto 0;
  background: url("../img/mail_icon.svg");
  background-size: 100%;
}
#page-spa .spa_box_inquiry p.more a::after {
  content: "";
  position: absolute;
  right: 2rem;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 7px;
  height: 7px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#page-spa .spa_box_inquiry p.more a:hover {
  background: #0D004C;
}
#page-spa .spa_box_inquiry p.more a:hover::before {
  background: url("../img/mail_icon_w.svg");
  background-size: 100%;
}
#page-spa .spa_box_inquiry .txt_en {
  font-weight: normal;
}

@media screen and (min-width: 781px) {
  #page-spa .content .inner {
    width: 100%;
  }
  #page-spa .column-inner {
    margin: 0;
    padding: 0;
  }
  #page-spa .spa_box_title {
    height: 98.4rem;
    margin-bottom: 6.4rem;
  }
  #page-spa .spa_box_title .txt {
    margin: 18.4rem 0 0 calc(50% - 12.2rem);
  }
  #page-spa .spa_box_title .txt h3 {
    font-size: 4rem;
  }
  #page-spa .spa_box_title .txt .txt_en {
    font-size: 2rem;
    margin-bottom: 8.8rem;
  }
  #page-spa .spa_box_title .txt p {
    line-height: 2;
  }
  #page-spa .spa_box_title .txt .attention {
    font-size: 1.4rem;
  }
  #page-spa .spa_box_title .ph1, #page-spa .spa_box_title .ph2 {
    position: absolute;
    z-index: -1;
    overflow: hidden;
  }
  #page-spa .spa_box_title .ph1 img, #page-spa .spa_box_title .ph2 img {
    object-fit: cover;
    font-family: 'object-fit: cover;';
    height: 100%;
  }
  #page-spa .spa_box_title .ph1 {
    right: calc(50% - 15.2rem);
    top: 0;
    max-width: 111.2rem;
    width: calc(100% - (50% - 15.2rem));
  }
  #page-spa .spa_box_title .ph1 img {
    width: 111.2rem;
  }
  #page-spa .spa_box_title .ph2 {
    left: calc(50% + 22.4rem);
    bottom: 0;
    max-width: 49.6rem;
  }
  #page-spa .spa_box_title .ph2 img {
    width: 49.6rem;
  }
  #page-spa .spa_box_spa {
    margin-left: 16rem;
    margin-bottom: 11.6rem;
    height: 70rem;
    display: flex;
    align-items: flex-end;
  }
  #page-spa .spa_box_spa::before {
    content: "";
    display: block;
    width: 67.2rem;
    height: 46.4rem;
    top: -2.4rem;
    left: -2.4rem;
    z-index: -1;
    position: absolute;
    background: rgba(83, 175, 182, 0.2);
  }
  #page-spa .spa_box_spa p {
    margin-left: 20.8rem;
    width: 57.6rem;
    margin-bottom: 4rem;
  }
  #page-spa .spa_box_spa p.txt_en {
    margin-left: 13.6rem;
    font-size: 5rem;
    width: 41.6rem;
    padding-left: 7.5rem;
    margin-bottom: 2.7rem;
  }
  #page-spa .spa_box_food {
    width: 96rem;
    height: 67.2rem;
    margin: 0 auto 20.8rem;
  }
  #page-spa .spa_box_food::before {
    left: -2.4rem;
    top: 20.8rem;
    width: 40.8rem;
    height: 27.2rem;
  }
  #page-spa .spa_box_food .txt {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  #page-spa .spa_box_food .txt .txt_en {
    text-align: right;
    font-size: 4rem;
  }
  #page-spa .spa_box_food .ph1, #page-spa .spa_box_food .ph2 {
    position: absolute;
  }
  #page-spa .spa_box_food .ph1 {
    width: 45.6rem;
    top: 3.2rem;
  }
  #page-spa .spa_box_food .ph2 {
    bottom: 0;
    right: 0;
    width: 45.6rem;
  }
  #page-spa .column:nth-of-type(5) {
    background: url("../img/spa_bg_img1.jpg") center top repeat-y;
    background-size: 100%;
    margin-bottom: 5.6rem;
  }
  #page-spa .spa_box_table {
    width: 96rem;
    margin: auto;
    padding: 9.6rem 0 14.4rem;
    display: flex;
    justify-content: flex-end;
  }
  #page-spa .spa_box_table .txt {
    width: 51.2rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #page-spa .spa_box_table .txt h3 {
    font-size: 2rem;
  }
  #page-spa .spa_box_table .txt .txt_en {
    font-size: 4rem;
    margin-right: 1em;
    margin-bottom: 2rem;
  }
  #page-spa .spa_box_table .txt table {
    width: 100%;
  }
  #page-spa .spa_box_table .txt table th {
    width: 8em;
    vertical-align: top;
  }
  #page-spa .spa_box_table .txt table td .more a {
    width: 21.6rem;
    height: 3rem;
  }
  #page-spa .spa_box_table .ph1 {
    position: absolute;
    top: -5.6rem;
    right: calc(50% + 8.8rem);
    max-width: 87.2rem;
    width: 50vw;
    overflow: hidden;
  }
  #page-spa .spa_box_table .ph1 img {
    width: 87.2rem;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-spa .spa_box_spring {
    justify-content: flex-start;
    padding-top: 13.8rem;
  }
  #page-spa .spa_box_spring .ph1 {
    left: calc(50% + 8.8rem);
  }
  #page-spa .spa_box_terms {
    padding: 10.2rem 0 10rem;
  }
  #page-spa .spa_box_terms .txt {
    width: 96rem;
    margin: auto;
  }
  #page-spa .spa_box_terms .txt .txt_en {
    font-size: 3.6rem;
    margin-bottom: 1.2rem;
  }
  #page-spa .spa_box_terms .txt h3 {
    font-size: 1.8rem;
    margin-bottom: 5.7rem;
  }
  #page-spa .spa_box_terms .txt p {
    margin: 4rem 0;
    padding: 0 1em;
  }
  #page-spa .spa_box_inquiry {
    padding: 11.2rem 0 12rem;
  }
  #page-spa .spa_box_inquiry .txt_en {
    font-size: 3.6rem;
    margin-bottom: 1.4rem;
  }
  #page-spa .spa_box_inquiry h3 {
    font-size: 1.8rem;
    margin-bottom: 4.9rem;
  }
}
/*アクセス*/
#page-access h2.hd::before {
  content: 'Access & Information';
}
#page-access .content h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
  text-align: center;
}
#page-access .content h3.title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 4rem;
}
#page-access .content h3.title span {
  margin: 0 1em;
}
#page-access .content h3.title::before, #page-access .content h3.title::after {
  content: "";
  display: block;
  height: 1px;
  background: #0D004C;
  flex: 1 0 0%;
}
#page-access .content .txt_en {
  text-align: center;
  color: #0D004C;
}
#page-access .content iframe {
  width: 100%;
}
#page-access .content ul {
  list-style: none;
  padding: 0;
}
#page-access .content ul img {
  width: 100%;
}
#page-access .content ul li h4 {
  font-weight: bold;
  color: #0D004C;
  display: flex;
  align-items: center;
  margin-bottom: 1.6rem;
}
#page-access .content ul li h4::before {
  content: "";
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  margin-right: 1.6rem;
}
#page-access .content ul li:nth-child(1) h4::before {
  background: url("../img/icon_car.svg");
  background-size: 100%;
}
#page-access .content ul li:nth-child(2) h4::before {
  background: url("../img/icon_train.svg");
  background-size: 100%;
}
#page-access .content .box dl {
  display: inline-block;
}
#page-access .content .box dl dt {
  border: solid #9B98AB;
  border-width: 1px 0 1px 0;
  padding: 0.3em 1em;
  font-weight: bold;
  color: #0D004C;
}
#page-access .content .box dl dd {
  border-bottom: 1px solid #9B98AB;
  padding: 0.3em 1em;
}
#page-access .content .btn li a {
  text-align: center;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #0D004C;
  color: #0D004C;
  text-decoration: none;
}
#page-access .content .btn li a::before {
  content: "";
  display: block;
  background: url("../img/icon_bus.svg") center center no-repeat;
  background-size: 100%;
}
#page-access .content .btn li a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#page-access .content .btn li a:hover {
  background: #53B9AC;
}
#page-access .content .information {
  background: #F2F0EB;
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  width: 100vw;
  text-align: center;
}
#page-access .content .information .info_box {
  background: #fff;
  text-align: left;
}
#page-access .content .information .info_box p {
  margin-top: 1em;
}

@media screen and (min-width: 781px) {
  #page-access .content h3 {
    font-size: 1.8rem;
  }
  #page-access .content h3.title {
    font-size: 2.8rem;
    margin-bottom: 4.3rem;
  }
  #page-access .content h3.title.second {
    margin-top: 10rem;
  }
  #page-access .content .txt_en {
    font-size: 3.6rem;
  }
  #page-access .content .map {
    margin: 4rem 0 7rem;
  }
  #page-access .content iframe {
    height: 41.5rem;
  }
  #page-access .content ul h4 {
    font-size: 1.8rem;
  }
  #page-access .content ul li {
    margin-bottom: 6.4rem;
  }
  #page-access .content ul li:nth-last-child(1) {
    margin-bottom: 2.4rem;
  }
  #page-access .content .box {
    margin-bottom: 6rem;
  }
  #page-access .content .box:nth-of-type(1) {
    margin-top: 6rem;
  }
  #page-access .content .box h5 {
    font-size: 1.8rem;
  }
  #page-access .content .box p {
    margin-left: 1.3rem;
  }
  #page-access .content .box dl {
    margin-top: 2rem;
  }
  #page-access .content .btn {
    margin-top: 2.3rem;
    margin-left: 2.8rem;
  }
  #page-access .content .btn li {
    margin-bottom: 1.6rem;
    width: 40.8rem;
  }
  #page-access .content .btn li a {
    height: 4.8rem;
    border-radius: 2.4rem;
  }
  #page-access .content .btn li a::before {
    width: 3.2rem;
    height: 3.2rem;
    margin-left: 3.2rem;
  }
  #page-access .content .btn li a::after {
    margin: 0 2.6rem;
  }
  #page-access .content .information {
    padding-top: 10.2rem;
    padding-bottom: 9.6rem;
  }
  #page-access .content .information > p:not(.txt_en) {
    margin: 5rem 0;
  }
  #page-access .content .information .info_box {
    padding: 3.2rem;
    margin-top: 3.2rem;
  }
  #page-access .content .information .info_box p {
    margin-left: 1em;
  }
}
/*客室*/
#page-stay h2.hd {
  letter-spacing: 1em;
}
#page-stay h2.hd::before {
  content: 'Guest Room';
  letter-spacing: 0;
}
#page-stay .column-inner {
  margin: 0;
  padding: 0;
}
#page-stay .content h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
}
#page-stay .content ul {
  list-style: none;
  padding: 0;
}
#page-stay .content .txt_en {
  color: #0D004C;
}
#page-stay .top_area {
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  text-align: center;
  width: 100vw;
  position: relative;
}
#page-stay .top_area p {
  color: #0D004C;
}
#page-stay .top_area .ph1::before, #page-stay .top_area .ph2::before {
  content: "";
  display: block;
  background: rgba(83, 185, 172, 0.2);
  position: absolute;
}
#page-stay .type_list {
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  width: 100vw;
  background: url("../img/bg_img.jpg");
  background-size: 100%;
  text-align: center;
}
#page-stay .type_list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#page-stay .type_list ul li .ph {
  background: #000000;
  border-radius: 0 0 1rem 0;
}
#page-stay .type_list ul li .ph a {
  display: block;
  position: relative;
}
#page-stay .type_list ul li .ph a span {
  position: absolute;
}
#page-stay .type_list ul li .ph a span.caption {
  display: block;
  left: 0;
  top: 0;
  background: #53B9AC;
  color: #fff;
}
#page-stay .type_list ul li .ph a span.more {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: auto;
  color: #fff;
}
#page-stay .type_list ul li .ph a span.more::after {
  content: "";
  display: block;
  height: 2.2rem;
  width: .6rem;
  border-bottom: 2px solid #fff;
  border-left: 1px solid #fff;
  transition: all  0.3s ease;
  transform: skewY(-50deg);
  background: none;
}
#page-stay .type_list ul li .ph a img {
  transition: all  0.3s ease;
  width: 100%;
  border-radius: 0 0 1rem 0;
}
#page-stay .type_list ul li .ph a:hover {
  opacity: 1;
}
#page-stay .type_list ul li .ph a:hover img {
  opacity: 0.7;
}
#page-stay .type_list ul li .txt {
  color: #0D004C;
}
#page-stay .type_list ul li .txt h4 {
  border-bottom: 1px dotted;
  margin-top: 1.6rem;
}
#page-stay .roomtype {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  position: relative;
}
#page-stay .roomtype .roomtype_toptxt {
  text-align: center;
}
#page-stay .roomtype .roomtype_toptxt h3 {
  border-bottom: 1px dotted;
}
#page-stay .roomtype .roomtype_top {
  max-width: 1400px;
  margin: auto;
}
#page-stay .roomtype .roomtype_top img {
  width: 100%;
}
#page-stay .roomtype .roomtype_bottom .txt .en_caption {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #0D004C;
  font-weight: normal;
}
#page-stay .roomtype .roomtype_bottom .txt h4 {
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  color: #0D004C;
}
#page-stay .roomtype .roomtype_bottom .txt table {
  border: none;
  width: 100%;
  border-bottom: 1px solid #9C9C9C;
}
#page-stay .roomtype .roomtype_bottom .txt table tr th, #page-stay .roomtype .roomtype_bottom .txt table tr td {
  border: solid #9C9C9C;
  border-width: 1px 0 0 0;
  background: none;
}
#page-stay .roomtype .roomtype_bottom .txt .more a {
  border-radius: 0;
  border: none;
  background: #53B9AC;
  color: #fff;
  width: 100%;
}
#page-stay .roomtype .roomtype_bottom .txt .more a:hover {
  background: #0D004C;
}
#page-stay .roomtype .roomtype_bottom .txt .amenity {
  background: none;
}
#page-stay .roomtype .roomtype_bottom .txt .amenity a {
  color: #806940;
  border-bottom: 1px dotted;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#page-stay .roomtype .roomtype_bottom .txt .amenity a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
#page-stay .roomtype .roomtype_bottom .txt .amenity a:hover {
  text-decoration: none;
  color: #53B9AC;
}
#page-stay .roomtype .roomtype_bottom .ph .caption {
  color: #0D004C;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
#page-stay .roomtype .roomtype_bottom .ph .caption::after {
  content: "";
  display: block;
  flex: 1 0 0%;
  margin-left: 1em;
  height: 1px;
  border-bottom: 1px dotted;
}
#page-stay .roomtype .roomtype_bottom .ph ul {
  display: flex;
  justify-content: space-between;
}
#page-stay .roomtype.twin::before {
  content: "";
  width: 100%;
  display: block;
  background: #F2F0EB;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}
#page-stay .roomtype.double {
  background: url("../img/room_bg_double.jpg") center top no-repeat;
  background-size: auto 80rem;
}
#page-stay .roomtype.suite {
  background: url("../img/room_bg_suite.jpg") center top no-repeat;
  background-size: auto 80rem;
}
#page-stay #amenity {
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  width: 100vw;
  background: url("../img/bg_img.jpg");
  background-size: 100%;
}
#page-stay #amenity .amenity_toptxt {
  text-align: center;
  color: #0D004C;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-stay #amenity .amenity_toptxt p:nth-last-child(1) {
  font-weight: bold;
}
#page-stay #amenity ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
#page-stay #amenity ul li {
  position: relative;
}
#page-stay #amenity ul li::after {
  content: "";
  display: block;
  background: rgba(13, 0, 76, 0.17);
  position: absolute;
}
#page-stay #amenity ul li img {
  width: 100%;
  position: relative;
  z-index: 1;
}
#page-stay #amenity table {
  border: none;
}
#page-stay #amenity table tr th {
  border: solid #9C9C9C;
  border-width: 1px 0 0 0;
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}
#page-stay #amenity table tr td {
  border: none;
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}
#page-stay #amenity table tr:nth-last-child(1) td {
  border: solid #9C9C9C;
  border-width: 0 0 1px 0;
}

@media screen and (min-width: 781px) {
  #page-stay .top_area {
    height: 120rem;
  }
  #page-stay .top_area h3 {
    font-size: 4rem;
    margin: 0;
  }
  #page-stay .top_area .txt_en {
    font-size: 2rem;
    margin-bottom: 4rem;
  }
  #page-stay .top_area .attention {
    font-size: 1.2rem;
  }
  #page-stay .top_area ul {
    margin: 2.4rem 0 4rem;
  }
  #page-stay .top_area .ph1, #page-stay .top_area .ph2 {
    position: absolute;
    height: 60rem;
  }
  #page-stay .top_area .ph1::before, #page-stay .top_area .ph2::before {
    height: 2.4rem;
  }
  #page-stay .top_area .ph1 img, #page-stay .top_area .ph2 img {
    width: 100%;
    height: 60rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-stay .top_area .ph1 {
    bottom: 24rem;
    right: calc(50% - 9.6rem);
  }
  #page-stay .top_area .ph1::before {
    width: 41.6rem;
    bottom: -2.4rem;
    right: 64rem;
  }
  #page-stay .top_area .ph2 {
    bottom: 9.6rem;
    left: calc(50% + 4rem);
  }
  #page-stay .top_area .ph2::before {
    width: 63.2rem;
    top: -2.4rem;
    left: 28.8rem;
  }
  #page-stay .type_list {
    padding-top: 8rem;
    padding-bottom: 7rem;
  }
  #page-stay .type_list .txt_en {
    font-size: 4.6rem;
  }
  #page-stay .type_list h3 {
    font-size: 1.8rem;
  }
  #page-stay .type_list ul li {
    width: 22.8rem;
    margin-bottom: 4.8rem;
  }
  #page-stay .type_list ul li .ph a span.caption {
    font-size: 1.2rem;
    width: 6.4rem;
    line-height: 2.6rem;
  }
  #page-stay .type_list ul li .ph a span.more {
    display: none;
    transition: all  0.3s ease;
  }
  #page-stay .type_list ul li .ph a:hover span.more {
    display: flex;
  }
  #page-stay .type_list ul li .txt h4 {
    font-weight: bold;
    margin-bottom: 0.5rem;
    font-size: 1.6rem;
  }
  #page-stay .type_list ul li .txt p {
    font-size: 12px;
  }
  #page-stay .roomtype {
    padding: 13.4rem 0 10.4rem;
  }
  #page-stay .roomtype .roomtype_toptxt {
    width: 96rem;
    margin: 0 auto 6.6rem;
  }
  #page-stay .roomtype .roomtype_toptxt .txt_en {
    font-size: 4.6rem;
  }
  #page-stay .roomtype .roomtype_toptxt h3 {
    font-size: 1.8rem;
    padding-bottom: 1.6rem;
    margin-bottom: 3.2rem;
  }
  #page-stay .roomtype .roomtype_box {
    margin-bottom: 14.6rem;
  }
  #page-stay .roomtype .roomtype_bottom {
    width: 118.4rem;
    margin: 5.6rem auto 0;
    display: flex;
    justify-content: space-between;
  }
  #page-stay .roomtype .roomtype_bottom .txt .en_caption {
    font-size: 4.2rem;
    line-height: 1;
    margin-bottom: 0.9rem;
  }
  #page-stay .roomtype .roomtype_bottom .txt h4 {
    font-size: 1.8rem;
    line-height: 1;
  }
  #page-stay .roomtype .roomtype_bottom .txt table {
    margin: 2.3rem 0 1.4rem;
    width: 38.4rem;
  }
  #page-stay .roomtype .roomtype_bottom .txt table th {
    width: 11.2rem;
    text-align: center;
  }
  #page-stay .roomtype .roomtype_bottom .txt table td {
    padding-left: 0;
    padding-right: 0;
  }
  #page-stay .roomtype .roomtype_bottom .txt .more {
    margin: 3rem 0 2.4rem;
    width: 38.4rem;
  }
  #page-stay .roomtype .roomtype_bottom .txt .more a {
    font-size: 1.6rem;
    height: 4.8rem;
  }
  #page-stay .roomtype .roomtype_bottom .txt .amenity a {
    width: 24.7rem;
  }
  #page-stay .roomtype .roomtype_bottom .ph .caption {
    width: 36rem;
    font-size: 1.4rem;
    margin-bottom: 2.2rem;
  }
  #page-stay .roomtype .roomtype_bottom .ph ul li:nth-last-child(1) {
    margin-left: 1.6rem;
  }
  #page-stay .roomtype .roomtype_bottom .ph ul li img {
    width: 36rem;
  }
  #page-stay .roomtype.twin::before {
    height: 80rem;
  }
  #page-stay #amenity {
    padding-top: 10.1rem;
    padding-bottom: 13.6rem;
  }
  #page-stay #amenity .amenity_toptxt {
    margin-bottom: 8.1rem;
  }
  #page-stay #amenity .amenity_toptxt .txt_en {
    font-size: 4.6rem;
  }
  #page-stay #amenity .amenity_toptxt h3 {
    font-size: 2.6rem;
  }
  #page-stay #amenity ul {
    margin-bottom: 4.8rem;
  }
  #page-stay #amenity ul li::after {
    width: 41.6rem;
    height: 27.2rem;
    right: -0.8rem;
    bottom: -0.8rem;
  }
  #page-stay #amenity ul li:nth-child(1) {
    width: 48rem;
  }
  #page-stay #amenity ul li:nth-child(2) {
    width: 44rem;
    margin-top: 2.4rem;
  }
}
/*FAQ*/
#page-faq h2.hd::before {
  content: 'Faq';
  letter-spacing: 0;
}
#page-faq .column:nth-child(3) {
  padding-top: 0;
}
#page-faq .column .pagetop_nav {
  flex-wrap: wrap;
  margin-bottom: 0;
}
#page-faq .column .pagetop_nav li {
  margin-bottom: 1.8rem;
}
#page-faq .column .column-inner {
  padding: 0;
  margin: 0;
}
#page-faq .column h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  text-align: center;
  margin-bottom: 3rem;
  font-weight: normal;
  padding-top: 10rem;
}
#page-faq .column dl dt, #page-faq .column dl dd {
  position: relative;
  padding-left: 2em;
}
#page-faq .column dl dt::before, #page-faq .column dl dd::before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  margin-right: 0.5rem;
  line-height: 1.2;
}
#page-faq .column dl dt {
  margin-bottom: 1rem;
  font-weight: bold;
}
#page-faq .column dl dt::before {
  content: "Q.";
  color: #53B9AC;
  font-family: 'Sorts Mill Goudy', serif;
  font-weight: normal;
}
#page-faq .column dl dd {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #9B98AB;
}
#page-faq .column dl dd::before {
  content: "A.";
  color: #0D004C;
  font-family: 'Sorts Mill Goudy', serif;
}

@media screen and (min-width: 781px) {
  #page-faq .column h3 {
    font-size: 3rem;
  }
  #page-faq .column dl dt::before, #page-faq .column dl dd::before {
    font-size: 2.5rem;
  }
}
#page-gallery h2.hd::before {
  content: 'Gallery';
  letter-spacing: 0;
}
#page-gallery .photos-bottom {
  width: 100% !important;
}
#page-gallery .photos-bottom img {
  width: 100% !important;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  transition: all  0.3s ease;
}
#page-gallery .column h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  text-align: center;
}
#page-gallery .column .movie video {
  width: 100%;
  margin-bottom: 2rem;
}
#page-gallery .column .txt_en {
  text-align: center;
  color: #0D004C;
}

@media screen and (min-width: 781px) {
  #page-gallery .photos-bottom div {
    margin-bottom: 0.5rem;
    margin-right: 0.5rem;
    overflow: hidden;
    float: left;
    width: calc(25% - 0.5rem);
    height: 16rem;
    text-align: center;
  }
  #page-gallery .photos-bottom div img {
    width: 24rem !important;
    height: 100%;
  }
  #page-gallery .photos-bottom div a:hover img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  #page-gallery .photos-bottom div:nth-child(3), #page-gallery .photos-bottom div:nth-child(10), #page-gallery .photos-bottom div:nth-child(21), #page-gallery .photos-bottom div:nth-child(28), #page-gallery .photos-bottom div:nth-child(39), #page-gallery .photos-bottom div:nth-child(46) {
    width: calc(50% - 0.5rem);
    height: calc(16rem * 2 + 0.49rem);
  }
  #page-gallery .photos-bottom div:nth-child(3) img, #page-gallery .photos-bottom div:nth-child(10) img, #page-gallery .photos-bottom div:nth-child(21) img, #page-gallery .photos-bottom div:nth-child(28) img, #page-gallery .photos-bottom div:nth-child(39) img, #page-gallery .photos-bottom div:nth-child(46) img {
    width: 48rem !important;
    height: 100%;
  }
  #page-gallery .photos-bottom div:nth-child(3) {
    float: right;
    height: calc(16rem * 2 + 0.5rem);
  }
  #page-gallery .photos-bottom div:nth-child(21) {
    float: right;
    height: calc(16rem * 2 + 0.5rem);
  }
  #page-gallery .photos-bottom div:nth-child(39) {
    float: right;
    height: calc(16rem * 2 + 0.5rem);
  }
  #page-gallery .column .column-inner {
    margin-bottom: 15rem;
  }
  #page-gallery .column h3 {
    font-size: 1.8rem;
    margin-bottom: 4rem;
  }
  #page-gallery .column .txt_en {
    font-size: 3.6rem;
  }
  #page-gallery .column .attention {
    font-size: 1.2rem;
  }
}
#page-shop h2.hd::before {
  content: 'Shop';
  letter-spacing: 0;
}
#page-shop .column-inner {
  margin-bottom: 10rem;
}
#page-shop .plandetail p {
  margin-bottom: 1em;
}
#page-shop .plandetail h3 {
  display: flex;
  align-items: center;
}
#page-shop .plandetail h3::after {
  content: "";
  flex: 1 0 0%;
  margin-left: 1em;
  border-bottom: 1px dotted;
}
#page-shop .pagetop_txt p {
  margin-bottom: 0;
}

@media screen and (min-width: 781px) {
  #page-shop .column-inner {
    display: flex;
  }
  #page-shop .photos-right {
    width: 40rem !important;
    order: 2;
  }
  #page-shop .plandetail {
    flex: 1 0 0%;
  }
}
#page-privacy h2.hd::before {
  content: 'Privacy policy';
  letter-spacing: 0;
}
#page-privacy .column-inner {
  margin-bottom: 5rem;
}

#page-banquet h2.hd::before {
  content: 'Party & Meeting';
  letter-spacing: 0;
}
#page-banquet .column {
  margin-bottom: 10rem;
  /*
  &:nth-child(3){
  	h3{
  		text-align: center;
  		font-weight: normal;
  		margin-bottom: 3rem;
  		&::before{
  			content: 'Banquet & Meeting Plan';
  			display: block;
  			@include english2;
  			margin-bottom: 1rem;
  		}
  	}
  }
  */
}
#page-banquet .column h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-banquet .column .banquet_sample_ph {
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: space-between;
  margin: 4rem 0;
}
#page-banquet .column .banquet_sample_ph li {
  width: 49%;
}
#page-banquet .column .banquet_sample_ph li img {
  width: 100%;
}
#page-banquet .column table {
  border-collapse: collapse;
  border: none;
  width: 100%;
  margin: 1em 0;
}
#page-banquet .column table tr {
  border-bottom: 1px solid #9B98AB;
}
#page-banquet .column table th, #page-banquet .column table td {
  border: none;
  background: none;
  padding: 1rem 0;
}
#page-banquet .column table th {
  font-weight: bold;
  color: #0D004C;
  width: 15%;
}
#page-banquet .column .column-inner {
  margin: 0;
  padding: 0;
}
#page-banquet .column .photos-top-headline > div > ul, #page-banquet .column .photos-top > div > ul {
  width: 100% !important;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#page-banquet .column .photos-top-headline > div > ul li, #page-banquet .column .photos-top > div > ul li {
  width: calc((100% - 4rem) / 5) !important;
  margin: 0 0.5rem 2rem !important;
  height: auto !important;
}
#page-banquet .column .photos-top-headline > div > ul li a, #page-banquet .column .photos-top > div > ul li a {
  border: none;
  width: 100% !important;
  height: auto !important;
  background: #000;
}
#page-banquet .column .photos-top-headline > div > ul li a img, #page-banquet .column .photos-top > div > ul li a img {
  height: auto !important;
  width: 100% !important;
  margin: 0 !important;
  opacity: 0.6;
}
#page-banquet .column .photos-top-headline > div > ul li a.imagesurfing-selected img, #page-banquet .column .photos-top > div > ul li a.imagesurfing-selected img {
  opacity: 1;
}
#page-banquet .column .attention {
  margin-left: 1em;
  text-indent: -1em;
}

@media screen and (min-width: 781px) {
  #page-banquet .column {
    /*
    	&:nth-child(3){
    		h3{
    			font-size: 1.8rem;
    			&::before{
    				font-size: 3.6rem;
    			}
    		}
    	}
    	*/
  }
  #page-banquet .column h3 {
    font-size: 2.5rem;
    margin: 1em 0;
  }
  #page-banquet .column table {
    margin: 2em 0 1em;
  }
  #page-banquet .column .photos-top-headline, #page-banquet .column .photos-top {
    width: 100% !important;
  }
  #page-banquet .column .photos-top-headline > div, #page-banquet .column .photos-top > div {
    width: 100% !important;
  }
  #page-banquet .column .photos-top-headline > div > div img, #page-banquet .column .photos-top > div > div img {
    width: 100%;
    height: 50rem !important;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-banquet .column .photos-top-headline > div > ul li, #page-banquet .column .photos-top > div > ul li {
    width: calc((100% - 7rem) / 8) !important;
  }
}
#page-recruit h2.hd::before {
  content: 'Recruit';
  letter-spacing: 0;
}
#page-recruit .column h3 {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", serif;
}
#page-recruit .column h4 {
  color: #0D004C;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-recruit .column .txt_en {
  text-align: center;
  color: #0D004C;
}
#page-recruit .column ul {
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10rem;
}
#page-recruit .column ul li {
  width: 24%;
  text-align: center;
}
#page-recruit .column ul li img {
  width: 100%;
  height: 15.3rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
#page-recruit .column table {
  border-collapse: collapse;
  border: none;
  width: 100%;
  margin: 1em 0 6rem;
}
#page-recruit .column table tr {
  border-bottom: 1px solid #9B98AB;
}
#page-recruit .column table th, #page-recruit .column table td {
  border: none;
  background: none;
  padding: 1rem 0;
}
#page-recruit .column table th {
  font-weight: bold;
  color: #0D004C;
  width: 15%;
}

@media screen and (min-width: 781px) {
  #page-recruit .column h3 {
    margin-bottom: 3rem;
  }
  #page-recruit .column .txt_en {
    font-size: 4rem;
    margin-bottom: 1rem;
  }
  #page-recruit .column h4 {
    font-size: 2rem;
  }
}
#page-english .maincol > h2.hd::before {
  content: "Hayama Hotel Otowa no mori";
}
#page-english .breadcrumbs {
  display: none;
}
#page-english .content > .inner {
  width: 100%;
}
#page-english .column:nth-last-child(2) {
  max-width: 100%;
  background: url("../img/spa_bg_img2.jpg");
  background-size: cover;
  padding: 13rem 0;
}
#page-english .column h3 {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
}
#page-english .column ul {
  padding: 0;
  list-style: none;
  margin-top: 1em;
}
#page-english .column h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #0D004C;
  font-weight: normal;
}
#page-english .column .btn {
  width: 40rem;
  text-align: center;
  margin: auto;
  padding: 0.3rem;
  border: 1px solid #53B9AC;
}
#page-english .column .btn a {
  display: block;
  text-decoration: none;
  background: #53B9AC;
  color: #fff;
  border: 1px solid #53B9AC;
  padding: 2rem 0;
  transition: all  0.3s ease;
  font-size: 2rem;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-english .column .btn a .txt_en {
  font-size: 3.5rem;
}
#page-english .column .btn a::after {
  content: "";
  display: block;
  margin: 2rem auto 0;
  width: 5rem;
  height: 1rem;
  border-right: 2px solid;
  border-bottom: 1px solid;
  transform: skewX(50deg);
  background: none;
  transition: all  0.3s ease;
}
#page-english .column .btn a:hover {
  transition: all  0.3s ease;
}
#page-english .column .btn a:hover::after {
  width: 9rem;
  transition: all  0.3s ease;
}
#page-english .column .photos-top-headline > div > ul, #page-english .column .photos-top > div > ul {
  width: 100% !important;
  max-width: 1400px;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#page-english .column .photos-top-headline > div > ul li, #page-english .column .photos-top > div > ul li {
  width: calc((100% - 4rem) / 5) !important;
  margin: 0 0.5rem 2rem !important;
  height: auto !important;
}
#page-english .column .photos-top-headline > div > ul li a, #page-english .column .photos-top > div > ul li a {
  border: none;
  width: 100% !important;
  height: auto !important;
  background: #000;
}
#page-english .column .photos-top-headline > div > ul li a img, #page-english .column .photos-top > div > ul li a img {
  height: auto !important;
  width: 100% !important;
  margin: 0 !important;
  opacity: 0.6;
}
#page-english .column .photos-top-headline > div > ul li a.imagesurfing-selected img, #page-english .column .photos-top > div > ul li a.imagesurfing-selected img {
  opacity: 1;
}
#page-english .restaurant_list {
  background: #F2F0EB;
}
#page-english .restaurant_list .catch {
  text-align: center;
  margin-bottom: 5rem;
  color: #0D004C;
}
#page-english .restaurant_list .box1::before {
  content: "";
  display: block;
  position: absolute;
  width: 57.6rem;
  height: 37.6rem;
  background: rgba(217, 136, 105, 0.2);
  z-index: 1;
}
#page-english .restaurant_list .box1 .txt {
  background: #fff;
  position: relative;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  color: #0D004C;
  z-index: 2;
}
#page-english .restaurant_list .box1 .txt h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-english .restaurant_list .box1 .txt p:nth-child(3) {
  line-height: 2;
}
#page-english .access #access-gmap {
  height: 50rem;
}
#page-english .access #access-gmap iframe {
  width: 100%;
  height: 100%;
}
#page-english .access ul {
  list-style: disc;
  padding-left: 1em;
  margin-bottom: 1em;
}
#page-english .access h4 {
  font-weight: bold;
  color: #0D004C;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  display: flex;
  align-items: center;
  margin: 5rem 0 1.6rem;
}
#page-english .access h4::before {
  content: "";
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  margin-right: 1.6rem;
}
#page-english .access h4.car::before {
  background: url(../img/icon_car.svg);
  background-size: 100%;
}
#page-english .access h4.train::before {
  background: url(../img/icon_train.svg);
  background-size: 100%;
}
#page-english .info {
  text-align: center;
}

@media screen and (min-width: 781px) {
  #page-english .content {
    margin-top: 8rem;
  }
  #page-english .column-inner {
    padding: 0;
    margin: 0;
  }
  #page-english .column {
    max-width: 100rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10rem;
  }
  #page-english .column:nth-last-child(2) {
    margin-bottom: 15rem;
  }
  #page-english .column h3 {
    font-size: 4rem;
  }
  #page-english .column h4 {
    font-size: 2.8rem;
    margin-bottom: 1em;
  }
  #page-english .column .photos-top-headline, #page-english .column .photos-top {
    width: 100% !important;
    max-width: 110rem;
    margin: auto;
  }
  #page-english .column .photos-top-headline > div, #page-english .column .photos-top > div {
    width: 100% !important;
  }
  #page-english .column .photos-top-headline > div > div img, #page-english .column .photos-top > div > div img {
    width: 100%;
    height: auto !important;
  }
  #page-english .column .photos-top-headline > div > ul li, #page-english .column .photos-top > div > ul li {
    width: calc((100% - 8rem) / 8) !important;
  }
  #page-english .column:nth-child(5) {
    max-width: 100%;
  }
  #page-english .restaurant_list {
    padding: 14.4rem 0;
  }
  #page-english .restaurant_list .catch {
    font-size: 2rem;
  }
  #page-english .restaurant_list .box1 {
    margin-bottom: 8rem;
    height: 64rem;
    position: relative;
  }
  #page-english .restaurant_list .box1:nth-last-child(1) {
    margin-bottom: 0;
  }
  #page-english .restaurant_list .box1::before {
    top: 17.6rem;
  }
  #page-english .restaurant_list .box1 .txt {
    width: 62.4rem;
    height: 41.6rem;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  #page-english .restaurant_list .box1 .txt .txt_en {
    font-size: 3.6rem;
    margin-bottom: 3rem;
  }
  #page-english .restaurant_list .box1 .txt h4 {
    font-size: 2.4rem;
    margin: 1.3rem 0 2.8rem;
  }
  #page-english .restaurant_list .box1 .txt .view_more {
    margin-top: 3rem;
  }
  #page-english .restaurant_list .box1 .ph {
    max-width: 96rem;
    position: absolute;
  }
  #page-english .restaurant_list .box1 .ph img {
    width: 100%;
    height: 64rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-english .restaurant_list .box1:nth-child(2n+1)::before {
    right: calc(50% - 1.6rem);
  }
  #page-english .restaurant_list .box1:nth-child(2n+1) .txt {
    /*
    box-shadow: 2.4rem 2.4rem 0 rgba(217,136,105,0.2);
    */
    right: calc(50% - 8.8rem);
  }
  #page-english .restaurant_list .box1:nth-child(2n+1) .ph {
    left: calc(50% - 6.4rem);
  }
  #page-english .restaurant_list .box1:nth-child(2n)::before {
    left: calc(50% - 1.6rem);
  }
  #page-english .restaurant_list .box1:nth-child(2n) .txt {
    /*
    box-shadow: -2.4rem 2.4rem 0 rgba(217,136,105,0.2);
    */
    left: calc(50% - 8.8rem);
  }
  #page-english .restaurant_list .box1:nth-child(2n) .ph {
    right: calc(50% - 6.4rem);
  }
  #page-english .access h4 {
    font-size: 1.8rem;
  }
}
#page-sitemap h2.hd::before {
  content: 'Sitemap';
  letter-spacing: 0;
}
#page-sitemap .sitemap_nemu {
  max-width: 96rem;
  margin: 4.5rem auto 7rem;
  display: flex;
  justify-content: space-between;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box {
  width: 45.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box h4 {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",  'Hiragino Kaku Gothic Pro',"ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-bottom: 1rem;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box h4::before {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border: .5rem solid;
  border-color: transparent transparent transparent #0D004C;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box h4::after {
  content: "";
  flex: 1 0 0%;
  margin-left: 1em;
  height: 1px;
  background: #707070;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase {
  width: 100%;
  margin-top: 3rem;
  display: flex;
  align-items: center;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase .sitemap_toiawase_link {
  margin-right: 2rem;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase .sitemap_toiawase_link a {
  display: block;
  color: #0D004C;
  display: flex;
  align-items: center;
  padding: 0 6rem 0 2rem;
  border: 1px solid;
  white-space: nowrap;
  height: 4rem;
  border-radius: 2rem;
  position: relative;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase .sitemap_toiawase_link a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 2.8rem;
  left: auto;
  margin: auto;
  width: 2.2rem;
  height: .6rem;
  border-bottom: 1px solid;
  border-right: 2px solid;
  transform: skewX(50deg);
  background: none;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase .sitemap_toiawase_link a:hover {
  background: #0D004C;
  color: #fff;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box .sitemap_toiawase > p:nth-last-child(1) span {
  font-weight: bold;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul {
  list-style: none;
  padding: 0;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul li {
  margin-left: 1.7rem;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul li a {
  position: relative;
  display: flex;
  align-items: center;
  color: #333;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul li a::before {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border: .5rem solid;
  border-color: transparent transparent transparent #0D004C;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul li a::after {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  transition: all  0.3s ease;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box ul li a:hover::after {
  background: #0D004C;
  width: 100%;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress {
  position: relative;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress::after {
  position: absolute;
  content: "";
  width: 1rem;
  height: 100%;
  background: url("../img/icon_newwin.svg") center center no-repeat;
  background-size: 100%;
  top: 0;
  bottom: 0;
  left: 4em;
  margin: auto;
}
#page-sitemap .sitemap_nemu .sitemap_nemu_box:nth-child(2) ul:nth-of-type(1) li.dress:hover::after {
  opacity: 0.8;
}

#page-opening .logoarea {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
}
#page-opening .movie {
  position: fixed;
  z-index: -1;
  left: 0;
  top: 0;
}
#page-opening .movie video {
  position: fixed;
  top: 0;
  z-index: -1;
}
#page-opening main {
  margin: auto;
  background: #fff;
  color: #0D004C;
}
#page-opening main h2 {
  text-align: center;
  width: 100%;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-opening main .catch {
  width: 100%;
  text-align: center;
  font-family: 'mina', serif;
}
#page-opening main article h3 {
  text-align: center;
  font-family: 'Sorts Mill Goudy', serif;
}
#page-opening main article h3 span {
  display: block;
}
#page-opening main article img {
  width: 100%;
}
#page-opening main article .txt {
  text-align: center;
}
#page-opening main article .view_more {
  margin-left: auto;
  margin-right: auto;
}
#page-opening footer {
  background: #fff;
}

@media screen and (min-width: 781px) {
  #page-opening .logoarea img {
    width: 18rem;
  }
  #page-opening .logoarea h1 {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: 18rem;
  }
  #page-opening .spmode {
    display: none;
  }
  #page-opening .movie {
    width: 100%;
    height: 100vh;
    overflow: hidden;
  }
  #page-opening .movie video {
    max-height: initial;
    max-width: initial;
    min-width: 100vw;
    min-height: 100vh;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  #page-opening footer {
    padding-top: 6.4rem;
    margin-top: 10.4rem;
  }
  #page-opening main {
    width: 106rem;
    padding: 15rem 5rem 11.7rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #page-opening main h2 {
    font-size: 3.6rem;
    margin: 0 0 3rem;
  }
  #page-opening main .catch {
    font-size: 2.6rem;
    margin-bottom: 13rem;
  }
  #page-opening main article {
    width: 45rem;
  }
  #page-opening main article h3 {
    font-size: 3.6rem;
    margin-bottom: 3rem;
  }
  #page-opening main article h3 span {
    font-size: 1.6rem;
  }
  #page-opening main article .ph {
    margin-bottom: 4rem;
  }
}
/*ウエディングサイト*/
body[id^="page-wedding"] .hotel {
  display: none !important;
}
body[id^="page-wedding"] .txt_en {
  font-family: 'mina', serif;
}
body[id^="page-wedding"] nav.gnav {
  width: 100%;
  left: 0;
}
body[id^="page-wedding"] nav.gnav .nav-inner {
  margin-left: 19.3rem;
}
body[id^="page-wedding"] nav.gnav .nav-inner li::before {
  background: #2C6D93;
}
body[id^="page-wedding"] nav.fixed.nav_logo {
  margin-left: 0;
}
body[id^="page-wedding"] nav.fixed li a span {
  color: #2C6D93;
}
body[id^="page-wedding"] .column-inner h3 {
  color: #2C6D93;
}
body[id^="page-wedding"] .column-inner .pagetop_txt {
  color: #2C6D93;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
body[id^="page-wedding"] .column-inner .pagetop_txt h3 {
  color: #2C6D93;
}
body[id^="page-wedding"] .more a {
  color: #2C6D93;
  border-color: #2C6D93;
}
body[id^="page-wedding"] .more a:hover {
  background: #2C6D93;
  color: #fff;
}
body[id^="page-wedding"] .content .maincol > h2.hd {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.8);
}
body[id^="page-wedding"] .content .maincol > h2.hd::before {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  letter-spacing: 0.4rem;
}
body[id^="page-wedding"] .content .maincol > h2.hd::after {
  content: "";
  background: url("../img/icon_leaf_white.png") center top no-repeat;
  background-size: auto 100%;
  width: 100%;
  display: block;
  height: 4rem;
  order: -1;
}
body[id^="page-wedding"] .slick-slider {
  list-style: none;
  padding: 0;
}
body[id^="page-wedding"] .slick-slider ul {
  padding: 0;
  list-style: none;
}
body[id^="page-wedding"] .slick-slider div {
  font-size: 0;
}
body[id^="page-wedding"] .slick-slider div img {
  width: 100%;
}
body[id^="page-wedding"] .slick-slider .slick-prev, body[id^="page-wedding"] .slick-slider .slick-next {
  z-index: 1;
  width: 3rem;
  height: 3rem;
}
body[id^="page-wedding"] .slick-slider .slick-prev::before, body[id^="page-wedding"] .slick-slider .slick-next::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
body[id^="page-wedding"] .slick-slider .slick-prev {
  left: 1.1rem;
}
body[id^="page-wedding"] .slick-slider .slick-prev::before {
  background: url("../img/wedding_slick_prev.png");
  background-size: 100%;
}
body[id^="page-wedding"] .slick-slider .slick-next {
  right: 1.1rem;
}
body[id^="page-wedding"] .slick-slider .slick-next::before {
  background: url("../img/wedding_slick_next.png");
  background-size: 100%;
}
body[id^="page-wedding"] .slick-slider .slick-dots li {
  margin: 0;
}
body[id^="page-wedding"] .slick-slider .slick-dots li button::before {
  opacity: 1;
  color: #B5B5B5;
}
body[id^="page-wedding"] .slick-slider .slick-dots li.slick-active button::before {
  opacity: 1;
  color: #2C6D93;
}
body[id^="page-wedding"] .slick-slider.floorguide_slider01, body[id^="page-wedding"] .slick-slider.floorguide_slider02 {
  margin-bottom: 8rem;
}
body:not([id^="page-wedding"]) .wedding {
  display: none !important;
}

@media screen and (min-width: 781px) {
  body[id^="page-wedding"] .hotel {
    display: none !important;
  }
  body[id^="page-wedding"] .content .maincol > h2.hd::before {
    font-size: 5rem;
  }
  body[id^="page-wedding"] .content .maincol > h2.hd::after {
    content: "";
  }
  body[id^="page-wedding"] header h1 a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    left: 0;
    top: 0;
    width: 14.1rem;
    height: 9.7rem;
  }
  body[id^="page-wedding"] header h1 a img {
    margin: -200% 0 0 -100%;
    /*
    width: 11.5rem;
    */
  }
  body[id^="page-wedding"] .pagetop_txt {
    font-size: 2rem;
  }
}
#page-wedding .content .maincol > h2.hd, #page-wedding .breadcrumbs {
  display: none;
}
#page-wedding .content {
  margin: 0;
}
#page-wedding .content > .inner {
  width: 100%;
}
#page-wedding .content h3 {
  color: #2C6D93;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-wedding .b_none {
  display: none;
}
#page-wedding .btn_play {
  display: block;
  text-align: center;
  position: absolute;
  width: 100%;
  top: 87vh;
}
#page-wedding .btn_play img {
  width: 10rem;
}
#page-wedding .p_modal {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
  left: 0;
  top: 0;
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center;
}
#page-wedding .p_modal .modalBody {
  width: 80%;
  position: relative;
  z-index: 1;
  text-align: center;
}
#page-wedding .p_modal .modalBody .play_close {
  color: #fff;
  font-size: 50px;
  display: block;
  position: absolute;
  border: 1px solid;
  border-radius: 30px;
  line-height: 1;
  right: 15px;
  top: 15px;
  z-index: 10001;
}
#page-wedding .p_modal .modalBody > img, #page-wedding .p_modal .modalBody iframe {
  width: 100%;
}
#page-wedding .p_modal .modalBody video {
  height: 60rem;
}
#page-wedding .p_modal .modalBK {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
}
#page-wedding .wrapper, #page-wedding .column-inner {
  margin: 0;
  padding: 0;
}
#page-wedding .view_more {
  margin-left: auto;
  margin-right: auto;
}
#page-wedding .wedding_top_catch {
  position: absolute;
  left: 0;
  right: 0;
  top: 45vh;
  margin: auto;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-size: 2.8rem;
  z-index: 2;
  text-align: center;
  text-shadow: 0 0 0.5rem black;
  color: #fff;
  line-height: 1;
}
#page-wedding .wedding_top_catch img {
  width: 7.2rem;
  margin-bottom: 2.2rem;
}
#page-wedding .wedding_top_catch .wedding_fadein {
  display: none;
  letter-spacing: 0.4rem;
}
#page-wedding .wedding_title {
  font-weight: bold;
  color: #2C6D93;
  text-align: center;
  position: relative;
}
#page-wedding .wedding_title::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1.9rem;
  width: 13.2rem;
  border-bottom: 1px solid;
  margin: auto;
}
#page-wedding .wedding_news {
  margin: 0 auto 18rem;
}
#page-wedding .wedding_news h3 {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
}
#page-wedding .wedding_news h3 span {
  display: block;
}
#page-wedding .wedding_news dl dt {
  color: #806940;
  font-size: 1.8rem;
}
#page-wedding .wedding_news dl dd {
  border-bottom: 1px solid #A1A1A1;
}
#page-wedding .top_letter {
  margin-bottom: 18rem;
}
#page-wedding .top_letter .txt {
  background: rgba(255, 255, 255, 0.9);
  text-align: center;
}
#page-wedding .txt_en {
  color: #2C6D93;
  font-family: 'mina', serif;
}
#page-wedding .txt_en span {
  display: block;
}

#page-wedding .catch {
  color: #2C6D93;
  font-weight: bold;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-wedding .top_box {
  margin-bottom: 18rem;
}
#page-wedding .top_box .txt {
  background: rgba(238, 248, 255, 0.9);
  color: #2C6D93;
  text-align: center;
}
#page-wedding .top_floor {
  margin-bottom: 18rem;
  text-align: center;
  color: #2C6D93;
}
#page-wedding .top_floor ul {
  padding: 0;
  list-style: none;
}
#page-wedding .top_floor ul li .txt {
  background: rgba(255, 255, 255, 0.85);
  position: relative;
}
#page-wedding .top_floor ul li .txt::before, #page-wedding .top_floor ul li .txt::after {
  content: "";
  display: block;
  border: solid;
  position: absolute;
}
#page-wedding .top_floor ul li .txt::before {
  border-width: 1px 0 0 1px;
}
#page-wedding .top_floor ul li .txt::after {
  border-width: 0 1px 1px 0;
}
#page-wedding .top_floor ul li .txt h4 {
  margin: 0;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  position: relative;
}
#page-wedding .top_floor ul li .txt h4::after {
  content: "";
  display: block;
  background: url("../img/icon_leaf_blue.svg") no-repeat;
  background-size: 100%;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}
#page-wedding .top_floor ul li .txt h4 span {
  display: block;
  line-height: 1.3;
}
#page-wedding .top_cuisine {
  text-align: center;
  color: #2C6D93;
  margin-bottom: 18rem;
}
#page-wedding .top_cuisine .txt {
  display: inline-block;
  margin: auto;
  background: rgba(255, 255, 255, 0.9);
}
#page-wedding .top_dress {
  margin-bottom: 18rem;
  color: #2C6D93;
}
#page-wedding .top_dress .txt {
  text-align: center;
  display: inline-block;
  margin: auto;
  background: rgba(255, 255, 255, 0.9);
}
#page-wedding .top_access {
  position: relative;
  margin-bottom: 18rem;
}
#page-wedding .top_access .gmap {
  overflow: hidden;
}
#page-wedding .top_access .gmap iframe {
  width: 100%;
  height: 100%;
}
#page-wedding .top_access .txt {
  position: absolute;
  background: #fff;
  text-align: center;
  box-shadow: -1.6rem 1.6rem 0 rgba(44, 109, 147, 0.2);
}
#page-wedding .top_access .txt .hotelname {
  font-weight: bold;
}
#page-wedding .top_instagram {
  margin-bottom: 18rem;
  text-align: center;
}
#page-wedding .insta_list {
  margin: 0 auto 5rem;
}
#page-wedding .insta_list iframe {
  width: 100%;
}

@media screen and (min-width: 781px) {
  #page-wedding .wedding_title {
    font-size: 2.8rem;
    margin: 13.1rem 0 10rem;
  }
  #page-wedding .view_more {
    font-size: 2rem;
  }
  #page-wedding .wedding_news {
    width: 96rem;
  }
  #page-wedding .wedding_news h3 {
    font-size: 2rem;
    margin-bottom: 5rem;
  }
  #page-wedding .wedding_news h3 span {
    font-size: 5rem;
    line-height: 1.3;
  }
  #page-wedding .wedding_news dl dt {
    font-weight: bold;
    margin-bottom: 1em;
  }
  #page-wedding .wedding_news dl dd {
    display: flex;
    align-items: center;
    padding-bottom: 1em;
    margin-bottom: 2.4rem;
  }
  #page-wedding .wedding_news dl dd > p:nth-child(1) {
    flex: 1 0 0%;
  }
  #page-wedding .wedding_news dl dd .statement_link a {
    margin-top: 0;
    margin-left: 1em;
  }
  #page-wedding .wedding_news .more {
    margin-top: 4rem;
  }
  #page-wedding .txt_en {
    font-size: 4.6rem;
  }
  #page-wedding .catch {
    font-size: 2.4rem;
  }
  #page-wedding .top_letter {
    background: url("../img/wedding_top_letter_bg_pc.jpg") right top no-repeat;
    background-size: cover;
    padding: 11.4rem 0;
  }
  #page-wedding .top_letter .txt {
    width: 55rem;
    padding: 7rem 0 7.7rem;
    margin: 0 calc(50% + 7rem) 0 auto;
  }
  #page-wedding .top_letter .txt_en {
    margin-bottom: 3rem;
    text-align: left;
    margin-left: 5.7rem;
  }
  #page-wedding .top_letter .txt_en span {
    margin-left: 7rem;
  }
  #page-wedding .top_box {
    position: relative;
    width: 100%;
  }
  #page-wedding .top_box .ph {
    position: relative;
  }
  #page-wedding .top_box .ph img {
    width: 106.4rem;
  }
  #page-wedding .top_box .txt {
    width: 67.2rem;
    height: 54.4rem;
    padding: 12rem 0;
    font-size: 2.2rem;
    position: absolute;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    top: 3.6rem;
  }
  #page-wedding .top_box .txt h3 {
    margin: 2rem 0 5rem;
  }
  #page-wedding .top_box.top_report .ph {
    right: calc(50% - 21.6rem);
    text-align: right;
  }
  #page-wedding .top_box.top_report .txt {
    right: 11.2rem;
  }
  #page-wedding .top_box.top_plan .ph {
    left: calc(50% - 21.6rem);
  }
  #page-wedding .top_box.top_plan .txt {
    left: 11.2rem;
  }
  #page-wedding .top_floor > h3 {
    margin: 2rem 0 5rem;
  }
  #page-wedding .top_floor .view_more {
    margin: 3rem auto 5rem;
    font-size: 2rem;
  }
  #page-wedding .top_floor ul {
    display: flex;
  }
  #page-wedding .top_floor ul li {
    width: 50%;
  }
  #page-wedding .top_floor ul li img {
    width: 100%;
  }
  #page-wedding .top_floor ul li .txt {
    width: 54rem;
    /*
    margin: -12.8rem auto 0;
    */
    margin: -5.4rem auto 0;
    padding: 6rem 0;
    font-size: 2rem;
  }
  #page-wedding .top_floor ul li .txt::before, #page-wedding .top_floor ul li .txt::after {
    width: 7.2rem;
    height: 7.2rem;
  }
  #page-wedding .top_floor ul li .txt::before {
    left: 1.6rem;
    top: 1.6rem;
  }
  #page-wedding .top_floor ul li .txt::after {
    right: 1.6rem;
    bottom: 1.6rem;
  }
  #page-wedding .top_floor ul li .txt h4 {
    font-size: 3rem;
    padding-bottom: 7.2rem;
  }
  #page-wedding .top_floor ul li .txt h4::after {
    width: 4rem;
    height: 2.2rem;
    bottom: 3rem;
  }
  #page-wedding .top_floor ul li .txt h4 span {
    font-size: 2rem;
  }
  #page-wedding .top_cuisine {
    padding: 7.2rem 0;
    background: url("../img/wedding_top_cuisine_bg_pc.jpg") center center no-repeat;
    background-size: cover;
  }
  #page-wedding .top_cuisine .txt {
    padding: 6.6rem 6rem;
    color: #2C6D93;
    font-size: 2rem;
  }
  #page-wedding .top_cuisine .txt .catch {
    margin: 3rem 0;
    line-height: 1.5;
  }
  #page-wedding .top_dress {
    background: url("../img/wedding_top_dress_pc.jpg") left center no-repeat;
    background-size: cover;
    padding: 14.4rem 0;
  }
  #page-wedding .top_dress .txt {
    padding: 11.6rem 11.1rem;
    margin-left: calc(50% + 10.6rem);
  }
  #page-wedding .top_dress .txt .catch {
    margin: 5rem 0;
    line-height: 1.5;
  }
  #page-wedding .top_access .gmap {
    margin-left: 48rem;
    height: 61.6rem;
  }
  #page-wedding .top_access .gmap iframe {
    width: 190%;
    margin-left: -40%;
  }
  #page-wedding .top_access .txt {
    top: 4.8rem;
    left: 22.4rem;
    width: 51.2rem;
    height: 52rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  #page-wedding .top_access .txt h3 {
    margin-bottom: 2.5rem;
  }
  #page-wedding .top_access .txt .hotelname {
    font-size: 2.2rem;
  }
  #page-wedding .top_access .txt P:nth-child(4) {
    margin-bottom: 3rem;
  }
  #page-wedding .top_instagram h3 {
    font-size: 2rem;
    margin: 1rem 0 5rem;
  }
  #page-wedding .insta_list {
    width: 96rem;
  }
  #page-wedding .insta_list iframe {
    height: 73rem;
  }
}
@media screen and (max-width: 1610px) {
  #page-wedding .top_box.top_report .txt {
    right: 0;
  }
  #page-wedding .top_box.top_plan .txt {
    left: 0;
  }
}
#page-wedding_plan h2.hd::before {
  content: 'Wedding Plan';
}
#page-wedding_plan .photos-top {
  width: 100% !important;
}
#page-wedding_plan .photos-top div {
  width: 100% !important;
}
#page-wedding_plan .photos-top img {
  width: 100% !important;
  height: auto !important;
}
#page-wedding_plan .column h3, #page-wedding_plan .column h4 {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
  font-weight: normal;
}
#page-wedding_plan .column table {
  width: 100%;
  border: none;
}
#page-wedding_plan .column table th, #page-wedding_plan .column table td {
  border: none;
  background: none;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
#page-wedding_plan .column table th {
  color: #2C6D93;
  padding-left: 0;
  font-weight: bold;
  vertical-align: top;
}
#page-wedding_plan .column table tr {
  border-bottom: 1px solid #9B98AB;
}

@media screen and (min-width: 781px) {
  #page-wedding_plan .column {
    margin-bottom: 7rem;
  }
  #page-wedding_plan .column h3 {
    font-size: 2.8rem;
  }
  #page-wedding_plan .column h4 {
    font-size: 2rem;
  }
}
#page-wedding_partyreport h2.hd::before {
  content: 'Party Report';
}
#page-wedding_partyreport .slick-prev, #page-wedding_partyreport .slick-next {
  top: 43%;
}
#page-wedding_partyreport .slick-dots {
  position: static;
  text-align: left;
  /*
  display: flex!important;
  */
  display: none !important;
  flex-wrap: wrap;
  margin-top: 5px;
}
#page-wedding_partyreport .slick-dots li {
  width: auto;
  height: auto;
}
#page-wedding_partyreport .slick-dots li button {
  width: auto;
  height: auto;
  padding: 5px 5px 0;
}
#page-wedding_partyreport .slick-dots li button::before {
  position: static;
  line-height: 1;
}
#page-wedding_partyreport .movie iframe {
  width: 100%;
  height: 24.5rem;
}
#page-wedding_partyreport .column h4 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
}

@media screen and (min-width: 781px) {
  #page-wedding_partyreport .maincol {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #page-wedding_partyreport .column-inner {
    margin: 0;
    padding: 0;
    height: 100%;
  }
  #page-wedding_partyreport .column-inner .plandetail {
    height: 100%;
  }
  #page-wedding_partyreport .column-inner .slick-slider {
    margin-bottom: 0;
  }
  #page-wedding_partyreport .column-inner .party_box {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  #page-wedding_partyreport .column-inner .party_box .txt {
    bottom: 0;
    margin: auto 0 0;
  }
  #page-wedding_partyreport .column {
    width: 45%;
    margin-bottom: 10rem;
  }
}
#page-wedding_floorguide h2.hd::before {
  content: 'Floor Guide';
}
#page-wedding_floorguide .column-inner {
  margin: 0;
  padding: 0;
}
#page-wedding_floorguide .pagetop_txt {
  margin-bottom: 14rem;
}
#page-wedding_floorguide .map {
  position: relative;
  max-width: 96rem;
  margin: 0 auto 12rem;
}
#page-wedding_floorguide .map img {
  width: 100%;
}
#page-wedding_floorguide .map .nav_link {
  list-style: none;
  padding: 0;
}
#page-wedding_floorguide .map .nav_link li {
  position: absolute;
}
#page-wedding_floorguide .map .nav_link li a {
  display: block;
  width: 100%;
  height: 100%;
}
#page-wedding_floorguide .map .nav_link li a:hover {
  background: rgba(255, 255, 255, 0.6);
}
#page-wedding_floorguide .map .nav_link li a span {
  display: none;
}
#page-wedding_floorguide .column h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
  line-height: 1.5;
}
#page-wedding_floorguide .column h3 span {
  display: block;
}
#page-wedding_floorguide .column .catch {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  margin-bottom: 1em;
  color: #2C6D93;
}
#page-wedding_floorguide .title {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
  border-bottom: 1px solid;
}
#page-wedding_floorguide .title h3 {
  margin: 0;
}
#page-wedding_floorguide .chapel {
  margin-bottom: 9rem;
}
#page-wedding_floorguide .chapel h3 {
  text-align: center;
}
#page-wedding_floorguide .chapel .catch {
  text-align: center;
}
#page-wedding_floorguide .guide_box:nth-last-child(1) {
  margin-bottom: 0;
}
#page-wedding_floorguide .slick-slider {
  list-style: none;
  padding: 0;
}
#page-wedding_floorguide .slick-slider ul {
  padding: 0;
  list-style: none;
}
#page-wedding_floorguide .slick-slider div {
  font-size: 0;
}
#page-wedding_floorguide .slick-slider div img {
  width: 100%;
}
#page-wedding_floorguide .slick-slider .slick-prev, #page-wedding_floorguide .slick-slider .slick-next {
  z-index: 1;
  width: 3rem;
  height: 3rem;
}
#page-wedding_floorguide .slick-slider .slick-prev::before, #page-wedding_floorguide .slick-slider .slick-next::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
#page-wedding_floorguide .slick-slider .slick-prev {
  left: 1.1rem;
}
#page-wedding_floorguide .slick-slider .slick-prev::before {
  background: url("../img/wedding_slick_prev.png");
  background-size: 100%;
}
#page-wedding_floorguide .slick-slider .slick-next {
  right: 1.1rem;
}
#page-wedding_floorguide .slick-slider .slick-next::before {
  background: url("../img/wedding_slick_next.png");
  background-size: 100%;
}
#page-wedding_floorguide .slick-slider .slick-dots li {
  margin: 0;
}
#page-wedding_floorguide .slick-slider .slick-dots li button::before {
  opacity: 1;
  color: #B5B5B5;
}
#page-wedding_floorguide .slick-slider .slick-dots li.slick-active button::before {
  opacity: 1;
  color: #2C6D93;
}
#page-wedding_floorguide .slick-slider.floorguide_slider01, #page-wedding_floorguide .slick-slider.floorguide_slider02 {
  margin-bottom: 8rem;
}
#page-wedding_floorguide .honkan {
  margin-bottom: 26rem;
}
#page-wedding_floorguide .honkan h3 {
  color: #0D004C;
}
#page-wedding_floorguide .honkan .title {
  color: #0D004C;
}
#page-wedding_floorguide .honkan .catch {
  color: #0D004C;
}

@media screen and (min-width: 781px) {
  #page-wedding_floorguide .content > .inner {
    width: 120rem;
  }
  #page-wedding_floorguide .pagetop_txt h3 {
    margin-bottom: 5rem;
  }
  #page-wedding_floorguide .map .nav_link li {
    height: 3.3rem;
  }
  #page-wedding_floorguide .map .nav_link li.honkanhotel {
    width: 9rem;
    left: 22.7rem;
    top: 3.2rem;
  }
  #page-wedding_floorguide .map .nav_link li.skychapel {
    left: 40.6rem;
    top: 7.2rem;
    width: 13rem;
  }
  #page-wedding_floorguide .map .nav_link li.shiosai {
    width: 10rem;
    left: 33.7rem;
    top: 3.2rem;
  }
  #page-wedding_floorguide .map .nav_link li.chapel {
    width: 9.2rem;
    left: 78.6rem;
    top: 5.2rem;
  }
  #page-wedding_floorguide .map .nav_link li.banquet {
    width: 11rem;
    top: 5.2rem;
    left: 63.5rem;
  }
  #page-wedding_floorguide .map .nav_link li.skyterrace {
    width: 14rem;
    top: 0.4rem;
    left: 76.2rem;
  }
  #page-wedding_floorguide .map .nav_link li.entrance {
    width: 12rem;
    top: 0.4rem;
    left: 60.6rem;
  }
  #page-wedding_floorguide .chapel p:nth-last-child(1) {
    width: 96rem;
    margin: auto;
  }
  #page-wedding_floorguide .title {
    padding-bottom: 1.7rem;
    margin-bottom: 5rem;
  }
  #page-wedding_floorguide .title h3 {
    font-size: 3.6rem;
  }
  #page-wedding_floorguide .column h3 {
    font-size: 3.6rem;
    margin-bottom: 2rem;
  }
  #page-wedding_floorguide .column h3 span {
    font-size: 1.6rem;
  }
  #page-wedding_floorguide .column .catch {
    font-size: 2.2rem;
  }
  #page-wedding_floorguide .guide_box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 9rem;
  }
  #page-wedding_floorguide .guide_box .guide_box_slide {
    width: 65rem;
  }
  #page-wedding_floorguide .guide_box .txt {
    width: 49rem;
  }
  #page-wedding_floorguide .guide_box:nth-child(2n) .txt {
    order: -1;
  }
}
#page-wedding_cuisine h2.hd::before {
  content: 'Cuisine';
}
#page-wedding_cuisine .content .inner {
  width: 100%;
}
#page-wedding_cuisine .column-inner {
  margin: 0;
  padding: 0;
}
#page-wedding_cuisine .column img {
  width: 100%;
  border-radius: 3px;
}
#page-wedding_cuisine .column ul {
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#page-wedding_cuisine .column h3 {
  font-weight: normal;
}
#page-wedding_cuisine .column .catch {
  color: #2C6D93;
}

@media screen and (min-width: 781px) {
  #page-wedding_cuisine .pagetop_txt {
    margin-bottom: 16rem;
  }
  #page-wedding_cuisine .cuisine_box {
    display: flex;
    justify-content: space-between;
    max-width: 146rem;
    margin: 0 auto 8rem;
  }
  #page-wedding_cuisine .cuisine_box .main_ph {
    position: relative;
    max-width: 77rem;
    margin-right: 3rem;
  }
  #page-wedding_cuisine .cuisine_box .main_ph h3, #page-wedding_cuisine .cuisine_box .main_ph .catch {
    position: absolute;
    z-index: 1;
  }
  #page-wedding_cuisine .cuisine_box .main_ph h3 {
    top: 4.8rem;
    left: 3rem;
    font-size: 3.6rem;
  }
  #page-wedding_cuisine .cuisine_box .main_ph .catch {
    background: #fff;
    top: 12rem;
    left: 0;
    padding: 1rem 3rem;
    font-size: 1.8rem;
  }
  #page-wedding_cuisine .cuisine_box ul {
    max-width: 66rem;
  }
  #page-wedding_cuisine .cuisine_box ul li {
    width: calc((100% - 2rem) / 2);
  }
  #page-wedding_cuisine .cuisine_box ul li:nth-child(1) {
    margin: 0 2rem 2rem 0;
  }
  #page-wedding_cuisine .cuisine_box ul li:nth-child(2) {
    margin-bottom: 2rem;
  }
  #page-wedding_cuisine .cuisine_box ul li:nth-child(3) {
    margin-right: 2rem;
  }
  #page-wedding_cuisine .cuisine_box.yasai .main_ph h3 {
    color: #fff;
  }
  #page-wedding_cuisine .cuisine_box.fish .main_ph {
    margin: 0 0 0 3rem;
  }
  #page-wedding_cuisine .cuisine_box.fish ul {
    order: -1;
  }
  #page-wedding_cuisine .cuisine_box.beef {
    margin-bottom: 23rem;
  }
  #page-wedding_cuisine .cuisine_box.beef .main_ph .catch {
    top: 13rem;
  }
  #page-wedding_cuisine .cuisine_box.beef ul li {
    width: 100%;
  }
  #page-wedding_cuisine .cuisine_box.beef ul li:nth-child(1) {
    margin-right: 0;
  }
  #page-wedding_cuisine .cuisine_box.beef ul li:nth-child(2) {
    margin-bottom: 0;
  }
}
#page-wedding_access h2.hd::before {
  content: 'Access';
}
#page-wedding_access .content h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
  text-align: center;
}
#page-wedding_access .content h3.title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 4rem;
}
#page-wedding_access .content h3.title span {
  margin: 0 1em;
}
#page-wedding_access .content h3.title::before, #page-wedding_access .content h3.title::after {
  content: "";
  display: block;
  height: 1px;
  background: #2C6D93;
  flex: 1 0 0%;
}
#page-wedding_access .content h5 {
  color: #2C6D93;
}
#page-wedding_access .content .txt_en {
  text-align: center;
  color: #2C6D93;
}
#page-wedding_access .content iframe {
  width: 100%;
}
#page-wedding_access .content ul {
  list-style: none;
  padding: 0;
}
#page-wedding_access .content ul img {
  width: 100%;
}
#page-wedding_access .content ul li h4 {
  font-weight: bold;
  color: #2C6D93;
  display: flex;
  align-items: center;
  margin-bottom: 1.6rem;
}
#page-wedding_access .content ul li h4::before {
  content: "";
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  margin-right: 1.6rem;
}
#page-wedding_access .content ul li:nth-child(1) h4::before {
  background: url("../img/icon_car_wedding.svg");
  background-size: 100%;
}
#page-wedding_access .content ul li:nth-child(2) h4::before {
  background: url("../img/icon_train_wedding.svg");
  background-size: 100%;
}
#page-wedding_access .content .box dl {
  display: inline-block;
}
#page-wedding_access .content .box dl dt {
  border: solid #9B98AB;
  border-width: 1px 0 1px 0;
  padding: 0.3em 1em;
  font-weight: bold;
  color: #2C6D93;
}
#page-wedding_access .content .box dl dd {
  border-bottom: 1px solid #9B98AB;
  padding: 0.3em 1em;
}
#page-wedding_access .content .btn li a {
  text-align: center;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #0D004C;
  color: #0D004C;
  text-decoration: none;
}
#page-wedding_access .content .btn li a::before {
  content: "";
  display: block;
  background: url("../img/icon_bus.svg") center center no-repeat;
  background-size: 100%;
}
#page-wedding_access .content .btn li a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#page-wedding_access .content .btn li a:hover {
  background: #53B9AC;
}
#page-wedding_access .content .information {
  background: #F2F0EB;
  margin: 0 calc(50% - 50vw);
  padding: 0 calc(50vw - 50%);
  width: 100vw;
  text-align: center;
}
#page-wedding_access .content .information .info_box {
  background: #fff;
  text-align: left;
}
#page-wedding_access .content .information .info_box p {
  margin-top: 1em;
}

@media screen and (min-width: 781px) {
  #page-wedding_access .content h3 {
    font-size: 1.8rem;
  }
  #page-wedding_access .content h3.title {
    font-size: 2.8rem;
    margin-bottom: 4.3rem;
  }
  #page-wedding_access .content h3.title.second {
    margin-top: 10rem;
  }
  #page-wedding_access .content .txt_en {
    font-size: 3.6rem;
  }
  #page-wedding_access .content .map {
    margin: 4rem 0 7rem;
  }
  #page-wedding_access .content iframe {
    height: 41.5rem;
  }
  #page-wedding_access .content ul h4 {
    font-size: 1.8rem;
  }
  #page-wedding_access .content ul li {
    margin-bottom: 6.4rem;
  }
  #page-wedding_access .content ul li:nth-last-child(1) {
    margin-bottom: 2.4rem;
  }
  #page-wedding_access .content .box {
    margin-bottom: 6rem;
  }
  #page-wedding_access .content .box:nth-of-type(1) {
    margin-top: 6rem;
  }
  #page-wedding_access .content .box h5 {
    font-size: 1.8rem;
  }
  #page-wedding_access .content .box p {
    margin-left: 1.3rem;
  }
  #page-wedding_access .content .box dl {
    margin-top: 2rem;
  }
  #page-wedding_access .content .btn {
    margin-top: 2.3rem;
    margin-left: 2.8rem;
  }
  #page-wedding_access .content .btn li {
    margin-bottom: 1.6rem;
    width: 40.8rem;
  }
  #page-wedding_access .content .btn li a {
    height: 4.8rem;
    border-radius: 2.4rem;
  }
  #page-wedding_access .content .btn li a::before {
    width: 3.2rem;
    height: 3.2rem;
    margin-left: 3.2rem;
  }
  #page-wedding_access .content .btn li a::after {
    margin: 0 2.6rem;
  }
  #page-wedding_access .content .information {
    padding-top: 10.2rem;
    padding-bottom: 9.6rem;
  }
  #page-wedding_access .content .information > p:not(.txt_en) {
    margin: 5rem 0;
  }
  #page-wedding_access .content .information .info_box {
    padding: 3.2rem;
    margin-top: 3.2rem;
  }
  #page-wedding_access .content .information .info_box p {
    margin-left: 1em;
  }
}
#page-wedding_location h2.hd::before {
  content: 'Location';
}
#page-wedding_location .content .inner {
  width: 100%;
}
#page-wedding_location .column {
  max-width: 100%;
}
#page-wedding_location .column .location_ph_01 {
  max-width: 120rem;
  margin: 0 auto 4rem;
  display: block;
}
#page-wedding_location .column .location_ph_01 ul {
  display: block;
}
#page-wedding_location .column .location_ph_01 li img {
  width: 100%;
  height: 68rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
#page-wedding_location .column img {
  width: 100%;
  border-radius: 3px;
}
#page-wedding_location .column ul {
  list-style: none;
  padding: 0;
  max-width: 164rem;
  width: 100%;
  margin: 0 auto 2rem;
}
#page-wedding_location .column .photographer {
  background: #FFFBE4;
  padding: 5rem;
}
#page-wedding_location .column .photographer .ph {
  position: relative;
  color: #2C6D93;
}
#page-wedding_location .column .photographer .ph::before, #page-wedding_location .column .photographer .ph::after {
  content: "";
  position: absolute;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: 1px solid;
}
#page-wedding_location .column .photographer .ph::before {
  left: -2rem;
  top: 1rem;
}
#page-wedding_location .column .photographer .ph::after {
  right: -2rem;
  bottom: 1rem;
}
#page-wedding_location .column .photographer .txt {
  color: #2C6D93;
}
#page-wedding_location .column .photographer .txt h3 {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-wedding_location .slick-slider {
  list-style: none;
  padding: 0;
}
#page-wedding_location .slick-slider ul {
  padding: 0;
  list-style: none;
}
#page-wedding_location .slick-slider div {
  font-size: 0;
}
#page-wedding_location .slick-slider div img {
  width: 100%;
}
#page-wedding_location .slick-slider .slick-prev, #page-wedding_location .slick-slider .slick-next {
  z-index: 1;
  width: 3rem;
  height: 3rem;
}
#page-wedding_location .slick-slider .slick-prev::before, #page-wedding_location .slick-slider .slick-next::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
#page-wedding_location .slick-slider .slick-prev {
  left: 1.1rem;
}
#page-wedding_location .slick-slider .slick-prev::before {
  background: url("../img/wedding_slick_prev.png");
  background-size: 100%;
}
#page-wedding_location .slick-slider .slick-next {
  right: 1.1rem;
}
#page-wedding_location .slick-slider .slick-next::before {
  background: url("../img/wedding_slick_next.png");
  background-size: 100%;
}
#page-wedding_location .slick-slider .slick-dots li {
  margin: 0;
}
#page-wedding_location .slick-slider .slick-dots li button::before {
  opacity: 1;
  color: #B5B5B5;
}
#page-wedding_location .slick-slider .slick-dots li.slick-active button::before {
  opacity: 1;
  color: #2C6D93;
}
#page-wedding_location .slick-slider.floorguide_slider01, #page-wedding_location .slick-slider.floorguide_slider02 {
  margin-bottom: 8rem;
}

@media screen and (min-width: 781px) {
  #page-wedding_location .pagetop_txt {
    margin-bottom: 4rem;
  }
  #page-wedding_location .column ul {
    display: grid;
    display: -ms-grid;
  }
  #page-wedding_location .column ul li {
    margin-left: 2rem;
    margin-bottom: 2rem;
  }
  #page-wedding_location .column ul li:nth-child(1) {
    margin-left: 0;
  }
  #page-wedding_location .column ul.location_ph_02 {
    grid-template-columns: 49.3% 1fr 1fr;
    grid-template-rows: auto auto auto;
    -ms-grid-columns: 49.3% 1fr 1fr;
    -ms-grid-rows: auto auto auto;
  }
  #page-wedding_location .column ul.location_ph_02 img {
    height: 24rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(1) {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(1) img {
    height: 50rem;
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(2) {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(3) {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
    -ms-grid-column: 3;
    -ms-grid-row: 1;
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(4) {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    -ms-grid-column: 2;
    -ms-grid-row: 2;
  }
  #page-wedding_location .column ul.location_ph_02 li:nth-child(5) {
    grid-column: 3 / 4;
    grid-row: 2 / 3;
    -ms-grid-column: 3;
    -ms-grid-row: 2;
  }
  #page-wedding_location .column ul.location_ph_03 {
    max-width: 120rem;
    display: flex;
    flex-wrap: wrap;
  }
  #page-wedding_location .column ul.location_ph_03 li {
    width: calc((120rem - 2rem) / 2);
  }
  #page-wedding_location .column ul.location_ph_03 li:nth-child(3) {
    margin-left: 0;
  }
  #page-wedding_location .column ul.location_ph_03 img {
    height: 35.8rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-wedding_location .column ul.location_ph_04 {
    grid-template-columns: 1fr 1fr 49.3%;
    grid-template-rows: auto auto auto auto;
    -ms-grid-columns: 1fr 1fr 49.3%;
    -ms-grid-rows: auto auto auto auto;
  }
  #page-wedding_location .column ul.location_ph_04 img {
    height: 24rem;
    object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  #page-wedding_location .column ul.location_ph_04 li {
    margin-right: 2rem;
    margin-left: 0;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(1) {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    -ms-grid-column: 1;
    -ms-grid-row: 1;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(2) {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(3) {
    grid-column: 1 / 2;
    grid-row: 2 / 2;
    -ms-grid-column: 1;
    -ms-grid-row: 2;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(4) {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    -ms-grid-column: 2;
    -ms-grid-row: 2;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(5) {
    grid-column: 3 / 3;
    grid-row: 1 / 3;
    -ms-grid-column: 3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    margin-right: 0;
  }
  #page-wedding_location .column ul.location_ph_04 li:nth-child(5) img {
    height: 50rem;
  }
  #page-wedding_location .column ul.location_ph_05 {
    display: flex;
    justify-content: space-between;
  }
  #page-wedding_location .column .photographer {
    display: flex;
    justify-content: center;
  }
  #page-wedding_location .column .photographer .ph {
    width: 32rem;
  }
  #page-wedding_location .column .photographer .ph::before, #page-wedding_location .column .photographer .ph::after {
    width: 6rem;
  }
  #page-wedding_location .column .photographer .txt {
    width: 49.7rem;
    margin-left: 6rem;
    padding-top: 4.8rem;
  }
  #page-wedding_location .column .photographer .txt .txt_en {
    font-size: 3.6rem;
  }
  #page-wedding_location .column .photographer .txt h3 {
    font-size: 2.6rem;
    margin-bottom: 1.5rem;
  }
  #page-wedding_location .column .photographer .txt h3 span {
    font-size: 1.8rem;
  }
}
#page-wedding_concept h2.hd::before {
  content: 'Concept';
}
#page-wedding_concept .content .inner {
  width: 100%;
}
#page-wedding_concept .column .column-inner {
  padding-bottom: 0;
  margin-bottom: 0;
}
#page-wedding_concept .concept_box_bgfull {
  display: flex;
  justify-content: center;
  align-items: center;
}
#page-wedding_concept .concept_box_bgfull .txt {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
  line-height: 2;
}
#page-wedding_concept .concept_box .txt {
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  color: #2C6D93;
  line-height: 2;
}

@media screen and (min-width: 781px) {
  #page-wedding_concept .pagetop_txt {
    max-width: 1760px;
    margin: auto;
    background: url("../img/weddin_concept_topbox_bg.png") center bottom no-repeat;
    background-size: 100%;
    font-size: 2rem;
    margin-bottom: 21.4rem;
    line-height: 2;
  }
  #page-wedding_concept .pagetop_txt .txt_en {
    font-size: 4.6rem;
    margin-bottom: 10rem;
    line-height: 1;
  }
  #page-wedding_concept .concept_box_bgfull {
    height: 73rem;
  }
  #page-wedding_concept .concept_box_bgfull .txt {
    width: 100%;
    max-width: 96rem;
    display: flex;
    flex-direction: column;
    font-size: 2rem;
  }
  #page-wedding_concept .concept_box_bgfull.box1 {
    background: url("../img/wedding_concept_bgfull01_pc.jpg") center center no-repeat;
    background-size: cover;
  }
  #page-wedding_concept .concept_box_bgfull.box1 .txt {
    align-items: flex-end;
  }
  #page-wedding_concept .concept_box_bgfull.box4 {
    background: url("../img/wedding_concept_bgfull02_pc.jpg") center center no-repeat;
    background-size: cover;
    align-items: center;
  }
  #page-wedding_concept .concept_box_bgfull.box4 .txt {
    color: #fff;
    text-align: center;
    font-size: 3rem;
  }
  #page-wedding_concept .concept_box_bgfull.box4 .txt .txt_en {
    color: #fff;
    font-size: 4rem;
  }
  #page-wedding_concept .concept_box {
    display: flex;
    align-items: center;
  }
  #page-wedding_concept .concept_box div {
    width: 50%;
  }
  #page-wedding_concept .concept_box div img {
    width: 100%;
  }
  #page-wedding_concept .concept_box .txt {
    padding: 0 11rem;
    font-size: 2rem;
  }
  #page-wedding_concept .concept_box.box2 .ph {
    order: -1;
  }
  #page-wedding_concept .concept_box.box3 .txt {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
  }
}
@media screen and (max-width: 1460px) {
  #page-wedding_concept .pagetop_txt {
    font-size: 1.9rem;
  }
}
#page-wedding_form .main-photo .main-photo-inner img {
  height: 39rem !important;
}
#page-wedding_form .content .inner {
  width: 108rem;
}
#page-wedding_form h2.hd {
  display: none;
}
#page-wedding_form .column h3 {
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
  font-weight: normal;
}
#page-wedding_form .column .attention_txt {
  text-align: center;
  margin: 0 0 6rem;
}
#page-wedding_form .column .attention_txt ul {
  list-style: none;
  padding: 0;
  margin-top: 2em;
}
#page-wedding_form .column .kakunin_txt {
  margin: 5rem 0 3rem;
  text-align: center;
}
#page-wedding_form .column .hissu {
  font-weight: bold;
  color: #FF0000;
}
#page-wedding_form .column table {
  border: none;
  border-collapse: collapse;
  width: 100%;
}
#page-wedding_form .column table tr {
  border-bottom: 2px solid #fff;
}
#page-wedding_form .column table tr.yoteibi select {
  width: 10rem;
}
#page-wedding_form .column table tr.yoteibi span {
  margin: 0 3rem 0 1.4rem;
}
#page-wedding_form .column table tr.jikan select {
  margin-right: 1.4rem;
  width: 10rem;
}
#page-wedding_form .column table tr.sitsumon textarea {
  padding: 10px;
  height: 20rem;
  width: 100%;
}
#page-wedding_form .column table tr.namae input, #page-wedding_form .column table tr.kana input, #page-wedding_form .column table tr.aite input {
  margin: 0 3rem 0 1.4rem;
  width: 24rem;
}
#page-wedding_form .column table tr.namae p:nth-last-child(1) input, #page-wedding_form .column table tr.kana p:nth-last-child(1) input, #page-wedding_form .column table tr.aite p:nth-last-child(1) input {
  margin-right: 0;
}
#page-wedding_form .column table tr.nenrei input, #page-wedding_form .column table tr.ninzu input {
  margin-right: 1.4rem;
  width: 10rem;
}
#page-wedding_form .column table tr.yuubin input {
  margin: 0 1.4rem;
  width: 10rem;
}
#page-wedding_form .column table tr.ken select {
  width: 27rem;
}
#page-wedding_form .column table tr.juusyo input {
  width: 100%;
}
#page-wedding_form .column table tr.denwa input, #page-wedding_form .column table tr.mail input, #page-wedding_form .column table tr.mail_kakunin input {
  width: 40rem;
}
#page-wedding_form .column table th, #page-wedding_form .column table td {
  border: none;
  padding: 2rem;
  vertical-align: middle;
}
#page-wedding_form .column table th {
  background: #D5E6F1;
}
#page-wedding_form .column table td {
  background: #EFEFEF;
}
#page-wedding_form .column table td div {
  display: flex;
  align-items: center;
}
#page-wedding_form .column table td input, #page-wedding_form .column table td select, #page-wedding_form .column table td textarea {
  border: 1px solid #707070;
  font-size: 16px;
}
#page-wedding_form .column .btn {
  display: flex;
  justify-content: center;
}
#page-wedding_form .column .btn .sousin, #page-wedding_form .column .btn .back {
  width: 50%;
  margin: auto;
  text-align: center;
}
#page-wedding_form .column .btn .sousin p, #page-wedding_form .column .btn .back p {
  display: inline-block;
  width: 90%;
  position: relative;
}
#page-wedding_form .column .btn .sousin p input, #page-wedding_form .column .btn .back p input {
  height: 8rem;
  width: 100%;
  color: #fff;
  font-size: 2rem;
  border-radius: 5px;
  cursor: pointer;
  transition: all  0.3s ease;
}
#page-wedding_form .column .btn .sousin p input:hover, #page-wedding_form .column .btn .back p input:hover {
  opacity: 0.8;
}
#page-wedding_form .column .btn .back p::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 3rem;
  margin: auto;
  width: 2.3rem;
  height: .6rem;
  border-left: 2px solid #fff;
  border-bottom: 1px solid #fff;
  transform: skewX(-50deg);
  background: none;
}
#page-wedding_form .column .btn .back p input {
  background: #888;
}
#page-wedding_form .column .btn .sousin p::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 3rem;
  left: auto;
  margin: auto;
  width: 2.3rem;
  height: .6rem;
  border-right: 2px solid #fff;
  border-bottom: 1px solid #fff;
  transform: skewX(50deg);
  background: none;
}
#page-wedding_form .column .btn .sousin p input {
  background: #D98869;
}
#page-wedding_form .flowchart {
  color: #333333;
  counter-reset: section;
  list-style: none;
  overflow: hidden;
  margin: 10px auto 7.8rem;
  width: 600px;
}
#page-wedding_form .flowchart ul {
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
#page-wedding_form .flowchart ul li {
  text-align: center;
  color: #2C6D93;
}
#page-wedding_form .flowchart ul li.arrow {
  flex: 1 0 0%;
  border-bottom: 1px solid #2C6D93;
  text-indent: -9999px;
  margin: 0 20px 30px;
  height: 1px;
}
#page-wedding_form .flowchart ul li .number {
  border: 1px solid #2C6D93;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #2C6D93;
  width: 6.4rem;
  height: 6.4rem;
  font-family: "游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
}
#page-wedding_form .flowchart ul li .text {
  display: block;
}
#page-wedding_form .flowchart ul li.active .number {
  background: #2C6D93;
  color: #fff;
}

@media screen and (min-width: 781px) {
  #page-wedding_form .column h3 {
    font-size: 3rem;
    margin-bottom: 5.8rem;
  }
  #page-wedding_form .column table th {
    width: 33rem;
  }
  #page-wedding_form .flowchart ul li {
    font-size: 2rem;
  }
  #page-wedding_form .flowchart ul li .number {
    font-size: 3rem;
    margin: 0 auto 2rem;
  }
}
#page-wedding_info h2.hd::before {
  content: 'Wedding Information';
}
#page-wedding_info dl dt {
  color: #806940;
  font-size: 1.8rem;
}
#page-wedding_info dl dd {
  border-bottom: 1px solid #A1A1A1;
}
#page-wedding_info .statement_link a {
  margin: 2rem 0 0 auto;
}

@media screen and (min-width: 781px) {
  #page-wedding_info dl dt {
    font-weight: bold;
    margin-bottom: 1em;
  }
  #page-wedding_info dl dd {
    display: flex;
    align-items: center;
    padding-bottom: 1em;
    margin-bottom: 2.4rem;
  }
  #page-wedding_info dl dd > p:nth-child(1) {
    flex: 1 0 0%;
  }
  #page-wedding_info dl dd .statement_link a {
    margin-top: 0;
    margin-left: 1em;
  }
}
