@font-face {
  font-family: 'BebasNeue';
  src: url(../font/BebasNeue/BebasNeue-Regular.ttf);
}
body {
  background-color: #ffffff
}
body[footer=renderend] {
  background: #253c56
}
.package_header {
  --header-background: transparent; --header-border-bottom: transparent 1px solid; --header-anchor-font-weight: normal; --header-anchor-font-size: 1.6rem; --header-anchor-color: #b7b7b7; --header-anchor-hover-color: #fbc102; --header-border-top: transparent 2px solid; --header-sticky-background: #253c56; --header-submenu-background: #ffffff; --header-submenu-anchor-color: #253c56; --header-submenu-anchor-hover-background: #fbc102; --header-submenu-anchor-hover-color: #253c56; --header-navicon-color: #fbc102; --header-mobile-mainmenu-background: rgba(37, 60, 86, 0.95); --header-mobile-menu-li-border-bottom: rgba(255, 255, 255, 0.3) 1px dashed
}
.package_header::part(placeholder) {
  display: none
}
.package_header div.right {
  display: none; padding-right: var(--page-gap); align-items: center
}
.package_header div.right span.icon {
  padding-right: 1rem
}
.package_header div.right span.icon jtbc-svg {
  width: 30px; height: 30px; --fore-color: #fbc102
}
.package_header div.right u {
  text-decoration: none; font-size: 1.8rem; color: #fbc102
}
.package_header div.right.slotted {
  display: flex
}
.package_banner {
  --banner-min-height: 660px; --banner-dot-active-background: #fbc102
}
.package_banner::part(frontstage) {
  display: block
}
.package_banner::part(title) {
  font-size: 4.8rem
}
.package_banner::part(subtitle) {
  font-family: 'BebasNeue'; font-size: 3rem; padding: 0px; line-height: 100%; margin: calc(var(--page-gap) / 2) 0px; padding-left: calc(var(--page-gap) * 1); border-left: #fbc102 2px solid
}
.package_banner::part(mask) {
  background-image: linear-gradient(to left top, #253c56, #20506b, #12647e, #007a8d, #008f97); opacity: 0.85
}
.package_banner::part(link) {
  background: #ffffff; color: #253c56
}
.package_banner::part(link):hover {
  background: #fbc102
}
.package_banner div.frontstage {
  display: none; box-sizing: border-box; height: 600px; padding-left: calc(var(--page-gap) * 6); padding-top: calc(var(--page-gap) * 2); pointer-events: none; user-select: none
}
.package_banner div.frontstage img {
  height: 100%; display: block
}
.package_banner div.frontstage.slotted {
  display: block
}
.package_container {
  --container-background: #ffffff; --container-headline-mask-background: linear-gradient(to left top, rgba(37, 60, 86, 0.85), rgba(32, 80, 107, 0.85), rgba(18, 100, 126, 0.85), rgba(0, 122, 141, 0.85), rgba(0, 143, 151, 0.85)); --container-headline-height: calc(100vh / 4 + 80px)
}
.package_container::part(headline-subtitle) {
  font-family: 'BebasNeue'; font-size: 3rem; color: #ffffff
}
.package_container[bg=one] {
  --container-background: #f4f4f4
}
.package_footer {
  --footer-background: transparent; position: relative; z-index: 200
}
.package_footer::part(container) {
  background: url(../images/bg.footer.png) #253c56 center center no-repeat; background-size: contain; padding-top: calc(var(--page-gap) / 2)
}
.package_footer::part(h3) {
  display: inline-block; padding-bottom: var(--page-gap); border-bottom: #fbc102 2px solid
}
.package_footer::part(copyright) {
  border-top: rgba(255, 255, 255, 0.1) 1px solid
}
.package_category {
  width: 100%; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding-bottom: var(--page-gap)
}
.package_category ul {
  background: #253c56; border-radius: var(--page-gap); padding: 0px var(--page-gap)
}
.package_category ul li {
  display: inline-block
}
.package_category ul li a {
  display: inline-block; line-height: 120%; padding: calc(var(--page-gap) / 2) var(--page-gap); background: transparent; font-size: 1.4rem; color: #f4f4f4; transition: all .3s ease
}
.package_category ul li a:hover,
.package_category ul li.pitchon a {
  background: #fbc102; color: #fff
}
.package_more {
  width: 100%; padding-top: var(--page-gap); text-align: center
}
.package_more[align=left] {
  text-align: left
}
.package_more[align=right] {
  text-align: right
}
.package_more a {
  display: inline-block; padding: calc(var(--page-gap) / 2) var(--page-gap); font-size: 1.4rem; background: transparent; border: #253c56 2px solid; color: #253c56; border-radius: 2rem; transition: all 0.3s ease
}
.package_more a:hover {
  background: #253c56; color: #ffffff
}
.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-top: 2.4rem; padding-bottom: 3rem; line-height: 120%; color: #253c56; font-weight: normal; text-align: center; position: relative; z-index: 200
}
.package_section h3 em {
  font-family: 'BebasNeue'; font-size: 2.4rem; color: #253c56; display: flex; flex-wrap: wrap; align-items: center; gap: calc(var(--page-gap) / 2); transform: translate(-50%, -50%); white-space: nowrap; font-style: normal; font-weight: lighter; position: absolute; left: 50%; top: 0px; z-index: 100
}
.package_section h3 em::before,
.package_section h3 em::after {
  content: ''; display: block; width: 8px; height: 8px; background: #fbc102; transform: rotate(45deg)
}
.package_section h3::before {
  content: ''; display: block; width: 11rem; height: 2rem; background-color: #fbc102; mask-image: url(../images/zigzag.svg); mask-size: 2rem; mask-repeat: repeat-x; transform: translate(-50%, 0px); position: absolute; bottom: 0px; left: 50%; z-index: 300
}
.package_links {
  width: 100%; display: flex; justify-content: space-between; padding-top: calc(var(--page-gap) * 1.5)
}
.package_links dl dt {
  font-size: 1.4rem; padding-bottom: 1rem; font-weight: normal; color: #222222
}
.package_links dl a {
  font-size: 1.4rem; color: #253c56; display: inline-block; padding-bottom: 2px; border-bottom: transparent 1px dashed
}
.package_links dl a:hover {
  border-color: #253c56
}
.package_links dl dd:empty::after {
  content: attr(empty); color: #999999
}
.package_links dl:last-child dt,
.package_links dl:last-child dd {
  text-align: right
}
.package_main {
  display: none; padding: var(--page-gap) 0px
}
.package_main.slotted {
  display: block
}
.package_home_advantage .package_section h3::before {
  background: #fbc102
}
.package_home_advantage .package_section h3 span {
  color: #f4f4f4
}
.package_home_advantage .package_section h3 em {
  color: #fbc102
}
.package_home_advantage div.advantage {
  width: 100%; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding-bottom: var(--page-gap)
}
.package_home_advantage div.advantage div.image {
  width: calc(50% - calc(var(--page-gap) * 2))
}
.package_home_advantage div.advantage div.image img {
  width: 100%; display: block; border-radius: 1rem; overflow: hidden
}
.package_home_advantage div.advantage div.items {
  width: calc(50% - calc(var(--page-gap) * 2))
}
.package_home_advantage div.advantage div.items div.item {
  width: 100%; box-sizing: border-box; padding: var(--page-gap); position: relative; background: #f4f4f4; margin: var(--page-gap) 0px; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_home_advantage div.advantage div.items div.item span.index {
  width: 5rem; height: 5rem; display: flex; align-items: center; justify-content: center; font-family: 'BebasNeue'; font-size: 2.4rem; color: #fff; background: #fbc102; border-radius: 100%; position: absolute; top: 50%; left: 0px; transform: translate(-50%, -50%); z-index: 100
}
.package_home_advantage div.advantage div.items div.item p.title {
  padding-left: var(--page-gap); padding-bottom: var(--page-gap); font-size: 1.8rem; font-weight: bold; color: #333
}
.package_home_advantage div.advantage div.items div.item p.subtitle {
  padding-left: var(--page-gap); font-size: 1.4rem; color: #666
}
.package_home_advantage_cushion {
  width: 100%; height: 100%; box-sizing: border-box; background: url(../images/bg.headline.1.jpg) center center no-repeat; background-size: cover; position: relative
}
.package_home_advantage_cushion::before {
  content: ''; width: 100%; height: 100%; background: #253c56; opacity: 0.85; position: absolute; top: 0px; left: 0px; z-index: 10
}
.package_aboutus_main div.brief {
  width: 100%; padding: var(--page-gap) 0px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between
}
.package_aboutus_main div.brief div.image {
  width: 35%
}
.package_aboutus_main div.brief div.image img {
  display: block; width: 100%; animation: 9s linear infinite morphing
}
.package_aboutus_main div.brief div.text {
  width: 60%
}
.package_aboutus_main div.brief div.text h3 {
  font-family: 'BebasNeue'; font-size: 2.4rem; font-weight: normal; color: #253c56; padding-bottom: calc(var(--page-gap) * 1)
}
.package_aboutus_main div.brief div.text div.intro {
  padding-left: var(--page-gap); border-left: #fbc102 2px solid; font-size: 1.4rem; line-height: 160%; color: #253c56
}
.package_aboutus_main div.data {
  width: 100%; box-sizing: border-box; display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: var(--page-gap); margin-bottom: calc(var(--page-gap) * 4); padding: calc(var(--page-gap) * 2); background: #f4f4f4
}
.package_aboutus_main div.data[mode=skinny] {
  margin: 0px; padding-top: 0px; padding-bottom: 0px
}
.package_aboutus_main div.data div.item {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between
}
.package_aboutus_main div.data div.item div.icon {
  width: 60px
}
.package_aboutus_main div.data div.item div.icon jtbc-svg {
  width: 60px; height: 60px; --fore-color: #fbc102
}
.package_aboutus_main div.data div.item div.text {
  width: calc(100% - var(--page-gap) - 60px)
}
.package_aboutus_main div.data div.item div.text div.number {
  font-family: 'BebasNeue'; font-size: 4rem
}
.package_aboutus_main div.data div.item div.text div.number em {
  font-size: 1.4rem; font-style: normal; color: #999; padding-left: 0.2rem
}
.package_aboutus_main div.data div.item div.text div.intro {
  font-size: 1.4rem; padding-top: calc(var(--page-gap) / 4); color: #666
}
.package_aboutus_main div.gallery {
  display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--page-gap)
}
.package_aboutus_main div.gallery div.picture img {
  width: 100%; display: block; cursor: pointer; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_course_main div.items {
  width: 100%; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--page-gap); padding: var(--page-gap) 0px
}
.package_course_main div.items div.item {
  width: 100%; background: #f4f4f4; margin-bottom: var(--page-gap); box-shadow: 0px 2px 2px rgb(0 0 0 / 5%); position: relative
}
.package_course_main div.items div.item p.image img {
  width: 100%; display: block
}
.package_course_main div.items div.item p.title {
  padding: var(--page-gap) 0px; text-align: center
}
.package_course_main div.items div.item p.title em {
  display: inline-block; padding: 0px 0.4rem; font-style: normal; color: #fbc102
}
.package_course_main div.items div.item p.title a {
  display: inline-block; font-size: 1.6rem; color: #253c56; padding-bottom: 2px; border-bottom: transparent 1px dashed
}
.package_course_main div.items div.item p.title a:hover {
  border-color: #fbc102
}
.package_course_main div.items div.item p.summary {
  padding: 0px var(--page-gap) calc(var(--page-gap) * 2) var(--page-gap); font-size: 1.4rem; text-align: center; color: #666; line-height: 140%
}
.package_course_main div.items div.item div.more {
  display: block; position: absolute; bottom: 0px; left: 50%; transform: translate(-50%, 50%)
}
.package_course_main div.items div.item div.more a {
  padding: calc(var(--page-gap) / 2) var(--page-gap); background: #fbc102; font-size: 1.4rem; color: #fff; border-radius: var(--page-gap); transition: all 0.3s ease
}
.package_course_main div.items div.item div.more a:hover {
  background: #253c56
}
.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; overflow: hidden; 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: #253c56
}
.package_team_main div.items div.item div.text p.title a:hover {
  color: #fbc102
}
.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.home_items {
  width: 100%; padding-top: var(--page-gap); display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: var(--page-gap)
}
.package_news_main div.home_items div.item {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 1); border-bottom: #fbc102 4px solid; background: #ffffff; border-radius: 1rem; overflow: hidden; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_news_main div.home_items div.item div.date {
  font-family: 'BebasNeue'; font-size: 2.4rem; font-weight: bold; color: #253c56; line-height: 100%; padding-bottom: calc(var(--page-gap) * 1)
}
.package_news_main div.home_items div.item div.title {
  color: #253c56; font-size: 1.6rem; line-height: 160%; padding-bottom: calc(var(--page-gap) * 1.5); position: relative
}
.package_news_main div.home_items div.item div.title a {
  display: block; color: #253c56
}
.package_news_main div.home_items div.item div.title a:hover {
  color: #253c56
}
.package_news_main div.home_items div.item div.title::after {
  content: ''; width: 50px; height: 2px; background: #253c56; position: absolute; bottom: calc(var(--page-gap) * 1); left: 0px; z-index: 100; transition: all 0.3s ease
}
.package_news_main div.home_items div.item div.title:hover::after {
  width: 100%
}
.package_news_main div.home_items div.item div.summary {
  color: #999999; font-size: 1.4rem; line-height: 160%
}
.package_news_main div.items {
  width: 100%; padding-top: var(--page-gap); display: grid; grid-template-columns: 1fr; gap: var(--page-gap)
}
.package_news_main div.items div.item {
  width: 100%; padding: var(--page-gap); background: #f4f4f4; display: flex; box-sizing: border-box; align-items: center; border-radius: 1rem; overflow: hidden; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_news_main div.items div.item div.image {
  width: 20%; box-sizing: border-box; padding-right: var(--page-gap)
}
.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[type=title] {
  padding-bottom: calc(var(--page-gap) / 2)
}
.package_news_main div.items div.item div.text p[type=title] a {
  font-size: 2rem; color: #253c56; line-height: 120%; display: inline-block; padding-bottom: 4px; border-bottom: transparent 1px dashed
}
.package_news_main div.items div.item div.text p[type=title] a:hover {
  border-color: #fbc102
}
.package_news_main div.items div.item div.text p[type=info] {
  padding-bottom: calc(var(--page-gap) / 2); color: #999; line-height: 120%
}
.package_news_main div.items div.item div.text p[type=summary] {
  font-size: 1.4rem; color: #333; line-height: 160%
}
.package_contactus_main div.items {
  width: 100%; padding: var(--page-gap) 0px calc(var(--page-gap) * 2) 0px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--page-gap)
}
.package_contactus_main div.items div.item {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2); background: #f4f4f4; border-radius: 1rem; overflow: hidden; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_contactus_main div.items div.item div.icon {
  text-align: center
}
.package_contactus_main div.items div.item div.icon jtbc-svg {
  width: 50px; height: 50px; --fore-color: #fbc102
}
.package_contactus_main div.items div.item div.title {
  font-size: 2.4rem; font-weight: bold; color: #253c56; line-height: 160%; padding: calc(var(--page-gap) * 1) 0px; text-align: center
}
.package_contactus_main div.items div.item div.subtitle {
  font-size: 1.6rem; color: #999999; line-height: 160%; text-align: center
}
.package_contactus_main div.items div.item div.subtitle a {
  font-size: 1.6rem; color: #999999; line-height: 160%; transition: all 0.3s ease
}
.package_contactus_main div.items div.item div.subtitle a:hover {
  color: #fbc102
}
.package_contactus_main div.contact {
  width: 100%; display: grid; grid-template-columns: 1fr 1fr; background: #f4f4f4; border-radius: 1rem; overflow: hidden; box-shadow: 0px 2px 2px rgb(0 0 0 / 5%)
}
.package_contactus_main div.contact div.form {
  width: 100%; box-sizing: border-box; padding: calc(var(--page-gap) * 2)
}
.package_contactus_main div.contact div.form div.fullname {
  margin-bottom: calc(var(--page-gap) / 2); padding-left: var(--page-gap); font-size: 2.4rem; color: #253c56; line-height: 100%; border-left: #fbc102 2px solid
}
.package_contactus_main div.contact div.form div.tip {
  font-size: 1.4rem; color: #999999; padding-bottom: calc(var(--page-gap) * 1)
}
.package_contactus_main div.contact div.form button.b2 {
  width: 100%; border-radius: 1rem; background: #253c56; border-color: #253c56
}
.package_contactus_main div.contact div.form button.b2:hover {
  background: #000000; border-color: #000000
}
@media screen and (max-width: 960px) {
  .package_banner {
    --banner-height: 400px; --banner-min-height: 400px
  }
  .package_banner::part(frontstage) {
    display: none
  }
  .package_banner::part(title) {
    font-size: 2.8rem
  }
  .package_banner::part(subtitle) {
    font-size: 2rem; line-height: 120%
  }
  .package_section h3 span {
    font-size: 3rem
  }
  .package_home_advantage div.advantage div.image {
    width: 100%
  }
  .package_home_advantage div.advantage div.items {
    width: 100%
  }
  .package_home_advantage div.advantage div.items div.item span.index {
    transform: translate(50%, -50%)
  }
  .package_home_advantage div.advantage div.items div.item p.title {
    padding-left: calc(var(--page-gap) * 5.5); font-size: 1.6rem; padding-bottom: calc(var(--page-gap) / 2)
  }
  .package_home_advantage div.advantage div.items div.item p.subtitle {
    padding-left: calc(var(--page-gap) * 5.5); font-size: 1.2rem
  }
  .package_aboutus_main div.brief {
    flex-direction: column-reverse
  }
  .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.data {
    grid-template-columns: 1fr 1fr; padding: var(--page-gap)
  }
  .package_aboutus_main div.data div.item div.icon {
    width: 30px
  }
  .package_aboutus_main div.data div.item div.icon jtbc-svg {
    width: 30px; height: 30px
  }
  .package_aboutus_main div.data div.item div.text {
    width: calc(100% - var(--page-gap) - 30px)
  }
  .package_aboutus_main div.data div.item div.text div.number {
    font-size: 2.4rem
  }
  .package_aboutus_main div.data div.item div.text div.intro {
    font-size: 1.2rem
  }
  .package_aboutus_main div.gallery {
    grid-template-columns: 1fr 1fr
  }
  .package_course_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; border-radius: 1rem
  }
  .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.home_items {
    grid-template-columns: 1fr
  }
  .package_news_main div.items div.item {
    display: block
  }
  .package_news_main div.items div.item div.image {
    width: 100%; padding: 0px; padding-bottom: var(--page-gap)
  }
  .package_contactus_main div.box {
    display: block
  }
  .package_contactus_main div.box div.info {
    width: 100%; border-right: 0px; border-bottom: #eeeeee 1px solid
  }
  .package_contactus_main div.items {
    grid-template-columns: 1fr
  }
  .package_contactus_main div.contact {
    grid-template-columns: 1fr
  }
}
@keyframes morphing {
  0% {
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%
  }
  25% {
    border-radius: 58% 42% 75% 25% / 76% 46% 54% 24%
  }
  50% {
    border-radius: 50% 50% 33% 67% / 55% 27% 73% 45%
  }
  75% {
    border-radius: 33% 67% 58% 42% / 63% 68% 32% 37%
  }
  100% {
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%
  }
}