@media screen and (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1328px; } }
@media screen and (min-width: 1200px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1328px; } }
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
  --bs-gutter-x: 48px; }

.fnt-body {
  font-family: "Plus Jakarta Sans", sans-serif; }

.fnt-lexend {
  font-family: "Lexend", sans-serif; }

.fw-extrab {
  font-weight: 800; }

.color-gray {
  color: #626262; }

body {
  font-family: "Plus Jakarta Sans", sans-serif;
  color: #000;
  font-size: 16px;
  background: #fff;
  line-height: 1.5; }

header {
  background: linear-gradient(180deg, rgba(217, 217, 217, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
  backdrop-filter: blur(25px);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99; }
  header:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    top: 0;
    left: 0; }
  header h1 {
    position: absolute;
    opacity: 0;
    z-index: -1; }
  header .navbar-toggler {
    position: relative;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none; }
    header .navbar-toggler:focus {
      box-shadow: none; }
    header .navbar-toggler span {
      display: block;
      position: absolute;
      width: 16px;
      height: 1.3px;
      background-color: #000;
      border-radius: 1px;
      left: 7px; }
      header .navbar-toggler span:nth-child(1) {
        top: 9px; }
      header .navbar-toggler span:nth-child(2) {
        top: 15px; }
      header .navbar-toggler span:nth-child(3) {
        top: 21px; }
    @media screen and (max-width: 991px) {
      header .navbar-toggler {
        z-index: 10; }
        header .navbar-toggler span {
          transition: all 0.2s ease-in-out; }
        header .navbar-toggler[aria-expanded="true"] span:nth-child(1) {
          transform: rotate(-45deg);
          top: 15px;
          width: 24px; }
        header .navbar-toggler[aria-expanded="true"] span:nth-child(2) {
          opacity: 0; }
        header .navbar-toggler[aria-expanded="true"] span:nth-child(3) {
          transform: rotate(45deg);
          top: 15px;
          width: 24px; } }
  @media screen and (min-width: 991px) {
    header .navbar-collapse .nav-item .nav-link {
      color: #fff;
      font-size: 18px;
      padding: 18.5px 15px; } }
  @media screen and (min-width: 991px) and (max-width: 1150px) {
    header .navbar-collapse .nav-item .nav-link {
      padding: 18.5px 10px;
      font-size: 15px; } }
  @media screen and (min-width: 991px) and (max-width: 1080px) {
    header .navbar-collapse .nav-item .nav-link {
      font-size: 13px; } }
  @media screen and (min-width: 991px) {
      header .navbar-collapse .nav-item .nav-link:hover, header .navbar-collapse .nav-item .nav-link.active {
        font-weight: 700; } }
  header .navbar-collapse .nav-item .dropdown-toggle {
    text-align: center; }
    header .navbar-collapse .nav-item .dropdown-toggle:after {
      display: none; }
    header .navbar-collapse .nav-item .dropdown-toggle i {
      display: inline-block;
      margin: 0 0 0 4px;
      vertical-align: text-bottom; }
  @media screen and (max-width: 991px) {
    header .navbar-collapse {
      position: fixed;
      top: 100%;
      left: 0;
      right: 0;
      top: 0;
      height: 100vh !important;
      z-index: 9;
      color: #fff;
      padding: 12px 0;
      opacity: 0;
      transition: opacity 0.2s ease-in-out;
      background: rgba(0, 0, 0, 0.4);
      backdrop-filter: blur(25px); }
      header .navbar-collapse.show {
        opacity: 1; }
      header .navbar-collapse .navbar-nav {
        padding: 128px 0 0; }
      header .navbar-collapse .nav-item .nav-link {
        padding: 0;
        font-weight: 700;
        color: #fff; }
      header .navbar-collapse .nav-item .dropdown-menu {
        background: transparent;
        border: 0;
        text-align: center;
        color: #fff; }
        header .navbar-collapse .nav-item .dropdown-menu .dropdown-item {
          color: inherit;
          font-weight: 700; } }

@media screen and (max-width: 767px) {
  .navbar-brand {
    width: 91px;
    padding: 2px 0; }
    .navbar-brand img {
      max-width: 100%; } }
@media screen and (min-width: 768px) {
  .fs-md-20 {
    font-size: 20px;
    line-height: 1.45; } }
.color-white {
  color: #fff; }

.color-light-gray {
  color: #E6E6E6; }

#intro img {
  width: 100%; }
#intro .group-content {
  left: 5rem;
  top: 50%; }
  @media screen and (max-width: 1100px) {
    #intro .group-content {
      top: 58%;
      left: 2rem; } }
  #intro .group-content h2 {
    font-size: 4.125rem;
    line-height: 1.2; }
    @media screen and (max-width: 1100px) {
      #intro .group-content h2 {
        font-size: 3rem; } }
  #intro .group-content .btn-custom .btn {
    border: 0;
    line-height: 1.25;
    font-weight: 700;
    background: linear-gradient(180deg, rgba(217, 217, 217, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), linear-gradient(103.89deg, #DC79FF 9.8%, #1BE9FF 91.3%), linear-gradient(90deg, #5F0074 0%, #8B06BA 100%); }
    #intro .group-content .btn-custom .btn i {
      width: 20px;
      line-height: 0; }
@media screen and (max-width: 767px) {
  #intro .group-content {
    top: 50%; }
    #intro .group-content h2 {
      font-size: 1.25rem; }
    #intro .group-content .text {
      font-size: 10px; }
    #intro .group-content .btn-custom .btn {
      font-size: 12px;
      border-radius: 4px; }
      #intro .group-content .btn-custom .btn i {
        width: 6.5px; } }

