@charset "UTF-8";
.pc-only {
  display: block;
}
.pc-inline {
  display: inline;
}
.sp-only {
  display: none;
}
.sp-inline {
  display: none;
}

.taL {
  text-align: left;
}
.taC {
  text-align: center;
}
.taR {
  text-align: right;
}

.flexbox {
  justify-content: space-between;
}

body {
  font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  color: #222;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}
h1 {
  font-size: calc(100vw * (25 / 1920));
  font-weight: 500;
  line-height: calc(100vw * (42.5 / 1920));
}

h2 {
  font-size: calc(100vw * (50 / 1920));
  font-family: ten-mincho, serif;
  font-weight: 400;
  text-align: center;
  margin-bottom: calc(100vw * (30 / 1920));
  line-height: calc(100vw * (73 / 1920));
}
h2::first-letter {
  color: #51AE51;
}
h2 span {
  font-size: calc(100vw * (18 / 1920));
  line-height: calc(100vw * (26 / 1920));
  margin-left: calc(100vw * (15 / 1920));
}

h3 {
  font-size: calc(100vw * (30 / 1920));
  font-family: ten-mincho, serif;
  font-weight: 400;
  text-align: center;
  line-height: calc(100vw * (44 / 1920));
  margin-bottom: calc(100vw * (30 / 1920));
}

h4 {
  font-size: calc(100vw * (20 / 1920));
  font-family: ten-mincho, serif;
  font-weight: 700;
  line-height: calc(100vw * (31 / 1920));
  margin-bottom: calc(100vw * (10 / 1920));
}

p {
  font-size: calc(100vw * (18 / 1920));
  font-weight: 500;
  line-height: calc(100vw * (31 / 1920));
  margin-bottom: calc(100vw * (20 / 1920));
}
div {
  font-size: calc(100vw * (18 / 1920));
  font-weight: 500;
  line-height: calc(100vw * (31 / 1920));
}
a {
  font-size: calc(100vw * (18 / 1920));
  font-weight: 500;
  line-height: calc(100vw * (31 / 1920));
}
a:hover {
  text-decoration: none;
  color: #222;
  opacity: .7;
}
a[href*="tel:"]:hover {
  color: inherit;
}
ul {
  padding: 0;
  margin: 0;
}
ul li {
  list-style-type: none;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .pc-only {
    display: none;
  }
  .pc-inline {
    display: none;
  }
  .sp-only {
    display: block;
  }
  .sp-inline {
    display: inline;
  }
  
  h1 {
    font-size: calc(100vw*(12 / 375));
    line-height: calc(100vw*(18 / 375));
  }
  
  h2 {
    font-size: calc(100vw * (20 / 375));
    line-height: calc(100vw * (30 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  
  h2 span {
    font-size: calc(100vw * (10 / 375));
    line-height: calc(100vw * (20 / 375));
    margin-left: calc(100vw * (10 / 375));
  }
  
  h3 {
    font-size: calc(100vw * (18 / 375));
    line-height: calc(100vw * (27 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  
  h4 {
    font-size: calc(100vw * (16 / 375));
    line-height: calc(100vw * (24 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  
  p {
    font-size: calc(100vw * (12 / 375));
    line-height: calc(100vw * (18 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  div {
    font-size: calc(100vw * (12 / 375));
    line-height: calc(100vw * (18 / 375));
  }
  a {
    font-size: calc(100vw * (12 / 375));
    line-height: calc(100vw * (18 / 375));
  }
}

/*--- ヘッダー ---*/
header {
  position: relative;
  color: #FFF;
  z-index: 1;
}
.header-inner {
  position: absolute;
  padding: calc(100vw * (30 / 1920)) calc(100vw * (70 / 1920));
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}
.header-inner .header-tel {
  font-size: calc(100vw * (25 / 1920));
  margin-right: calc(100vw * (145 / 1920));
}
.tel-number {
  font-size: calc(100vw * (40 / 1920));
  font-family: ten-mincho, serif;
  color: #FFF;
}

#hamburger-menu {
  cursor: pointer;
}
#g-nav {
  position: fixed;
  z-index: 999;
  top: 0;
  right: -120%;
  width: calc(100% * (900 / 1920));
  height: 100vh;
  background: #FFF;
  transition: all 0.6s;
  overflow-y: scroll;
  /*display: flex;*/
  justify-content: center;
  align-items: center;
  padding: calc(100vw*(120 / 1920)) calc(100vw*(160 / 1920));
}
/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
  right: 0;
}
/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999; 
  width: 100%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
/*ナビゲーション*/
#g-nav .nav-content {
  /*ナビゲーション天地中央揃え*/
  /*position: absolute;*/
  z-index: 999;
  font-family: ten-mincho, serif;
}
#g-nav .nav-container {
  gap: calc(100vw * (60 / 1920));
  margin-bottom: calc(100vw * (45 / 1920));
}
#g-nav ul.nav-list {
}
/*リストのレイアウト設定*/
#g-nav li {
  list-style: none;
  margin-bottom: calc(100vw * (15 / 1920));
}
#g-nav li a {
  display: block;
  font-size: calc(100vw * (30 / 1920));
  font-weight: 400;
  line-height: calc(100vw * (44 / 1920));
}
#g-nav li a::first-letter {
  color: #51AE51;
}
#g-nav li a span {
  display: block;
  margin-top: calc(100vw * (4 / 1920));
  font-size: calc(100vw * (18 / 1920));
  line-height: calc(100vw * (26 / 1920));
}
.openbtn1 {
  position: fixed;
  z-index: 9999;/*ボタンを最前面に*/
  top: 30px;
  right: 70px;
  cursor: pointer;
  width: 45px;
  height: 30px;
}
.openbtn1 span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 0;
  height: 5px;
  background-color: #FFF;
  width: 100%;
}
.openbtn1 span:nth-of-type(1) {
  top: 0px; 
}
.openbtn1 span:nth-of-type(2) {
  top: calc(100% * (5 / 12))
}
.openbtn1 span:nth-of-type(3) {
  top: calc(100% * (10 / 12))
}
.openbtn1.active span {
   background-color: #222;
}
.openbtn1.active span:nth-of-type(1) {
  top: 0;
  left: 0;
  transform: translateY(12.5px) rotate(-45deg);
  width: 100%;
}
.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn1.active span:nth-of-type(3){
  top: calc(100% * (5 / 12));
  left: 0;
  transform: translateY(0.5px) rotate(45deg);
  width: 100%;
}
#g-nav .nav-content .header-tel {
  color: #222;
  margin-bottom: calc(100vw * (35 / 1920));
}
#g-nav .nav-content .header-tel a.tel-number {
  color: #222;
}
#g-nav a.reservation-button {
  max-width: 330px;
  font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .header-inner {
    padding: calc(100vw * (10 / 375)) 0;
  }
  .header-inner .header-tel {
    font-size: calc(100vw * (12 / 375));
    margin-right: calc(100vw * (60 / 375));
  }
  .tel-number {
    font-size: calc(100vw * (16 / 375));
  }
  
  #g-nav {
    width: 100%;
    padding: calc(100vw*(60 / 375)) calc(100vw*(20 / 375));
  }
  #g-nav .nav-container {
    gap: 0;
    margin-bottom: calc(100vw * (15 / 375));
  }
  #g-nav ul.nav-list:first-of-type {
    margin-right: calc(100vw*(20 / 375));
  }
  #g-nav li {
    margin-bottom: calc(100vw*(15 / 375));
  }
  #g-nav li a {
    font-size: calc(100vw*(20 / 375));
    line-height: calc(100vw*(30 / 375));
  }
  #g-nav li a span {
    margin-top: 0;
    font-size: calc(100vw*(12 / 375));
    line-height: calc(100vw*(18 / 375));
  }
  #g-nav .nav-content .header-tel {
    margin-bottom: calc(100vw * (10 / 375));
  }
  .openbtn1 {
    top: 20px;
    right: 20px;
    width: 30px;
    height: 20px;
  }
  .openbtn1 span {
    height: calc(100% * (5 / 30));
  }
  .openbtn1.active span:nth-of-type(1) {
    transform: translateY(10px) rotate(-45deg);
  }
  .openbtn1.active span:nth-of-type(3) {
    transform: translateY(2px) rotate(45deg);
  }
}

