body,
html {
    width: 100%;
    margin: 0;
    padding: 0;
    --vw-base: calc(100vw / 1920);
}

[data-aos="custom-in"] {
    opacity: 0;
    overflow: hidden;
}

[data-aos="custom-in"].aos-animate {
    opacity: 1;
}

[data-aos="custom-in"] img {
    opacity: 0;
    transform: scale(1.1);
    transition: all 2s ease;
}

[data-aos="custom-in"].aos-animate img {
    opacity: 1;
    transform: scale(1);
}



/*全部*/

.main1 {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
    background-color: #eeebe6;
}

.music {
    width: 100%;
    height: 0;
}

.voice {
    width: 2vw;
    z-index: 1001;
    position: fixed;
    right: 2vw;
    bottom: 4.7vw;
    cursor: pointer;
}

.haveVoice,
.noVoice {
    width: 100%;
    position: relative;
}

video {
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
}

.scroll {
    width: 1.4vw;
    position: absolute;
    left: 49.4vw;
    bottom: 1vw;
}

.scroll-li {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.scroll {
    animation: scroll 0.6s infinite alternate;
    transition-timing-function: ease-out;
}

@keyframes scroll {
    0% {
        bottom: 1vw;
    }

    100% {
        bottom: 2vw;
    }
}

.scroll1 {
    animation: scroll1 0.6s ease;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes scroll1 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.scroll2 {
    animation: scroll2 0.6s ease;
    animation-fill-mode: forwards;
    animation-delay: 0.6s;
    opacity: 0;
}

@keyframes scroll2 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.main2 {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.main2-bg {
    width: 23.5vw;
    position: relative;
    z-index: 2;
}

.main2-txt {
    width: 16vw;
    position: absolute;
    left: 6.5vw;
    top: 7.5vw;
    color: #000;
}

.main2-txt h1 {
    font-size: 1.2vw;
    letter-spacing: 0.4vw;
    line-height: 1.4vw;
    margin: 0 0 0 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
}

.main2-txt h2 {
    font-size: 2.8vw;
    letter-spacing: 0.1vw;
    margin: 0 0 0.4vw 0;
    font-weight: normal;
    font-family: "GARNET-CAPITALS-BOLD";
}

.main2-txt h3 {
    font-size: 1vw;
    letter-spacing: 0.4vw;
    line-height: 1.4vw;
    margin: 0 0 0 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
}

.main2-pic-txt {
    position: absolute;
    left: 4.5vw;
    bottom: 1.5vw;
    color: #fff;
    transform: translateY(-1vw);
}

.main2-pic1:hover .main2-pic-txt,
.main2-pic2:hover .main2-pic-txt,
.main2-pic3:hover .main2-pic-txt,
.main2-pic4:hover .main2-pic-txt,
.main2-pic5:hover .main2-pic-txt {
    animation: main2-pic-txt 1.5s ease;
    animation-fill-mode: forwards;
}

@keyframes main2-pic-txt {
    0% {
        transform: translateY(1vw);
    }

    100% {
        transform: translateY(0vw);
    }
}

.main2-pic2 .main2-pic-txt,
.main2-pic3 .main2-pic-txt {
    left: 1.7vw;
}

.main2-pic4 .main2-pic-txt {
    bottom: 2vw;
}

.main2-pic5 .main2-pic-txt {
    left: 1.7vw;
    bottom: 2vw;
}

.main2-pic-txt h2 {
    font-size: 1.4vw;
    letter-spacing: 0.1vw;
    line-height: 1.4vw;
    margin: 0 0 0.4vw 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
}

.main2-pic-txt h4 {
    font-size: 1vw;
    letter-spacing: 0.05vw;
    margin: 0;
    font-weight: normal;
    font-family: "Core Sans D 55 Bold W01 Regular";
}

.main2-more {
    width: 5vw;
    position: relative;
    margin: 0 0 0.65vw 0;
    display: block;
}

.main2-pic {
    width: 79.2vw;
    right: 0;
    top: 0;
    position: absolute;
}

.main2-pic::after {
    content: "";
    clear: both;
    display: block;
}

.main2-pic-li {
    position: relative;
    float: left;
    box-sizing: border-box;
    display: block;
}

.main2-pic-front {
    width: 100%;
    position: relative;
    margin: 0;
    z-index: 1 !important;
    transition: all 0.5s linear;
    opacity: 1;
    visibility: visible;
}

.main2-pic1:hover .main2-pic-front,
.main2-pic2:hover .main2-pic-front,
.main2-pic3:hover .main2-pic-front,
.main2-pic4:hover .main2-pic-front,
.main2-pic5:hover .main2-pic-front {
    opacity: 0;
    visibility: hidden;
}

.main2-pic1 {
    width: 36.05%;
}

.main2-pic1-line {
    width: 1px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    z-index: 3;
}

.main2-pic2 {
    width: 31.975%;
}

.main2-pic2-line {
    width: 1px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    z-index: 3;
}

.main2-pic3 {
    width: 31.975%;
}

.main2-pic4 {
    width: 51.84%;
    margin: -0.05% 0 0 0;
}

.main2-pic4-line {
    width: 1px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    z-index: 3;
}

.main2-pic4-line2 {
    width: 100%;
    height: 1px;
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 3;
}

.main2-pic5-line {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 3;
}

.main2-pic5 {
    width: 48.16%;
    margin: -0.05% 0 0 0;
}

.main2-pic-h {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
}

.main2-pic-h img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main2-pic1:hover .main2-pic-h img,
.main2-pic2:hover .main2-pic-h img,
.main2-pic3:hover .main2-pic-h img,
.main2-pic4:hover .main2-pic-h img,
.main2-pic5:hover .main2-pic-h img {
    animation: img 5s linear;
    animation-fill-mode: forwards;
}

@keyframes img {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.1);
    }
}

.main3 {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.main3-more {
    width: 5vw;
    position: absolute;
    left: 73vw;
    top: 7.5vw;
    display: block;
    z-index: 999;
}

.city {
    width: 41vw;
    height: 0;
    position: absolute;
    right: 3vw;
    bottom: 5vw;
    overflow: hidden;
}

.city img {
    width: 41vw;
    height: 19vw;
    position: absolute;
    left: 0;
    bottom: 0;
}

.city-ani {
    animation: city 2s linear;
    animation-fill-mode: forwards;
}

@keyframes city {
    0% {
        height: 0;
        opacity: 0;
    }

    100% {
        height: 18vw;
        opacity: 1;
    }
}

.air-plane {
    width: 0;
    height: 6.5vw;
    position: absolute;
    left: 4.5vw;
    top: 26vw;
    overflow: hidden;
}

.air-plane img {
    width: 10vw;
    position: absolute;
    left: 0;
    top: 0;
}

.air-plane-ani {
    animation: air-plane 1.6s linear;
    animation-fill-mode: forwards;
    animation-delay: 1s;
}

@keyframes air-plane {
    0% {
        width: 0;
        opacity: 0;
    }

    100% {
        width: 10vw;
        opacity: 1;
    }
}

.main3-title {
    width: 40vw;
    position: absolute;
    left: 32.5vw;
    top: 5vw;
    color: #291f1a;
    text-align: center;
}

.main3-title h1 {
    font-size: 1.27vw;
    letter-spacing: 0.4vw;
    line-height: 1.4vw;
    margin: 0 0 0 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
}

.main3-title h2 {
    font-size: 2.8vw;
    letter-spacing: 0.3vw;
    margin: 0 0 1.4vw 0;
    font-weight: normal;
    font-family: "GARNET-CAPITALS-BOLD";
}

.main3-banner {
    width: 51vw;
    height: auto;
    position: absolute;
    left: 27vw;
    top: 11vw;
    z-index: 9;
}

.main3-banner .swiper-container {
    overflow: visible;
}

.main3-banner .swiper-slide {
    height: 30.8vw;
    box-shadow: 0 0.1vw 0.2vw rgba(0, 0, 0, 0.7);
    overflow: hidden;
}

.main3-banner .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main3 .swiper-pagination {
    width: 19.5vw;
    position: absolute;
    left: 35vw;
    top: -3.4vw;
    text-align: left;
}

.main3 .swiper-pagination-bullet {
    background-image: url(../img/index/dot2.png);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.5vw;
    height: 1.5vw;
    margin: 0 0.5vw 0.6vw 0.5vw !important;
    opacity: 1;
    border: none;
    background-color: transparent;
    border-radius: 0;
    cursor: pointer;
}

.main3 .swiper-pagination-bullet-active {
    background-image: url(../img/index/dot1.png);
    background-color: transparent;
}

.main3-en {
    position: absolute;
    left: -13.6vw;
    bottom: -3.9vw;
    font-size: 2.7vw;
    letter-spacing: 0.3vw;
    margin: 0 0 1.4vw 0;
    font-weight: normal;
    font-family: "GARNET-CAPITALS-BOLD";
    color: #0b5c93;
    text-align: center;
}

.main3-line {
    width: 19.5vw;
    position: absolute;
    left: -4.1vw;
    top: -3vw;
}

.main3-banner .swiper-button-prev {
    width: 2.8vw !important;
    height: auto;
    top: 45%;
    left: -2.7%;
    z-index: 9999 !important;
    margin-top: 0 !important;
    position: absolute;
    background-image: none !important;
}

.main3-banner .swiper-button-next {
    width: 2.8vw !important;
    height: auto;
    top: 45%;
    right: -2.7%;
    z-index: 999 !important;
    margin-top: 0 !important;
    background-image: none !important;
}

.main4 {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.main4-more {
    width: 5vw;
    position: absolute;
    top: 10.2vw;
    left: 24.5vw;
    cursor: pointer;
    display: block;
}

.main4-title {
    position: absolute;
    left: 10vw;
    top: 7vw;
    color: #fff;
}

.main4-title h2 {
    font-size: 1.2vw;
    font-weight: normal;
    letter-spacing: 0.25vw;
    line-height: 1.6vw;
    margin: 0 0 0.5vw 0;
    font-family: 'Noto Sans JP', sans-serif;
}

.main4-title h4 {
    font-size: 2.8vw;
    letter-spacing: 0.3vw;
    margin: 0 0 1.4vw 0;
    font-weight: normal;
    font-family: "GARNET-CAPITALS-BOLD";
}

.main4-title-pic {
    width: 9vw;
    position: absolute;
    left: -4vw;
    top: -3vw;
}

.main4-banner {
    width: 53vw;
    height: auto;
    position: absolute;
    right: 7vw;
    top: 10vw;
    z-index: 9;
}

.main4-banner .swiper-container {
    overflow: visible;
}

.main4-banner .swiper-button-prev {
    width: 2.6vw !important;
    height: 2.6vw;
    left: -1.5vw;
    top: 61% !important;
    transform: translateY(-50%);
    margin: 0;
    z-index: 998 !important;
    background-image: url(../img/03/arrow-l.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    transition: all 0.3s ease;
    cursor: pointer;
}

.main4-banner .swiper-button-next {
    width: 2.6vw !important;
    height: 2.6vw;
    right: -1.5vw;
    top: 61% !important;
    transform: translateY(-50%);
    margin: 0;
    z-index: 998 !important;
    background-image: url(../img/03/arrow-r.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    transition: all 0.3s ease;
    cursor: pointer;
}

.main4-banner-img {
    width: 100%;
    height: 26vw;
    position: relative;
    overflow: hidden;
    display: block;
    box-shadow: 0 0.1vw 1.2vw rgba(0, 0, 0, 0.7);
}

.main4-banner-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main4-banner-txt {
    width: 24vw;
    position: absolute;
    left: -30vw;
    top: 22.5vw;
    color: #fff;
    border-bottom: 0.5px solid #fff;
    padding: 0 0 0.2vw 0;
}

.main4-banner-txt h1 {
    font-size: 1.01vw;
    font-weight: normal;
    letter-spacing: 0.18vw;
    line-height: 1.6vw;
    margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
}

.main4-banner-txt h2 {
    font-size: 2.1vw;
    font-weight: normal;
    letter-spacing: 0.2vw;
    margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
    color: #ead1a9;
}

.main4-banner-txt h3 {
    font-size: 1.7vw;
    font-weight: normal;
    letter-spacing: 0.25vw;
    margin: 0 0 0.5vw 0;
    font-family: "Futura-Std-Heavy";
}

.main4-banner-txt h4 {
    font-size: 1.01vw;
    font-weight: normal;
    letter-spacing: 0.18vw;
    line-height: 1.6vw;
    margin: 0 0 0 0;
    font-family: 'Noto Sans JP', sans-serif;
}

.level {
    display: inline-block;
}

.house {
    display: inline-block;
}

.li-font {
    font-size: 1.05vw;
    font-family: 'Noto Sans JP', sans-serif;
}

.fb {
    width: 0.7vw;
    position: absolute;
    right: 0;
    bottom: 0.5vw;
    cursor: pointer;
}

.web {
    width: 1.06vw;
    position: absolute;
    right: 1.9vw;
    bottom: 0.6vw;
}

.img-ani {
    animation: img-ani 5s ease-in-out;
    animation-fill-mode: forwards;
}

@keyframes img-ani {
    0% {
        transform: scale(1.08);
    }

    100% {
        transform: scale(1);
    }
}

.main4-banner .swiper-pagination {
    color: #fff;
    position: absolute;
    left: 0;
    bottom: -2.16vw;
    font-family: "Futura-Std-Book";
    font-size: 0.8vw;
    letter-spacing: 0.1vw;
    font-weight: 500;
    z-index: 999;
    text-align: left;
}

.Taoyuan-map {
    width: 25vw;
    position: absolute;
    left: -32vw;
    top: 5vw;
}

.dot {
    width: 1.8vw;
    position: absolute;
}

.dot-img {
    width: 100%;
    position: relative;
}

.ty1 {
    left: 29%;
    top: 20%;
}

.ty2 {
    left: 48%;
    top: 32%;
}

.ty3 {
    left: 74%;
    top: 43%;
}

.ty4 {
    left: 65%;
    top: 29%;
}

.ty5 {
    left: 62%;
    top: 13%;
}

.ty6 {
    left: 47%;
    top: 22%;
}

.ty7 {
    left: 48%;
    top: 10%;
}

.ty8 {
    left: 61%;
    top: 3%;
}

.ty9 {
    left: 69%;
    top: -3%;
}

.ty10 {
    left: 61%;
    top: -7%;
}

.ty11 {
    left: 45%;
    top: -8%;
}

.ty12 {
    left: 25%;
    top: -3%;
}

.ty13 {
    left: 21%;
    top: 12%;
}

.dot-blink {
    width: 80%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -11%;
    animation: dot-blink 0.6s infinite alternate;
    transition-timing-function: ease-out;
    z-index: 0;
}

@keyframes dot-blink {
    0% {
        transform: translateX(-50%) scale(1.3);
    }

    100% {
        transform: translateX(-50%) scale(1);
    }
}

.main4-pic {
    width: 6vw;
    position: absolute;
    left: 90.8vw;
    bottom: -0.8vw;
}


/*頁面5*/

.main5 {
    width: 100%;
    height: 53vw;
    position: relative;
    overflow: hidden;
}

.main5::before {
    content: "";
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: -1;
    background-image: url(../img/index/bg5.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.main5-title {
    position: absolute;
    left: 74.7vw;
    top: 11vw;
    color: #fff;
}

.main5-title h2 {
    font-size: 1.2vw;
    font-weight: normal;
    letter-spacing: 0.25vw;
    line-height: 1.6vw;
    margin: 0 0 0.5vw 0;
    font-family: 'Noto Sans JP', sans-serif;
}

.main5-title h4 {
    font-size: 2.8vw;
    letter-spacing: 0.3vw;
    margin: 0 0 1.4vw 0;
    font-weight: normal;
    font-family: "GARNET-CAPITALS-BOLD";
}

.main5-title-pic {
    width: 9vw;
    position: absolute;
    left: -4vw;
    top: -3vw;
}

.main5-more {
    width: 5vw;
    position: absolute;
    top: 14.2vw;
    left: 88vw;
    cursor: pointer;
    display: block;
    z-index: 15;
}

.main5-pic {
    width: 22.4vw;
    position: absolute;
    left: 73.85vw;
    top: 0;
}

.main5-banner {
    width: 81vw;
    height: auto;
    position: absolute;
    left: 13.2vw;
    top: 10.2vw;
    z-index: 9;
}

.main5-banner .swiper-container .swiper-slide {
    width: 25% !important;
    height: 34.5vw;
    box-sizing: border-box;
    cursor: pointer;
}

.main5-banner .banner-bg {
    width: 71%;
    height: 60%;
    position: absolute;
    left: 58%;
    top: 65%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    transition: all 0.5s ease;
    display: block;
    box-shadow: 0.2vw 0.6vw 1vw rgba(0, 0, 0, 0.3);
    filter: brightness(70%);
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-next+.swiper-slide .banner-bg {
    width: 71%;
    height: 60%;
    left: 75%;
    top: 65%;
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-duplicate.swiper-slide-prev .banner-bg,
.main5-banner .swiper-container .swiper-slide.swiper-slide-prev .banner-bg {
    opacity: 0;
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .banner-bg {
    width: 106%;
    height: 89%;
    left: 56%;
    top: 50.5%;
    filter: brightness(100%);
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-next .banner-bg {
    width: 106%;
    height: 89%;
    left: 74%;
    top: 50.5%;
    filter: brightness(100%);
}

.main5-banner .banner-img {
    width: 91.5%;
    margin: 4% auto 0 auto;
    height: 56%;
    position: relative;
    box-sizing: border-box;
    background-color: #033b60;
    overflow: hidden;
    transition: all 0.5s linear;
}

.main5-banner .banner-img img {
    transform: scale(1);
    transition: all 0.5s linear;
}

.main5-banner .banner-bg:hover .banner-img img {
    transform: scale(1.1);
}

.main5-banner .swiper-button-next {
    background-image: none;
    width: 8vw !important;
    height: 0.9vw !important;
    right: 7.8vw;
    top: 37vw;
    z-index: 998 !important;
    margin-top: 0 !important;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: fixed;
    overflow: hidden;
}

.main5-banner .next-ani {
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-image: url(../img/02-1/arrow-r.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transition: all 0.5s ease;
    animation: next-ani 1.5s ease-in-out;
    animation-fill-mode: forwards;
}

@keyframes next-ani {
    0% {
        right: 0;
    }

    50% {
        right: -100%;
    }

    51% {
        right: 100%;
    }

    100% {
        right: 0;
    }
}

.main5-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s linear;
}

.main5 .more {
    position: absolute;
    left: 2.7vw;
    bottom: -1.5vw;
    font-family: "Core Sans D 55 Bold W01 Regular";
    font-size: 0.8vw;
    letter-spacing: 0.1vw;
    color: #fff;
    display: block;
}

.main5 .more::after {
    content: "";
    position: absolute;
    width: 2.2vw;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: -2.7vw;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s linear;
}

.main5-banner .banner-bg:hover .more::after {
    width: 0;
}

.main5-banner .banner-bg:hover .more {
    opacity: 0.5;
}

.main5-banner .banner-txt {
    width: 85%;
    margin: 5.2% 0 0 7.5%;
    position: relative;
    font-family: 'Noto Sans JP', sans-serif;
}

.main5-banner .banner-txt h2 {
    font-size: 0.8vw;
    font-weight: normal;
    letter-spacing: 0.05vw;
    line-height: 1vw;
    color: #0b5c93;
    margin: 0 0 0.4vw 0;
}

.main5-banner .banner-txt h4 {
    color: #505050;
    font-size: 0.6vw;
    font-weight: normal;
    letter-spacing: 0.05vw;
    line-height: 0.8vw;
    height: 2.4vw;
    overflow: hidden;
    margin: 0;
    text-align: justify;
    text-justify: inter-ideograph;
}

.main5-banner .date {
    width: 90%;
    color: #0b5c93;
    position: absolute;
    right: 2.6%;
    bottom: 0.5vw;
}

.main5-banner .date::after {
    content: "";
    clear: both;
    display: block;
}

.main5-banner .date h1 {
    bottom: 0;
    right: 0;
    font-size: 1.1vw;
    font-weight: bold;
    letter-spacing: 0.02vw;
    line-height: 1vw;
    margin: 0;
    font-family: "Futura-Std-Heavy";
    position: absolute;
}

.main5-banner .date h2 {
    width: fit-content;
    margin: 0;
    font-size: 0.6vw;
    font-weight: normal;
    letter-spacing: 0.02vw;
    margin: 0;
    float: left;
    font-family: "Futura-Std-Book";
}

.main5-banner .date h3 {
    width: fit-content;
    margin: 0;
    font-size: 0.6vw;
    font-weight: normal;
    letter-spacing: 0.02vw;
    margin: 0 0 0 0.2vw;
    float: left;
    font-family: "Futura-Std-Book";
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .banner-txt h2,
.main5-banner .swiper-container .swiper-slide.swiper-slide-next .banner-txt h2 {
    font-size: 1.1vw;
    font-weight: normal;
    letter-spacing: 0.05vw;
    line-height: 1.6vw;
    color: #0b5c93;
    margin: 0 0 0.5vw 0;
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .banner-txt h4,
.main5-banner .swiper-container .swiper-slide.swiper-slide-next .banner-txt h4 {
    color: #505050;
    font-size: 0.9vw;
    font-weight: normal;
    letter-spacing: 0.05vw;
    line-height: 1.2vw;
    margin: 0;
    text-align: justify;
    text-justify: inter-ideograph;
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .date h1,
.main5-banner .swiper-container .swiper-slide.swiper-slide-next .date h1 {
    bottom: 0;
    right: 0;
    font-size: 2vw;
    font-weight: bold;
    letter-spacing: 0.02vw;
    line-height: 1.6vw;
    margin: 0;
    font-family: "Futura-Std-Heavy";
    position: absolute;
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .date h2,
.main5-banner .swiper-container .swiper-slide.swiper-slide-next .date h2 {
    width: fit-content;
    margin: 0;
    font-size: 0.9vw;
    font-weight: normal;
    letter-spacing: 0.02vw;
    margin: 0;
    float: left;
    font-family: "Futura-Std-Book";
}

.main5-banner .swiper-container .swiper-slide.swiper-slide-active .date h3,
.main5-banner .swiper-container .swiper-slide.swiper-slide-next .date h3 {
    width: fit-content;
    margin: 0;
    font-size: 0.9vw;
    font-weight: normal;
    letter-spacing: 0.02vw;
    margin: 0 0 0 0.2vw;
    float: left;
    font-family: "Futura-Std-Book";
}

.main6 {
    position: relative;
    width: 100%;
    height: calc(1007*var(--vw-base));
    overflow: hidden;
}

.m6-bg {
    position: absolute;
    width: 100%;
    height: 100%;

}

.m6-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m6-contain {
    position: relative;
    box-sizing: border-box;
    padding: calc(200*var(--vw-base)) 0 0 calc(114*var(--vw-base));
    display: flex;
    gap: calc(74*var(--vw-base));
}

.m6-pic1 {
    position: relative;
    width: calc(1128*var(--vw-base));
    height: calc(585*var(--vw-base));
    box-shadow: #8d8d8d 0vw 0.6vw 0.7vw;
    z-index: 10;
}

.m6-txt {
    position: relative;
    margin-top: calc(44*var(--vw-base));
    width: calc(536*var(--vw-base));
    height: calc(570*var(--vw-base));
    display: flex;
    flex-direction: column;
}

.main6 h2 {
    position: relative;
    font-size: calc(26*var(--vw-base));
    line-height: calc(41*var(--vw-base));
    letter-spacing: 0.3em;
    color: #434243;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    margin: 0;
}

.m6-txt-pic1 {
    position: relative;
    width: calc(328*var(--vw-base));
    height: calc(44*var(--vw-base));
    margin-top: calc(10*var(--vw-base));
    margin-bottom: calc(50*var(--vw-base));
}

.main6 h3 {
    position: relative;
    margin: 0;
    width: calc(445*var(--vw-base));
    font-size: calc(18*var(--vw-base));
    line-height: calc(33*var(--vw-base));
    letter-spacing: 0.1em;
    color: #434243;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: justify;
}

.main6 h3.h3-2 {
    position: relative;
    margin:calc(10*var(--vw-base)) 0 0 calc(-8*var(--vw-base));

}

.main6 h4 {
    position: relative;
    margin: 0;
    margin-top: calc(20*var(--vw-base));
    width: calc(498*var(--vw-base));
    font-size: calc(18*var(--vw-base));
    line-height: calc(33*var(--vw-base));
    letter-spacing: 0.1em;
    color: #434243;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: end;
}

.main6 .m6-txt-pic2 {
    position: relative;
    width: calc(132*var(--vw-base));
    height: calc(78*var(--vw-base));
    align-self: flex-end;
}