/* ============================================================
   会社概要 LP風レスポンシブデザイン
   ============================================================ */

body {
    font-family: "Noto Sans JP", sans-serif;
    color: #1a1a1a;
    background: #f7f6f3;
    -webkit-font-smoothing: antialiased;
}

main section { margin: 0 !important; font-size: 14px !important; }

.co_container {
    margin: auto;
    padding: 0 20px;
    max-width: 700px;
}

@media screen and (min-width: 600px) { .co_container { padding: 0 32px; } }

/* ============================================================
   ヘッダー
   ============================================================ */

.co_header {
    padding: 100px 0 40px;
    background: #2c241e;
    text-align: center;
    margin: 0 !important;
}

@media screen and (min-width: 600px) { .co_header { padding: 120px 0 48px; } }

.co_header_label {
    font-family: "Noto Serif JP", serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.3em;
    color: #c08b30;
    margin-bottom: 8px;
}

.co_header_title {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #fff;
}

.co_header_title::after {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    background: #c08b30;
    margin: 16px auto 0;
}

@media screen and (min-width: 600px) { .co_header_title { font-size: 36px; } }

/* ============================================================
   メイン
   ============================================================ */

.co_section {
    padding: 48px 0 64px;
    background: #f7f6f3;
    margin: 0 !important;
}

@media screen and (min-width: 600px) { .co_section { padding: 64px 0 80px; } }

/* カード */
.co_card {
    background: #fff;
    border-radius: 12px;
    border: 1px solid #eee8df;
    overflow: hidden;
}

/* テーブル */
.co_table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: #fff !important;
}

.co_table tr {
    border-bottom: 1px solid #f0ece4 !important;
}

.co_table tr:last-child {
    border-bottom: none !important;
}

.co_table th,
.co_table td {
    padding: 16px 20px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    text-align: left !important;
    vertical-align: top !important;
}

@media screen and (min-width: 600px) {
    .co_table th,
    .co_table td {
        padding: 18px 24px !important;
        font-size: 15px !important;
    }
}

.co_table th {
    width: 100px !important;
    min-width: 100px !important;
    font-weight: 600 !important;
    color: #8a6d2e !important;
    letter-spacing: 0.04em;
    background: #faf8f4 !important;
    white-space: nowrap;
}

@media screen and (min-width: 600px) {
    .co_table th { width: 120px !important; }
}

.co_table td {
    color: #2c241e !important;
}

/* スマホでは縦積み */
@media screen and (max-width: 599px) {
    .co_table th,
    .co_table td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .co_table th {
        padding-bottom: 4px !important;
        background: none !important;
    }

    .co_table td {
        padding-top: 0 !important;
        padding-bottom: 20px !important;
    }
}

/* ============================================================
   Google Maps
   ============================================================ */

.co_map {
    margin-top: 32px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #eee8df;
}

.co_map iframe {
    display: block;
    width: 100%;
    height: 280px;
}

@media screen and (min-width: 600px) {
    .co_map iframe { height: 360px; }
}

/* ============================================================
   フッターCTA非表示
   ============================================================ */

.footer_cta { display: none !important; }