/*--- main ---*/

/*--- メインビジュアル ---*/
#main-visual {
  position: relative;
}
.main-visual-txt {
  position: absolute;
  top: calc(100% * (205 / 850));
  left: calc(100% * (210.5 / 1920));
  color: #FFF;
}
.main-visual-txt .open-day {
  font-size: calc(100vw * (60 / 1920));
  font-family: ten-mincho, serif;
  line-height: calc(100vw * (110 / 1920));
  text-shadow: 0px 3px 10px rgba(0, 0, 0, 0.85);
}
.main-visual-txt .open-day span {
  font-size: calc(100vw * (90 / 1920));
  line-height: calc(100vw * (110 / 1920));
}
.main-visual-txt h1 {
  margin-top: calc(100vw * (20 / 1920));
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #pet-friendly main {
    padding: 0;
  }
  
  .main-visual-txt {
    top: calc(100%*(180 / 375));
    left: calc(100%*(15 / 375));
  }
  .main-visual-txt .open-day {
    font-size: calc(100vw * (24 / 375));
  }
  .main-visual-txt .open-day span {
    font-size: calc(100vw * (36 / 375));
  }
  .main-visual-txt h1 {
    margin-top: calc(100vw*(10 / 375));
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.4);
  }
}

/*--- article ---*/
article#content {
  padding: 0;
}

