@charset "UTF-8";
body {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  text-align: justify;
  text-justify: inter-ideograph;
  font-family: "Noto Sans JP", sans-serif;
  word-wrap: break-all;
  word-wrap: break-word;
  width: 100%;
  min-width: 1260px;
  color: #161616;
  scroll-behavior: smooth;
  background: #f3f1ed;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 28px;
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  body {
    font-size: 16.4705882353px;
  }
}

.col-wht {
  color: #fff !important;
}
.col-blk {
  color: #161616 !important;
}
.col-beg {
  color: #f3f1ed !important;
}
.col-beg2 {
  color: #ede7dc !important;
}
.col-grn {
  color: #2b7c3e !important;
}
.col-brw {
  color: #b4a17b !important;
}
.col-ylw {
  color: #f7b52c !important;
}

.bg-wht {
  background-color: #fff !important;
}
.bg-blk {
  background-color: #161616 !important;
}
.bg-beg {
  background-color: #f3f1ed !important;
}
.bg-beg2 {
  background-color: #ede7dc !important;
}
.bg-grn {
  background-color: #2b7c3e !important;
}
.bg-brw {
  background-color: #b4a17b !important;
}
.bg-ylw {
  background-color: #f7b52c !important;
}

.btn-ptn1 .btn-link, .btn-ptn2 .btn-link {
  font-family: "Zen Kaku Gothic New", system-ui;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #2b7c3e;
  color: #fff;
  font-weight: bold;
}
.btn-ptn1 .btn-link:hover, .btn-ptn2 .btn-link:hover {
  color: rgba(255, 255, 255, 0.8);
}
.btn-ptn2 .btn-link {
  background: #fff;
  color: #2b7c3e;
  font-weight: 800;
}

#side-bar {
  aspect-ratio: 1/1;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 77;
}
#side-bar .btn-link {
  line-height: 1.5;
}
#side-bar .btn-link:hover {
  transform: scale(0.98);
}

