.floor img {
    max-width: 100%;
    height: auto;
}

.floor {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}

.floor p {
    width: 75%;
}

.floor ul {
    width: 25%;
}

#contents .floor ul li {
    background: none;
}

.floor ul li a {
    background: #3f5592;
    display: block;
    padding: 10px 10px 10px 35px;
    color: #FFF;
    text-decoration: none;
    border-radius: 4px;
    position: relative;
}

.floor ul li a::before {
    content: '';
    display: block;
    width: 17px;
    height: 18px;
    background: url(images/liStandard.png) no-repeat center center;
    position: absolute;
    top: calc(50% - 9px);
    left: 10px;
}

.floor ul li a:hover {
    background: #425aa2;
}

.floor ul li a:hover::before {
    transform: rotate(15deg);
}

#popupContents {
    max-width: 80vw;
    background: #FFF;
    padding: 20px 40px;
    margin: auto;
    border-radius: 20px;
}

.flex {
    display: flex;
    gap: 0 20px;
    justify-content: center;
}

.flex img {
    max-width: 100%;
    height: auto;
}

#popupContents h1 {
    display: inline-block;
    background: #EEE;
    padding: 10px;
    border-radius: 8px;
    font-size: 1.125rem;
}

#popupContents p {
    text-align: center;
    margin-bottom: 20px;
}

#popupContents p.popupClose {
    margin: 40px auto 20px;
}

.popupClose a {
    display: inline-block;
    border: 1px solid #425aa2;
    color: #425aa2;
    text-decoration: none;
    padding: 5px 10px;
    border-radius: 18px;
}

@media screen and (max-width:480px) {
    #popupContents {
        width: calc(100% - 80px);
        max-width: initial;
        padding: 20px 15px;
    }
    .floor {
        display: block;
    }

    .floor p {
        width: 100%;
    }

    #contents .floor ul {
        width: calc(100% - 45px);
        margin-top: 40px;
    }

    .flex {
        display: block;
    }

    area {
        pointer-events: none;
        cursor: default;
    }
}