.overlap {
  position: relative;
}
.overlap .overlap-img {
}
.overlap .overlap-txt {
  position: absolute;
  bottom: calc(100% * (-180 / 600));
  right: 0;
  background: #FFF;
  padding: calc(100vw * (60 / 1920)) calc(100vw * (150 / 1920));
  width: calc(100% * (1116 / 1920));
}

ul.box-img {
  flex-wrap: nowrap;
  gap: calc(100% * (60 / 1920));
  margin-top: calc(100vw * (30 / 1920));
}

section {
  position: relative;
}
.sec-container {
  max-width: calc(100vw * (1500 / 1920));
  margin: 0 auto;
}
.sec-inner {
  max-width: calc(100vw * (1100 / 1920));
  margin: 0 auto;
}

.top-right-img {
  position: absolute;
  top: calc(100vw * (-185 / 1920));
  right: 0;
  width: calc(100% * (573 / 1920));
}

table {
  border-top: 2px solid #222;
}
th, td {
  border-left: 0;
  border-right: 0;
  font-weight: 500;
}
th {
  padding: calc(100vw * (10 / 1920));
  background: #E9EAE8;
}
td {
  background: #FFF;
}

.column {
  background: #FFF;
  padding: calc(100vw * (48 / 1920)) calc(100vw * (64 / 1920)) calc(100vw * (64 / 1920));
  margin-bottom: calc(100vw * (60 / 1920));
  border: 1px solid #222;
}
.column h2 {
  font-size: calc(100vw * (30 / 1920));
  margin-bottom: calc(100vw * (34 / 1920));
  line-height: calc(100vw * (44 / 1920));
}
.column h2::first-letter {
  color: #222;
}
.column .column-lead {
  text-align: center;
  margin-bottom: calc(100vw * (43 / 1920))
}
.column ul li {
  text-indent: -1em;
  padding-left: 1em;
}
.column ul li::before {
  content: "・";
}

.shift {
  margin-top: calc(100vw * (110 / 1920));
}
.shift .shift-child {
  margin-bottom: calc(100vw * (100 / 1920));
}
.shift .shift-child:last-of-type {
  margin-bottom: 0;
}
.shift .shift-child .shift-txt {
  width: calc(100vw * (1510 / 1920));
  background: #FFF;
}
.shift .shift-child:nth-of-type(odd) .shift-txt {
  padding: calc(100vw * (60 / 1920)) calc(100vw * (150 / 1920)) calc(100vw * (84 / 1920)) calc(100vw * (210 / 1920));
  margin: 0 auto 0 0;
}
.shift .shift-child:nth-of-type(even) .shift-txt {
  padding: calc(100vw * (60 / 1920)) calc(100vw * (210 / 1920)) calc(100vw * (84 / 1920)) calc(100vw * (150 / 1920));
  margin: 0 0 0 auto;
}
.shift-txt h2 {
  text-align: left;
  margin-bottom: calc(100vw * (20 / 1920));
}
.shift-txt p {
  margin-bottom: 0;
}
ul.shift-img {
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: calc(100vw * (110 / 1920));
  margin-top: calc(100vw * (-133 / 1920));
}
.shift .shift-child:nth-of-type(odd) ul.shift-img {
}
.shift .shift-child:nth-of-type(even) ul.shift-img {
  flex-direction: row-reverse;
}
ul.shift-img li:first-of-type {
  margin-top: calc(100vw * (90 / 1920));
  width: calc(100% * (680 / 1920));
}
ul.shift-img li:last-of-type {
  width: calc(100% * (300 / 1920));
}

