@charset "UTF-8";
/* ==============================
loading
=============================== */
#loading {
    width: 100%;
    height: 100vh;
    transition: all 0.4s;
    background-color: #000;
    z-index: 100;
}

.prog-bar {
    width: 232px;
    height: 1px;
    background:#eee;	
    display: flex;
    /* justify-content: center;
    align-items: center; */
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.bar {
    display: inline-block;
    width: 232px;
    height: 1px;
    background-color: #fff;
    animation: progress 2s normal forwards;
    animation-fill-mode: forwards;
}

/* animation */
@keyframes progress {
	0% {width: 0}
	100% {width: 100%}
}

/* end of loading */
.loaded {
    display: none;
}

/* fade in container */
.container {
    display: none;
}

.container.open {
    display: block;
}


/* loading pc */
@media screen and (min-width:769px) {
    .prog-bar {
        width: 807px;
        height: 1px;
    }
    
    .bar {
        width: 807px;
        height: 1px;
    }
}

/* header pc */
@media screen and (min-width: 769px) {
    .nav__item--main:first-of-type {
        display: none;
    }
}


/* ==============================
main
=============================== */
/* article header */
.mainImg .mainImg__pc {
    display: none;
}

.mainImg__sp {
    display: none;
}

.mainvisual {
    height: 100vh;
    width: 100%;
    background: url(../images/mainvisual.png);
    position: relative;
    background-position: 50% -60px;
    background-repeat: no-repeat;
    background-size: cover;
}

#firstView {
    height: 100vh;   /* ※非対応ブラウザ対策 */
    height: calc(var(--vh) * 100);
}


.textbox1 {
    /* position: absolute;
    right: 9.4%;
    left: 48.6%;
    width: 375px; */
    padding: 0 6%;
    text-align: right;
}

.mainTopics {
    /* width: 375px; */
    /* padding: 79px 0 90px; */
    /* padding: 0 9%; */
    height: 550px;
    margin: 66px 0 86px;
    
}

/* .mainTopics {
    padding: 86px 9.4% 55px;
    text-align: right;
} */

.wrap__box--room {
    text-align: center;
}

.mainTopics__name span {
    color: #615B54;
    font-family: "Cardo";
    font-size: 1rem;
    line-height: 10px; 
    letter-spacing: 0.08em;
    height: 200px;
    text-align: left;
}

.mainTopics__name {
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.5em; 
    letter-spacing: 1em;
    height: 200px;
    text-align: left;
}

.textbox2 {
    /* position: absolute;
    width: 375px; */
    text-align: center;
    /* left: 20%; */
    /* right: 9.8%; */
    /* padding: 0 1.5%; */
    margin-top: 20px;
}

.mainTopics__txt {
    display: inline-block;
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;   
    height: 380px;
    /* width: 375px; */
    font-size: 1.4rem;
    line-height: 2em; 
    letter-spacing: 0.35em;
    text-align: left;
}

/* .mainTopics__txt {
    display: inline-block;
    margin: 50px 0 auto;
    margin-top: 50px;
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;   
    font-size: 1.4rem;
    line-height: 15px;
    line-height: 2em; 
    letter-spacing: 0.35em;
} */

.nav__btn {
    display: none;
}

/* article header */
@media screen and (min-width:769px) {

.mainImg .mainImg__pc {
    display: none;
}

.mainImg .mainImg__sp {
    display: none;
}

.mainvisual {
    height: 100vh;
    width: 100%;
    background: url(../images/mainvisual__pc.png);
    position: relative;
    background-position: 0 -10px;
    background-repeat: no-repeat;
    background-size: cover;
}

.textbox1 {
    position: absolute;
    /* right: 23.9%;
    left: 66.2%; */
    width: 1440px;
    padding: 0 23.9%;
    text-align: right;
}

.mainTopics {
    width: 1440px;
    padding: 174px 0;
    height: 921px;
}

.wrap__box--room {
    text-align: center;
}

.mainTopics__name span {
    display: inline-block;
    height: 573px;
    font-size: 1.6rem;
    line-height: 10px; 
    letter-spacing: 0.08em;
}

.mainTopics__name {
    display: inline-block;
    height: 573px;
    font-size: 2.8rem;
    line-height: 2em; 
    letter-spacing: 0.5em;
    margin-left: 0;
}

.spBr {
    display: none;
}

.textbox2 {
    position: absolute;
    left: 16.9%;
    /* width: 1440px; */
    margin-top: 88px;
}

.mainTopics__txt {
    display: inline-block;
    height: 573px;
    font-size: 1.9rem;
    line-height: 2.5em; 
    letter-spacing: 0.35em;
}
}
/* pc 769px */

