@charset "UTF-8";
/* ======================================================
pc
====================================================== */
@media (min-width: 1001px) {
  /* en
---------------------------------------------------------------------- */
  #contents.en .sightseeing__txt {
    text-align: left;
  }
  #contents.en #other .sightseeing__name {
    font-size: 2rem;
    /* flex: 1; */
  }
  /* ko
---------------------------------------------------------------------- */
#contents.ko #other .sightseeing__name {
  font-size: 1.8rem;
}
  /* zhtw
---------------------------------------------------------------------- */
  #contents.zhtw #other .sightseeing__name {
    font-size: 2rem;
    flex: 1;
  }
  /* zhcn
---------------------------------------------------------------------- */
  #contents.zhcn .fnav__01 li {
    padding: 0 5%;
  }
  #contents.zhcn #other .sightseeing__name {
    font-size: 2rem;
    /* flex: 1; */
  }
  /* header・mv
---------------------------------------------------------------------- */
  #inbound #mainheader {
    margin-top: 0;
  }
  #inbound .fnav {
    flex-wrap: wrap;
  }
  #inbound #mainheader.scroll .fnav {
    justify-content: flex-end;
  }
  #inbound #mainheader.scroll {
    font-size: 1.4rem;
  }
  #inbound #mainheader .fnav__wrap {
    width: 100%;
  }
  #inbound #mainheader.scroll .fnav__wrap {
    width: 90%;
  }
  #inbound .fnav__01 {
    flex-wrap: nowrap;
    width: 100%;
    margin-top: 30px;
  }
  #inbound .fnav__01 li {
    flex: 1 0 auto;
    /*padding: 0 4%;*/
    text-align: center;
    padding: 0 2%;
    letter-spacing: 0.05em;
    font-weight: 500;
    border-left: 1px solid #FFFFFF;
    border-right: 1px solid #FFFFFF;
  }
  #inbound .btn__rsv {
    width: 160px;
    font-weight: 600;
    height: 46px;
  }
  #inbound #mainheader.scroll .logo {
    height: 35px;
    padding: 0 0 5px;
    display: none;
  }
  #inbound #mainheader .scroll_logo {
    display: none;
  }
  #inbound #mainheader .scroll_logo img {
    height: 100%;
  }
  #inbound #mainheader.scroll .scroll_logo {
    width: 220px;
    display: block;
  }
  .fnav__btnWrap {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  .btn__official {
    color: #231815;
    font-family: 'Shippori Mincho', serif;
    width: 160px;
    height: 46px;
    font-weight: 600;
    border-radius: 3px;
    background: linear-gradient(#e0e5d1 0%, #d9dec9 17.02%, #c5ccb5 42.22%, #a6af95 72.33%, #848f71 100%);
    display: block;
    font-size: 20px;
    padding: 10px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: 1.6rem;
    cursor: pointer;
    font-weight: bold;
    transition: height 0.3s;
  }
  #inbound #mainheader.scroll .btn__official,
  #inbound #mainheader.scroll .btn__rsv {
    border-radius: 3px;
    height: 35px;
  }
  .fnav__tel {
    display: flex;
    align-items: center;
    font-size: 2.5rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .fnav__tel::before {
    content: "";
    display: block;
    width: 25px;
    height: 20px;
    background: url(../images/icn_tel02.svg) no-repeat;
    background-size: contain;
    margin-right: 5px;
  }
  #inbound #mainheader.scroll .fnav__tel {
    font-size: 1.6rem;
  }
  #inbound #mainheader.scroll .fnav__tel::before {
    width: 20px;
  }
  #inbound #mainheader.scroll {
    height: auto;
    padding: 5px 0;
  }
  #inbound #mainheader.scroll .fnav__01 {
    margin-top: 5px;
  }
  #mainvisual {
    min-height: calc(100vh - 90px);
  }
  #mainvisual .mvslide {
    height: calc(100vh - 90px);
  }
  #mainvisual .mvslide li picture {
    height: calc(100vh - 90px);
  }
  #mainvisual .mvslide li {
    height: calc(100vh - 90px);
  }
  #mainvisual .catch .catch_img {
    width: 1000px;
  }
  #mainvisual .catch {
    height: calc(100vh - 90px);
    margin: 0 auto;
    justify-content: center;
  }
  #inbound .footer__logoWrap {
    display: flex;
  }
  #inbound .footer__logo {
    width: 56px;
    margin: 0 15px 0 0;
  }
  #inbound .footer__address {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  #inbound .footer__address span {
    display: block;
    font-size: 21px;
    font-weight: bold;
    letter-spacing: 0.025em;
  }
  #inbound .footer__address span.address2 {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
  }
  .intro {
    background: #231815;
    position: relative;
    padding-top: 150px;
  }
  /* about
---------------------------------------------------------------------- */
  .about {
    height: 600px;
    display: flex;
    align-items: center;
    position: relative;
  }
  .about__img {
    position: absolute;
    top: 00px;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .about__inr {
    position: relative;
    color: #fff;
    width: 100%;
  }
  .about__content {
    font-family: 'Shippori Mincho', serif;
  }
  .about__ttl {
    font-size: 2.8rem;
    letter-spacing: 0.2em;
    margin-bottom: 30px;
  }
  /* common
---------------------------------------------------------------------- */
  .inbound__sec {
    padding: 90px 0;
  }
  .inbound__sec .ctitle2 {
    margin-bottom: 15px;
    flex: 1;
  }
  .inbound__ttl {
    font-size: 2.8rem;
    letter-spacing: 0.2em;
    margin-bottom: 15px;
    font-weight: bold;
  }
  .inbound__txt {
    margin-bottom: 60px;
  }
  .inbound__img {
    margin-bottom: 15px;
    aspect-ratio: 1 / 0.527;
  }
  .inbound__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .inbound__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 70px 0;
  }
  .inbound__list li {
    width: 47.5%;
    display: flex;
    flex-direction: column;
  }
  #restauran .inbound__list {
    gap: 35px 0;
  }
  #facilities .inbound__list {
    gap: 55px 0;
  }
  /* restaurant
---------------------------------------------------------------------- */
  #restaurant {
    padding: 90px 0 130px;
    background-color: #F5F0E9;
  }
  #breakfast {
    margin-bottom: 35px;
  }
  .restaurant {
    padding: 125px 0 50px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 3%;
  }
  .restaurant__img {
    flex: 0 1 53%;
  }
  .restaurant__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .restaurant__content {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    flex: 0 0 460px;
    position: relative;
  }
  .restaurant .ctitle {
    margin-bottom: 20px;
  }
  .restaurant__txt {
    font-size: 2.1rem;
    line-height: 1.61;
    letter-spacing: 0.2em;
    font-family: 'Shippori Mincho', serif;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid #808080;
  }
  .restaurant dl {
    display: flex;
    align-items: center;
  }
  .restaurant dl dt {
    margin-right: 10px;
  }
  .restaurant__note {
    font-size: 1.4rem;
  }
  .restaurant--reverse {
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
  /* sightseeing
---------------------------------------------------------------------- */
  #sightseeing {
    background-color: #F5F0E9;
  }
  .sightseeing__ttl {
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 0.2em;
    margin-bottom: 40px;
    padding-bottom: 15px;
    position: relative;
  }
  .sightseeing__ttl::after, .sightseeing__ttl::before {
    content: "";
    position: absolute;
    bottom: 0;
  }
  .sightseeing__ttl::before {
    width: 100%;
    height: 1px;
    background-color: #B2B2B2;
    z-index: 1;
    left: 0;
  }
  .sightseeing__ttl::after {
    width: 105px;
    height: 1px;
    background-color: #000000;
    z-index: 1;
    transition: width 0.3s;
    right: 0;
  }
  .sightseeing__ttl span {
    display: flex;
    align-items: center;
  }
  .sightseeing__ttl span::before {
    content: "";
    display: block;
    width: 21px;
    height: 21px;
    background-color: #231815;
    margin-right: 15px;
    margin-bottom: -5px;
  }
  .sightseeing__wrap:hover .sightseeing__ttl::after {
    width: 100%;
  }
  .sightseeing__wrap {
    position: relative;
    padding: 70px 0 20px;
  }
  .sightseeing__wrap:first-of-type {
    padding-top: 40px;
  }
  .sightseeing__list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 60px 3.5%;
  }
  .sightseeing__list li {
    width: 31%;
    display: flex;
    flex-direction: column;
  }
  .sightseeing__img {
    aspect-ratio: 1 / .629;
    margin-bottom: 10px;
  }
  .sightseeing__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .sightseeing__name {
    font-size: 2.1rem;
    line-height: 1.62;
    margin-bottom: 10px;
    letter-spacing: 0.2em;
  }
  .sightseeing__txt {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.62;
  }
  /* access
---------------------------------------------------------------------- */
  #access {
    text-align: center;
  }
  .map__wrap {
    aspect-ratio: 1 / 0.3;
  }
  .map__wrap iframe {
    width: 100%;
    height: 100%;
  }
  /*
    .howtoaccess__roop {
        padding-top: 100px;

        &:first-of-type {
            padding-top: 70px;
        }
    }

    .howtoaccess__ttlWrap {
        display: flex;
        justify-content: space-between;
        margin-bottom: 45px;
    }

    .howtoaccess__ttl {
        font-weight: 500;
        font-size: 2.5rem;
        line-height: 1.4;

        span {
            display: block;
            color: #898989;
            font-size: 1.8rem;
            letter-spacing: 0.05em;
            font-weight: bold;
            font-family: 'Cormorant Garamond', serif;
        }
    }

    .howtoaccess__btn {
        font-weight: 500;
        border-radius: 2px;
        width: 330px;
        height: 50px;
        letter-spacing: 0.1em;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        border: 1px solid #D3D3D3;

        &::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 20px;
            display: block;
            border-bottom: solid 1px #333333;
            border-right: solid 1px #333333;
            width: 5px;
            height: 5px;
            transform: rotate(-45deg) translateY(-50%);
            transition: right 0.3s;
        }
    }

    .howtoaccess__btn:hover::after {
        right: 15px;
    }
*/
  #reservation {
    padding: 90px 0 112px;
    margin-top: -10px;
    border-top: 1px solid #D3C2B8;
  }
  .reservation__ttl {
    color: #231815;
    text-align: center;
    font-size: 3.3rem;
    margin-bottom: 40px;
  }
  .reservation__btn {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    color: #231815;
    display: flex;
    font-weight: 600;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 60px;
    font-family: 'Shippori Mincho', serif;
    border-radius: 3px;
    background: linear-gradient(#f5f0e9 0%, #eee8e1 26.97%, #ddd4cd 66.78%, #cabfb8 100%);
  }
  .reservation__btn span {
    position: relative;
  }
  .reservation__btn span::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -55px;
    display: block;
    border-bottom: solid 1px #333333;
    border-right: solid 1px #333333;
    width: 5px;
    height: 5px;
    transform: rotate(-45deg) translateY(-50%);
    transition: right 0.3s;
  }
}