iframe {
  width: 100%;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .overlap .overlap-txt {
    position: static;
    width: 100%;
    padding: calc(100vw * (20 / 375));
  }
  
  ul.box-img {
    margin-top: calc(100vw * (40 / 375));
  }
  
  .sec-container {
    max-width: 100%;
    padding: 0 calc(100vw * (10 / 375));
  }
  .sec-inner {
    max-width: 100%;
    padding: 0 calc(100vw * (10 / 375));
  }
  
  .top-right-img {
    width: calc(100vw * (200 / 375));
    max-width: 50%;
    top: calc(100vw * (-80 / 375));
  }
  
  th, td {
    display: block;
    width: 100%;
    padding: calc(100vw * (10 / 375));
  }
  
  .column {
    padding: calc(100vw * (30 / 375)) calc(100vw * (10 / 375));
    margin-bottom: calc(100vw * (30 / 375));
  }
  .column h2 {
    font-size: calc(100vw * (20 / 375));
    margin-bottom: calc(100vw * (10 / 375));
    line-height: calc(100vw * (30 / 375));
  }
  .column .column-lead {
    text-align: left;
    margin-bottom: calc(100vw * (43 / 375))
  }
  
  .shift {
    margin-top: calc(100vw * (50 / 375));
  }
  .shift .shift-child {
    margin-bottom: calc(100vw * (40 / 375));
  }
  .shift .shift-child .shift-txt {
    width: 100%;
    background: #FFF;
  }
  .shift .shift-child:nth-of-type(odd) .shift-txt, .shift .shift-child:nth-of-type(even) .shift-txt {
    padding: calc(100vw * (20 / 375));
  }
  .shift-txt h2 {
    margin-bottom: calc(100vw * (10 / 375));
  }
  ul.shift-img {
    gap: calc(100vw * (20 / 375));
    margin-top: calc(100vw * (20 / 375));
  }
  ul.shift-img li:first-of-type {
    width: auto;
    margin-top: 0;
  }
  ul.shift-img li:last-of-type {
    width: auto;
  }
  
  .bx-controls {
    display: none;
  }
}

/*--- sec01 ---*/
#sec01 {
  background: #ECF5E8;
  padding: calc(100vw * (83 / 1920)) 0 calc(100vw * (100 / 1920));
}
#sec01 .overlap-txt h3 {
  font-size: calc(100vw * (25 / 1920));
  font-family: "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 700;
  text-align: left;
  line-height: calc(100vw * (38 / 1920));
  margin-bottom: 21px;
}
#sec01 .overlap-txt p {
  margin-bottom: 0;
}
#sec01 ul.box-img {
  position: relative;
  justify-content: flex-start;
}
#sec01 ul.box-img li:nth-of-type(1) {
  width: calc(100vw*(300 / 1920));
}
#sec01 ul.box-img li:nth-of-type(2) {
  margin-top: calc(100% * (78 / 1920));
  width: calc(100vw*(350 / 1920));
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec01 {
    padding: calc(100vw * (40 / 375)) 0;
  }
  
  #sec01 .overlap-txt h3 {
    font-size: calc(100vw * (14 / 375));
    line-height: calc(100vw * (21 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  #sec01 .overlap-txt p {
    font-size: calc(100vw * (12 / 375));
    line-height: calc(100vw * (18 / 375));
  }
  #sec01 ul.box-img li:nth-of-type(1) {
    width: auto;
  }
  #sec01 ul.box-img li:nth-of-type(2) {
    margin-top: calc(100% * (78 / 1920));
    width: auto;
  }
}

/*--- sec02 ---*/
#sec02 {
  padding: calc(100vw * (100 / 1920)) 0;
  flex-wrap: nowrap;
}
#sec02 .sec-container {
  position: relative;
}

.sec02-main-img {
  margin-bottom: calc(100vw * (50 / 1920));
}
.sec02-main-img img {
  max-width: 19.5%;
}
.sec02-txt {
  text-align: center;
  margin-bottom: calc(100vw * (90 / 1920));
}

