/* content_css */
#about { position: relative; overflow: hidden;}
#about article { position: relative; padding: 0 0 124px;}
#about article:nth-child(2) {padding: 0 0 136px;}
#about article:nth-child(3) {padding: 0 0 128px;}
#about .sub_inner { position: relative; width: 100%; max-width: 1600px; margin: 0 auto; padding: 0 50px;}

/* font_size */
.fs_56 {font-size: 56px; font-weight: 800; line-height: 0.76; color: #000; font-family: 'Poppins'; letter-spacing: -1.8px;}
.fs_43 {font-size: 43px; font-weight: 600; line-height: 1.84; letter-spacing: 0.86px;}
.fs_28 {font-size: 28px; font-weight: 700; color: #fff; font-family: 'Poppins';}
.fs_26 {font-size: 26px; font-weight: 700; line-height: 1.62; color: #fff;}
.fs_24 {font-size: 24px; font-weight: 400; line-height: 2.13; color: #333;}
.fs_20 {font-size: 20px; font-weight: 400; line-height: 2.23; color: #fff;}
.fs_18 {font-size: 18px; font-weight: 500; color: #fff;}

#about h2 {margin: 75px auto 52px;}
#about h4 {margin: 10px 0 32px;}
#about h4 span {font-size: 50px; font-weight: 800; letter-spacing: 0.5px; line-height: 1.2;}

/* flex */
#about .flex {display: flex; gap: 85px; margin-bottom: -83px; position: relative; z-index: 2;}
#about .flex .left p span:nth-of-type(1) {font-family: 'SUIT';}
#about .flex .left p span:nth-of-type(2) {font-weight: 600;}

/* icon_box_list */
#about .icon_box_list { position: relative; z-index: 1; display: flex; gap: 29px; max-width: 1700px; margin: 0 auto; padding: 115px 0 84px; list-style: none; box-sizing: border-box; }
#about .icon_box_list::before { position: absolute; top: 0; left: 50%; z-index: -1; width: calc(100% + 220px); height: 100%; border-radius: 30px; background: #f7f7f7; content: ""; transform: translateX(-50%); }
#about .icon_box_list li { position: relative; display: flex; flex: 1; flex-direction: column; justify-content: space-between; min-width: 0; width: 353px; height: 301px; padding: 48px 50px 42px 52px; border: 2px solid #d3d3d3; border-radius: 11px; background: #fff; box-sizing: border-box;}
#about .icon_box_list li p { position: relative; padding-bottom: 31px; font-weight: 600; line-height: 1.58; color: rgba(17, 17, 17, 0.95);}
#about .icon_box_list li p::after { position: absolute; bottom: 0; left: 0; width: 57px; height: 2px; background: #dededd; content: ""; }

/* .bot */
#about .icon_box_list li .bot span {font-weight: 700; line-height: 1; color: rgba(228, 228, 227, 0.95); font-family: 'Poppins';}
#about .icon_box_list li .bot { display: flex; align-items: flex-end; justify-content: space-between; }
#about .icon_box_list li .bot i { display: block; }
#about .icon_box_list li .bot i img { transition: transform 0.4s ease;}
#about .icon_box_list li .bot img { display: block; height: auto; object-fit: contain; }
#about .icon_box_list li:hover .bot i img { transform: rotateY(180deg);}

/* gray_box */
#about .sec2 h2 {margin-bottom: 79px;}
#about .gray_box {box-sizing: border-box; width: 100%; padding: 51px 70px 54px 93px; border-radius: 16px; background: #f7f7f7; margin-top: 89px;}
#about .gray_box > p {display: flex; align-items: center; gap: 8px; margin: 0 0 24px; font-weight: 700; line-height: 2; color: rgba(0, 0, 0, 0.95);}
#about .gray_box > p::before {content: ""; display: block; flex: 0 0 4px; height: 25px; background: #ed6f20;}
#about .gray_box ul {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-columns: 49% 51%; list-style: none;}
#about .gray_box li {position: relative; padding-left: 10px;  color: rgba(51, 51, 51, 0.95);}
#about .gray_box li span {font-weight: 600;}
#about .gray_box li::before {position: absolute; top: 20px; left: 0; width: 4px; height: 4px; background: #ed6f20; content: "";}

/* history_list */
#about .sec3 h2 {margin-bottom: 103px; text-align: center;}
#about .history_list {position: relative; display: flex; justify-content: space-between; gap: 0; margin: 0; padding: 97px 0 0; list-style: none; --progress: 0%;}
#about .history_list::before,
#about .history_list::after {position: absolute; top: 16px; left: 44px; width: calc(100% - 44px); height: 3px; content: "";}
#about .history_list::before {background: #dededd; }
#about .history_list::after {background: #ed6f20; transform: scaleX(var(--progress, 0)); transform-origin: left;}

/* history_list li */
#about .history_list li {position: relative; min-width: 0;}
#about .history_list li::before {position: absolute; top: -89px; left: 14px; z-index: 2; width: 20px; height: 20px; border-radius: 50%; background: #006eb3; content: ""; transition: background-color 0.3s  opacity 0.3s;}
#about .history_list li::after {position: absolute; top: -101px; left: 2px; z-index: 1; width: 44px; height: 44px; border-radius: 50%; background-color: #efeff0; content: ""; transition: background-color 0.3s, opacity 0.3s;}
#about .history_list li.is-active::before {background-color: #ed6f20;}
#about .history_list li.is-active::after {opacity: 0.2; background-color: #ed6f20;}

/* history_list - txt */
#about .history_list li strong {font-family: 'Poppins'; font-size: 50px; font-weight: 700; line-height: 1.04; display: block;  color: rgba(0, 0, 0, 0.95); transition: color 0.3s;}
#about .history_list li time {font-family: 'Poppins'; display: block; font-size: 25px; font-weight: 500; line-height: 2.08; color: rgba(140, 140, 140, 0.95); padding: 5px 0 14px;}
#about .history_list li h3 {position: relative; padding-top: 25px; line-height: 1.69; font-size: 26px; font-weight: 600; color: rgba(0, 0, 0, 0.95);}
#about .history_list li h3::before {position: absolute; top: 0; left: 0; width: 87px; height: 4px; background: #dededd; content: ""; transition: background-color 0.3s; }
#about .history_list li p {font-size: 20px; line-height: 1.65; color: rgba(51, 51, 51, 0.95); margin-top: 8px;}

/* history_list - active */
#about .history_list li.is-active::before {border-color: #fde8dc; background: #ed6f20;}
#about .history_list li.is-active strong {color: #ed6f20;}
#about .history_list li.is-active h3::before {background: #ed6f20;}
