* {
  position: relative;
  box-sizing: border-box;
}

*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  vertical-align: middle;
  height: auto;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
dd {
  list-style: none;
  margin: 0;
  padding: 0;
}

html,
body {
  padding: 0;
  margin: 0 auto;
  min-height: 100vh;
  width: 100%;
  font-family:
    "Helvetica Neue", Helvetica, Arial, "PingFang SC", "Microsoft YaHei",
    sans-serif;
  font-weight: 400;
  scroll-behavior: smooth;
  background-color: #ffffff;
  color: #333333;
}

/* Header */
.page_header {
  width: 100%;
  background-color: #ffffff;
  border-bottom: 1px solid #f0f0f0;
}

.header_inner {
  max-width: 1920px;
  margin: 0 auto;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.header_logo {
  display: flex;
  align-items: center;
  margin-right: 220px;
}

.header_logo_img {
  width: 423px;
  display: block;
}

.header_contact {
  display: flex;
  align-items: center;
}

.header_contact_text {
  font-size: 16px;
  color: #333333;
  margin-right: 24px;
}

.header_email_icon {
  width: 24px;
  height: 24px;
  display: block;
  margin-right: 3px;
}

.header_email_link {
  font-size: 16px;
  color: #333333;
  text-decoration: none;
}

/* Banner */
.banner_box {
  width: 100%;
  display: block;
  line-height: 0;
}

.banner_img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Main Content */
.main_content {
  width: 100%;
  background-color: #ffffff;
  padding: 100px 0 80px;
}

.content_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.section_title {
  font-size: 32px;
  color: #333333;
  font-weight: bold;
  margin-bottom: 24px;
  line-height: 1.4;
}

.paragraph {
  font-size: 16px;
  color: #333333;
  line-height: 22px;
  margin-bottom: 48px;
}

.text_bold {
  font-weight: bold;
}

.intro_section {
  margin-bottom: 60px;
}

.business_section {
  margin-bottom: 60px;
}

.business_section .section_title {
  margin-bottom: 24px;
}

/* Activity Cards */
.activity_card {
  display: flex;
  align-items: center;
  background-color: #f5f5f5;
  border-radius: 32px;
  padding: 24px 48px;
  margin-bottom: 24px;
}

.activity_card:last-child {
  margin-bottom: 0;
}

.activity_card_left {
  flex-direction: row;
}

.activity_card_right {
}

.activity_card_image {
  flex: 0 0 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.activity_card_left .activity_card_image {
  margin-right: 24px;
}

.activity_card_right .activity_card_image {
  margin-left: 24px;
}

.activity_img {
  width: 100%;
  max-width: 260px;
  display: block;
}

.activity_card_text {
  flex: 1;
}

.activity_title {
  font-size: 24px;
  color: #333333;
  font-weight: bold;
  margin-bottom: 16px;
  line-height: 22px;
}

.activity_desc {
  font-size: 16px;
  color: #333333;
  line-height: 22px;
}

.vision_section {
  margin-top: 24px;
}

.vision_section .paragraph {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .header_inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 16px 20px;
  }

  .header_contact {
    margin-top: 12px;
    flex-wrap: wrap;
  }

  .content_inner {
    padding: 0 20px;
  }

  .main_content {
    padding: 40px 0 60px;
  }

  .activity_card,
  .activity_card_left,
  .activity_card_right {
    flex-direction: column;
    padding: 24px;
  }

  .activity_card_left .activity_card_image,
  .activity_card_right .activity_card_image {
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 20px;
  }

  .activity_card_image {
    flex: none;
    width: 100%;
    max-width: 320px;
  }

  .section_title {
    font-size: 18px;
  }
}
