@charset "UTF-8";

@font-face {
    font-family: "Yu Mincho";
    src: url("../assets/font/KozGoPr6N-Regular.woff");
}

body {
    font-family: "Yu Mincho";
    font-size: 16px;
}

header {
    width: 100%;
    position: relative;

    .hamburger-menu-button-area {
        position: absolute;
        width: 50px;
        height: 50px;
        right: 20px;

        /* //////////////////////////////////////////////////////////////////////// */
        .hamburger-menu-button {
            position: fixed;
            top: 2%;
            right: 5%;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            background: rgba(0, 0, 0, .5);
            z-index: 12;

            span {
                position: absolute;
                left: 50%;
                transform: translateX(-50%);
                width: 50%;
                height: 3px;
                border-radius: 2px;
                background: #fff;
                transition: all .4s;

                &:nth-child(1) {
                    top: 15px;
                }

                &:nth-child(2) {
                    top: 50%;
                }

                &:nth-child(3) {
                    bottom: 12px;
                }
            }

            &.active {
                span {
                    &:nth-child(1) {
                        top: 50%;
                        transform: translateX(-12px) rotate(45deg);
                    }

                    &:nth-child(2) {
                        display: none;
                    }

                    &:nth-child(3) {
                        top: 50%;
                        transform: translateX(-12px) rotate(-45deg);
                    }
                }
            }
        }
    }

    .hamburger-menu {
        position: fixed;
        z-index: 11;
        width: 80%;
        height: 100%;
        top: 0;
        right: -100%;
        padding: 90px 50px 0 0;
        background-color: rgba(0, 0, 0, .85);
        text-align: right;
        transition: all .3s;

        &.active {
            right: 0;
        }

        .open {
            transform: translateX(0);
        }

        h2 {
            color: #fff;
            font-size: 2.5rem;
            margin-bottom: 60px;
            letter-spacing: 2px;
        }

        ul {
            li {
                color: white;
                font-size: 22.4px;
                margin-bottom: 30px;
            }
        }

        &.active {
            right: 0;
        }

        .site-content-left-nav {
            ul {
                position: relative;
                width: 200px;
                height: 250px;
                margin: 100px auto 0 auto;
                text-align: center;

                li {
                    width: 200px;
                    height: 50px;

                    a {
                        display: inline-block;
                        font-size: 16px;
                        opacity: 1;
                        color: red;
                        padding-top: 10px;
                    }
                }
            }
        }
    }
}

