@charset "UTF-8";

main {
    width: 100%;
    margin: 0 auto 0;
    padding: 145px 0 0;
    position: relative;

    .swiper{
        height: 100%;
    
        .swiper-slide{
            overflow: hidden;

            figure{
                height:100%;
                position: relative;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }
        }
    }
    .swiper-pagination-bullets.swiper-pagination-horizontal{
        bottom: 20px;
    }

    .text{
        color: var(--colorW);
        text-align: center;
        width: 80%;
        position: absolute;
        top: 24%;
        left: 10%;
        z-index: 1;

        h2{
            font-family: var(--font03);
            font-size: var(--font60-72);
            line-height: 1.5em;
            letter-spacing: 1.0pt;
            margin: 0;
            white-space: nowrap;
        }
        h3{
            font-size: var(--font20-24);
            line-height: 2.4em;
        }
    }
}

section#catch{
    width: 100%;
    margin: 0 auto 0;
    padding: 0;

    .caption{
        background: var(--color01);
        color: var(--colorW);
        font-size: var(--font20-24);
        line-height: 1.4em;
        text-align: center;
        width: 100%;
        margin: 0;
        padding: 20px 0;
    }

    .bottom{
        background: url(/bunjyo/funabashi-nichidaimaejt5/images/top/main_bottom.jpg);
        background-size: cover;
        background-repeat: repeat-y;

        figure{
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 1%;
            align-items: center;
            max-width: var(--width02);
            width: 98%;
            margin: 0 auto;
            padding: 15px 0;

            img{
                display: block;
                width: calc(97% / 4);
            }
        }
    }
}

section#information{
    width: 100%;
    margin: 0 auto 0;
    padding: 5% 0;

    h2{
        color: var(--color01);
        font-size: var(--font24-30);
        text-align: center;
        width: 100%;
        margin: 0 auto 4%;
        padding: 0 0 2.5%;
        position: relative;

        &:after{
            content: "";
            background: url(/bunjyo/funabashi-nichidaimaejt5/images/common/line_brown.svg);
            background-size: 100%;
            background-repeat: no-repeat;
            max-width: 480px;
            width: 100%;
            height: 12px;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translate(-50%, 0);
        }
    }
    .inner:not(.links){
        margin: 0 auto 3%;
    }
    
    figure{
        line-height: 0;
        max-width: 840px;
        width: 98%;
        margin: 0 auto 0;
    }
}

section{
    .links ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap:2%;

        li{
            max-width: 390px;
            width: 48%;

            a{
                display: block;
                background: var(--color01);
                color: var(--colorW);
                text-align: center;
                padding: 15px 0 30px;
                position: relative;
                overflow: hidden;

                span{
                    position: relative;
                    z-index: 1;
                }

                &:before{
                    content:"";
                    background: var(--color01h);
                    transition: all ease 0.5s;
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    top: 20px;
                    left: 0;
                    opacity: 0;
                    z-index: 0;
                }
                &:hover:before{
                    top: 0;
                    opacity: 1;
                }

                &:after{
                    content: "";
                    background: url(/bunjyo/funabashi-nichidaimaejt5/images/common/line_white.svg);
                    background-repeat: no-repeat;
                    background-size: 100%;
                    max-width: 172px;
                    width: 90%;
                    height: 5px;
                    position: absolute;
                    bottom: 12px;
                    left: 50%;
                    transform: translate(-50%,0);
                }
            }
        }
    }
}