.sec-inner .room-container {
  margin-bottom: calc(100vw * (90 / 1920));
}
.sec-inner .room-container:last-child {
  margin-bottom: 0;
}
.room-container .bx-wrapper {
  margin-bottom: calc(100vw * (30 / 1920));
}
.room-inner {
  max-width: 725px;
  margin: 0 auto;
}
.room-inner .bx-pager {
  flex-wrap: nowrap;
  margin-bottom: calc(100vw * (30 / 1920));
}
.room-inner .bx-pager a {
  max-width: 18%;
}
.room-detail {
}
a.reservation-button {
  display: inline-block;
  color: #FFF;
  padding: calc(100vw * (9.5 / 1920)) calc(100vw * (15.5 / 1920));
  background: #222;
}
a.reservation-button::after {
  content: "";
  display: inline-block;
  background-image: url("../images/icon-arrow-right.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  width: 8px;
  height: 14px;
  margin-left: calc(100vw * (22 / 1920));
}
.room-information {
  width: 270px;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec02 {
    padding: calc(100vw * (40 / 375)) 0;
  }
  
  .sec02-main-img {
    margin-bottom: calc(100vw * (10 / 375));
  }
  .sec02-txt {
    text-align: left;
    margin-bottom: calc(100vw * (40 / 375));
  }
  
  .sec-inner .room-container {
    margin-bottom: calc(100vw * (40 / 375));
  }
  .room-container .bx-wrapper {
    margin-bottom: calc(100vw * (10 / 375));
  }
  .room-inner .bx-pager {
    margin-bottom: calc(100vw * (20 / 375))
  }
  a.reservation-button {
    padding: calc(100vw * (10 / 375)) calc(100vw * (15 / 375));
  }
  a.reservation-button::after {
    margin-left: calc(100vw * (20 / 375));
  }
  .room-information {
    margin-top: calc(100vw * (20 / 375));
    width: 100%;
  }
  .room-information th, .room-information td {
    display: table-cell;
    width: auto;
  }
}

/*--- sec03 ---*/
#sec03 {
  background: #ECF5E8;
  padding: calc(100vw * (80 / 1920)) 0 calc(100vw * (70 / 1920));
}

ul.sec03-attractions::before, ul.sec03-attractions::after {
  content: "";
  display: inline-block;
  height: 0;
  width: calc(100vw * (480 / 1920));
  padding: 0;
  margin: 0;
  order: 2;
}
ul.sec03-attractions li {
  margin-bottom: calc(100vw * (30 / 1920));
  width: calc(100vw * (480 / 1920));
}
ul.sec03-attractions li p {
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec03 {
    padding: calc(100vw * (40 / 375)) 0 calc(100vw * (35 / 375));
  }

  ul.sec03-attractions::before, ul.sec03-attractions::after {
  }
  ul.sec03-attractions {
    justify-content: center;
  }
  ul.sec03-attractions li {
    width: auto;
    margin-bottom: calc(100vw * (20 / 375));
  }
}

/*--- sec04 ---*/
#sec04 {
  padding: calc(100vw * (80 / 1920)) 0 calc(100vw * (100 / 1920));
}

table.overview {
  margin-bottom: calc(100vw * (100 / 1920));
}
table.overview th {
  width: calc(100%*(160 / 1100));
}
ul.facilities li {
  flex-wrap: nowrap;
  gap: calc(100vw * (74 / 1920));
}
ul.facilities li .facilities-img {
  min-width: calc(100vw * (480 / 1920));
}
ul.facilities li .facilities-txt {
  max-width: 100%;
}
table.facilities-detail th {
  width: 25%;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec04 {
    padding: calc(100vw * (40 / 375)) 0 calc(100vw * (50 / 375));
  }
  
  table.overview {
    margin-bottom: calc(100vw * (30 / 375));
  }
  table.overview th {
    width: 100%;
  }
  ul.facilities li {
    flex-wrap: wrap;
    gap: 0;
  }
  ul.facilities li .facilities-img {
    width: auto;
  }
  ul.facilities li .facilities-txt {
    width: 100%;
    margin-top: calc(100vw * (20 / 375));
  }
  table.facilities-detail th {
    width: 100%;
  }
}

/*--- sec05 ---*/
#sec05 {
  background: #ECF5E8;
  padding: calc(100vw * (100 / 1920)) 0;
}

.accommodation-fee-heading h3 {
  margin-bottom: calc(100vw * (24 / 1920));
}
.accommodation-fee-detail {
  width: calc(100vw * (560 / 1920));
  max-width: 100%;
}
.accommodation-fee-detail th {
  width: calc(100vw * (245 / 1920));
}

section .barbecue {
  margin-top: calc(100vw * (100 / 1920));
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec05 {
    padding: calc(100vw * (50 / 375)) 0;
  }

  .accommodation-fee-heading h3 {
    margin-bottom: calc(100vw * (5 / 375));
  }
  .accommodation-fee-detail {
    width: 100%;
  }
  .accommodation-fee-detail th, .accommodation-fee-detail td {
    display: table-cell;
    width: auto;
  }

  section .barbecue {
    margin-top: calc(100vw * (40 / 375));
  }
}

