@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 */
/* 縦書き */
/* 内径 */
/* .bdrhdl .en::after
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .bdrhdl {
    margin-bottom: 8.5333333333vw; }
    .bdrhdl .en::after {
      bottom: -28vw; } }

/* contents
---------------------------------------------------------------------------*/
.contents-bd {
  position: relative;
  color: #ffffff; }
  @media screen and (max-width: 480px) {
    .contents-bd {
      width: 100vw; } }
  .contents-bd-bg img {
    width: 100%;
    height: 800px;
    object-fit: cover;
    object-position: center;
    font-family: "object-fit: cover; object-position: center;"; }
    @media screen and (max-width: 1300px) {
      .contents-bd-bg img {
        height: 61.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .contents-bd-bg img {
        height: 192vw; } }
  .contents-bd-tx {
    position: absolute;
    width: 50%;
    top: 192px;
    left: 100px;
    z-index: 5; }
    @media screen and (max-width: 1300px) {
      .contents-bd-tx {
        top: 14.7692307692vw;
        left: 7.6923076923vw; } }
    @media screen and (max-width: 480px) {
      .contents-bd-tx {
        width: 100%;
        left: 0;
        top: 10.6666666667vw;
        padding: 0 6.6666666667vw; } }
    .contents-bd-tx-en {
      color: rgba(231, 239, 245, 0.5); }
    .contents-bd-tx.right {
      width: 536px;
      right: 0;
      left: auto; }
      @media screen and (max-width: 1300px) {
        .contents-bd-tx.right {
          width: 41.2307692308vw; } }
      @media screen and (max-width: 480px) {
        .contents-bd-tx.right {
          width: 100%; } }
  .contents-bd-list {
    position: absolute;
    width: 540px;
    bottom: 64px;
    left: 0; }
    @media screen and (max-width: 1300px) {
      .contents-bd-list {
        width: 41.5384615385vw;
        bottom: 4.9230769231vw; } }
    @media screen and (max-width: 480px) {
      .contents-bd-list {
        /*width: calc(100% - 6.6vw);*/
        width: 100%;
        bottom: 10.6666666667vw; } }
    .contents-bd-list li {
      overflow: hidden; }
      .contents-bd-list li a {
        display: block;
        position: relative;
        padding: 16px 12px 16px 100px; }
        @media screen and (max-width: 1300px) {
          .contents-bd-list li a {
            padding: 1.2307692308vw 0.9230769231vw 1.2307692308vw 7.6923076923vw; } }
        @media screen and (max-width: 480px) {
          .contents-bd-list li a {
            padding: 3.2vw 1.6vw 3.2vw 3.3333333333vw; } }
        .contents-bd-list li a::before, .contents-bd-list li a::after {
          position: absolute;
          content: "";
          bottom: 0;
          height: 1px; }
        .contents-bd-list li a::before {
          width: 126px;
          left: 0;
          background-color: rgba(255, 255, 255, 0.5); }
          @media screen and (max-width: 1300px) {
            .contents-bd-list li a::before {
              width: 9.6923076923vw; } }
          @media screen and (max-width: 480px) {
            .contents-bd-list li a::before {
              width: 10vw; } }
        .contents-bd-list li a::after {
          width: 100%;
          left: -100%;
          background-color: #ffffff;
          transition-property: all;
          transition-duration: 0.8s;
          transition-timing-function: ease; }
        @media (hover: hover) {
          .contents-bd-list li a:hover {
            opacity: 1; }
            .contents-bd-list li a:hover::after {
              left: 0; } }
        .contents-bd-list li a .num {
          margin-right: 34px; }
          @media screen and (max-width: 1300px) {
            .contents-bd-list li a .num {
              margin-right: 2.6153846154vw; } }
    .contents-bd-list.right {
      width: 536px;
      right: 0;
      left: auto; }
      @media screen and (max-width: 1300px) {
        .contents-bd-list.right {
          width: 41.2307692308vw; } }
      @media screen and (max-width: 480px) {
        .contents-bd-list.right {
          width: 100%; } }
      .contents-bd-list.right li {
        text-align: right; }
        .contents-bd-list.right li a {
          padding: 16px 100px 16px 12px; }
          @media screen and (max-width: 1300px) {
            .contents-bd-list.right li a {
              padding: 1.2307692308vw 7.6923076923vw 1.2307692308vw 0.9230769231vw; } }
          @media screen and (max-width: 480px) {
            .contents-bd-list.right li a {
              padding: 3.2vw 3.3333333333vw 3.2vw 1.6vw; } }
          .contents-bd-list.right li a::before {
            left: auto;
            right: 0; }
          .contents-bd-list.right li a::after {
            right: -100%;
            left: auto; }
          @media (hover: hover) {
            .contents-bd-list.right li a:hover::after {
              right: 0;
              left: auto; } }
          .contents-bd-list.right li a .num {
            margin-right: 0;
            margin-left: 34px; }
            @media screen and (max-width: 1300px) {
              .contents-bd-list.right li a .num {
                margin-left: 2.6153846154vw; } }

/* days
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .days.mb64 {
    margin-bottom: 16vw; } }
.days .imgtx-tx {
  position: relative;
  padding-top: 64px; }
  @media screen and (max-width: 1300px) {
    .days .imgtx-tx {
      padding-top: 4.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .days .imgtx-tx {
      padding-top: 0;
      padding-left: 6.6666666667vw; } }
  .days .imgtx-tx > div {
    position: relative;
    height: 100%; }
    .days .imgtx-tx > div::before, .days .imgtx-tx > div::after {
      position: absolute;
      content: "";
      background-color: #223B52; }
    .days .imgtx-tx > div::before {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      top: 0;
      left: -55px; }
      @media screen and (max-width: 1300px) {
        .days .imgtx-tx > div::before {
          width: 0.7692307692vw;
          height: 0.7692307692vw;
          left: -4.2307692308vw; } }
      @media screen and (max-width: 480px) {
        .days .imgtx-tx > div::before {
          width: 2vw;
          height: 2vw;
          left: -7.6666666667vw; } }
    .days .imgtx-tx > div::after {
      top: 18px;
      left: -50px;
      width: 1px;
      height: calc(100% - 18px); }
      @media screen and (max-width: 1300px) {
        .days .imgtx-tx > div::after {
          top: 1.3846153846vw;
          left: -3.8461538462vw;
          height: calc(100% - 1.38461vw); } }
      @media screen and (max-width: 480px) {
        .days .imgtx-tx > div::after {
          top: 3.7333333333vw;
          left: -6.6666666667vw;
          height: calc(100% - 5.625vw); } }
@media screen and (min-width: 481px) {
  .days .imgtx.rvs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; } }
  @media screen and (min-width: 481px) and (max-width: 480px) {
    .days .imgtx.rvs {
      -webkit-flex-direction: column-reverse;
      flex-direction: column-reverse; } }
@media screen and (min-width: 481px) {
    .days .imgtx.rvs .imgtx-tx {
      padding-left: 0;
      padding-right: 50px; } }
    @media screen and (min-width: 481px) and (max-width: 1300px) {
      .days .imgtx.rvs .imgtx-tx {
        padding-right: 3.8461538462vw; } }
    @media screen and (min-width: 481px) and (max-width: 480px) {
      .days .imgtx.rvs .imgtx-tx {
        padding-top: 0;
        padding-right: 6.6666666667vw; } }
@media screen and (min-width: 481px) {
      .days .imgtx.rvs .imgtx-tx > div::before {
        left: auto;
        right: -55px; } }
      @media screen and (min-width: 481px) and (max-width: 1300px) {
        .days .imgtx.rvs .imgtx-tx > div::before {
          right: -4.2307692308vw; } }
      @media screen and (min-width: 481px) and (max-width: 480px) {
        .days .imgtx.rvs .imgtx-tx > div::before {
          right: -7.6666666667vw; } }
@media screen and (min-width: 481px) {
      .days .imgtx.rvs .imgtx-tx > div::after {
        left: auto;
        right: -50px; } }
      @media screen and (min-width: 481px) and (max-width: 1300px) {
        .days .imgtx.rvs .imgtx-tx > div::after {
          right: -3.8461538462vw; } }
      @media screen and (min-width: 481px) and (max-width: 480px) {
        .days .imgtx.rvs .imgtx-tx > div::after {
          right: -6.6666666667vw; } }
@media screen and (min-width: 481px) {
    .days .imgtx.rvs .imgtx-img {
      margin-left: 0;
      margin-right: 40px; } }
    @media screen and (min-width: 481px) and (max-width: 1300px) {
      .days .imgtx.rvs .imgtx-img {
        margin-right: 3.0769230769vw; } }

.days-box {
  padding: 64px 50px;
  border: 1px solid #C8CED4; }
  @media screen and (max-width: 1300px) {
    .days-box {
      padding: 4.9230769231vw 3.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .days-box {
      width: 93.3333333333vw;
      margin-left: -3.3333333333vw;
      margin-right: -3.3333333333vw;
      padding: 8.5333333333vw 6.6666666667vw; } }
  .days-box-plan li {
    border-bottom: 1px solid #C8CED4; }
  .days-box-plan a {
    position: relative;
    padding: 24px; }
    @media screen and (max-width: 1300px) {
      .days-box-plan a {
        padding: 1.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .days-box-plan a {
        padding: 5.3333333333vw 0; } }
    @media (hover: hover) {
      .days-box-plan a:hover {
        opacity: 1; }
        .days-box-plan a:hover .atag {
          background-color: rgba(200, 206, 212, 0.5); } }
  .days-box-plan-img {
    width: 160px;
    margin-right: 36px; }
    @media screen and (max-width: 1300px) {
      .days-box-plan-img {
        width: 12.3076923077vw;
        margin-right: 2.7692307692vw; } }
    @media screen and (max-width: 480px) {
      .days-box-plan-img {
        width: 28vw;
        margin-right: 0; } }
  .days-box-plan-tx {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 736px; }
    @media screen and (max-width: 1300px) {
      .days-box-plan-tx {
        width: 56.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .days-box-plan-tx {
        width: 48.2666666667vw;
        margin-bottom: 2vw; }
        .days-box-plan-tx .defdesc {
          font-size: 3.6vw;
          line-height: 1.74;
          letter-spacing: .1em; } }
  .days-box-plan-btn {
    position: absolute;
    right: 0;
    bottom: -1px; }
    .days-box-plan-btn .atag {
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      width: 140px; }
      @media screen and (max-width: 1300px) {
        .days-box-plan-btn .atag {
          width: 10.7692307692vw; } }
      @media screen and (max-width: 480px) {
        .days-box-plan-btn .atag {
          width: 28vw; } }
  .days-box-option-img {
    width: 550px; }
    @media screen and (max-width: 1300px) {
      .days-box-option-img {
        width: 42.3076923077vw; } }
    @media screen and (max-width: 480px) {
      .days-box-option-img {
        width: 100%; } }
    .days-box-option-img li {
      width: 266px; }
      @media screen and (max-width: 1300px) {
        .days-box-option-img li {
          width: 20.4615384615vw; } }
      @media screen and (max-width: 480px) {
        .days-box-option-img li {
          width: 49%; } }
  .days-box-option-tx {
    width: 362px; }
    @media screen and (max-width: 1300px) {
      .days-box-option-tx {
        width: 27.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .days-box-option-tx {
        width: 100%;
        margin-top: 8vw; } }

/* route
---------------------------------------------------------------------------*/
.route-tx {
  width: 405px; }
  @media screen and (max-width: 1300px) {
    .route-tx {
      width: 31.1538461538vw; } }
  @media screen and (max-width: 480px) {
    .route-tx {
      width: 100%; } }
  .route-tx li {
    position: relative;
    height: 100%;
    padding-bottom: 64px;
    padding-left: 46px; }
    @media screen and (max-width: 1300px) {
      .route-tx li {
        padding-bottom: 4.9230769231vw;
        padding-left: 3.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .route-tx li {
        padding-bottom: 8.5333333333vw;
        padding-left: 6.1333333333vw; } }
    .route-tx li::before, .route-tx li::after {
      position: absolute;
      content: "";
      background-color: #223B52; }
    .route-tx li::before {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      top: 0;
      left: -5px; }
      @media screen and (max-width: 1300px) {
        .route-tx li::before {
          width: 0.7692307692vw;
          height: 0.7692307692vw;
          left: -0.3846153846vw; } }
      @media screen and (max-width: 480px) {
        .route-tx li::before {
          width: 2vw;
          height: 2vw;
          left: -1vw; } }
    .route-tx li::after {
      top: 18px;
      left: 0px;
      width: 1px;
      height: calc(100% - 26px); }
      @media screen and (max-width: 1300px) {
        .route-tx li::after {
          top: 1.3846153846vw;
          height: calc(100% - 2vw); } }
      @media screen and (max-width: 480px) {
        .route-tx li::after {
          top: 3.7333333333vw;
          height: calc(100% - 5.625vw); } }
.route-img {
  width: 620px;
  overflow: hidden; }
  @media screen and (max-width: 1300px) {
    .route-img {
      width: 47.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .route-img {
      width: 100%;
      margin-top: 8vw; } }
  .route-img-img {
    position: relative;
    color: #ffffff; }
    .route-img-img-tx, .route-img-img-cap {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 0.8em; }
    .route-img-img-cap {
      text-align: right; }
    @media screen and (max-width: 480px) {
      .route-img-img-tx.sppos {
        bottom: 1.4em; } }
  .route-img-navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    width: 160px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 28px; }
    @media screen and (max-width: 1300px) {
      .route-img-navigation {
        width: 12.3076923077vw;
        margin-top: 2.1538461538vw; } }
    @media screen and (max-width: 480px) {
      .route-img-navigation {
        width: 32vw;
        margin-top: 5.3333333333vw; } }
    .route-img-navigation::before {
      position: absolute;
      content: "";
      width: 1px;
      height: 30px;
      background-color: #909DA8;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
      @media screen and (max-width: 1300px) {
        .route-img-navigation::before {
          height: 2.3076923077vw; } }
      @media screen and (max-width: 480px) {
        .route-img-navigation::before {
          height: 6vw; } }
    .route-img-navigation .route-img-prev,
    .route-img-navigation .route-img-next {
      width: 10px; }
      @media screen and (max-width: 1300px) {
        .route-img-navigation .route-img-prev,
        .route-img-navigation .route-img-next {
          width: 0.7692307692vw; } }
      @media screen and (max-width: 480px) {
        .route-img-navigation .route-img-prev,
        .route-img-navigation .route-img-next {
          width: 2vw; } }
    .route-img-navigation.left {
      margin-left: 0; }
      @media screen and (max-width: 480px) {
        .route-img-navigation.left {
          margin-left: auto; } }
    .route-img-navigation.right {
      margin-right: 0; }
      @media screen and (max-width: 480px) {
        .route-img-navigation.right {
          margin-right: auto; } }
@media screen and (min-width: 481px) {
  .route.f-reverse .route-tx li {
    padding-left: 0;
    padding-right: 46px; } }
  @media screen and (min-width: 481px) and (max-width: 1300px) {
    .route.f-reverse .route-tx li {
      padding-right: 3.5384615385vw; } }
  @media screen and (min-width: 481px) and (max-width: 480px) {
    .route.f-reverse .route-tx li {
      padding-right: 6.1333333333vw; } }
@media screen and (min-width: 481px) {
    .route.f-reverse .route-tx li::before {
      left: auto;
      right: -5px; } }
    @media screen and (min-width: 481px) and (max-width: 1300px) {
      .route.f-reverse .route-tx li::before {
        right: -0.3846153846vw; } }
    @media screen and (min-width: 481px) and (max-width: 480px) {
      .route.f-reverse .route-tx li::before {
        right: -1vw; } }
@media screen and (min-width: 481px) {
    .route.f-reverse .route-tx li::after {
      left: auto;
      right: 0px; } }

/* sightseeing
---------------------------------------------------------------------------*/
.sightseeing {
  background-image: url(../img/stay_couple/sightseeing-bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 160px 0; }
  @media screen and (max-width: 1300px) {
    .sightseeing {
      padding: 12.3076923077vw 0; } }
  @media screen and (max-width: 480px) {
    .sightseeing {
      padding: 10.6666666667vw 0; } }
  @media screen and (max-width: 480px) {
    .sightseeing ul {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      gap: 5.3333333333vw 0; } }
  .sightseeing ul li {
    width: 240px; }
    @media screen and (max-width: 1300px) {
      .sightseeing ul li {
        width: 18.4615384615vw; } }
    @media screen and (max-width: 480px) {
      .sightseeing ul li {
        width: 49%; } }
  @media screen and (max-width: 480px) {
    .sightseeing-tx {
      letter-spacing: 0; } }

/* mutual
---------------------------------------------------------------------------*/
.mutual ul {
  gap: 36px; }
  @media screen and (max-width: 1300px) {
    .mutual ul {
      gap: 2.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .mutual ul {
      gap: 8vw;
      padding: 0 6.6666666667vw; } }
  .mutual ul li {
    width: 490px; }
    @media screen and (max-width: 1300px) {
      .mutual ul li {
        width: 37.6923076923vw; } }
    @media screen and (max-width: 480px) {
      .mutual ul li {
        width: 100%; } }
    .mutual ul li a {
      position: relative;
      display: block; }
.mutual .name {
  position: absolute;
  top: 40px;
  left: 40px;
  z-index: 10; }
  @media screen and (max-width: 1300px) {
    .mutual .name {
      top: 3.0769230769vw;
      left: 3.0769230769vw; } }
  @media screen and (max-width: 480px) {
    .mutual .name {
      top: 5.3333333333vw;
      left: 5.3333333333vw; } }
.mutual .btn-more {
  position: absolute;
  width: 140px;
  right: 20px;
  bottom: 26px;
  z-index: 10; }
  @media screen and (max-width: 1300px) {
    .mutual .btn-more {
      width: 10.7692307692vw;
      right: 1.5384615385vw;
      bottom: 3.4666666667vw; } }
  @media screen and (max-width: 480px) {
    .mutual .btn-more {
      width: 29.3333333333vw;
      right: 5.3333333333vw;
      bottom: 5.3333333333vw; } }
  .mutual .btn-more .atag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }

/* underlinehdl
---------------------------------------------------------------------------*/
.underlinehdl .fs28 span.fs18 {
  letter-spacing: .3em; }
