@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 縦書き */
/* 内径 */
/* 文字 */
/* map
---------------------------------------------------------------------------*/
.map {
  position: relative;
  padding-bottom: 190px; }
  @media screen and (max-width: 1680px) {
    .map {
      padding-bottom: 11.3095238095vw; } }
  @media screen and (max-width: 480px) {
    .map {
      padding-bottom: 25.3333333333vw; } }
  .map-gmap {
    /* 1280 */
    width: 1280px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1680px) {
      .map-gmap {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .map-gmap {
        width: 89.3333333333vw; } }
    .map-gmap iframe {
      display: block;
      width: 100%;
      height: 610px;
      pointer-events: none; }
      @media screen and (max-width: 1680px) {
        .map-gmap iframe {
          height: 36.3095238095vw; } }
      @media screen and (max-width: 480px) {
        .map-gmap iframe {
          height: 60vw; } }
  .map-tx {
    padding-top: 48px;
    color: #585657;
    text-align: center; }
    @media screen and (max-width: 1680px) {
      .map-tx {
        padding-top: 2.8571428571vw; } }
    @media screen and (max-width: 480px) {
      .map-tx {
        padding-top: 6.4vw; } }
    .map-tx-ttl {
      margin-bottom: 64px; }
      @media screen and (max-width: 1680px) {
        .map-tx-ttl {
          margin-bottom: 3.8095238095vw; } }
      @media screen and (max-width: 480px) {
        .map-tx-ttl {
          margin-bottom: 8.5333333333vw; } }
    .map-tx-btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .map-tx-btn a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 520px;
        height: 80px;
        border: 1px solid #a9a19e;
        border-radius: 8px; }
        @media screen and (max-width: 1680px) {
          .map-tx-btn a {
            width: 30.9523809524vw;
            height: 4.7619047619vw;
            border-radius: 0.4761904762vw; } }
        @media screen and (max-width: 480px) {
          .map-tx-btn a {
            width: 89.3333333333vw;
            height: 13.3333333333vw;
            border-radius: 1.0666666667vw; } }
        .map-tx-btn a > span {
          display: block;
          width: 100%;
          white-space: nowrap;
          text-align: center;
          font-size: 18px;
          letter-spacing: .05em; }
          @media screen and (max-width: 1680px) {
            .map-tx-btn a > span {
              font-size: 1.0714285714vw; } }
          @media screen and (max-width: 480px) {
            .map-tx-btn a > span {
              font-size: 4.8vw; } }
          .map-tx-btn a > span span {
            position: relative;
            display: inline-block;
            padding-left: 40px; }
            @media screen and (max-width: 1680px) {
              .map-tx-btn a > span span {
                padding-left: 2.380952381vw; } }
            @media screen and (max-width: 480px) {
              .map-tx-btn a > span span {
                padding-left: 5.3333333333vw; } }
            .map-tx-btn a > span span::before {
              position: absolute;
              content: "";
              width: 21px;
              height: 30px;
              top: 50%;
              transform: translateY(-50%);
              left: 0;
              background-repeat: no-repeat;
              background-position: center;
              background-size: contain;
              background-image: url(../img/cmn/icn-pin@2x.png); }
              @media screen and (max-width: 1680px) {
                .map-tx-btn a > span span::before {
                  width: 1.25vw;
                  height: 1.7857142857vw; } }
              @media screen and (max-width: 480px) {
                .map-tx-btn a > span span::before {
                  width: 2.8vw;
                  height: 4vw; } }