.title-common {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.25; }
  @media screen and (max-width: 767px) {
    .title-common {
      font-size: 24px; } }

.h2-common {
  font-size: 50px;
  line-height: 1.26;
  font-weight: 700; }
  @media screen and (max-width: 767px) {
    .h2-common {
      font-size: 24px; } }

.btn-playnow .btn {
  font-size: 14px;
  line-height: 1.25;
  font-weight: 700;
  border: 0;
  border-radius: 4px;
  transition: all 0.5s ease-in-out;
  background: linear-gradient(180deg, rgba(217, 217, 217, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), linear-gradient(110.25deg, #DD7CFF -15.69%, #71F1FF 107.13%); }
  .btn-playnow .btn i {
    width: 14px;
    line-height: 0; }
  @media screen and (max-width: 767px) {
    .btn-playnow .btn {
      font-size: 12px;
      border-radius: 3px; }
      .btn-playnow .btn i {
        width: 11px; } }

#hightlight {
  padding: 3.125rem 0 1.75rem; }
  #hightlight::before {
    content: '';
    position: absolute;
    background: url("../images/deco1.svg") no-repeat center/100% auto;
    width: 344px;
    height: 324px;
    top: 50px;
    right: -50px; }
  #hightlight::after {
    content: '';
    position: absolute;
    background: url("../images/hightlight_deco.svg") no-repeat center/100% auto;
    width: 331px;
    height: 331px;
    top: 177px;
    right: calc(50% - 21px); }
  @media screen and (max-width: 767px) {
    #hightlight .container-xl {
      padding: 0 !important; }
    #hightlight::before {
      width: 140px;
      height: 136px;
      top: -20px;
      right: 4px; }
    #hightlight:after {
      width: 240px;
      height: 240px;
      top: 84px;
      right: 111px; } }

.list-game {
  padding: 21px 0 0; }
  .list-game img {
    max-width: 100%; }
  .list-game .item {
    width: calc((100% - 6rem)/5);
    box-sizing: border-box;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0px 4px 45px rgba(0, 0, 0, 0.1);
    transition: all 0.5s ease-in-out; }
    .list-game .item .title {
      font-size: 20px;
      line-height: 1.25; }
    .list-game .item .text {
      font-size: 14px;
      line-height: 1.3; }
    @media (hover: hover) {
      .list-game .item:hover {
        background: linear-gradient(130.36deg, #E1A5FF -15.3%, #FFF1E1 98.33%), #F1F2FF;
        transform: translateY(-21px); }
        .list-game .item:hover .btn-playnow .btn {
          background: linear-gradient(180deg, rgba(217, 217, 217, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), linear-gradient(114.15deg, #D253FF 17.49%, #2DE9FD 86.31%); } }
    @media screen and (max-width: 1160px) {
      .list-game .item {
        width: calc((100% - 3rem)/3); } }
  @media screen and (max-width: 767px) {
    .list-game {
      padding: 0; }
      .list-game .slick-list {
        padding: 21px 0 30px 1.5rem; }
      .list-game .slick-slide + .slick-slide {
        margin-left: 12px;
        box-sizing: border-box; }
      .list-game .item {
        max-width: 160px;
        min-height: 311px;
        border-radius: 4px; }
        .list-game .item .title {
          font-size: 14px;
          line-height: 18px; }
        .list-game .item .text {
          font-size: 12px; } }

#about::before {
  content: '';
  position: absolute;
  background: url("../images/deco2.svg") no-repeat center/100% auto;
  width: 206px;
  height: 154px;
  top: 47px;
  left: calc(50% + 378.5px); }
#about:after {
  content: '';
  position: absolute;
  background: url("../images/deco3.svg") no-repeat center/100% auto;
  width: 714px;
  height: 493px;
  bottom: 0;
  left: calc(50% + 100px); }
#about .image {
  max-width: 602px; }
  #about .image img {
    max-width: 100%; }
  #about .image::before {
    content: '';
    position: absolute;
    background: url("../images/deco4.svg") no-repeat center/100% auto;
    width: 125px;
    height: 125px;
    top: 58px;
    left: -21.5px;
    max-width: 21%; }
  #about .image::after {
    content: '';
    position: absolute;
    background: url("../images/deco5.svg") no-repeat center/100% auto;
    width: 201px;
    height: 157px;
    bottom: 40px;
    right: -24.5px;
    max-width: 33.5%; }