/* room */
.room__content {
    padding: 0 9%;
    /* margin: 0 auto; */
}

.room__img {
    margin-top: 10px;
    width: 100%;
    height: 182px;
    object-fit: cover;
}

.room__topic {
    display: inline-block;
    margin: 43px auto 0;
    /* margin-top: 43px; */
    font-size: 1.5rem;
    line-height: 2em; 
    text-align: left;
}

.room__txt {
    margin-top: 21px;
    font-size: 1.4rem;
    line-height:  2em; 
    letter-spacing: 0.07em;
}

/* ==============================
slick
=============================== */
.slick-slider {
    overflow: hidden;
    margin: 45px auto 0;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slider__item {
    margin: 0 15px;
    position: relative;
}

.slider__item img {
    width: 100%;
    height: 180vw; 
    max-height: 400px; 
    min-height: 350px;
    object-fit: cover;
}

#text__slider{
    margin: -60px auto 0;
    padding: 0 9%;
    /* text-align: center;  */
}

.slider__txt {
    color: #282828;
    font-size: 1.1rem;
    line-height: 1.9em; 
    letter-spacing: 0.05em;
}

.slider__txt span {
    display: block;
    color: rgba(102, 102, 102, 0.73);
    font-family: Inter;
    font-size: 0.5em;
    line-height: 1em; 
    letter-spacing: 0.1em;
}

.dots-wrap {
    display: flex;
    justify-content: center;
    margin-top: 75px;
    /* padding: 0 0 0 7.5%; */
}

.dots-wrap li {
    width: 42px;
    height: 1px;
    margin: 0;
    background: #cfccc3;
    cursor: pointer;
}

.dots-wrap li:hover,
.dots-wrap li.slick-active {
    background: #615B54;
}
.dots-wrap li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}

/* .slick-slider pc */
@media screen and (min-width:769px) {
    .slick-slider {
        margin: 115px auto 0;
        padding: 0 7.5%;
    }

    .slider__item {
        margin: 0 40px;
    }

    .slider__item img {
        width: 100%;
        height: 100vw; 
        max-height: 540px; 
        min-height:520px;
        object-fit: cover;
    }

    #text__slider{
        margin: -80px auto 0;
        padding: 0 -1%;
        
    }

    .slider__txtbox {
        text-align: center; 
        /* padding-left: 0 2.7%; */
    }
    
    .slider__txt {
        display: inline-block;
        font-size: 1.6rem;
        line-height: 1.8em; 
        letter-spacing: 0.2em;
        text-align: left; 
        margin-right: 250px;
    }
    
    .slider__txt span {
        font-size: 1.2rem;
        line-height: 2.1em; 
        letter-spacing: 0.03em;
    }


    .arrow__box {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        margin: -25px 0;
        padding: 0 7.5% 0 0;
        position: relative;
    }

    .prev-arrow,
    .next-arrow {
        display: block;
        width: 65px;
        height: 65px;
        background: #fff;
        border: 1px solid  #615B54;
        border-radius: 50%;
        transition: all .3s ease;
        cursor: pointer;
        position:relative;
    }

    .prev-arrow {
        transform: rotate(180deg);
        margin-right: 20px;
    }
    
    .prev-arrow::before,
    .next-arrow::before{
        position:absolute;
        content: "";
        width:5px;
        height:5px;
        border-right: 1px solid  #615B54;
        border-top: 1px solid  #615B54;
        top:0;
        bottom:0;
        left:7px;
        right:0;
        margin:auto;
        transform:rotate(45deg);
    }

    .prev-arrow::after,
    .next-arrow::after{
        position:absolute;
        content: "";
        width:15px;
        height:1px;
        background:  #615B54;
        top:0;
        bottom:0;
        left:0;
        right:0;
        margin:auto;
    }

    .dots-wrap {
        display: flex;
        justify-content: flex-start;
        margin-top: 100px;
        /* padding: 0 0 0 7.5%; */
    }
    
    .dots-wrap li {
        width: 130px;
    }
}
/* slick slider pc 769px */

/* room pc */ 
@media screen and (min-width:769px) {
.room__content {
    padding: 0;
    max-width: 570px;
    margin: 0 auto;
}

.room__topic {
    margin-top: 115px;
    font-size: 2.4rem;
    line-height: 2em; 
    text-align: center;
}

.room__txt {
    margin-top: 69px;
    font-size: 1.5rem;
    line-height: 2.5em; 
    letter-spacing: 0.08em;
    /* text-align: center; */
}

.room__img {
    width: 100%;
    height: 678px;
    object-fit: cover;
}
}
/* pc 769px */


