@charset "UTF-8";

/* フッターエリア
***************************************************************/
/* scrollTop */
.foot {
    position: relative;
}

.scrollTop {
    display: flex;
    align-items: flex-end;
    width: 41px;
    height: 108px;
    padding: 0 15px;
    position: absolute;
    top: -174px;
    right: 26px;
}

.scrollTop::before {
    content: "";
    width: 1px;
    height: 76px;
    background-color: #1D211E;
    position: absolute;
    top: 0;
    left: 20px;
    transition: height 0.3s ease;
}

.scrollTop::after {
    content: "";
    width: 1px;
    height: 10px;
    background-color: #1D211E;
    position: absolute;
    top: 0;
    left: 24px;
    transform: rotate(-45deg);
}

.scrollTop .scrollImg,
.scrollTop .scrollImg img {
    width: 100%;
}

/* f_conversion */
.f_conversion {
    width: 100%;
    display: flex;
}

.f_conversion>li {
    width: 50%;
}

.f_conversion>li a {
    width: 100%;
    height: 158px;
    font-size: 25px;
    font-weight: 500;
    background-color: #E7EAE9;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.f_conversion>li a::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 36px;
    margin: auto;
    width: 16px;
    height: 16px;
    border-right: 2px solid #1D211E;
    border-bottom: 2px solid #1D211E;
    transform: rotate(-45deg);
    transition: border 0.3s ease;
}

.f_conversion>li a .in {
    padding-left: 54px;
    position: relative;
}

.f_conversion>li a .in::after {
    content: "";
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-image: url(../../img/common/ico_event01.svg);
    width: 37px;
    height: 36px;
}

.f_conversion>li.li2 a {
    background-color: #C4C4C4;
    /* color: #fff; */
}

.f_conversion>li.li2 a::after {
    /* border-right: 2px solid #fff;
  border-bottom: 2px solid #fff; */
}

.f_conversion>li.li2 a .in {
    padding-left: 64px;
}

.f_conversion>li.li2 a .in::after {
    background-image: url(../../img/common/ico_contact01.svg);
    width: 42px;
    height: 30px;
}

.front_conversion {
    display: flex;
    align-items: center;
    gap: 1.45%;
}
.front_conversion_left {
    width: 55.5%;
    height: 480px;
    background-color: #A8A8A8;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
}
.front_conversion_box {
    width: 110px;
    height: 110px;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 22px;
    position: absolute;
    top: 23px;
    left: calc(50% - 386px);
}
.front_conversion_left_ttl {
    font-size: 22px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 30px;
}
.front_conversion_left_item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin: 29px auto 26px auto;
}
.front_conversion_left_item_img {
    width: 262px;
    height: 218px;
}
.front_conversion_left_item_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.front_conversion_left_item_cont {
    width: 322px;
}
.front_conversion_left_item_txt {
    font-size: 15px;
    line-height: 28px;
    letter-spacing: 0;
}
.front_conversion_left_item_list {
    display: flex;
    flex-direction: column;
    margin-top: 21px;
    padding-left: 34px;
    gap: 10px;
}
.front_conversion_left_item_list_item {
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0;
    font-weight: 500;
    position: relative;
}
.front_conversion_left_item_list_item::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -34px;
    width: 24px;
    height: 24px;
    background-image: url(../../img/common/ico_check.svg);
}
.front_conversion_left_btn {
    display: flex;
    align-items: center;
    gap: 12px;
}
.front_conversion_left_btn_btn {
    width: 300px;
    height: 53px;
    background-color: rgba(29, 33, 30, 0.6);
    border: 1px solid #fff;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 26px;
    position: relative;
    transition: background-color 0.3s ease, border 0.3s ease;
}

.front_conversion_left_btn_btn:hover {
    background-color: #1D211E;
    border: 1px solid #1D211E;
}
.front_conversion_left_btn_btn::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    width: 12px;
    height: 12px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
    transition: border 0.3s ease;
}