/*============================
#site-content
============================*/
#site-content {
    width: 100%;

    .bottom-bar {
        width: 100%;
        height: 50px;
        position: fixed;
        z-index: 11;
        bottom: 0;
        background-color: #323232;
        display: flex;
        color: #fff;
        padding: 7px 0 5px;
        justify-content: center;
        align-items: center;
        text-align: center;

        .bottom-bar-button {
            position: absolute;
            right: 0;

            .bottom-bar-button-left {
                display: none;
            }

            .bottom-bar-button-right {
                position: relative;
                display: block;
                background-color: #fff;
                border-radius: 50%;
                width: 35px;
                height: 35px;
                margin: 0 35px 0 10px;
                cursor: pointer;

                &:before {
                    content: "";
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    background-color: #323232;
                    width: 25px;
                    height: 25px;
                    -webkit-clip-path: polygon(10% 70%, 45% 30%, 55% 30%, 90% 70%, 80% 75%, 45% 35%, 55% 35%, 20% 75%);
                    clip-path: polygon(10% 70%, 45% 30%, 55% 30%, 90% 70%, 80% 75%, 45% 35%, 55% 35%, 20% 75%);
                }
            }
        }
    }

    .site-content-left {
        display: none;
    }

    .site-content-right {
        width: 100%;

        main {

            /*============================
#first-view
============================*/
            section#first-view {
                position: relative;
                width: 100%;
                height: calc(100vh - 50px);

                &:before {
                    content: "";
                    display: block;
                    position: absolute;
                    z-index: 2;
                    top: 0;
                    right: 0;
                    width: 100%;
                    height: 100%;
                    background-color: rgba(0, 0, 0, .1);
                    background-image: radial-gradient(#111 25%, transparent 30%), radial-gradient(#111 25%, transparent 30%);
                    background-size: 4px 4px;
                    background-position: 0 0, 2px 2px;
                }

                .first-view-text-1 {
                    position: absolute;
                    bottom: 20%;
                    left: 10%;
                    z-index: 10;
                    color: #fff;
                    font-size: 1.8rem;

                    span {
                        display: block;
                        margin-bottom: 20px;
                    }

                    .special-span-9 {
                        margin-left: 15px;
                    }

                    .special-span-10 {
                        margin-left: 30px;
                    }
                }

                .first-view-text-2 {
                    position: absolute;
                    bottom: 9%;
                    right: 13%;
                    z-index: 3;
                    height: 260px;
                    color: #fff;
                    font-size: 28.8px;
                    letter-spacing: 2px;
                    text-align: right;
                    writing-mode: vertical-rl;

                    &::before {
                        content: "";
                        display: block;
                        position: absolute;
                        z-index: 3;
                        bottom: -70px;
                        left: -15px;
                        width: 0.5px;
                        height: 390px;
                        background-color: #fff;
                        animation: fade-2 2.2s ease-in-out infinite;
                        opacity: 0;
                    }
                }
            }
        }
    }

    .first-view-img {
        width: 100%;
        height: 100%;

        .slideshow {
            width: 100%;
            height: 100%;
            position: relative;

            .slideshow-img {
                width: 100%;
                height: 100%;
                position: absolute;
                background-size: cover;
                background-position: center;
                opacity: 0;
                animation: fade 42s infinite;

                &:nth-child(1) {
                    background-image: url(../assets/images/slide-show/slide-sp-0.webp);
                    animation-delay: 0s;
                }

                &:nth-child(2) {
                    background-image: url(../assets/images/slide-show/slide-sp-1.webp);
                    animation-delay: 7s;
                }

                &:nth-child(3) {
                    background-image: url(../assets/images/slide-show/slide-sp-2.webp);
                    animation-delay: 14s;
                }

                &:nth-child(4) {
                    background-image: url(../assets/images/slide-show/slide-sp-3.webp);
                    animation-delay: 21s;
                }

                &:nth-child(5) {
                    background-image: url(../assets/images/slide-show/slide-sp-4.webp);
                    animation-delay: 28s;
                }

                &:nth-child(6) {
                    background-image: url(../assets/images/slide-show/slide-sp-5.webp);
                    animation-delay: 35s;
                }
            }
        }
    }
}



/*============================
#shop-introduction
============================*/
section#shop-introduction {
    width: 100%;

    .shop-introduction-content {
        width: 100%;

        .shop-introduction-content-border {
            width: 100%;
            position: relative;

            &::after {
                content: "";
                position: absolute;
                right: 0;
                bottom: 40%;
                z-index: -1;
                width: 100%;
                height: 15px;
                background-color: #e6e6e6;
            }

            h2 {
                font-size: 1.5rem;
                text-align: right;
                padding: 55px 5% 100px 0;
            }

            .shop-introduction-content-border-text-img {
                width: 340px;
                margin: 0 auto;

                p {
                    width: 100%;
                    margin: 0 auto;
                    font-size: 20.8px;
                    letter-spacing: 3px;
                    line-height: 35px;
                }

                .special-p-1 {
                    width: 100%;
                    margin-top: 35px;
                    margin-bottom: 80px;
                    font-size: 16px;
                    letter-spacing: 0px;
                    line-height: 25px;

                }

                img {
                    display: block;
                    width: 250px;
                    height: 320px;
                    margin: 0 auto;

                    &:nth-of-type(1) {
                        display: none;
                    }

                    &:nth-of-type(3) {
                        width: 270px;
                        height: 140px;
                        margin-bottom: 80px;
                    }

                }

                .special-text-1 {
                    width: 180px;
                    margin: 55px auto;
                }

            }
        }

        .shop-introduction-content-text {
            position: relative;
            width: 100%;
            height: 174px;
            background-image: url(../assets/images/tree-yoko-mobile.jpg);
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;

            .shop-introduction-content-text-back {
                position: absolute;
                bottom: 0;
                right: 0;
                width: 90%;
                height: 134px;
                padding: 30px 5px;
                background-color: white;
                opacity: 0.8;
                font-size: 14.4px;
                font-weight: 700;
                line-height: 25px;
                text-align: center;

                p {
                    span {
                        font-size: 16px;
                        text-decoration: underline #0c9 2px;
                    }

                    .special-text-2 {
                        display: none;
                    }

                }
            }
        }
    }
}

