/* intro.html 専用CSS: awaji-wanko-camp/css/style.css から抽出 */

.intro-page-reveal {
  opacity: 0;
  transform: translateY(90px);
}

.intro-page-reveal.is-active {
  animation: introPageFadeUp 0.8s ease-out forwards;
}

@keyframes introPageFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .intro-page-reveal {
    opacity: 1;
    transform: none;
  }

  .intro-page-reveal.is-active {
    animation: none;
  }

  .intro-page-title__rabbit,
  .intro-page-map__deco {
    animation: none;
  }
}

@keyframes introPageFloatRabbit {
  0%,
  100% {
    transform: translateY(0) rotate(-3deg);
  }
  50% {
    transform: translateY(-8px) rotate(3deg);
  }
}

@keyframes introPageFloatDeco {
  0%,
  100% {
    transform: translateY(0) rotate(-2deg);
  }
  50% {
    transform: translateY(-10px) rotate(2deg);
  }
}

/* 施設紹介ページ ファーストビュー */
.intro-page-fv {
  --intro-page-fv-height: 640px;
  --intro-page-fv-img-scale: 1.5;
  --intro-page-fv-img-x: -25%;
  --intro-page-fv-img-y: -25%;
  --intro-page-fv-img-position-x: center;
  --intro-page-fv-img-position-y: center;
  width: 100%;
  height: var(--intro-page-fv-height);
  overflow: hidden;
  /* transform 拡大やサブピクセル継ぎ目で html の白が見えないように */
  background-color: #c99b69;
}
@media screen and (max-width: 767px) {
  .intro-page-fv {
    --intro-page-fv-height: 450px;
    --intro-page-fv-img-scale: 1.5;
    --intro-page-fv-img-x: -25%;
    --intro-page-fv-img-y: -25%;
    --intro-page-fv-img-position-x: center;
    --intro-page-fv-img-position-y: center;
  }
}

.intro-page-fv__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--intro-page-fv-img-position-x) var(--intro-page-fv-img-position-y);
  display: block;
  transform: translate(var(--intro-page-fv-img-x), var(--intro-page-fv-img-y)) scale(var(--intro-page-fv-img-scale));
  transform-origin: center;
}

/* 波（intro-page-fvの下部） */
.intro-page-fv__wave {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 120px;
  z-index: 2;
  pointer-events: none;
  /* 背景色は付けない：canvas の透明領域は写真を透過させて波のラインを出すため */
}
.intro-page-fv__wave canvas {
  width: 100%;
  height: 100%;
  display: block;
}
@media screen and (max-width: 767px) {
  .intro-page-fv__wave {
    height: 80px;
  }
}

.intro-page-fv {
  position: relative;
}

.intro-page-main {
  padding-block: 0;
  padding-inline: 40px;
  overflow-x: visible;
  position: relative;
  background: #C99B69;
  /* FV との 1px すきまで白が出るのを埋める */
  margin-top: -1px;
}
@media screen and (max-width: 767px) {
  .intro-page-main {
    padding-inline: 20px;
  }
}

.intro-page__deco-tent {
  position: absolute;
  top: 40px;
  right: 5%;
  width: clamp(4.0625rem, -1.2784090909rem + 22.7878787879vw, 15.8125rem);
  aspect-ratio: 253/233;
  height: auto;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .intro-page__deco-tent {
    top: 0px;
  }
}

.intro-page__inner {
  max-width: 1440px;
  width: 100%;
  margin-inline: auto;
  margin-bottom: 0;
  padding-bottom: 0;
}

/* パンくず（MAPの24px上、画面左端から40px） */
.breadcrumb {
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    margin-bottom: 16px;
  }
}

.breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 8px;
  list-style: none;
  margin: 0;
  padding: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
  color: var(--ffffff, #fff);
}

