@charset "UTF-8";
/* top layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* padding margin */
/* 縦書き */
/* 内径 */
/* 文字 */
/* intr
---------------------------------------------------------------------------*/
.pg-intr {
  background-image: url(../img/sightseeing/intr-bg.jpg); }

/* anchor
---------------------------------------------------------------------------*/
.lay-anchor {
  margin-bottom: 120px; }
  @media screen and (max-width: 1500px) {
    .lay-anchor {
      margin-bottom: 8vw; } }
  @media screen and (max-width: 480px) {
    .lay-anchor {
      margin-bottom: 16vw; } }

/* season
---------------------------------------------------------------------------*/
.season {
  width: 1200px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1500px) {
    .season {
      width: 80vw; } }
  @media screen and (max-width: 480px) {
    .season {
      width: 89.3333333333vw;
      /* 余白40 */ } }
  .season-ttl {
    margin-bottom: 50px; }
    @media screen and (max-width: 1500px) {
      .season-ttl {
        margin-bottom: 3.3333333333vw; } }
    @media screen and (max-width: 480px) {
      .season-ttl {
        margin-bottom: 6.6666666667vw; } }
  .season-tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 10px; }
    @media screen and (max-width: 1500px) {
      .season-tabs {
        padding-left: 0.6666666667vw; } }
    @media screen and (max-width: 480px) {
      .season-tabs {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding-left: 0; } }
    .season-tabs li {
      color: #ffffff; }
      .season-tabs li a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 74px;
        height: 42px;
        background-color: #915F72; }
        @media screen and (max-width: 1500px) {
          .season-tabs li a {
            width: 4.9333333333vw;
            height: 2.8vw; } }
        @media screen and (max-width: 480px) {
          .season-tabs li a {
            width: 19.7333333333vw;
            height: 11.2vw; } }
        .season-tabs li a span {
          display: block;
          width: 100%;
          white-space: nowrap;
          text-align: center;
          font-size: 18px; }
          @media screen and (max-width: 1500px) {
            .season-tabs li a span {
              font-size: 1.2vw; } }
          @media screen and (max-width: 480px) {
            .season-tabs li a span {
              font-size: 4.2vw; } }
        @media screen and (min-width: 481px) {
          .season-tabs li a:hover {
            cursor: pointer; } }
        .season-tabs li a.active {
          background-color: #55162D; }
      .season-tabs li + li {
        margin-left: 3px; }
        @media screen and (max-width: 1500px) {
          .season-tabs li + li {
            margin-left: 0.2vw; } }
        @media screen and (max-width: 480px) {
          .season-tabs li + li {
            margin-left: 0.8vw; } }
  .season-details {
    width: 100%;
    background-color: #55162D;
    padding: 10px; }
    @media screen and (max-width: 1500px) {
      .season-details {
        padding: 0.6666666667vw; } }
    @media screen and (max-width: 480px) {
      .season-details {
        padding: 2.6666666667vw; } }
    .season-details ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .season-details ul li {
        position: relative;
        width: 50%; }
        @media screen and (max-width: 480px) {
          .season-details ul li {
            width: 100%; } }
    .season-details > div {
      position: relative; }
  .season-detail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    z-index: -1; }
    .season-detail.active {
      position: relative;
      opacity: 1;
      z-index: 100; }
    .season-detail a {
      position: relative;
      display: block; }
    .season-detail-name {
      position: absolute;
      left: 0;
      bottom: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      width: 210px;
      height: 40px;
      background-color: #ffffff; }
      @media screen and (max-width: 1500px) {
        .season-detail-name {
          width: 14vw;
          height: 2.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .season-detail-name {
          width: 56vw;
          height: 10.6666666667vw; } }
      .season-detail-name > span {
        display: block;
        width: 100%;
        white-space: nowrap;
        text-align: center;
        font-size: 15px;
        color: #55162D; }
        @media screen and (max-width: 1500px) {
          .season-detail-name > span {
            font-size: 1vw; } }
        @media screen and (max-width: 480px) {
          .season-detail-name > span {
            font-size: 3.5vw; } }

/* sigh
---------------------------------------------------------------------------*/
.sigh {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-top: 70px;
  padding-bottom: 80px; }
  @media screen and (max-width: 1500px) {
    .sigh {
      padding-top: 4.6666666667vw;
      padding-bottom: 5.3333333333vw; } }
  @media screen and (max-width: 480px) {
    .sigh {
      padding-top: 9.3333333333vw;
      padding-bottom: 10.6666666667vw; } }
  .sigh-ttlbox {
    text-align: center;
    margin-bottom: 90px; }
    @media screen and (max-width: 1500px) {
      .sigh-ttlbox {
        margin-bottom: 6vw; } }
    @media screen and (max-width: 480px) {
      .sigh-ttlbox {
        margin-bottom: 12vw; } }
  .sigh-ttl {
    font-size: 32px;
    letter-spacing: .02em;
    margin-bottom: 30px; }
    @media screen and (max-width: 1500px) {
      .sigh-ttl {
        font-size: 2.1333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-ttl {
        font-size: 7.4666666667vw; } }
    @media screen and (max-width: 1500px) {
      .sigh-ttl {
        margin-bottom: 2vw; } }
    @media screen and (max-width: 480px) {
      .sigh-ttl {
        margin-bottom: 4vw; } }
  .sigh-map {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 160px; }
    @media screen and (max-width: 1500px) {
      .sigh-map {
        width: 80vw; } }
    @media screen and (max-width: 480px) {
      .sigh-map {
        width: 89.3333333333vw;
        /* 余白40 */ } }
    @media screen and (max-width: 1500px) {
      .sigh-map {
        margin-bottom: 10.6666666667vw; } }
    @media screen and (max-width: 480px) {
      .sigh-map {
        margin-bottom: 21.3333333333vw; } }
    .sigh-map iframe {
      display: block;
      width: 100%;
      height: 670px;
      border: none; }
      @media screen and (max-width: 1500px) {
        .sigh-map iframe {
          height: 44.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .sigh-map iframe {
          height: 120vw; } }
    .sigh-map-tx {
      width: 1200px;
      margin-left: auto;
      margin-right: auto;
      margin-top: -5em;
      margin-bottom: 5em; }
      @media screen and (max-width: 1500px) {
        .sigh-map-tx {
          width: 80vw; } }
      @media screen and (max-width: 480px) {
        .sigh-map-tx {
          width: 89.3333333333vw;
          /* 余白40 */ } }
      @media screen and (max-width: 480px) {
        .sigh-map-tx {
          margin-top: 0; } }
  .sigh-spots {
    width: 1448px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px 0; }
    @media screen and (max-width: 1500px) {
      .sigh-spots {
        width: 96.5333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-spots {
        width: 89.3333333333vw;
        /* 余白40 */ } }
    @media screen and (max-width: 1500px) {
      .sigh-spots {
        padding: 2.6666666667vw 0; } }
    @media screen and (max-width: 480px) {
      .sigh-spots {
        padding: 10.6666666667vw 0; } }
    .sigh-spots-wrap {
      width: 1200px;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (max-width: 1500px) {
        .sigh-spots-wrap {
          width: 80vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spots-wrap {
          width: 89.3333333333vw;
          /* 余白40 */ } }
      @media screen and (max-width: 480px) {
        .sigh-spots-wrap {
          padding: 0 5.3333333333vw; } }
    .sigh-spots-items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: 60px; }
      @media screen and (max-width: 1500px) {
        .sigh-spots-items {
          margin-top: 4vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spots-items {
          margin-top: 16vw; } }
      .sigh-spots-items + .sigh-spots-items {
        border-top: 1px solid #DDDDDD; }
    .sigh-spots-subttl {
      width: 100%;
      color: #55162D;
      margin-top: 30px;
      margin-bottom: 40px; }
      @media screen and (max-width: 1500px) {
        .sigh-spots-subttl {
          margin-top: 2vw;
          margin-bottom: 2.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spots-subttl {
          margin-top: 5.3333333333vw;
          margin-bottom: 5.3333333333vw; } }
  .sigh-pick + .sigh-pick {
    margin-top: 50px; }
    @media screen and (max-width: 1500px) {
      .sigh-pick + .sigh-pick {
        margin-top: 3.3333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-pick + .sigh-pick {
        margin-top: 10.6666666667vw; } }
  .sigh-pick-img {
    margin-bottom: 20px; }
    @media screen and (max-width: 1500px) {
      .sigh-pick-img {
        margin-bottom: 1.3333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-pick-img {
        margin-bottom: 2.6666666667vw; }
        .sigh-pick-img img {
          width: 100%;
          height: 60vw;
          object-fit: cover;
          object-position: center;
          font-family: "object-fit: cover; object-position: center;"; } }
  .sigh-pick-data {
    background-color: #9F906D;
    color: #ffffff;
    padding: 8px; }
    @media screen and (max-width: 1500px) {
      .sigh-pick-data {
        padding: 0.5333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-pick-data {
        padding: 2.1333333333vw; } }
    .sigh-pick-data > div {
      position: relative;
      border: 1px solid #ffffff;
      padding: 26px; }
      @media screen and (max-width: 1500px) {
        .sigh-pick-data > div {
          padding: 1.7333333333vw; } }
      @media screen and (max-width: 480px) {
        .sigh-pick-data > div {
          padding: 5.3333333333vw; } }
    .sigh-pick-data-name {
      line-height: 1.1;
      margin-bottom: 20px;
      letter-spacing: .15em; }
      @media screen and (max-width: 1500px) {
        .sigh-pick-data-name {
          margin-bottom: 1.3333333333vw; } }
      @media screen and (max-width: 480px) {
        .sigh-pick-data-name {
          margin-bottom: 5.3333333333vw; } }
    .sigh-pick-data-desc {
      margin-bottom: 20px; }
      @media screen and (max-width: 1500px) {
        .sigh-pick-data-desc {
          margin-bottom: 1.3333333333vw; } }
      @media screen and (max-width: 480px) {
        .sigh-pick-data-desc {
          margin-bottom: 5.3333333333vw; } }
    .sigh-pick-data-btn {
      position: absolute;
      right: 50px;
      bottom: 30px; }
      @media screen and (max-width: 1500px) {
        .sigh-pick-data-btn {
          right: 3.3333333333vw;
          bottom: 2vw; } }
      @media screen and (max-width: 480px) {
        .sigh-pick-data-btn {
          position: relative;
          right: auto;
          bottom: auto;
          width: 100%;
          margin-top: 8vw; }
          .sigh-pick-data-btn a {
            width: 100%; } }
  .sigh-time {
    display: inline-block;
    padding: .1em .8em; }
    .sigh-time p {
      position: relative;
      padding-left: 40px; }
      @media screen and (max-width: 1500px) {
        .sigh-time p {
          padding-left: 2.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .sigh-time p {
          padding-left: 10.6666666667vw; } }
      .sigh-time p::before {
        position: absolute;
        content: "";
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        width: 30px;
        height: 14px; }
        @media screen and (max-width: 1500px) {
          .sigh-time p::before {
            width: 2vw;
            height: 0.9333333333vw; } }
        @media screen and (max-width: 480px) {
          .sigh-time p::before {
            width: 8vw;
            height: 3.7333333333vw; } }
    .sigh-time.w {
      background-color: #ffffff; }
      .sigh-time.w p {
        color: #9F906D; }
        .sigh-time.w p::before {
          background-image: url(../img/sightseeing/icn-car-color.png); }
    .sigh-time.clr {
      background-color: #9F906D; }
      .sigh-time.clr p {
        color: #ffffff; }
        .sigh-time.clr p::before {
          background-image: url(../img/sightseeing/icn-car-w.png); }
  .sigh-btn {
    font-size: 14px; }
    @media screen and (max-width: 1500px) {
      .sigh-btn {
        font-size: 0.9333333333vw; } }
    @media screen and (max-width: 480px) {
      .sigh-btn {
        font-size: 3.2666666667vw; } }
    .sigh-btn a {
      height: 40px; }
      @media screen and (max-width: 1500px) {
        .sigh-btn a {
          height: 2.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .sigh-btn a {
          height: 12.8vw; } }
  .sigh-spot {
    width: 380px;
    margin-right: 30px; }
    @media screen and (max-width: 1500px) {
      .sigh-spot {
        width: 25.3333333333vw;
        margin-right: 2vw; } }
    @media screen and (max-width: 480px) {
      .sigh-spot {
        width: 100%;
        margin-right: 0; }
        .sigh-spot:nth-of-type(n + 2) {
          margin-top: 10.6666666667vw; } }
    @media screen and (min-width: 481px) {
      .sigh-spot:nth-of-type(3n) {
        margin-right: 0; }
      .sigh-spot:nth-of-type(n + 4) {
        margin-top: 36px; } }
  @media screen and (min-width: 481px) and (max-width: 1500px) {
    .sigh-spot:nth-of-type(n + 4) {
      margin-top: 2.4vw; } }

    .sigh-spot-img {
      position: relative;
      margin-bottom: 20px; }
      @media screen and (max-width: 1500px) {
        .sigh-spot-img {
          margin-bottom: 1.3333333333vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spot-img {
          margin-bottom: 5.3333333333vw; } }
      .sigh-spot-img img {
        width: 100%;
        height: 276px;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;"; }
        @media screen and (max-width: 1500px) {
          .sigh-spot-img img {
            height: 18.4vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-img img {
            height: 50vw; } }
    .sigh-spot-name {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      background-color: rgba(159, 144, 109, 0.95);
      padding: .2em;
      letter-spacing: .15em; }
    .sigh-spot-data-desc {
      color: #333333;
      margin: 16px 0; }
      @media screen and (max-width: 1500px) {
        .sigh-spot-data-desc {
          margin: 1.0666666667vw 0; } }
      @media screen and (max-width: 480px) {
        .sigh-spot-data-desc {
          margin: 2.6666666667vw 0; } }
    .sigh-spot-data-btn a {
      width: 100%; }

/* neary
---------------------------------------------------------------------------*/
.neary {
  background-image: url(../img/sightseeing/neary-bg.jpg);
  color: #ffffff; }
  .neary .sigh-spots {
    background-color: #EDE9DF; }

/* wide
---------------------------------------------------------------------------*/
.wide {
  background-image: url(../img/sightseeing/wide-bg.jpg); }
  .wide .sigh-spots {
    background-color: #ffffff; }

/* event
---------------------------------------------------------------------------*/
.event {
  background-image: url(../img/sightseeing/event-bg.jpg); }
  .event .sigh-spots {
    background-color: #EDE9DF; }
  @media screen and (min-width: 481px) {
    .event .sigh-pick-data > div {
      padding-bottom: 66px; } }
  @media screen and (min-width: 481px) and (max-width: 1500px) {
    .event .sigh-pick-data > div {
      padding-bottom: 4.4vw; } }