#about .group-content {
  max-width: 498px; }
  #about .group-content h3 {
    background: linear-gradient(90deg, #065DFF -39.96%, #8B06BA 59.24%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    font-size: 30px;
    line-height: 1.25; }
  #about .group-content .text {
    color: #616161; }
  #about .group-content .btn-link a {
    text-decoration: none;
    background: linear-gradient(90deg, #5F0074 0%, #8B06BA 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    font-weight: 500; }
@media screen and (max-width: 767px) {
  #about::before {
    background-image: url("../images/deco4.svg");
    width: 72px;
    height: 72px;
    left: -20px;
    top: 19px; }
  #about:after {
    top: 150px;
    bottom: auto;
    left: -50px;
    width: 520px;
    background-position: top left; }
  #about .group-content h3 {
    font-size: 20px; }
  #about .image::before {
    width: 88px;
    height: 88px;
    max-width: 100%;
    top: 36px;
    left: -29px; }
  #about .image:after {
    width: 117px;
    height: 91px;
    right: -42px;
    bottom: 0; } }

#service {
  background: url("../images/service_bg.jpg") no-repeat center/cover;
  padding: 200px 0; }
  #service::before {
    content: '';
    position: absolute;
    background: url("../images/service_deco1.svg") no-repeat center/100% auto;
    width: 398px;
    height: 687px;
    top: 6px;
    left: calc(50% + 274px); }
  #service .list-item {
    gap: 20px 35px; }
    #service .list-item .item {
      width: 291px;
      max-width: calc((100% - 105px)/4);
      border-radius: 12px;
      background: #fff; }
      #service .list-item .item .title {
        font-size: 20px;
        line-height: 1.5;
        min-height: 60px;
        font-weight: 500; }
        @media screen and (max-width: 992px) {
          #service .list-item .item .title {
            font-size: 16px;
            min-height: 48px; } }
      #service .list-item .item .text {
        color: #6A6A6A; }
      @media (hover: hover) {
        #service .list-item .item:hover {
          background: linear-gradient(129.57deg, #E1A5FF -2.15%, #FFF1E1 100.09%); } }
  @media screen and (max-width: 767px) {
    #service {
      padding: 30px 0; }
      #service::before {
        width: 178px;
        height: 233px;
        top: 31px;
        right: -28px;
        left: auto; }
      #service .list-item {
        gap: 20px; }
        #service .list-item .item {
          width: calc(50% - 10px);
          max-width: calc(50% - 10px);
          border-radius: 8px; }
          #service .list-item .item .icon img {
            width: 40px; }
          #service .list-item .item .title {
            font-size: 12px;
            min-height: 36px; }
          #service .list-item .item .text {
            font-size: 10px; } }

#whyChoose::before {
  content: '';
  position: absolute;
  background: url("../images/why_deco1.svg") no-repeat center/100% auto;
  width: 267px;
  height: 260px;
  top: -62px;
  right: calc(50% + 542px); }
#whyChoose:after {
  content: '';
  position: absolute;
  background: url("../images/why_deco3.svg") no-repeat center top/100% auto;
  width: 828px;
  height: 651px;
  right: calc(50% + 200px);
  bottom: -50px; }
#whyChoose .flex {
  width: 1219px;
  max-width: 100%;
  margin: 0 auto; }
