@charset "UTF-8";
.c-caption {
  position: absolute;
  z-index: 1;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0;
  text-shadow: 0 0 6px #000,0 0 6px rgba(0,0,0,.5);
  color: #fff
}
.c-caption--postion-r-b {
  bottom: 15px;
  right: 20px
}
.c-caption--postion-l-b {
  bottom: 15px;
  left: 20px
}
.c-caption--postion-large-l {
  left: 30px
}
.c-caption--postion-large-b {
  bottom: 10px
}
.c-caption--theme-black {
  color: #333;
  text-shadow: none
}
.c-pageButton {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 10px;
  border-bottom: 1px solid
}
.c-pageButton__text {
  font-family: "EB Garamond",serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: .08em
}
.c-pageButton__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 17px;
  border-radius: 13px
}
.c-pageButton__icon::before {
  display: inline-block;
  width: 0;
  height: 0;
  content: "";
  border-style: solid;
  border-width: 4px 0 4px 9px
}
.c-pageButton--theme-green {
  color: #238184;
  border-bottom-color: #238184
}
.c-pageButton--theme-green .c-pageButton__icon {
  background: #238184
}
.c-pageButton--theme-green .c-pageButton__icon::before,
.c-pageButton__icon::before {
  border-color: transparent transparent transparent #fff
}
.c-pageButton--theme-full-green {
  height: 60px;
  padding: 0 20px 0 50px;
  color: #fff;
  background: #238184;
  border-bottom: none
}
.c-pageButton--theme-full-green .c-pageButton__icon,
.c-pageButton--theme-white .c-pageButton__icon {
  background: #fff
}
.c-pageButton--theme-full-green .c-pageButton__icon::before {
  border-color: transparent transparent transparent #244546
}
.c-pageButton--theme-white {
  color: #fff;
  border-bottom-color: #fff
}
.c-pageButton--theme-white .c-pageButton__icon::before {
  border-color: transparent transparent transparent #238184
}
.c-pageButton--theme-full-white {
  height: 40px;
  padding: 0 15px 0 30px;
  color: #244546;
  background: #fff;
  border: 1px solid #244545
}
.c-pageButton--theme-full-white .c-pageButton__icon {
  background: #244546
}
.c-pageButton--theme-full-white .c-pageButton__icon::before {
  border-color: transparent transparent transparent #fff
}
.c-pageButton--theme-full-white.c-pageButton--text-jp {
  font-size: 14px
}
.c-pageButton--text-en {
  font-family: "EB Garamond",serif;
  font-size: 16px
}
.c-pageButton--text-jp {
  font-family: "Yu Mincho","游明朝体",serif;
  font-size: 20px
}
.l-container {
  padding: 0 30px
}
.is-page-top .l-header {
  opacity: 0
}
.l-header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 10
}
.l-header__head {
  justify-content: space-between;
  height: 60px;
  padding: 0 15px;
  background: rgba(255,255,255,.5);
  transition: background-color .4s cubic-bezier(.39,.575,.565,1);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px)
}
.l-header__head,
.l-header__head .headNav .navList,
.l-recruitHeader__head .headLogo a {
  display: flex;
  align-items: center
}
.l-header__head .headNav .navList__item .link {
  position: relative;
  display: inline-block;
  font-family: "Yu Mincho","游明朝体",serif;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0
}
.l-header__head .headNav .navList__item .link__drawer {
  position: absolute;
  top: 0;
  left: 0;
  padding: 30px 0 0;
  font-family: "Yu Mincho","游明朝体",serif;
  color: #fff;
  visibility: hidden;
  opacity: 0
}
.l-header__head .headNav .navList__item .link__drawer .drawer {
  padding: 20px;
  background: #238184
}
.l-header__head .headNav .navList__item .link__drawer .drawer__inner .drawerLink {
  display: block;
  white-space: nowrap
}
.l-header__head .headNav .navList__item .link__drawer .drawer__inner .drawerLink + .drawerLink {
  margin: 10px 0 0
}
.l-header__head .headNav .navList__item + .navList__item {
  position: relative;
  padding: 0 0 0 15px;
  margin: 0 0 0 15px
}
.l-header__head .headNav .navList__item + .navList__item::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 24px;
  content: "";
  background: #707070;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.l-header__head .headNav .navList--world .navList__item + .navList__item::before {
  height: 43px
}
.l-header__head .headMenuButton {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 37px;
  background: #244546
}
.l-header__head .headMenuButton__line {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 23px;
  height: 12px
}
.l-header__head .headMenuButton__line .line {
  width: 23px;
  height: 1px;
  background: #fff
}
.l-header__head .headMenuButton__line .line:last-child,
.l-recruitHeader__head .headMenuButton__line .line:last-child {
  width: 16px
}
.l-header__head .headMenuButton__text {
  margin: 5px 0 0;
  font-family: "Yu Mincho","游明朝体",serif;
  font-size: 6px;
  line-height: 1;
  color: #fff
}
.l-header__head .headLanguageButton {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 34px;
  margin: 0 0 0 45px;
  font-family: "Yu Mincho","游明朝体",serif;
  font-size: 14px;
  font-weight: 500;
  background: #e6e6e6
}
.l-header__overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  overflow: scroll;
  visibility: hidden;
  background: #244546;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1),visibility .3s cubic-bezier(.39,.575,.565,1)
}
.l-header__overlay .closeButton {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #fff
}
.l-header__overlay .closeButton img {
  width: 23px;
  height: 23px
}
.l-header__overlay .aboutUs__copyright {
  display: none
}
.l-header__overlay .aboutUs .js-io-element,
.l-recruitHeader.is-active::before {
  opacity: 1
}
.l-header__overlay.is-active {
  visibility: visible;
  opacity: 1
}
.l-header.is-scrolled .l-header__head {
  background: #fff
}
.is-load-complete .l-header {
  opacity: 1;
  transition: opacity .8s cubic-bezier(.39,.575,.565,1) 1.2s
}
.l-recruitFooter {
  padding: 20px 0 30px;
  background: #f2f2f2
}
.l-recruitFooter .list {
  text-align: center
}
.l-recruitFooter .list__item .link {
  font-size: 10px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0
}
.l-recruitFooter .copyright {
  margin: 25px 0 0;
  font-family: Inter,sans-serif;
  font-size: 10px;
  font-weight: 200;
  text-align: center;
  letter-spacing: 0
}
.l-recruitHeader {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 10
}
.l-recruitHeader::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  content: "";
  background: rgba(255,255,255,.5);
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px)
}
.l-recruitHeader__head {
  position: relative;
  z-index: 11;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 60px;
  padding: 0 15px
}
.l-recruitHeader__head .headLogo__img {
  line-height: 0
}
.l-recruitHeader__head .headLogo__img img {
  width: 94px
}
.l-recruitHeader__head .headLogo__text {
  margin: 0 0 0 15px;
  font-size: 12px;
  font-weight: 500;
  color: #244546;
  letter-spacing: 0
}
.l-recruitHeader__head .entry {
  width: 82px;
  height: 22px;
  margin: 0 0 0 auto;
  font-size: 13px
}
.l-recruitHeader__head .headMenuButton {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 37px;
  margin: 0 0 0 10px;
  background: #6cc5e6
}
.l-recruitHeader__head .headMenuButton__line {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 23px;
  height: 12px;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1)
}
.l-recruitHeader__head .headMenuButton__line .line {
  width: 23px;
  height: 1px;
  background: #fff
}
.l-recruitHeader__head .headMenuButton__close {
  position: absolute;
  top: calc(50% - 14px);
  left: calc(50% - 14px);
  width: 28px;
  height: 28px;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.l-recruitHeader__head .headMenuButton__close::after,
.l-recruitHeader__head .headMenuButton__close::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: #fff
}
.l-recruitHeader__head .headMenuButton__close::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}
.l-recruitHeader__head .headMenuButton__text {
  margin: 5px 0 0;
  font-family: "Yu Mincho","游明朝体",serif;
  font-size: 6px;
  line-height: 1;
  color: #fff;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1)
}
.l-recruitHeader__head .headMenuButton.is-active .headMenuButton__line,
.l-recruitHeader__head .headMenuButton.is-active .headMenuButton__text {
  opacity: 0
}
.l-recruitHeader__head .headMenuButton.is-active .headMenuButton__close,
.p-header.is-scrolled::before {
  opacity: 1
}
.l-recruitHeader__overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  overflow: scroll;
  visibility: hidden;
  background: #fff;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1),visibility .3s cubic-bezier(.39,.575,.565,1)
}
.l-recruitHeader__overlay .aboutUs__copyright,
.l-recruitHeader__overlayInner .navList__item .nav.js-drawer::before {
  display: none
}
.l-recruitHeader__overlay.is-active {
  visibility: visible;
  opacity: 1
}
.l-recruitHeader__overlayInner {
  padding: 120px 30px 0
}
.l-recruitHeader__overlayInner .navList__item .nav {
  position: relative;
  display: block;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0
}
.l-recruitHeader__overlayInner .navList__item .nav__toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 15px
}
.l-recruitHeader__overlayInner .navList__item .nav__toggle::after,
.l-recruitHeader__overlayInner .navList__item .nav__toggle::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  content: "";
  background: #6cc5e6
}
.l-recruitHeader__overlayInner .navList__item .nav__toggle::after {
  transition: transform .4s cubic-bezier(.39,.575,.565,1),-webkit-transform .4s cubic-bezier(.39,.575,.565,1);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}