/* sigh
---------------------------------------------------------------------------*/
.sigh {
  position: relative;
  padding-bottom: 190px; }
  @media screen and (max-width: 1680px) {
    .sigh {
      padding-bottom: 11.3095238095vw; } }
  @media screen and (max-width: 480px) {
    .sigh {
      padding-bottom: 25.3333333333vw; } }
  .sigh-img {
    /* 1280 */
    width: 1280px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px; }
    @media screen and (max-width: 1680px) {
      .sigh-img {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .sigh-img {
        width: 89.3333333333vw; } }
    @media screen and (max-width: 1680px) {
      .sigh-img {
        margin-bottom: 2.8571428571vw; } }
    @media screen and (max-width: 480px) {
      .sigh-img {
        margin-bottom: 6.4vw; } }
    .sigh-img img {
      border-radius: 20px; }
      @media screen and (max-width: 1680px) {
        .sigh-img img {
          border-radius: 1.1904761905vw; } }
      @media screen and (max-width: 480px) {
        .sigh-img img {
          width: 100%;
          height: 60vw;
          object-fit: cover;
          object-position: center;
          font-family: "object-fit: cover; object-position: center;";
          border-radius: 2.6666666667vw; } }
  .sigh-tx {
    /* 1280 */
    width: 1080px;
    margin-left: auto;
    margin-right: auto;
    color: #585657;
    margin-bottom: 64px; }
    @media screen and (max-width: 1680px) {
      .sigh-tx {
        width: 64.2857142857vw; } }
    @media screen and (max-width: 480px) {
      .sigh-tx {
        width: 89.3333333333vw; } }
    @media screen and (max-width: 1680px) {
      .sigh-tx {
        margin-bottom: 3.8095238095vw; } }
    @media screen and (max-width: 480px) {
      .sigh-tx {
        margin-bottom: 17.0666666667vw; } }
    .sigh-tx-ttl {
      text-align: center;
      margin-bottom: 64px; }
      @media screen and (max-width: 1680px) {
        .sigh-tx-ttl {
          margin-bottom: 3.8095238095vw; } }
      @media screen and (max-width: 480px) {
        .sigh-tx-ttl {
          margin-bottom: 8.5333333333vw; } }
    .sigh-tx-hdl {
      margin-bottom: 48px; }
      @media screen and (max-width: 1680px) {
        .sigh-tx-hdl {
          margin-bottom: 2.8571428571vw; } }
      @media screen and (max-width: 480px) {
        .sigh-tx-hdl {
          margin-bottom: 6.4vw; } }
  .sigh-spot {
    /* 1280 */
    width: 1080px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .sigh-spot {
        width: 64.2857142857vw; } }
    @media screen and (max-width: 480px) {
      .sigh-spot {
        width: 89.3333333333vw; } }
    .sigh-spot li {
      width: 520px; }
      @media screen and (max-width: 1680px) {
        .sigh-spot li {
          width: 30.9523809524vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spot li {
          width: 100%; } }
      .sigh-spot li:nth-of-type(n + 3) {
        margin-top: 64px; }
        @media screen and (max-width: 1680px) {
          .sigh-spot li:nth-of-type(n + 3) {
            margin-top: 3.8095238095vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot li:nth-of-type(n + 3) {
            margin-top: 17.0666666667vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spot li:nth-of-type(n + 2) {
          margin-top: 17.0666666667vw; } }
    .sigh-spot-img {
      margin-bottom: 32px; }
      @media screen and (max-width: 1680px) {
        .sigh-spot-img {
          margin-bottom: 1.9047619048vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spot-img {
          margin-bottom: 4.2666666667vw; } }
      .sigh-spot-img img {
        border-radius: 14px; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-img img {
            border-radius: 0.8333333333vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-img img {
            border-radius: 1.8666666667vw; } }
    .sigh-spot-tx {
      margin-bottom: 48px; }
      @media screen and (max-width: 1680px) {
        .sigh-spot-tx {
          margin-bottom: 2.8571428571vw; } }
      @media screen and (max-width: 480px) {
        .sigh-spot-tx {
          margin-bottom: 6.4vw; } }
      .sigh-spot-tx-name {
        font-size: 20px;
        letter-spacing: .05em; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-tx-name {
            font-size: 1.1904761905vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-tx-name {
            font-size: 5.3333333333vw; } }
      .sigh-spot-tx-time {
        position: relative;
        font-size: 20px;
        letter-spacing: .05em;
        border-bottom: 1px solid #a9a19e;
        padding: 1em 0 1em 2em;
        margin-bottom: 1em; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-tx-time {
            font-size: 1.1904761905vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-tx-time {
            font-size: 5.3333333333vw; } }
        .sigh-spot-tx-time::before {
          position: absolute;
          content: "";
          top: 50%;
          transform: translateY(-50%);
          left: 0;
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain; }
        .sigh-spot-tx-time.walk::before {
          width: 19px;
          height: 31px;
          background-image: url(../img/sightseeing/walk@2x.png); }
          @media screen and (max-width: 1680px) {
            .sigh-spot-tx-time.walk::before {
              width: 1.130952381vw;
              height: 1.8452380952vw; } }
          @media screen and (max-width: 480px) {
            .sigh-spot-tx-time.walk::before {
              width: 5.0666666667vw;
              height: 8.2666666667vw; } }
        .sigh-spot-tx-time.car::before {
          width: 25px;
          height: 23px;
          background-image: url(../img/sightseeing/car@2x.png); }
          @media screen and (max-width: 1680px) {
            .sigh-spot-tx-time.car::before {
              width: 1.4880952381vw;
              height: 1.369047619vw; } }
          @media screen and (max-width: 480px) {
            .sigh-spot-tx-time.car::before {
              width: 6.6666666667vw;
              height: 6.1333333333vw; } }
    .sigh-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) {
        .sigh-spot-btn {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column; } }
      .sigh-spot-btn > * {
        width: 254px; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-btn > * {
            width: 15.119047619vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-btn > * {
            width: 100%; }
            .sigh-spot-btn > * + * {
              margin-top: 3vw; } }
        .sigh-spot-btn > * a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          width: 100%;
          height: 50px;
          border: 1px solid #a9a19e;
          border-radius: 6px; }
          @media screen and (max-width: 1680px) {
            .sigh-spot-btn > * a {
              height: 2.9761904762vw;
              border-radius: 0.3571428571vw; } }
          @media screen and (max-width: 480px) {
            .sigh-spot-btn > * a {
              height: 10.6666666667vw;
              border-radius: 0.8vw; } }
          .sigh-spot-btn > * a > span {
            display: block;
            width: 100%;
            white-space: nowrap;
            text-align: center; }
            .sigh-spot-btn > * a > span span {
              position: relative;
              display: inline-block;
              font-size: 18px;
              letter-spacing: .05em;
              padding-left: 1.8em; }
              @media screen and (max-width: 1680px) {
                .sigh-spot-btn > * a > span span {
                  font-size: 1.0714285714vw; } }
              @media screen and (max-width: 480px) {
                .sigh-spot-btn > * a > span span {
                  font-size: 4.8vw; } }
              .sigh-spot-btn > * a > span span::before {
                position: absolute;
                content: "";
                left: 0;
                top: 50%;
                transform: translateY(-50%);
                background-repeat: no-repeat;
                background-position: center;
                background-size: contain; }
      .sigh-spot-btn-map a > span span::before {
        background-image: url(../img/cmn/icn-pin@2x.png);
        width: 21px;
        height: 30px; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-btn-map a > span span::before {
            width: 1.25vw;
            height: 1.7857142857vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-btn-map a > span span::before {
            width: 4.2vw;
            height: 6vw; } }
      .sigh-spot-btn-site a > span span::before {
        background-image: url(../img/sightseeing/blank@2x.png);
        width: 20px;
        height: 20px; }
        @media screen and (max-width: 1680px) {
          .sigh-spot-btn-site a > span span::before {
            width: 1.1904761905vw;
            height: 1.1904761905vw; } }
        @media screen and (max-width: 480px) {
          .sigh-spot-btn-site a > span span::before {
            width: 4vw;
            height: 4vw; } }

/* basicinfo
---------------------------------------------------------------------------*/
.basicinfo {
  position: relative;
  color: #585657; }
  .basicinfo-wrap {
    /* 1280 */
    width: 1280px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #a9a19e;
    padding: 64px 100px;
    border-radius: 20px; }
    @media screen and (max-width: 1680px) {
      .basicinfo-wrap {
        width: 76.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .basicinfo-wrap {
        width: 89.3333333333vw; } }
    @media screen and (max-width: 1680px) {
      .basicinfo-wrap {
        padding: 3.8095238095vw 5.9523809524vw;
        border-radius: 1.1904761905vw; } }
    @media screen and (max-width: 480px) {
      .basicinfo-wrap {
        padding: 5.3333333333vw;
        border-radius: 2.6666666667vw; } }
  .basicinfo-ttl {
    text-align: center;
    margin-bottom: 48px;
    color: #585657; }
    @media screen and (max-width: 1680px) {
      .basicinfo-ttl {
        margin-bottom: 2.8571428571vw; } }
    @media screen and (max-width: 480px) {
      .basicinfo-ttl {
        margin-bottom: 6.4vw; } }

/*.sigh-deco01 {
	position: relative;
	&::after {
		@include deco-yel2blue;
		top: -32px;
		@include mq(xl) {
			top: px2vw(-32);
		}
	}
}
.sigh-deco02 {
	position: relative;
	&::after {
		@include deco-blue;
		top: 1270px;
		@include mq(xl) {
			top: px2vw(1270);
		}
	}
}
.sigh-deco03 {
	position: relative;
	&::after {
		@include deco-yellow;
		top: -180px;
		@include mq(xl) {
			top: px2vw(-180);
		}
	}
}
.sigh-deco04 {
	position: relative;
	&::after {
		@include deco-yel2blue;
		top: 625px;
		@include mq(xl) {
			top: px2vw(625);
		}
	}
}*/