/*============================
#helpful-tips
============================*/
section#helpful-tips {
    position: relative;
    width: 100%;
    margin-bottom: 40px;
    padding-bottom: 115px;

    h2 {
        margin-top: 80px;
        font-size: 24px;
        text-align: center;
    }

    .helpful-tips-content {
        position: relative;
        width: 75%;
        height: 100%;
        margin: 0px auto 0 auto;
        overflow: hidden;

        .swiper1 {
            width: 100%;
            margin: 0 auto;
            border-radius: 0px;
        }

        .swiper-slide {
            width: 100%;
            height: auto;
            /* aspect-ratio: 5/3; */
            height: 100%;
            font-size: 18px;

            img {
                width: 100%;
                height: auto;
                aspect-ratio: 5/3;
            }

            .swiper-slide-text {
                background-color: #fff;
                padding: 30px;

                h3 {
                    font-size: 20.8px;
                    font-weight: 700;
                    margin: 0px 0 20px 0;
                    text-align: center;
                }

                p {
                    width: 100%;
                    height: 100%;
                    padding: 10px;

                    span {
                        display: block;
                        margin-top: 42px;
                    }
                }
            }
        }

        .swiper-pagination1 {
            position: absolute;
            width: 200px !important;
            bottom: 0px !important;
            left: 50% !important;
            transform: translateX(-50%);
        }
    }

    .morebutton {
        position: absolute;
        bottom: 40px;
        right: 30px;

        &:hover {
            opacity: 0.7;
        }

    }

    .morebutton :where(button, a) {
        background-color: #323232;
        width: 145px;
        padding: 5px 15px;
        display: flex;
        align-items: center;
        border-radius: 10px;
    }

    .morebutton-content :where(button, a) span.special-span-1 {
        display: block;
        position: relative;
        background-color: #fff;
        border-radius: 50%;
        width: 25px;
        height: 25px;
        padding: 3px;
        margin-right: 15px;
    }

    .morebutton-content :where(button, a) span.special-span-1:before {
        content: "";
        position: absolute;
        background-color: #323232;
        width: 20px;
        height: 20px;
        -webkit-clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
        clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
    }

    .morebutton-content :where(button, a) span:nth-of-type(2) {
        line-height: 130%;
        color: #fff;
        font-size: 1.3rem;
    }
}

/*============================
#shop-lists
============================*/
section#shop-lists {
    position: relative;
    width: 100%;
    padding: 70px 0;
    background-color: gainsboro;

    h2 {
        width: 303px;
        margin-bottom: 50px;
        padding: 10px 0px;
        padding-left: 90px;
        background-color: white;
        font-size: 24px;
        text-align: left;
    }

    .shop-lists-content {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto 65px auto;
        padding-bottom: 80px;
        overflow: hidden;

        .swiper1 {
            width: 100%;
            margin: 0 auto;
            border-radius: 0px;
        }

        .swiper-slide {
            position: relative;
            width: 100%;
            height: auto;
            aspect-ratio: 5 / 3;
            font-size: 18px;
            padding: 0px 0 150px 0;

            img {
                width: 100%;
                height: auto;
                aspect-ratio: 5 / 3;
            }

            .swiper-slide-text {
                position: absolute;
                right: 0;
                width: 96%;
                height: 140px;
                /* aspect-ratio: 5 / 3; */
                margin-top: 30px;
                margin-left: 25px;
                padding: 15px 0;
                background-color: white;
                text-align: center;

                h3 {
                    margin-bottom: 10px;
                    font-size: 20.8px;
                    text-align: center;
                }

                p {
                    font-size: 20.8px;
                    margin-bottom: 10px;
                }

                .special-p-2 {
                    display: none;
                }

            }
        }

        .swiper-pagination2 {
            position: absolute;
            width: 200px !important;
            bottom: 0px !important;
            left: 50% !important;
            transform: translateX(-50%);
        }
    }

    .morebutton {
        position: absolute;
        bottom: 60px;
        right: 30px;

        &:hover {
            opacity: 0.7;
        }

    }

    .morebutton :where(button, a) {
        background-color: #323232;
        width: 145px;
        padding: 5px 15px;
        display: flex;
        align-items: center;
        border-radius: 10px;
    }

    .morebutton-content :where(button, a) span.special-span-1 {
        display: block;
        position: relative;
        background-color: #fff;
        border-radius: 50%;
        width: 25px;
        height: 25px;
        padding: 3px;
        margin-right: 15px;
    }

    .morebutton-content :where(button, a) span.special-span-1:before {
        content: "";
        position: absolute;
        background-color: #323232;
        width: 20px;
        height: 20px;
        -webkit-clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
        clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
    }

    .morebutton-content :where(button, a) span:nth-of-type(2) {
        line-height: 130%;
        color: #fff;
        font-size: 1.3rem;
    }
}

