* {
  margin: 0;
  padding: 0; }

a {
  color: inherit;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

ul li {
  list-style-type: none; }

@keyframes img-move {
  from {
    background-position: left top; }
  to {
    background-position: left bottom; } }

@keyframes vertical {
  0% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }

@keyframes blink {
  0% {
    opacity: 0.5; }
  30% {
    opacity: 1.0; } }

@keyframes spin1 {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes bloom {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(0.9); } }

body {
  font-family: 'Satoshi', "IBM Plex Sans", sans-serif; }
  body.sc {
    font-family: sans-serif !important;
    font-weight: nornal; }
  body.tc {
    font-family: sans-serif !important;
    font-weight: nornal; }
  body.ar {
    font-family: sans-serif !important;
    font-weight: nornal; }

@media only screen and (min-width: 1024px) {
  .is-sp {
    display: none !important; }
  .is-tb {
    display: none !important; }
  body {
    color: #222222;
    background: #F8F8FF;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt" on;
    overflow-x: hidden;
    font-size: 16px;
    line-height: 1.75;
    position: relative; }
    body > .over-target .container.index .kv {
      opacity: 0.0;
      pointer-events: none; }
  a {
    color: inherit;
    text-decoration: underline; }
    a:hover {
      text-decoration: none; }
  ul li {
    list-style-type: none; }
  .arch {
    position: absolute;
    top: 440px;
    left: 50%;
    transform: translate(-50%, 0px);
    width: 432px;
    height: calc( 100% - 240px - 440px);
    border-radius: 216px;
    background: linear-gradient(180deg, #FF3386 0%, #A000FF 49.52%, #3DCADA 100%);
    opacity: 0.3;
    pointer-events: none; }
    .arch.index {
      opacity: 1.0; }
  .over-normal,
  .over-black,
  .over-white {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    pointer-events: none; }
    .over-normal a,
    .over-black a,
    .over-white a {
      pointer-events: auto; }
  .over-black,
  .over-white {
    -webkit-clip-path: rect(440px calc((100vw / 2 - 432px / 2) + 432px) calc( 100% - 240px) calc(100vw / 2 - 432px / 2) round 216px);
            clip-path: rect(440px calc((100vw / 2 - 432px / 2) + 432px) calc( 100% - 240px) calc(100vw / 2 - 432px / 2) round 216px); }
  .over-black {
    filter: brightness(0) saturate(100%); }
  .over-white {
    filter: brightness(0) saturate(100%) invert(88%) sepia(2%) saturate(1661%) hue-rotate(202deg) brightness(108%) contrast(106%); }
  .over-target {
    position: relative;
    z-index: 0; }
  .arch {
    z-index: 1; }
  .over-black {
    z-index: 2; }
    .over-black .is-white,
    .over-black .is-normal {
      visibility: hidden; }
  .over-white {
    z-index: 2; }
    .over-white .is-black,
    .over-white .is-normal {
      visibility: hidden; }
  .over-normal {
    z-index: 3; }
    .over-normal .is-black,
    .over-normal .is-white {
      visibility: hidden; }
  .arch-menu {
    position: absolute;
    top: 440px;
    left: 50%;
    transform: translate(-50%, 0px);
    width: 432px;
    height: calc( 100% - 440px);
    border-radius: 216px 216px 0px 0px;
    background: linear-gradient(180deg, #3DCADA 0%, #F8F8FF 100%);
    pointer-events: none; }
  .over-menu {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    pointer-events: none;
    -webkit-clip-path: rect(440px calc((100vw / 2 - 432px / 2) + 432px) calc( 100%) calc(100vw / 2 - 432px / 2) round 216px 216px 0px 0px);
            clip-path: rect(440px calc((100vw / 2 - 432px / 2) + 432px) calc( 100%) calc(100vw / 2 - 432px / 2) round 216px 216px 0px 0px);
    filter: brightness(0) saturate(100%) invert(37%) sepia(98%) saturate(3649%) hue-rotate(318deg) brightness(106%) contrast(103%); }
  header {
    position: fixed;
    width: 100%;
    box-sizing: border-box;
    height: 109px;
    z-index: 10; }
  header.show .over-menu a,
  #menu.show .over-menu a {
    pointer-events: auto; }
  header.show .logo img,
  #menu.show .logo img {
    filter: brightness(1000%); }
  header.show .symbol img,
  #menu.show .symbol img {
    filter: brightness(1000%); }
  header.show .menu,
  #menu.show .menu {
    display: flex;
    align-items: center;
    gap: 20px;
    height: 40px; }
    header.show .menu .menu_item,
    #menu.show .menu .menu_item {
      color: #F8F8FF; }
      header.show .menu .menu_item .select_lang .icon svg,
      #menu.show .menu .menu_item .select_lang .icon svg {
        filter: brightness(1000%); }
      header.show .menu .menu_item .select_lang select,
      #menu.show .menu .menu_item .select_lang select {
        color: #F8F8FF; }
      header.show .menu .menu_item .btn_menu,
      #menu.show .menu .menu_item .btn_menu {
        color: #F8F8FF; }
        header.show .menu .menu_item .btn_menu span,
        #menu.show .menu .menu_item .btn_menu span {
          background: #F8F8FF;
          display: none;
          transform: translate(-50%, -50%); }
          header.show .menu .menu_item .btn_menu span:first-child,
          #menu.show .menu .menu_item .btn_menu span:first-child {
            top: calc(50%);
            display: block;
            transform: translate(-50%, -50%) rotate(45deg); }
          header.show .menu .menu_item .btn_menu span:last-child,
          #menu.show .menu .menu_item .btn_menu span:last-child {
            top: calc(50%);
            display: block;
            transform: translate(-50%, -50%) rotate(-45deg); }
  header .head,
  #menu .head {
    padding: 40px;
    position: relative;
    display: flex;
    justify-content: center; }
    header .head .logo img,
    #menu .head .logo img {
      height: 40px;
      display: block; }
  header .symbol,
  #menu .symbol {
    height: 40px;
    position: absolute;
    top: 40px;
    left: 40px; }
  header .menu,
  #menu .menu {
    position: absolute;
    top: 40px;
    right: 40px;
    display: flex;
    align-items: center;
    gap: 20px;
    height: 40px; }
    header .menu .menu_item,
    #menu .menu .menu_item {
      color: #FF3386;
      leading-trim: both;
      text-edge: cap;
      font-family: Satoshi;
      font-size: 20px;
      font-style: normal;
      font-weight: 700;
      letter-spacing: 0.8px; }
      header .menu .menu_item a,
      #menu .menu .menu_item a {
        border: none;
        text-decoration: none; }
      header .menu .menu_item .select_lang,
      #menu .menu .menu_item .select_lang {
        display: block;
        position: relative;
        height: 40px; }
        header .menu .menu_item .select_lang .icon,
        #menu .menu .menu_item .select_lang .icon {
          position: absolute;
          width: 24px;
          height: 24px;
          top: 50%;
          right: 0px;
          pointer-events: none;
          transform: translate(0%, -50%); }
          header .menu .menu_item .select_lang .icon svg,
          #menu .menu .menu_item .select_lang .icon svg {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%); }
        header .menu .menu_item .select_lang select,
        #menu .menu .menu_item .select_lang select {
          position: relative;
          appearance: none;
          -webkit-appearance: none;
          -moz-appearance: none;
          background: none;
          border: none;
          outline: none;
          color: #FF3386;
          leading-trim: both;
          text-edge: cap;
          font-family: Satoshi;
          font-size: 20px;
          font-style: normal;
          font-weight: 700;
          letter-spacing: 0.8px;
          padding: 7px;
          padding-right: 24px; }
          header .menu .menu_item .select_lang select:focus-visible,
          #menu .menu .menu_item .select_lang select:focus-visible {
            border-bottom: 1px solid; }
      header .menu .menu_item .btn_menu,
      #menu .menu .menu_item .btn_menu {
        color: #FF3386;
        display: block;
        line-height: 49px;
        right: 0px;
        top: 0px;
        letter-spacing: 0.1em;
        text-decoration: none;
        width: 40px;
        height: 40px;
        position: relative; }
        header .menu .menu_item .btn_menu span,
        #menu .menu .menu_item .btn_menu span {
          position: absolute;
          display: block;
          width: 27px;
          height: 1px;
          background: #FF3386;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
          header .menu .menu_item .btn_menu span:first-child,
          #menu .menu .menu_item .btn_menu span:first-child {
            top: calc(50% - 7px); }
          header .menu .menu_item .btn_menu span:last-child,
          #menu .menu .menu_item .btn_menu span:last-child {
            top: calc(50% + 7px); }
  #menu {
    position: fixed;
    top: 0px;
    left: 0px;
    background: #FF3386;
    z-index: 100;
    width: 100%;
    height: 100%;
    color: #F8F8FF;
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 1010;
    transition: opacity 0.2s ease-in;
    opacity: 0.0;
    pointer-events: none;
    z-index: 100; }
    #menu.show {
      opacity: 1.0;
      pointer-events: auto; }
    #menu .menu-inner {
      display: table;
      width: 100%;
      height: 100%; }
      #menu .menu-inner .menu-content {
        display: table-cell;
        vertical-align: top; }
        #menu .menu-inner .menu-content > div {
          position: relative;
          min-height: 100vh; }
    #menu .head {
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      box-sizing: border-box; }
    #menu .menu-over-target {
      padding: 16px;
      padding-top: 240px;
      padding-bottom: 80px; }
    #menu .menu_list {
      text-align: center; }
      #menu .menu_list a {
        color: #F8F8FF;
        text-align: center;
        leading-trim: both;
        font-size: 40px;
        font-style: normal;
        font-weight: 700;
        line-height: 61px;
        /* 152.5% */
        letter-spacing: 3.2px;
        text-transform: uppercase;
        text-decoration: none; }
        #menu .menu_list a:hover {
          text-decoration: underline; }
    #menu .menu_title {
      width: 100%;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.48px;
      height: 12px;
      margin-bottom: 24px; }
    #menu .menu_items ul {
      vertical-align: top;
      position: relative;
      padding-bottom: 32px;
      margin-bottom: 32px; }
      #menu .menu_items ul:last-child {
        padding-bottom: 0px;
        margin-bottom: 0px; }
        #menu .menu_items ul:last-child:after {
          display: none; }
      #menu .menu_items ul:after {
        position: absolute;
        bottom: 0px;
        right: 0px;
        display: block;
        content: "";
        width: 24px;
        height: 1px;
        background: #F8F8FF; }
      #menu .menu_items ul hr {
        border: none;
        width: 24px;
        height: 1px;
        background: #F8F8FF;
        margin-top: 32px;
        margin-bottom: 32px;
        display: inline-block; }
      #menu .menu_items ul a {
        text-decoration: none;
        font-size: 18px;
        font-weight: 700;
        line-height: 29px;
        letter-spacing: 1.2px;
        text-decoration: none; }
        #menu .menu_items ul a:hover {
          text-decoration: underline; }
        #menu .menu_items ul a.current {
          text-decoration: underline;
          font-weight: 400; }
    #menu .lang_menu_list {
      position: absolute;
      top: 240px;
      left: 40px; }
    #menu .sub_menu_list {
      text-align: right;
      position: absolute;
      top: 240px;
      right: 40px; }
    #menu .foot_menu {
      color: #F8F8FF; }
    #menu .copy {
      display: none; }
  footer {
    position: relative;
    padding: 40px;
    border-top: 1px solid;
    color: #FF3386; }
    footer .inner {
      position: relative;
      width: 1128px;
      margin: 0 auto; }
      footer .inner .foot_menu {
        display: flex;
        gap: 32px;
        justify-content: flex-start;
        align-content: flex-start;
        margin-bottom: 60px; }
        footer .inner .foot_menu .menu_title {
          width: 100%;
          font-size: 12px;
          font-style: normal;
          font-weight: 700;
          letter-spacing: 0.48px;
          height: 12px;
          margin-bottom: 24px; }
        footer .inner .foot_menu .menu_items {
          display: flex;
          flex-wrap: wrap;
          gap: 32px; }
          footer .inner .foot_menu .menu_items ul {
            vertical-align: top;
            width: 200px; }
            footer .inner .foot_menu .menu_items ul a {
              text-decoration: none;
              color: #FF3386;
              font-size: 18px;
              font-weight: 700;
              line-height: 29px;
              letter-spacing: 1.2px; }
              footer .inner .foot_menu .menu_items ul a:hover {
                text-decoration: underline; }
              footer .inner .foot_menu .menu_items ul a.current {
                font-weight: 400;
                text-decoration: underline; }
      footer .inner .copy {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
        color: #FF3386;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.48px; }
        footer .inner .copy .logo img {
          height: 40px; }
  .container {
    padding: 40px;
    padding-top: 240px;
    padding-bottom: 120px; }
    .container .inner {
      position: relative;
      width: 1128px;
      margin: 0 auto; }
      .container .inner.content-l {
        width: 1128px; }
      .container .inner.content-m {
        width: 896px; }
      .container .inner.content-s {
        width: 664px; }
      .container .inner .page-title {
        color: #FF3386;
        text-align: center;
        font-size: 40px;
        font-weight: 700;
        letter-spacing: 3.2px;
        text-transform: uppercase;
        margin-bottom: 80px; }
      .container .inner .page-head {
        color: #F8F8FF;
        background: #FF3386;
        display: inline-flex;
        color: #F8F8FF;
        font-size: 32px;
        font-weight: 600;
        letter-spacing: 2.56px;
        line-height: 1;
        text-transform: uppercase;
        margin-bottom: 80px;
        padding: 32px;
        border-radius: 32px; }
      .container .inner .kv {
        margin-top: 120px;
        width: 100vw;
        margin-left: calc(1128px / 2 - 100vw / 2);
        margin-bottom: 120px; }
        .container .inner .kv .slides {
          width: 100vw;
          height: 540px;
          overflow: hidden;
          margin-bottom: 4px; }
          .container .inner .kv .slides:last-child {
            margin-bottom: 0px; }
          .container .inner .kv .slides .slick-list {
            width: 100%; }
          .container .inner .kv .slides .slick-slide {
            width: auto !important;
            padding-left: 2px;
            padding-right: 4px; }
            .container .inner .kv .slides .slick-slide img {
              height: 540px;
              display: block; }
        .container .inner .kv .swiper-wrapper {
          transition-timing-function: linear; }
          .container .inner .kv .swiper-wrapper .swiper-slide {
            width: -moz-fit-content;
            width: fit-content; }
            .container .inner .kv .swiper-wrapper .swiper-slide img {
              height: 540px; }
      .container .inner .content-table-title {
        font-size: 18px;
        font-weight: 400;
        letter-spacing: 1.2px; }
      .container .inner .content-table {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        gap: 60px; }
        .container .inner .content-table .member {
          color: #FF3386;
          margin-bottom: 60px; }
          .container .inner .content-table .member figure {
            margin-bottom: 60px; }
            .container .inner .content-table .member figure img {
              display: block;
              width: 316px;
              height: 316px;
              border-radius: 48px; }
          .container .inner .content-table .member .info h2 {
            font-size: 32px;
            font-weight: 600;
            letter-spacing: 2.56px;
            margin-bottom: 32px;
            line-height: 1; }
          .container .inner .content-table .member .info .name {
            margin-bottom: 60px;
            font-size: 18px;
            font-weight: 400;
            letter-spacing: 1.2px; }
          .container .inner .content-table .member .info .desc {
            font-size: 18px;
            font-weight: 600;
            line-height: 175%;
            /* 31.5px */ }
        .container .inner .content-table .table-row {
          color: #FF3386;
          display: flex;
          justify-content: flex-start;
          align-items: flex-start; }
          .container .inner .content-table .table-row .table-head {
            font-size: 24px;
            font-style: normal;
            font-weight: 600;
            line-height: 32px;
            letter-spacing: 1.92px;
            text-transform: uppercase;
            padding-right: 116px;
            position: relative;
            flex-shrink: 0; }
            .container .inner .content-table .table-row .table-head.txt-s {
              font-size: 18px;
              font-weight: 600;
              line-height: 175%;
              letter-spacing: 1.2px; }
            .container .inner .content-table .table-row .table-head:after {
              content: "";
              display: block;
              width: 52px;
              height: 1px;
              background: #FF3386;
              position: absolute;
              top: 50%;
              right: 32px;
              transform: translate(0%, -50%); }
          .container .inner .content-table .table-row .table-body {
            font-size: 18px;
            font-style: normal;
            font-weight: 600;
            letter-spacing: 1.2px; }
      .container .inner .content-business,
      .container .inner .content-philosophy,
      .container .inner .content-recruit,
      .container .inner .content-privacy {
        color: #FF3386;
        margin-bottom: 80px; }
        .container .inner .content-business:last-child,
        .container .inner .content-philosophy:last-child,
        .container .inner .content-recruit:last-child,
        .container .inner .content-privacy:last-child {
          margin-bottom: 0px; }
        .container .inner .content-business .copy,
        .container .inner .content-philosophy .copy,
        .container .inner .content-recruit .copy,
        .container .inner .content-privacy .copy {
          font-size: 40px;
          font-weight: 700;
          letter-spacing: 3.2px;
          margin-bottom: 80px; }
          .container .inner .content-business .copy rt,
          .container .inner .content-philosophy .copy rt,
          .container .inner .content-recruit .copy rt,
          .container .inner .content-privacy .copy rt {
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.48px; }
        .container .inner .content-business .head,
        .container .inner .content-philosophy .head,
        .container .inner .content-recruit .head,
        .container .inner .content-privacy .head {
          font-size: 32px;
          font-weight: 600;
          letter-spacing: 2.56px;
          margin-bottom: 60px; }
          .container .inner .content-business .head:last-child,
          .container .inner .content-philosophy .head:last-child,
          .container .inner .content-recruit .head:last-child,
          .container .inner .content-privacy .head:last-child {
            margin-bottom: 0; }
        .container .inner .content-business .txt-l,
        .container .inner .content-business .txt-r,
        .container .inner .content-philosophy .txt-l,
        .container .inner .content-philosophy .txt-r,
        .container .inner .content-recruit .txt-l,
        .container .inner .content-recruit .txt-r,
        .container .inner .content-privacy .txt-l,
        .container .inner .content-privacy .txt-r {
          font-size: 18px;
          font-style: normal;
          font-weight: 600;
          letter-spacing: 1.2px;
          margin-bottom: 60px; }
          .container .inner .content-business .txt-l span,
          .container .inner .content-business .txt-r span,
          .container .inner .content-philosophy .txt-l span,
          .container .inner .content-philosophy .txt-r span,
          .container .inner .content-recruit .txt-l span,
          .container .inner .content-recruit .txt-r span,
          .container .inner .content-privacy .txt-l span,
          .container .inner .content-privacy .txt-r span {
            font-size: 12px;
            letter-spacing: 0.48px; }
          .container .inner .content-business .txt-l:last-child,
          .container .inner .content-business .txt-r:last-child,
          .container .inner .content-philosophy .txt-l:last-child,
          .container .inner .content-philosophy .txt-r:last-child,
          .container .inner .content-recruit .txt-l:last-child,
          .container .inner .content-recruit .txt-r:last-child,
          .container .inner .content-privacy .txt-l:last-child,
          .container .inner .content-privacy .txt-r:last-child {
            margin-bottom: 0; }
        .container .inner .content-business .txt-r,
        .container .inner .content-philosophy .txt-r,
        .container .inner .content-recruit .txt-r,
        .container .inner .content-privacy .txt-r {
          padding-left: 32px; }
      .container .inner .privacy-policy,
      .container .inner .site-policy {
        margin-bottom: 120px; }
        .container .inner .privacy-policy:last-child,
        .container .inner .site-policy:last-child {
          margin-bottom: 0px; }
      .container .inner .content-business {
        color: #FF3386;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        gap: 120px; }
        .container .inner .content-business .copy {
          margin-bottom: 0px; }
        .container .inner .content-business .head {
          margin-bottom: 0px; }
        .container .inner .content-business .block-service .service-head {
          font-size: 32px;
          font-weight: 600;
          letter-spacing: 2.56px;
          margin-bottom: 60px; }
        .container .inner .content-business .block-service .service_items {
          margin-bottom: 40px; }
          .container .inner .content-business .block-service .service_items .service_item {
            padding-left: 84px;
            font-size: 18px;
            font-weight: 600;
            letter-spacing: 1.2px;
            position: relative; }
            .container .inner .content-business .block-service .service_items .service_item:after {
              content: "";
              display: block;
              width: 52px;
              height: 1px;
              background: #FF3386;
              position: absolute;
              top: 14px;
              left: 0px;
              transform: translate(0%, 0%); }
          .container .inner .content-business .block-service .service_items:last-child {
            margin-bottom: 0px; }
        .container .inner .content-business .block-service .service_links {
          display: flex;
          justify-content: flex-start;
          align-items: flex-start;
          flex-direction: column;
          gap: 16px; }
          .container .inner .content-business .block-service .service_links .service_link a {
            position: relative;
            display: block;
            text-decoration: none; }
            .container .inner .content-business .block-service .service_links .service_link a:hover .bg, .container .inner .content-business .block-service .service_links .service_link a:active .bg {
              background: black; }
            .container .inner .content-business .block-service .service_links .service_link a .bg {
              border-radius: 16px;
              background: #FF3386;
              display: block;
              position: absolute;
              z-index: 0;
              width: 100%;
              height: 100%; }
            .container .inner .content-business .block-service .service_links .service_link a .label {
              position: relative;
              z-index: 1;
              display: block;
              padding: 16px;
              color: #F8F8FF;
              color: #FFF;
              font-size: 18px;
              font-weight: 600;
              letter-spacing: 1.2px;
              line-height: 1; }
      .container .inner .works-list {
        margin: 0 auto;
        width: 100%;
        color: #FF3386; }
        .container .inner .works-list .items {
          margin-top: 70px;
          line-height: 1.0;
          display: flex;
          flex-wrap: wrap;
          gap: 4px; }
          .container .inner .works-list .items li {
            width: calc((100% - 8px) / 3);
            height: 100%;
            aspect-ratio: 1 / 1;
            position: relative; }
            .container .inner .works-list .items li img {
              width: 100%;
              height: 100%;
              -o-object-fit: contain;
                 object-fit: contain; }
            .container .inner .works-list .items li a {
              background: black;
              display: block;
              width: 100%;
              height: 100%; }
              .container .inner .works-list .items li a:hover img {
                opacity: 0.5; }
      .container .inner .works-detail {
        margin: 0 auto;
        width: 100%;
        max-width: 960px;
        color: #FF3386;
        clear: both;
        letter-spacing: -.025em;
        margin-bottom: 80px; }
        .container .inner .works-detail h1 {
          font-size: 32px;
          font-weight: 600;
          letter-spacing: 2.56px;
          margin-bottom: 60px; }
        .container .inner .works-detail .desc {
          font-size: 18px;
          font-weight: 600;
          letter-spacing: 1.2px;
          margin-bottom: 80px; }
        .container .inner .works-detail .caroucel {
          font-size: 0;
          text-align: center;
          margin-top: 80px;
          margin-bottom: 80px; }
          .container .inner .works-detail .caroucel li {
            margin-bottom: 40px; }
            .container .inner .works-detail .caroucel li:last-child {
              margin-bottom: 0px; }
          .container .inner .works-detail .caroucel img {
            display: block;
            width: 100%; }
        .container .inner .works-detail .video {
          margin-top: 80px;
          margin-bottom: 80px;
          width: 100%;
          aspect-ratio: 16 / 9; }
          .container .inner .works-detail .video:last-child {
            margin-bottom: 0px; }
          .container .inner .works-detail .video iframe {
            height: 100%;
            width: 100%; }
      .container .inner .category-selector {
        margin-bottom: 70px;
        margin-top: 70px; }
        .container .inner .category-selector li a {
          text-decoration: none;
          color: #FF3386;
          font-size: 24px;
          font-weight: 600;
          line-height: 175%;
          /* 42px */
          letter-spacing: 1.92px; }
          .container .inner .category-selector li a:hover {
            text-decoration: underline; }
          .container .inner .category-selector li a.current {
            font-weight: 400;
            text-decoration: underline; }
      .container .inner .news-list,
      .container .inner .news-detail {
        color: #FF3386; }
        .container .inner .news-list .news-title,
        .container .inner .news-detail .news-title {
          text-align: center;
          margin-bottom: 40px;
          font-size: 40px;
          font-weight: 700;
          line-height: 1.5;
          letter-spacing: 3.2px;
          text-transform: uppercase; }
        .container .inner .news-list .news-footer,
        .container .inner .news-detail .news-footer {
          display: flex;
          justify-content: space-between;
          align-items: center;
          gap: 32px;
          margin-top: 80px; }
          .container .inner .news-list .news-footer.footer-center,
          .container .inner .news-detail .news-footer.footer-center {
            justify-content: center; }
          .container .inner .news-list .news-footer .nextprev,
          .container .inner .news-detail .news-footer .nextprev {
            display: flex;
            justify-content: flex-end;
            gap: 16px; }
          .container .inner .news-list .news-footer a,
          .container .inner .news-detail .news-footer a {
            background: #FF3386;
            color: #F8F8FF;
            text-decoration: none;
            font-size: 18px;
            font-style: normal;
            font-weight: 600;
            line-height: 1;
            letter-spacing: 1.2px;
            padding: 16px;
            border-radius: 16px; }
            .container .inner .news-list .news-footer a:hover, .container .inner .news-list .news-footer a:active,
            .container .inner .news-detail .news-footer a:hover,
            .container .inner .news-detail .news-footer a:active {
              background: black; }
        .container .inner .news-list .items,
        .container .inner .news-detail .items {
          display: flex;
          gap: 90px 80px;
          flex-wrap: wrap; }
          .container .inner .news-list .items .list-item,
          .container .inner .news-detail .items .list-item {
            width: calc((100% - 160px) / 3);
            aspect-ratio: 1 / 1; }
            .container .inner .news-list .items .list-item:nth-child(3n + 2) a,
            .container .inner .news-detail .items .list-item:nth-child(3n + 2) a {
              background: #F8F8FF;
              color: #FF3386; }
              .container .inner .news-list .items .list-item:nth-child(3n + 2) a:hover, .container .inner .news-list .items .list-item:nth-child(3n + 2) a:active,
              .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:hover,
              .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:active {
                background: black;
                color: white; }
                .container .inner .news-list .items .list-item:nth-child(3n + 2) a:hover .info .date, .container .inner .news-list .items .list-item:nth-child(3n + 2) a:active .info .date,
                .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:hover .info .date,
                .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:active .info .date {
                  color: #F8F8FF; }
                .container .inner .news-list .items .list-item:nth-child(3n + 2) a:hover .info .category, .container .inner .news-list .items .list-item:nth-child(3n + 2) a:active .info .category,
                .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:hover .info .category,
                .container .inner .news-detail .items .list-item:nth-child(3n + 2) a:active .info .category {
                  background: #F8F8FF;
                  color: black; }
              .container .inner .news-list .items .list-item:nth-child(3n + 2) a .info .date,
              .container .inner .news-detail .items .list-item:nth-child(3n + 2) a .info .date {
                color: #FF3386; }
              .container .inner .news-list .items .list-item:nth-child(3n + 2) a .info .category,
              .container .inner .news-detail .items .list-item:nth-child(3n + 2) a .info .category {
                background: #FF3386;
                color: #F8F8FF; }
            .container .inner .news-list .items .list-item a,
            .container .inner .news-detail .items .list-item a {
              display: block;
              width: 100%;
              height: 100%;
              background: #FF3386;
              color: #F8F8FF;
              text-decoration: none;
              padding: 32px;
              box-sizing: border-box;
              display: flex;
              flex-direction: column;
              justify-content: space-between; }
              .container .inner .news-list .items .list-item a:hover, .container .inner .news-list .items .list-item a:active,
              .container .inner .news-detail .items .list-item a:hover,
              .container .inner .news-detail .items .list-item a:active {
                background: black; }
                .container .inner .news-list .items .list-item a:hover .info .category, .container .inner .news-list .items .list-item a:active .info .category,
                .container .inner .news-detail .items .list-item a:hover .info .category,
                .container .inner .news-detail .items .list-item a:active .info .category {
                  color: black; }
              .container .inner .news-list .items .list-item a .title,
              .container .inner .news-detail .items .list-item a .title {
                font-size: 18px;
                font-weight: 700;
                line-height: 1.5;
                letter-spacing: 1.2px;
                display: -webkit-box;
                -webkit-box-orient: vertical;
                overflow: hidden;
                text-overflow: ellipsis;
                -webkit-line-clamp: 7;
                max-height: calc(1.5em * 7); }
              .container .inner .news-list .items .list-item a .info,
              .container .inner .news-detail .items .list-item a .info {
                display: flex;
                justify-content: space-between;
                align-items: center; }
                .container .inner .news-list .items .list-item a .info .date,
                .container .inner .news-detail .items .list-item a .info .date {
                  color: #F8F8FF;
                  font-size: 18px;
                  font-weight: 700;
                  line-height: 1.0;
                  letter-spacing: 1.2px; }
                .container .inner .news-list .items .list-item a .info .category,
                .container .inner .news-detail .items .list-item a .info .category {
                  padding: 12px;
                  background: #F8F8FF;
                  color: #FF3386;
                  font-size: 12px;
                  font-style: normal;
                  font-weight: 600;
                  line-height: 1.0;
                  letter-spacing: 0.48px;
                  border-radius: 12px; }
      .container .inner .news-detail {
        margin: 0 auto;
        width: 100%;
        color: #FF3386;
        clear: both;
        letter-spacing: -.025em; }
        .container .inner .news-detail .info {
          margin-bottom: 80px; }
          .container .inner .news-detail .info .date {
            font-size: 18px;
            font-weight: 700;
            line-height: 1;
            letter-spacing: 1.2px;
            margin-bottom: 32px; }
          .container .inner .news-detail .info .category {
            display: flex;
            justify-content: flex-start;
            gap: 16px; }
            .container .inner .news-detail .info .category a {
              display: inline-flex;
              padding: 12px;
              background: #FF3386;
              color: #F8F8FF;
              font-size: 12px;
              font-style: normal;
              font-weight: 600;
              line-height: 1.0;
              letter-spacing: 0.48px;
              border-radius: 12px;
              text-decoration: none; }
              .container .inner .news-detail .info .category a:hover, .container .inner .news-detail .info .category a:active {
                background: black; }
        .container .inner .news-detail h1 {
          font-size: 32px;
          font-style: normal;
          font-weight: 600;
          line-height: 1.5;
          letter-spacing: 2.56px;
          margin-bottom: 60px; }
        .container .inner .news-detail .news-body {
          color: #FF3386;
          font-size: 18px;
          font-weight: 600;
          letter-spacing: 1.2px; }
          .container .inner .news-detail .news-body p {
            margin-bottom: 60px; }
          .container .inner .news-detail .news-body figure {
            width: 100%;
            margin-bottom: 60px; }
            .container .inner .news-detail .news-body figure img {
              width: 100%;
              height: auto;
              display: block; }
      .container .inner .p-blog__pager {
        margin-top: 80px; }
        .container .inner .p-blog__pager ul {
          display: flex;
          gap: 16px;
          justify-content: center;
          align-items: center;
          color: #FF3386;
          font-size: 18px;
          font-weight: 700;
          line-height: 1;
          letter-spacing: 1.2px; }
          .container .inner .p-blog__pager ul a,
          .container .inner .p-blog__pager ul span {
            display: inline-flex;
            padding: 16px 0px;
            width: 50px;
            justify-content: center;
            align-items: center;
            gap: 10px;
            border: 1px solid;
            border-radius: 16px;
            border: 1px solid #FF3386;
            text-decoration: none; }
          .container .inner .p-blog__pager ul a,
          .container .inner .p-blog__pager ul .dots {
            background: #FF3386;
            color: #F8F8FF; }
          .container .inner .p-blog__pager ul a:hover, .container .inner .p-blog__pager ul a:active {
            border: 1px solid black;
            background: black; } }

a {
  color: inherit;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

ul li {
  list-style-type: none; }

@keyframes img-move {
  from {
    background-position: left top; }
  to {
    background-position: left bottom; } }

@keyframes vertical {
  0% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }

@keyframes blink {
  0% {
    opacity: 0.5; }
  30% {
    opacity: 1.0; } }

@keyframes spin1 {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes bloom {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(0.9); } }

body {
  font-family: 'Satoshi', "IBM Plex Sans", sans-serif; }
  body.sc {
    font-family: sans-serif !important;
    font-weight: nornal; }
  body.tc {
    font-family: sans-serif !important;
    font-weight: nornal; }
  body.ar {
    font-family: sans-serif !important;
    font-weight: nornal; }

@media only screen and (max-width: 1023px) {
  .is-pc {
    display: none !important; }
  .is-tb {
    display: none !important; }
  html {
    overflow-y: scroll; }
  body {
    color: #222222;
    background: #F8F8FF;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt" on;
    overflow-x: hidden;
    font-size: 16px;
    line-height: 1.75;
    position: relative; }
    body > .over-target .container.index .kv {
      opacity: 0.0;
      pointer-events: none; }
  a {
    color: inherit;
    text-decoration: underline; }
    a:hover {
      text-decoration: none; }
  ul li {
    list-style-type: none; }
  .arch {
    position: absolute;
    top: 304px;
    left: 50%;
    transform: translate(-50%, 0px);
    width: 208px;
    height: calc( 100% - 200px - 304px);
    border-radius: 216px;
    background: linear-gradient(180deg, #FF3386 0%, #A000FF 49.52%, #3DCADA 100%);
    opacity: 0.3;
    pointer-events: none; }
    .arch.index {
      opacity: 1.0; }
  .over-normal,
  .over-black,
  .over-white {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    pointer-events: none; }
    .over-normal a,
    .over-black a,
    .over-white a {
      pointer-events: auto; }
  .over-black,
  .over-white {
    -webkit-clip-path: rect(304px calc((100vw / 2 - 208px / 2) + 208px) calc( 100% - 200px) calc(100vw / 2 - 208px / 2) round 216px);
            clip-path: rect(304px calc((100vw / 2 - 208px / 2) + 208px) calc( 100% - 200px) calc(100vw / 2 - 208px / 2) round 216px); }
  .over-black {
    filter: brightness(0) saturate(100%); }
  .over-white {
    filter: brightness(0) saturate(100%) invert(88%) sepia(2%) saturate(1661%) hue-rotate(202deg) brightness(108%) contrast(106%); }
  .over-target {
    position: relative;
    z-index: 0; }
  .arch {
    z-index: 1; }
  .over-black {
    z-index: 2; }
  .over-white {
    z-index: 2; }
    .over-white .is-black,
    .over-white .is-normal {
      visibility: hidden; }
  .over-normal {
    z-index: 3; }
    .over-normal .is-black,
    .over-normal .is-white {
      visibility: hidden; }
  .arch-menu {
    position: absolute;
    top: 304px;
    left: 50%;
    transform: translate(-50%, 0px);
    width: 208px;
    height: calc( 100% - 304px  - 200px);
    border-radius: 216px;
    background: linear-gradient(180deg, #3DCADA 0%, #F8F8FF 100%);
    pointer-events: none; }
  .over-menu {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    pointer-events: none;
    -webkit-clip-path: rect(304px calc((100vw / 2 - 208px / 2) + 208px) calc( 100% - 200px) calc(100vw / 2 - 208px / 2) round 216px 216px 216px 216px);
            clip-path: rect(304px calc((100vw / 2 - 208px / 2) + 208px) calc( 100% - 200px) calc(100vw / 2 - 208px / 2) round 216px 216px 216px 216px);
    filter: brightness(0) saturate(100%) invert(37%) sepia(98%) saturate(3649%) hue-rotate(318deg) brightness(106%) contrast(103%);
    z-index: 1; }
  header {
    position: fixed;
    width: 100%;
    box-sizing: border-box;
    z-index: 10; }
  header.show .logo img,
  #menu.show .logo img {
    filter: brightness(1000%); }
  header.show .symbol img,
  #menu.show .symbol img {
    filter: brightness(1000%); }
  header.show .menu .menu_item,
  #menu.show .menu .menu_item {
    color: #F8F8FF; }
    header.show .menu .menu_item .select_lang .icon svg,
    #menu.show .menu .menu_item .select_lang .icon svg {
      filter: brightness(1000%); }
    header.show .menu .menu_item .select_lang select,
    #menu.show .menu .menu_item .select_lang select {
      color: #F8F8FF; }
    header.show .menu .menu_item .btn_menu,
    #menu.show .menu .menu_item .btn_menu {
      color: #F8F8FF; }
      header.show .menu .menu_item .btn_menu span,
      #menu.show .menu .menu_item .btn_menu span {
        background: #F8F8FF;
        display: none;
        transform: translate(-50%, -50%); }
        header.show .menu .menu_item .btn_menu span:first-child,
        #menu.show .menu .menu_item .btn_menu span:first-child {
          top: calc(50%);
          display: block;
          transform: translate(-50%, -50%) rotate(45deg); }
        header.show .menu .menu_item .btn_menu span:last-child,
        #menu.show .menu .menu_item .btn_menu span:last-child {
          top: calc(50%);
          display: block;
          transform: translate(-50%, -50%) rotate(-45deg); }
  header .head,
  #menu .head {
    position: relative;
    display: flex;
    justify-content: center;
    padding: 16px; }
  header .logo img,
  #menu .logo img {
    height: 32px;
    display: block; }
  header .symbol,
  #menu .symbol {
    height: 40px;
    position: absolute;
    top: 16px;
    left: 16px; }
    header .symbol img,
    #menu .symbol img {
      height: 100%; }
  header .menu,
  #menu .menu {
    position: absolute;
    top: 16px;
    right: 16px;
    display: flex;
    align-items: center;
    gap: 20px;
    height: 32px; }
    header .menu .menu_item,
    #menu .menu .menu_item {
      color: #FF3386;
      leading-trim: both;
      text-edge: cap;
      font-family: Satoshi;
      font-size: 20px;
      font-style: normal;
      font-weight: 700;
      letter-spacing: 0.8px; }
      header .menu .menu_item .btn_menu,
      #menu .menu .menu_item .btn_menu {
        color: #FF3386;
        display: block;
        line-height: 49px;
        right: 0px;
        top: 0px;
        letter-spacing: 0.1em;
        text-decoration: none;
        width: 32px;
        height: 32px;
        position: relative; }
        header .menu .menu_item .btn_menu span,
        #menu .menu .menu_item .btn_menu span {
          position: absolute;
          display: block;
          width: 21px;
          height: 1px;
          background: #FF3386;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
          header .menu .menu_item .btn_menu span:first-child,
          #menu .menu .menu_item .btn_menu span:first-child {
            top: calc(50% - 7px); }
          header .menu .menu_item .btn_menu span:last-child,
          #menu .menu .menu_item .btn_menu span:last-child {
            top: calc(50% + 7px); }
  #menu .foot_menu,
  footer .foot_menu {
    margin-bottom: 60px; }
    #menu .foot_menu .sub_menu_list ul:last-child,
    footer .foot_menu .sub_menu_list ul:last-child {
      padding-bottom: 0px;
      margin-bottom: 0px; }
      #menu .foot_menu .sub_menu_list ul:last-child:after,
      footer .foot_menu .sub_menu_list ul:last-child:after {
        display: none; }
    #menu .foot_menu .menu_title,
    footer .foot_menu .menu_title {
      font-size: 12px;
      font-style: normal;
      font-weight: 700;
      letter-spacing: 0.48px;
      height: 12px;
      margin-bottom: 24px; }
    #menu .foot_menu .menu_items ul,
    footer .foot_menu .menu_items ul {
      vertical-align: top;
      position: relative;
      padding-bottom: 32px;
      margin-bottom: 32px; }
      #menu .foot_menu .menu_items ul:after,
      footer .foot_menu .menu_items ul:after {
        position: absolute;
        bottom: 0px;
        left: 0px;
        display: block;
        content: "";
        width: 24px;
        height: 1px;
        background: #FF3386; }
      #menu .foot_menu .menu_items ul a,
      footer .foot_menu .menu_items ul a {
        text-decoration: none;
        font-size: 16px;
        font-weight: 700;
        line-height: 32px;
        letter-spacing: 0.64px; }
        #menu .foot_menu .menu_items ul a:hover,
        footer .foot_menu .menu_items ul a:hover {
          text-decoration: underline; }
        #menu .foot_menu .menu_items ul a.current,
        footer .foot_menu .menu_items ul a.current {
          font-weight: 400;
          text-decoration: underline; }
  #menu .copy,
  footer .copy {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.48px; }
    #menu .copy .logo img,
    footer .copy .logo img {
      height: 40px; }
  #menu {
    position: fixed;
    top: 0px;
    left: 0px;
    background: #FF3386;
    z-index: 100;
    width: 100%;
    height: 100%;
    color: #F8F8FF;
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 1010;
    transition: opacity 0.2s ease-in;
    opacity: 0.0;
    pointer-events: none;
    z-index: 100; }
    #menu.show {
      opacity: 1.0;
      pointer-events: auto; }
    #menu .menu-inner {
      display: table;
      width: 100%;
      height: 100%; }
      #menu .menu-inner .menu-content {
        display: table-cell;
        vertical-align: top; }
        #menu .menu-inner .menu-content > div {
          position: relative; }
    #menu .head {
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      box-sizing: border-box; }
    #menu .menu-over-target {
      padding: 16px;
      padding-top: 144px;
      padding-bottom: 80px; }
    #menu .menu_list {
      text-align: center;
      padding-bottom: 80px;
      border-bottom: 1px solid white;
      margin-bottom: 40px; }
      #menu .menu_list a {
        color: #F8F8FF;
        text-align: center;
        font-size: 24px;
        font-weight: 700;
        line-height: 175%;
        /* 42px */
        letter-spacing: 1.92px;
        text-transform: uppercase;
        text-decoration: none; }
    #menu .menu_title {
      width: 100%; }
    #menu .foot_menu {
      color: #F8F8FF; }
      #menu .foot_menu .menu_items ul:after {
        background: #F8F8FF; }
  footer {
    position: relative;
    color: #FF3386;
    padding-left: 16px;
    padding-right: 16px; }
    footer .inner {
      border-top: 1px solid;
      padding-top: 40px;
      padding-bottom: 40px;
      margin: 0 auto; }
  .container {
    padding: 32px;
    padding-top: 144px;
    padding-bottom: 80px; }
    .container .inner .page-title {
      color: #FF3386;
      font-size: 24px;
      font-weight: 700;
      line-height: 175%;
      /* 42px */
      letter-spacing: 1.92px;
      text-align: center;
      margin-bottom: 60px;
      text-transform: uppercase; }
    .container .inner .page-head {
      color: #F8F8FF;
      background: #FF3386;
      display: inline-flex;
      color: #F8F8FF;
      font-size: 18px;
      font-weight: 600;
      letter-spacing: 2.56px;
      line-height: 1;
      text-transform: uppercase;
      margin-bottom: 60px;
      padding: 16px;
      border-radius: 16px; }
    .container .inner .kv {
      margin-top: 80px;
      width: 100vw;
      margin-left: -40px;
      margin-bottom: 80px; }
      .container .inner .kv .slides {
        width: 100vw;
        height: 207px;
        overflow: hidden;
        margin-bottom: 4px; }
        .container .inner .kv .slides:last-child {
          margin-bottom: 0px; }
        .container .inner .kv .slides .slick-list {
          width: 100%; }
        .container .inner .kv .slides .slick-slide {
          width: auto !important;
          padding-left: 2px;
          padding-right: 4px; }
          .container .inner .kv .slides .slick-slide img {
            height: 207px;
            display: block; }
    .container .inner .content-table-title {
      font-size: 16px;
      font-weight: 400;
      letter-spacing: 0.64px; }
    .container .inner .content-table {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      flex-direction: column;
      gap: 32px; }
      .container .inner .content-table .member {
        color: #FF3386;
        margin-bottom: 32px; }
        .container .inner .content-table .member figure {
          margin-bottom: 60px; }
          .container .inner .content-table .member figure img {
            display: block;
            width: 168px;
            height: 168px;
            border-radius: 32px; }
        .container .inner .content-table .member .info h2 {
          font-size: 20px;
          font-weight: 600;
          letter-spacing: 1.6px;
          text-transform: uppercase;
          margin-bottom: 24px;
          line-height: 1; }
        .container .inner .content-table .member .info .name {
          font-size: 16px;
          font-weight: 400;
          line-height: 175%;
          /* 28px */
          letter-spacing: 0.64px;
          margin-bottom: 40px; }
        .container .inner .content-table .member .info .desc {
          font-size: 16px;
          font-weight: 600;
          line-height: 175%;
          /* 28px */
          letter-spacing: 0.64px; }
      .container .inner .content-table .table-row {
        color: #FF3386;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start; }
        .container .inner .content-table .table-row.company-table {
          display: block; }
          .container .inner .content-table .table-row.company-table .table-head {
            padding-right: 0px; }
            .container .inner .content-table .table-row.company-table .table-head:after {
              display: none; }
        .container .inner .content-table .table-row .table-head {
          font-size: 20px;
          font-weight: 600;
          letter-spacing: 1.6px;
          position: relative;
          padding-right: 56px; }
          .container .inner .content-table .table-row .table-head.txt-s {
            font-size: 16px;
            font-weight: 600;
            letter-spacing: 1.2px; }
          .container .inner .content-table .table-row .table-head:after {
            content: "";
            display: block;
            width: 32px;
            height: 1px;
            background: #FF3386;
            position: absolute;
            top: 50%;
            right: 16px;
            transform: translate(0%, -50%); }
        .container .inner .content-table .table-row .table-body {
          font-size: 16px;
          font-weight: 600;
          letter-spacing: 0.64px; }
    .container .inner .content-philosophy,
    .container .inner .content-recruit,
    .container .inner .content-privacy {
      color: #FF3386;
      margin-bottom: 64px; }
      .container .inner .content-philosophy:last-child,
      .container .inner .content-recruit:last-child,
      .container .inner .content-privacy:last-child {
        margin-bottom: 0px; }
      .container .inner .content-philosophy .copy,
      .container .inner .content-recruit .copy,
      .container .inner .content-privacy .copy {
        font-size: 24px;
        font-weight: 700;
        letter-spacing: 1.92px;
        margin-bottom: 60px; }
        .container .inner .content-philosophy .copy rt,
        .container .inner .content-recruit .copy rt,
        .container .inner .content-privacy .copy rt {
          font-size: 10px;
          font-weight: 600;
          letter-spacing: 0.4px; }
      .container .inner .content-philosophy .head,
      .container .inner .content-recruit .head,
      .container .inner .content-privacy .head {
        font-size: 20px;
        font-weight: 600;
        letter-spacing: 1.6px;
        margin-bottom: 40px; }
        .container .inner .content-philosophy .head:last-child,
        .container .inner .content-recruit .head:last-child,
        .container .inner .content-privacy .head:last-child {
          margin-bottom: 0; }
      .container .inner .content-philosophy .txt-l,
      .container .inner .content-philosophy .txt-r,
      .container .inner .content-recruit .txt-l,
      .container .inner .content-recruit .txt-r,
      .container .inner .content-privacy .txt-l,
      .container .inner .content-privacy .txt-r {
        font-size: 16px;
        font-weight: 600;
        letter-spacing: 0.64px;
        margin-bottom: 40px; }
        .container .inner .content-philosophy .txt-l span,
        .container .inner .content-philosophy .txt-r span,
        .container .inner .content-recruit .txt-l span,
        .container .inner .content-recruit .txt-r span,
        .container .inner .content-privacy .txt-l span,
        .container .inner .content-privacy .txt-r span {
          font-size: 12px;
          letter-spacing: 0.48px; }
        .container .inner .content-philosophy .txt-l:last-child,
        .container .inner .content-philosophy .txt-r:last-child,
        .container .inner .content-recruit .txt-l:last-child,
        .container .inner .content-recruit .txt-r:last-child,
        .container .inner .content-privacy .txt-l:last-child,
        .container .inner .content-privacy .txt-r:last-child {
          margin-bottom: 0; }
      .container .inner .content-philosophy .txt-r,
      .container .inner .content-recruit .txt-r,
      .container .inner .content-privacy .txt-r {
        padding-left: 16px; }
    .container .inner .privacy-policy,
    .container .inner .site-policy {
      margin-bottom: 80px; }
      .container .inner .privacy-policy:last-child,
      .container .inner .site-policy:last-child {
        margin-bottom: 0px; }
    .container .inner .content-business {
      color: #FF3386;
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      flex-direction: column;
      gap: 80px; }
      .container .inner .content-business .block-service .service-head {
        font-size: 20px;
        font-weight: 600;
        letter-spacing: 1.6px;
        margin-bottom: 40px; }
      .container .inner .content-business .block-service .service_items {
        margin-bottom: 24px; }
        .container .inner .content-business .block-service .service_items .service_item {
          padding-left: 40px;
          font-size: 16px;
          font-weight: 600;
          letter-spacing: 1.2px;
          position: relative; }
          .container .inner .content-business .block-service .service_items .service_item:after {
            content: "";
            display: block;
            width: 24px;
            height: 1px;
            background: #FF3386;
            position: absolute;
            top: 14px;
            left: 0px;
            transform: translate(0%, 0%); }
        .container .inner .content-business .block-service .service_items:last-child {
          margin-bottom: 0px; }
      .container .inner .content-business .block-service .service_links {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        gap: 16px; }
        .container .inner .content-business .block-service .service_links .service_link a {
          position: relative;
          display: block;
          text-decoration: none; }
          .container .inner .content-business .block-service .service_links .service_link a:hover .bg, .container .inner .content-business .block-service .service_links .service_link a:active .bg {
            background: black; }
          .container .inner .content-business .block-service .service_links .service_link a .bg {
            border-radius: 12px;
            background: #FF3386;
            display: block;
            position: absolute;
            z-index: 0;
            width: 100%;
            height: 100%; }
          .container .inner .content-business .block-service .service_links .service_link a .label {
            position: relative;
            z-index: 1;
            display: block;
            padding: 12px;
            color: #F8F8FF;
            color: #FFF;
            font-size: 16px;
            font-weight: 600;
            letter-spacing: 1.2px;
            line-height: 1; }
    .container .inner .works-list {
      margin: 0 auto;
      width: 100%;
      color: #FF3386; }
      .container .inner .works-list .items {
        margin-top: 70px;
        line-height: 1.0;
        display: flex;
        flex-wrap: wrap;
        gap: 4px; }
        .container .inner .works-list .items li {
          width: 100%;
          height: 100%;
          aspect-ratio: 1 / 1;
          position: relative; }
          .container .inner .works-list .items li img {
            width: 100%;
            height: 100%;
            -o-object-fit: contain;
               object-fit: contain; }
          .container .inner .works-list .items li a {
            background: black;
            display: block;
            width: 100%;
            height: 100%; }
            .container .inner .works-list .items li a:hover {
              opacity: 0.5; }
    .container .inner .works-detail {
      margin: 0 auto;
      color: #FF3386;
      clear: both; }
      .container .inner .works-detail h1 {
        font-size: 20px;
        font-weight: 600;
        line-height: 175%;
        /* 35px */
        letter-spacing: 1.6px;
        margin-bottom: 40px; }
      .container .inner .works-detail .desc {
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 1.2px;
        margin-bottom: 18px; }
      .container .inner .works-detail .caroucel {
        font-size: 0;
        text-align: center;
        margin-top: 32px;
        margin-bottom: 32px;
        margin-left: -32px;
        margin-right: -32px; }
        .container .inner .works-detail .caroucel li {
          margin-bottom: 16px; }
          .container .inner .works-detail .caroucel li:last-child {
            margin-bottom: 0px; }
        .container .inner .works-detail .caroucel img {
          display: block;
          width: 100%; }
      .container .inner .works-detail .video {
        aspect-ratio: 16 / 9;
        margin-top: 60px;
        margin-left: -32px;
        margin-right: -32px; }
        .container .inner .works-detail .video iframe {
          width: 100%;
          height: 100%; }
    .container .inner .category-selector {
      margin-bottom: 70px; }
      .container .inner .category-selector li a {
        color: #FF3386;
        font-size: 20px;
        font-weight: 600;
        line-height: 175%;
        /* 35px */
        letter-spacing: 1.6px;
        text-decoration: none; }
        .container .inner .category-selector li a:hover {
          text-decoration: underline; }
        .container .inner .category-selector li a.current {
          font-weight: 400;
          text-decoration: underline; }
    .container .inner .news-list,
    .container .inner .news-detail {
      color: #FF3386; }
      .container .inner .news-list .news-title,
      .container .inner .news-detail .news-title {
        text-align: center;
        margin-bottom: 40px;
        font-size: 40px;
        font-weight: 700;
        line-height: 1.5;
        letter-spacing: 3.2px;
        text-transform: uppercase; }
      .container .inner .news-list .news-footer,
      .container .inner .news-detail .news-footer {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        margin-top: 80px; }
        .container .inner .news-list .news-footer .nextprev,
        .container .inner .news-detail .news-footer .nextprev {
          margin-top: 40px;
          display: flex;
          justify-content: center;
          gap: 16px; }
        .container .inner .news-list .news-footer a,
        .container .inner .news-detail .news-footer a {
          background: #FF3386;
          color: #F8F8FF;
          text-decoration: none;
          font-size: 16px;
          font-style: normal;
          font-weight: 600;
          line-height: 1;
          letter-spacing: 0.64px;
          padding: 16px;
          border-radius: 16px; }
          .container .inner .news-list .news-footer a:hover, .container .inner .news-list .news-footer a:active,
          .container .inner .news-detail .news-footer a:hover,
          .container .inner .news-detail .news-footer a:active {
            background: black; }
      .container .inner .news-list .items,
      .container .inner .news-detail .items {
        display: flex;
        justify-content: center;
        gap: 32px;
        flex-wrap: wrap;
        width: 256px;
        margin: 0 auto; }
        .container .inner .news-list .items .list-item,
        .container .inner .news-detail .items .list-item {
          width: 256px;
          aspect-ratio: 1 / 1; }
          .container .inner .news-list .items .list-item a,
          .container .inner .news-detail .items .list-item a {
            display: block;
            width: 100%;
            height: 100%;
            background: #FF3386;
            color: #F8F8FF;
            text-decoration: none;
            padding: 16px;
            box-sizing: border-box;
            display: flex;
            flex-direction: column;
            justify-content: space-between; }
            .container .inner .news-list .items .list-item a:hover, .container .inner .news-list .items .list-item a:active,
            .container .inner .news-detail .items .list-item a:hover,
            .container .inner .news-detail .items .list-item a:active {
              background: black; }
              .container .inner .news-list .items .list-item a:hover .info .category, .container .inner .news-list .items .list-item a:active .info .category,
              .container .inner .news-detail .items .list-item a:hover .info .category,
              .container .inner .news-detail .items .list-item a:active .info .category {
                color: black; }
            .container .inner .news-list .items .list-item a .title,
            .container .inner .news-detail .items .list-item a .title {
              font-size: 16px;
              font-weight: 700;
              line-height: 150%;
              /* 24px */
              letter-spacing: 0.64px;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              overflow: hidden;
              text-overflow: ellipsis;
              -webkit-line-clamp: 7;
              max-height: calc(1.5em * 7); }
            .container .inner .news-list .items .list-item a .info,
            .container .inner .news-detail .items .list-item a .info {
              display: flex;
              justify-content: space-between;
              align-items: center; }
              .container .inner .news-list .items .list-item a .info .date,
              .container .inner .news-detail .items .list-item a .info .date {
                color: #F8F8FF;
                font-size: 16px;
                font-weight: 700;
                line-height: 1.0;
                letter-spacing: 1.2px; }
              .container .inner .news-list .items .list-item a .info .category,
              .container .inner .news-detail .items .list-item a .info .category {
                padding: 12px;
                background: #F8F8FF;
                color: #FF3386;
                font-size: 12px;
                font-style: normal;
                font-weight: 600;
                line-height: 1.0;
                letter-spacing: 0.48px;
                border-radius: 12px; }
    .container .inner .news-detail {
      margin: 0 auto;
      width: 100%;
      color: #FF3386;
      clear: both;
      letter-spacing: -.025em; }
      .container .inner .news-detail .info {
        margin-bottom: 60px; }
        .container .inner .news-detail .info .date {
          font-size: 16px;
          font-weight: 700;
          line-height: 45px;
          /* 281.25% */
          letter-spacing: 0.64px;
          margin-bottom: 24px; }
        .container .inner .news-detail .info .category a {
          display: inline-flex;
          padding: 12px;
          background: #FF3386;
          color: #F8F8FF;
          font-size: 12px;
          font-style: normal;
          font-weight: 600;
          line-height: 1.0;
          letter-spacing: 0.48px;
          border-radius: 12px;
          text-decoration: none; }
          .container .inner .news-detail .info .category a:hover, .container .inner .news-detail .info .category a:active {
            background: black; }
      .container .inner .news-detail h1 {
        font-size: 20px;
        font-weight: 600;
        line-height: 175%;
        /* 35px */
        letter-spacing: 0.8px;
        margin-bottom: 40px; }
      .container .inner .news-detail .news-body {
        color: #FF3386;
        font-size: 16px;
        font-weight: 600;
        line-height: 150%;
        /* 24px */
        letter-spacing: 0.64px; }
        .container .inner .news-detail .news-body p {
          margin-bottom: 40px; }
        .container .inner .news-detail .news-body figure {
          margin-bottom: 40px;
          margin-left: -32px;
          margin-right: -32px; }
          .container .inner .news-detail .news-body figure img {
            width: 100%;
            height: auto;
            display: block; }
    .container .inner .p-blog__pager {
      margin-top: 80px; }
      .container .inner .p-blog__pager ul {
        display: flex;
        gap: 8px;
        justify-content: center;
        align-items: center;
        color: #FF3386;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        letter-spacing: 1.2px; }
        .container .inner .p-blog__pager ul a,
        .container .inner .p-blog__pager ul span {
          display: inline-flex;
          width: 32px;
          height: 32px;
          justify-content: center;
          align-items: center;
          gap: 10px;
          border: 1px solid;
          border-radius: 12px;
          border: 1px solid #FF3386;
          text-decoration: none; }
        .container .inner .p-blog__pager ul a,
        .container .inner .p-blog__pager ul .dots {
          background: #FF3386;
          color: #F8F8FF; }
        .container .inner .p-blog__pager ul a:hover, .container .inner .p-blog__pager ul a:active {
          border: 1px solid black;
          background: black; } }

/*# sourceMappingURL=style.css.map */
