body {
  background-color: #222222
}
.package_header {
  --header-background: transparent; --header-border-bottom: rgba(255, 255, 255, 0.1) 1px solid; --header-anchor-color: #fff; --header-anchor-hover-color: #f20f0f; --header-border-top: transparent 2px solid; --header-anchor-font-size: 16px; --header-anchor-font-weight: normal; --header-sticky-background: #f4f4f4; --header-sticky-anchor-color: #222; --header-submenu-background: rgba(0, 0, 0, 0.7); --header-submenu-anchor-hover-background: #f20f0f; --header-submenu-anchor-hover-color: #fff; --header-navicon-color: #f20f0f; --header-mobile-mainmenu-background: rgba(0, 0, 0, 0.7); --header-mobile-anchor-color: #f4f4f4; --header-mobile-menu-li-border-bottom: rgba(255, 255, 255, 0.3) 1px dashed
}
.package_header::part(placeholder) {
  display: none
}
.package_banner {
  --banner-height: min(900px, 100vh); --banner-dot-active-background: #f20f0f
}
.package_banner::part(title) {
  font-size: 4.8rem
}
.package_banner::part(subtitle) {
  font-size: 2.4rem
}
.package_banner::part(mask) {
  background: rgba(0, 0, 0, 0.5)
}
.package_container {
  --container-headline-mask-background: rgba(0, 0, 0, 0.7); --container-headline-subtitle-font-size: 2.4rem
}
.package_container[bg=aboutus] {
  --container-background: url(../../../../../../common/assets/package/images/bg.headline.1m.jpg)
}
.package_container[bg=aboutus] .package_aboutus_main div.brief {
  flex-direction: row-reverse; padding: var(--page-gap) calc(var(--page-gap) * 2)
}
.package_container[bg=aboutus] .package_aboutus_main div.brief div.text h3 {
  color: #f20f0f
}
.package_container[bg=aboutus] .package_aboutus_main div.brief div.text p.intro {
  color: #ffffff
}
.package_container[bg=service] {
  --container-z-index: 150
}
.package_container[bg=service]::part(main) {
  background: #ffffff; border-top-left-radius: 2rem; border-top-right-radius: 2rem; margin-top: calc(0px - var(--page-gap) * 6)
}
.package_container[bg=case] {
  --container-background: #eeeeee
}
.package_container[bg=case] .package_case_main div.items {
  padding: var(--page-gap) calc(var(--page-gap) * 2) calc(var(--page-gap) * 2) calc(var(--page-gap) * 2)
}
.package_container::part(headline-subtitle) {
  font-family: Georgia
}
.package_footer {
  --footer-background: transparent; --footer-card-background: #000000; --footer-card-font-color: #f4f4f4; --footer-copyright-background: #222222; position: relative; z-index: 200
}
.package_footer::part(h3) {
  display: inline-block; padding-bottom: 10px; border-bottom: #f20f0f 2px solid
}
.package_footer::part(container) {
  background: url(../images/bg.footer.png) #333333 center center no-repeat; background-size: contain
}
.package_footer::part(copyright) {
  border-top: #743938 2px dashed
}
.package_section {
  width: 100%; margin-top: var(--page-gap); padding-bottom: var(--page-gap)
}
.package_section h3 {
  position: relative
}
.package_section h3 span {
  display: block; font-size: 3.6rem; padding-bottom: 2.4rem; line-height: 120%; color: #222; font-weight: normal; text-align: center; position: relative; z-index: 200
}
.package_section h3 span::before {
  content: ''; display: block; width: 30px; height: 4px; background: #f20f0f; position: absolute; bottom: 0px; right: 50%; z-index: 300
}
.package_section h3 span::after {
  content: ''; display: block; width: 30px; height: 4px; background: rgba(242, 15, 15, 0.4); position: absolute; bottom: 0px; left: 50%; z-index: 300
}
.package_section h3 em {
  display: block; font-size: 1.4rem; padding-top: 2.4rem; color: #999; line-height: 160%; font-style: normal; font-weight: lighter; text-align: center
}
.package_main {
  display: none; padding: var(--page-gap) 0px calc(var(--page-gap) * 2) 0px
}
.package_main[place=home] {
  padding: 0px
}
.package_main.slotted {
  display: block
}
.package_aboutus_main div.brief {
  width: 100%; box-sizing: border-box; display: flex; justify-content: space-between; flex-wrap: wrap; padding-top: var(--page-gap)
}
.package_aboutus_main div.brief div.text {
  width: 60%
}
.package_aboutus_main div.brief div.text h3 {
  font-size: 2.4rem; font-weight: normal; line-height: 100%; padding-bottom: var(--page-gap)
}
.package_aboutus_main div.brief div.text p.intro {
  padding-top: var(--page-gap); font-size: 1.4rem; line-height: 180%; color: #999999
}
.package_aboutus_main div.brief div.text p.link {
  padding: var(--page-gap) 0px
}
.package_aboutus_main div.brief div.text p.link a {
  display: inline-block; padding: calc(var(--page-gap) / 2) calc(var(--page-gap) * 1); line-height: 120%; background: #f20f0f; font-size: 1.4rem; color: #ffffff; border-radius: 5px; transition: all 0.3s ease
}
.package_aboutus_main div.brief div.text p.link a:hover {
  background: #000000
}
.package_aboutus_main div.brief div.image {
  width: 35%
}
.package_aboutus_main div.brief div.image img {
  display: block; width: 100%; box-sizing: border-box
}
.package_aboutus_main div.honor {
  width: 100%; margin-top: var(--page-gap)
}
.package_aboutus_main div.honor div.items {
  width: 100%; display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-gap: var(--page-gap)
}
.package_aboutus_main div.honor div.items div.item p.image {
  display: flex; align-items: center; justify-content: center
}
.package_aboutus_main div.honor div.items div.item p.image img {
  max-width: 100%; max-height: 100%
}
.package_aboutus_main div.honor div.items div.item p.title {
  padding-top: calc(var(--page-gap) / 2); font-size: 1.6rem; text-align: center; color: #181818
}
.package_service_main div.main {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2); display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: var(--page-gap)
}
.package_service_main div.main div.item {
  width: 100%; box-sizing: border-box; background: #f4f4f4; padding: var(--page-gap); transition: all 0.3s ease
}
.package_service_main div.main div.item:hover {
  box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_service_main div.main div.item p.title {
  display: flex; flex-wrap: wrap; align-items: center
}
.package_service_main div.main div.item p.title span jtbc-svg {
  width: 40px; height: 40px; --fore-color: #f20f0f
}
.package_service_main div.main div.item p.title em {
  display: block; padding-left: 1rem; font-style: normal; font-size: 3rem; color: #222222; line-height: 100%
}
.package_service_main div.main div.item p.slogan {
  font-size: 1.6rem; font-weight: bold; color: #222222; line-height: 120%; padding: var(--page-gap) 0px
}
.package_service_main div.main div.item ul {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between
}
.package_service_main div.main div.item ul li {
  width: 50%; box-sizing: border-box; position: relative; padding: calc(var(--page-gap) / 2) 0px; font-size: 1.4rem; padding-left: 18px; color: #666666
}
.package_service_main div.main div.item ul li::after {
  content: ''; display: block; width: 6px; height: 6px; background: #f20f0f; border-radius: 100%; transform: translate(0, -50%); position: absolute; top: 50%; left: 0px; z-index: 100
}
.package_service_main div.main div.item p.more {
  padding-top: var(--page-gap)
}
.package_service_main div.main div.item p.more a {
  display: inline-block; padding: calc(var(--page-gap) / 2) calc(var(--page-gap) * 1); line-height: 120%; background: #f20f0f; font-size: 1.4rem; color: #ffffff; border-radius: 5px; transition: all 0.3s ease
}
.package_service_main div.main div.item p.more a:hover {
  background: #000000
}
.package_service_main div.feature {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2) 0px; display: grid; grid-template-columns: 1fr 1fr; gap: calc(var(--page-gap) * 2)
}
.package_service_main div.feature div.item p.title {
  font-size: 2rem; padding-bottom: var(--page-gap); font-weight: bold; position: relative
}
.package_service_main div.feature div.item p.title::after {
  content: ''; display: block; width: 44px; height: 10px; background: rgba(242, 15, 15, 0.4); position: absolute; bottom: 50%; left: -2px; z-index: -100
}
.package_service_main div.feature div.item p.content {
  font-size: 1.4rem; line-height: 160%; color: #999
}
.package_service_main div.content {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2); background: none center center no-repeat; background-size: cover; position: relative
}
.package_service_main div.content::after {
  content: ''; display: block; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); position: absolute; top: 0px; left: 0px; z-index: 50
}
.package_service_main div.content .package_section {
  position: relative; z-index: 100
}
.package_service_main div.content .package_section h3 span {
  color: #f4f4f4
}
.package_service_main div.content div.items {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2) 0px; display: grid; grid-template-columns: 1fr 1fr; gap: calc(var(--page-gap) * 2); position: relative; z-index: 100
}
.package_service_main div.content div.items div.item {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 1.5); background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(4px); display: flex; align-items: flex-start; justify-content: space-between
}
.package_service_main div.content div.items div.item div.icon {
  width: 50px
}
.package_service_main div.content div.items div.item div.icon jtbc-svg {
  width: 50px; height: 50px; --fore-color: #f4f4f4
}
.package_service_main div.content div.items div.item div.text {
  width: calc(100% - 50px - var(--page-gap) * 1); color: #f4f4f4
}
.package_service_main div.content div.items div.item div.text p.title {
  font-size: 1.8rem; padding-bottom: calc(var(--page-gap) / 2)
}
.package_service_main div.content div.items div.item div.text p.content {
  font-size: 1.4rem; line-height: 160%
}
.package_service_main div.package_case_main {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2) 0px
}
.package_case_main div.items {
  width: 100%; box-sizing: border-box; padding-top: var(--page-gap); display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: var(--page-gap)
}
.package_case_main div.items div.item {
  border: transparent 1px solid; background: #f4f4f4; transition: all .3s ease
}
.package_case_main div.items div.item div.image img {
  display: block; width: 100%
}
.package_case_main div.items div.item div.title {
  padding: var(--page-gap) 0px calc(var(--page-gap) / 2) 0px; text-align: center; font-size: 1.6rem; line-height: 120%
}
.package_case_main div.items div.item div.title a {
  display: inline-block; color: #222222; padding-bottom: 0.4rem; border-bottom: transparent 1px dashed; transition: all 0.3s ease
}
.package_case_main div.items div.item div.title a:hover {
  color: #f20f0f; border-color: #f20f0f
}
.package_case_main div.items div.item div.subtitle {
  padding-bottom: var(--page-gap); text-align: center; font-size: 1.4rem; color: #999; line-height: 120%
}
.package_case_main div.items div.item:hover {
  border-color: #eee; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_team_main div.items {
  width: 100%; display: grid; grid-template-columns: 1fr 1fr; grid-gap: var(--page-gap)
}
.package_team_main div.items div.item {
  width: 100%; display: flex; justify-content: space-between; box-sizing: border-box; flex-wrap: wrap; padding: calc(var(--page-gap) * 2); border: transparent 1px solid; background: #f4f4f4; border-radius: 20rem; transition: all .3s ease
}
.package_team_main div.items div.item div.image {
  width: 25%
}
.package_team_main div.items div.item div.image img {
  display: block; width: 100%; border-radius: 100%
}
.package_team_main div.items div.item div.text {
  width: 70%
}
.package_team_main div.items div.item div.text p.title {
  font-size: 2rem; line-height: 120%
}
.package_team_main div.items div.item div.text p.title a {
  color: #222222
}
.package_team_main div.items div.item div.text p.title a:hover {
  color: #f20f0f
}
.package_team_main div.items div.item div.text p.title em {
  display: inline-block; font-size: 1.4rem; padding-left: var(--page-gap); color: #999; font-style: normal
}
.package_team_main div.items div.item div.text p.intro {
  padding-top: var(--page-gap); font-size: 1.4rem; line-height: 160%; color: #666
}
.package_team_main div.items div.item:hover {
  border-color: #eee; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_team_main div.info {
  width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; padding-top: var(--page-gap)
}
.package_team_main div.info div.content {
  width: 75%
}
.package_team_main div.info div.image {
  width: 20%
}
.package_team_main div.info div.image img {
  display: block; width: 100%; border-radius: 100%
}
.package_news_main div.items {
  width: 100%; padding-top: var(--page-gap)
}
.package_news_main div.items div.item {
  width: 100%; background: #f4f4f4; box-sizing: border-box; margin-bottom: var(--page-gap); padding: calc(var(--page-gap) * 2); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; transition: all 0.3s ease
}
.package_news_main div.items div.item:hover {
  box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_news_main div.items div.item div.image {
  width: 220px; box-sizing: border-box; padding-right: calc(var(--page-gap) * 2)
}
.package_news_main div.items div.item div.image img {
  width: 100%; display: block
}
.package_news_main div.items div.item div.text {
  flex: 1
}
.package_news_main div.items div.item div.text p.title {
  padding-bottom: var(--page-gap); font-size: 2.4rem
}
.package_news_main div.items div.item div.text p.title a {
  color: #181818; display: inline-block; padding-bottom: 0.2rem; border-bottom: transparent 1px dashed; transition: all 0.3s ease
}
.package_news_main div.items div.item div.text p.title a:hover {
  color: #f20f0f; border-color: #f20f0f
}
.package_news_main div.items div.item div.text p.summary {
  width: 100%; font-size: 1.4rem; color: #999; line-height: 160%
}
.package_contactus_main div.map {
  width: 100%; box-sizing: border-box; border: #eee 1px solid; margin-bottom: var(--page-gap); box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_contactus_main div.map jtbc-location-map-viewer {
  display: block; width: 100%
}
.package_contactus_main div.box {
  width: 100%; display: flex; border: #eee 1px solid; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_contactus_main div.box div.info {
  width: 25%; padding-top: var(--page-gap); background: #f4f4f4; border-right: #eeeeee 1px solid
}
.package_contactus_main div.box div.info div.item {
  padding-left: var(--page-gap); padding-bottom: var(--page-gap)
}
.package_contactus_main div.box div.info div.item h4 {
  font-size: 1.6rem; padding-bottom: calc(var(--page-gap) / 2); color: #181818
}
.package_contactus_main div.box div.info div.item p {
  font-size: 1.4rem; line-height: 160%; color: #333
}
.package_contactus_main div.box div.feedback_form {
  width: auto; flex: 1; padding: var(--page-gap)
}
@media screen and (max-width: 1280px) {
  .package_service_main div.main {
    grid-template-columns: 1fr 1fr
  }
}
@media screen and (max-width: 960px) {
  .package_banner {
    --banner-height: min(600px, 100vh)
  }
  .package_banner::part(title) {
    font-size: 2.8rem
  }
  .package_banner::part(subtitle) {
    font-size: 1.4rem
  }
  .package_section h3 span {
    font-size: 3rem
  }
  .package_aboutus_main div.brief div.image {
    width: 100%
  }
  .package_aboutus_main div.brief div.text {
    width: 100%; padding-top: calc(var(--page-gap) * 2)
  }
  .package_aboutus_main div.honor div.items {
    grid-template-columns: 1fr 1fr
  }
  .package_service_main div.main {
    grid-template-columns: 1fr
  }
  .package_service_main div.feature {
    grid-template-columns: 1fr
  }
  .package_service_main div.content div.items {
    grid-template-columns: 1fr
  }
  .package_case_main div.items {
    grid-template-columns: 1fr
  }
  .package_team_main div.items {
    grid-template-columns: 1fr
  }
  .package_team_main div.items div.item {
    padding: 0px
  }
  .package_team_main div.items div.item div.image {
    width: 100%
  }
  .package_team_main div.items div.item div.image img {
    border-radius: 0
  }
  .package_team_main div.items div.item div.text {
    width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2)
  }
  .package_team_main div.info {
    flex-direction: column-reverse
  }
  .package_team_main div.info div.content {
    width: 100%
  }
  .package_team_main div.info div.image {
    width: 100%
  }
  .package_team_main div.info div.image img {
    border-radius: 0
  }
  .package_news_main div.items div.item div.image {
    width: 100%; padding-right: 0px
  }
  .package_news_main div.items div.item div.text {
    width: 100%; padding-top: calc(var(--page-gap) * 2)
  }
  .package_contactus_main div.box {
    display: block
  }
  .package_contactus_main div.box div.info {
    width: 100%; border-right: 0px; border-bottom: #eeeeee 1px solid
  }
}