.tnl-cont { margin: 80px auto 120px; max-width: 1400px; padding: 0 16px; word-break: keep-all; }
.tnl-cont *, .tnl-cont p { font-size: 16px; line-height: 1.65; word-break: keep-all !important; overflow-wrap: break-word !important; }
.tnl-cont a { text-decoration: none; }
.tnl-kicker { font-family: monospace; font-size: 12px !important; letter-spacing: 2px; color: #1e498d; font-weight: 700; margin-bottom: 12px; }
.tnl-tit { font-size: 32px !important; font-weight: 800 !important; line-height: 1.3 !important; margin-bottom: 14px; color: #111; }
.tnl-lead { color: #444; font-size: 17px !important; max-width: 960px; margin-bottom: 56px; }
.tnl-sec { margin-bottom: 64px; }
.tnl-sec h3 { font-weight: 700 !important; font-size: 24px !important; margin-bottom: 10px; padding-left: 14px; border-left: 5px solid #1e498d; line-height: 1.3 !important; }
.tnl-sec h3 span { font-family: monospace; font-size: 14px !important; color: #1e498d; margin-right: 10px; }
.tnl-sub { color: #666; font-size: 15px !important; margin-bottom: 20px; }
.tnl-lbl { display: block; font-family: monospace; font-size: 11px !important; letter-spacing: 1.5px; color: #1e498d; font-weight: 700; margin-bottom: 8px; }
.tnl-grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 20px; }
.tnl-card { background: #f7f9fc; border-radius: 14px; padding: 24px 22px; display: flex; flex-direction: column; }
.tnl-card-core { background: #1e498d; }
.tnl-card-core *, .tnl-card-core .tnl-lbl { color: #fff !important; }
.tnl-card strong { font-size: 21px !important; font-weight: 800 !important; margin-bottom: 4px; }
.tnl-card p { color: #555; font-size: 15px !important; margin-bottom: 10px; }
.tnl-card ul { padding-left: 18px; margin-bottom: 12px; flex: 1; }
.tnl-card li { list-style: disc; font-size: 15px !important; color: #333; }
.tnl-cust { display: block; font-size: 13px !important; color: #777; border-top: 1px dashed #c9d3e3; padding-top: 10px; margin-bottom: 8px; }
.tnl-card a { font-size: 14px !important; font-weight: 700; color: #1e498d; }
.tnl-card-core a { text-decoration: underline; }
.tnl-mod { background: #fff; border: 1px solid #e3e8f0; border-radius: 14px; padding: 20px; }
.tnl-mod strong { display: block; font-size: 18px !important; font-weight: 700 !important; margin-bottom: 6px; }
.tnl-mod p { font-size: 14px !important; color: #555; }
.tnl-flow { display: grid; grid-template-columns: 1fr 260px 1fr; gap: 16px; align-items: stretch; margin-top: 20px; }
.tnl-flow-col { background: #f7f9fc; border-radius: 14px; padding: 22px; }
.tnl-flow-col ul { padding: 0; margin: 0; }
.tnl-flow-col li { list-style: none; font-size: 15px !important; color: #333; padding: 6px 0; border-bottom: 1px dashed #d5dce8; }
.tnl-flow-col li:last-child { border-bottom: 0; }
.tnl-flow-col b { display: inline-block; min-width: 96px; font-family: monospace; font-size: 12px !important; color: #1e498d; }
.tnl-flow-col em { font-style: normal; font-size: 12px !important; color: #d9232e; }
.tnl-flow-mid { background: #1e498d; color: #fff; border-radius: 14px; padding: 26px 20px; text-align: center; display: flex; flex-direction: column; justify-content: center; position: relative; }
.tnl-flow-mid * { color: #fff; }
.tnl-flow-mid strong { font-size: 22px !important; font-weight: 800 !important; line-height: 1.3 !important; }
.tnl-flow-mid span { font-family: monospace; font-size: 12px !important; letter-spacing: 2px; margin: 8px 0 12px; opacity: .85; }
.tnl-flow-mid p { font-size: 13px !important; opacity: .9; }
.tnl-flow-mid::before, .tnl-flow-mid::after { content: ""; position: absolute; top: 50%; width: 0; height: 0; border-top: 9px solid transparent; border-bottom: 9px solid transparent; transform: translateY(-50%); }
.tnl-flow-mid::before { left: -12px; border-right: 10px solid #1e498d; }
.tnl-flow-mid::after { right: -12px; border-left: 10px solid #1e498d; }
.tnl-syn { background: #fff; border: 1px solid #e3e8f0; border-radius: 14px; padding: 22px; box-shadow: 0 4px 12px rgba(0,0,0,.04); }
.tnl-syn-eq { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.tnl-syn-eq span { flex: 1; background: #f0f5fb; border-radius: 10px; padding: 10px 8px; text-align: center; font-size: 14px !important; font-weight: 700; color: #1e498d; line-height: 1.35; }
.tnl-syn-eq span i { font-style: normal; font-size: 11px !important; color: #888; font-weight: 400; }
.tnl-syn-eq b { font-size: 22px !important; color: #d9232e; }
.tnl-syn strong { display: block; font-size: 18px !important; font-weight: 700 !important; margin-bottom: 6px; }
.tnl-syn p { font-size: 14px !important; color: #555; }
.tnl-case { background: #f7f9fc; border-radius: 14px; padding: 22px; }
.tnl-case strong { display: block; font-size: 17px !important; font-weight: 700 !important; margin-bottom: 6px; }
.tnl-case p { font-size: 14px !important; color: #555; margin-bottom: 10px; }
.tnl-kpi { display: block; font-size: 13px !important; color: #1e498d; font-weight: 700; border-top: 1px dashed #c9d3e3; padding-top: 10px; }
.tnl-note { margin-top: 16px; background: #fff8e6; border-left: 4px solid #f0b429; padding: 12px 16px; border-radius: 8px; font-size: 14px !important; color: #555; }
.tnl-note a { color: #1e498d; font-weight: 700; text-decoration: underline; }
.tnl-principles { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; }
.tnl-pr { border-radius: 14px; padding: 24px 26px 20px; }
.tnl-pr-do { background: #f0f5fb; border-left: 6px solid #1e498d; }
.tnl-pr-dont { background: #fdf1f2; border-left: 6px solid #d9232e; }
.tnl-pr h4 { font-size: 19px !important; font-weight: 700 !important; margin-bottom: 12px; }
.tnl-pr-do h4 { color: #1e498d; }
.tnl-pr-dont h4 { color: #d9232e; }
.tnl-pr ul { padding-left: 20px; }
.tnl-pr li { list-style: disc; font-size: 15px !important; color: #333; margin-bottom: 6px; }
.tnl-cta { background: #0b1220; color: #fff; border-radius: 16px; padding: 44px 32px; text-align: center; }
.tnl-cta * { color: #fff; }
.tnl-cta h3 { font-size: 28px !important; font-weight: 700 !important; margin-bottom: 8px; }
.tnl-cta p { font-size: 16px !important; color: #cfd8e6 !important; margin-bottom: 22px; }
.tnl-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 26px; border-radius: 8px; font-size: 16px !important; font-weight: 700 !important; background: #d9232e; margin: 4px; }
.tnl-btn:hover { background: #b51c25; }
.tnl-btn-line { background: transparent; border: 2px solid #fff; }
.tnl-btn-line:hover { background: #fff; color: #0b1220 !important; }
@media (max-width: 991px) { .tnl-grid3 { grid-template-columns: 1fr 1fr; } .tnl-flow { grid-template-columns: 1fr; } .tnl-flow-mid::before, .tnl-flow-mid::after { display: none; } .tnl-tit { font-size: 26px !important; } }
@media (max-width: 767px) { .tnl-cont { margin-top: 48px; } .tnl-grid3, .tnl-principles { grid-template-columns: 1fr; } .tnl-sec h3 { font-size: 21px !important; } .tnl-cta h3 { font-size: 23px !important; } .tnl-btn { width: 100%; margin: 4px 0; } }
.page-subMenu .page-nav a { font-size: 20px !important; }
@media (max-width: 767px) { .page-subMenu .page-nav a { font-size: 16px !important; } }
#gnb .gnb-nav > li > a[href*="md_id=contact"] { background: #d9232e; color: #fff !important; border-radius: 6px; padding: 0 10px !important; height: 44px !important; margin: 18px 4px 0; justify-content: center; white-space: nowrap; font-size: 15px !important; font-weight: 700 !important; }
#gnb .gnb-nav > li > a[href*="md_id=contact"]:hover { background: #b51c25; }
.tnl-syn p.tnl-syn-lead { font-size: 16px !important; font-weight: 700 !important; color: #1e498d !important; margin-bottom: 8px; }
.tnl-syn p.tnl-syn-case-h { font-size: 13px !important; font-weight: 700 !important; color: #222 !important; margin: 14px 0 6px; }
.tnl-syn ul.tnl-syn-case { list-style: none; padding: 0; margin: 0; }
.tnl-syn ul.tnl-syn-case li { position: relative; padding-left: 12px; font-size: 14px !important; color: #555; line-height: 1.6; }
.tnl-syn ul.tnl-syn-case li::before { content: "-"; position: absolute; left: 0; color: #d9232e; }