/*============================
#related-shops
============================*/
section#related-shops {
    position: relative;
    width: 100%;
    padding: 70px 0;
    background-color: rgba(88, 90, 34, .125);

    h2 {
        width: 303px;
        margin-bottom: 50px;
        padding: 10px 0px;
        padding-left: 90px;
        background-color: white;
        font-size: 24px;
        text-align: left;
    }

    .related-shops-content {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto 55px auto;
        padding-bottom: 50px;
        overflow: hidden;

        .swiper3 {
            width: 100%;
            margin: 0 auto;
            border-radius: 0px;
        }

        .swiper-slide {
            position: relative;
            width: 100%;
            height: auto;
            aspect-ratio: 5 / 3;
            font-size: 18px;
            padding: 0px 0 235px 0;

            img {
                width: 100%;
                height: auto;
                aspect-ratio: 5/3;
            }

            .swiper-slide-text {
                position: absolute;
                right: 0;
                width: 96%;
                height: 190px;
                /* aspect-ratio: 5 / 3; */
                margin-top: 30px;
                margin-left: 25px;
                padding: 15px 0;
                background-color: white;
                text-align: center;

                h3 {
                    margin-bottom: 10px;
                    font-size: 20.8px;
                    text-align: center;
                }

                p {
                    font-size: 20.8px;
                    margin-bottom: 10px;
                }
            }
        }

        .swiper-pagination2 {
            position: absolute;
            width: 200px !important;
            bottom: 0px !important;
            left: 50% !important;
            transform: translateX(-50%);
        }
    }

    .morebutton {
        position: absolute;
        bottom: 60px;
        right: 30px;

        &:hover {
            opacity: 0.7;
        }

    }

    .morebutton :where(button, a) {
        background-color: #323232;
        width: 145px;
        padding: 5px 15px;
        display: flex;
        align-items: center;
        border-radius: 10px;
    }

    .morebutton-content :where(button, a) span.special-span-1 {
        display: block;
        position: relative;
        background-color: #fff;
        border-radius: 50%;
        width: 25px;
        height: 25px;
        padding: 3px;
        margin-right: 15px;
    }

    .morebutton-content :where(button, a) span.special-span-1:before {
        content: "";
        position: absolute;
        background-color: #323232;
        width: 20px;
        height: 20px;
        -webkit-clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
        clip-path: polygon(10% 45%, 75% 45%, 55% 15%, 100% 50%, 55% 85%, 75% 55%, 10% 55%);
    }

    .morebutton-content :where(button, a) span:nth-of-type(2) {
        line-height: 130%;
        color: #fff;
        font-size: 1.3rem;
    }
}

/*///////////////////////// spalistページ /////////////////////*/

