/* ESG경영 > 품질경영 */
.esg_quality .w1740{ gap: 97px; }
.esg_quality section{ display: flex; flex-direction: column; gap: 60px; min-width: 0; }
.esg_quality .esg_deco_title::after{ background: #F49E00; }
.esg_quality .quality_head{ display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.esg_quality .quality_head h3:not(.esg_deco_title){ font-size: 5rem; font-weight: 600; line-height: 1.3; letter-spacing: -1px; color: #222; }
.esg_quality .quality_head p{ max-width: 1202px; font-size: 2rem; font-weight: 400; line-height: 1.7; letter-spacing: -0.4px; color: #333; }
.esg_quality .quality_block{ display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.esg_quality .quality_block.is_gap31{ gap: 31px; }
.esg_quality .quality_label{ font-size: 2.6rem; font-weight: 600; line-height: 1.3077; letter-spacing: -0.52px; color: #F49E00; }
.esg_quality .quality_panel{ padding: 60px; border-radius: 20px; background: #F9F9F9; min-width: 0; }

.esg_quality .org_desc li,
.esg_quality .forge_desc li,
.esg_quality .claim_desc li,
.esg_quality .policy_text li{ display: flex; gap: 5px; min-width: 0; font-size: 1.8rem; font-weight: 400; line-height: 1.2778; letter-spacing: -0.36px; color: #333; }
.esg_quality .org_desc li::before,
.esg_quality .forge_desc li::before,
.esg_quality .claim_desc li::before,
.esg_quality .policy_text li::before{ content: "\2022"; flex: 0 0 auto; color: #F49E00; }

.esg_quality .quality_org{ display: flex; flex-direction: column; padding: 45px 60px; }
.esg_quality .org_row{ display: flex; align-items: stretch; }
.esg_quality .org_side{ position: relative; flex: 0 0 19.5062%; min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.esg_quality .org_side::after{ content: ""; position: absolute; left: 50%; width: 1px; background: #BBB; } /* decoration */
.esg_quality .org_ceo .org_side::after{ top: 50%; bottom: 0; }
.esg_quality .org_dept .org_side::after{ top: 0; bottom: 0; }
.esg_quality .org_team .org_side::after{ display: none; }
.esg_quality .org_rel .org_side::after{ top: 0; bottom: 50%; }
.esg_quality .org_node{ position: relative; z-index: 1; display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 10px; border: 1px solid transparent; border-radius: 10px; font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; text-align: center; }
.esg_quality .org_node span{ min-width: 0; }
.esg_quality .org_ceo .org_node{ background: #F49E00; border-color: #F49E00; color: #fff; }
.esg_quality .org_dept .org_node{ background: #FFD68B; border-color: #FFD68B; color: #B0760A; }
.esg_quality .org_team .org_node{ flex: 1 1 0; background: #FFF1D8; border-color: #F49E00; color: #F49E00; }
.esg_quality .org_rel .org_node{ background: #fff; border-color: #DDD; color: #666; }
.esg_quality .org_teams{ display: flex; gap: 20px; }
.esg_quality .org_bus{ flex: 1 1 0; margin: 0 23.4%; border: 1px solid #BBB; }
.esg_quality .org_bus.top{ border-bottom: 0; }
.esg_quality .org_bus.bottom{ border-top: 0; }
.esg_quality .org_link{ flex: 0 0 3.7037%; align-self: center; height: 1px; background: #F49E00; }
.esg_quality .org_rel .org_link{ background: #E1E1E1; }
.esg_quality .org_desc{ flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; justify-content: center; gap: 15px; margin: 15px 0; padding: 20px 30px; border: 1px solid #F49E00; border-radius: 10px; background: #fff; }
.esg_quality .org_desc li + li{ padding-top: 14px; border-top: 1px solid #DDD; }

.esg_quality .quality_policy{ display: flex; align-items: stretch; gap: 60px; }
.esg_quality .policy_img{ flex: 811 1 0; min-width: 0; border-radius: 20px; background-color: #000; }
.esg_quality .policy_text{ flex: 749 1 0; min-width: 0; display: flex; flex-direction: column; justify-content: center; gap: 40px; }
.esg_quality .policy_text .lead{ font-size: 2.4rem; font-weight: 600; line-height: 1.7083; letter-spacing: -0.48px; color: #111; }
.esg_quality .policy_text ul{ display: flex; flex-direction: column; gap: 10px; }
.esg_quality .policy_text li{ align-items: center; padding: 20px 25px; border-radius: 10px; background: #fff; }

.esg_quality .ic{ display: block; flex: 0 0 auto; background: no-repeat center / contain; }
.esg_quality .ic_wire{ width: 60px; height: 60px; background-image: url('/img/sub/esg_quality_ic_wire.svg'); }
.esg_quality .ic_trace{ width: 60px; height: 47px; background-image: url('/img/sub/esg_quality_ic_trace.svg'); }
.esg_quality .ic_customer{ width: 83px; height: 70px; background-image: url('/img/sub/esg_quality_ic_customer.svg'); }
.esg_quality .ic_order{ width: 47px; height: 40px; background-image: url('/img/sub/esg_quality_ic_order.svg'); }
.esg_quality .ic_receive{ width: 39px; height: 40px; background-image: url('/img/sub/esg_quality_ic_receive.svg'); }
.esg_quality .ic_inspect{ width: 34px; height: 40px; background-image: url('/img/sub/esg_quality_ic_inspect.svg'); }
.esg_quality .ic_action{ width: 45px; height: 40px; background-image: url('/img/sub/esg_quality_ic_action.svg'); }
.esg_quality .ic_nc_01{ width: 120px; height: 120px; background-image: url('/img/sub/esg_quality_ic_nc_01.svg'); }
.esg_quality .ic_nc_02{ width: 120px; height: 120px; background-image: url('/img/sub/esg_quality_ic_nc_02.svg'); }
.esg_quality .ic_nc_03{ width: 120px; height: 120px; background-image: url('/img/sub/esg_quality_ic_nc_03.svg'); }
.esg_quality .ic_survey_01{ width: 144px; height: 120px; background-image: url('/img/sub/esg_quality_ic_survey_01.svg'); }
.esg_quality .ic_survey_02{ width: 110px; height: 120px; background-image: url('/img/sub/esg_quality_ic_survey_02.svg'); }
.esg_quality .ic_survey_03{ width: 121px; height: 120px; background-image: url('/img/sub/esg_quality_ic_survey_03.svg'); }

.esg_quality .quality_chain{ display: flex; flex-direction: column; }
.esg_quality .chain_head,
.esg_quality .chain_body{ display: grid; grid-template-columns: 260fr 483fr 16px 456fr 16px 389fr; }
.esg_quality .chain_head > *{ display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 10px; border: solid #F49E00; border-width: 1px 0; background-color: #FFF1D8; font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; color: #F49E00; text-align: center; }
.esg_quality .chain_head .stage{ border-width: 1px 1px 1px 0; }
.esg_quality .chain_head .arr{ padding: 0; background: #FFF1D8 url('/img/sub/esg_quality_arrow.svg') no-repeat center / 16px 15px; }
.esg_quality .chain_body .method{ grid-column: 1; grid-row: 1 / 3; display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 20px; border-right: 1px solid #DDD; background: #fff; font-size: 1.8rem; font-weight: 500; line-height: 1.2778; letter-spacing: -0.36px; color: #111; text-align: center; }
.esg_quality .chain_body .bg{ grid-column: 2 / -1; grid-row: 1 / 3; background: #fff; }
.esg_quality .chain_body .vline{ grid-row: 1 / 3; justify-self: center; width: 1px; background: #F49E00; }
.esg_quality .chain_body .v1{ grid-column: 3; }
.esg_quality .chain_body .v2{ grid-column: 5; }
.esg_quality .chain_body .box{ position: relative; z-index: 1; display: flex; align-items: center; min-width: 0; border-radius: 20px; }
.esg_quality .chain_body .txt{ display: flex; flex-direction: column; min-width: 0; }
.esg_quality .chain_body .txt em{ display: none; }
.esg_quality .chain_body .txt strong{ font-size: 1.8rem; font-weight: 600; line-height: 1.6111; letter-spacing: -0.36px; }
.esg_quality .chain_body .wire{ grid-column: 2 / 5; grid-row: 1; justify-content: center; gap: 30px; margin: 30px 27px 10px; padding: 30px 60px; background: #F49E00; color: #fff; }
.esg_quality .chain_body .trace{ grid-column: 2 / 5; grid-row: 2; justify-content: center; gap: 30px; margin: 10px 27px 30px; padding: 30px 20px; border: 1px solid #F49E00; background: #fff; color: #F49E00; }
.esg_quality .chain_body .customer{ grid-column: 6; grid-row: 1 / 3; flex-direction: column; justify-content: center; gap: 30px; width: 100%; max-width: 338px; margin: 30px auto; padding: 40px; border: 1px solid #F49E00; background: #fff; color: #F49E00; text-align: center; }
.esg_quality .chain_body .customer .txt strong{ line-height: 1.2778; }

.esg_quality .quality_forge,
.esg_quality .quality_claim{ display: flex; flex-direction: column; gap: 10px; }
.esg_quality .forge_row,
.esg_quality .claim_row{ display: flex; align-items: stretch; }
.esg_quality .forge_tit,
.esg_quality .claim_tit{ display: flex; align-items: center; min-width: 0; border: 1px solid #F49E00; border-radius: 10px 0 0 10px; }
.esg_quality .forge_tit strong,
.esg_quality .claim_tit strong{ min-width: 0; font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; color: #F49E00; }
.esg_quality .forge_tit{ flex: 0 0 23.4568%; gap: 20px; padding: 25px 20px 20px 30px; background: #FFF1D8; }
.esg_quality .forge_desc,
.esg_quality .claim_desc{ min-width: 0; display: flex; flex-direction: column; justify-content: center; gap: 10px; padding: 20px 20px 20px 30px; border: 1px solid #F49E00; border-left: 0; border-radius: 0 10px 10px 0; background: #fff; }
.esg_quality .forge_desc{ flex: 1 1 0; }
.esg_quality .claim_tit{ flex: 0 0 18.5185%; gap: 10px; padding: 20px 20px 20px 30px; background: #FEF5E3; }
.esg_quality .claim_tit .num{ display: flex; justify-content: center; align-items: center; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: #F49E00; font-size: 1.6rem; font-weight: 800; line-height: 1.3125; letter-spacing: -0.32px; color: #fff; }
.esg_quality .claim_desc{ flex: 1 1 0; }

.esg_quality .quality_cards{ display: flex; gap: 40px; }
.esg_quality .quality_card{ flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; }
.esg_quality .quality_card .top{ display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 30px; padding: 20px 10px; border: 1px solid #F49E00; border-radius: 20px 20px 0 0; background: #FFF1D8; text-align: center; }
.esg_quality .quality_card.has_ic .top{ padding: 40px 10px; }
.esg_quality .quality_card h5{ min-width: 0; font-size: 2rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.4px; color: #F49E00; }
.esg_quality .quality_card .bottom{ flex: 1 1 auto; display: flex; flex-direction: column; justify-content: center; padding: 25px 30px; border: 1px solid #F49E00; border-top: 0; border-radius: 0 0 20px 20px; background: #fff; text-align: center; }
.esg_quality .quality_card .bottom p{ font-size: 1.8rem; font-weight: 400; line-height: 1.6111; letter-spacing: -0.36px; color: #333; }
.esg_quality .is_survey .bottom p{ line-height: 1.2778; }
.esg_quality .quality_card .bottom ul{ display: flex; flex-direction: column; gap: 15px; }
.esg_quality .quality_card .bottom li{ font-size: 1.8rem; font-weight: 400; line-height: 1.2778; letter-spacing: -0.36px; color: #333; }
.esg_quality .quality_card .bottom li + li{ padding-top: 14px; border-top: 1px solid #E1E1E1; }

@media screen and (max-width: 1280px){
	.esg_quality .w1740{ gap: 80px; }
	.esg_quality .quality_head h3:not(.esg_deco_title){ font-size: 4rem; }
	.esg_quality .quality_head p{ font-size: 1.8rem; }
	.esg_quality .quality_label{ font-size: 2.4rem; }
	.esg_quality .quality_panel{ padding: 40px; }
	.esg_quality .quality_org{ padding: 25px 40px; }
	.esg_quality .org_side{ flex: 0 0 30%; }
	.esg_quality .org_link{ flex: 0 0 4%; }
	.esg_quality .org_desc{ flex: 1 1 0; }
	.esg_quality .org_node{ padding: 18px 8px; font-size: 1.6rem; }
	.esg_quality .org_teams{ gap: 10px; }
	.esg_quality .quality_policy{ gap: 40px; }
	.esg_quality .policy_text{ gap: 30px; }
	.esg_quality .policy_text .lead{ font-size: 2.2rem; }
	.esg_quality .org_desc li,
	.esg_quality .forge_desc li,
	.esg_quality .claim_desc li,
	.esg_quality .policy_text li{ font-size: 1.6rem; }
	.esg_quality .chain_head > *,
	.esg_quality .chain_body .method,
	.esg_quality .chain_body .txt strong,
	.esg_quality .forge_tit strong,
	.esg_quality .claim_tit strong,
	.esg_quality .quality_card .bottom p,
	.esg_quality .quality_card .bottom li{ font-size: 1.6rem; }
	.esg_quality .chain_body .wire{ gap: 20px; padding: 24px 30px; }
	.esg_quality .chain_body .customer{ padding: 30px 20px; }
	.esg_quality .forge_tit{ gap: 15px; padding: 20px 15px 20px 20px; }
	.esg_quality .claim_tit{ padding: 20px 15px 20px 20px; }
	.esg_quality .quality_cards{ gap: 20px; }
	.esg_quality .quality_card .bottom{ padding: 20px; }
	.esg_quality .quality_card h5{ font-size: 1.8rem; }
	.esg_quality .quality_card .ic_survey_01{ width: 115px; height: 96px; }
	.esg_quality .quality_card .ic_survey_02{ width: 88px; height: 96px; }
	.esg_quality .quality_card .ic_survey_03{ width: 97px; height: 96px; }
	.esg_quality .quality_card .ic_nc_01,
	.esg_quality .quality_card .ic_nc_02,
	.esg_quality .quality_card .ic_nc_03{ width: 100px; height: 100px; }
	.esg_quality .quality_card.has_ic .top{ gap: 24px; padding: 30px 10px; }
}

@media screen and (max-width: 1000px){
	.esg_quality .w1740{ gap: 60px; }
	.esg_quality section{ gap: 40px; }
	.esg_quality .quality_head h3:not(.esg_deco_title){ font-size: 3.4rem; }
	.esg_quality .quality_panel{ padding: 30px; }
	.esg_quality .quality_org{ gap: 20px; padding: 30px; }
	.esg_quality .org_row{ flex-direction: column; gap: 10px; }
	.esg_quality .org_side{ flex: none; }
	.esg_quality .org_side::after,
	.esg_quality .org_bus,
	.esg_quality .org_link{ display: none; }
	.esg_quality .org_desc{ flex: none; margin: 0; padding: 16px 20px; }
	.esg_quality .quality_policy{ flex-direction: column; gap: 30px; }
	.esg_quality .policy_img{ flex: none; aspect-ratio: 811 / 477; }
	.esg_quality .policy_text{ flex: none; }

	.esg_quality .chain_head{ grid-template-columns: 1fr 16px 1fr 16px 1fr; }
	.esg_quality .chain_head .stage{ display: none; }
	.esg_quality .chain_head > *{ padding: 14px 6px; }
	.esg_quality .chain_body{ display: flex; flex-direction: column; gap: 14px; padding: 20px; background: #fff; }
	.esg_quality .chain_body .method{ justify-content: flex-start; padding: 0; border-right: 0; font-weight: 700; color: #F49E00; }
	.esg_quality .chain_body .bg,
	.esg_quality .chain_body .vline{ display: none; }
	.esg_quality .chain_body .txt em{ display: block; margin-bottom: 4px; font-size: 1.4rem; font-weight: 500; font-style: normal; line-height: 1.3; letter-spacing: -0.28px; opacity: 0.85; }
	.esg_quality .chain_body .box{ margin: 0; max-width: none; }
	.esg_quality .chain_body .wire,
	.esg_quality .chain_body .trace{ justify-content: flex-start; gap: 20px; padding: 22px 24px; }
	.esg_quality .chain_body .customer{ flex-direction: row; justify-content: flex-start; gap: 20px; padding: 22px 24px; text-align: left; }
	.esg_quality .chain_body .customer .ic_customer{ width: 66px; height: 56px; }
	.esg_quality .chain_body .wire .ic_wire{ width: 48px; height: 48px; }
	.esg_quality .chain_body .trace .ic_trace{ width: 48px; height: 38px; }
}

@media screen and (max-width: 768px){
	.esg_quality .w1740{ gap: 50px; }
	.esg_quality section{ gap: 30px; }
	.esg_quality .quality_head h3:not(.esg_deco_title){ font-size: 3rem; }
	.esg_quality .quality_head p{ font-size: 1.6rem; line-height: 1.6; }
	.esg_quality .quality_label{ font-size: 2.2rem; }
	.esg_quality .quality_panel{ padding: 20px; border-radius: 12px; }
	.esg_quality .quality_org{ padding: 20px; }
	.esg_quality .org_node{ font-size: 1.6rem; }
	.esg_quality .policy_img{ border-radius: 12px; }
	.esg_quality .policy_text .lead{ font-size: 1.8rem; line-height: 1.6; }
	.esg_quality .policy_text{ gap: 20px; }
	.esg_quality .policy_text li{ align-items: flex-start; padding: 14px 16px; }
	.esg_quality .org_desc li,
	.esg_quality .forge_desc li,
	.esg_quality .claim_desc li,
	.esg_quality .policy_text li{ font-size: 1.5rem; line-height: 1.5; }
	.esg_quality .chain_head > *,
	.esg_quality .chain_body .method,
	.esg_quality .chain_body .txt strong,
	.esg_quality .forge_tit strong,
	.esg_quality .claim_tit strong,
	.esg_quality .quality_card .bottom p,
	.esg_quality .quality_card .bottom li{ font-size: 1.5rem; }
	.esg_quality .chain_body .box{ border-radius: 12px; }
	.esg_quality .forge_row,
	.esg_quality .claim_row{ flex-direction: column; }
	.esg_quality .forge_tit,
	.esg_quality .claim_tit{ flex: none; padding: 14px 16px; border-radius: 10px 10px 0 0; }
	.esg_quality .forge_desc,
	.esg_quality .claim_desc{ flex: none; gap: 8px; padding: 14px 16px; border-left: 1px solid #F49E00; border-top: 0; border-radius: 0 0 10px 10px; }
	.esg_quality .forge_tit .ic{ transform: scale(0.8); transform-origin: left center; margin-right: -8px; }
	.esg_quality .quality_cards{ flex-direction: column; gap: 20px; }
	.esg_quality .quality_card .top{ border-radius: 14px 14px 0 0; }
	.esg_quality .quality_card .bottom{ border-radius: 0 0 14px 14px; }
	.esg_quality .quality_card h5{ font-size: 1.7rem; }
}

@media screen and (max-width: 480px){
	.esg_quality .w1740{ gap: 40px; }
	.esg_quality .quality_head h3:not(.esg_deco_title){ font-size: 2.8rem; }
	.esg_quality .quality_head p{ font-size: 1.5rem; }
	.esg_quality .quality_label{ font-size: 2rem; }
	.esg_quality .quality_panel{ padding: 16px; }
	.esg_quality .quality_org{ padding: 16px; }
	.esg_quality .org_node{ padding: 14px 6px; font-size: 1.5rem; }
	.esg_quality .org_teams{ gap: 8px; }
	.esg_quality .policy_text .lead{ font-size: 1.6rem; }
	.esg_quality .chain_head > *,
	.esg_quality .chain_body .method,
	.esg_quality .chain_body .txt strong,
	.esg_quality .forge_tit strong,
	.esg_quality .claim_tit strong,
	.esg_quality .quality_card .bottom p,
	.esg_quality .quality_card .bottom li{ font-size: 1.4rem; }
	.esg_quality .chain_head > *{ padding: 12px 4px; }
	.esg_quality .chain_body{ padding: 16px; }
	.esg_quality .chain_body .wire,
	.esg_quality .chain_body .trace,
	.esg_quality .chain_body .customer{ gap: 14px; padding: 18px 16px; }
	.esg_quality .quality_card .bottom{ padding: 16px; }
	.esg_quality .quality_card h5{ font-size: 1.6rem; }
	.esg_quality .quality_card.has_ic .top{ gap: 16px; padding: 24px 10px; }
	.esg_quality .quality_card .ic_survey_01{ width: 96px; height: 80px; }
	.esg_quality .quality_card .ic_survey_02{ width: 73px; height: 80px; }
	.esg_quality .quality_card .ic_survey_03{ width: 81px; height: 80px; }
	.esg_quality .quality_card .ic_nc_01,
	.esg_quality .quality_card .ic_nc_02,
	.esg_quality .quality_card .ic_nc_03{ width: 80px; height: 80px; }
	.esg_quality .org_desc li,
	.esg_quality .forge_desc li,
	.esg_quality .claim_desc li,
	.esg_quality .policy_text li{ font-size: 1.4rem; }
}
