@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


html,body {
    margin: 0;
    padding: 0;
    background-color: #DEF5FF;
}

html { scroll-behavior: smooth;}

/* 初期状態は透明にしておく */
.fade-in {
    opacity: 0;
    transition: opacity 1s ease-in;
}

/* 表示時のスタイル */
.show {
    opacity: 1;
}

.wrap {
    max-width: 1440px;
    margin: auto;
    display: block;
}

.wrapsp {
    display: none;
    max-width: 750px;
    margin: auto;
}

img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}

.box {
    position: relative;
}

.fixed {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
}

.slide2 {
    max-width: 100vw;
    overflow: hidden;
}

.slide {
    width: clamp(55.063rem, -0.168rem + 86.3vw, 77.5rem);
    height: clamp(31.063rem, -0.168rem + 48.8vw, 43.75rem);
    border-radius: 80px 0px 0px 0px;
    overflow: hidden;
    background-color: #eee;
    position: absolute;
    top: clamp(4.688rem, 6.94vw, 6.25rem);
    left: clamp(4.688rem, 6.94vw, 6.25rem);

    img {
        object-fit: cover;
        width: clamp(58.125rem, 86.11vw, 77.5rem);
        height: clamp(32.813rem, 48.61vw, 43.75rem);
    }
}

.swiper2 img {
    object-fit: cover;
    height: 100svh;
}

.absolute {
    position: absolute;
    z-index: 1;
}

.menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1111;
    width: clamp(7.313rem, -0.188rem + 11.11vw, 9.813rem);
    cursor: pointer;
}

.logo {
    top: 270px;
    width: clamp(37.5rem, 5.192rem + 50.48vw, 50.625rem);
    z-index: 1;
    right: 0;
}

.copy {
    width: clamp(30.625rem, 7.548rem + 36.06vw, 40rem);
    top: clamp(25.625rem, -0.529rem + 40.87vw, 36.25rem);
    z-index: 1;
}

.more {
    width: clamp(7.688rem, -0.005rem + 12.02vw, 10.813rem);
    bottom: clamp(1.875rem, 0.337rem + 2.4vw, 2.5rem);
}

.more.voguec {
    left: clamp(16.875rem, -0.048rem + 26.44vw, 23.75rem);
}

.more.vogued {
    left: clamp(39.375rem, -0.625rem + 62.5vw, 55.625rem);
}

.gmap {
    background-color: #eee;
    width: clamp(39.625rem, -0.067rem + 62.02vw, 55.75rem);
    height: clamp(17.375rem, -0.163rem + 27.4vw, 24.5rem);
    top: clamp(3.75rem, 0.673rem + 4.81vw, 5rem);
    border-radius: 0px 56.889px 0px 0px;
    overflow: hidden;
}

.gmap iframe {
    width: 100%;
}

.gmapbtn {
    right: clamp(11.813rem, -2.188rem + 21.88vw, 17.5rem);
    top: clamp(19.375rem, 0.913rem + 28.85vw, 26.875rem);
}

.ab {
    top: clamp(30.625rem, -0.144rem + 48.08vw, 43.125rem);
}

.aibc {
    left: clamp(16.875rem, -0.048rem + 26.44vw, 23.75rem);
}

.aibd {
    left: clamp(40rem, 62.5vw, 56.25rem);
}

/* 画面サイズ 600px 未満 */
@media (max-width: 1023px) {
.wrap {
    display: none;
}
.wrapsp {
    display: block;
}
}

.fvsp {
    height: 100svh;
    background-color: #eee;
    position: relative;
}

.fvcpy-box {
    bottom: 4vw;
}

.fvcpy-box img {
    max-width: 95vw;
    margin: auto;
}

.spmenu.absolute {
    top: 0;
    right: 0;
}

.spmenu img {
    width: 77px;
}

.wrapsp .more.voguec,
.wrapsp .more.vogued {

    width: 100%;
    left: 0;

    img {
        width: clamp(10.813rem, 46.13vw, 21.625rem);
        margin: auto;
    }
}

.wrapsp .more.voguec {
    bottom: clamp(31.5rem, 134.4vw, 63rem);
}

.wrapsp .more.vogued {
    bottom: clamp(4.375rem, 18.67vw, 8.75rem);
}

.wrapsp {
    .gmap {
        width: clamp(21.375rem, 91.2vw, 42.75rem);
        height: clamp(12.313rem, -0.063rem + 52.8vw, 24.688rem);
        top: clamp(7.5rem, 32vw, 15rem);
        left: clamp(1.063rem, 4.53vw, 2.125rem);
        overflow: hidden;
    }
    .gmapbtn {
        width: 100%;
        left: 0;
        top: clamp(32.5rem, 138.67vw, 65rem);
    
        img {
            width: clamp(10.813rem, 46.13vw, 21.625rem);
            margin: auto;
        }
    }

    .ab {

        width: 100%;
        left: 0;

        img {
            width: clamp(10.813rem, 46.13vw, 21.625rem);
            margin: auto;
        }

    }
    
    .aibc {
        top: clamp(25.313rem, 108vw, 50.625rem);
    }
    
    .aibd {
        top: clamp(47.5rem, 202.67vw, 95rem);
    }
}

.hiddenpc {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100svh;
    background-color: rgba(186, 226, 241, 0.9);
    z-index: 2;
    padding: 0;

    ul {
        list-style: none;
        margin: 100px auto;
        width: 300px;
        text-align: center;

        li {
            font-size: 24px;
            line-height: 3em;
            font-weight: bold;
            background: #fff;
            margin-bottom: 16px;
            border-radius: 4px;

            a {
                text-decoration: none;
                color: #0091CC;
                font-family: "Noto Sans JP", sans-serif;
            }

            &.close {
                background: #0091CC;
                color: #ffffff;
                cursor: pointer;
                font-size: 20px;
            }
        }
    }
}

.hiddensp {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100svh;
    background-color: rgba(186, 226, 241, 0.9);
    z-index: 2;

    ul {
        list-style: none;
        margin: 100px auto;
        width: 300px;
        text-align: center;
        padding: 0;

        li {
            font-size: 24px;
            line-height: 3em;
            font-weight: bold;
            background: #fff;
            margin-bottom: 16px;
            border-radius: 4px;

            a {
                text-decoration: none;
                color: #0091CC;
                font-family: "Noto Sans JP", sans-serif;
            }

            &.close {
                background: #0091CC;
                color: #ffffff;
                cursor: pointer;
                font-size: 20px;
            }
        }
    }
}