@charset "UTF-8";
.about-page .about-intro {
    position: relative;
    z-index: 2;
    width: var(--content-width);
    max-width: 100%;
    margin: 0 auto;
    padding: 20px 30px 65px;
}

.about-page .en-head {
    margin-bottom: 30px;
}

.about-lead {
    text-align: center;
    color: var(--blue);
    font-size: 2em;
    margin-bottom: 40px;
}

.about-text {
    text-align: center;
    font-size: 1.4em;
}

.about-page .deflist {
    margin-bottom: 70px;
    font-size: 1.2em;
}

.about-page .deflist-row {
    border-top-color: var(--blue);
}

.about-page .deflist-row:last-child {
    border-bottom-color: var(--blue);
}

.about-org-grid {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 15px 50px;
    margin-bottom: 15px;
}

.about-org-note {
    margin-top: 5px;
}

.about-access {
    width: 100%;
}

.about-mapwrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.about-mapwrap .about-bldg img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
}

.about-mapwrap .about-map iframe {
    width: 100%;
    height: 100%;
    min-height: 320px;
    border: 0;
}

.about-access-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    margin-top: 30px;
}

.about-access-addr {
    font-size: 1.4em;
    text-align: right;
    padding-right: 40px;
}

.about-access-route {
    font-size: 1.4em;
    color: var(--blue);
    text-align: left;
    padding-left: 40px;
    border-left: 1px solid var(--blue);
}

@media (max-width: 768px) {
    .about-page .about-intro {
        padding: 40px 25px 50px;
    }
    .about-lead,
    .about-text {
        text-align: left;
    }
    .about-lead {
        font-size: 1.6em;
    }
    .about-text {
        font-size: 1.2em;
    }
    .about-page .deflist {
        margin-bottom: 50px;
    }
    .about-mapwrap {
        grid-template-columns: 1fr;
        gap: 0px;
        margin-top: 80px;
    }
    .about-mapwrap .about-bldg img,
    .about-mapwrap .about-map iframe {
        min-height: 250px;
    }
    .about-access-info {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 0 25px;
    }
    .about-access-addr {
        text-align: left;
        padding: 0;
    }
    .about-access-route {
        text-align: left;
        padding-left: 0;
        border-left: 0;
        margin-bottom: 40px;
    }
    .about-org-grid{
        gap: 5px 40px;
    }
}
