@charset "UTF-8";
/* ==================================================
 * Color set
 * ================================================== */
/* ==================================================
 * Font
 * ================================================== */
/* ==================================================
 * width
 * ================================================== */
/* ==================================================
 * layout
 * ================================================== */
/* ==================================================
 * bg
 * ================================================== */
/* ==================================================
 * font text
 * ================================================== */
/* ==================================================
 * other
 * ================================================== */
.btn-01__link, .btn-03__link, .btn-circle__link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.btn-01__link, .btn-03__link {
  background: #d8b087;
  color: #fff;
  border-radius: 50rem;
  font-weight: 600;
  letter-spacing: 0.1em;
}
.btn-01__link:hover, .btn-03__link:hover {
  color: rgba(255, 255, 255, 0.8);
}
.btn-02 {
  display: flex;
}
.btn-02__link {
  color: #d8b087;
  font-weight: 600;
}
.btn-02__link:hover {
  opacity: 0.8;
}
.btn-03__link {
  justify-content: flex-start;
  padding: 0 50px;
}
.btn-circle {
  aspect-ratio: 1/1;
  overflow: hidden;
}
.btn-circle a {
  will-change: transform;
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  border-radius: 50rem;
  border: solid 1px #5c4329;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  letter-spacing: 0.02em;
  font-weight: 600;
  font-size: 22px;
  font-size: 1.1458333333vw;
}
@media screen and (max-width: 1260px) {
  .btn-circle a {
    font-size: 14.6666666667px;
  }
}
@media screen and (min-width: 1920px) {
  .btn-circle a {
    font-size: 22px;
  }
}
.btn-circle a:hover {
  background: #f8f5f3;
}

#side-bar {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 88;
}

.arw-blu-26, .arw-blu-36, .arw-wht-26, .arw-wht-36, .arw-brw-26, .arw-brw-36 {
  position: relative;
  z-index: 1;
}
.arw-blu-26::after, .arw-blu-36::after, .arw-wht-26::after, .arw-wht-36::after, .arw-brw-26::after, .arw-brw-36::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 26px;
  max-width: 100%;
  aspect-ratio: 1/1;
  background-image: url("/img/common/arrow-circle-wht.png");
  background-size: 100%;
  top: 50%;
  right: 20px;
  transform: translate(0, -50%);
}
.arw-blu-26:hover::after, .arw-blu-36:hover::after, .arw-wht-26:hover::after, .arw-wht-36:hover::after, .arw-brw-26:hover::after, .arw-brw-36:hover::after {
  transform: translate(-2px, -50%);
}
.arw-blu-36::after, .arw-wht-36::after, .arw-brw-36::after {
  width: 36px;
  max-width: 100%;
}
.arw-blu-btm-26::after, .arw-blu-btm-36::after, .arw-wht-btm-26::after, .arw-wht-btm-36::after, .arw-brw-btm-26::after, .arw-brw-btm-36::after, .arw-blu-clm-26::after, .arw-blu-clm-36::after, .arw-wht-clm-26::after, .arw-wht-clm-36::after, .arw-brw-clm-26::after, .arw-brw-clm-36::after {
  content: "";
  display: block;
  transition: 0.3s;
  width: 26px;
  max-width: 100%;
  aspect-ratio: 1/1;
  background-image: url("/img/common/arrow-circle-wht.png");
  background-size: 100%;
  margin: 0 auto;
}
.arw-blu-btm-26:hover::after, .arw-blu-btm-36:hover::after, .arw-wht-btm-26:hover::after, .arw-wht-btm-36:hover::after, .arw-brw-btm-26:hover::after, .arw-brw-btm-36:hover::after, .arw-blu-clm-26:hover::after, .arw-blu-clm-36:hover::after, .arw-wht-clm-26:hover::after, .arw-wht-clm-36:hover::after, .arw-brw-clm-26:hover::after, .arw-brw-clm-36:hover::after {
  transform: translateX(-2px);
}
.arw-blu-btm-36::after, .arw-wht-btm-36::after, .arw-brw-btm-36::after, .arw-blu-clm-36::after, .arw-wht-clm-36::after, .arw-brw-clm-36::after {
  width: 36px;
  max-width: 100%;
}
.arw-blu-clm-26, .arw-blu-clm-36, .arw-wht-clm-26, .arw-wht-clm-36, .arw-brw-clm-26, .arw-brw-clm-36 {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.arw-blu-clm-26::after, .arw-blu-clm-36::after, .arw-wht-clm-26::after, .arw-wht-clm-36::after, .arw-brw-clm-26::after, .arw-brw-clm-36::after {
  margin: 0;
}
.arw-brw-26::after, .arw-brw-36::after, .arw-brw-btm-26::after, .arw-brw-btm-36::after, .arw-brw-clm-26::after, .arw-brw-clm-36::after {
  background-image: url("/img/common/arrow-circle-brw.png");
  background-size: 100%;
}
.arw-blu-26::after, .arw-blu-36::after, .arw-blu-btm-26::after, .arw-blu-btm-36::after, .arw-blu-clm-26::after, .arw-blu-clm-36::after {
  background-image: url("/img/common/arrow-circle-blu.png");
  background-size: 100%;
}

.frame-loghouse, .frame-tree, .frame-tree2 {
  position: relative;
  z-index: 2;
}
.frame-loghouse::before, .frame-loghouse::after, .frame-tree::before, .frame-tree::after, .frame-tree2::before, .frame-tree2::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 100%;
  left: 0;
  bottom: 0;
}
.frame-loghouse::before, .frame-tree::before, .frame-tree2::before {
  aspect-ratio: 1920/282;
  background-image: url("/img/common/wave-01.png");
  background-size: 100%;
}
.frame-loghouse::after, .frame-tree::after, .frame-tree2::after {
  aspect-ratio: 1920/281;
  background-image: url("/img/common/mountain-loghouse.png");
  background-size: 100%;
  z-index: -2;
}
.frame-tree::before, .frame-tree2::before {
  background-image: url("/img/common/wave-02.png");
  background-size: 100%;
}
.frame-tree::after, .frame-tree2::after {
  aspect-ratio: 1920/271;
  background-image: url("/img/common/mountain-tree.png");
  background-size: 100%;
}
.frame-tree2::before {
  background-image: url("/img/common/wave-01.png");
  background-size: 100%;
  transform: scaleX(-1);
}

