@charset "utf-8";

/* Legacy Content Skin (PC) */

/* --- About Head --- */
.__aboutHead:after {content:'';display:block;clear:both;}
.__aboutHead .info {float:left;width:657px;}
.__aboutHead .info h3 {font-size:48px;font-weight:300;color:#555;line-height:1.05em;letter-spacing:-0.05em;word-spacing:-0.025em;}
.__aboutHead .info h3 strong {font-weight:bold;color:#161616;letter-spacing:-0.05em;word-spacing:-0.025em;}
.__aboutHead .info .sum {font-size:18px;font-weight:300;color:#797979;line-height:1.4em;margin:45px 0 70px;}
.__aboutHead .info .tbl {width:100%;table-layout:fixed;border-top:1px solid #2f60ec;}
.__aboutHead .info .tbl tr > * {font-size:15px;padding:12px 30px;text-align:left;border-bottom:1px solid #ddd;line-height:1.5em;}
.__aboutHead .info .tbl tr th {padding-right:0;padding-left:40px;}
.__aboutHead .info .tbl tr th strong {display:block;font-weight:500;color:#3766b5;position:relative;}
.__aboutHead .info .tbl tr th strong:before {content:"";display:block;position:absolute;right:0;top:50%;margin-top:-6px;height:12px;background:#ddd;width:1px;}
.__aboutHead .img {float:right; width: 500px;}

/* --- About Board --- */
.__aboutBoard h3 {position:relative;margin-bottom:45px;color:#000;font-weight:100;padding-top:15px;font-size:40px;}
.__aboutBoard h3:before {content:"";display:block;width:45px;height:1px;position:absolute;left:0;top:0;background:#000;}
.__aboutBoard .area .box ~ .box {margin-top:50px;}
.__aboutBoard .area .box h4 {border-top:0px solid #353541;background:#fff;font-size:26px;font-weight:Bold;color:#000;background:#fff;padding:13px 0px;}
.__aboutBoard .area .box table {width:1010px;table-layout:fixed;border-collapse:separate;border-top:1px solid #dddfe5;}
.__aboutBoard .area .box table td {border-left:1px solid #dddfe5;border-bottom:1px solid #dddfe5;padding:10px 5px;font-size:14px;line-height:1.5em;}
.__aboutBoard .area .box table td:last-child {border-right:1px solid #dddfe5;}
.__aboutBoard .area .box table td .tit h5,
.__aboutBoard .area .box table td .tit dl dt {font-size:24px;color:#555;font-weight:500;}
.__aboutBoard .area .box table td .tit dl dd {font-size:16px;color:#767676;font-weight:300;margin-top:7px;line-height:1.4em;min-height:1.4em;}
.__aboutBoard .area .box table td ul {margin-top:15px;}

/* --- People --- */
.__people .box:after {content:'';display:block;clear:both;max-width:900px;}
.__people .box .img {float:left;width:576px;}
.__people .box .img img {width:100%;}
.__people .box .info {float:right;width:550px;}
.__people .box .info h3 strong {font-size:40px;font-weight:normal;color:#000;}
.__people .box .info h3 span {display:block;font-size:24px;color:#9f7843;margin-top:7px;font-weight:300;}
.__people .box .info .sum {margin-top:60px;color:#9f7843;font-weight:300;font-size:18px;}
.__people .box .info .__dotlist {margin-top:35px;font-size:18px;color:#6e6e6e;font-weight:300;}
.__people .box .info .__dotlist li ~ li {margin-top:26px;}
.__people .bot {margin-top:50px;padding-top:50px;border-top:1px solid #dadee1;}
.__people .box ~ .box {margin-top:50px; margin-left:250px;}
.__people .box h4 {border-top:0px solid #353541;background:#fff;font-size:26px;font-weight:Bold;color:#000;background:#fff;padding:13px 0px;}
.__people .box table {width:1010px;table-layout:fixed;border-collapse:separate;border-top:1px solid #dddfe5;}
.__people .box table td {border-left:1px solid #dddfe5;border-bottom:1px solid #dddfe5;padding:10px 5px;font-size:14px;line-height:1.5em;}
.__people .box table td:last-child {border-right:1px solid #dddfe5;}
.__people .box table td .tit h5,
.__people .box table td .tit dl dt {font-size:24px;color:#555;font-weight:500;}
.__people .box table td .tit dl dd {font-size:16px;color:#767676;font-weight:300;margin-top:7px;line-height:1.4em;min-height:1.4em;}
.__people .box table td ul {margin-top:15px;}
.__people .box2 h4{font-size:26px;font-weight:Bold;color:#000;padding:0px 0px 13px;}
.__people .box2 table {width:100%;table-layout:fixed;border-collapse:separate;border-top:1px solid #dddfe5;}
.__people .box2 table th{border-top:1px solid #353541;text-align:center; color:#fff; font-size:18px; font-weight:bold;height:60px;background:#7091c7; font-weight:bold; border-left:1px solid #9bb4d5;}
.__people .box2 table td {border-left:1px solid #dddfe5;border-bottom:1px solid #dddfe5;padding:10px 5px 10px 60px; font-size:14px;line-height:1.5em;}
.__people .box2 table td:first-child {font-weight:bold; font-size:16px; color:#555;}
.__people .box2 table td:last-child {border-right:1px solid #dddfe5; text-align:center; padding:10px 5px ; }

/* --- History --- */
.__history .wrap {position:relative;padding:50px 0 0;}
.__history .wrap:before {content:"";display:block;width:6px;position:absolute;left:50%;margin-left:-3px;background:#ececec;height:100%;}
.__history .wrap .box {position:relative;}
.__history .wrap .box ~ .box {margin-top:20px;}
.__history .wrap .box h4 {font-size:30px;font-weight:500;font-family:'Poppins',sans-serif;color:#000;line-height:1em;}
.__history .wrap .box .desc {margin-top:17px;}
.__history .wrap .box .desc dl {font-size:16px;position:relative;}
.__history .wrap .box .desc dl ~ dl {margin-top:10px;}
.__history .wrap .box .desc dl dt {position:absolute;top:0;font-weight:bold;color:#2f2f2f;}
.__history .wrap .box:before {content:"";width:42px;height:1px;background:#c7c7c7;position:absolute;top:14px;}
.__history .wrap .box:after {content:"";display:block;width:21px;height:21px;border-radius:50%;box-sizing:border-box;background:#fff;border:2px solid #2f60ec;position:absolute;top:4px;}
.__history .wrap .box:nth-child(odd) {margin-right:50%;text-align:right;padding-right:48px;}
.__history .wrap .box:nth-child(odd):before {right:0;}
.__history .wrap .box:nth-child(odd):after {right:-10.5px;}
.__history .wrap .box:nth-child(odd) .desc dl {padding-right:35px;}
.__history .wrap .box:nth-child(odd) .desc dl dt {right:0;}
.__history .wrap .box:nth-child(even) {margin-left:50%;padding-left:48px;}
.__history .wrap .box:nth-child(even):before {left:0;}
.__history .wrap .box:nth-child(even):after {left:-10.5px;}
.__history .wrap .box:nth-child(even) .desc dl {padding-left:35px;}
.__history .wrap .box:nth-child(even) .desc dl dt {left:0;}

/* --- Location --- */
.__loc .tit h3 {font-size:30px;font-weight:bold;color:#ae3030;}
.__loc .tit p {font-size:16px;font-weight:300;color:#717171;margin-top:5px;}
.__loc .info {margin-top:30px;}
.__loc .info li {display:inline-block;position:relative;font-size:14px;}
.__loc .info li ~ li {margin-left:20px;padding-left:21px;}
.__loc .info li ~ li:before {content:"";display:block;width:1px;height:16px;position:absolute;left:0;top:50%;margin-top:-8px;background:#b8b8b8;}
.__loc .info li img {display:inline-block;margin-right:5px;}
.__loc .area {margin-top:25px;}
.__loc .area:after {content:'';display:block;clear:both;}
.__loc .area .box {float:left;}
.__loc .area .box p {text-align:right;font-size:16px;font-weight:300;margin-top:10px;}
.__loc .area .box + .box {float:right;}

/* --- Tab Group --- */
.tab_group{margin-bottom:54px;}
.tab_group ul{display:flex;flex-wrap:wrap;gap:10px;overflow:visible;padding-bottom:12px;}
.tab_group ul li{float:none;flex:1 1 0;min-width:0;}
.tab_group ul.tab_four li{width:auto;flex-basis:33.3333%;}
.tab_group ul.tab_4ea li{width:auto;flex-basis:33%;}
.tab_group ul.tab_5ea li{width:auto;flex-basis:20%;}
.tab_group ul li a{display:flex;justify-content:center;align-items:center;min-height:68px;text-align:center;font-size:20px;font-weight:600;line-height:1.35;background:linear-gradient(180deg,#f6f7f9 0%,#eceff3 100%);color:#6b7280;padding:16px 18px;border:1px solid #d8dee6;border-bottom:2px solid #c8d0d9;border-radius:18px 18px 0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,0.75);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.tab_group ul li a:hover{background:linear-gradient(180deg,#fbfcfe 0%,#f1f4f8 100%);color:#344054;border-color:#bec8d4;transform:translateY(-1px)}
.tab_group ul li a.on{background:#fff;color:#0f2f57;border:1px solid #c7d5e5;border-bottom-color:#fff;box-shadow:0 -10px 20px rgba(15,47,87,0.08), inset 0 1px 0 rgba(255,255,255,0.95)}

/* --- Common Title --- */
.h3_tit{font-size:28px;color:#005890;letter-spacing:-1px;line-height:130%;padding:0 0 20px 0;font-weight:400}
.h3_tit > .normal{display:block;font-size:18px;font-weight:normal}

/* --- Map --- */
.map{margin-bottom:40px;width:90vw}
.map img{width:100%;max-width:980px;}

/* --- Location List --- */
.locate{padding-bottom:0px;}
.locate li{margin-bottom:20px;font-size:18px;position:relative;}
.locate li strong{position:absolute;left:0;top:0;line-height:150%;}
.locate li span{display:block;padding:0 0 0 70px;line-height:150%;}
.locate li span.address{padding:0 0 0 100px}

/* --- Partner --- */
.__partner {margin:0 -22px -60px;}
.__partner:after {content:'';display:block;clear:both;}
.__partner .box {width:33.33333%;padding:0 22px;float:left;margin-bottom:60px;}
.__partner .box .in {border:1px solid #c7c7c7;}
.__partner .box .img {text-align:center;overflow:hidden;}
.__partner .box .info {border-top:1px solid #c7c7c7;padding:30px;font-size:16px;}
.__partner .box .info li ~ li {margin-top:15px;}

/* --- Title --- */
.__tit {text-align:center;margin-bottom:40px;}
.__tit h3 {font-size:48px;font-weight:bold;color:#000;}
.__tit h4 {font-size:36px;color:#173da0;font-weight:bold;margin-top:25px;}
.__tit .desc {font-size:20px;font-weight:300;color:#8a8a8a;margin-top:10px;line-height:1.5em;}
.__tit .sum {font-size:24px;margin-top:15px;line-height:1.4em;color:#787878;letter-spacing:-0.05em;}
.__tit .sum span {vertical-align:baseline;}
.__tit .sum .blue {color:#2663c8;}
.__tit .sum .red {color:#f32525;}
.__tit.line {border-top:1px solid #ddd;margin-top:70px;padding-top:70px;}

/* ====================================================================
   7. Block CSS (Content Blocks)
   Source: view_template.css
   ==================================================================== */

/* --- Banner --- */
.dynamic-gallery .banner img {
    width: 100%;
    height: auto;
}

/* --- Credentials Board --- */
.CBoard-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 30px;
    transition: all 0.3s ease;
}
.CBoard-item {
    width: 25%;
    margin: 0px 10px 0px 10px;
    box-sizing: border-box;
    background: #f0f0f0;
    transition: transform 0.3s ease;
}
.CBoard-item img {
    width: 100%;
    height: auto;
    cursor: pointer;
    display: block;
    border: 1px solid #c5c5c5;
}
.CBoard-row.emphasized .CBoard-item {
    width: 37.5%;
}

/* --- Business Portfolio --- */
.business-portfolio {
    width: 100%;
    margin-bottom: 40px;
}
.business-portfolio h3 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #333;
}
.image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    text-align: center;
}
.image-grid.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}
.image-grid.cols-2 {
    grid-template-columns: repeat(2, 1fr);
}
.image-grid .grid-item {
    height: 100%;
}
.image-grid .grid-item img {
    width: 100%;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* --- YouTube --- */
.youtube-section {
    margin-top: 40px;
}
.youtube-video {
    margin-bottom: 30px;
}
.youtube-video h4 {
    font-size: 1.5em;
    margin-bottom: 15px;
}
.video-container {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
}
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