.ic-tel-blk, .ic-tel-wht {
  display: flex;
  align-items: center;
}
.ic-tel-blk::before, .ic-tel-wht::before {
  content: "";
  display: block;
  width: 36px;
  aspect-ratio: 36/30;
  background-image: url("/img/common/ic-tel-blk.png");
  background-size: 100%;
  margin-right: 10px;
}
.ic-tel-wht::before {
  width: 46px;
  aspect-ratio: 46/38;
  background-image: url("/img/common/ic-tel-wht.png");
  background-size: 100%;
}
.ic-mail-wht-top::before {
  content: "";
  display: block;
  width: 28px;
  aspect-ratio: 28/20;
  background-image: url("/img/common/ic-mail-wht.png");
  background-size: 100%;
  margin: 0 auto 10px auto;
}
.ic-mail-grn {
  display: flex;
  align-items: center;
}
.ic-mail-grn::before {
  content: "";
  display: block;
  width: 28px;
  aspect-ratio: 28/20;
  background-image: url("/img/common/ic-mail-grn.png");
  background-size: 100%;
  margin-right: 25px;
}
.ic-mail-bbq {
  position: relative;
  z-index: 1;
}
.ic-mail-bbq::before {
  content: "";
  display: block;
  width: 97px;
  max-width: 100%;
  aspect-ratio: 97/146;
  background-image: url("/img/common/illust-bbq.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.ic-mail-family {
  position: relative;
  z-index: 1;
}
.ic-mail-family::before {
  content: "";
  display: block;
  width: 117px;
  max-width: 100%;
  aspect-ratio: 117/200;
  background-image: url("/img/common/illust-family.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}

.arw-wht {
  position: relative;
}
.arw-wht::after {
  content: "";
  display: block;
  width: 21px;
  aspect-ratio: 21/16;
  background-image: url("/img/common/arw-wht.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(0, -50%);
  transition: 0.3s;
}
.arw-wht:hover::after {
  transform: translate(-2px, -50%);
}

.corner-pin {
  position: relative;
  z-index: 1;
}
.corner-pin-top, .corner-pin-btm {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.corner-pin-top::before, .corner-pin-top::after, .corner-pin-btm::before, .corner-pin-btm::after {
  content: "";
  display: block;
  width: 20px;
  aspect-ratio: 1/1;
  border-radius: 50rem;
  background: #f7b52c;
  position: absolute;
  z-index: -1;
}
.corner-pin-top::before {
  top: 20px;
  left: 20px;
}
.corner-pin-top::after {
  top: 20px;
  right: 20px;
}
.corner-pin-btm::before {
  left: 20px;
  bottom: 20px;
}
.corner-pin-btm::after {
  right: 20px;
  bottom: 20px;
}

.ilst-stay {
  position: relative;
  z-index: 1;
}
.ilst-stay::after {
  content: "";
  display: block;
  width: 583px;
  max-width: 30.3645833333%;
  aspect-ratio: 583/326;
  background-image: url("/img/common/illust-stay.png");
  background-size: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.ilst-tree {
  position: relative;
  z-index: 1;
}
.ilst-tree::before {
  content: "";
  display: block;
  width: 289px;
  max-width: 100%;
  aspect-ratio: 289/299;
  background-image: url("/img/common/illust-tree.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.ilst-sup {
  position: relative;
  z-index: 1;
}
.ilst-sup::after {
  content: "";
  display: block;
  width: 499px;
  max-width: 100%;
  aspect-ratio: 499/294;
  background-image: url("/img/common/illust-sup.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.ilst-man, .ilst-bbq, .ilst-family {
  position: relative;
  z-index: 1;
}
.ilst-man::before, .ilst-bbq::before, .ilst-family::before {
  content: "";
  display: block;
  width: 89px;
  max-width: 100%;
  aspect-ratio: 89/240;
  background-image: url("/img/common/ilst-man.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.ilst-bbq::before {
  width: 97px;
  max-width: 100%;
  aspect-ratio: 97/146;
  background-image: url("/img/common/illust-bbq.png");
  background-size: 100%;
}
.ilst-family::before {
  width: 117px;
  max-width: 100%;
  aspect-ratio: 117/200;
  background-image: url("/img/common/illust-family.png");
  background-size: 100%;
}
.ilst-mountain {
  background: url("/img/common/illust-mountain.png") right bottom no-repeat;
  background-size: 41.09%;
}
.ilst-travel {
  position: relative;
  z-index: 1;
}
.ilst-travel::after {
  content: "";
  display: block;
  width: 528px;
  max-width: 27.5%;
  aspect-ratio: 528/320;
  background-image: url("/img/common/illust-travel.png");
  background-size: 100%;
  position: absolute;
  left: 9.9%;
  bottom: 0;
  z-index: -1;
}

.hov-opa a:hover {
  opacity: 0.8;
}
.hov-img a:hover img {
  opacity: 0.8;
}
.hov-scale a img, .hov-up a img {
  backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1, 1);
}
.hov-scale a:hover img, .hov-up a:hover img {
  transform: scale(0.98);
}
.hov-up a:hover img {
  transform: translateY(-3px);
}
.hov-col-grn a:hover {
  color: #2b7c3e !important;
}

.tbl {
  width: 100%;
}
.tbl td {
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  word-break: normal; /* 単語の分割はデフォルトに依存 */
  line-break: strict; /* 禁則処理を厳格に適用 */
}
.tbl-ptn1 th, .tbl-ptn1 td {
  padding: 20px 0;
  font-weight: 500;
  line-height: 1.9;
}
.tbl-ptn1 th {
  width: 30%;
}
.tbl-ptn1 td {
  white-space: pre-wrap;
  padding-left: 4%;
}
.tbl-ptn1 tr:not(:last-child) th, .tbl-ptn1 tr:not(:last-child) td {
  border-bottom: solid 1px #161616;
}
.tbl-ptn1 tr:first-child th, .tbl-ptn1 tr:first-child td {
  padding-top: 0;
}
.tbl-ptn1 tr:last-child th, .tbl-ptn1 tr:last-child td {
  padding-bottom: 0;
}

[class^=cts-] {
  margin: 0 auto;
}

.cts-full {
  width: 100%;
}
.cts-1080 {
  width: 100%;
  max-width: 1080px;
}
.cts-1280 {
  width: 100%;
  max-width: 1280px;
}

.layout-clm-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
}
.layout-clm-2 .list-item {
  width: calc((100% - 80px) / 2);
}
.layout-clm-2-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 80px;
}
.layout-clm-2-c .list-item {
  width: calc((100% - 80px) / 2);
}
.layout-clm-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
}
.layout-clm-3 .list-item {
  width: calc((100% - 50px) / 3);
}
.layout-clm-3-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
}
.layout-clm-3-c .list-item {
  width: calc((100% - 50px) / 3);
}
.layout-clm-4 {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
}
.layout-clm-4 .list-item {
  width: calc((100% - 75px) / 4);
}
.layout-clm-4-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
}
.layout-clm-4-c .list-item {
  width: calc((100% - 75px) / 4);
}

.list-nav {
  font-family: "Zen Kaku Gothic New", system-ui;
}
.list-nav .nav-item {
  line-height: 1;
}
.list-news .list-item, .list-travel .list-item, .list-flow .list-item, .list-service .list-item {
  width: 100%;
}
.list-news time {
  display: block;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.05em;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .list-news time {
    font-size: 25px;
    font-size: 3.2552083333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-news time {
    font-size: 14.7058823529px;
  }
}
.list-news .news-item:not(:last-child) {
  border-bottom: solid 1px #161616;
  padding-bottom: 40px;
}
.list-news .news-inner {
  display: flex;
  align-items: center;
  -moz-column-gap: 15px;
       column-gap: 15px;
}
.list-news .news-ttl {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .list-news .news-ttl {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-news .news-ttl {
    font-size: 17.6470588235px;
  }
}
.list-log .log-img {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 10px;
  overflow: hidden;
}
.list-log .log-ttl {
  font-family: "Zen Kaku Gothic New", system-ui;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .list-log .log-ttl {
    font-size: 28px;
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-log .log-ttl {
    font-size: 16.4705882353px;
  }
}
.list-cabin {
  row-gap: 70px;
}
.list-cabin .cabin-ttl {
  margin-top: 30px;
}
.list-travel .travel-item {
  background: #fff;
  border-radius: 20px;
}
.list-travel .com-base {
  padding: 50px 150px;
}
.list-travel .ilst-bbq::before {
  top: 0;
  right: 0;
  transform: translate(-25px, -12px);
  z-index: 1;
}
.list-travel .ilst-tree::before {
  width: 163px;
  max-width: 100%;
  top: 0;
  left: 0;
  transform: translate(80px, -30px);
}
.list-travel .ilst-sup::after {
  width: 247px;
  max-width: 100%;
  top: 0;
  right: 0;
  transform: translate(20px, 0);
}
.list-flow .flow-item {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: 25px;
       column-gap: 25px;
}
.list-flow .flow-time {
  width: 110px;
  max-width: 100%;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  background: #b4a17b;
  color: #fff;
  text-align: center;
  border-radius: 50rem;
  padding: 2px 0 5px 0;
}
@media screen and (max-width: 768px) {
  .list-flow .flow-time {
    font-size: 32px;
    font-size: 4.1666666667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-flow .flow-time {
    font-size: 18.8235294118px;
  }
}
.list-flow .flow-txt {
  font-size: 20px;
  font-size: 2rem;
  max-width: calc(100% - 135px);
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .list-flow .flow-txt {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-flow .flow-txt {
    font-size: 17.6470588235px;
  }
}
.list-flow::before {
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  border-left: dotted 3px #b4a17b;
  position: absolute;
  top: 0;
  left: 52.5px;
  z-index: -1;
}
.list-bnr .bnr-item {
  border-radius: 20px;
  overflow: hidden;
}
.list-bnr .bnr-link::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 500/270;
  position: relative;
  z-index: -1;
  transition: 0.3s;
}
.list-bnr .bnr-link.stay::before {
  background-image: url("/img/common/bnr-stay.png");
  background-size: 100%;
}
.list-bnr .bnr-link.eat_activity::before {
  background-image: url("/img/common/bnr-eat_activity.png");
  background-size: 100%;
}
.list-bnr .bnr-link.log::before {
  background-image: url("/img/common/bnr-log.png");
  background-size: 100%;
}
.list-bnr .bnr-link:hover .arw-wht::after {
  transform: translate(-3px, -50%);
}
.list-bnr .bnr-link:hover::before {
  opacity: 0.9;
}
.list-bnr .bnr-ttl {
  width: 100%;
  aspect-ratio: 500/100;
  font-size: 30px;
  font-size: 3rem;
  font-weight: 600;
  background: #f7b52c;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .list-bnr .bnr-ttl {
    font-size: 40px;
    font-size: 5.2083333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-bnr .bnr-ttl {
    font-size: 23.5294117647px;
  }
}
.list-bnr .arw-wht:hover::after {
  transform: translate(0, -50%);
}
.list-service .img {
  width: 500px;
  max-width: 100%;
  aspect-ratio: 500/340;
  border-radius: 10px;
  overflow: hidden;
}
.list-thumb .thumb-item {
  aspect-ratio: 1/1;
  border-radius: 10px;
  overflow: hidden;
}

.com-tag-main .list-tag {
  font-family: "Zen Kaku Gothic New", system-ui;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
}
.com-tag-main .tag-link {
  display: block;
  background: #b4a17b;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
  padding: 10px 20px;
  border-radius: 4px;
}
@media screen and (max-width: 768px) {
  .com-tag-main .tag-link {
    font-size: 28px;
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .com-tag-main .tag-link {
    font-size: 16.4705882353px;
  }
}
.com-tag-main .tag-link:hover {
  opacity: 0.8;
}
.com-tag-sub .list-tag {
  font-family: "Zen Kaku Gothic New", system-ui;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.com-tag-sub .tag-item {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
  background: #b4a17b;
  color: #fff;
  padding: 5px 10px 7px 10px;
  border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .com-tag-sub .tag-item {
    font-size: 25px;
    font-size: 3.2552083333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .com-tag-sub .tag-item {
    font-size: 14.7058823529px;
  }
}
.com-gmap {
  max-width: 100%;
}
.com-gmap iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}
.com-layout {
  display: flex;
}
.com-tel .tel {
  font-family: "Zen Kaku Gothic New", system-ui;
  line-height: 1;
}
.com-round {
  border-radius: 250px;
}

.ttl-main {
  font-family: "Zen Kaku Gothic New", system-ui;
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.6666666667;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .ttl-main {
    font-size: 70px;
    font-size: 9.1145833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-main {
    font-size: 41.1764705882px;
  }
}
.ttl-sub {
  font-family: "Zen Kaku Gothic New", system-ui;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 600;
  border-left: solid #2b7c3e 6px;
  border-bottom: solid 1px rgba(180, 161, 123, 0.5);
  background: #fff;
  padding: 20px;
  margin-bottom: 30px;
}
@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: 20px;
  }
}
.ttl-ver, .ttl-ver-pre {
  font-family: "Zen Kaku Gothic New", system-ui;
  font-size: 54px;
  font-size: 5.4rem;
  font-weight: bold;
  color: #2b7c3e;
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  display: flex;
}
@media screen and (max-width: 768px) {
  .ttl-ver, .ttl-ver-pre {
    font-size: 64px;
    font-size: 8.3333333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-ver, .ttl-ver-pre {
    font-size: 37.6470588235px;
  }
}
.ttl-ver .inner, .ttl-ver-pre .inner {
  border-left: solid 3px #2b7c3e;
  padding-left: 5px;
}
.ttl-ver.col-wht .inner, .ttl-ver-pre.col-wht .inner {
  border-left-color: #fff;
}
.ttl-ver-pre {
  flex-direction: column;
  align-items: flex-start;
}
.ttl-bar {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  color: #2b7c3e;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .ttl-bar {
    font-size: 46px;
    font-size: 5.9895833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-bar {
    font-size: 27.0588235294px;
  }
}
.ttl-bar::after {
  content: "";
  display: block;
  width: 100px;
  height: 3px;
  background: #2b7c3e;
  margin: 20px auto 0 auto;
}

.txt-plain {
  line-height: 2.1111111111;
}

#header {
  position: relative;
}

#ctn-top #header {
  padding: 0 0 80px 0;
}

#ctn-lower #header {
  padding: 0 0 150px 0;
}

.hdbar {
  padding: 45px 4.69%;
}

.mv, .sv {
  width: 100%;
  position: relative;
  z-index: 1;
}
.mv img, .sv img {
  display: block;
  width: 100%;
}

.mv {
  font-family: "Zen Kaku Gothic New", system-ui;
}
.mv-cc-main, .mv-cc-sub {
  position: absolute;
  z-index: 1;
}
.mv-cc-main {
  font-size: 54px;
  font-size: 2.8125vw;
  font-weight: bold;
  row-gap: 3vw;
  top: 0;
  left: 9.9%;
}
@media screen and (max-width: 1120px) {
  .mv-cc-main {
    font-size: 31.7647058824px;
  }
}
@media screen and (min-width: 1920px) {
  .mv-cc-main {
    font-size: 54px;
  }
}
.mv-cc-main-txt {
  border-left: solid 3px #161616;
  padding-left: 0.3vw;
}
.mv-cc-main-txt:not(:first-child) {
  margin-top: 5rem;
}
.mv-cc-sub {
  font-size: 20px;
  font-size: 1.0416666667vw;
  font-weight: 500;
  row-gap: 0.5vw;
  bottom: 0;
  left: 17.4%;
  transform: translate(0, -260%);
}
@media screen and (max-width: 1120px) {
  .mv-cc-sub {
    font-size: 11.7647058824px;
  }
}
@media screen and (min-width: 1920px) {
  .mv-cc-sub {
    font-size: 20px;
  }
}
.mv-cc-sub-txt {
  border-bottom: solid 1px #161616;
  padding-bottom: 0.2vw;
}
.mv-img {
  -moz-column-gap: 3.13%;
       column-gap: 3.13%;
}
.mv-img-01 {
  width: 880px;
  max-width: 45.8333333333%;
  margin-top: 5rem;
}
.mv-img-02 {
  width: 348px;
  max-width: 18.125%;
}

.sv-img {
  width: 1288px;
  max-width: 67.0833333333%;
}
.sv-ttl {
  position: absolute;
  top: 50%;
  right: 77.08%;
  transform: translate(0, -50%);
  z-index: 1;
}
.sv-ttl-access, .sv-ttl-stay {
  width: 70px;
  max-width: 3.6458333333%;
}
.sv-ttl-complete {
  width: 191px;
  max-width: 9.9479166667%;
}
.sv-ttl-blog, .sv-ttl-contact, .sv-ttl-log, .sv-ttl-sitemap {
  width: 75px;
  max-width: 3.90625%;
}
.sv-ttl-e404, .sv-ttl-privacy, .sv-ttl-eat_activity {
  width: 185px;
  max-width: 9.6354166667%;
}

.top-gallery, .top-howto .howto-item {
  position: relative;
  z-index: 1;
}
.top-gallery .cts-1080, .top-howto .howto-item .cts-1080 {
  height: 100%;
  position: absolute !important;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.top-news {
  padding: 180px 0;
}
.top-news .list-news {
  min-height: 240px;
}
.top-news .btn {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
}
.top-news::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 1684px;
  height: 100%;
  border-radius: 0 100px 100px 0;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.top-concept {
  padding: 180px 0 50px 0;
  background: url("/img/top/concept-illust-monutain.png") left bottom no-repeat;
  background-size: 28.75%;
}

.top-gallery {
  padding: 124px 0 134px 0;
}
.top-gallery .img-01 {
  width: 1180px;
  max-width: 61.4583333333%;
}
.top-gallery .img-02 {
  width: 453px;
  max-width: 23.59375%;
  position: absolute;
  top: 0;
  right: 7.55%;
  transform: translate(0, 34%);
}
.top-gallery .img-03 {
  width: 800px;
  max-width: 41.6666666667%;
  margin: 6.5vw 0 0 22.92%;
}
.top-gallery .img img {
  display: block;
  width: 100%;
}
.top-gallery .ilst-tree::before {
  top: 0;
  right: 0;
  transform: translate(300px, -40px);
}
.top-gallery .ilst-sup::after {
  bottom: 0;
  right: 0;
  transform: translate(290px, 107px);
}

.top-howto {
  padding: 190px 0 250px 0;
  border-radius: 250px;
}
.top-howto .ttl-main {
  margin-bottom: 100px;
}
.top-howto .howto-item {
  width: 100%;
  padding: 0 5.99%;
  -moz-column-gap: 1.56%;
       column-gap: 1.56%;
}
.top-howto .img {
  width: 55.95%;
}
.top-howto .txt-bx {
  row-gap: 2.4vw;
}
.top-howto .ilst-man::before, .top-howto .ilst-bbq::before, .top-howto .ilst-family::before {
  top: 0;
  right: 0;
}
.top-howto .ilst-man::before {
  transform: translate(-35px, -90px);
}
.top-howto .ilst-bbq::before {
  transform: translate(-15px, 60px);
}
.top-howto .ilst-family::before {
  transform: translate(40px, -85px);
}

.top-log {
  padding: 180px 0;
}
.top-log .ttl-main {
  margin-bottom: 80px;
}
.top-log .btn {
  margin-top: 90px;
}

.top-access {
  padding: 180px 0 150px 0;
}
.top-access .com-gmap {
  margin-top: 80px;
}

#ctn-lower article {
  padding: 120px 0;
}
#ctn-lower .ttl-main {
  text-align: center;
  margin-bottom: 60px;
}

.lower-cabin {
  position: relative;
  margin-top: 80px;
}
.lower-cabin .ttl-main {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0, -50%);
  z-index: 1;
}

.lower-plan .cts-1080 {
  padding-top: 100px;
  padding-bottom: 100px;
}

.lower-travel .ilst-man::before {
  top: 0;
  left: 0;
  transform: translate(110px, 20px);
}

.lower-greeting .ilst-sup::after {
  width: 330px;
  max-width: 100%;
  left: 0;
  bottom: 0;
  transform: translate(-110px, 50px);
}

.lower-info .cts-1080 {
  padding-top: 90px;
  padding-bottom: 90px;
}
.lower-info.ilst-travel::after {
  left: 10.42%;
  z-index: 1;
}

#com-contact {
  padding: 130px 0 !important;
}

#footer {
  padding: 150px 0 200px 0;
}

body#top #footer {
  border-radius: 235.5px 235.5px 0 0;
}

#ft-nav .list-nav {
  grid-template-columns: 1fr 1fr 1.3fr;
  grid-template-rows: repeat(4, 1fr);
}
#ft-nav .nav-item-02 {
  grid-column-start: 1;
  grid-row-start: 2;
}
#ft-nav .nav-item-03 {
  grid-column-start: 1;
  grid-row-start: 3;
}
#ft-nav .nav-item-04 {
  grid-column-start: 2;
  grid-row-start: 1;
}
#ft-nav .nav-item-05 {
  grid-column-start: 2;
  grid-row-start: 2;
}
#ft-nav .nav-item-06 {
  grid-column-start: 2;
  grid-row-start: 3;
}
#ft-nav .nav-item-07 {
  grid-column-start: 3;
  grid-row-start: 1;
}
#ft-nav .nav-item-08 {
  grid-column-start: 3;
  grid-row-start: 2;
}
#ft-nav .nav-item-10 {
  grid-column-start: 3;
}

.ft-copy {
  margin-top: 50px;
}/*# sourceMappingURL=style.css.map */