@charset "utf-8";

/* 移管用追加ここから（常に先頭） */
#contents {
    width: 950px;
    margin: auto;
    min-height: 300px;
    padding-bottom: 20px;
}

.transfer-page,
.transfer-page :where(:not(iframe, svg, path, use, [class*="swiper"], .js-favorite-button)),
.transfer-page *::before,
.transfer-page *::after {
    all: revert;
}

.l-contents:has(.transfer-page .md-mv-heading) {
    overflow: visible;
}

.transfer-page {
    width: 100%;
    font-family: メイリオ, 'Meiryo', "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #333;
}

.transfer-page * {
    font-family: inherit;
}

.transfer-page :where(a) {
    color: #07519A;
    text-decoration: none;
    line-height: 1.4;
    box-sizing: content-box;
    font-size: 14px;
    margin: 0;
    padding: 0;
}

.transfer-page :where(a, button):hover {
    opacity: 1;
    transition: 0s;
    color: #CC0000;
    text-decoration: underline;
}

.transfer-page :where(h1, h2, h3, h4, h5,
    p, ul, ol, li, dl, dt, dd,
    form, table, div) {
    line-height: 1.4;
    box-sizing: content-box;
    font-size: 14px;
    margin: 0;
    padding: 0;
    list-style-type: none;
    color: #333333;
}

.transfer-page :where(img) {
    border: none;
    vertical-align: bottom;
}

.transfer-page *::before,
.transfer-page *::after {
    box-sizing: content-box;
}

.transfer-page :where(img) {
    max-width: none;
}

/* all:revert 後に clearfix を再適用（2カラム float 用） */
.transfer-page .clearfix {
    zoom: 1;
}
.transfer-page .clearfix::after {
    content: "";
    display: block;
    clear: both;
}

/* 移管用追加ここまで */

/* ===== Lab3 共通 company.css（移管元で併読・floatレイアウトの土台） ===== */

#company-section {
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
    padding: 30px 0 0 0;
    width: auto;
    zoom: 1;
}
#company-left {
    width: 66%;
    float: left;
    margin: 0 0 20px 10px;
    display: inline;
}
.comp-ad {
    position: relative;
}
.company-map {
    float: right;
    padding: 3px 0 0 0;
}
.transfer-page table {
    width: 100%;
}
#company-section th {
    font-weight: normal;
    text-align: left;
    border-bottom: 1px dotted #777;
    vertical-align: top;
    padding: 10px 0 5px;
}
#company-left th {
    width: 85px;
}
#company-section td {
    border-bottom: 1px dotted #bbb;
    padding: 10px 0 5px;
}
#company-right {
    width: 206px;
    float: right;
    margin: 0 9px 20px 0;
    display: inline;
}
#company-right li {
    margin: 0 0 11px;
    text-align: center;
}
#company-right li img {
    border: 1px solid #999;
}
#company-right li.last {
    margin: 0;
}
#company-right p {
    text-align: right;
    margin: 3px 0 0 0;
}
#company-map {
    clear: both;
    width: 656px;
    margin: auto;
}
#company-map iframe {
    border: 3px solid #130975;
}
#company-map p {
    text-align: right;
    clear: both;
}

#companyTableInfo {
    table-layout: fixed;
}

/* ===== 移管元 company-org.css 本文（上書き・強い） ===== */

.transfer-page * {
    font-family: メイリオ, 'Meiryo', "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
}

.article {
    background: #fff;
    overflow: hidden;
}

.company_intro {
    padding: 80px 0 0;
}
    .company_intro-title {
        text-align: center;
        position: relative;
        margin: 0 0 50px;
    }
        .company_intro-title:before {
            content: "";
            width: 435px;
            height: 2px;
            background: #7bc2de;
            position: absolute;
            top: 50%;
            margin-top: -1px;
        }
            .company_intro-title.title01:before {
                left: 0;
            }
            .company_intro-title.title02:before {
                right: 0;
            }

    .company_intro-text {
        text-align: center;
        margin: 0 0 80px;
    }

.company_mainimg {
    position: relative;
}
    .company_mainimg-img img {
        display: block;
        width: 100%;
        height: auto;
    }
    .company_mainimg-text {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: 8px 0 8px 10px;
        box-sizing: border-box;
        background: rgba(5,87,163,.85);
        color: #fff;
        font-weight: bold;
        font-size: 20px;
    }
        .text_en {
            margin: 0 0 0 10px;
            font-size: 15px;
        }

#company-section {
    border: none;
    padding: 0;
    border-radius: 0;
}

.company_info-wrap {
    padding: 20px 20px 30px 10px;
}

#company-left {
    margin: 0;
    width: 625px;
}

    #company-left table {
        border-collapse: collapse;
    }
        #company-section tr {
            border-bottom: 2px solid #ece7d9;
        }

            #company-section tr:first-child th,
            #company-section tr:first-child td {
                padding-top: 0;
            }
            #company-section th,
            #company-section td {
                border: none;
                padding: 20px 0;
                vertical-align: top;
            }
            #company-section th {
                font-size: 14px;
                font-weight: bold;
                color: #0557a3;
                padding: 20px 10px;
                width: 98px;
            }
            #company-section td {
                padding: 20px;
            }

    #company-right {
        width: 275px;
        margin: 0;
    }
        #company-right .showImage {
            cursor: pointer;
        }
        .glass {
            font-size: 12px;
        }
            .glass img {
                margin-left: 5px;
            }

    #company-map {
        width: inherit;
        margin: 0 0 30px;
    }
        #map {
            box-sizing: border-box;
            width: 930px;
            height: 350px;
            margin: 0 auto;
            border: 3px solid #130975;
        }
        #map iframe {
            width: 100%;
            height: 100%;
            border: 0;
        }