section#stage{
    background: var(--color08);
    width: 100%;
    margin: 0 auto 0;
    padding: 5% 0;

    .inner{
        display: flex;
        flex-wrap: wrap;
        gap: 4%;
        max-width: var(--width01);
        width: 98%;
        margin: 0 auto;
        padding: 0;

        a{
            display: block;
            width: calc(92% / 3);
            margin: 0 0 3%;

            dl dt{
                text-align: center;
                display: flex;
                justify-content: space-around;
                align-items: center;
                width: 90%;
                margin: 0 auto;
                padding: 10px 0 20px;
                position: relative;
                top: 10px;
                z-index: 0;
                transition: all ease 0.5s;

                b{
                    font-family: var(--font02);
                    font-weight: 600;
                    font-size: var(--font20-24);
                    letter-spacing: 0.5pt;
                }
            }

            &:hover dl dt{
                top: 0;
            }
            dl dd{
                height: 360px;
                position: relative;
                z-index: 1;
            }
        }
        /* 2・5・8（中央列） */
        a:nth-child(3n + 2) dl dt {
            background: var(--color01);
            color: var(--colorW);
        }

        /* それ以外（1,3,4,6,7,9） */
        a:not(:nth-child(3n + 2)) dl dt {
            background: var(--colorW);
            color: var(--color01);
        }

        a.hide{
            position: relative;
            pointer-events: none;

            dd p,dd b{
                display: none;
            }

            dd:before{
                content: "";
                background: var(--clear02);
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                z-index: 1;
            }
            dd:after{
                content: "Coming Soon";
                background: var(--colorB);
                color: var(--colorW);
                text-align: center;
                display: flex;
                justify-content: center;
                align-items: center;
                width: 90%;
                height: 42px;
                position: absolute;
                top: 50%;
                left: 5%;
                transform: translate(0,-50%);
                z-index: 2;
            }
        }
        a.view{
            position: relative;

            dd:before{
                content:"";
                background: #51424C;
                background: linear-gradient(90deg, rgba(81, 66, 76, 0) 0%, rgba(81, 66, 76, 0.6) 100%);
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                z-index: 0;
            }
            
            dd p{
                color: var(--colorW);
                font-size: var(--font18-22);
                line-height: 1.4em;
                -ms-writing-mode: tb-rl;
                writing-mode: vertical-rl;
                position: absolute;
                top: 40px;
                right: 30px;
            }
            dd b{
                background: #51424C;
                background: linear-gradient(270deg, rgba(81, 66, 76, 0) 0%, rgba(81, 66, 76, 0.4) 100%);
                color: var(--colorW);
                width: 90%;
                padding: 10px 20px;
                position: absolute;
                bottom: 20px;
                left: 5%;
                transition: all ease 0.5s;
                
                &:after{
                    content: "";
                    background: var(--colorW);
                    width: 60%;
                    height: 0.5px;
                    position: absolute;
                    top: 50%;
                    right: 20px;
                    transform: translate(0,-50%);
                }
            }
        }
        a.view:hover{
            dd b{
                background: linear-gradient(270deg, rgba(81, 66, 76, 0.4) 0%, rgba(81, 66, 76, 1.0) 100%);
            }
        }
        a.stageParts dd{
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
        }
        a.stage01 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage01.jpg);
        }
        a.stage02 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage02.jpg);
        }
        a.stage03 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage03.jpg);
        }
        a.stage04 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage04.jpg);
        }
        a.stage05 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage05.jpg);
        }
        a.stage06 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage06.jpg);
        }
        a.stage07 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage07.jpg);
        }
        a.stage08 dd{
            background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage08.jpg);
        }

        div.stage09{
            width: calc(92% / 3);
            margin: 0;
            padding: 80px 0 0;

            a{
                border: 10px solid var(--colorW);
                box-sizing: border-box;
                display: block;
                width: 100%;
                height: 160px;
                margin: 0 0 10px;
                position: relative;

                p{
                    color: var(--colorW);
                    position: absolute;
                    top: 40%;
                    right: 10%;
                    transform: translate(0,-50%);
                    z-index: 2;
                }

                &:before{
                    content: "";
                    background: var(--colorW);
                    width: 80%;
                    height: 1px;
                    position: absolute;
                    top: 50%;
                    right: 10%;
                    transform: translate(0,-50%);
                    transition: all ease 0.5s;
                    z-index: 1;
                }
                &:hover:before{
                    width: 70%;
                }

                &:after{
                    content:"";
                    background: #51424C;
                    background: linear-gradient(90deg, rgba(81, 66, 76, 0) 0%, rgba(81, 66, 76, 0.6) 100%);
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    top: 0;
                    left: 0;
                    z-index: 0;
                }
            }
            a.stageParts{
                background-size: 105%;
                background-repeat: no-repeat;
                background-position: center;
                transition: all ease 0.5s;
            }
            a.stage09-1{
                background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage09-1.jpg);
            }
            a.stage09-2{
                background-image: url(/bunjyo/funabashi-nichidaimaejt5/images/top/stage09-2.jpg);
            }
            a:hover.stageParts{
                background-size: 100%;
            }
        }
    }
}

@media all and (max-width:768px){
    main{
        height: 360px;
        padding: 65px 0 0;

        .swiper{
            .swiper-slide{
                img{
                    object-fit: cover;
                    height: 100%;
                }
            }
        }

        .text{
            width: 100%;
            top: 27%;
            left: 0;
        }
    }
    section{
        .links ul{
            width: 70%;
            margin: 0 auto;

            li{
                width: 100%;
                margin: 0 auto 5%;
            }
        }
    }

    section#catch{
        .caption{
            padding: 10px 0;
        }
        .bottom{
            figure{
                gap: 2%;
                padding: 15px 0 5px;

                img{
                    width: calc(92% / 2);
                    margin: 0 0 4%;
                }
            }
        }
    }
    
    section#information{
        padding: 8% 0 6%;

        h2{
            width: 80%;
            padding: 0 0 7%;
        }
        figure{
            width: 92%;
            margin: 0 auto 8%;
        }
    }
    section#stage{
        .inner{
            gap: 0;
            a{
                width: calc(100% / 2);

                dl{
                    dt span{
                        font-size: var(--font-menu);
                    }
                    dd{
                        height: 210px;
                    }
                }
            }

            a:nth-child(odd) dl dt{
                background: var(--colorW);
                color: var(--color01);
            }

            a:nth-child(even) dl dt{
                background: var(--color01);
                color: var(--colorW);
            }

            a.hide{
                dd:after{
                    font-size: var(--font-menu);
                    height: 27px;
                }
            }
            a.view{
                dd p{
                    font-size: var(--font-menu);
                    top: 20px;
                    right: 12px;
                }
                dd b{
                    font-size: var(--font-mini);
                    padding: 5px 10px 5px 10px;

                    &:after{
                        width: 50%;
                    }
                }
            }

            div.stage09{
                width: 85%;
                margin: 20px auto 0;
                padding: 0px 0 0;

                a{
                    border: 6px solid var(--colorW);
                    height: 140px;
                    margin: 0 0 20px;
                }
            }
        }
    }
}

@media all and (min-width:769px) and (max-width:960px){
    main{
        padding:165px 0 0;
        
        .text{
            top:34%;
        }
    }
}