@media (max-width: 1000px) {
  /* en
---------------------------------------------------------------------- */
  #contents.en .sightseeing__txt {
    text-align: left;
  }
  /* header・mv
---------------------------------------------------------------------- */
  #inbound #mainheader .scroll_logo {
    display: none;
  }
  #mainvisual {
    height: calc(100vh - 16vw);
  }
  #mainvisual .mvslide {
    height: calc(100vh - 16vw);
  }
  #mainvisual .catch .catch_img {
    width: 1000px;
  }
  #mainvisual .catch {
    height: calc(100vh - 16vw);
    margin: 0 auto;
    justify-content: center;
  }
  #mainvisual .mvslide li picture {
    height: calc(100vh - 16vw);
  }
  #inbound .footer__logoWrap {
    display: flex;
  }
  #inbound .footer__logo {
    width: 56px;
    flex-shrink: 0;
    margin: 0 15px 0 0;
  }
  #inbound .footer__address {
    font-size: 1.4rem;
  }
  #inbound .footer__address span {
    display: block;
    font-size: 21px;
    font-weight: bold;
    letter-spacing: 0.025em;
  }
  #inbound .footer__address span.address2 {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
  }
  .btn__official {
    color: #231815;
    font-family: 'Shippori Mincho', serif;
    height: 46px;
    background: linear-gradient(#e0e5d1 0%, #d9dec9 17.02%, #c5ccb5 42.22%, #a6af95 72.33%, #848f71 100%);
    display: block;
    font-size: 20px;
    padding: 10px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: 1.6rem;
    cursor: pointer;
    font-weight: bold;
    transition: height 0.3s;
    margin-top: 20px;
  }
  .intro {
    background: #231815;
    position: relative;
  }
  /* about
---------------------------------------------------------------------- */
  .about {
    padding: 60px 0;
    display: flex;
    align-items: center;
    position: relative;
  }
  .about__img {
    position: absolute;
    top: 00px;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .about__inr {
    position: relative;
    color: #fff;
  }
  .about__content {
    font-family: 'Shippori Mincho', serif;
    text-align: center;
  }
  .about__ttl {
    font-size: 2.4rem;
    letter-spacing: 0.2em;
    margin-bottom: 30px;
  }
  .about__txt {
    text-align: center;
  }
  /* common
---------------------------------------------------------------------- */
  .inbound__sec {
    padding: 90px 0;
  }
  .inbound__sec .ctitle2 {
    margin-bottom: 15px;
  }
  .inbound__ttl {
    font-size: 2.8rem;
    letter-spacing: 0.2em;
    margin-bottom: 15px;
    font-weight: bold;
  }
  .inbound__txt {
    margin-bottom: 60px;
  }
  .inbound__img {
    margin-bottom: 15px;
    aspect-ratio: 1 / 0.527;
  }
  .inbound__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .inbound__list {
    display: flex;
    flex-direction: column;
    gap: calc(70 / 750 * 100vw) 4vw;
  }
  #restaurant .inbound__list {
    gap: 0;
  }
  /* restaurant
---------------------------------------------------------------------- */
  #restaurant {
    background-color: #F5F0E9;
  }
  #breakfast {
    margin-bottom: 35px;
  }
  .restaurant {
    padding: calc(100 / 750 * 100vw) 0 calc(50 / 750 * 100vw) 0;
    padding-left: 0;
    display: flex;
    flex-direction: column-reverse;
  }
  .restaurant:last-of-type {
    padding-bottom: 0;
  }
  .restaurant__img {
    margin-bottom: 20px;
    aspect-ratio: 1 / 0.6;
    margin-bottom: 20px;
  }
  .restaurant__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .restaurant__content {
    position: relative;
    padding: 5vw 0;
  }
  .restaurant .ctitle {
    margin-bottom: 20px;
  }
  .restaurant__txt {
    margin-bottom: 20px;
  }
  .restaurant dl {
    margin-bottom: 20px;
  }
  .restaurant dl dt {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }
  .restaurant dl dt::before {
    content: "";
    width: 5px;
    height: 5px;
    margin-right: 5px;
    background-color: #231815;
  }
  .restaurant__note {
    margin-bottom: 20px;
  }
  /* sightseeing
---------------------------------------------------------------------- */
  #sightseeing {
    background-color: #F5F0E9;
  }
  .sightseeing__ttl {
    font-size: 2.4rem;
    font-weight: 500;
    margin-bottom: 40px;
    padding-bottom: 15px;
    position: relative;
  }
  .sightseeing__ttl::after, .sightseeing__ttl::before {
    content: "";
    position: absolute;
    bottom: 0;
  }
  .sightseeing__ttl::before {
    width: 100%;
    height: 1px;
    background-color: #B2B2B2;
    z-index: 1;
    left: 0;
  }
  .sightseeing__ttl::after {
    width: 105px;
    height: 1px;
    background-color: #000000;
    z-index: 1;
    transition: width 0.3s;
    right: 0;
  }
  .sightseeing__ttl span {
    display: flex;
    align-items: center;
  }
  .sightseeing__ttl span::before {
    content: "";
    display: block;
    width: 21px;
    height: 21px;
    background-color: #231815;
    margin-right: 15px;
    margin-bottom: -5px;
  }
  .sightseeing__wrap:hover .sightseeing__ttl::after {
    width: 100%;
  }
  .sightseeing__wrap {
    position: relative;
    padding: 80px 0 20px;
  }
  .sightseeing__wrap:first-of-type {
    padding-top: 40px;
  }
  .sightseeing__list {
    display: grid;
    gap: calc(100 / 750 * 100vw) 2vw;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  }
  .sightseeing__list li {
    display: flex;
    flex-direction: column;
  }
  .sightseeing__img {
    aspect-ratio: 1 / .744;
    margin-bottom: 10px;
  }
  .sightseeing__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .sightseeing__name {
    font-size: 2.1rem;
    line-height: 1.62;
  }
  .sightseeing__txt {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.62;
    flex: 1;
  }
  /* access
---------------------------------------------------------------------- */
  #access {
    text-align: center;
  }
  .map__wrap {
    aspect-ratio: 2/1;
  }
  .map__wrap iframe {
    width: 100%;
    height: 100%;
  }
  /*    
.howtoaccess__roop {
        padding-top: 100px;

        &:first-of-type {
            padding-top: 70px;
        }
    }

    .howtoaccess__ttlWrap {
        margin-bottom: 20px;
    }

    .howtoaccess__ttl {
        font-weight: 500;
        @include font_style_sp(24, false, false);
        letter-spacing: 0.2em;
        line-height: 1.4;
        margin-bottom: 20px;

        span {
            display: block;
            color: #898989;
            @include font_style_sp(18, false, false);
            letter-spacing: 0.05em;
            font-weight: bold;
            font-family: 'Cormorant Garamond', serif;
        }
    }

    .howtoaccess__btn {
        color: #1E1E1E;
        font-weight: 500;
        border-radius: 2px;
        width: 330px;
        max-width: 100%;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        border: 1px solid #D3D3D3;

        &::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 5vw;
            display: block;
            border-bottom: solid 1px #333333;
            border-right: solid 1px #333333;
            width: 5px;
            height: 5px;
            transform: rotate(-45deg) translateY(-50%);
            transition: right 0.3s;
        }
    }

    .howtoaccess__btn:hover::after {
        right: 15px;
    }
*/
  /* reservation
---------------------------------------------------------------------- */
  #reservation {
    padding: 90px 0 112px;
    margin-top: -10px;
    border-top: 1px solid #D3C2B8;
  }
  .reservation__ttl {
    color: #231815;
    text-align: center;
    font-size: 3.3rem;
    margin-bottom: 40px;
  }
  .reservation__btn {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    color: #231815;
    display: flex;
    font-weight: 600;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 60px;
    font-family: 'Shippori Mincho', serif;
    border-radius: 3px;
    background: linear-gradient(#f5f0e9 0%, #eee8e1 26.97%, #ddd4cd 66.78%, #cabfb8 100%);
  }
  .reservation__btn span {
    position: relative;
  }
  .reservation__btn span::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -55px;
    display: block;
    border-bottom: solid 1px #333333;
    border-right: solid 1px #333333;
    width: 5px;
    height: 5px;
    transform: rotate(-45deg) translateY(-50%);
    transition: right 0.3s;
  }
}
/*# sourceMappingURL=style.css.map */