.obj-com-people1, .obj-com-people2 {
  position: relative;
  z-index: 1;
}
.obj-com-people1::after, .obj-com-people2::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 224px;
  max-width: 100%;
  aspect-ratio: 224/286;
  background-image: url("/img/common/illust-people-01.png");
  background-size: 100%;
  left: 0;
  bottom: 0;
}
.obj-com-people2::after {
  width: 302px;
  max-width: 100%;
  aspect-ratio: 302/291;
  background-image: url("/img/common/illust-people-02.png");
  background-size: 100%;
  bottom: 0;
  left: inherit;
  right: 0;
}

.deco-bf-float, .deco-af-float,
.obj-bf-float,
.obj-af-float,
.bg-bf-float,
.bg-af-float {
  position: relative;
  z-index: 1;
}
.deco-bf::before, .deco-af::after,
.obj-bf::before,
.obj-af::after,
.bg-bf::before,
.bg-af::after {
  content: "";
  display: block;
  transition: 0.3s;
}
.deco-bf-float::before, .deco-af-float::after,
.obj-bf-float::before,
.obj-af-float::after,
.bg-bf-float::before,
.bg-af-float::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
}

.tbl {
  width: 100%;
}
.tbl td {
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}
.tbl-price th, .tbl-price td {
  padding: 15px 0;
  vertical-align: middle;
  font-weight: 500;
  line-height: 1.4705882353;
}
.tbl-price th {
  width: 70%;
}
.tbl-price td {
  text-align: right;
  padding-left: 10px;
}
.tbl-price tr:not(:first-child) th, .tbl-price tr:not(:first-child) td {
  border-top: solid 1px #e0d2c8;
}
.tbl-price tr:first-child th, .tbl-price tr:first-child td {
  padding-top: 0;
}
.tbl-price tr:last-child th, .tbl-price tr:last-child td {
  padding-bottom: 0;
}