.l-recruitHeader__overlayInner .navList__item .nav::before {
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 17px;
  -webkit-clip-path: polygon(0 0,0 100%,100% 50%);
  clip-path: polygon(0 0,0 100%,100% 50%);
  content: "";
  background: #6cc5e6
}
.l-recruitHeader__overlayInner .navList__item .nav:not([href]) {
  pointer-events: none;
  opacity: .3
}
.l-recruitHeader__overlayInner .navList__item .nav.is-active .nav__toggle::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.l-recruitHeader__overlayInner .navList__item .drawer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s cubic-bezier(.39,.575,.565,1)
}
.l-recruitHeader__overlayInner .navList__item .drawer__inner {
  padding: 20px 0 0
}
.l-recruitHeader__overlayInner .navList__item .drawer__inner .drawerLink {
  display: block;
  font-weight: 500
}
.l-recruitHeader__overlayInner .navList__item .drawer__inner .drawerLink + .drawerLink {
  margin: 15px 0 0;
  font-size: 14px
}
.l-recruitHeader__overlayInner .navList__item + .navList__item {
  margin: 20px 0 0
}
.l-recruitHeader__overlayInner .entry {
  width: 100%;
  height: 49px;
  margin: 40px 0 0;
  font-size: 20px
}
.l-recruitHeader__overlayInner .entry .ja {
  margin: 0 10px;
  font-family: "Noto Sans JP",sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: .1em
}
.l-recruitHeader.is-scrolled .l-recruitHeader__head {
  background: #fff
}
.is-load-complete .l-recruitHeader {
  opacity: 1;
  transition: opacity .8s cubic-bezier(.39,.575,.565,1) 1.2s
}
.p-about {
  position: relative;
  padding: 145px 0 150px
}
.p-about::before {
  position: absolute;
  top: -40px;
  left: 35px;
  width: 138px;
  height: 160px;
  background: url(/assets/images/pages/rv-park/about_head-illust.svg);
  content: ""
}
.p-about .about .ttl,
.p-about .p-section-head__ttl {
  color: var(--color-green)
}
.p-about .about {
  margin: 90px 0 0
}
.p-about .about .ttl {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.75
}
.p-about .about .ttl + .txt {
  margin: 15px 0 0
}
.p-about .about .txt {
  font-size: 12px;
  line-height: 2.15;
  letter-spacing: 0
}
.p-about .about__container {
  padding: 0 20px
}
.p-about .about__container .head-block__visual .hdg {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: baseline;
  gap: 0 15px;
  width: 320px;
  height: 43px;
  padding: 0 0 0 50px;
  margin: 0 -20px;
  color: #fff;
  background: var(--color-green);
  border-top-right-radius: 30px
}
.p-about .about__container .head-block__visual .hdg__main {
  font-size: 26px;
  font-family: var(--font-en);
  letter-spacing: .08em;
  font-weight: 700
}
.p-about .about__container .head-block__visual .hdg__sub {
  font-size: 12px;
  letter-spacing: .08em;
  font-weight: 800
}
.p-about .about__container .head-block__visual .img {
  position: relative;
  margin: -20px 0 0
}
.p-about .about__container .body-block__img img,
.p-about .about__container .body-block__visual .visual__img img,
.p-about .about__container .head-block__visual .img img {
  width: 100%
}
.p-about .about__container .body-block__img .img--position-illust,
.p-about .about__container .head-block__visual .img--facility-illust,
.p-about .about__container .head-block__visual .img--position-illust {
  position: relative
}
.p-about .about__container .head-block__visual .img--position-illust::before {
  position: absolute;
  top: 170px;
  right: 0;
  width: 81px;
  height: 79px;
  content: "";
  background: url(/assets/images/pages/rv-park/about_illust1.svg) center/contain no-repeat
}
.p-about .about__container .head-block__visual .img--facility-illust::before {
  position: absolute;
  top: -105px;
  right: 0;
  width: 122px;
  height: 97px;
  content: "";
  background: url(/assets/images/pages/rv-park/about_illust2.svg) center/contain no-repeat
}
.p-about .about__container .head-block__contents {
  margin: 25px 0 0
}
.p-about .about__container .body-block {
  margin: 40px 0 0
}
.p-about .about__container .body-block__img {
  margin: 0 0 20px
}
.p-about .about__container .body-block__img .img--position-illust::after {
  position: absolute;
  top: -114px;
  right: 0;
  width: 97px;
  height: 78px;
  content: "";
  background: url(/assets/images/pages/rv-park/about_illust0.svg) center/contain no-repeat
}
.p-about .about__container .body-block__visual {
  display: flex;
  gap: 0 10px
}
.p-about .about__container .body-block__visual .visual {
  flex: 1
}
.p-about .about__container .body-block__visual .visual__img {
  position: relative
}
.p-about .about__container .body-block__visual .visual__txt {
  margin: 5px 10px 0 0;
  text-align: right;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0;
  color: #5f5d56
}
.p-about .about__container .body-block__visual--narrow {
  gap: 0 10px
}
.p-about .about__container .body-block__contents {
  margin: 30px 0 0
}
.p-access__contents {
  background: #f7f7e9;
  padding: 55px 20px
}
.p-access__contents .address,
.p-access__contents .txt {
  font-size: 14px;
  line-height: 1.85;
  letter-spacing: 0;
  margin: 25px 0 0
}
.p-access__contents .address {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.75
}
.p-access__contents .access {
  margin: 25px 0 0
}
.p-access__contents .access__ttl {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-green);
  letter-spacing: 0
}
.p-access__contents .access__txt {
  margin: 10px 0 0;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.85
}
.p-access__contents .access__txt .circle {
  color: var(--color-green)
}
.p-access__map iframe {
  width: 100%;
  height: 337px
}
.p-float-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: flex;
  width: 100%;
  height: 40px
}
.p-float-nav .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  flex: 1;
  height: 100%
}
.p-float-nav .btn__line {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 22px;
  height: 11px
}
.p-float-nav .btn__line .line {
  width: 100%;
  height: 1px;
  background: #fff;
  -webkit-transform-origin: left;
  transform-origin: left;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1),transform .3s cubic-bezier(.39,.575,.565,1),-webkit-transform .3s cubic-bezier(.39,.575,.565,1)
}
.p-float-nav .btn__txt {
  color: #fff;
  letter-spacing: 0;
  font-size: 14px;
  font-weight: 700
}
.p-float-nav .btn--menu {
  background: #b1b15b
}
.p-float-nav .btn--reserve {
  background: #6f9a5d
}
.p-float-nav .btn.is-active .btn__line .line:nth-child(1) {
  -webkit-transform: rotate(45deg) translateY(-3.75px);
  transform: rotate(45deg) translateY(-3.75px)
}
.p-float-nav .btn.is-active .btn__line .line:nth-child(2) {
  opacity: 0
}
.p-float-nav .btn.is-active .btn__line .line:nth-child(3) {
  -webkit-transform: rotate(-45deg) translateY(3.75px);
  transform: rotate(-45deg) translateY(3.75px)
}
.p-footer {
  padding: 25px 0 50px;
  background: var(--color-green)
}
.p-footer,
.p-footer__link {
  display: flex;
  flex-direction: column;
  align-items: center
}
.p-footer__link .link {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  color: #fff
}
.p-footer__link .link + .link,
.p-service .service__contents-body .contents__gallery-inner .gallery__ttl + .gallery__txt {
  margin: 10px 0 0
}
.p-footer__logo {
  margin: 20px 0 0
}
.p-footer__logo img {
  width: 153px
}
.p-footer__txt {
  margin: 30px 0 0;
  font-size: 10px;
  color: #fff;
  letter-spacing: 0;
  font-weight: 500
}
.p-header {
  position: fixed;
  width: 100%;
  z-index: 20;
  display: flex;
  justify-content: space-between
}
.p-header::before,
.p-header__nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0
}
.p-header::before {
  z-index: -1;
  height: 70px;
  background: rgba(195,195,195,.6);
  pointer-events: none;
  content: "";
  transition: opacity .5s cubic-bezier(.39,.575,.565,1)
}
.p-header__head {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}
.p-header__head .site-logo {
  padding: 25px 0 0 20px
}
.p-header__head .site-logo__img {
  position: relative;
  width: 141px;
  transition: width .5s cubic-bezier(.39,.575,.565,1),transform .5s cubic-bezier(.39,.575,.565,1),-webkit-transform .5s cubic-bezier(.39,.575,.565,1)
}
.p-header__head .site-logo__img .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1)
}
.p-header__head .site-logo__img .img--black {
  opacity: 0
}
.p-header__nav {
  visibility: hidden;
  background: #fdfbf4;
  padding: 135px 40px 35px;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1),visibility .3s cubic-bezier(.39,.575,.565,1)
}
.p-header__nav .page-nav {
  display: flex;
  flex-direction: column;
  gap: 15px 0
}
.p-header__nav .page-nav__item {
  color: #5f5d56;
  font-weight: 700;
  letter-spacing: 0;
  font-size: 20px
}
.p-header__nav .page-nav__item .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 20px;
  height: 40px;
  border-radius: 9999px;
  color: #fff
}
.p-header__nav .page-nav__item .btn--reserve {
  background: var(--color-green)
}
.p-header__nav .page-nav__item .btn--contact {
  background: #c1c178
}
.p-header__nav .page-nav__item img {
  width: 37px
}
.p-header__nav .page-nav__item--kurumatabi img {
  width: 104px
}
.p-header__nav .page-nav--logo {
  flex-direction: row;
  align-items: center;
  gap: 0 20px
}
.p-header__nav .page-nav + .page-nav {
  margin: 30px 0 0
}
.p-header__nav .img {
  margin: 60px 0 0;
  text-align: center
}
.p-header__nav .img img {
  width: 268.5px
}
.p-header .menu-btn {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center
}
.p-header .menu-btn__line {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 30px;
  height: 17px
}
.p-header .menu-btn__line .line {
  background: #fff;
  width: 30px;
  height: 1px;
  -webkit-transform-origin: left;
  transform-origin: left;
  transition: opacity .3s cubic-bezier(.39,.575,.565,1),transform .3s cubic-bezier(.39,.575,.565,1),-webkit-transform .3s cubic-bezier(.39,.575,.565,1)
}
.p-header.is-scrolled .site-logo__img {
  width: 90px;
  -webkit-transform: translateY(-17px);
  transform: translateY(-17px)
}
.p-header.is-scrolled .page-nav__item--kurumatabi {
  display: none
}
.p-mainVisual {
  position: relative
}
.p-mainVisual__visual .slider {
  position: relative;
  width: 100%;
  height: 100vh
}
.p-mainVisual__visual .slider__slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s cubic-bezier(.39,.575,.565,1)
}
.p-mainVisual__visual .slider__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.p-mainVisual__visual .slider__slide.is-active {
  opacity: 1
}
.p-mainVisual__contents {
  position: absolute;
  top: 280px;
  left: 0;
  width: 100%
}
.p-mainVisual__contents .contents {
  padding: 0 20px
}
.p-mainVisual__contents .hdg {
  font-weight: 700;
  color: #fff;
  letter-spacing: .06em;
  font-size: 38px;
  font-family: Roboto,serif;
  text-shadow: 0 0 20px rgba(0,0,0,.5)
}
.p-mainVisual__contents .note {
  color: #fff;
  letter-spacing: 0;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.8;
  margin: -5px 0 0;
  text-shadow: 0 0 20px rgba(0,0,0,.5)
}
.p-mainVisual__scroll {
  position: absolute;
  bottom: 35px;
  left: 85px
}
.p-mainVisual__reservation {
  position: fixed;
  z-index: 10;
  right: 10px;
  bottom: 50px
}
.p-project {
  padding: 40px 0 50px
}
.p-project__container {
  padding: 0 20px
}
.p-project .p-section-hdg__main,
.p-project__txt {
  font-size: 36px;
  letter-spacing: 0
}
.p-project .p-section-hdg__sub {
  font-size: 16px;
  margin: 10px 0 0
}
.p-project__txt {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
  text-align: center;
  margin: 25px 0 0
}
.p-project__iframe {
  margin: 25px 0 0
}
.p-project__iframe iframe {
  width: 100%;
  height: 194px
}
.p-reservation__container {
  padding: 45px 0;
  background: var(--color-green)
}
.p-reservation .p-section-hdg {
  color: #fff;
  margin: 30px 0 0
}
.p-reservation .btn-list {
  display: flex;
  flex-direction: column;
  gap: 20px 0;
  margin: 25px 0 0
}
.p-reservation .btn-list__item,
.p-reservation__img {
  text-align: center
}
.p-reservation .btn-list__item .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 320px;
  height: 40px;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .08em;
  border-radius: 9999px;
  box-shadow: 0 0 20px rgba(0,0,0,.33)
}
.p-reservation .btn-list__item .btn--white {
  background: #fdfbf4;
  color: var(--color-green)
}
.p-reservation .btn-list__item .btn--green {
  color: #fff;
  background: #c1c178
}
.p-reservation__share {
  display: flex;
  justify-content: center;
  padding: 20px 0;
  background: #b1b15b;
  gap: 0 20px
}
.p-reservation__share .sns-list {
  display: flex;
  align-items: center;
  gap: 0 40px
}
.p-reservation__share .sns-list__item img {
  width: 48px
}
.p-reservation__share .logo img {
  width: 150px
}
.p-section-head__ttl {
  padding: 0 20px;
  display: flex;
  flex-direction: column
}
.p-section-head__ttl .main {
  font-weight: 700;
  font-family: Roboto,serif;
  font-size: 40px;
  letter-spacing: 0
}
.p-section-head__ttl .sub {
  font-weight: 800;
  font-size: 16px;
  letter-spacing: .05em;
  margin: -5px 0 0
}
.p-section-head__img {
  margin: 25px 0 0;
  padding: 0 0 0 45px
}
.p-section-head__img img,
.p-section-head__mini-img img,
.p-service .service__contents-body .contents__gallery-inner .gallery__img img,
.p-service .service__img img,
.p-spot__container .visual img {
  width: 100%
}
.p-section-head__mini-img {
  width: 175px;
  margin: -35px 0 0 20px
}
.p-section-head__txt {
  margin: 30px 0 0;
  padding: 0 20px;
  font-size: 14px;
  font-weight: 400;
  line-height: 2.25
}
.p-section-hdg {
  display: flex;
  flex-direction: column;
  color: var(--color-green)
}
.p-section-hdg__main,
.p-section-hdg__sub {
  font-size: 40px;
  font-weight: 700;
  letter-spacing: .08em
}
.p-section-hdg__sub {
  margin: -5px 0 0;
  font-size: 16px;
  font-weight: 800
}
.p-section-hdg--center {
  align-items: center;
  text-align: center
}
.p-service {
  position: relative;
  padding: 35px 0 70px;
  background: #f7f7e9
}
.p-service::before {
  position: absolute;
  top: -73px;
  left: 20px;
  content: "";
  background: url(/assets/images/pages/rv-park/service_illust1.svg) center/contain no-repeat;
  width: 272px;
  height: 68px
}
.p-service .p-section-head__ttl,
.p-service .service__contents-body .contents__gallery-inner .gallery__txt .circle {
  color: var(--color-yellow)
}
.p-service__container {
  padding: 0 20px;
  margin: 55px 0 0
}
.p-service .service__contents-head {
  display: flex;
  gap: 0 20px
}
.p-service .service__contents-head .num img {
  width: 54px
}
.p-service .service__contents-head .contents__name {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--color-yellow)
}
.p-service .service__contents-head .contents__txt {
  font-size: 10px;
  letter-spacing: 0;
  font-weight: 400
}
.p-service .service__contents-body {
  margin: 30px 0 0
}
.p-service .service__contents-body .contents__tag .tag,
.p-service .service__contents-body .contents__ttl {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--color-yellow)
}
.p-service .service__contents-body .contents__txt {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0;
  margin: 10px 0 0
}
.p-service .service__contents-body .contents__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 0
}
.p-service .service__contents-body .contents__tag .tag {
  font-size: 15px;
  border: 2px solid var(--color-yellow);
  border-radius: 9999px;
  padding: 3px 20px 4px
}
.p-service .service__contents-body .contents__note {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .015em;
  margin: 10px 0 0;
  line-height: 1.55
}
.p-service .service__contents-body .contents__gallery {
  margin: 20px 0 0
}
.p-service .service__contents-body .contents__gallery + .contents__gallery {
  margin: 30px 0 0
}
.p-service .service__contents-body .contents__gallery-inner {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 30px 0
}
.p-service .service__contents-body .contents__gallery-inner .gallery__img--small {
  width: calc(250/350*100%)
}
.p-service .service__contents-body .contents__gallery-inner .gallery__ttl {
  margin: 10px 0 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--color-yellow)
}
.p-service .service__contents-body .contents__gallery-inner .gallery__txt {
  margin: 5px 0 0;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0
}
.p-service .service__contents-body .contents__gallery-inner .gallery__note {
  font-size: 12px;
  letter-spacing: 0;
  line-height: 2.15;
  margin: 15px 0 0;
  font-weight: 400
}
.p-service .service__contents-body .contents__gallery-inner .gallery--illust3 {
  position: relative;
  margin: -30px 0 110px
}
.p-service .service__contents-body .contents__gallery-inner .gallery--illust3::before {
  position: absolute;
  top: 75px;
  right: 0;
  width: 136px;
  height: 112px;
  background: url(/assets/images/pages/rv-park/service_illust3.svg) center/contain no-repeat;
  content: ""
}
.p-service .service__contents-body .contents__gallery-inner .gallery--illust4 {
  position: relative;
  margin: 150px 0 0
}
.p-service .service__contents-body .contents__gallery-inner .gallery--illust4::before {
  position: absolute;
  top: -170px;
  left: 0;
  width: 144px;
  height: 172px;
  background: url(/assets/images/pages/rv-park/service_illust4.svg) center/contain no-repeat;
  content: ""
}
.p-service .service__contents-body .contents__gallery-inner--small {
  flex-direction: row;
  margin: 0 -9px;
  gap: 15px 0
}
.p-service .service__contents-body .contents__gallery-inner--small .gallery {
  width: 50%;
  padding: 0 9px
}
.p-service .service__contents-body .contents + .contents {
  margin: 25px 0 0
}
.p-service .service__contents-body .contents + .contents--wide-margin {
  margin: 55px 0 0
}
.p-service .service__img {
  margin: 35px 0 0
}
.p-service .service + .service {
  margin: 60px 0 0
}
.p-spot {
  padding: 70px 0 55px
}
.p-spot .p-section-head__ttl {
  color: var(--color-green)
}
.p-spot__container {
  padding: 0 20px;
  margin: 35px 0 0
}
.p-spot__container .visual {
  position: relative
}
.p-spot__container .visual::before {
  position: absolute;
  right: 15px;
  bottom: 15px;
  width: 30px;
  height: 30px;
  content: "";
  background: url(/assets/images/pages/rv-park/icon_zoom.svg) center/contain no-repeat
}
.p-spot__container .contents,
.p-spot__container .contents__cards .card--large .card__contents {
  margin: 30px 0 0
}
.p-spot__container .contents__ttl {
  font-size: 24px;
  font-weight: 800;
  color: var(--color-green);
  letter-spacing: 0
}
.p-spot__container .contents__cards {
  margin: 35px 0 0
}
.p-spot__container .contents__cards .cards {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -9px;
  gap: 30px 0
}
.p-spot__container .contents__cards .card {
  padding: 0 9px;
  width: 50%
}
.p-spot__container .contents__cards .card__img img {
  width: 100%
}
.p-spot__container .contents__cards .card__contents {
  margin: 10px 0 0
}
.p-spot__container .contents__cards .card__contents--illust1 {
  position: relative
}
.p-spot__container .contents__cards .card__contents--illust1::before {
  position: absolute;
  top: -5px;
  right: 10px;
  width: 92px;
  height: 117px;
  background: url(/assets/images/pages/rv-park/spot_illust1.svg) center/contain no-repeat;
  content: ""
}
.p-spot__container .contents__cards .card__ttl {
  font-weight: 700;
  letter-spacing: 0;
  font-size: 16px;
  color: var(--color-green)
}
.p-spot__container .contents__cards .card__note {
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0;
  color: var(--color-green)
}
.p-spot__container .contents__cards .card__txt {
  margin: 10px 0 0;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1.8
}
.p-spot__container .contents__cards .card--large {
  padding: 0;
  width: 100%
}
.p-spot__container .contents__cards .card--large .card__txt {
  width: 165px
}
.p-spot .modal {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.7);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  transition: opacity .4s cubic-bezier(.39,.575,.565,1),visibility .4s cubic-bezier(.39,.575,.565,1)
}
.p-spot .modal.is-active {
  opacity: 1;
  visibility: visible
}
.p-spot .modal__container {
  position: relative
}
.p-spot .modal__close {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 20px
}
.p-spot .modal .swiper {
  overflow: visible
}
.p-spot .modal .swiper img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
html {
  --color-green: #6f9a5d;
  --color-yellow: #b1b15b
}
.l-page {
  background: #fdfbf4
}
.l-main {
  font-family: "Noto Sans JP",sans-serif
}
@media (min-width:768px) {
  .c-pageButton {
    position: relative;
    z-index: 0;
    padding: 0 0 8.5px
  }
  .c-pageButton::before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 0;
    content: "";
    transition: height .3s cubic-bezier(.39,.575,.565,1)
  }
  .c-pageButton__text {
    transition: color .3s cubic-bezier(.39,.575,.565,1),transform .3s cubic-bezier(.39,.575,.565,1),-webkit-transform .3s cubic-bezier(.39,.575,.565,1)
  }
  .c-pageButton__icon {
    width: 56px;
    height: 18px
  }
  .c-pageButton__icon::before {
    border-width: 5px 0 5px 9px
  }
  .c-pageButton--theme-green::before {
    background: #238184
  }
  .c-pageButton--theme-green[href]:hover .c-pageButton__text {
    color: #fff
  }
  .c-pageButton--theme-full-green {
    padding: 0 20px 0 50px;
    transition: filter .4s cubic-bezier(.39,.575,.565,1);
    transition: filter .4s cubic-bezier(.39,.575,.565,1),-webkit-filter .4s cubic-bezier(.39,.575,.565,1)
  }
  .c-pageButton--theme-full-green.c-pageButton--text-jp {
    font-size: 20px
  }
  .c-pageButton--theme-full-green[href]:hover {
    -webkit-filter: brightness(110%);
    filter: brightness(110%)
  }
  .c-pageButton--theme-white::before {
    background: #fff
  }
  .c-pageButton--theme-white[href]:hover .c-pageButton__text {
    color: #238184
  }
  .c-pageButton--theme-full-white {
    height: 60px;
    padding: 0 20px 0 40px
  }
  .c-pageButton--text-en,
  .c-pageButton--text-jp,
  .c-pageButton--theme-full-white.c-pageButton--text-jp {
    font-size: 18px
  }
  .c-pageButton[href]:hover::before {
    height: 140%
  }
  .c-pageButton[href]:hover .c-pageButton__text {
    -webkit-transform: translate3d(10px,0,0);
    transform: translate3d(10px,0,0)
  }
  .l-container {
    max-width: 1400px;
    padding: 0 50px;
    margin: 0 auto
  }
  .l-container--narrow {
    max-width: 1200px;
    padding: 0 80px
  }
  .l-header__head {
    justify-content: flex-start;
    height: 80px;
    padding: 0 120px
  }
  .l-header__head .headLogo img {
    width: 128px
  }
  .l-header__head .headNav {
    margin: 0 0 0 auto
  }
  .l-header__head .headNav .navList__item .link__drawer {
    transition: opacity .3s cubic-bezier(.39,.575,.565,1),visibility .3s cubic-bezier(.39,.575,.565,1)
  }
  .l-header__head .headNav .navList__item .link__drawer .drawer__inner:hover .drawerLink {
    opacity: .7
  }
  .l-header__head .headNav .navList__item .link__drawer .drawer__inner .drawerLink {
    transition: opacity .3s cubic-bezier(.39,.575,.565,1)
  }
  .l-header__head .headNav .navList__item .link__drawer .drawer__inner .drawerLink:hover {
    opacity: 1
  }
  .l-header__head .headNav .navList__item .link--drawer:hover .link__drawer {
    visibility: visible;
    opacity: 1
  }
  .l-header__head .headNav .navList--world .navList__item + .navList__item {
    padding: 0 0 0 45px;
    margin: 0 0 0 45px
  }
  .l-header__head .headMenuButton {
    width: 47px;
    height: 44px;
    margin: 0 0 0 45px
  }
  .l-header__head .headMenuButton__line {
    width: 29px;
    height: 14px;
    transition: height .4s cubic-bezier(.39,.575,.565,1)
  }
  .l-header__head .headMenuButton__line .line {
    width: 29px
  }
  .l-header__head .headMenuButton__line .line:last-child {
    width: 21px
  }
  .l-header__head .headMenuButton__text {
    font-size: 7px
  }
  .l-header__head .headMenuButton:hover .headMenuButton__line {
    height: 17px
  }
  .l-header__head .headLanguageButton {
    transition: background-color .3s cubic-bezier(.39,.575,.565,1),color .3s cubic-bezier(.39,.575,.565,1)
  }
  .l-header__head .headLanguageButton:hover {
    color: #fff;
    background: #238184
  }
  .l-header__overlay .closeButton {
    top: 127px;
    right: 50px;
    width: 30px;
    height: 30px
  }
  .l-header__overlay .closeButton img {
    width: 17px;
    height: 17px
  }
  .l-recruitFooter {
    padding: 45px 0 30px
  }
  .l-recruitFooter .list {
    display: flex;
    align-items: center;
    justify-content: center
  }
  .l-recruitFooter .list__item {
    padding: 0 20px
  }
  .l-recruitFooter .list__item .link {
    font-size: 16px
  }
  .l-recruitFooter .copyright {
    font-size: 14px
  }
  .l-recruitHeader {
    position: fixed;
    width: 100%
  }
  .l-recruitHeader::before {
    height: 112px
  }
  .l-recruitHeader__head {
    justify-content: flex-start;
    height: auto;
    padding: 25px 50px 0 70px;
    -webkit-backdrop-filter: none;
    backdrop-filter: none
  }
  .l-recruitHeader__head .headLogo__img img {
    width: 209px
  }
  .l-recruitHeader__head .headLogo__text {
    margin: 0 0 0 30px;
    font-size: 20px
  }
  .l-recruitHeader__head .entry {
    width: 258px;
    height: 42px;
    font-size: 26px
  }
  .l-recruitHeader__head .headMenuButton {
    width: 58px;
    height: 55px;
    margin: 0 0 0 35px
  }
  .l-recruitHeader__head .headMenuButton__line {
    width: 34px;
    height: 18px
  }
  .l-recruitHeader__head .headMenuButton__line .line {
    width: 29px
  }
  .l-recruitHeader__head .headMenuButton__line .line:last-child {
    width: 21px
  }
  .l-recruitHeader__head .headMenuButton__close {
    top: calc(50% - 20px);
    left: calc(50% - 20px);
    width: 40px;
    height: 40px
  }
  .l-recruitHeader__head .headMenuButton__text {
    margin: 8px 0 0;
    font-size: 8px
  }
  .l-recruitHeader__overlay {
    background: rgba(255,255,255,.9)
  }
  .l-recruitHeader__overlayInner {
    max-width: 1100px;
    padding: 200px 50px 135px;
    margin: 0 auto
  }
  .l-recruitHeader__overlayInner .navList__item .nav {
    width: 420px;
    font-size: 30px
  }
  .l-recruitHeader__overlayInner .navList__item .nav__toggle {
    top: 14px;
    width: 21px;
    height: 21px
  }
  .l-recruitHeader__overlayInner .navList__item .nav::before {
    top: 14px;
    width: 21px;
    height: 23px
  }
  .l-recruitHeader__overlayInner .navList__item .drawer__inner .drawerLink {
    transition: opacity .4s cubic-bezier(.39,.575,.565,1)
  }
  .l-recruitHeader__overlayInner .navList__item .drawer__inner .drawerLink:hover {
    opacity: .5
  }
  .l-recruitHeader__overlayInner .navList__item .drawer__inner .drawerLink + .drawerLink {
    font-size: 16px
  }
  .l-recruitHeader__overlayInner .navList__item + .navList__item,
  .p-about .about .ttl + .txt {
    margin: 25px 0 0
  }
  .p-about {
    padding: 165px 0 105px
  }
  .p-about::before {
    top: -35px;
    left: calc(50% - 600px)
  }
  .p-about .about {
    margin: 65px 0 0
  }
  .p-about .about + .about {
    margin: 210px 0 0
  }
  .p-about .about .ttl {
    font-size: 30px;
    line-height: 1.5
  }
  .p-about .about .txt {
    font-size: 16px;
    line-height: 1.875
  }
  .p-about .about__container {
    position: relative;
    max-width: 1480px;
    padding: 0 calc(200/1480*100%);
    margin: 0 auto
  }
  .p-about .about__container .head-block {
    display: flex;
    align-items: flex-end;
    gap: 0 40px
  }
  .p-about .about__container .head-block__visual {
    width: calc(900/1480*100%)
  }
  .p-about .about__container .head-block__visual .hdg {
    position: absolute;
    top: 0;
    left: 0;
    width: 603px;
    height: 80px;
    gap: 0 20px;
    padding: 0 0 0 100px;
    margin: calc(-40/1480*100%) 0 0;
    border-top-right-radius: 40px
  }
  .p-about .about__container .head-block__visual .hdg__main {
    font-size: 50px
  }
  .p-about .about__container .head-block__visual .hdg__sub {
    font-size: 18px
  }
  .p-about .about__container .head-block__visual .img {
    margin: 0
  }
  .p-about .about__container .head-block__visual .img--position-illust::before {
    top: 300px;
    left: -150px;
    width: 152px;
    height: 149px
  }
  .p-about .about__container .head-block__visual .img--position-illust::after {
    position: absolute;
    content: "";
    top: -97px;
    right: -558px;
    width: 173px;
    height: 139px;
    background: url(/assets/images/pages/rv-park/about_illust0.svg) center/contain no-repeat
  }
  .p-about .about__container .head-block__visual .img--facility-illust::before {
    top: -125px;
    right: -430px;
    width: 252px;
    height: 201px
  }
  .p-about .about__container .head-block__contents {
    margin: 0;
    width: 340px
  }
  .p-about .about__container .body-block {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    gap: 0 40px
  }
  .p-about .about__container .body-block__img {
    margin: 0
  }
  .p-about .about__container .body-block__img .img--position-illust::after {
    top: -97px;
    right: -558px;
    width: 173px;
    height: 139px
  }
  .p-about .about__container .body-block__visual {
    width: 540px;
    gap: 0 40px
  }
  .p-about .about__container .body-block__visual .visual__txt {
    font-size: 12px;
    margin: 5px 0 0
  }
  .p-about .about__container .body-block__visual--narrow {
    gap: 0 15px
  }
  .p-about .about__container .body-block__contents {
    width: 500px;
    margin: 0 0 20px
  }
  .p-access__container {
    display: flex;
    max-width: 1480px;
    margin: 0 auto
  }
  .p-access__contents {
    width: 50%;
    padding: 100px 40px 185px;
    display: flex;
    justify-content: flex-end
  }
  .p-access__contents .txt {
    font-size: 16px
  }
  .p-access__contents .address {
    margin: 35px 0 0;
    font-size: 20px
  }
  .p-access__contents .access {
    margin: 20px 0 0
  }
  .p-access__contents .access__txt {
    font-size: 16px
  }
  .p-access__map {
    width: 50%
  }
  .p-access__map iframe {
    height: 100%
  }
  .p-footer {
    padding: 30px 0 25px
  }
  .p-footer__link {
    flex-direction: row;
    justify-content: center
  }
  .p-footer__link .link + .link {
    position: relative;
    padding: 0 0 0 20px;
    margin: 0 0 0 20px
  }
  .p-footer__link .link + .link::before {
    position: absolute;
    top: -3px;
    left: 0;
    width: 1px;
    height: 30px;
    content: "";
    background: #fff
  }
  .p-footer__logo {
    margin: 30px 0 0
  }
  .p-footer__logo img {
    width: 194px
  }
  .p-footer__txt {
    font-size: 18px;
    margin: 20px 0 0
  }
  .p-header::before {
    height: 122px
  }
  .p-header__head,
  .p-header__nav {
    position: static
  }
  .p-header__head .site-logo {
    padding: 35px 0 0 65px
  }
  .p-header__head .site-logo__img {
    width: 226px
  }
  .p-header__nav {
    padding: 0;
    background: 0 0;
    width: auto;
    visibility: visible;
    opacity: 1
  }
  .p-header__nav .page-nav {
    flex-direction: row;
    padding: 45px 50px 0 0;
    gap: 0 30px
  }
  .p-header__nav .page-nav__item {
    color: #fff
  }
  .p-header__nav .page-nav__item img {
    transition: width .5s cubic-bezier(.39,.575,.565,1);
    width: 60px
  }
  .p-header__nav .page-nav__item--kurumatabi img {
    width: 168px
  }
  .p-header__nav .page-nav + .page-nav {
    margin: 0
  }
  .p-header.is-scrolled .site-logo__img {
    width: 160px;
    -webkit-transform: translateY(-22px);
    transform: translateY(-22px)
  }
  .p-header.is-scrolled .page-nav__item img {
    width: 30px
  }
  .p-header.is-scrolled .page-nav__item--kurumatabi img {
    width: 93px
  }
  .p-mainVisual__contents {
    top: 0;
    height: 100%;
    display: flex;
    align-items: center
  }
  .p-mainVisual__contents .contents {
    margin: 200px 0 0;
    padding: 0 80px
  }
  .p-mainVisual__contents .hdg {
    font-size: 76px;
    line-height: 1.15
  }
  .p-mainVisual__contents .note {
    margin: 5px 0 0;
    font-size: 26px;
    line-height: 1.6
  }
  .p-mainVisual__scroll img {
    width: 15px
  }
  .p-mainVisual__reservation {
    bottom: 20px;
    right: 20px
  }
  .p-mainVisual__reservation img {
    width: 180px
  }
  .p-project {
    padding: 80px 0 95px
  }
  .p-project .p-section-hdg__main {
    font-size: 60px
  }
  .p-project .p-section-hdg__sub {
    font-size: 22px;
    margin: 0
  }
  .p-project__txt {
    font-size: 18px;
    margin: 50px 0 0
  }
  .p-project__iframe {
    margin: 45px 0 0;
    text-align: center
  }
  .p-project__iframe iframe {
    width: 1074px;
    height: 594px
  }
  .p-reservation__container {
    position: relative;
    padding: 45px 0 50px
  }
  .p-reservation .p-section-hdg {
    margin: 0
  }
  .p-reservation__img {
    position: absolute;
    top: -75px;
    left: 90px
  }
  .p-reservation__img img {
    width: 468px
  }
  .p-reservation .btn-list {
    flex-direction: row;
    gap: 0 30px;
    justify-content: center;
    margin: 40px 0 0
  }
  .p-reservation .btn-list__item .btn {
    width: 394px;
    height: 71px;
    font-size: 27px
  }
  .p-reservation__share {
    gap: 0 25px;
    padding: 30px 0 20px
  }
  .p-reservation__share .sns-list {
    gap: 0 50px
  }
  .p-reservation__share .sns-list__item img {
    width: 60px
  }
  .p-reservation__share .logo img {
    width: 191px
  }
  .p-section-head {
    position: relative
  }
  .p-section-head__container {
    display: flex;
    flex-direction: column;
    max-width: 1480px;
    margin: 0 auto
  }
  .p-section-head__ttl {
    position: relative;
    padding: 0 calc(35/1480*100%);
    z-index: 1
  }
  .p-section-head__ttl .main {
    font-size: 110px
  }
  .p-section-head__ttl .sub {
    font-size: 22px;
    margin: -15px 0 0
  }
  .p-section-head__img {
    position: absolute;
    top: 50%;
    right: 0;
    width: 50%;
    padding: 0;
    margin: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
  .p-section-head__contents {
    display: flex;
    flex-direction: row-reverse;
    gap: 0 30px;
    align-items: flex-end;
    width: calc(510/1480*100%);
    margin: auto 0 0 calc(200/1480*100%)
  }
  .p-section-head__contents .p-section-head__txt {
    flex: 1;
    width: auto;
    margin: 0
  }
  .p-section-head__mini-img {
    margin: 0;
    width: calc(168/510*100%)
  }
  .p-section-head__txt {
    width: 500px;
    font-size: 20px;
    padding: 0;
    margin: 85px 0 0 calc(150/1480*100%)
  }
  .p-section-hdg__main {
    font-size: 60px
  }
  .p-section-hdg__sub {
    font-size: 20px;
    margin: 0
  }
  .p-service {
    margin: 105px 0 0;
    padding: 110px 0 130px
  }
  .p-service::before {
    top: -42px;
    left: 105px;
    width: 429px;
    height: 107px
  }
  .p-service__container {
    width: 1080px;
    margin: 80px auto 0;
    padding: 0
  }
  .p-service .service {
    display: flex;
    justify-content: space-between
  }
  .p-service .service__contents-head {
    gap: 0 30px
  }
  .p-service .service__contents-head .num img {
    width: 90px
  }
  .p-service .service__contents-head .contents__name {
    font-size: 38px
  }
  .p-service .service__contents-head .contents__txt {
    font-size: 16px;
    margin: 10px 0 0
  }
  .p-service .service__contents-head--2 {
    position: relative
  }
  .p-service .service__contents-head--2::before {
    position: absolute;
    top: 0;
    right: -100px;
    content: "";
    width: 205px;
    height: 108px;
    background: url(/assets/images/pages/rv-park/service_illust2.svg) center/contain no-repeat
  }
  .p-service .service__contents-body {
    margin: 70px 0 0
  }
  .p-service .service__contents-body .contents__ttl {
    font-size: 26px
  }
  .p-service .service__contents-body .contents__txt {
    font-size: 24px
  }
  .p-service .service__contents-body .contents__tag {
    gap: 10px;
    margin: 25px 0 0
  }
  .p-service .service__contents-body .contents__tag .tag {
    font-size: 22px;
    padding: 4px 24px
  }
  .p-service .service__contents-body .contents__note {
    font-size: 22px;
    line-height: 1.8
  }
  .p-service .service__contents-body .contents__note .small {
    font-size: 16px
  }
  .p-service .service__contents-body .contents__gallery + .contents__gallery {
    margin: 35px 0 0
  }
  .p-service .service__contents-body .contents__gallery-inner {
    flex-direction: row;
    margin: 0 -21px
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery {
    width: 50%;
    padding: 0 21px
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery__img--small {
    width: 250px
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery__ttl {
    font-size: 24px;
    margin: 25px 0 0
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery__note {
    font-size: 16px;
    margin: 0 0 25px
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery--column-between {
    display: flex;
    flex-direction: column;
    justify-content: space-between
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery--illust3,
  .p-service .service__contents-body .contents__gallery-inner .gallery--illust4 {
    margin: 0
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery--illust3::before {
    top: -50px;
    width: 241px;
    height: 199px
  }
  .p-service .service__contents-body .contents__gallery-inner .gallery--illust4::before {
    top: -75px;
    left: 90px;
    width: 190px;
    height: 226px
  }
  .p-service .service__contents-body .contents__gallery-inner--small {
    margin: 0 -13px;
    gap: 0
  }
  .p-service .service__contents-body .contents__gallery-inner--small .gallery {
    width: 25%;
    padding: 0 13px
  }
  .p-service .service__contents-body .contents + .contents {
    margin: 35px 0 0
  }
  .p-service .service__contents-body .contents + .contents--wide-margin {
    margin: 80px 0 0
  }
  .p-service .service__img {
    width: 540px;
    margin: 0
  }
  .p-service .service + .service {
    margin: 125px 0 0
  }
  .p-spot {
    padding: 160px 0 70px
  }
  .p-spot__container {
    padding: 0;
    margin: 175px auto 0;
    width: 1080px
  }
  .p-spot__container .visual {
    pointer-events: none
  }
  .p-spot__container .visual::before {
    display: none
  }
  .p-spot__container .contents {
    margin: 60px 0 0
  }
  .p-spot__container .contents__ttl {
    font-size: 38px
  }
  .p-spot__container .contents__cards {
    margin: 20px 0 0
  }
  .p-spot__container .contents__cards .cards {
    margin: 0 -12.5px
  }
  .p-spot__container .contents__cards .card {
    width: 25%;
    padding: 0 12.5px
  }
  .p-spot__container .contents__cards .card__contents {
    margin: 20px 0 0
  }
  .p-spot__container .contents__cards .card__contents--illust1::before {
    top: -80px;
    right: -205px;
    width: 154px;
    height: 197px
  }
  .p-spot__container .contents__cards .card__ttl {
    font-size: 22px
  }
  .p-spot__container .contents__cards .card__note {
    font-size: 14px;
    margin: 5px 0 0
  }
  .p-spot__container .contents__cards .card__txt {
    font-size: 16px;
    line-height: 1.625
  }
  .p-spot__container .contents__cards .card--large {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0 40px
  }
  .p-spot__container .contents__cards .card--large .card__img {
    width: 500px
  }
  .p-spot__container .contents__cards .card--large .card__contents {
    margin: 0
  }
  .p-spot__container .contents__cards .card--large .card__txt {
    width: auto
  }
}
@media (min-width:1401px) {
  .l-header__overlay .closeButton {
    right: auto;
    left: calc(50% + 620px)
  }
}
@media (min-width:1680px) {
  .l-recruitHeader__head .headLogo__text {
    font-size: 20px
  }
}
@media (min-width:1701px) {
  .l-header__head .headNav .navList__item + .navList__item {
    padding: 0 0 0 25px;
    margin: 0 0 0 25px
  }
}
@media (max-width:767.98px) {
  .p-header.is-active .p-header__head .site-logo {
    padding: 35px 0 0 40px
  }
  .p-header.is-active .p-header__head .site-logo__img .img {
    width: 113px
  }
  .p-header.is-active .p-header__head .site-logo__img .img--white {
    opacity: 0
  }
  .p-header.is-active .p-header__head .site-logo__img .img--black {
    opacity: 1
  }
  .p-header.is-active .p-header__nav {
    opacity: 1;
    visibility: visible
  }
  .p-header.is-active .menu-btn__line .line {
    background: #5f5d56
  }
  .p-header.is-active .menu-btn__line .line:nth-child(1) {
    -webkit-transform: rotate(45deg) translateY(-3.5px);
    transform: rotate(45deg) translateY(-3.5px)
  }
  .p-header.is-active .menu-btn__line .line:nth-child(2) {
    opacity: 0
  }
  .p-header.is-active .menu-btn__line .line:nth-child(3) {
    -webkit-transform: rotate(-45deg) translateY(3.5px);
    transform: rotate(-45deg) translateY(3.5px)
  }
}