/* 큰 화면 우선 적용 : PC > Tablet > Mobile */
/* 전체 적용 - Desktop, Laptop 기준 */
main {
  margin-top: 64px;
  flex: 1;
}

main #pageLocation {
  width: 100%;
  height: 48px;
  border-bottom: 1px solid #dee2e6;
}

main #pageLocation .location-title {
  font-size: 18px;
  line-height: 48px;
}

main .main-image {
  width: 100%;
  height: 300px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

main .main-image.intro {
  background-image: url(../images/company/intro/main.png);
}

main .main-image.history {
  background-image: url(../images/company/history/main.png);
}

main .main-image.history .banner-table {
  height: 300px;
}

main .main-image.history .banner-title {
  font-size: 36px;
  font-weight: bold;
  color: #fff;
}

main .main-image.history .banner-desc {
  font-size: 22px;
  color: #fff;
}

main .contents {
  margin: 150px auto;
}

main .contents.intro {
  margin-top: 60px;
}

main .contents.ceo,
main .contents.crew {
  margin-top: 100px;
}

main .contents.history {
  margin-top: 0px;
}

main .contents .main-title {
  font-size: 36px;
  font-weight: bold;
}

main .contents .sub-title {
  font-size: 28px;
  font-weight: bold;
  margin-top: 54px;
}

main .contents .main-desc {
  font-size: 22px;
  margin-top: 10px;
  margin-bottom: 120px;
}

main .contents .intro-title {
  font-size: 28px;
  font-weight: bold;
}

main .contents .intro-desc {
  font-size: 18px;
  margin-top: 8px;
}

main .contents.intro img {
  width: 100%;
  max-width: 128px;
}

main .contents .goal-desc {
  height: 87px;
  line-height: 87px;
  text-align: center;
  border-radius: 43px;
  background-color: #e6e7e7;
}

main .contents .goal-desc.b-none-en {
  background-color: #ffffff;
  line-height: 1.5;
}

main .contents .goal-desc.first-en {
  width: 100%;
  text-align: right !important;	
}

main .contents .goal-desc.w-none-en {
  width: 0;
}

.goal-desc.first {
  width: 251px;
}

.goal-desc.second {
  width: 377px;
}

.goal-desc.third {
  width: 374px;
}

.goal-desc.fourth {
  width: 300px;
}

main .contents .partner img {
  width: 186px;
  height: 70px;
}

main .contents .table {
  margin-bottom: 0;
}

main .contents .table tr {
  height: 56px;
  line-height: 56px;
  border-bottom: 1px solid #979797;
}

main .contents .table tr:last-child {
  border-bottom: none;
}

main .contents .table th,
main .contents .table td {
  vertical-align: middle;
  border: none;
  font-size: 22px;
}

main .contents .table th {
  min-width: 110px;
  font-weight: bold;
  width: 210px;
}

main .contents .table .address {
  line-height: 2;
}

main .contents .download-title {
  font-size: 22px;
}

main .contents .download-desc {
  width: 258px;
  height: 48px;
  line-height: 48px;
  font-size: 18px;
  background-color: #e6e6e7;
  cursor: pointer;
  color: #333 !important; /* 추가 (ihjeong) */
}

main .contents .en-label {
	font-size: 16px;
}

main .contents .download-desc img {
  width: 26px;
  height: 22px;
  margin-top: 12px;
  display: inline-block;
  float: right;
  margin-right: 22px;
}

main .contents .locmap img,
main .contents .ceo .photo,
main .contents .crew .photo {
  width: 100%;
}

main .contents .ceo .ceo-header {
  font-size: 14px;
  font-weight: 300;
}

main .contents .ceo .ceo-title {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 36px;
}

main .contents .ceo .ceo-comment {
  font-size: 18px;
  line-height: 28px;
  margin-bottom: 24px;
}

main .contents .ceo .ceo-signature {
  font-size: 18px;
  font-weight: bold;
}

main .contents .ceo .sign {
  height: 79px;
}

main .contents .crew .crew-title {
  height: 45px;
  line-height: 45px;
}

main .contents .crew .crew-name {
  font-size: 28px;
  font-weight: bold;
}

main .contents .crew .crew-position,
main .contents .crew .crew-comment {
  font-size: 18px;
}

main .contents .crew .crew-comment {
  margin-bottom: 10px;
}


main .contents.history .gap {
  height: 40px;
}

main .contents.history .year-title {
  font-size: 28px;
  font-weight: bold;
}

main .contents.history .year-point {
  position: absolute;
  bottom: -9px;
  width: 16px;
  height: 16px;
  border: 3px solid #dee2e6;
  border-radius: 8px;
  background-color: #505050;
  z-index: 100;
}

main .contents.history .year-point.left {
  left: -9px;
}

main .contents.history .year-point.right {
  right: -9px;
}

main .contents.history .history-title {
  font-size: 22px;
  font-weight: bold;
}

main .contents.history .history-desc {
  font-size: 18px;
}

main .contents.history .border3 {
  border-width: 3px !important;
}

/* 1200px보다 작은 경우 - Tablet Landscape 기준 */
@media screen and (max-width:1200px) {
	main .contents .download-desc {
	  width: 320px;
	}
}
/* 768px보다 작은 경우 - Tablet Portrait 기준 */
@media screen and (max-width:768px) {
  main #pageLocation {
    height: 36px;
  }

  main #pageLocation .location-title {
    font-size: 14px;
    line-height: 36px;
  }

  main .main-image.history .banner-table {
    height: 194px;
  }
  
  main .main-image.history .banner-title {
    font-size: 24px;
  }
  
  main .main-image.history .banner-desc {
    font-size: 14px;
  }

  main .main-image {
    height: 194px;
  }

  main .contents {
    margin: 48px auto;
  }

  main .contents.intro,
  main .contents.ceo,
  main .contents.crew {
    margin-top: 8px;
  }

  main .contents .main-title {
    font-size: 18px;
  }
  
  main .contents .sub-title {
  font-size: 14px;
  margin-top: 27px;
  }
  
  main .contents .main-desc {
    font-size: 18px;
    margin-top: 8px;
    margin-bottom: 48px;
  }

  main .contents .intro-title {
    font-size: 16px;
  }
  
  main .contents .intro-desc {
    font-size: 12px;
    margin-top: 4px;
  }

  main .contents.intro img {
    width: 48px;
    height: 48px;
  }

  main .contents .goal-desc {
    height: 42px;
    line-height: 42px;
    border-radius: 20px;
  }
	
	main .contents .goal-desc.first-en {
   	text-align: left !important;
	}
  
  .goal-desc.first {
    width: 119px;
  }
  
  .goal-desc.second {
    width: 179px;
  }
  
  .goal-desc.third {
    width: 178px;
  }
  
  .goal-desc.fourth {
    width: 143px;
  }
  
  main .contents .partner img {
    width: 104px;
    height: 39px;
  }
  
  main .contents .table tr {
    height: 16px;
    line-height: 16px;
  }

  main .contents .table th,
  main .contents .table td {
    font-size: 12px;
  }
  
  main .contents .download-title {
    font-size: 12px;
  }

  main .contents .download-desc {
    width: 164px;
    height: 30px;
    line-height: 30px;
    font-size: 12px;
  }

  main .contents .download-desc img {
    width: 15px;
    height: 13px;
    margin-top: 7px;
    margin-right: 1rem;
  }

  main .contents .ceo .photo,
  main .contents .crew .photo {
    width: 80%;
  }

  main .contents .ceo .ceo-header {
    font-size: 12px;
  }
  
  main .contents .ceo .ceo-title {
    font-size: 18px;
    margin-bottom: 24px;
  }
  
  main .contents .ceo .ceo-comment {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 15px;
  }
  
  main .contents .ceo .ceo-signature {
    font-size: 14px;
    font-weight: bold;
  }
  
  main .contents .ceo .sign {
    height: 49px;
  }

  main .contents .crew .crew-title {
    height: 30px;
    line-height: 30px;
  }
  
  main .contents .crew .crew-name {
    font-size: 18px;
    font-weight: bold;
  }
  
  main .contents .crew .crew-position,
  main .contents .crew .crew-comment {
    font-size: 14px;
  }

  main .contents.history .gap {
    height: 20px;
  }
  
  main .contents.history .year-title {
    font-size: 22px;
  }
  
  main .contents.history .year-point {
    position: absolute;
    bottom: -7px;
    width: 12px;
    height: 12px;
    border-width: 2px;
    border-radius: 6px;
  }
  
  main .contents.history .year-point.left {
    left: -7px;
  }
  
  main .contents.history .history-title {
    font-size: 16px;
  }
  
  main .contents.history .history-desc {
    font-size: 14px;
  }
}

/* 480px보다 작은 경우 - Mobile 기준 */
@media screen and (max-width:480px) {
	.ml-4 {
  	margin-left: 1rem !important;
	}
}