body.company section.history {
  padding-top: var(--hh);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.history {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.history {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
body.company section.history .container {
  display: flex;
  align-items: center;
  gap: 115px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.history .container {
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.history .container {
    flex-direction: column;
  }
}
body.company section.history .container .content {
  flex: 0 0 calc(0.5 * (100% - 85px));
}
body.company section.history .container .content h1 {
  font-size: min(max(28px, 3.6458333333vw), 58px);
  font-family: "Ubuntu", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  color: #171d4f;
  margin-bottom: 50px;
}
body.company section.history .container .content p {
  font-size: min(max(16px, 2.0833333333vw), 18px);
  color: #333232;
}
body.company section.history .container .image-container {
  flex: 0 0 calc(0.5 * (100% - 85px));
  position: relative;
}
body.company section.history .container .image-container::after {
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% + 50px);
  background-color: #171d4f;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.history .container .image-container::after {
    height: calc(100% + 30px);
    width: calc(100% - 30px);
    right: 0;
    left: unset;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.history .container .image-container::after {
    height: calc(100% + 20px);
    width: calc(100% - 20px);
    right: 0;
    left: unset;
  }
}
body.company section.history .container .image-container img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-left: -50px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.history .container .image-container img {
    margin-left: 0;
    width: calc(100% - 30px);
  }
}
@media only screen and (max-width: 767px) {
  body.company section.history .container .image-container img {
    width: calc(100% - 20px);
    margin-left: 0px;
  }
}
body.company section.certification {
  margin-bottom: 100px;
  margin-top: 150px;
  padding-left: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.certification {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.certification {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
body.company section.certification .container {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 115px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.certification .container {
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.certification .container {
    flex-direction: column;
  }
}
body.company section.certification .container .content {
  flex: 0 0 calc(0.5 * (100% - 85px));
}
body.company section.certification .container .content h1 {
  font-size: min(max(28px, 3.6458333333vw), 58px);
  font-family: "Ubuntu", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  color: #171d4f;
  margin-bottom: 50px;
}
body.company section.certification .container .content p {
  font-size: min(max(16px, 2.0833333333vw), 18px);
  color: #333232;
}
body.company section.certification .container .content p.bold {
  font-weight: 700;
}
body.company section.certification .container .content ul {
  padding-inline-start: 20px;
}
body.company section.certification .container .image-container {
  flex: 0 0 calc(0.5 * (100% - 85px));
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.certification .container .image-container {
    width: calc(100% - 60px);
  }
}
@media only screen and (max-width: 767px) {
  body.company section.certification .container .image-container {
    width: calc(100% - 40px);
  }
}
body.company section.certification .container .image-container::after {
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% + 50px);
  background-color: #4a972d;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.certification .container .image-container::after {
    height: calc(100% + 30px);
    width: calc(100% - 60px);
  }
}
@media only screen and (max-width: 767px) {
  body.company section.certification .container .image-container::after {
    height: calc(100% + 20px);
    width: calc(100% - 40px);
  }
}
body.company section.certification .container .image-container img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-left: 50px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.certification .container .image-container img {
    margin-left: 0;
    width: calc(100% - 30px);
  }
}
@media only screen and (max-width: 767px) {
  body.company section.certification .container .image-container img {
    width: calc(100% - 20px);
    margin-left: 0px;
  }
}
body.company section.category {
  padding-right: 47px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.category {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.category {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}
body.company section.category .container {
  position: relative;
  /* the parent */
}
body.company section.category .container p.intro-text {
  font-size: min(max(24px, 3.125vw), 34px);
  font-weight: 300;
  color: #171d4f;
  max-width: 585px;
}
body.company section.category .container .slick-slide {
  margin: 0 20px;
}
body.company section.category .container .slick-list {
  margin: 0 -20px;
}
body.company section.category .container .slider-navigation {
  margin-left: auto;
  display: flex;
  gap: 10px;
  position: absolute;
  right: 0;
  transform: translateY(-200%);
}
@media only screen and (max-width: 767px) {
  body.company section.category .container .slider-navigation {
    bottom: 0;
    transform: translateY(200%);
    right: unset;
    left: 0;
  }
}
body.company section.category .container .slider-navigation .prev-btn {
  transform: scale(-1);
}
body.company section.category .container .slider-navigation .prev-btn,
body.company section.category .container .slider-navigation .next-btn {
  border-radius: 100px;
  border: 1px solid #171d4f;
  height: 29px;
  aspect-ratio: 1;
  display: flex;
  padding: 5px;
}
body.company section.category .container .slider-navigation .prev-btn img,
body.company section.category .container .slider-navigation .next-btn img {
  height: 100%;
  width: 100%;
}
body.company section.category .container .slider-navigation .prev-btn.slick-hidden,
body.company section.category .container .slider-navigation .next-btn.slick-hidden {
  display: none;
}
body.company section.category .container ul.category-list {
  list-style-type: none;
  padding: 0;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.company section.category .container ul.category-list {
    margin-bottom: 100px;
  }
}
body.company section.category .container ul.category-list li.category {
  border: 1px solid #171d4f;
  display: flex;
  padding-top: min(max(min(max(27px, 3.515625vw), 27px), 2.109375vw), 42px);
  height: min(max(min(max(240px, 31.25vw), 151px), 18.75vw), 222px);
  margin: 0 min(max(min(max(6px, 0.78125vw), 6px), 0.46875vw), 10px);
  transition: background-color 1s;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.category .container ul.category-list li.category {
    padding-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  body.company section.category .container ul.category-list li.category {
    padding-top: 15px;
    height: 157px;
  }
}
body.company section.category .container ul.category-list li.category:hover {
  background-color: #4a972d;
  border: 1px solid #4a972d;
}
body.company section.category .container ul.category-list li.category:hover a h2 {
  color: #ffffff;
}
body.company section.category .container ul.category-list li.category:hover a img {
  filter: brightness(0) invert(1);
}
body.company section.category .container ul.category-list li.category a {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  align-items: center;
}
body.company section.category .container ul.category-list li.category a .svg-container {
  height: 76px;
  width: 76px;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: outline 1s;
}
body.company section.category .container ul.category-list li.category a .svg-container path,
body.company section.category .container ul.category-list li.category a .svg-container g {
  transition: fill 1s, stroke 1s;
}
body.company section.category .container ul.category-list li.category a img {
  width: min(max(min(max(44px, 6.25vw), 48px), 3.75vw), 70px);
}
body.company section.category .container ul.category-list li.category a h2 {
  font-weight: 300;
  font-size: min(max(min(max(16px, 2.0833333333vw), 16px), 1.25vw), 22px);
  color: #171d4f;
  margin-top: 14px;
  text-align: center;
  padding-inline: 6%;
}
@media only screen and (min-width: 1025px) and (max-height: 800px) {
  body.company section.category .container ul.category-list li.category a h2 {
    padding-inline: 3%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.category .container ul.category-list li.category a h2 {
    font-size: 18px;
  }
}
body.company section.category .container ul.category-list li.category:nth-child(odd):hover {
  background-color: #171d4f;
}
body.company section.category .container ul.category-list li.category:nth-child(odd):hover .svg-container svg,
body.company section.category .container ul.category-list li.category:nth-child(odd):hover .svg-container path {
  fill: #ffffff;
}
body.company section.category .container ul.category-list li.category:nth-child(odd):hover .svg-container g {
  stroke: #ffffff;
}
body.company section.category .container ul.category-list li.category:nth-child(odd):hover h2 {
  color: #ffffff;
}
body.company section.category .container ul.category-list li.category:nth-child(even):hover {
  background-color: #4a972d;
}
body.company section.category .container ul.category-list li.category:nth-child(even):hover .svg-container svg,
body.company section.category .container ul.category-list li.category:nth-child(even):hover .svg-container path {
  fill: #ffffff;
}
body.company section.category .container ul.category-list li.category:nth-child(even):hover .svg-container g {
  stroke: #ffffff;
}
body.company section.category .container ul.category-list li.category:nth-child(even):hover h2 {
  color: #ffffff;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.company section.category .container ul.category-list li.category {
    height: 189px;
  }
}