.com-layout {
  display: flex;
}
.com-tel .tel {
  line-height: 1;
}
.com-contbx, .com-txtbx {
  display: flex;
  flex-direction: column;
}
.com-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.com-youtube iframe {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.com-info {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: 15px;
       column-gap: 15px;
}
.com-info dt {
  background: #d69b8b;
  color: #fff;
  padding: 0 20px;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .com-info dt {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .com-info dt {
    font-size: 20px;
  }
}
.com-info dd {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  font-size: 17px;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .com-info dd {
    font-size: 27px;
    font-size: 3.515625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .com-info dd {
    font-size: 18px;
  }
}

.layout-clm-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 88px;
}
.layout-clm-2 .list-item,
.layout-clm-2 .layout-item {
  width: calc((100% - 88px) / 2);
}
.layout-clm-2-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 88px;
}
.layout-clm-2-c .list-item,
.layout-clm-2-c .layout-item {
  width: calc((100% - 88px) / 2);
}
.layout-clm-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.layout-clm-3 .list-item,
.layout-clm-3 .layout-item {
  width: calc((100% - 60px) / 3);
}
.layout-clm-3-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}
.layout-clm-3-c .list-item,
.layout-clm-3-c .layout-item {
  width: calc((100% - 60px) / 3);
}
.layout-clm-4 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.layout-clm-4 .list-item,
.layout-clm-4 .layout-item {
  width: calc((100% - 120px) / 4);
}
.layout-clm-4-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
}
.layout-clm-4-c .list-item,
.layout-clm-4-c .layout-item {
  width: calc((100% - 120px) / 4);
}

