@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400, medium: 500, bold: 700 */
/*@mixin font-hdl {
	font-family: fot-udkakugo-large-pr6n, sans-serif;
	font-style: normal;
	font-weight: 600;
}*/
/* regular: 500 */
/* regular: 400 */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* SP時の倍率 1.5 から 1.7 に変更 */
/* padding margin */
/* 縦書き */
/* 内径 */
/* map
---------------------------------------------------------------------------*/
.map .gmap iframe {
  display: block;
  width: 100%;
  height: 490px;
  border: none; }
  @media screen and (max-width: 1300px) {
    .map .gmap iframe {
      height: 37.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .map .gmap iframe {
      height: 90vw; } }
.map .wrap-min {
  position: relative;
  z-index: 10; }
.map-bg {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  width: 2000px;
  z-index: -1; }
  @media screen and (max-width: 1300px) {
    .map-bg {
      width: 153.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .map-bg {
      width: 100vw; } }
.map-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-bottom: 186px; }
  @media screen and (max-width: 1300px) {
    .map-link {
      margin-bottom: 14.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .map-link {
      margin-bottom: 150vw; } }
.map-tx {
  width: 440px; }
  @media screen and (max-width: 1300px) {
    .map-tx {
      width: 33.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .map-tx {
      width: 100%; } }
  .map-tx li {
    position: relative;
    padding: 20px 0 20px 28px;
    border-bottom: 1px solid #223B52; }
    @media screen and (max-width: 1300px) {
      .map-tx li {
        padding: 1.5384615385vw 0 1.5384615385vw 2.1538461538vw; } }
    @media screen and (max-width: 480px) {
      .map-tx li {
        padding: 2.6666666667vw 0 2.6666666667vw 5.6vw; } }
    .map-tx li::before {
      position: absolute;
      content: "";
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      background-image: url(../img/access/route-pin.png);
      width: 18px;
      height: 28px;
      left: 0;
      top: 24px; }
      @media screen and (max-width: 1300px) {
        .map-tx li::before {
          width: 1.3846153846vw;
          height: 2.1538461538vw;
          top: 1.8461538462vw; } }
      @media screen and (max-width: 480px) {
        .map-tx li::before {
          width: 3.6vw;
          height: 5.6vw;
          top: 3.2vw; } }
    @media screen and (max-width: 480px) {
      .map-tx li .defdesc {
        line-height: 1.7; } }

/* koyasan
---------------------------------------------------------------------------*/
.koyasan {
  position: relative;
  z-index: 10; }
  .koyasan .koyasansl,
  .koyasan .sekaiisansl {
    /* アクティブ以外を透過 */ }
    .koyasan .koyasansl-wrap,
    .koyasan .sekaiisansl-wrap {
      position: relative;
      width: 1280px;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (max-width: 1300px) {
        .koyasan .koyasansl-wrap,
        .koyasan .sekaiisansl-wrap {
          width: 98.4615384615vw; } }
      @media screen and (max-width: 480px) {
        .koyasan .koyasansl-wrap,
        .koyasan .sekaiisansl-wrap {
          width: 100vw; } }
    .koyasan .koyasansl .swiper-slide,
    .koyasan .sekaiisansl .swiper-slide {
      height: 800px;
      /*&.swiper-slide-next img {
      	clip-path: polygon(0% 100%,  100% 100%, 100% 100%,  0% 100%);
      }
      &.swiper-slide-active img {
      	clip-path: polygon(0% 100%,  100% 100%, 100% 0%, 0% 0%);
      }*/ }
      @media screen and (max-width: 1300px) {
        .koyasan .koyasansl .swiper-slide,
        .koyasan .sekaiisansl .swiper-slide {
          height: 61.5384615385vw; } }
      @media screen and (max-width: 480px) {
        .koyasan .koyasansl .swiper-slide,
        .koyasan .sekaiisansl .swiper-slide {
          height: 160vw; } }
      .koyasan .koyasansl .swiper-slide img,
      .koyasan .sekaiisansl .swiper-slide img {
        width: 100%;
        height: 800px;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;";
        /*transition: clip-path .6s ease-in-out;*/ }
        @media screen and (max-width: 1300px) {
          .koyasan .koyasansl .swiper-slide img,
          .koyasan .sekaiisansl .swiper-slide img {
            height: 61.5384615385vw; } }
        @media screen and (max-width: 480px) {
          .koyasan .koyasansl .swiper-slide img,
          .koyasan .sekaiisansl .swiper-slide img {
            height: 160vw; } }
    .koyasan .koyasansl .swiper-slide,
    .koyasan .sekaiisansl .swiper-slide {
      transition-property: all;
      transition-duration: 1s;
      transition-timing-function: ease;
      opacity: 0.5; }
      .koyasan .koyasansl .swiper-slide.swiper-slide-active,
      .koyasan .sekaiisansl .swiper-slide.swiper-slide-active {
        opacity: 1; }
    .koyasan .koyasansl-pagination,
    .koyasan .sekaiisansl-pagination {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      position: absolute;
      width: 10px;
      left: calc(50% + 540px);
      top: 50%;
      transform: translateY(-50%);
      z-index: 100;
      gap: 94px; }
      @media screen and (max-width: 1300px) {
        .koyasan .koyasansl-pagination,
        .koyasan .sekaiisansl-pagination {
          gap: 7.2307692308vw;
          left: calc(50% + 41.53846vw); } }
      @media screen and (max-width: 480px) {
        .koyasan .koyasansl-pagination,
        .koyasan .sekaiisansl-pagination {
          gap: 12.5333333333vw;
          left: auto;
          right: 6.6666666667vw; } }
      .koyasan .koyasansl-pagination .swiper-pagination-bullet,
      .koyasan .sekaiisansl-pagination .swiper-pagination-bullet {
        margin: 0;
        background-color: #ffffff;
        opacity: 1;
        width: 10px;
        height: 10px;
        opacity: .5;
        transition-property: all;
        transition-duration: 0.3s;
        transition-timing-function: ease; }
        @media screen and (max-width: 1300px) {
          .koyasan .koyasansl-pagination .swiper-pagination-bullet,
          .koyasan .sekaiisansl-pagination .swiper-pagination-bullet {
            width: 0.7692307692vw;
            height: 0.7692307692vw; } }
        @media screen and (max-width: 480px) {
          .koyasan .koyasansl-pagination .swiper-pagination-bullet,
          .koyasan .sekaiisansl-pagination .swiper-pagination-bullet {
            width: 2vw;
            height: 2vw; } }
        .koyasan .koyasansl-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
        .koyasan .sekaiisansl-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
          opacity: 1; }
        .koyasan .koyasansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet,
        .koyasan .sekaiisansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
          position: relative; }
          .koyasan .koyasansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before,
          .koyasan .sekaiisansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before {
            position: absolute;
            content: "";
            width: 1px;
            height: 78px;
            background-color: #ffffff;
            left: 50%;
            transform: translateX(-50%);
            top: -86px; }
            @media screen and (max-width: 1300px) {
              .koyasan .koyasansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before,
              .koyasan .sekaiisansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before {
                height: 6vw;
                top: -6.6153846154vw; } }
            @media screen and (max-width: 480px) {
              .koyasan .koyasansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before,
              .koyasan .sekaiisansl-pagination .swiper-pagination-bullet + .swiper-pagination-bullet::before {
                height: 10.4vw;
                top: -11.4666666667vw; } }
    .koyasan .koyasansl-scrl,
    .koyasan .sekaiisansl-scrl {
      position: absolute;
      right: calc(50% - 440px);
      bottom: 0;
      width: 26px;
      z-index: 10; }
      @media screen and (max-width: 1300px) {
        .koyasan .koyasansl-scrl,
        .koyasan .sekaiisansl-scrl {
          right: calc(50% - 33.84615);
          width: 2vw; } }
      @media screen and (max-width: 480px) {
        .koyasan .koyasansl-scrl,
        .koyasan .sekaiisansl-scrl {
          width: 5.0666666667vw;
          right: 3.3333333333vw; } }
    .koyasan .koyasansl-tx,
    .koyasan .sekaiisansl-tx {
      position: absolute;
      left: calc(50% - 540px);
      bottom: 258px;
      z-index: 10;
      color: #ffffff; }
      @media screen and (max-width: 1300px) {
        .koyasan .koyasansl-tx,
        .koyasan .sekaiisansl-tx {
          left: calc(50% - 41.53846vw);
          bottom: 19.8461538462vw; } }

/* spot
---------------------------------------------------------------------------*/
.spot-wide .imgtx-tx {
  position: relative; }
  @media screen and (max-width: 480px) {
    .spot-wide .imgtx-tx {
      padding-top: 0; } }
.spot-wide .spot-btn {
  position: absolute;
  right: 0;
  bottom: 0; }
  .spot-wide .spot-btn li + li {
    margin-top: 5px; }
    @media screen and (max-width: 1300px) {
      .spot-wide .spot-btn li + li {
        margin-top: 0.3846153846vw; } }
    @media screen and (max-width: 480px) {
      .spot-wide .spot-btn li + li {
        margin-top: 0; } }
  @media screen and (max-width: 480px) {
    .spot-wide .spot-btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      position: relative;
      right: auto;
      bottom: auto;
      margin-top: 6.6666666667vw;
      gap: 6.6666666667vw; } }
  .spot-wide .spot-btn li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    letter-spacing: 0; }
.spot-genre {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #4E6275;
  width: 150px;
  height: 30px; }
  @media screen and (max-width: 1300px) {
    .spot-genre {
      width: 11.5384615385vw;
      height: 2.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .spot-genre {
      width: 30vw;
      height: 6vw; } }
  .spot-genre > span {
    display: block;
    width: 100%;
    white-space: nowrap;
    text-align: center; }
.spot-time li {
  position: relative;
  border-bottom: 1px solid #C8CED4;
  padding: 12px 0 12px 60px;
  font-size: 16px;
  line-height: 2.25; }
  @media screen and (max-width: 1300px) {
    .spot-time li {
      font-size: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .spot-time li {
      font-size: 3.6266666667vw; } }
  @media screen and (max-width: 1300px) {
    .spot-time li {
      padding: 1.5384615385vw 0 1.5384615385vw 4.6153846154vw; } }
  @media screen and (max-width: 480px) {
    .spot-time li {
      padding: 4vw 0 4vw 12vw; } }
  .spot-time li::before {
    position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    left: 12px;
    top: 50%;
    transform: translateY(-50%); }
    @media screen and (max-width: 1300px) {
      .spot-time li::before {
        width: 2.4615384615vw;
        height: 2.4615384615vw;
        left: 0.9230769231vw; } }
    @media screen and (max-width: 480px) {
      .spot-time li::before {
        width: 6.4vw;
        height: 6.4vw;
        left: 2.4vw; } }
  .spot-time li.car::before {
    background-image: url(../img/sightseeing/icon-car.png); }
  .spot-time li.walk::before {
    background-image: url(../img/sightseeing/icon-walk.png); }
  .spot-time li.term::before {
    background-image: url(../img/sightseeing/icon-term.png); }
.spot-items {
  gap: 30px; }
  @media screen and (max-width: 1300px) {
    .spot-items {
      gap: 2.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .spot-items {
      gap: 0; } }
  .spot-items > * {
    width: 340px; }
    @media screen and (max-width: 1300px) {
      .spot-items > * {
        width: 26.1538461538vw; } }
    @media screen and (max-width: 480px) {
      .spot-items > * {
        width: 100%; } }
  .spot-items .spot-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .spot-items .spot-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        right: auto;
        bottom: auto;
        margin-top: 6.6666666667vw;
        gap: 6.6666666667vw;
        width: 80vw;
        margin-left: auto;
        margin-right: auto; } }

/* memorable
---------------------------------------------------------------------------*/
.memorable {
  position: relative; }
  .memorable-tx {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 94px; }
    @media screen and (max-width: 1300px) {
      .memorable-tx {
        left: 7.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .memorable-tx {
        width: 100%;
        left: 0;
        padding: 0 5.3333333333vw 0 7.4666666667vw; } }
    @media screen and (max-width: 480px) {
      .memorable-tx h3 {
        margin-bottom: 40vw; } }
    .memorable-tx .btn-more {
      width: 140px;
      margin-left: 24px;
      text-align: right; }
      @media screen and (max-width: 1300px) {
        .memorable-tx .btn-more {
          width: 10.7692307692vw;
          margin-left: 1.8461538462vw; } }
      @media screen and (max-width: 480px) {
        .memorable-tx .btn-more {
          width: 28vw;
          margin-left: auto;
          margin-right: 0; } }
      .memorable-tx .btn-more span {
        width: 100%; }

/* season
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .spring, .summer, .autumn, .winter {
    margin-bottom: 8.5333333333vw; } }

/* link
---------------------------------------------------------------------------*/
.link .datatbl .w406 {
  width: 406px; }
  @media screen and (max-width: 1300px) {
    .link .datatbl .w406 {
      width: 31.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .link .datatbl .w406 {
      width: 100%; } }

/* .bdrhdl .en::after
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .culture .bdrhdl .en::after,
  .koyasan .bdrhdl .en::after,
  .season .bdrhdl .en::after {
    width: 70vw;
    bottom: -30vw; } }