/*============================
#spalist-shop-lists
============================*/
section#spalist-shop-lists {
    position: relative;
    width: 100%;
    margin-top: 180px;
    padding: 50px 0;
    background-color: rgba(88, 90, 34, .063);

    h2 {
        position: absolute;
        top: -130px;
        right: 20px;
        font-size: 1.5rem;
    }

    #spalist-shop-lists-content {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        padding-bottom: 50px;
        overflow: hidden;

        h2 {
            position: static;
            width: 220px;
            padding: 10px 0px 10px 40px;
            background-color: white;
            font-size: 24px;
            text-align: left;
        }

        .swiper4 {
            width: 100%;
            height: 100%;
            margin: 0 auto;
        }

        .swiper-slide {
            position: relative;
            width: 300px;
            /* height: auto; */
            /* aspect-ratio: 5 / 3; */
            font-size: 18px;
            padding: 30px 0 0 0;


            .swiper-slide-left {

                .swiper-slide-title {
                    display: flex;
                    width: 300px;
                    margin: 0 auto 10px auto;
                    border-bottom: 1px black solid;

                    .swiper-slide-title-left {
                        width: 70%;
                    }

                    .special-title-left {
                        width: 35%;
                    }

                    .special-title-left-2 {
                        width: 70%;
                    }

                    .swiper-slide-title-right {
                        width: 30%;
                    }

                    .special-title-right {
                        width: 65%;
                    }
                }
            }

            .swiper-slide-right {
                width: 300px;
                margin: 0 auto;
                height: 850px;
                position: relative;
                transform-style: preserve-3d;
                transition: transform 0.8s;

                &.flipped {
                    transform: rotateY(180deg);

                    .swiper-slide-right-front {
                        z-index: -1;
                    }

                    .swiper-slide-right-back {
                        z-index: 1;
                    }
                }

                .swiper-slide-right-front {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    z-index: 1;
                    backface-visibility: hidden;

                    a {
                        position: relative;
                        z-index: 10;
                    }

                    img {
                        width: 300px;
                        height: 223px;

                        /* height: auto; */
                        /* aspect-ratio: 5 / 3; */
                        &:hover {
                            filter: brightness(0.7);
                            background-color: rgba(0, 0, 0, 0.05);
                        }
                    }

                    .swiper-slide-text {
                        width: 300px;
                        /* height: auto; */
                        /* aspect-ratio: 5 / 3; */
                        padding-bottom: 20px;
                        background-color: white;
                        text-align: center;

                        .swiper-slide-text-content {
                            display: block;
                            height: 300px;

                            h3 {
                                font-size: 24px;
                                padding: 20px 0;
                                text-align: center;
                            }

                            .special-h3 {
                                font-size: 19.2px;
                            }

                            .special-h3-2 {
                                font-size: 21px;
                            }

                            dl {
                                width: 100%;
                                height: 225px;
                                margin: 0 auto;
                            }

                            div {
                                display: flex;
                                margin-bottom: 10px;
                            }

                            dt {
                                width: 90px;
                                height: 25px;
                                background-color: black;
                                font-size: 14.4px;
                                margin-left: 10px;
                                margin-right: 10px;
                                padding: 5px 0 3px 0;
                                color: white;
                                border-radius: 50px;
                                text-align: center;

                                .special-span-1 {
                                    color: #adff2f;
                                }

                                .special-span-2 {
                                    color: #ff0;
                                }

                                .special-span-3 {
                                    color: aqua;
                                }

                                .special-span-4 {
                                    color: #f0c;
                                }

                                .special-span-5 {
                                    color: red;
                                }
                            }

                            .special-dt-1 {
                                width: 150px;
                            }

                            dd {
                                width: 100%;
                                font-size: 16px;
                                text-align: left;

                                a {
                                    display: inline-block;
                                    border-bottom: 1px solid black;
                                    margin-bottom: 20px;
                                    font-size: 20.8px;
                                    font-weight: 700;
                                }
                            }
                        }

                        .btn {
                            position: relative;
                            z-index: 10;
                            display: inline-block;
                            background-color: #333333;
                            font-size: 19.2px;
                            color: #ffffff;
                            margin: 20px 0 75px;
                            padding: 5px 15px;
                            border-radius: 5px;
                            transition: all 0.3s;

                            &:hover {
                                color: #cccccc;
                            }
                        }

                        iframe {
                            display: block;
                            width: 90%;
                            height: 200px;
                            margin: -19px auto 0 auto;
                        }

                        .map-wrapper {
                            width: 270px;
                            height: 200px;
                            background-color: gray;
                            margin: 0 auto;
                        }

                    }
                }

                .swiper-slide-right-back {
                    position: absolute;
                    z-index: -1;
                    width: 100%;
                    height: 850px;
                    backface-visibility: hidden;
                    transform: rotateY(180deg);
                    background-color: #323232;

                    .swiper-slide-right-back-text-shadow {
                        position: relative;

                        &::after {
                            position: absolute;
                            content: "";
                            width: 100%;
                            height: 70px;
                            bottom: 0;
                            left: 0;
                            background: linear-gradient(to bottom, rgba(50, 50, 50, 0.1), rgb(50, 50, 50, 1));
                        }

                        .swiper-slide-right-back-text {
                            position: relative;
                            width: 100%;
                            height: 555px;
                            text-align: center;
                            color: white;
                            text-align: center;
                            overflow: auto;

                            h3 {
                                font-size: 32px;
                                margin: 20px 0 30px;
                                text-align: center;
                            }

                            .special-h3 {
                                font-size: 19.2px;
                            }

                            .special-h3-2 {
                                font-size: 21px;
                            }

                            span {
                                background-color: #5a5a5a;
                                font-size: 19.2px;
                                color: #0f6;
                                padding: 1px 5px;
                                border-radius: 5px;
                                box-shadow: 0 0 4px 1px #555;
                            }

                            .phone {
                                font-size: 24px;
                                margin: 20px 0 30px;
                            }

                            .swiper-slide-right-back-rss {
                                width: 90%;
                                /* height: 110px; */
                                margin: 20px auto 30px auto;

                                div {
                                    margin-top: 10px;
                                    /* margin-bottom: 150px; */

                                    /* dt {
                                        margin-bottom: 10px;
                                    } */

                                    p {
                                        font-size: 17.6px;
                                        text-align: left;
                                        min-height: 1em;

                                        &:hover {
                                            color: #0f6;
                                            transition: all 0.5s;
                                        }

                                        &:last-of-type {
                                            border-bottom: white 1px solid;
                                            margin-bottom: 20px;
                                            padding-bottom: 15px;

                                            &:hover {
                                                border-bottom: #0f6 1px solid;
                                            }
                                        }
                                    }
                                }
                            }
                        }

                        .btn {
                            position: relative;
                            z-index: 10;
                            display: inline-block;
                            background-color: #5a5a5a;
                            font-size: 19.2px;
                            color: #0f6;
                            /* margin: 100px 0 60px 0; */
                            margin-top: 20px;
                            padding: 5px 15px;
                            border-radius: 5px;
                            transition: all 0.3s;

                            &:hover {
                                color: #cccccc;
                            }
                        }
                    }

                    iframe {
                        display: block;
                        width: 90%;
                        height: 200px;
                        margin: 70px auto 0 auto;
                    }
                }
            }
        }

        .swiper-pagination4 {
            position: absolute;
            width: 200px !important;
            bottom: 0px !important;
            left: 50% !important;
            transform: translateX(-50%);
        }
    }

}