.breadcrumb__item {
  color: var(--ffffff, #fff);
}
.breadcrumb__item::after {
  content: "＞";
  margin-left: 8px;
  color: rgba(255, 255, 255, 0.7);
}
.breadcrumb__item:last-child::after {
  display: none;
}
.breadcrumb__item a {
  color: var(--ffffff, #fff);
  text-decoration: none;
}
.breadcrumb__item a:hover {
  text-decoration: underline;
}
.breadcrumb__item[aria-current=page] {
  font-weight: 600;
}

/* intro-page__area：ベージュ（intro_text-area 〜 エリアコンテンツ。地図下の間隔もここでベージュに統一） */
.intro-page__area {
  --intro-page-area-pad-inline: 40px;
  position: relative;
  z-index: 1;
  background-color: #F6EFE7;
  overflow: visible;
  /* introのpaddingを打ち消して左右いっぱいに#F6EFE7を表示 */
  margin-inline: -40px;
  padding-inline: 40px;
  padding-bottom: 120px;
  margin-top: 0;
  /* 旧 after-map の margin-top 相当：マップ下端〜AREAグラフィックまでベージュのまま（茶色 Main が挟まらない） */
  padding-top: 32px;
}
@media screen and (max-width: 767px) {
  .intro-page__area {
    --intro-page-area-pad-inline: 20px;
    margin-inline: -20px;
    padding-inline: 20px;
    padding-top: 32px;
  }
}

/* ベージュ波：マップ画像下の透過から親の茶色が見えないよう、ステージ下端に揃える */
.intro-page-map__stage {
  position: relative;
  max-width: 1000px;
  width: 92%;
  margin-inline: auto;
  margin-top: 16px;
  z-index: 0;
}
.intro-page-map__stage .intro-page__area-wave {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 100vw;
  height: 365px;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .intro-page-map__stage .intro-page__area-wave {
    height: 280px;
  }
}
.intro-page__area-wave svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* intro_text-area：親が intro-page__area（ベージュ単一層）。背景色は親に任せ二重にならない */
.intro-page-map__after-map {
  margin-top: 0;
  margin-inline: -40px;
  padding: 12px 16px 8px 40px;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  overflow: visible;
}
@media screen and (max-width: 767px) {
  .intro-page-map__after-map {
    margin-inline: -20px;
    padding: 12px 16px 8px 20px;
  }
}

.intro-page-map__area-text-img {
  flex: 0 0 auto;
  display: block;
  width: auto;
  height: auto;
  max-width: min(569px, calc(100vw - 56px));
  object-fit: contain;
}

@media screen and (max-width: 767px) {
  .intro-page-map__area-text-img {
    max-width: min(569px, calc(100vw - 52px));
  }
}

.intro-page-map {
  margin-bottom: 0;
  overflow: visible;
}
@media screen and (max-width: 767px) {
  .intro-page-map {
    margin-top: 30px;
  }
}

.intro-page-title {
  position: relative;
  padding-left: 40px;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .intro-page-title {
    padding-left: 20px;
  }
}

.intro-page-title__en {
  position: relative; /* ←ここが基準点 */
  width: clamp(13.0625rem, 2.8352272727rem + 43.6363636364vw, 35.5625rem);
}
.intro-page-title__en img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 767px) {
  .intro-page-title__en {
    width: 285px;
    height: 120px;
  }
  .intro-page-title__en img {
    width: 285px;
    height: 120px;
    object-fit: contain;
  }
}

/* 日本語タイトル「キャンプ場のマップ」（MAP画像の左端基準） */
.intro-page-title__jp {
  position: absolute;
  left: 0;
  right: auto;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  max-width: calc(100% - 8px);
  color: var(--ffffff, #fff);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.82px;
  text-align: left;
  z-index: 2;
}

.intro-page-title__rabbit {
  position: absolute;
  bottom: 33px;
  left: 10px;
  width: clamp(0.9375rem, 0.0852272727rem + 3.6363636364vw, 2.8125rem);
  height: auto;
  z-index: 3;
  animation: introPageFloatRabbit 2.4s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  .intro-page-title__rabbit {
    bottom: 20px;
  }
}

.intro-page-map__stage .intro-page-map__image {
  position: relative;
  margin-top: 0;
  margin-inline: 0;
  max-width: none;
  width: 100%;
  z-index: 10;
}
.intro-page-map__stage .intro-page-map__image > img:first-child {
  width: 100%;
  height: auto;
  display: block;
}

/* マップ上の装飾（半分くらいマップの前面にかかる） */
.intro-page-map__deco {
  position: absolute;
  z-index: 20;
  pointer-events: none;
  animation: introPageFloatDeco 3.6s ease-in-out infinite;
}

.intro-page-map__deco--bear {
  top: -74px;
  right: -72px;
  width: min(14.5833333333vw, 210px);
  height: auto;
}

body.intro-page .intro-page-map__deco--bear {
  top: -74px !important;
  right: -72px !important;
  width: 210px !important;
  height: auto !important;
}
@media screen and (max-width: 767px) {
  .intro-page-map__deco--bear {
    display: none;
  }

  body.intro-page .intro-page-map__deco--bear {
    display: none !important;
  }
}

.intro-page-map__deco--flower {
  bottom: -52px;
  left: -72px;
  width: 210px;
  height: auto;
  animation-delay: 0.6s;
}

body.intro-page .intro-page-map__deco--flower {
  bottom: -52px !important;
  left: -72px !important;
  width: 210px !important;
  height: auto !important;
}
@media screen and (max-width: 767px) {
  .intro-page-map__deco--flower {
    bottom: -10%;
    left: -3%;
    width: 90px;
    max-width: 90px;
  }

  body.intro-page .intro-page-map__deco--flower {
    bottom: -10% !important;
    left: -3% !important;
    width: 90px !important;
    max-width: 90px !important;
  }
}

/* 各エリアの紹介（AREA画像直下なのでマージンは詰める） */
.intro-page-area__title {
  margin-top: 12px;
  color: #653C11;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.04px;
}
@media screen and (max-width: 767px) {
  .intro-page-area__title {
    margin-top: 8px;
  }
}

.intro-page-area__title-line {
  display: flex;
  justify-content: center;
  align-items: center;
}
.intro-page-area__title-line svg {
  display: block;
}

/* メニュー見出し行：グリッド全体をセクション中央へ。中央列は内容幅でアイコンとラベルが真ん中で揃う */
.intro-page-area__menu {
  margin-top: 64px;
  width: 100%;
  box-sizing: border-box;
  display: grid;
  justify-content: center;
  grid-template-columns: 100px max-content 100px;
  grid-template-rows: auto auto;
  align-items: center;
  justify-items: center;
  column-gap: 40px;
  row-gap: 0;
}
@media screen and (max-width: 767px) {
  .intro-page-area__menu {
    margin-top: 48px;
    column-gap: 20px;
  }
}

.intro-page-area__menu--dogrun {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .intro-page-area__menu--dogrun {
    margin-top: 48px;
  }
}

.intro-page-area__menu--other {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .intro-page-area__menu--other {
    margin-top: 48px;
  }
}

.intro-page-area__other-cards {
  margin-top: 40px;
  width: 100%;
  max-width: min(calc(283px * 4 + 24px * 3), 100%);
  padding-inline: 0;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: clamp(12px, 2.4vw, 24px);
  row-gap: clamp(24px, 4vw, 40px);
  justify-items: center;
  margin-inline: auto;
}

.intro-page-area__other-card {
  width: 100%;
  max-width: 283px;
  min-width: 0;
}

@media screen and (max-width: 767px) {
  .intro-page-area__other-cards {
    grid-template-columns: repeat(auto-fill, minmax(min(138px, 100%), 1fr));
    max-width: none;
    margin-inline: -20px;
    padding-inline: 16px;
    column-gap: 12px;
    row-gap: 24px;
    justify-items: stretch;
  }

  .intro-page-area__other-card {
    max-width: none;
  }
}

.intro-page-area__other-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 87 / 83;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.intro-page-area__other-card:hover img {
  transform: scale(1.05);
}

.intro-page-area__other-card-text {
  margin: 16px 0 0;
  color: var(--c-65-3-c-11, #653C11);
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.88px;
}

.intro-page-area__plan-btn-wrap {
  margin-top: 80px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .intro-page-area__plan-btn-wrap {
    margin-top: 40px;
  }
}

.intro-page-area__plan-btn {
  display: flex;
  width: 240px;
  padding: 8px 24px;
  justify-content: center;
  align-items: center;
  border-radius: 40px;
  background: #653C11;
  color: #fff;
  text-decoration: none;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.intro-page-area__menu-line--left {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
.intro-page-area__menu-line--right {
  grid-column: 3;
  grid-row: 1;
  align-self: center;
}

.intro-page-area__menu-icon,
img.intro-page-area__menu-icon {
  grid-column: 2;
  grid-row: 1;
  display: block;
  width: 83px;
  max-width: none;
  height: auto;
  object-fit: contain;
  object-position: center bottom;
}
@media screen and (min-width: 768px) {
  .intro-page-area__menu-icon,
  img.intro-page-area__menu-icon {
    width: 148px;
    max-width: none;
    height: auto;
  }
}

.intro-page-area__menu-text {
  grid-column: 2;
  grid-row: 2;
  justify-self: center;
  width: max-content;
  max-width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  padding-inline-start: calc(1.82px / 2);
  padding-inline-end: calc(1.82px / 2);
  color: var(--653-c-11, #653C11);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.82px;
  text-align: center;
  white-space: nowrap;
}
/* 02 ドッグラン / 03 その他：ラベル 22px */
.intro-page-area__menu--dogrun .intro-page-area__menu-text,
.intro-page-area__menu--other .intro-page-area__menu-text {
  font-size: 22px;
  letter-spacing: 1.54px;
  padding-inline-start: calc(1.54px / 2);
  padding-inline-end: calc(1.54px / 2);
}

.intro-page-area__menu-line {
  width: 100px;
  height: 10px;
  display: block;
  object-fit: contain;
}

/* ドッグラン2枚：中央揃え・gap54。画像幅はclampでSP→PCへ拡大（左右対称） */
.intro-page-area__dogrun-images {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 54px;
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .intro-page-area__dogrun-images {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
  }

  body.intro-page .intro-page-area__dogrun-image {
    flex: 0 1 calc((100% - 54px) / 2);
    max-width: min(459px, calc((100% - 54px) / 2));
    min-width: 0;
    width: auto;
  }

  body.intro-page .intro-page-area__dogrun-image img {
    width: min(459px, 100%);
    max-width: min(459px, 100%);
    margin-inline: auto;
  }
}

.intro-page-area__dogrun-image {
  --intro-blob-color: #E3D1BE;
  width: fit-content;
  max-width: 100%;
}

.intro-page-area__dogrun-photo {
  position: relative;
  z-index: 0;
}
.intro-page-area__dogrun-photo::before {
  content: "";
  position: absolute;
  top: -14px;
  left: -14px;
  width: calc(100% + 28px);
  height: calc(100% + 28px);
  background-color: var(--intro-blob-color);
  border-radius: 44% 56% 52% 48%/52% 46% 54% 48%;
  z-index: -1;
  opacity: 1;
  mix-blend-mode: normal;
  animation: introBlobFloat 7s ease-in-out infinite;
  will-change: transform;
}

body.intro-page .intro-page-area__dogrun-image img {
  display: block;
  height: auto;
  aspect-ratio: 459 / 462;
  box-sizing: border-box;
  object-fit: cover;
  transition: transform 0.4s ease;
}

@media screen and (max-width: 767px) {
  body.intro-page .intro-page-area__dogrun-image img {
    width: clamp(280px, 88vw, 459px);
    max-width: 100%;
  }
}
.intro-page-area__dogrun-image:hover img {
  transform: scale(1.04);
}
.intro-page-area__dogrun-image--shared .intro-page-area__dogrun-photo::before {
  top: -13px;
  left: -12px;
  width: calc(100% + 24px);
  height: calc(100% + 24px);
  background-color: var(--intro-blob-color);
  border-radius: 58% 42% 47% 53%/46% 57% 43% 54%;
  animation: introBlobFloatAlt 8.5s ease-in-out infinite;
}
@media screen and (max-width: 767px) {
  .intro-page-area__dogrun-image .intro-page-area__dogrun-photo::before {
    top: -12px;
    left: -12px;
    width: calc(100% + 24px);
    height: calc(100% + 24px);
  }
}

.intro-page-area__dogrun-caption {
  margin: 16px auto 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  color: var(--c-65-3-c-11, #653C11);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .intro-page-area__dogrun-caption {
    font-size: 18px;
    letter-spacing: 0.72px;
  }
}

@keyframes introBlobFloat {
  0% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
  50% {
    transform: translate3d(0, -8px, 0) rotate(-1.2deg) scale(1.02);
  }
  100% {
    transform: translate3d(0, 6px, 0) rotate(1deg) scale(0.99);
  }
}
@keyframes introBlobFloatAlt {
  0% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
  50% {
    transform: translate3d(0, 7px, 0) rotate(1deg) scale(1.015);
  }
  100% {
    transform: translate3d(0, -7px, 0) rotate(-1.1deg) scale(0.995);
  }
}
@media (prefers-reduced-motion: reduce) {
  .intro-page-area__dogrun-photo::before {
    animation: none;
  }
}
/* スライダーは親幅内でクリップ（枠・ベージュ外へはみ出さない）。チラ見せは親のパディング内に収める */
.intro-page-area__slider {
  margin-top: 80px;
  width: 100%;
  margin-inline: auto;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .intro-page-area__slider {
    margin-top: 24px;
  }
}

.intro-page-area__slider-inner.swiper {
  overflow: hidden;
  padding-inline: 0;
  position: relative;
}
.intro-page-area__slider-inner .swiper-wrapper {
  align-items: center;
}
@media screen and (min-width: 768px) {
  .intro-page-area__slider-inner .swiper-wrapper {
    align-items: flex-start;
  }
}

.intro-page-area__slider-slide {
  display: flex;
  justify-content: center;
  align-items: stretch;
  width: 280px;
  max-width: calc(100vw - 48px);
  flex-shrink: 0;
  transition: opacity 0.4s ease;
}

.intro-page-area__slider-card {
  width: 100%;
  max-width: 280px;
}

.intro-page-area__slider-img {
  width: 280px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 140 / 79;
  box-sizing: border-box;
  border-radius: 16px;
  border: 8px solid var(--c-99-b-69, #C99B69);
  opacity: 0.92;
  transition: opacity 0.4s ease, width 0.45s ease, height 0.45s ease;
}

/* PC：スライド幅は常に最大列（667）で統一 → ループ安定。
   大きさの変化は width ではなく transform のみにして、Swiper の移動とレイアウト再計算の競合（途切れ）を防ぐ */
@media screen and (min-width: 768px) {
  .intro-page-area__slider-slide {
    width: 667px;
    max-width: min(667px, calc(100vw - 48px));
  }

  .intro-page-area__slider-card {
    max-width: 667px;
    margin-inline: auto;
    margin-top: 0;
    transform: translateY(0);
    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .intro-page-area__slider-img {
    width: min(667px, 100%);
    height: auto;
    aspect-ratio: 667 / 376;
    margin-inline: auto;
    transform-origin: center top;
    transition: opacity 0.45s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .intro-page-area__slider-slide:not(.swiper-slide-active) .intro-page-area__slider-card {
    transform: translateY(105px);
  }

  .intro-page-area__slider-slide.swiper-slide-active .intro-page-area__slider-card {
    transform: translateY(0);
  }

  /* 480/667 ≒ 0.7204（見た目 480×271 相当） */
  .intro-page-area__slider-slide:not(.swiper-slide-active) .intro-page-area__slider-img {
    transform: scale(0.72035982);
  }

  .intro-page-area__slider-slide.swiper-slide-active .intro-page-area__slider-img {
    transform: scale(1);
  }
}
.intro-page-area__slider-slide.swiper-slide-active .intro-page-area__slider-img {
  opacity: 1;
}

.intro-page-area__slider-title {
  margin-top: 20px;
  color: var(--c-65-3-c-11, #653C11);
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.04px;
}
@media screen and (max-width: 767px) {
  .intro-page-area__slider-title {
    font-size: 20px;
    letter-spacing: 0.8px;
  }
}

/* スライダーナビゲーション */
.intro-page-area__slider-inner .swiper-button-prev,
.intro-page-area__slider-inner .swiper-button-next {
  display: none;
}

.intro-page-area__slider-inner .swiper-pagination {
  position: static;
  margin-top: 40px;
  text-align: center;
}

.intro-page-area__slider-inner .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0 12px !important;
  background: rgba(101, 60, 17, 0.35);
  opacity: 1;
}

.intro-page-area__slider-inner .swiper-pagination-bullet.is-active {
  background: var(--c-99-b-69, #C99B69);
}

.intro-page-area__slider-inner .swiper-pagination-bullet-active {
  background: var(--c-99-b-69, #C99B69);
}

.intro-page-title__squirrel {
  position: absolute;
  bottom: 0;
  right: 5px;
  width: 146px;
}
@media screen and (max-width: 767px) {
  .intro-page-title__squirrel {
    width: 51px;
    bottom: 25px;
    right: 2px;
  }
}
.intro-page-title__squirrel img {
  width: 100%;
  height: auto;
  display: block;
}

@media screen and (max-width: 767px) {
  body.intro-page .lower-page-access__bg {
    display: none !important;
  }
}

