@charset "UTF-8";
body {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

a {
  transition: .3s; }

a:hover {
  opacity: 0.8; }

.view--tab {
  display: none; }

.view--sp {
  display: none; }

@media screen and (max-width: 1024px) {
  .view--tab {
    display: block; } }
@media screen and (max-width: 768px) {
  .view--pc {
    display: none; }

  .view--tab {
    display: none; }

  .view--sp {
    display: block; } }
.fade-in {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out; }

.fade-in.show {
  opacity: 1;
  transform: translateY(0); }

.kv {
  max-width: 100%; }

.cp_term_wrap {
  position: relative;
  overflow: hidden;
  height: 22.71vw;
  background-image: url(../img/term_deco.png), url(../img/term_bara01.png), url(../img/term_bara02.png), url(../img/term_bg.webp);
  background-size: cover,19.38%,16.9%,cover;
  background-position: left top,left 3.875% top,right 3.643% bottom,left top;
  background-repeat: no-repeat; }
  @media screen and (max-width: 768px) {
    .cp_term_wrap {
      height: 46vw;
      background-position: left top,left -4% top,right -3% bottom,left top; } }
  .cp_term_wrap .cp_term {
    width: 49.61%;
    max-width: 1280px;
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2; }
    @media screen and (max-width: 768px) {
      .cp_term_wrap .cp_term {
        top: 8vw;
        width: 80%; } }
  .cp_term_wrap p {
    width: 100%;
    font-size: 30px;
    font-weight: 900;
    color: #42210b;
    text-align: center;
    position: absolute;
    bottom: 17%;
    left: 50%;
    transform: translateX(-50%); }
    @media screen and (max-width: 1920px) {
      .cp_term_wrap p {
        font-size: 25px; } }
    @media screen and (max-width: 1290px) {
      .cp_term_wrap p {
        font-size: 1.938vw; } }
    @media screen and (max-width: 768px) {
      .cp_term_wrap p {
        font-size: 3.6vw;
        bottom: 6.5vw; } }

.red_bg {
  background-image: url("../img/bg_ptn_red.jpg");
  background-repeat: repeat;
  background-size: 120px; }
  .red_bg section .sec_bg {
    max-width: 916px;
    background-image: linear-gradient(90deg, #653f25, #b4833e 8%, #e3b662 20%, #b4833e 32%, #edd87d 50%, #b4833e 71%, #e3b662 86%, #7a532f 97%, #653f25 100%);
    margin: auto;
    padding: 8px; }
    @media screen and (max-width: 1024px) {
      .red_bg section .sec_bg {
        width: 90vw;
        padding: 1.2vw; } }
    .red_bg section .sec_bg .sec_innr {
      background-color: #fff;
      padding: 48px 0; }
      @media screen and (max-width: 1024px) {
        .red_bg section .sec_bg .sec_innr {
          padding: 6vw 4vw; } }
      @media screen and (max-width: 1024px) {
        .red_bg section .sec_bg .sec_innr {
          padding: 10vw 4vw; } }
  .red_bg .sec01 {
    padding: 82px 0;
    background-image: url("../img/bara_sec01_left.png"), url("../img/bara_sec01_right.png"), url("../img/bg_ptn-footer.png");
    background-repeat: no-repeat, no-repeat, repeat;
    background-size: 259px,570px,120px;
    background-position: left top, right top, left top; }
    @media screen and (max-width: 768px) {
      .red_bg .sec01 {
        padding: 13vw 0;
        background-size: 30vw,47vw,120px; } }
    .red_bg .sec01 .sec_bg .sec_innr {
      position: relative;
      background-image: url("../img/sec01_bara_frame01.png"), url("../img/sec01_bara_frame02.jpg"), url("../img/sec01_bara_frame03.jpg"), url("../img/sec01_bara_frame04.png");
      background-repeat: no-repeat,no-repeat,no-repeat,no-repeat;
      background-size: 376px,246px,256px,624px;
      background-position: left -20px top -29px, right 7px top 2px,left 8px bottom 8px,right -9px bottom -4px; }
      @media screen and (max-width: 768px) {
        .red_bg .sec01 .sec_bg .sec_innr {
          background-size: 40vw, 40vw, 28vw, 65vw;
          background-position: left -2.1vw top -3.1vw,right 1vw top 0.5vw,left 1vw bottom 1vw,right -1vw bottom -1vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .room_ttl {
        width: 62.446%;
        max-width: 562px;
        margin: 0 auto 32px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .room_ttl {
            width: 96%;
            margin-bottom: 4vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .room_txt {
        font-size: 19px;
        line-height: 1.6;
        font-weight: 900;
        color: #42210b;
        text-align: center;
        margin-bottom: 20px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .room_txt {
            font-size: 3.3vw;
            margin-bottom: 4vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .room_img_wrap {
        position: relative;
        max-width: 820px;
        margin: 0 0 47px 6%; }
        @media screen and (max-width: 1024px) {
          .red_bg .sec01 .sec_bg .sec_innr .room_img_wrap {
            margin: 0 0 47px 3vw; } }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .room_img_wrap {
            margin: 0 0 15vw 3vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .amenity_ttl {
        width: 62.446%;
        max-width: 562px;
        margin: 0 auto 35px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .amenity_ttl {
            width: 96%; } }
      .red_bg .sec01 .sec_bg .sec_innr .amenity_flex {
        max-width: 798px;
        display: flex;
        justify-content: space-between;
        margin: 0 auto 30px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .amenity_flex {
            display: block; } }
        .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity01 {
          width: 37.72%;
          max-width: 301px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity01 {
              width: 90%;
              margin: 0 auto 8vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity02 {
          width: 27.94%;
          max-width: 223px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity02 {
              width: 72%;
              margin: 0 auto 8vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity03 {
          width: 27.94%;
          max-width: 223px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .amenity_flex .amenity03 {
              width: 72%;
              margin: auto; } }
      .red_bg .sec01 .sec_bg .sec_innr .amenity_txt {
        max-width: 800px;
        font-size: 13px;
        line-height: 1.3;
        font-weight: bold;
        font-family: "Noto Sans JP", serif;
        color: #606060;
        margin: 0 auto 52px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .amenity_txt {
            margin-bottom: 15vw;
            font-size: 3vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .charge_ttl {
        width: 62.446%;
        max-width: 562px;
        margin: 0 auto 33px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .charge_ttl {
            width: 96%;
            margin-bottom: 4vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .yellow_txt {
        font-size: 30px;
        color: #c3922e;
        text-align: center;
        font-weight: 800;
        margin-bottom: 28px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .yellow_txt {
            font-size: 5vw;
            margin-bottom: 7vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm01 {
          font-size: 24px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm01 {
              font-size: 4vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm02 {
          font-size: 18px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm02 {
              font-size: 3.4vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm03 {
          font-size: 21px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .yellow_txt .sm03 {
              font-size: 3.6vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .charge_menu {
        max-width: 742px;
        margin: 0 auto 35px;
        display: flex;
        justify-content: space-between;
        font-size: 24px;
        font-weight: 900;
        color: #42210b; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu {
            display: block;
            font-size: 4vw;
            margin-bottom: 5vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit {
          width: 48.51%;
          max-width: 360px;
          text-align: center; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit {
              width: 80%;
              max-width: unset;
              margin: auto; } }
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit .menu_name {
            height: 90px;
            display: flex;
            justify-content: center;
            align-items: center; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit .menu_name {
                height: unset;
                margin-bottom: 3.6vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit span {
            font-size: 15px;
            display: inline-block; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit span {
                font-size: 3vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit .price {
            font-size: 35px;
            color: #005d1f;
            margin-bottom: 24px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit .price {
                font-size: 5vw;
                margin-bottom: 3.6vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit .reserve_btn {
            max-width: 345px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit:first-of-type {
            margin-bottom: 5vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .charge_menu .charge_menu_unit:first-of-type .menu_name {
          flex-direction: column;
          line-height: 1.2; }
      .red_bg .sec01 .sec_bg .sec_innr .charge_note {
        max-width: 800px;
        font-size: 13px;
        line-height: 1.3;
        font-family: "Noto Sans JP", serif;
        font-weight: bold;
        color: #606060;
        margin: 0 auto 52px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .charge_note {
            font-size: 3vw;
            margin-bottom: 7vw; } }
      .red_bg .sec01 .sec_bg .sec_innr .club_info {
        max-width: 557px;
        margin: auto;
        font-weight: 900;
        text-align: center;
        border-radius: 10px;
        background-image: linear-gradient(45deg, #fbc926, #ffdbac 22%, #c3922e 50%, #ffdbac 83%, #fbc926 100%);
        padding: 2px; }
        @media screen and (max-width: 768px) {
          .red_bg .sec01 .sec_bg .sec_innr .club_info {
            padding: 0.5vw; } }
        .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr {
          background-color: #fff;
          padding: 32px 0;
          border-radius: 9px;
          max-width: 553px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr {
              padding: 5vw 4vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .big {
            font-size: 25px;
            margin-bottom: 4px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .big {
                font-size: 4vw;
                margin-bottom: 1vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .middle {
            font-size: 18px;
            margin-bottom: 10px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .middle {
                font-size: 3.6vw;
                margin-bottom: 2vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .small {
            font-size: 14px;
            margin-bottom: 26px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .small {
                font-size: 3.2vw;
                margin-bottom: 4vw; } }
          .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn {
            width: 280px;
            height: 69px;
            margin: auto; }
            @media screen and (max-width: 768px) {
              .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn {
                width: 90%;
                height: 15vw; } }
            .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn a {
              display: block;
              width: 100%;
              height: 100%;
              display: flex;
              align-items: center;
              justify-content: center;
              background: #cc9933;
              transition: .3s; }
            .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn a:hover {
              opacity: .8; }
            .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn .pay_btn_txt {
              width: 195px;
              margin: auto; }
              @media screen and (max-width: 768px) {
                .red_bg .sec01 .sec_bg .sec_innr .club_info .club_info_innr .pay_btn .pay_btn_txt {
                  width: 69.6%; } }
  .red_bg .sec02 {
    padding: 88px 0;
    background-image: url("../img/bara_sec02_left.png"), url("../img/bara_sec02_right.png");
    background-repeat: no-repeat, no-repeat;
    background-size: 508px,280px;
    background-position: left top 300px, right top 77px; }
    @media screen and (max-width: 768px) {
      .red_bg .sec02 {
        padding: 13vw 0;
        background-size: 50vw,20vw;
        background-position: left top 10vw, right top 3vw; } }
    .red_bg .sec02 .sec_bg {
      margin-bottom: 94px; }
      @media screen and (max-width: 768px) {
        .red_bg .sec02 .sec_bg {
          margin-bottom: 15vw; } }
      .red_bg .sec02 .sec_bg .sec_innr {
        background-image: url("../img/sec02_deco_frame01.png"), url("../img/sec02_deco_frame02.png"), url("../img/sec02_deco_frame03.jpg"), url("../img/sec02_deco_frame04.png"), url("../img/sec02_bara_frame.jpg");
        background-repeat: no-repeat,no-repeat,no-repeat,no-repeat;
        background-size: 86px,390px,117px,86px,633px;
        background-position: left 9px top 9px,right top,left bottom,right 8px bottom 8px, center bottom; }
        @media screen and (max-width: 768px) {
          .red_bg .sec02 .sec_bg .sec_innr {
            background-size: 10vw,25vw,10vw,10vw,50vw;
            background-position: left 1vw top 1vw,right top,left bottom,right 1vw bottom 1vw, center bottom; } }
        .red_bg .sec02 .sec_bg .sec_innr .drink_ttl {
          max-width: 682px;
          margin: 0 auto 16px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_ttl {
              margin-bottom: 3vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .drink_price {
          font-size: 42px;
          font-weight: 600;
          text-align: center;
          max-width: 315px;
          border-bottom: 1px solid #42210b;
          margin: 0 auto 28px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_price {
              margin-bottom: 5vw;
              font-size: 6vw;
              width: 39%; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_price span {
            font-size: 24px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec02 .sec_bg .sec_innr .drink_price span {
                font-size: 3.6vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .drink_detail {
          font-size: 22px;
          font-weight: 600;
          max-width: 630px;
          margin: 0 auto 30px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_detail {
              font-size: 3.6vw;
              margin-bottom: 3.6vw; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div {
            display: flex; }
            @media screen and (max-width: 768px) {
              .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div {
                display: block; } }
            .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div dt {
              margin-right: 10px; }
              @media screen and (max-width: 768px) {
                .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div dt {
                  margin-right: 0; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div:first-of-type dt span {
            letter-spacing: -0.15em; }
          .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div:first-of-type dd span {
            letter-spacing: -0.1em; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div:not(:first-of-type) {
              margin-top: 2vw; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div:not(:first-of-type) dt {
            letter-spacing: 0.45em;
            margin-right: 0; }
          .red_bg .sec02 .sec_bg .sec_innr .drink_detail > div:last-of-type dt {
            margin-right: 0; }
        .red_bg .sec02 .sec_bg .sec_innr .drink_note {
          font-size: 13px;
          text-align: center;
          font-weight: bold;
          font-family: "Noto Sans JP", serif;
          color: #606060;
          margin-bottom: 27px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_note {
              margin-bottom: 6vw;
              text-align: left;
              font-size: 3vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .drink_flex {
          max-width: 862px;
          margin: 0 auto 50px;
          position: relative; }
          @media screen and (max-width: 1024px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_flex {
              margin: 0 0 50px 2%; } }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .drink_flex {
              width: 100%;
              display: block;
              margin: 0 auto 15vw; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_flex .drink01_wrap {
            width: 49.31%;
            max-width: 425px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec02 .sec_bg .sec_innr .drink_flex .drink01_wrap {
                width: 71vw;
                max-width: unset;
                margin-left: 3.2vw;
                margin-bottom: 8vw; } }
          .red_bg .sec02 .sec_bg .sec_innr .drink_flex .drink02_wrap {
            position: absolute;
            top: 0;
            right: 0;
            width: 52.79%;
            max-width: 455px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec02 .sec_bg .sec_innr .drink_flex .drink02_wrap {
                position: relative;
                width: 75.4vw;
                max-width: unset;
                margin-left: 3.6vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .novelty_ttl {
          max-width: 682px;
          margin: 0 auto 39px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .novelty_ttl {
              margin-bottom: 6vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .novelty_desc {
          font-size: 19px;
          font-weight: bold;
          text-align: center;
          margin-bottom: 46px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .novelty_desc {
              font-size: 3vw;
              margin-bottom: 6vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .novelty_flex {
          display: flex;
          justify-content: space-between;
          max-width: 596px;
          margin: 0 auto 46px; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .novelty_flex {
              display: block;
              margin-bottom: 5vw; } }
          .red_bg .sec02 .sec_bg .sec_innr .novelty_flex > div {
            width: 273px; }
            @media screen and (max-width: 768px) {
              .red_bg .sec02 .sec_bg .sec_innr .novelty_flex > div {
                width: 56vw;
                max-width: 355px;
                margin: auto; } }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .novelty_flex .novelty01 {
              margin-bottom: 4vw; } }
        .red_bg .sec02 .sec_bg .sec_innr .novelty_txt {
          font-size: 13px;
          font-weight: bold;
          max-width: 800px;
          margin: auto;
          font-family: "Noto Sans JP", serif;
          color: #606060; }
          @media screen and (max-width: 768px) {
            .red_bg .sec02 .sec_bg .sec_innr .novelty_txt {
              font-size: 3vw; } }
    .red_bg .sec02 .official_btn {
      max-width: 430px;
      margin: auto; }
      @media screen and (max-width: 768px) {
        .red_bg .sec02 .official_btn {
          width: 80vw; } }
      .red_bg .sec02 .official_btn a {
        transition: .3s; }
      .red_bg .sec02 .official_btn a:hover {
        opacity: .8; }

footer {
  padding: 86px 0 75px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    footer {
      padding: 15vw 0 8vw; } }
  footer .footer_top {
    border-top: 3px solid #000;
    border-bottom: 3px solid #000;
    padding: 24px 0 36px;
    max-width: 834px;
    margin: 0 auto 25px;
    font-size: 17px;
    font-weight: 600; }
    @media screen and (max-width: 768px) {
      footer .footer_top {
        border-top: 0.8vw solid #000;
        border-bottom: 0.8vw solid #000;
        padding: 3vw 0 4vw;
        margin-bottom: 3vw;
        font-size: 3vw;
        width: 80vw; } }
    footer .footer_top p:first-of-type {
      margin-bottom: 6px;
      line-height: 19px; }
      @media screen and (max-width: 768px) {
        footer .footer_top p:first-of-type {
          margin-bottom: 1vw; } }
    footer .footer_top p:nth-of-type(2) {
      font-size: 37px;
      margin-bottom: 12px;
      line-height: 42px; }
      @media screen and (max-width: 768px) {
        footer .footer_top p:nth-of-type(2) {
          font-size: 5vw;
          margin-bottom: 2vw;
          line-height: 1.5; } }
    footer .footer_top p:last-of-type {
      margin-bottom: 40px; }
      @media screen and (max-width: 768px) {
        footer .footer_top p:last-of-type {
          margin-bottom: 6vw; } }
    footer .footer_top .sns_btn_wrap {
      display: flex;
      justify-content: space-between;
      align-items: center;
      max-width: 419px;
      margin: auto; }
      @media screen and (max-width: 768px) {
        footer .footer_top .sns_btn_wrap {
          max-width: 80vw; } }
      footer .footer_top .sns_btn_wrap .sns_btn:not(:last-of-type) {
        width: 61px; }
        @media screen and (max-width: 768px) {
          footer .footer_top .sns_btn_wrap .sns_btn:not(:last-of-type) {
            width: 10vw; } }
      footer .footer_top .sns_btn_wrap .sns_btn:last-of-type {
        width: 71px; }
        @media screen and (max-width: 768px) {
          footer .footer_top .sns_btn_wrap .sns_btn:last-of-type {
            width: 12vw; } }
  footer .footer_bottom {
    font-family: "Noto Sans JP", serif;
    font-weight: 500; }
    footer .footer_bottom .for_customer_ttl {
      margin-bottom: 6px;
      font-size: 21px; }
      @media screen and (max-width: 768px) {
        footer .footer_bottom .for_customer_ttl {
          margin-bottom: 2vw;
          font-size: 3vw; } }
    footer .footer_bottom .for_customer_txt {
      margin-bottom: 45px;
      font-size: 15px;
      line-height: 1.7; }
      @media screen and (max-width: 768px) {
        footer .footer_bottom .for_customer_txt {
          margin-bottom: 6vw;
          font-size: 2.4vw; } }
    footer .footer_bottom .hotel_link {
      display: flex;
      justify-content: center;
      font-size: 19px;
      margin-bottom: 45px; }
      @media screen and (max-width: 768px) {
        footer .footer_bottom .hotel_link {
          margin-bottom: 6vw;
          font-size: 2.4vw; } }
      footer .footer_bottom .hotel_link p {
        padding: 0 13px;
        border-left: 2px solid #000; }
        @media screen and (max-width: 768px) {
          footer .footer_bottom .hotel_link p {
            padding: 0 2vw;
            border-left: 0.3vw solid #000; } }
      footer .footer_bottom .hotel_link p:last-of-type {
        border-right: 2px solid #000; }
        @media screen and (max-width: 768px) {
          footer .footer_bottom .hotel_link p:last-of-type {
            border-right: 0.3vw solid #000; } }
    footer .footer_bottom .copyright {
      font-weight: 400; }
      @media screen and (max-width: 768px) {
        footer .footer_bottom .copyright {
          font-size: 3vw; } }