.front_conversion_left_btn_btn.mail::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 67px;
    width: 21px;
    height: 15px;
    background-image: url(../../img/common/ico_contact01_w.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.front_conversion_right {
    height: 480px;
    width: 41.6%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.front_conversion_right_item {
    position: relative;
    height: 230px;
    display: block;
}

.front_conversion_right_img {
    display: block;
}
.front_conversion_right_img::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    transition: background-color 0.3s ease;
}
.front_conversion_right_img:hover::after {
    background-color: rgba(64, 85, 100, 0.5);
}
.front_conversion_right_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.front_conversion_right_item_cont {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: absolute;
    top: 33px;
    right: 5%;
}
.front_conversion_right_item_ttl {
    text-align: center;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.01em;
}
.front_conversion_right_item_txt {
    text-align: center;
    color: #fff;
    font-size: 18px;
    line-height: 27px;
    letter-spacing: 0;
    font-weight: 400;
}
.front_conversion_right_item_btn {
    height: 17px;
    position: absolute;
    bottom: 29px;
    right: 2%;
}
.front_conversion_right_item_btn img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.front_conversion_right_cont {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.front_conversion_right_txt {
    text-align: center;
    font-size: 18px;
}
.front_conversion_right_event {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 17px;
    background-color: #E7EAE9;
}
.front_conversion_right_event:hover {
    background-color: #5B5E62;
    color: #fff;
}
.ico_flag {
    width: 30px;
    height: 30px;
    background-image: url(../../img/common/ico_flag01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: background-image 0.3s ease;
}
.front_conversion_right_event:hover .ico_flag {
    background-image: url(../../img/common/ico_flag01_w.svg);
}


/* fNav */
.fNav {
    margin: 90px 0 0;
    display: flex;
    justify-content: center;
}

.fNav .in {
    border-right: 1px solid #707070;
    padding: 0 30px;
}

.fNav .in:last-child {
    border-right: none;
}

.fNav .tit1 {
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 5px;
    color: #666464;
}

.fNav .ul1 .li1 {
    font-size: 13px;
}

.fNav .ul1 .li1+.li1 {
    margin-top: 5px;
}

.fNav .ul1 .li1 a {
    display: block;
    padding-left: 12px;
    position: relative;
    color: #666464;
}

.fNav .ul1 .li1 a::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 6px;
    height: 6px;
    border-right: 1px solid #666464;
    border-bottom: 1px solid #666464;
    transform: rotate(-45deg);
    transition: border 0.3s ease;
}

.fNav .ul1 .li2 {
    font-size: 13px;
    margin-top: 5px;
}

.fNav .ul1 .li2+.li2 {
    margin-bottom: 5px;
}

.fNav .ul1 .li2 a {
    display: block;
    padding-left: 12px;
    position: relative;
    color: #666464;
}

.fNav .ul1 .li3 {
    font-weight: 500;
    font-size: 13px;
}

.fNav .ul1 .li3 a {
    display: block;
    color: #666464;
    margin-top: 5px;
}

.fNav .ul1 .li4 {
    font-weight: 500;
    font-size: 13px;
}

.fNav .ul1 .li4 a {
    display: block;
    color: #666464;
    margin-top: 20px;
}

.fNav .home_btn {
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 5px;
    color: #666464;
    display: block;
}

/* fBox1 */
.fBox1 {
    margin: 80px 0 0;
    color: #666464;
}
.fBox1_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
}
.fBox1_inner .f_slide_item {
    display: block;
    width: 280px;
    height: 240px;
}

.fBox1 .fLogo {
    width: 300px;
    margin: 0 auto;
}

.fBox1 .fLogo a {
    display: block;
}

.fBox1 .fLogo a img {
    width: 100%;
}

.fBanner {
    display: block;
    width: 760px;
    height: 153px;
    margin: 0 auto 64px;
    background-color: #fff;
}

.fBox1 .fTitle {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    margin-top: 30px;
    line-height: 1.5;
    margin-bottom: 5px;
}

.fBox1 .fTitle .s1 {
    font-size: 13px;
    letter-spacing: 0.07em;
}

.fBox1 .fAddress+.fTitle {
    margin-top: 15px;
}

.fBox1 .fAddress {
    font-size: 15px;
    text-align: center;
}

.fBox1 .fAddress .s3 {
    display: block;
}

/* fBox2 */
.fBox2 {
    margin: 50px 0 0;
    color: #666464;
}

.fBox2 .f_contact {
    width: 640px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.fBox2 .f_contact>li {
    width: 300px;
}

.fBox2 .f_contact>li a {
    width: 100%;
    height: 53px;
    padding: 0 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #666464;
    background-color: #fff;
    color: #666464;
    position: relative;
    font-size: 15px;
    font-weight: 500;
    text-align: center;
}

.fBox2 .f_contact>li a::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    width: 8px;
    height: 8px;
    border-right: 1px solid #666464;
    border-bottom: 1px solid #666464;
    transform: rotate(-45deg);
    transition: border 0.3s ease;
}

.fBox2 .f_contact>li a .in {
    position: relative;
    padding-left: 28px;
    padding-right: 7px;
}

.fBox2 .f_contact>li a .in::after {
    content: "";
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-image: url(../../img/common/ico_contact02.svg);
    width: 21px;
    height: 15px;
}

.fBox2 .f_contact>li .hours {
    display: block;
    font-size: 12px;
    letter-spacing: 0;
    font-weight: 500;
    text-align: center;
    margin-top: 8px;
}

.fBox2 .f_contact>li.li1 a {
    font-size: 20px;
}

.fBox2 .f_contact>li.li1 a::after {
    display: none;
}

.fBox2 .f_contact>li.li1 a .in {
    padding-right: 0;
}

.fBox2 .f_contact>li.li1 a .in::after {
    left: 0;
    background-image: url(../../img/common/ico_tel01.svg);
    width: 22px;
    height: 22px;
}

/* fBox3 */
.fBox3 {
    padding: 45px 0 60px;
    color: #666464;
}

.fBox3 .in {
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.fBox3 .snsList {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 580px;
    right: 0;
    margin: auto;
}

.fBox3 .snsList li {
    width: 50px;
    padding: 0 10px;
}

.fBox3 .snsList li a {
    width: 100%;
    display: flex;
}

.fBox3 .cRight {
    font-size: 10px;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: 500;
}

@media all and (min-width: 681px) {

    /* scrollTop */
    .scrollTop:hover::before {
        height: 66px;
    }

    /* f_conversion */
    .f_conversion>li a:hover {
        background-color: #5B5E62;
        color: #fff;
    }

    .f_conversion>li a:hover::after {
        border-color: #fff;
    }

    .f_conversion>li a .in::after {
        /* transition: background-image 0.3s ease; */
    }

    .f_conversion>li.li1 a:hover .in::after {
        background-image: url(../../img/common/ico_event01_w.svg);
    }

    .f_conversion>li.li2 a:hover .in::after {
        background-image: url(../../img/common/ico_contact01_w.svg);
    }

    /* fNav */
    .fNav .ul1 .li1 a:hover,
    .fNav .ul1 .li2 a:hover,
    .fNav .ul1 .li3 a:hover,
    .fNav .ul1 .li4 a:hover,
    .fNav .home_btn:hover {
        opacity: 0.7;
    }

    /* fBox1 */
    .fBox1 .fLogo a:hover {
        opacity: 0.7;
    }

    .fBox1 .fBanner {
        background: url(../../img/common/roomtour_banner.png)no-repeat center / cover;
        border-top: 1px solid #666464;
        border-bottom: 1px solid #666464;
        transition: 0.3s;
    }

    .fBox1 .fBanner:hover {
        background-image: url(../../img/common/roomtour_banner_hover.png);
        background-color: #666464;
    }

    /* fBox2 */
    .fBox2 .f_contact>li a:hover {
        background-color: #C4C4C4;
        border-color: #C4C4C4;
    }

    /* fBox3 */
    .fBox3 .snsList li a:hover {
        opacity: 0.7;
    }
}

@media all and (max-width:680px) {
    .fBox1_inner {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 9px;
    }
    .fBox1_inner.slick-dotted.slick-slider {
        margin-bottom: 80px;
        margin-top: 50px;
    }
    .fBox1_inner .f_slide_item {
        display: block;
        padding: 0 10px;
        height: auto;
    }

    .fBox1_inner .slick-dots li button:before {
        font-size: 11px;
    }

    .fBox1_inner .slick-dots li {
        margin: 0 1px;
    }

    .fBox1_inner .slick-dots {
        bottom: -30px;
    }



    /* f_conversion */
    .f_conversion {
        display: block;
    }

    .f_conversion>li {
        width: 100%;
    }

    .f_conversion>li a {
        height: 112px;
        font-size: 17px;
    }

    .f_conversion>li a::after {
        right: 18px;
        width: 12px;
        height: 12px;
    }

    .f_conversion>li a .in {
        padding-left: 40px;
    }

    .f_conversion>li a .in::after {
        width: 28px;
        height: 27px;
    }

    .f_conversion>li.li2 a .in {
        padding-left: 44px;
    }

    .f_conversion>li.li2 a .in::after {
        width: 32px;
        height: 23px;
    }

    .front_conversion {
        flex-direction: column;
        gap: 7px;
    }
    .front_conversion_left {
        width: 92%;
        height: 600px;
    }
    .front_conversion_box {
        width: 66px;
        height: 66px;
        font-size: 16px;
        letter-spacing: 0.01em;
        line-height: 19px;
        top: 87px;
        left: 10px;
    }
    .front_conversion_left_ttl {
        text-align: center;
        font-size: 18px;
        line-height: 28px;
    }
    .front_conversion_left_item {
        flex-direction: column;
        gap: 13px;
        margin: 21px auto 24px auto;
    }
    .front_conversion_left_item_img {
        width: 90%;
        height: 168px;
    }
    .front_conversion_left_item_cont {
        width: 90%;
    }
    .front_conversion_left_item_list {
        display: flex;
        flex-direction: column;
        margin-top: 21px;
        padding-left: 34px;
        gap: 10px;
    }
    .front_conversion_left_item_list_item {
        font-size: 15px;
        line-height: 20px;
    }
    .front_conversion_left_item_list_item::before {
    }
    .front_conversion_left_btn {
        width: 92%;
        display: flex;
        align-items: center;
        gap: 8px;
    }
    .front_conversion_left_btn_btn {
        width: calc(50% - 4px);
        height: 38px;
        font-size: 13px;
        font-weight: 500;
        line-height: 19px;
    }
    
    .front_conversion_left_btn_btn::after {
        right: 8px;
        width: 10px;
        height: 10px;
    }
    
    .front_conversion_left_btn_btn.mail::before {
        top: 50%;
        transform: translateY(-50%);
        left: 22px;
        width: 15px;
        height: 10px;
    }
    
    .front_conversion_right {
        height: auto;
        width: 92%;
        justify-content: center;
        gap: 6px;
    }
    
    .front_conversion_right_item {
        height: 239px;
    }
    
    .front_conversion_right_img {
    }
    .front_conversion_right_img img {
    }
    .front_conversion_right_item_cont {
    }
    .front_conversion_right_item_ttl {
    }
    .front_conversion_right_item_txt {
    }
    .front_conversion_right_item_btn {
    }
    .front_conversion_right_item_btn img {
    }
    .front_conversion_right_cont {
    }
    .front_conversion_right_txt {
        font-size: 15px;
        line-height: 20px;
        letter-spacing: 0;
        font-weight: 500;
    }
    .front_conversion_right_event {
        flex-direction: row;
        gap: 16px;
        background-color: #E7EAE9;
        position: relative;
        height: 70px;
    }
    .front_conversion_right_event::after {
        content: "";
        display: block;
        background-image: url(../../img/common/ico_arrow03.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 14px;
        width:  38px;
        height: 6px;
    }
    .ico_flag {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 37px;
        width: 25px;
        height: 25px;
    }

    /* fBox1 */
    .fBox1 {
        margin: 60px 0 0;
    }

    .fBox1 .fLogo {
        width: 200px;
    }

    .fBanner {
        width: 300px;
        height: 151px;
        margin: 30px auto 0;
        background: url(../../img/common/roomtour_banner_sp.png)no-repeat center / cover;
    }

    .fBox1 .fTitle {
        margin-top: 30px;
    }

    .fBox1 .fAddress+.fTitle {
        margin-top: 15px;
    }

    .fBox1 .fAddress {
        font-size: 14px;
    }

    .fBox1 .fAddress .s1,
    .fBox1 .fAddress .s2 {
        display: block;
    }

    /* fBox2 */
    .fBox2 {
        margin: 50px 0 0;
    }

    .fBox2 .f_contact {
        width: 100%;
        display: block;
    }

    .fBox2 .f_contact>li {
        margin: 0 auto;
    }

    .fBox2 .f_contact>li+li {
        margin-top: 20px;
    }

    /* fBox3 */
    .fBox3 {
        padding: 35px 0 72px;
    }

    .fBox3 .in {
        height: auto;
        display: block;
    }

    .fBox3 .snsList {
        position: static;
    }

    .fBox3 .cRight {
        margin-top: 30px;
    }
}

@media all and (max-width:370px) {}


/* フッター
***************************************************************/
@media all and (min-width: 681px) {}

@media all and (max-width:680px) {}

@media all and (max-width:370px) {}