/*--- sec06 ---*/
#sec06 {
  padding: calc(100vw * (80 / 1920)) 0 calc(100vw * (100 / 1920));
}

.hotel-information {
  margin-bottom: calc(100vw * (30 / 1920));
  text-align: center;
}
.hotel-name {
  font-size: calc(100vw * (20 / 1920));
  font-weight: 700;
  margin-bottom: calc(100vw * (15 / 1920));
}
.access-map iframe {
  height: calc(100vw * (600 / 1920));
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec06 {
    padding: calc(100vw * (40 / 375)) 0 calc(100vw * (50 / 375));
  }

  .hotel-information {
    margin-bottom: calc(100vw * (20 / 375));
  }
  .hotel-name {
    font-size: calc(100vw * (14 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  .access-map iframe {
    height: calc((100vw - 10px) * (600 / 1100));
  }
}

/*--- sec07 ---*/
#sec07 {
  background: #ECF5E8;
  padding: calc(100vw * (80 / 1920)) 0 calc(100vw * (110 / 1920));
}

.stay-plan-img {
  width: calc(100vw * (480 / 1920));
}
.stay-plan-txt {
  width: calc(100% - (100vw * ((480 + 74.5) / 1920)));
}
.stay-plan-txt h3 {
  text-align: left;
  margin-bottom: calc(100vw * (5 / 1920));
}
.stay-plan-txt h4 {
  font-size: calc(100vw * (25 / 1920));
  font-weight: 400;
  line-height: calc(100vw * (37 / 1920));
  margin-bottom: calc(100vw * (15 / 1920));
}
.stay-plan-txt p {
  margin-bottom: calc(100vw * (20 / 1920));
}
.stay-plan-txt ul.stay-plan-txt-list {
  margin-bottom: calc(100vw * (30 / 1920));
}
.stay-plan-txt ul.stay-plan-txt-list li {
  text-indent: -1em;
  padding-left: 1em;
}
.stay-plan-txt ul.stay-plan-txt-list li::before {
  content: "・";
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  #sec07 {
    padding: calc(100vw * (40 / 375)) 0 calc(100vw * (55 / 375));
  }
  
  .stay-plan-img {
    width: auto;
  }
  .stay-plan-txt {
    width: 100%;
    margin-top: calc(100vw * (10 / 375));
  }
  .stay-plan-txt h3 {
    margin-bottom: 0;
  }
  .stay-plan-txt h4 {
    font-size: calc(100vw * (16 / 375));
    line-height: calc(100vw * (24 / 375));
    margin-bottom: calc(100vw * (10 / 375));
  }
  .stay-plan-txt p {
    margin-bottom: calc(100vw * (10 / 375));
  }
  .stay-plan-txt ul.stay-plan-txt-list {
    margin-bottom: calc(100vw * (20 / 375));
  }
}

/*--- フッター ---*/
footer {
  padding: calc(100vw * (50 / 1920)) 0;
  font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  text-align: center;
}
footer address {
  margin-bottom: calc(100vw * (30 / 1920));
}
footer address h3 {
  font-size: calc(100vw * (18 / 1920));
  font-weight: 700;
  line-height: calc(100vw * (31 / 1920));
  margin-bottom: calc(100vw * (10 / 1920));
}
footer address p {
  font-size: calc(100vw * (16 / 1920));
  line-height: calc(100vw * (27 / 1920));
  margin-bottom: calc(100vw * (5 / 1920));
}
footer address p.telnum-text {
  font-size: calc(100vw * (12 / 1920));
  line-height: calc(100vw * (31 / 1920));
}
footer #copy {
  font-size: calc(100vw * (10 / 1920));
  margin: 0;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  footer {
    padding: calc(100vw * (25 / 375)) 0;
  }
  footer address {
    margin-bottom: calc(100vw * (10 / 375));
  }
  footer address h3 {
    font-size: calc(100vw * (16 / 375));
    font-weight: 700;
    line-height: calc(100vw * (24 / 375));
    margin-bottom: calc(100vw * (5 / 375));
  }
  footer address p {
    font-size: calc(100vw * (14 / 375));
    line-height: calc(100vw * (21 / 375));
    margin-bottom: calc(100vw * (5 / 375));
  }
  footer address p.telnum-text {
    font-size: calc(100vw * (12 / 375));
    line-height: calc(100vw * (18 / 375));
  }
  footer #copy {
    font-size: calc(100vw * (10 / 375));
    margin: 0;
  }
}