/*///////////////////////// relationlistページ /////////////////////*/

/*============================
#relationlist-shop-lists
============================*/
/* section#relationlist-shop-lists {
    position: relative;
    width: 100%;
    margin-top: 180px;
    padding: 50px 0;
    background-color: rgba(88, 90, 34, .063);

    h2 {
        position: absolute;
        top: -130px;
        right: 20px;
        font-size: 1.5rem;
    }

    #relationlist-shop-lists-content {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        padding-bottom: 50px;
        overflow: hidden;

        h2 {
            position: static;
            width: 220px;
            padding: 10px 0px 10px 60px;
            background-color: white;
            font-size: 24px;
            text-align: left;
        }

        .swiper5 {
            width: 90%;
            height: 100%;
            margin: 0 auto;
        }

        .swiper-slide {
            position: relative;
            width: 100%;
            height: auto;
            aspect-ratio: 5 / 3;
            font-size: 18px;
            padding: 30px 0 0 0;

            .swiper-slide-title {
                display: flex;
                margin-bottom: 10px;
                border-bottom: 1px black solid;

                .swiper-slide-title-left {
                    width: 50%;
                }

                .swiper-slide-title-right {
                    width: 50%;
                }
            }

            img {
                width: 100%;
                height: auto;
                aspect-ratio: 5 / 3;
            }

            .swiper-slide-text {
                width: 100%;
                height: auto;
                aspect-ratio: 5 / 3;
                padding-bottom: 20px;
                background-color: white;

                h3 {
                    font-size: 24px;
                    padding: 20px 0;
                    text-align: center;
                }

                dl {
                    width: 95%;
                    margin: 0 auto;
                }

                div {
                    display: flex;
                    margin-bottom: 10px;
                }

                dt {
                    width: 90px;
                    height: 25px;
                    background-color: black;
                    font-size: 14.4px;
                    margin-left: 10px;
                    margin-right: 10px;
                    padding: 5px 0 3px 0;
                    color: white;
                    border-radius: 50px;
                    text-align: center;

                    .special-span-1 {
                        color: #adff2f;
                    }

                    .special-span-2 {
                        color: #ff0;
                    }

                    .special-span-3 {
                        color: aqua;
                    }

                    .special-span-4 {
                        color: #f0c;
                    }

                }

                dd {
                    width: 100%;
                    font-size: 16px;

                    a {
                        display: inline-block;
                        border-bottom: 1px solid black;
                        margin-bottom: 20px;
                        font-size: 20.8px;
                        font-weight: 700;
                    }
                }

                .special-dd-1 {
                    font-size: 21px;
                }

                iframe {
                    display: block;
                    width: 90%;
                    height: 200px;
                    margin: 0 auto;

                }

            }
        }

        .swiper-pagination5 {
            position: absolute;
            width: 200px !important;
            bottom: 0px !important;
            left: 50% !important;
            transform: translateX(-50%);
        }
    }

} */