#whyChoose .group-content {
  max-width: 522px; }
  #whyChoose .group-content .title-common span {
    color: #1551EE; }
  #whyChoose .group-content .list .item {
    gap: 20px; }
    #whyChoose .group-content .list .item .icon {
      min-width: 92.5px;
      width: 92.5px; }
      #whyChoose .group-content .list .item .icon img {
        max-width: 100%; }
    #whyChoose .group-content .list .item .group-content .title {
      font-size: 24px;
      line-height: 1.25; }
    #whyChoose .group-content .list .item .group-content .text {
      font-size: 20px; }
#whyChoose .image {
  max-width: 475px; }
  #whyChoose .image::before {
    content: '';
    position: absolute;
    background: url("../images/why_deco2.svg") no-repeat center/100% auto;
    width: 526px;
    height: 512px;
    right: -93px;
    bottom: -57px;
    max-width: 110%; }
  #whyChoose .image img {
    max-width: 100%; }
@media screen and (max-width: 767px) {
  #whyChoose:after {
    width: 100vw;
    top: 100px;
    right: 100px; }
  #whyChoose .group-content .list .item {
    gap: 12px; }
    #whyChoose .group-content .list .item .icon {
      width: 40px;
      min-width: 40px; }
    #whyChoose .group-content .list .item .group-content .title {
      font-size: 16px; }
    #whyChoose .group-content .list .item .group-content .text {
      font-size: 12px; }
  #whyChoose .image::before {
    width: 348px;
    height: 339px;
    max-width: 100%;
    right: -73px;
    bottom: 145px; } }

#game::before {
  content: '';
  position: absolute;
  background: url("../images/game_deco.svg") no-repeat top center/100% auto;
  width: 1026px;
  height: 858px;
  top: -96px;
  left: calc(50% - 412px); }
@media screen and (max-width: 767px) {
  #game .container-xl {
    padding: 0 !important; }
  #game::before {
    top: 85px;
    width: 374px;
    height: 312px;
    left: 67px; } }

#legal .title-common {
  background: url("../images/legal_deco.svg") no-repeat bottom; }
#legal h3 {
  line-height: 1.25;
  font-size: 28px;
  font-weight: 700; }
#legal .text {
  line-height: 1.5; }
#legal #privacy::before {
  content: '';
  position: absolute;
  background: url("../images/legal_deco2.svg") no-repeat top center/100% auto;
  width: 811px;
  height: 659px;
  top: 30px;
  right: calc(50% + 80px); }
#legal #privacy::after {
  content: '';
  position: absolute;
  background: url("../images/legal_deco3.svg") no-repeat top center/100% auto;
  width: 873px;
  height: 599px;
  bottom: -250px;
  left: calc(50% + 80px); }
#legal #privacy .list .item {
  background: #F7F8FF;
  border-radius: 8px; }
  #legal #privacy .list .item .icon {
    width: 130px;
    min-width: 130px; }
    #legal #privacy .list .item .icon img {
      max-width: 100%; }
  #legal #privacy .list .item .group-content .title {
    font-size: 24px;
    line-height: 1.25;
    font-weight: 700; }
@media screen and (max-width: 767px) {
  #legal .title-common {
    background-size: 127px auto; }
  #legal h3 {
    background: linear-gradient(90deg, #065DFF -39.96%, #8B06BA 59.24%), linear-gradient(0deg, #000000, #000000), #1443BD;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    font-size: 20px; }
  #legal #privacy::before {
    width: 100vw;
    right: 30px;
    top: 100px; }
  #legal #privacy::after {
    width: 85vw;
    bottom: 0;
    height: 80vw;
    left: 50px; }
  #legal #privacy .list .item {
    border-radius: 4px; }
    #legal #privacy .list .item .icon {
      width: 40px;
      min-width: 40px; }
    #legal #privacy .list .item .group-content .title {
      font-size: 14px; }
    #legal #privacy .list .item .group-content .text {
      font-size: 12px; } }
#legal #terms::before {
  content: '';
  position: absolute;
  background: url("../images/terms_deco1.svg") no-repeat center/100% auto;
  width: 811px;
  height: 429px;
  top: 87px;
  right: calc(50% - 108px); }
#legal #terms::after {
  content: '';
  position: absolute;
  background: url("../images/terms_deco2.svg") no-repeat center/100% auto;
  width: 1012px;
  height: 587px;
  top: 319px;
  left: calc(50% - 292px); }
#legal #terms .image {
  max-width: 448px; }
  #legal #terms .image img {
    max-width: 100%; }
#legal #terms .title {
  font-size: 24px;
  line-height: 1.25; }