.list-news-top .list-item, .list-news-low .list-item, .list-privacy .list-item, .list-dot .list-item, .list-service .list-item {
  width: 100%;
}
.list-news-top time {
  display: block;
  line-height: 1;
}
.list-news-top__link {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.list-news-top__bx {
  display: flex;
  align-items: center;
  gap: 10px;
}
.list-news-top__ttl {
  width: 100%;
  overflow-wrap: break-word;
  word-break: break-all;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-align: left;
}
.list-season {
  row-gap: 30px;
}
.list-season__item {
  background: #d69b8b;
  color: #fff;
  border-radius: 198px 198px 10px 10px;
  padding: 10px;
  position: relative;
}
.list-season__item:nth-child(3n-2) {
  background: #d8b087;
}
.list-season__item:nth-child(even) {
  margin-top: 50px;
}
.list-season__item::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 124px;
  max-width: 100%;
  aspect-ratio: 124/142;
  background-image: url("/img/top/season-point-spring.png");
  background-size: 100%;
  top: 0;
  left: 0;
  transform: translateY(-30px);
  z-index: 1;
}
.list-season__item.summer::before {
  background-image: url("/img/top/season-point-summer.png");
  background-size: 100%;
}
.list-season__item.autumn::before {
  background-image: url("/img/top/season-point-autumn.png");
  background-size: 100%;
}
.list-season__item.winter::before {
  background-image: url("/img/top/season-point-winter.png");
  background-size: 100%;
}
.list-season__img {
  border-radius: 198px 198px 0 0;
  overflow: hidden;
}
.list-season dl {
  padding: 15px;
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.list-stay__link {
  will-change: transform;
  backface-visibility: hidden;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50rem;
  border: solid 1px #fff;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  row-gap: 15px;
}
.list-stay__link::after {
  margin-top: 10px;
}
.list-stay__link:hover {
  background: rgba(92, 67, 41, 0.1);
}
.list-stay .ttl-main {
  row-gap: 10px;
  margin-bottom: 0 !important;
}
.list-stay .ttl-main .en {
  color: #fff;
}
.list-schedule {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
}
.list-schedule .list-item,
.list-schedule .layout-item {
  width: calc((100% - 50px) / 3);
}
.list-schedule__item {
  background: #fbead9;
  padding: 10px 15px;
  border-radius: 6px;
  text-align: center;
  display: flex;
  flex-direction: column;
  row-gap: 5px;
}
.list-schedule dt {
  background: #fff;
  border-radius: 6px;
  padding: 3px 5px;
}
.list-bnr1, .list-bnr2 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.list-bnr1 .list-item,
.list-bnr1 .layout-item, .list-bnr2 .list-item,
.list-bnr2 .layout-item {
  width: calc((100% - 40px) / 2);
}
.list-bnr1__link,
.list-bnr1 dl, .list-bnr2__link,
.list-bnr2 dl {
  display: flex;
  flex-direction: column;
}
.list-bnr1__link, .list-bnr2__link {
  width: 100%;
  border-radius: 10px;
  color: #fff;
}
.list-bnr1__link:hover dl, .list-bnr2__link:hover dl {
  opacity: 0.8;
}
.list-bnr1 dl, .list-bnr2 dl {
  row-gap: 10px;
  transition: 0.3s;
}
.list-bnr1 dt, .list-bnr2 dt {
  line-height: 1;
  font-weight: 600;
  font-size: 30px;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .list-bnr1 dt, .list-bnr2 dt {
    font-size: 40px;
    font-size: 5.2083333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-bnr1 dt, .list-bnr2 dt {
    font-size: 26.6666666667px;
  }
}
.list-bnr1__item {
  text-align: center;
}
.list-bnr1__link {
  background: #d8b087;
  padding: 25px 20px;
}
.list-bnr1 dt {
  border-bottom: solid 1px #fff;
  padding-bottom: 20px;
}
.list-bnr1 .arw-wht-btm-36::after {
  margin: 20px auto 0 auto;
}
.list-bnr2__link {
  background: #d69b8b;
  padding: 22px 50px;
}
.list-bnr2 .arw-wht-36::after {
  right: 55px;
}
.list-healing__bx,
.list-healing dl, .list-enjoy__bx,
.list-enjoy dl {
  padding: 10px;
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.list-healing__bx, .list-enjoy__bx {
  background: #d8b087;
  height: 100%;
}
.list-healing__item, .list-enjoy__item {
  color: #fff;
}
.list-healing__item:nth-child(even) .list-healing__bx,
.list-healing__item:nth-child(even) .list-enjoy__bx, .list-enjoy__item:nth-child(even) .list-healing__bx,
.list-enjoy__item:nth-child(even) .list-enjoy__bx {
  background: #d69b8b;
}
.list-dot__item {
  padding: 20px 30px;
  display: flex;
}
.list-dot__item::before {
  content: "";
  display: block;
  transition: 0.3s;
  content: "・";
}
.list-dot__item:not(:first-child) {
  border-top: solid 1px #e0d2c8;
}
.list-dot__item:first-child {
  padding-top: 0 !important;
}
.list-dot__item:last-child {
  padding-bottom: 0 !important;
}
.list-service__item {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.list-exp__item,
.list-exp dl {
  display: flex;
  flex-direction: column;
}
.list-exp__item {
  row-gap: 15px;
}
.list-exp dl {
  row-gap: 10px;
}
.list-tourist__item {
  justify-content: space-between;
  align-items: center;
}
.list-tourist .txtbx {
  width: 640px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
}
.list-enjoy {
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
}
.list-enjoy .list-item,
.list-enjoy .layout-item {
  width: calc((100% - 80px) / 2);
}

.tag-main__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .tag-main__list {
    font-size: 28px;
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .tag-main__list {
    font-size: 18.6666666667px;
  }
}
.tag-main__link {
  display: block;
  background: #d8b087;
  color: #fff;
  padding: 10px 20px;
  border-radius: 4px;
}
.tag-main__link:hover {
  opacity: 0.8;
}
.tag-sub__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 14px;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .tag-sub__list {
    font-size: 24px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .tag-sub__list {
    font-size: 16px;
  }
}
.tag-sub__item {
  line-height: 1;
  background: #d8b087;
  color: #fff;
  padding: 3px 5px 5px 5px;
  border-radius: 5px;
}

.ttl-main {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  font-weight: 600;
}
.ttl-main .en, .ttl-main .jp {
  letter-spacing: 0.1em;
}
.ttl-main .en {
  line-height: 1;
  color: #d8b087;
  font-size: 24px;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .ttl-main .en {
    font-size: 34px;
    font-size: 4.4270833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-main .en {
    font-size: 22.6666666667px;
  }
}
.ttl-main .jp {
  line-height: 1.55;
  font-size: 40px;
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .ttl-main .jp {
    font-size: 50px;
    font-size: 6.5104166667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-main .jp {
    font-size: 33.3333333333px;
  }
}
.ttl-sub {
  border-left: solid #d8b087 6px;
  border-bottom: solid 1px #e0d2c8;
  background: #f5f5f5;
  padding: 10px 20px 15px 20px;
  margin-bottom: 30px;
  font-weight: 500;
  font-size: 24px;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .ttl-sub {
    font-size: 34px;
    font-size: 4.4270833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-sub {
    font-size: 22.6666666667px;
  }
}
.ttl-01 {
  background: #fbead9;
  font-weight: 600;
  text-align: center;
  padding: 5px 20px;
  border-radius: 6px;
}
.ttl-02 {
  border-bottom: solid 1px #fff;
  padding-bottom: 20px;
  font-weight: 600;
  color: #fff;
  font-size: 30px;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .ttl-02 {
    font-size: 40px;
    font-size: 5.2083333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-02 {
    font-size: 26.6666666667px;
  }
}
.ttl-03 {
  border-bottom: solid 1px #e0d2c8;
  padding-bottom: 15px;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .ttl-03 {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-03 {
    font-size: 20px;
  }
}

.txt-plain {
  line-height: 2.1875;
}
.txt-01 {
  line-height: 2.0588235294;
  font-size: 17px;
  font-size: 1.7rem;
}
@media screen and (max-width: 768px) {
  .txt-01 {
    font-size: 27px;
    font-size: 3.515625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .txt-01 {
    font-size: 18px;
  }
}
.txt-02 {
  line-height: 1.75;
}

.header-nav__item,
.drawer-nav__item,
.footer-nav__item {
  line-height: 1;
}
.header-nav__link:hover,
.drawer-nav__link:hover,
.footer-nav__link:hover {
  opacity: 0.8;
}

.header-nav__list {
  font-size: 18px;
  font-size: 0.9375vw;
}
@media screen and (max-width: 1260px) {
  .header-nav__list {
    font-size: 12px;
  }
}
@media screen and (min-width: 1920px) {
  .header-nav__list {
    font-size: 18px;
  }
}
.header-nav__item {
  padding: 1.5vw 1vw;
}
.header-nav__item:not(:last-child) {
  background: url("/img/common/pattern-dot-line.png") left bottom;
  background-repeat: repeat-x;
}
.header-nav__link {
  display: flex;
  flex-direction: column;
  row-gap: 0.5vw;
}
.header-nav .jp, .header-nav .en {
  letter-spacing: 0.02em;
}
.header-nav .jp {
  font-weight: 600;
}
.header-nav .en {
  font-weight: 400;
}

.footer-nav {
  border-top: solid 1px #e0d2c8;
  padding-top: 30px;
  margin-top: 30px;
}
.footer-nav__list {
  display: flex;
  justify-content: center;
  gap: 35px;
  font-weight: 600;
}
.footer-nav__link {
  letter-spacing: 0.02em;
}

.header-ent {
  padding: 40px 2.08%;
}

.header-com {
  background: #fff;
  padding-top: 55px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.header-com .side-main,
.header-com .side-sub {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  display: flex;
  flex-direction: column;
}
.header-com .side-main {
  width: 267px;
  max-width: 13.90625%;
  left: 2.34%;
}
.header-com .side-sub {
  width: 148px;
  max-width: 7.7083333333%;
  right: 5.47%;
  row-gap: 3vw;
}
.header-com .com-logo {
  margin: 0 0 7vw 10%;
}
.header-com .btn-circle {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.header-com .btn-circle a {
  font-size: 22px;
  font-size: 1.1458333333vw;
}
@media screen and (max-width: 1260px) {
  .header-com .btn-circle a {
    font-size: 14.6666666667px;
  }
}
@media screen and (min-width: 1920px) {
  .header-com .btn-circle a {
    font-size: 22px;
  }
}
.header-com::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 100%;
  height: 269px;
  background-image: url("/img/common/arch-brw.png");
  background-position: center bottom;
  background-size: cover;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.mv, .sv {
  width: 1200px;
  max-width: 62.5%;
  border-radius: 40px;
  margin: 0 auto;
  overflow: hidden;
}

.sv {
  aspect-ratio: 1200/820;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sv-ttl {
  width: 50%;
  aspect-ratio: 600/70;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 600;
  font-size: 38px;
  font-size: 1.9791666667vw;
}
@media screen and (max-width: 1260px) {
  .sv-ttl {
    font-size: 25.3333333333px;
  }
}
@media screen and (min-width: 1920px) {
  .sv-ttl {
    font-size: 38px;
  }
}
.sv-bg-about {
  background: url("/img/about/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-stay {
  background: url("/img/stay/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-experience {
  background: url("/img/experience/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-tourist-guide {
  background: url("/img/tourist-guide/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-access {
  background: url("/img/access/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-contact {
  background: url("/img/contact/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-complete {
  background: url("/img/complete/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-news {
  background: url("/img/news/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-privacy {
  background: url("/img/privacy/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-site {
  background: url("/img/site/sv.jpg") center center no-repeat;
  background-size: cover;
}
.sv-bg-notfound {
  background: url("/img/notfound/sv.jpg") center center no-repeat;
  background-size: cover;
}

#page-ent {
  background: #f8f5f3;
  padding: 0 0 40px 0;
}

.ent-main {
  -moz-column-gap: 3.13%;
       column-gap: 3.13%;
  padding-bottom: 1.5vw;
}
.ent-main .ent-item {
  width: 890px;
  max-width: 46.3541666667%;
  aspect-ratio: 890/522;
}
.ent-main .ent-item.multi {
  background: url("/img/entrance/img-multi.png") center center no-repeat;
  background-size: cover;
}
.ent-main .ent-item.jp {
  background: url("/img/entrance/img-jp.png") center center no-repeat;
  background-size: cover;
}
.ent-main .ent-link, .ent-main .ent-ttl {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.ent-main .ent-link {
  width: 100%;
  height: 100%;
}
.ent-main .ent-link:hover .ent-ttl {
  transform: translateY(-4px);
}
.ent-main .ent-link:hover .ent-ttl::after {
  transform: translate(-2px, 0);
}
.ent-main .ent-ttl {
  width: 80.45%;
  aspect-ratio: 716/196;
  background: #fff;
  border-radius: 10px;
  row-gap: 0.6vw;
  text-align: center;
  font-weight: 600;
  transition: 0.3s;
}
.ent-main .ent-ttl .en, .ent-main .ent-ttl .jp {
  letter-spacing: 0.1em;
}
.ent-main .ent-ttl .en {
  color: #d8b087;
  font-size: 24px;
  font-size: 1.25vw;
}
@media screen and (max-width: 1260px) {
  .ent-main .ent-ttl .en {
    font-size: 16px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-main .ent-ttl .en {
    font-size: 24px;
  }
}
.ent-main .ent-ttl .jp {
  font-size: 36px;
  font-size: 1.875vw;
}
@media screen and (max-width: 1260px) {
  .ent-main .ent-ttl .jp {
    font-size: 24px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-main .ent-ttl .jp {
    font-size: 36px;
  }
}
.ent-main .ent-ttl::after {
  width: 4.04%;
}

.ent-reserve {
  width: 1840px;
  max-width: 95.8333333333%;
  aspect-ratio: 1840/410;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  row-gap: 2vw;
  background: #fff;
  border-radius: 35px;
}
.ent-reserve .ttl-main .en {
  font-size: 24px;
  font-size: 1.25vw;
}
@media screen and (max-width: 1260px) {
  .ent-reserve .ttl-main .en {
    font-size: 16px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-reserve .ttl-main .en {
    font-size: 24px;
  }
}
.ent-reserve .ttl-main .jp {
  font-size: 30px;
  font-size: 1.5625vw;
}
@media screen and (max-width: 1260px) {
  .ent-reserve .ttl-main .jp {
    font-size: 20px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-reserve .ttl-main .jp {
    font-size: 30px;
  }
}
.ent-reserve .wrp-bnr {
  -moz-column-gap: 3.26%;
       column-gap: 3.26%;
}
.ent-reserve .bnr-item {
  width: 46.2%;
  aspect-ratio: 850/200;
  background: #d8b087;
  border-radius: 10px;
}
.ent-reserve .bnr-link, .ent-reserve .bnr-ttl {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ent-reserve .bnr-link {
  width: 100%;
  height: 100%;
  padding: 0 2.94%;
  color: #fff;
}
.ent-reserve .bnr-link:hover .bnr-ttl {
  opacity: 0.8;
}
.ent-reserve .bnr-link:hover .bnr-ttl::after {
  transform: translate(-2px, 0);
}
.ent-reserve .bnr-ttl {
  row-gap: 0.8vw;
  text-align: center;
  transition: 0.3s;
}
.ent-reserve .bnr-ttl .en {
  border-bottom: solid 1px #fff;
  padding-bottom: 0.6vw;
  font-size: 30px;
  font-size: 1.5625vw;
}
@media screen and (max-width: 1260px) {
  .ent-reserve .bnr-ttl .en {
    font-size: 20px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-reserve .bnr-ttl .en {
    font-size: 30px;
  }
}
.ent-reserve .bnr-ttl .jp {
  font-size: 17px;
  font-size: 0.8854166667vw;
}
@media screen and (max-width: 1260px) {
  .ent-reserve .bnr-ttl .jp {
    font-size: 11.3333333333px;
  }
}
@media screen and (min-width: 1920px) {
  .ent-reserve .bnr-ttl .jp {
    font-size: 17px;
  }
}
.ent-reserve .bnr-ttl::after {
  width: 4.5%;
}

#page-top {
  position: relative;
  z-index: 1;
}
#page-top::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  transition: 0.3s;
  width: 100%;
  height: 100%;
  background-image: url("/img/top/para-img.jpg");
  background-size: cover;
  background-position: center;
  position: fixed;
  top: 0;
  left: 0;
}

.top-about {
  padding: 190px 0 300px 0;
}
.top-about .ttl-main {
  margin-bottom: 65px;
}
.top-about .img {
  margin-left: -340px;
}
.top-about .obj-com-people1::after {
  transform: translate(230px, 280px);
}

.top-season {
  padding: 0 0 150px 0;
}
.top-season .ttl-main {
  margin-bottom: 20px;
}
.top-season .btn {
  position: absolute;
  top: 100px;
  right: 0;
  z-index: 1;
}

.top-stay {
  padding: 150px 0;
  background: url("/img/top/stay-bg.jpg") center center no-repeat;
  background-size: cover;
}
.top-stay .ttl-main {
  margin-bottom: 65px;
}

.top-price {
  padding: 150px 0 290px 0;
}
.top-price .ttl-main {
  margin-bottom: 40px;
}
.top-price .obj-com-people2::after {
  transform: translate(80px, 225px);
  z-index: 1;
}

.top-access .ttl-main {
  margin-bottom: 40px;
}
.top-access .com-gmap {
  width: 1053px;
  max-width: 100%;
  height: 534px;
  border-radius: 24px 0 0 24px;
  overflow: hidden;
  margin-right: -420px;
}
.top-access .para-area {
  width: 100%;
  height: 910px;
}
.top-access.bg-bf-float::before {
  width: 100%;
  height: 470px;
  background: #f1e7e0;
  top: 0;
  left: 0;
}
.top-access.obj-af-float::after {
  width: 100%;
  aspect-ratio: 1920/275;
  background-image: url("/img/common/wave-03.png");
  background-size: 100%;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 1px);
}

#page-low section {
  padding: 130px 0;
}
#page-low section.frame-loghouse {
  padding-bottom: 370px;
}
#page-low section.frame-tree2 {
  padding-bottom: 290px;
}
#page-low .ttl-main {
  margin-bottom: 60px;
}

.about-loghouse .img,
.experience-country .img,
.tourist-charm .img {
  margin-right: -320px;
}

.about-greeting .img {
  margin-left: -210px;
}

.access-map .com-info {
  position: absolute;
  top: 0;
  right: 0;
}

.stay-booking .img {
  margin-right: -290px;
}
.stay-guestroom .obj-com-people1::after {
  width: 179px;
  max-width: 100%;
  transform: translate(-30px, 20px);
  z-index: 1;
}

#com-reservation {
  padding: 0 0 150px 0;
}
#com-reservation .ttl-main {
  margin-bottom: 50px;
}
#com-reservation .obj-af-float::after {
  width: 74px;
  max-width: 100%;
  aspect-ratio: 74/81;
  background-image: url("/img/common/illust-green.png");
  background-size: 100%;
  right: 0;
  bottom: 0;
  transform: translate(170px, 65px);
}

#com-price .wrp-caution {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
#com-price .wrp-caution .ttl-main {
  text-align: center;
  row-gap: 10px;
  border-bottom: solid 1px #e0d2c8;
  padding-bottom: 20px;
}
#com-price .wrp-caution .ttl-main .en {
  font-size: 16px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  #com-price .wrp-caution .ttl-main .en {
    font-size: 26px;
    font-size: 3.3854166667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  #com-price .wrp-caution .ttl-main .en {
    font-size: 17.3333333333px;
  }
}
#com-price .wrp-caution .ttl-main .jp {
  font-weight: 500;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  #com-price .wrp-caution .ttl-main .jp {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  #com-price .wrp-caution .ttl-main .jp {
    font-size: 20px;
  }
}

#com-service {
  background: url("/img/common/menu-bg.jpg") center center no-repeat;
  background-size: cover;
  padding: 100px 0 !important;
}

.footer-com {
  padding: 80px 0;
  background: #fff;
}

.footer-copy small {
  font-weight: 400;
  letter-spacing: 0;
}/*# sourceMappingURL=style.css.map */