/*///////////////////////// usefulcolumnページ /////////////////////*/

/*============================
#column-lists
============================*/
section#column-lists {
    position: relative;
    width: 100%;
    margin-top: 180px;
    padding: 50px 0;
    background-color: hsla(62, 51%, 69%, .533);

    h2 {
        position: absolute;
        top: -130px;
        right: 20px;
        font-size: 1.5rem;
    }

    #column-lists-content {
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        padding-bottom: 50px;
        overflow: hidden;

        h2 {
            position: static;
            width: 193px;
            margin-bottom: 50px;
            padding: 8px 5px 8px 60px;
            background-color: white;
            font-size: 24px;
            text-align: left;
        }

        .swiper-slide-content {
            width: 90%;
            height: 100%;
            margin: 0 auto;

            .swiper-slide {
                position: relative;
                width: 100%;
                height: auto;
                margin-bottom: 100px;
                padding: 30px 0 0 0;

                &:nth-last-of-type(1) {
                    margin-bottom: 50px;
                }

                .swiper-slide-left {

                    .swiper-slide-title {
                        display: flex;
                        /* width: 90%; */
                        margin-bottom: 30px;
                        border-bottom: 1px black solid;

                        .swiper-slide-title-left {
                            width: 40%;
                        }

                        .swiper-slide-title-right {
                            width: 30%;
                        }
                    }
                }

                .swiper-slide-right {
                    position: relative;
                    width: 100%;
                    height: auto;

                    &:hover {
                        filter: brightness(0.7);
                        background-color: rgba(0, 0, 0, 0.05);
                    }

                    span {
                        position: absolute;
                        top: -10px;
                        left: -10px;
                        background-color: #323232;
                        color: #fff;
                        padding: 3px 10px 1px;
                        border-radius: 7px;
                        font-size: 1.2rem;
                    }

                    img {
                        width: 100%;
                        height: auto;
                        aspect-ratio: 5 / 3;
                    }

                    .swiper-slide-text {
                        width: 100%;
                        height: 170px;
                        background-color: white;
                        font-weight: 700;

                        h3 {
                            font-size: 20px;
                            padding: 20px 0;
                            text-align: center;
                        }

                        dl {
                            width: 90%;
                            margin: 0 auto;
                            display: flex;
                            justify-content: space-between;

                            dt {
                                width: 160px;
                                height: 25px;
                                font-size: 16px;
                                /* margin-left: 13px; */
                            }

                            dd {
                                width: 150px;
                                margin-right: 13px;
                                font-size: 16px;
                                text-align: right;
                                opacity: 0.6;
                            }
                        }

                        p {
                            width: 90%;
                            margin: 0 auto;
                            font-size: 16px;
                        }
                    }
                }
            }
        }
    }
}



