*, *::before, *::after {  box-sizing: border-box;}
.m-content {  padding: 0px;  max-width: 100%;  margin: 0 auto;}
.m-content h3 {font-size:25px; padding:0 0 30px 16px; position:relative; }
.m-content h3::before {content:""; height:24px; width:4px; background-color:#555; position:absolute; top:8px;  left:0px; }
.m-timeline {  position: relative;  list-style: none;  padding: 0;  margin: 0; border-bottom:0px solid #dfdfdf;   color: #333;}
.m-timeline > li {  position: relative;  padding: 0px 0 0px 30px;  transition: all 100ms;}
.m-timeline > li:first-child::after {  top: 15px;}
.m-timeline > li:last-child::after {  height: 15px;}
.m-timeline__date {float:left; text-align:center; font-weight:600; width:20%; font-size: 45px; padding:0px;
 margin: 0 0 0 0;  color: #2657a7; position:relative; line-height:45px;}
 
 .m-timeline__date:after{ position: absolute; z-index:1;  content: "";  width: 10px;  height: 10px; background: #fff;
    border: 2px solid #333;  right: -5px;  top: 18px;   border-radius: 50px;}
 
.m-timeline__date span {display:block; color:#bbb; font-size:28px;}
.m-timeline p {  margin: 0 0 ;}
 .m-timeline > li { clear:both; overflow:hidden;  height:100%;   padding-left: 0;  border-top:0px solid #888;  }
ul.detail {list-style:none; padding:0 0 50px 60px; margin:0; float:left; width:80%;  border-left: 0px solid #333; position:relative;}
ul.detail:before { position: absolute; left:0; top:0px;  content: "";  width: 1px; height: 100%; background: #000;}	
li:first-child ul.detail:before {top:18px;}

ul.detail li {font-size:15px; border-bottom:0px solid #dfdfdf;  padding:10px 18px 10px 0px;}
ul.detail li:last-child {border-bottom:0;}
ul.detail li span.detailD {color:#333; font-weight:600;  padding: 0 20px 0 0; font-size:18px; }
ul.detail li.only { color:#f7941d; font-weight:500; }

/*---------------------------------------
  MOBILE RESPONSIVE              
-----------------------------------------*/
@media (max-width: 1023px) {
.m-timeline__date {width:18%; font-size: 20px; text-align:left; line-height:35px;}	
ul.detail { padding:0 0 20px 15px; margin:0; float:left; width:82%;  }
 .m-timeline__date:after{   width: 9px;  height: 9px;   right: -5px;  top: 14px;   border-radius: 50px;}

ul.detail li {font-size:14px;   padding:6px 18px 5px 0px;}
ul.detail li span.detailD {display:block;  padding: 0 0px 0 0; font-size:16px; }
/*.m-timeline__date {float:left; width:100%; }
ul.detail { width:100%; list-style:none; padding:0 0 50px 0px; }
ul.detail li {font-size:14px; padding:5px 18px 5px 20px;  }
.m-timeline__date {font-size: 28px; padding:0 0 10px 20px; text-align: left;}
.m-timeline__date span { font-size:24px; }

 .m-timeline__date:after{ position: absolute; z-index:1;  content: "";  width: 10px;  height: 10px; background: #fff;
    border: 2px solid #333;  left: 0px;  top: 18px;   border-radius: 50px;}
ul.detail:before { position: absolute; left:4px; top:0px;  content: "";  width: 1px; height: 100%; background: #000;}
li:first-child ul.detail:before {top:0px;}	  */  
}
@media (max-width: 768px) {
}
@media (max-width: 640px) {
}
@media (max-width: 480px) {
}
@media (max-width: 320px) {
}
.content {
  width: 1200px;
  margin: 0 auto;
}
/* .history{
  display: flex;
  padding: 70px 0;
  border-top: 2px solid #387CBF;

}
.history.last{
  border-bottom: 1px solid #387CBF;
  margin-bottom: 100px;
}


.line:first-child{
  
  margin-bottom: 50px;
}
.line:last-child{
  /* border-bottom: 1px solid #0BB9CE; */
  /* margin-top: 20px;
}
.left {
  width: 300px;
  max-width: 25%;
  margin-right: 100px;
}
.left p{
  font-size: 30px;
  font-weight: 800;
  color: #13AEC1;
}
.left p:first-child{
  font-size: 60px;
  font-weight: 800;
  color: #387CBF;
}
.right ul{
  display: flex;

}
.right > ul:first-child{
  margin-top: 0px;
}
.right > ul:last-child{
  border-bottom: none
}
.right > ul{
  border-bottom: 1px solid #E1E1E1;
  margin-top: 30px;
}
.right>ul>li:first-child{
  font-size: 30px;
  font-weight: 700;
  color: #387CBF;
  min-width: 150px;
}

.right>ul>li>ul>li:first-child{
  font-size: 20px;
  font-weight: 700;
  color: #387CBF;
  width: 120px;
 
}
.right>ul>li>ul>li{
  font-size: 22px;
  font-weight: 400;
  color: #000000;
  line-height: 25px;
}
.right>ul>li>ul>li span{
  display: block;
  font-size: 20px;
  font-weight: 300;
  color: #636363;
  margin-top: 10px;
}
.right ul ul{
  align-items: flex-start;
  margin-bottom: 30px;
}
.right>ul.dot>li>ul>li:first-child{
  font-weight: 900;

}
.history p.tit{
  width: 330px;
  font-size: 35px;
  font-weight: 800;
  line-height: 150%;
}
@media screen and (max-width: 768px) {
  .content {
      width: 100%;
  }
  .history{
      flex-direction: column;
      gap: 30px;
      width: 90%;
      margin: 0 auto;
  }
  .left p:first-child{
      font-size: 30px;
  }
  .left p{
      font-size: 15px;
  }
  .right>ul>li:first-child{
      font-size: 25px;
      margin-bottom: 20px;
  }
  .right > ul {
display: flex;
flex-direction: column;
}
  .right ul ul{
      margin-bottom: 15px;
  }
  .right>ul>li>ul>li:first-child{
      font-size: 20px;
      width: 73px;
  }
  .right>ul>li>ul>li{
      width: 80%;
      font-size: 15px;
      line-height: 20px;
     
  }
  .left{
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }
  .left p:first-child{
    font-size: 30px;
  }
  .right>ul>li>ul>li span{
      font-size: 14px;
      margin-top: 0;
      
  }
  .right > ul.dot{
      margin-top: 0;
  }
} */


.timeline-container {
  /* max-width: 800px; */
  margin: 0 auto;
  position: relative;
}
.timeline {
  position: relative;
  margin: 60px 0;
  padding: 0;
}
.timeline::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 4px;
  height: 100%;
  background: linear-gradient(to bottom, #ffffff, #acacac, #ffffff);
  z-index: 0;
}
.timeline-block {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-bottom: 60px;
  position: relative;
}
.timeline-block.right {
  flex-direction: row-reverse;
}
.timeline-content {
  width: 44%;
  padding: 28px;
  background: #f7f7f7;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  position: relative;
  z-index: 2;
}
.timeline-year {
  width: 120px;
  height: 120px;
  background: #e74c3c;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 31px;
  font-weight: 900;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  border: 6px solid #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.timeline-block.right .timeline-year {
  background: #23b7d4;
}
.timeline-block.left .timeline-year {
  background: #674399;
}
.timeline-content ul{
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.timeline-content ul li{
  font-size: 18px;
  font-weight: 400;
  color: #363636;
  line-height: 25px;
}
.timeline-content ul li strong{
  font-weight: 900;
  color: #000000;
  line-height: 25px;
  margin-right: 10px;
}
.subtext {
  font-size: 15px;
  color: #888;
  margin-top: 10px;
}
@media (max-width: 1200px) {
  .timeline-content{
    width: 48%;
  }
  .content{
    width: 100%;
  }
  .timeline-year{
    width: 100px;
    height: 100px;
  }
}
@media (max-width: 700px) {
  .timeline-block{
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .timeline-block.right {
    flex-direction: column-reverse !important;
    align-items: flex-start !important;
  }
  .timeline-content {
    width: 100%;
    margin-bottom: 20px;
    padding: 15px;
  }
  .timeline-year {
    left: 0;
    top: 0;
    transform: none;
    margin-bottom: 10px;
    position: static;
  }
  .timeline::before{
    display: none;
  }
  .timeline-content ul li{
    font-size: 15px;
  }
  .timeline-year{
    width: 80px;
    height: 80px;
    font-size: 20px;
  }
  .timeline-block{
    margin-bottom: 30px;
  }
  .content{
    width: 100%;
  }
  .subtext{
    font-size: 12px;
  }
}