/* hotspring */
.section--hotspring {
    padding: 82px 0 68px;
}

.hotspring__img {
    margin-top: 10px;
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.hotspring__content {
    padding: 0 9%;
}

.hotspring__topic {
    display: inline-block;
    margin: 43px auto 0;
    /* margin-top: 43px; */
    font-size: 1.5rem;
    line-height: 2em; 
    text-align: left;
}

.hotspring__txt {
    margin-top: 21px;
    font-size: 1.4rem;
    line-height:  2em; 
    letter-spacing: 0.07em;
}


/* hotspring pc */ 
@media screen and (min-width:769px) {
    .section--hotspring {
        padding: 150px 0 55px 7.5%;
    }

    .hotspring__group {
        display: flex;
        justify-content: space-between;
        max-width: 1333px;
        margin-left: auto;
    }

    .hotspring__img {
        order: 2;
        max-width: 744px;
        height: 520px;
        object-fit: cover;
        z-index: -100;
    }

    .hotspring__content {
        order: 1;
        padding: 0 0;
        max-width: 323px;
    }

    .hotspring__topic {
        margin-top: 115px;
        font-size: 2.4rem;
        line-height: 2em; 
        text-align: left;
    }
    
    .hotspring__txt {
        margin-top: 90px;
        font-size: 1.5rem;
        line-height:  2.5em; 
        letter-spacing: 0.06em;
    }
}  
/* pc 769px */

/* restaurant */
.section--restaurant {
    padding: 82px 0 68px;
    background-color: #F3F3F3;
}

.restaurant__img {
    margin-top: 10px;
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.restaurant__content {
    padding: 0 9%;
}

.restaurant__topic {
    display: inline-block;
    margin: 43px auto 0;
    /* margin-top: 43px; */
    font-size: 1.5rem;
    line-height: 2em; 
    text-align: left;
}

.restaurant__txt {
    margin-top: 21px;
    font-size: 1.4rem;
    line-height:  2em; 
    letter-spacing: 0.07em;
}

/* btn */
.detail__btn--restaurant {
    display: block;
    font-size: 1.1rem;
    line-height: 1.45em; 
    letter-spacing: 0.07em;
    position: relative;
    margin-top: 33px;
    padding: 0 22.6%;
}

.detail__btn--restaurant::before {
    content: '';
    display: inline-block;
    width: 70px;
    height: 1px;
    background: #282828;
    margin-right: 8px;
    
}

.detail__btn--restaurant::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 5px;
    bottom: -21px;
    left: 124.5px;
    width: 5px; 
    border-top: 0.5px solid #282828;  
    transform: rotate(45deg); 
}

.detail__btn--restaurant:hover {
    color: #615B54;
}

/* restaurant pc */
@media screen and (min-width:769px) {
    .section--restaurant {
        padding: 99px 7.5% 55px 0;
    }

    .restaurant__group {
        display: flex;
        justify-content: space-between;
        max-width: 1333px;
        margin-right: auto;
    }

    .restaurant__img {
        max-width: 744px;
        height: 520px;
        object-fit: cover;

    }

    .restaurant__content {
        padding: 0 0;
        max-width: 323px;
    }

    .restaurant__topic {
        margin-top: 115px;
        font-size: 2.4rem;
        line-height: 2em; 
        text-align: left;
    }
    
    .restaurant__txt {
        margin-top: 90px;
        font-size: 1.5rem;
        line-height:  2.5em; 
        letter-spacing: 0.06em;
    }

    /* btn */
    .detail__btn--restaurant {
        display: block;
        font-size: 1.6rem;
        line-height: 1em; 
        letter-spacing: 0.05em;
        position: relative;
        margin-top: 60px;
        padding: 0 0;
    }

    .detail__btn--restaurant::before {
        content: '';
        display: inline-block;
        width: 168px;
        height: 1px;
        background: #282828;
        margin-right: 30px;
        
    }

    .detail__btn--restaurant::after {
        content: '';
        display: inline-block;
        position: absolute;
        top: 5.5px;
        bottom: -21px;
        left: 149px;
        width: 9px; 
        border-top: 1px solid #282828;  
        transform: rotate(45deg); 
    }
}

/* pc 769px */

/* news */
.section--news {
    padding: 82px 0 68px;
}

.news__list {
    margin: 32px 0 29px 0;
    padding: 0 5%;
}

.news__item {
    border-top: 1px solid #CCC;
    padding: 15px 0 12px;
}

.news__item:last-of-type {
    border-bottom: 1px solid #CCC;
}

.news__item time {
    font-family: "Inter";
    font-size: 0.8rem;
    font-weight: 300;
    line-height: 2.26em;
    letter-spacing: 0.03em;
}

.news__txt {
    font-family: "Inter";
    font-size: 1.1rem;
    line-height: 2.3em; 
    letter-spacing: 0.01em;
}

/* btn */
/* .detail__btn--news {
    display: block;
    font-size: 1.1rem;
    line-height: 1.45em; 
    letter-spacing: 0.07em;
    position: relative;
    margin-top: 33px;
    padding: 0 27.6%;
}

.detail__btn--news::before {
    content: '';
    display: inline-block;
    width: 70px;
    height: 1px;
    background: #282828;
    margin-right: 8px;
    
}
.detail__btn--news::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 5px;
    bottom: -21px;
    left: 158.5px;
    width: 5px; 
    border-top: 0.5px solid #282828;  
    transform: rotate(45deg); 
}

.detail__btn--news:hover {
    color: #615B54;
} */

/* news pc */
@media screen and (min-width:769px) {
    .section--news {
        padding: 174px 0;
    }

    .news__list {
        max-width: 1244px;
        margin: 91px auto 0;
    }

    .news__item {
        display: flex;
        align-items: center;
        border-top: 1px solid #CCC;
        padding: 29px 0 35px;
    }

    .news__item time {
        font-size: 1.2rem;
        line-height: 1.5em;
        letter-spacing: 0.02em;
        }

    .news__txt {
        font-size: 1.4rem;
        line-height: 1.8em; 
        letter-spacing: 0.07em;
        margin-left: 51px;
    }

    /* btn */
    /* .detail__btn--news {
        display: block;
        font-size: 1.6rem;
        line-height: 1em; 
        letter-spacing: 0.05em;
        position: relative;
        margin-top: 60px;
        padding: 0 20.5%;
        text-align: center;
    }

    .detail__btn--news::before {
        content: '';
        display: inline-block;
        width: 168px;
        height: 1px;
        background: #282828;
        margin-right: 30px;
        
    }

    .detail__btn--news::after {
        content: '';
        display: inline-block;
        position: absolute;
        top: 5px;
        bottom: -20px;
        left: 725px;
        width: 9px; 
        border-top: 1px solid #282828;  
        transform: rotate(45deg); 
    } */
}
/* pc 769px */

/* access */
.section--access {
    padding: 82px 0;
    background: #F3F3F3;
}

.map {
    margin-top: 32px;
    width: 100%;
    height: 184px;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}

.access__detail {
    /* margin-top: 23px; */
    padding: 23px 9% 0;
}

.address {
    font-family: "Inter";
    font-size: 1.3rem;
    font-weight: 300;
    line-height: 1.93em; 
    letter-spacing: 0.12em;
}

.directions__item {
    margin-top: 26px;
}

.directions__topic {
    font-size: 1.7rem;
    line-height: 1.5em; 
}

.directions__txt {
    font-family: "Inter";
    font-size: 1.1rem;
    font-weight: 300;
    line-height: 2.18em; 
    letter-spacing: 0.1em;
    margin-top: 4px;
}

.directions__item:last-of-type {
    margin-top: 23px;
}

/* access pc */
@media screen and (min-width:769px) {
    .section--access {
        padding: 174px 0;
    }

    .map {
        margin-top: 91px;
        width: 100%;
        height: 457px;
    }

    .access__detail {
        max-width: 1244px;
        display: flex;
        justify-content: space-between;
        margin: 55px auto 0;
        padding: 0;
    }

    .address {
        font-size: 1.6rem;
        line-height: 2.18em; 
        letter-spacing: 0.06em;
    }

    .directions {
        width: 57.4%;
        display: flex;
        justify-content: space-between;
    }

    .directions__item {
        margin-top: 0;
        width: 45.7%;
    }

    .directions__topic {
        font-size: 2rem;
        line-height: 1em; 
    }
    
    .directions__txt {
        font-size: 1.4rem;
        line-height: 1.48em; 
        letter-spacing: 0.07em;
        margin-top: 25px;
    }
    

    .directions__item:last-of-type {
        margin-top: 0;
    }
}
/* pc 769 px */

/*==========================
fadeIn
==========================*/
.fadeIn {
    transform: translate(0, 50px);
    opacity: 0;
    transition: 0.8s;
}

.fadeIn.animated {
    transform: translate(0, 0);
    opacity: 1;
}
