/* Company Overview Page Styles */

/* Header Section */
.company-header {
    margin-bottom: 60px;
}

.company-tit-box {
    display: flex;
    align-items: baseline;
    gap: 15px;
    margin-bottom: 20px;
}

.company-tit {
    font-size: 40px;
    font-weight: 700;
    color: #111;
    line-height: 1;
}

.company-subtit {
    font-size: 18px;
    color: #999;
    font-weight: 400;
    text-transform: uppercase;
}

.company-slogan {
    font-size: 24px;
    color: #333;
    line-height: 1.4;
}

.company-slogan strong {
    font-weight: 700;
    color: #005bac;
}

/* Section Common */
.company-section {
    margin-bottom: 100px;
}

.company-section:last-child {
    margin-bottom: 0;
}

/* Overview Section */
.company-intro-text {
    margin-bottom: 40px;
}

.company-intro-text h3 {
    font-size: 32px;
    font-weight: 600;
    color: #111;
    line-height: 1.4;
}

.company-intro-text h3 strong {font-weight:800; color:var(--point-color);}

.company-info-box {
    display: flex;
    gap: 40px;
    align-items: stretch;
}

.company-info-table {
    flex: 1;
    border-top: 2px solid #111;
}

.company-info-table table {
    width: 100%;
    border-collapse: collapse;
}

.company-info-table th,
.company-info-table td {
    padding: 18px 0;
    border-bottom: 1px solid #ddd;
    text-align: left;
}

.company-info-table th {
    font-weight: 600;
    color: #111;
}

.company-info-table td {
    color: #111;
}

.company-info-img {
    flex: 1;
    position: relative;
    overflow: hidden;
    border-radius: 0;
	height:600px;
}

.company-info-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Intro Section */
.company-intro-content {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.company-intro-img {
    width: 100%;
    height: 400px;
    overflow: hidden;
    border-radius: 0;
}

.company-intro-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.company-intro-desc {text-align:center; font-size:1.1rem;} 

.company-intro-desc h3 {
    font-size: 36px;
    font-weight: 700;
    color: #111;
    margin-bottom: 30px;
    line-height: 1.3;
}

.desc-main {
    color: #111;
    line-height: 1.6;
    margin-bottom: 30px;
}

.desc-list {
	display:table;
	margin:0 auto 30px auto;
}

.desc-list li {
    color: #555;
    margin-bottom: 10px;
    padding-left: 15px;
    position: relative;
	text-align:left;
}

.desc-list li::before {
    content: '·';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: bold;
    color: #005bac;
}

.desc-footer {
    color: #111;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 1200px) {
    .company-tit {
        font-size: 32px;
    }

    .company-subtit {
        font-size: 16px;
    }

    .company-slogan {
        font-size: 20px;
    }

    .company-info-box {
        flex-direction: column;
        gap: 30px;
    }

	.company-intro-text h3 {font-size:1.5rem;}

    .company-info-img {
        height: 300px;
    }

    .company-intro-img {
        height: 250px;
    }

    .company-intro-desc h3 {
        font-size: 28px;
    }

    .desc-main {
        font-size: 16px;
    }

    .desc-list li {
        font-size: 15px;
    }

    .desc-footer {
        font-size: 16px;
    }
}

.com-prbox {display:grid; grid-template-columns:repeat(4,1fr); grid-gap:2rem;}
.com-prbox .one {text-align:center; background:#fff; border:1px solid #ddd; padding:2rem; transition:all .2s;}
.com-prbox .one i {width:70px; height:70px; font-size:30px; text-align:center; line-height:70px; background:var(--point-color); color:#fff; border-radius:100%;}
.com-prbox .one h2 {margin:10px 0;}
.com-prbox .one:hover {box-shadow:0 10px 30px rgba(0,0,0,0.05); border-color:var(--point-color); transform:translateY(-10px);}

@media (max-width: 1200px) {
	.com-prbox {grid-template-columns:1fr;}
}