/*///////////////////////// トップページ以外のファーストビュー /////////////////////*/

#site-content {
    .site-content-right {
        main {
            section#first-view {
                .first-view-text-1 {

                    .special-span-6 {
                        margin-right: 10px;
                        margin-left: 10px;
                    }
                }

                .special-div-1 {
                    writing-mode: vertical-rl;
                }

                .first-view-text-2 {

                    .special-span-8 {
                        font-size: 28.8px;
                    }
                }
            }
        }
    }
}


/*============================
#column-detail
============================*/

#column-detail {
    .column-detail-content {
        width: 90%;
        margin: 0px auto 100px auto;

        h2 {
            font-size: 24px;
            /* text-align: center; */
            margin-bottom: 50px;
        }

        h3 {
            font-size: 24px;
            color: pink;
        }

        img {
            width: 100%;
        }

        p {
            width: 100%;
            /* padding-bottom: 150px; */
            font-size: 18px;
            line-height: 30px;
        }

        #column-detail-content-text {
            margin: 70px auto 300px auto;
            font-size: 24px;
            /* text-align: right; */
        }
    }

    .column-detail-mb-img {
        width: 90%;
        margin: 0 auto;

        img {
            width: 100%;
        }
    }

    .column-detail-flex {
        width: 90%;
        margin: 0 auto;
        padding-bottom: 100px;


        .column-detail-flex-left {
            margin: 0 auto;

            h2 {
                margin: 20px auto 30px auto;
                font-size: 32px;
                text-align: center;
            }

            p {
                font-size: 16px;
                line-height: 60px;
            }

            a {
                display: block;
                width: 245px;
                margin: 10px auto 50px auto;
                font-size: 1.5rem;
                border-bottom: 1px black solid;
            }
        }

        .column-detail-flex-right {
            width: 100%;

            iframe {
                width: 100%;
            }
        }

        a {
            display: block;
            width: 225px;
            margin: 10px 0 50px auto;
            font-size: 16px;
            border-bottom: 1px black solid;
        }
    }
}


/*============================
footer
============================*/

footer {
    width: 100%;

    .footer-content {
        width: 100%;
        background-color: rgba(88, 90, 34, .125);
        padding-top: 50px;

        .footer-content-text {
            width: 100%;
            margin: 0 auto;
            padding: 20px 0;
            background-color: white;
            text-align: center;
            font-size: 19.2px;
            font-weight: 700;
            line-height: 30px;

            p {
                span {
                    text-decoration: underline #aaa 2px;
                }
            }

        }

        .footer-content-text-2 {
            width: 92%;
            margin: 20px auto 0 auto;
            padding-bottom: 80px;
            font-weight: 700;
            text-align: center;

            small {
                span {
                    text-decoration: underline #aaa 2px;
                }
            }
        }
    }
}



/* ファーストビューのアニメーション */

@keyframes fade {

    0% {
        opacity: 0;
    }

    3% {
        opacity: 1;
    }

    18% {
        opacity: 1;
    }

    30% {
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}

@keyframes fade-2 {

    0% {
        height: 0;
        top: -70px;
        opacity: 0;
    }

    20% {
        height: 430px;
        bottom: 0;
        opacity: 1;
    }

    40% {
        height: 430px;
        bottom: 0px;
        opacity: 1;
    }

    50% {
        height: 430px;
        bottom: -100px;
        opacity: 1;
    }

    70% {
        height: 0px;
        bottom: -100px;

    }

    100% {
        height: 0px;
        bottom: -100px;
    }
}