@charset "UTF-8";
/*===========================================
General Info / Transportation,Venue
===========================================*/

/*-------------------------------------------
venue
-------------------------------------------*/
.venue__content{
    display:flex;
    flex-wrap:wrap;
}
    .venue__picture__sp{
        aspect-ratio:8 / 6;
        order:2;
        width:30%;
        background-repeat:no-repeat;
        background-position:50% 50%;
        background-size:cover;
    }
    .venue__info{
        flex:1;
        background-color:#fff;
        position:relative; z-index:3;
        padding-right:5%;
    }
        .venue__info a{
            color:#333;
        }
        .venue__info a:hover,
        .venue__info a:focus{
            color:var(--link-color);
        }
        .venue__title{
            display:flex;
            align-items:center;
            border-bottom:1px solid #ddd;
            margin-bottom:20px;
            padding-bottom:20px;
            position:relative;
        }
            .venue__name{
                margin:0;
                position:relative;
                color:var(--part-title-color);
                font-size:1.75rem;
                line-height:1.2;
            }
        .venue__data{
            position:relative;
        }
            .venue__data__inner{
                display:flex;
            }
                .venue__picture{
                    display:none;
                }
                .venue__contact{
                    list-style:none;
                    margin:0;
                    padding:0;
                    flex:1;
                    line-height:1.2;
                }
                    .venue__contact li{
                        margin-bottom:15px;
                        padding-left:160px;
                        position:relative;
                    }
                        .venue__contact label{
                            color:var(--primary-color);
                            font-weight:700;
                            position:absolute; left:0;
                        }
                        .venue__contact .tw{
                            color:#777;
                            font-size:.875rem;
                            margin-top:5px;
                        }
                            .venue__contact .tw a{
                                color:#777;
                            }
                            .venue__contact .tw a:hover,
                            .venue__contact .tw a:focus{
                                color:var(--primary-color);
                            }
                        .venue__contact a[href*='.pdf']{
                            display:inline-block;
                            background-image:url(../images/icon_file_pdf.svg);
                            background-repeat:no-repeat;
                            background-position:left center;
                            background-size:18px;
                            font-weight:700;
                            padding-left:24px;
                        }
    .venue__gmap{
        order:3;
        flex-basis:100%;
        margin-top:50px;
        height:450px;
        position:relative;
        overflow:hidden;
    }
        .venue__gmap iframe{
            position:absolute; top:0; left:50%;
            width:calc(100% + 650px);
            height:100%;
            transform:translateX(-50%);
        }
@media screen and (max-width:1024px){
    .venue__picture__sp{
        display:none;
    }
    .venue__info{
        padding-right:0;
    }
        .venue__picture{
            flex:0 0 30%;
            order:2;
            display:flex;
        }
            .venue__img{
                margin:0 0 0 auto;
                aspect-ratio:8 / 6;
                width:100%;
                position:relative;
            }
                .venue__img img{
                    display:block;
                    width:100%;
                    height:100%;
                    object-fit:cover;
                }
        .venue__contact{
            padding-right:3%;
        }
            .venue__contact li{
                margin-bottom:20px;
                padding-left:0;
            }
                .venue__contact label{
                    display:block;
                    position:static;
                    font-size:.875rem;
                    margin-bottom:3px;
                }
}
@media screen and (max-width:576px){
    .venue__content{
        display:block;
    }
        .venue__picture__sp{
            display:block;
            aspect-ratio:8 / 6;
            width:calc(100% + 30px);
            margin:0 -15px;
        }
        .venue__info{
            margin-top:-30px;
        }
            .venue__title{
                flex-wrap:wrap;
                box-shadow:0 -15px 15px -5px rgb(0 0 0 / 20%);
                padding:30px 20px;
            }
                .venue__logo{
                    width:200px;
                    margin:0 auto 20px;
                }
                .venue__name{
                    flex-basis:100%;
                    padding-left:0;
                }
            .venue__picture{
                display:none;
            }
            .venue__contact{
                padding:0 20px;
            }
                .venue__contact li{
                    margin-bottom:15px;
                }
}
@media screen and (max-width:440px){/* i16 Pro Max */
    .venue__name{
        font-size:1.5rem;
    }
        .venue__name .tw{
            font-size:1rem;
        }
    .venue__links{
        flex-wrap:wrap;
    }
        .venue__links > li{
            width:100%;
        }
            .venue__links a{
                display:block;
            }
    .venue__gmap{
        margin-top:40px;
    }
}
@media screen and (max-width:375px){/* SE, iX, XS, i11 Pro, i13 Mini, i6, i7, i8 */
    .venue__name {
        font-size:6.5vw;
    }
}
@media screen and (max-width:320px){/* i5, SE */
    .venue__picture__sp{
        width:calc(100% + 20px);
        margin:0 -10px;
    }
}

/*-------------------------------------------
floor
-------------------------------------------*/
.venue__floor{
    position:relative;
}
    .floor__num{
        color:var(--primary-color);
        font-size:1.5em;
    }
    .venue__floor figure{
        margin:0;
    }
        .venue__floor img{
            width:100%;
            transition:.2s;
        }
        .venue__floor a:focus img,
        .venue__floor a:hover img{
            box-shadow:0 0 0 1px var(--hover-color), 0 0 10px rgba(var(--primary-rgb),.2);
        }
        .venue__floor figcaption{
            text-align:center;
        }
        .venue__floor a figcaption{
            color:var(--link-color);
        }
        .venue__floor a:focus figcaption,
        .venue__floor a:hover figcaption{
            color:var(--hover-color);
        }

@media screen and (max-width:992px){
    .venue__floor figure{
        margin:0 -15px;
        padding:5px 15px 0;
        overflow-x:auto;
    }
        .venue__floor img{
            width:auto;
            height:calc(var(--vh, 1vh) * 80);
        }
            .venue__floor figcaption::after{
                content:", swipe to browse";
            }
}
@media screen and (max-width:320px){/* i5, SE1 */
    .venue__floor figure{
        margin:0 -10px;
        padding:0 10px;
    }
}