#legal #terms .group-content {
  max-width: 630px; }
@media screen and (max-width: 767px) {
  #legal #terms::before {
    width: 379px;
    height: 297px;
    right: 64px;
    top: 700px;
    background-image: url("../images/terms_deco_sp.svg"); }
  #legal #terms::after {
    width: 393px;
    height: 417px;
    right: 0;
    background-image: url("../images/term_deco2_sp.svg");
    left: 0;
    top: 850px; }
  #legal #terms .title {
    font-size: 18px; } }

.form-contact .box {
  max-width: 1200px;
  margin: 0 auto;
  border: 1px solid #D1D1D1;
  border-radius: 24px;
  padding: 24px 0;
  background: url("../images/form_bg.png") no-repeat center/cover; }
  .form-contact .box .image {
    position: absolute;
    width: 426px;
    top: -123px;
    left: -60px;
    max-width: 35.5%; }
    .form-contact .box .image img {
      max-width: 100%; }
  .form-contact .box .title {
    font-size: 28px;
    line-height: 1.4; }
  .form-contact .box form {
    max-width: 468px;
    width: 78%; }
    .form-contact .box form input, .form-contact .box form textarea {
      width: 100%;
      border-radius: 4px;
      background: #fff;
      outline: none;
      resize: none;
      padding: 10px 16px;
      border: 0; }
      .form-contact .box form input::placeholder, .form-contact .box form textarea::placeholder {
        color: #606060;
        font-weight: 300;
        font-style: italic; }
    .form-contact .box form textarea {
      border-radius: 8px;
      height: 85px; }
    .form-contact .box form button {
      background: linear-gradient(103.89deg, #E394FF 9.8%, #01D4EB 91.3%), #FFFFFF;
      width: 129px;
      font-size: 14px;
      line-height: 1.25; }
      .form-contact .box form button:hover {
        color: #fff; }
  @media screen and (max-width: 767px) {
    .form-contact .box {
      background-image: url("../images/form_bg_sp.svg");
      padding: 3px 0 26px;
      border-radius: 7px;
      border-color: rgba(209, 209, 209, 0.2); }
      .form-contact .box .image {
        position: static;
        width: 150px;
        margin: 0 0 26px 30px; }
      .form-contact .box .title {
        font-size: 12px; }
      .form-contact .box form {
        width: 100%;
        max-width: 100%; }
        .form-contact .box form input, .form-contact .box form textarea {
          padding: 5px 10px;
          line-height: 1.3;
          font-size: 10px;
          border-radius: 4px;
          height: auto; }
        .form-contact .box form button {
          font-size: 12px;
          width: 91px; } }

.footer-top .inner {
  max-width: 1200px; }
  .footer-top .inner .address {
    color: #3A3A3A; }
  .footer-top .inner .title {
    font-size: 16px;
    line-height: 1.25;
    color: #282828; }
  .footer-top .inner .phone, .footer-top .inner .mail {
    line-height: 2; }
    .footer-top .inner .phone a, .footer-top .inner .mail a {
      color: #3A3A3A;
      text-decoration: none; }
.footer-top .right .nav {
  max-width: 558px; }
  .footer-top .right .nav li {
    width: 230px;
    max-width: calc(50% - 10px); }
    .footer-top .right .nav li a {
      display: block;
      color: #3A3A3A;
      padding: 10px 20px;
      border-radius: 4px;
      text-decoration: none; }
      .footer-top .right .nav li a:hover {
        background: linear-gradient(130.39deg, #E1A5FF 0.09%, #FFF1E1 98.33%), #F7F8FF; }
@media screen and (max-width: 767px) {
  .footer-top .right .nav li {
    width: 100%;
    max-width: 100%; }
    .footer-top .right .nav li a {
      width: 110px; }
      .footer-top .right .nav li a:hover {
        background: transparent; } }

.footer-bottom {
  border-top: 1px solid #DFDFDF;
  font-size: 14px;
  line-height: 24px; }
  .footer-bottom .nav2 a {
    color: #3A3A3A;
    text-decoration: none; }
  @media screen and (max-width: 767px) {
    .footer-bottom {
      margin: 0 24px; }
      .footer-bottom .container-xl {
        padding: 0; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  to {
    opacity: 1; } }
.fadeIn {
  animation-name: fadeIn; }

.animated {
  animation-duration: 1s;
  animation-fill-mode: both; }

.animated.infinite {
  animation-iteration-count: infinite; }

.wow {
  animation-duration: 1s;
  animation-fill-mode: both; }
