@charset "UTF-8";
/*
@mixin font($type) {
  @if ($type == "ja") {
    font-family: 'Koburina Gothic W3 JIS2004', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
  }
  @if ($type == "ja-bold") {
    font-family: 'Koburina Gothic W6 JIS2004', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
  }
  @if ($type == "en-bold") {
    font-family: Inter;
    font-weight: bold;
  }
  @if ($type == "en-black") {
    font-family: Inter;
    font-weight: 900;
  }
}
*/
/* reset5 © 2011 opensource.736cs.com MIT */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, audio, canvas, details, figcaption, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, summary, time, video {
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  margin: 0;
  padding: 0; }

body {
  line-height: 1; }

article, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote {
  display: block; }

nav ul {
  list-style: none; }

ol {
  list-style: decimal; }

ul {
  list-style: disc; }

ul ul {
  list-style: circle; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

ins {
  text-decoration: underline; }

del {
  text-decoration: line-through; }

mark {
  background: none; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input[type=submit], input[type=button], button {
  margin: 0 !important;
  padding: 0 !important; }

input, select, a img {
  vertical-align: middle; }

/* フォームのリセットここから */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none; }

textarea {
  resize: vertical; }

input[type='checkbox'],
input[type='radio'] {
  display: none; }

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer; }

select::-ms-expand {
  display: none; }

/* フォームのリセットここまで */
html {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 10px; }

*, *:before, *:after {
  -moz-box-sizing: inherit;
  -webkit-box-sizing: inherit;
  box-sizing: inherit; }

body {
  -webkit-text-size-adjust: 100%;
  	/*
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  	*/ }

main {
  display: block; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal; }

ul, ol {
  list-style: none !important; }

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

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  color: inherit;
  font-size: inherit; }

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

mark {
  color: inherit; }

.pc {
  display: none; }

.sp {
  display: none; }

@media screen and (min-width: 768px) {
  .pc {
    display: block !important; }

  img.pc,
  span.pc {
    display: inline !important; } }
@media screen and (max-width: 767px) {
  .sp {
    display: block !important; }

  img.sp,
  span.sp {
    display: inline !important; } }
span.nowrap {
  display: inline-block; }

@font-face {
  font-family: 'icomoon_activecore';
  src: url("../fonts/icomoon_activecore.eot?wfubd1");
  src: url("../fonts/icomoon_activecore.eot?wfubd1#iefix") format("embedded-opentype"), url("../fonts/icomoon_activecore.ttf?wfubd1") format("truetype"), url("../fonts/icomoon_activecore.woff?wfubd1") format("woff"), url("../fonts/icomoon_activecore.svg?wfubd1#icomoon_activecore") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon_activecore' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Enable Ligatures ================ */
  letter-spacing: 0;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  -webkit-font-variant-ligatures: discretionary-ligatures;
  font-variant-ligatures: discretionary-ligatures;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-crcle-left:before {
  content: "\e902"; }

.icon-crcle-right:before {
  content: "\e903"; }

.icon-arrow-down:before {
  content: "\e900"; }

.icon-arrow-link:before {
  content: "\e901"; }

.icon-arrow-right:before {
  content: "\1f322"; }

:root {
  --icon-circle-left: "\e902";
  --icon-circle-right: "\e903";
  --icon-arrow-down: "\e900";
  --icon-arrow-link: "\e901";
  --icon-arrow-right: "\1f322"; }

@keyframes recruit-figure {
  0% {
    background-position: 0 0; }
  100% {
    background-position: -2088px 0; } }
body {
  background-color: #000;
  --scroll-offset: 0;
  font-family: 'Zen Kaku Gothic New', sans-serif; }
  .menu-active body {
    overflow: hidden; }

#header:before {
  content: "";
  display: block;
  position: fixed;
  z-index: 8000;
  background-color: rgba(255, 255, 255, 0.94);
  opacity: 0;
  pointer-events: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  transition: all ease .3s; }
#header > .logo {
  position: fixed;
  z-index: 10000;
  mix-blend-mode: exclusion;
  top: 50px;
  left: 64px;
  transition: opacity ease .3s; }
  @media screen and (max-width: 767px) {
    #header > .logo {
      width: 132px;
      top: 32px;
      left: 20px; } }
#header nav.global {
  position: fixed;
  z-index: 10000;
  mix-blend-mode: exclusion;
  font-family: Inter;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 17px;
  text-align: center;
  color: #fff;
  top: 16px;
  right: 130px; }
  @media screen and (max-width: 767px) {
    #header nav.global {
      display: none; } }
  #header nav.global > ul {
    display: flex; }
    #header nav.global > ul > li {
      position: relative;
      margin: 0 20px;
      transition: opacity ease .3s; }
      #header nav.global > ul > li > a {
        display: inline-block;
        padding: 40px 0px; }
      #header nav.global > ul > li > ul {
        position: absolute;
        top: 100%;
        left: 0;
        opacity: 0;
        transition: all ease .3s;
        pointer-events: none; }
        #header nav.global > ul > li > ul li {
          font-family: Inter;
          font-weight: 500;
          font-size: 14px;
          letter-spacing: 0.05em;
          line-height: 17px;
          text-align: left;
          color: #fff;
          margin-bottom: 24px;
          white-space: nowrap; }
      #header nav.global > ul > li:hover > ul {
        opacity: 1;
        pointer-events: auto; }
#header p.menu {
  display: block;
  position: fixed;
  z-index: 10000;
  mix-blend-mode: exclusion;
  top: 45px;
  right: 60px; }
  @media screen and (max-width: 767px) {
    #header p.menu {
      top: 25px;
      right: 20px; } }
  #header p.menu button {
    position: relative;
    width: 40px;
    height: 40px; }
    @media screen and (max-width: 767px) {
      #header p.menu button {
        width: 32px;
        height: 32px; } }
    #header p.menu button:before, #header p.menu button:after {
      content: "";
      display: block;
      background-color: #fff;
      width: 100%;
      height: 1px;
      position: absolute;
      top: 50%;
      left: 0;
      transition: margin ease .3s .3s, transform ease .3s 0s; }
      .menu-active #header p.menu button:before, .menu-active #header p.menu button:after {
        transition: margin ease .3s 0s, transform ease .3s .3s; }
    #header p.menu button:before {
      margin-top: -5px; }
      .menu-active #header p.menu button:before {
        margin-top: 0;
        transform: rotate(20deg); }
    #header p.menu button:after {
      margin-top: 5px; }
      .menu-active #header p.menu button:after {
        margin-top: 0;
        transform: rotate(-20deg); }
    #header p.menu button span {
      display: none; }
#header nav.menu {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 9000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  pointer-events: none;
  background-color: #000;
  overflow: auto;
  transition: all ease .3s;
  padding-top: 115px; }
  #header nav.menu .primary {
    display: flex;
    padding-bottom: 40px; }
    @media screen and (max-width: 767px) {
      #header nav.menu .primary {
        display: block; } }
    #header nav.menu .primary > .logo {
      flex: 0 0 calc(100% - 205px - 384px);
      align-self: center; }
      @media screen and (max-width: 767px) {
        #header nav.menu .primary > .logo {
          width: 226px;
          margin: 0 auto;
          margin-bottom: 58px; } }
    #header nav.menu .primary > ul:nth-child(2) {
      position: relative;
      flex: 0 0 205px;
      border-right: 1px solid rgba(255, 255, 255, 0.3); }
      @media screen and (max-width: 767px) {
        #header nav.menu .primary > ul:nth-child(2) {
          column-count: 2;
          column-gap: 64px;
          border-right: none;
          margin-bottom: 48px; } }
      @media screen and (max-width: 767px) {
        #header nav.menu .primary > ul:nth-child(2):after {
          content: "";
          position: absolute;
          top: 0;
          left: 50%;
          bottom: 0;
          display: block;
          background-color: rgba(255, 255, 255, 0.3);
          width: 1px; } }
      #header nav.menu .primary > ul:nth-child(2) li {
        font-family: Inter;
        font-weight: 600;
        font-size: 20px;
        line-height: 22px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #fff; }
        @media screen and (max-width: 767px) {
          #header nav.menu .primary > ul:nth-child(2) li {
            font-family: Inter;
            font-weight: 600;
            font-size: 18px;
            line-height: 19px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #fff;
            -webkit-column-break-inside: avoid;
            page-break-inside: avoid;
            break-inside: avoid; } }
        #header nav.menu .primary > ul:nth-child(2) li + li {
          margin-top: 40px; }
          @media screen and (max-width: 767px) {
            #header nav.menu .primary > ul:nth-child(2) li + li {
              margin-top: 24px; } }
        #header nav.menu .primary > ul:nth-child(2) li a {
          display: inline-block; }
          #header nav.menu .primary > ul:nth-child(2) li a:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-circle-right);
            font-size: 22px;
            margin-left: 12px;
            vertical-align: top; }
    #header nav.menu .primary > ul:nth-child(3) {
      flex: 0 0 384px;
      padding-left: 64px; }
      @media screen and (max-width: 767px) {
        #header nav.menu .primary > ul:nth-child(3) {
          padding-left: 0;
          padding-top: 46px;
          border-top: 1px solid rgba(255, 255, 255, 0.3); } }
      #header nav.menu .primary > ul:nth-child(3) li + li {
        margin-top: 36px; }
      #header nav.menu .primary > ul:nth-child(3) li p:nth-child(1) {
        font-family: Inter;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #fff;
        margin-bottom: 14px; }
        @media screen and (max-width: 767px) {
          #header nav.menu .primary > ul:nth-child(3) li p:nth-child(1) {
            font-family: Inter;
            font-weight: 600;
            font-size: 18px;
            line-height: 21px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #fff;
            margin-bottom: 12px; } }
        #header nav.menu .primary > ul:nth-child(3) li p:nth-child(1) a {
          display: inline-block; }
          #header nav.menu .primary > ul:nth-child(3) li p:nth-child(1) a[target='_blank']:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-link);
            margin-left: 12px;
            font-size: 11px;
            vertical-align: 1px; }
      #header nav.menu .primary > ul:nth-child(3) li p:nth-child(2) {
        font-size: 12px;
        letter-spacing: 0.1em;
        line-height: 20px;
        text-align: left;
        color: #fff; }
  #header nav.menu .secondary {
    position: relative;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    justify-content: space-between;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      #header nav.menu .secondary {
        display: block; } }
    #header nav.menu .secondary ul {
      flex: 0 0 50%;
      display: flex;
      height: 100%; }
      @media screen and (max-width: 767px) {
        #header nav.menu .secondary ul {
          display: block; } }
      #header nav.menu .secondary ul li {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #fff;
        padding: 0 18px; }
        @media screen and (max-width: 767px) {
          #header nav.menu .secondary ul li {
            padding: 0;
            font-size: 12px;
            line-height: 1;
            text-align: left;
            color: #fff; } }
        #header nav.menu .secondary ul li:first-child {
          padding-left: 0; }
        #header nav.menu .secondary ul li + li {
          border-left: 1px solid #fff; }
          @media screen and (max-width: 767px) {
            #header nav.menu .secondary ul li + li {
              border-left: none;
              margin-top: 20px; } }
    #header nav.menu .secondary dl {
      flex: 0 0 50%;
      display: flex;
      max-width: 472px; }
      @media screen and (max-width: 767px) {
        #header nav.menu .secondary dl {
          margin-top: 40px;
          max-width: none;
          flex-wrap: wrap; } }
      #header nav.menu .secondary dl dt {
        margin-right: 16px;
        flex: 0 0 85px; }
      #header nav.menu .secondary dl dd {
        margin-left: 16px;
        font-size: 10px;
        letter-spacing: 0.1em;
        line-height: 16px;
        color: #fff; }
        @media screen and (max-width: 767px) {
          #header nav.menu .secondary dl dd {
            flex: 0 0 100%;
            margin-left: 0;
            margin-top: 20px;
            font-size: 12px;
            line-height: 18px; } }
    #header nav.menu .secondary .copyright {
      position: absolute;
      left: 0;
      bottom: 0;
      font-family: Inter;
      font-weight: 600;
      font-size: 14px;
      line-height: 17px;
      text-align: left;
      color: #fff; }
      @media screen and (max-width: 767px) {
        #header nav.menu .secondary .copyright {
          margin-top: 36px;
          position: relative; } }
  #header nav.menu .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    margin: auto; }
    @media screen and (max-width: 767px) {
      #header nav.menu .container {
        width: calc(100% - 40px); } }
  @media screen and (max-width: 767px) {
    #header nav.menu .primary > .logo {
      display: none !important; } }
  .menu-active #header nav.menu {
    opacity: 1;
    pointer-events: auto; }
#header.nav-over:before {
  opacity: 1;
  pointer-events: all; }
#header.nav-over > .logo {
  opacity: .2; }
#header.nav-over nav.global > ul > li {
  opacity: .2; }
  #header.nav-over nav.global > ul > li:hover {
    opacity: 1; }

#content .bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000; }
  #content .bg .movie {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .95; }
    #content .bg .movie .player {
      position: absolute;
      top: 50%;
      left: 50%;
      display: block;
      width: auto;
      height: auto;
      min-width: 100%;
      min-height: 100%;
      transform: translate(-50%, -50%); }

main {
  position: relative; }
  main nav.recruit {
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff; }
    main nav.recruit .wrapper {
      position: relative;
      width: calc(100vw - 144px);
      padding: 136px 0px 70px;
      margin: 0 auto;
      background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
      background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
      background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
      @media screen and (max-width: 1280px) {
        main nav.recruit .wrapper {
          width: calc(100vw - 120px); } }
      @media screen and (max-width: 767px) {
        main nav.recruit .wrapper {
          width: calc(100% - 40px);
          padding: 80px 0 30px; } }
      main nav.recruit .wrapper:before, main nav.recruit .wrapper:after {
        content: "";
        display: block;
        background-color: #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        width: calc((100vw - 100%) / 2); }
      main nav.recruit .wrapper:before {
        right: 100%; }
      main nav.recruit .wrapper:after {
        left: 100%; }
    main nav.recruit .container {
      max-width: 1040px;
      margin: 0 auto;
      width: calc(100% - 120px); }
      @media screen and (max-width: 767px) {
        main nav.recruit .container {
          width: calc(100% - 50px); } }
    main nav.recruit .cols {
      display: flex;
      justify-content: space-between;
      align-items: flex-end; }
      @media screen and (max-width: 767px) {
        main nav.recruit .cols {
          display: contents; } }
    main nav.recruit h2 {
      font-family: Inter;
      font-weight: 600;
      font-size: 28px;
      line-height: 34px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #c6c6c6;
      margin-bottom: 42px; }
      @media screen and (max-width: 767px) {
        main nav.recruit h2 {
          font-size: 20px;
          line-height: 24px; } }
      @media screen and (max-width: 767px) {
        main nav.recruit h2 {
          margin-bottom: 30px; } }
    main nav.recruit .copy {
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 0.1em;
      line-height: 50px;
      text-align: left;
      color: #fff; }
      @media screen and (max-width: 767px) {
        main nav.recruit .copy {
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 40px;
          text-align: left;
          color: #fff; } }
    @media screen and (max-width: 767px) {
      main nav.recruit .action {
        margin-top: 38px; } }
    main nav.recruit .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main nav.recruit .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main nav.recruit .action a span {
        position: relative; }
        main nav.recruit .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main nav.recruit .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main nav.recruit .action a:hover {
        color: #fff; }
        main nav.recruit .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
    main nav.recruit .decoration {
      background-image: url("../images/common/recruit_img.png");
      background-size: 2088px 334px;
      position: relative;
      z-index: 1;
      top: 0;
      left: 50%;
      width: 100vw;
      height: 334px;
      transform: translateX(-50%);
      animation: recruit-figure 20s linear infinite;
      margin-top: 78px; }
      @media screen and (max-width: 767px) {
        main nav.recruit .decoration {
          margin-top: 38px; } }

#footer {
  position: relative;
  background-color: #000000;
  color: #fff;
  padding: 147px 0 40px;
  background-image: url("../images/common/footer_conner_01.svg"), url("../images/common/footer_conner_02.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: 0 0, 100% 0; }
  @media screen and (max-width: 767px) {
    #footer {
      background-size: 16px 16px, 16px 16px; } }
  @media screen and (max-width: 767px) {
    #footer {
      padding: 80px 0 24px; } }
  #footer .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      #footer .container {
        width: calc(100% - 40px); } }
  #footer .primary {
    display: flex;
    padding-bottom: 40px; }
    @media screen and (max-width: 767px) {
      #footer .primary {
        display: block; } }
    #footer .primary > .logo {
      flex: 0 0 calc(100% - 205px - 384px);
      align-self: center; }
      @media screen and (max-width: 767px) {
        #footer .primary > .logo {
          width: 226px;
          margin: 0 auto;
          margin-bottom: 58px; } }
    #footer .primary > ul:nth-child(2) {
      position: relative;
      flex: 0 0 205px;
      border-right: 1px solid rgba(255, 255, 255, 0.3); }
      @media screen and (max-width: 767px) {
        #footer .primary > ul:nth-child(2) {
          column-count: 2;
          column-gap: 64px;
          border-right: none;
          margin-bottom: 48px; } }
      @media screen and (max-width: 767px) {
        #footer .primary > ul:nth-child(2):after {
          content: "";
          position: absolute;
          top: 0;
          left: 50%;
          bottom: 0;
          display: block;
          background-color: rgba(255, 255, 255, 0.3);
          width: 1px; } }
      #footer .primary > ul:nth-child(2) li {
        font-family: Inter;
        font-weight: 600;
        font-size: 20px;
        line-height: 22px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #fff; }
        @media screen and (max-width: 767px) {
          #footer .primary > ul:nth-child(2) li {
            font-family: Inter;
            font-weight: 600;
            font-size: 18px;
            line-height: 19px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #fff;
            -webkit-column-break-inside: avoid;
            page-break-inside: avoid;
            break-inside: avoid; } }
        #footer .primary > ul:nth-child(2) li + li {
          margin-top: 40px; }
          @media screen and (max-width: 767px) {
            #footer .primary > ul:nth-child(2) li + li {
              margin-top: 24px; } }
        #footer .primary > ul:nth-child(2) li a {
          display: inline-block; }
          #footer .primary > ul:nth-child(2) li a:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-circle-right);
            font-size: 22px;
            margin-left: 12px;
            vertical-align: top; }
    #footer .primary > ul:nth-child(3) {
      flex: 0 0 384px;
      padding-left: 64px; }
      @media screen and (max-width: 767px) {
        #footer .primary > ul:nth-child(3) {
          padding-left: 0;
          padding-top: 46px;
          border-top: 1px solid rgba(255, 255, 255, 0.3); } }
      #footer .primary > ul:nth-child(3) li + li {
        margin-top: 36px; }
      #footer .primary > ul:nth-child(3) li p:nth-child(1) {
        font-family: Inter;
        font-weight: 600;
        font-size: 20px;
        line-height: 24px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #fff;
        margin-bottom: 14px; }
        @media screen and (max-width: 767px) {
          #footer .primary > ul:nth-child(3) li p:nth-child(1) {
            font-family: Inter;
            font-weight: 600;
            font-size: 18px;
            line-height: 21px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #fff;
            margin-bottom: 12px; } }
        #footer .primary > ul:nth-child(3) li p:nth-child(1) a {
          display: inline-block; }
          #footer .primary > ul:nth-child(3) li p:nth-child(1) a[target='_blank']:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-link);
            margin-left: 12px;
            font-size: 11px;
            vertical-align: 1px; }
      #footer .primary > ul:nth-child(3) li p:nth-child(2) {
        font-size: 12px;
        letter-spacing: 0.1em;
        line-height: 20px;
        text-align: left;
        color: #fff; }
  #footer .secondary {
    position: relative;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    justify-content: space-between;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      #footer .secondary {
        display: block; } }
    #footer .secondary ul {
      flex: 0 0 50%;
      display: flex;
      height: 100%; }
      @media screen and (max-width: 767px) {
        #footer .secondary ul {
          display: block; } }
      #footer .secondary ul li {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #fff;
        padding: 0 18px; }
        @media screen and (max-width: 767px) {
          #footer .secondary ul li {
            padding: 0;
            font-size: 12px;
            line-height: 1;
            text-align: left;
            color: #fff; } }
        #footer .secondary ul li:first-child {
          padding-left: 0; }
        #footer .secondary ul li + li {
          border-left: 1px solid #fff; }
          @media screen and (max-width: 767px) {
            #footer .secondary ul li + li {
              border-left: none;
              margin-top: 20px; } }
    #footer .secondary dl {
      flex: 0 0 50%;
      display: flex;
      max-width: 472px; }
      @media screen and (max-width: 767px) {
        #footer .secondary dl {
          margin-top: 40px;
          max-width: none;
          flex-wrap: wrap; } }
      #footer .secondary dl dt {
        margin-right: 16px;
        flex: 0 0 85px; }
      #footer .secondary dl dd {
        margin-left: 16px;
        font-size: 10px;
        letter-spacing: 0.1em;
        line-height: 16px;
        color: #fff; }
        @media screen and (max-width: 767px) {
          #footer .secondary dl dd {
            flex: 0 0 100%;
            margin-left: 0;
            margin-top: 20px;
            font-size: 12px;
            line-height: 18px; } }
    #footer .secondary .copyright {
      position: absolute;
      left: 0;
      bottom: 0;
      font-family: Inter;
      font-weight: 600;
      font-size: 14px;
      line-height: 17px;
      text-align: left;
      color: #fff; }
      @media screen and (max-width: 767px) {
        #footer .secondary .copyright {
          margin-top: 36px;
          position: relative; } }

main.home header.visual {
  overflow: hidden;
  position: relative;
  height: calc(100vh + 32px); }
  @media screen and (max-width: 767px) {
    main.home header.visual {
      height: calc(100vh + 16px); } }
  main.home header.visual:before {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 32px;
    right: 32px;
    display: block;
    height: 32px;
    background-color: #fff; }
    @media screen and (max-width: 767px) {
      main.home header.visual:before {
        left: 16px;
        right: 16px;
        height: 16px; } }
  main.home header.visual:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    height: 32px;
    background-image: url("../images/home/visual_corner_01.svg"), url("../images/home/visual_corner_02.svg");
    background-repeat: no-repeat, no-repeat;
    background-position: 0 100%, 100% 100%; }
    @media screen and (max-width: 767px) {
      main.home header.visual:after {
        height: 16px;
        background-size: auto 16px; } }
@keyframes visual-decoration {
  0% {
    background-color: #91ED43; }
  10% {
    background-color: #F8FF5F; }
  20% {
    background-color: #FF9D2B; }
  30% {
    background-color: #FD2C2C; }
  40% {
    background-color: #F821CF; }
  50% {
    background-color: #882AE8; }
  60% {
    background-color: #3560F2; }
  70% {
    background-color: #21B2FF; }
  80% {
    background-color: #21EBD4; }
  90% {
    background-color: #43ED6E; }
  100% {
    background-color: #91ED43; } }
  main.home header.visual .decoration {
    -webkit-mask-image: url("../images/home/visual_mask.png");
    -webkit-mask-size: auto 100%;
    -webkit-mask-position: 100% 50%;
    -webkit-mask-repeat: no-repeat;
    mask-image: url("../images/home/visual_mask.png");
    mask-size: auto 100%;
    mask-position: 100% 50%;
    mask-repeat: no-repeat;
    position: absolute;
    right: calc(100% - 490px);
    width: 490px;
    min-height: 768px;
    top: 50%;
    height: 100%;
    transform: translateY(-50%);
    animation: visual-decoration 20s linear infinite; }
    @media screen and (max-width: 767px) {
      main.home header.visual .decoration {
        -webkit-mask-image: url("../images/home/visual_mask_sp.png");
        -webkit-mask-size: auto 100%;
        -webkit-mask-position: 100% 50%;
        -webkit-mask-repeat: no-repeat;
        mask-image: url("../images/home/visual_mask_sp.png");
        mask-size: auto 100%;
        mask-position: 100% 50%;
        mask-repeat: no-repeat;
        right: calc(100% - 229px);
        width: 229px;
        min-height: 785px; } }
  main.home header.visual .content {
    position: absolute;
    bottom: 95px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 144px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
    @media screen and (max-width: 1280px) {
      main.home header.visual .content {
        width: calc(100vw - 120px); } }
    @media screen and (max-width: 767px) {
      main.home header.visual .content {
        width: calc(100vw - 40px);
        bottom: 56px; } }
    main.home header.visual .content .logo {
      margin-bottom: 28px;
      padding-right: 160px; }
      @media screen and (max-width: 767px) {
        main.home header.visual .content .logo {
          padding-right: 0;
          margin-bottom: 12px; }
          main.home header.visual .content .logo img {
            width: 100%;
            max-width: none; } }
    main.home header.visual .content .copy {
      margin-bottom: 32px;
      padding-right: 160px; }
      @media screen and (max-width: 767px) {
        main.home header.visual .content .copy {
          padding-right: 0;
          margin-bottom: 56px; }
          main.home header.visual .content .copy img {
            width: 100%;
            max-width: none; } }
    main.home header.visual .content .scroll {
      position: absolute;
      font-family: Inter;
      font-weight: bold;
      font-size: 14px;
      letter-spacing: 0.05em;
      line-height: 17px;
      text-align: center;
      color: #fff;
      padding-bottom: 36px;
      position: absolute;
      right: 0;
      bottom: -1px;
      border-bottom: 1px solid #fff; }
      @media screen and (max-width: 767px) {
        main.home header.visual .content .scroll {
          font-size: 14px;
          letter-spacing: 0.05em;
          line-height: 16px;
          text-align: center;
          color: #fff;
          padding-bottom: 8px; } }
main.home section.company {
  padding: 160px 0 160px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.home section.company {
      padding: 62px 0 78px; } }
  main.home section.company .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.home section.company .container {
        width: calc(100% - 40px); } }
  main.home section.company .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.home section.company .cols {
        display: contents; } }
    main.home section.company .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.home section.company .cols > div {
          display: contents; } }
  main.home section.company h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 64px; }
    @media screen and (max-width: 767px) {
      main.home section.company h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.home section.company h2 {
        margin-bottom: 40px; } }
  main.home section.company .copy {
    font-weight: 500;
    font-size: 28px;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 52px; }
    @media screen and (max-width: 767px) {
      main.home section.company .copy {
        font-size: 20px;
        margin-bottom: 32px; } }
  main.home section.company p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 36px; }
    @media screen and (max-width: 767px) {
      main.home section.company p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.home section.company .action {
    margin-top: 45px; }
    @media screen and (max-width: 767px) {
      main.home section.company .action {
        margin-top: 48px; } }
    main.home section.company .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.home section.company .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.home section.company .action a span {
        position: relative; }
        main.home section.company .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.home section.company .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.home section.company .action a:hover {
        color: #fff; }
        main.home section.company .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
  @media screen and (max-width: 767px) {
    main.home section.company figure {
      margin-top: 40px; } }
main.home section.service {
  padding: 0 0 150px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.home section.service {
      padding: 0 0 80px; } }
  main.home section.service .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.home section.service .container {
        width: calc(100% - 40px); } }
  main.home section.service .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.home section.service .cols {
        display: contents; } }
    main.home section.service .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.home section.service .cols > div {
          display: contents; } }
      main.home section.service .cols > div:nth-child(1) {
        order: 2;
        padding-left: 85px;
        padding-right: 25px; }
  main.home section.service h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 64px; }
    @media screen and (max-width: 767px) {
      main.home section.service h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.home section.service h2 {
        margin-bottom: 40px; } }
  main.home section.service .copy {
    font-weight: 500;
    font-size: 28px;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 52px; }
    @media screen and (max-width: 767px) {
      main.home section.service .copy {
        font-size: 20px;
        margin-bottom: 32px; } }
  main.home section.service p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 36px; }
    @media screen and (max-width: 767px) {
      main.home section.service p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.home section.service .action {
    margin-top: 45px; }
    @media screen and (max-width: 767px) {
      main.home section.service .action {
        margin-top: 48px; } }
    main.home section.service .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.home section.service .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.home section.service .action a span {
        position: relative; }
        main.home section.service .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.home section.service .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.home section.service .action a:hover {
        color: #fff; }
        main.home section.service .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
  main.home section.service figure {
    margin-left: -60px; }
    @media screen and (max-width: 767px) {
      main.home section.service figure {
        margin-left: 0;
        margin-top: 40px; } }
main.home section.news {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff; }
  main.home section.news .wrapper {
    padding: 136px 0 120px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.home section.news .wrapper {
        padding: 78px 0 80px;
        background-size: 16px 16px, 16px 16px, 16px 16px, 16px 16px; } }
  main.home section.news .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.home section.news .container {
        width: calc(100% - 40px); } }
  main.home section.news h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 45px; }
    @media screen and (max-width: 767px) {
      main.home section.news h2 {
        font-size: 20px;
        line-height: 24px; } }
  main.home section.news ul {
    border-top: 1px solid #C6C6C6;
    color: #fff;
    border-top: none; }
    main.home section.news ul li {
      border-bottom: 1px solid #C6C6C6; }
      main.home section.news ul li a {
        display: flex; }
        @media screen and (max-width: 767px) {
          main.home section.news ul li a {
            display: block; } }
        main.home section.news ul li a .meta {
          flex: 0 0 158px;
          padding: 32px 0; }
          @media screen and (max-width: 767px) {
            main.home section.news ul li a .meta {
              display: flex;
              align-items: center;
              padding: 28px 0 16px; } }
          main.home section.news ul li a .meta .date {
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            line-height: 32px;
            letter-spacing: 0.05em;
            text-align: left;
            margin-bottom: 5px; }
            @media screen and (max-width: 767px) {
              main.home section.news ul li a .meta .date {
                line-height: 26px;
                margin-right: 14px;
                margin-bottom: 0; } }
          main.home section.news ul li a .meta .category {
            display: inline-block;
            min-width: 110px;
            line-height: 24px;
            border: 1px solid currentColor;
            border-radius: 9999px;
            font-weight: 500;
            font-size: 12px;
            text-align: center;
            padding: 0 5px; }
        main.home section.news ul li a .title {
          padding: 32px 0;
          flex: 0 0 calc(100% - 158px);
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 32px;
          text-align: left; }
          @media screen and (max-width: 767px) {
            main.home section.news ul li a .title {
              padding: 0 0 26px;
              font-size: 12px;
              line-height: 24px; } }
    main.home section.news ul li {
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
  main.home section.news .action {
    margin-top: 45px;
    text-align: right; }
    main.home section.news .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.home section.news .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.home section.news .action a span {
        position: relative; }
        main.home section.news .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.home section.news .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.home section.news .action a:hover {
        color: #fff; }
        main.home section.news .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
main.home section.journal {
  background-color: #fff;
  background-image: url("../images/home/journal_bg.svg");
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding: 130px 0 180px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    main.home section.journal {
      padding: 48px 0 80px;
      background-size: 478px 490px;
      background-position: 100% 0; } }
@keyframes journal-decoration {
  0% {
    background-position: 0 0; }
  100% {
    background-position: -1000px 0;
    @media screen and (max-width: 767px) {
      background-position: calc(1000 / 81 * 47 * -1px) 0; } } }
  main.home section.journal .decoration {
    background-image: url("../images/home/journal_copy.png");
    background-size: 1000px 81px;
    position: relative;
    z-index: 1;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 81px;
    transform: translateX(-50%);
    animation: journal-decoration 10s linear infinite;
    margin-bottom: 114px; }
    @media screen and (max-width: 767px) {
      main.home section.journal .decoration {
        background-size: calc(1000 / 81 * 47px) 47px;
        height: 47px;
        margin-bottom: 62px; } }
  main.home section.journal .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.home section.journal .container {
        width: calc(100% - 40px); } }
    main.home section.journal .container h2 {
      font-family: Inter;
      font-weight: 600;
      font-size: 28px;
      line-height: 34px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #c6c6c6;
      margin-bottom: 56px; }
      @media screen and (max-width: 767px) {
        main.home section.journal .container h2 {
          font-size: 20px;
          line-height: 24px; } }
    main.home section.journal .container > ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -28px;
      gap: 58px 0;
      margin-bottom: 40px; }
      @media screen and (max-width: 767px) {
        main.home section.journal .container > ul {
          display: block;
          margin: 0; } }
      main.home section.journal .container > ul li {
        flex: 0 0 33.333333%;
        padding: 0 28px; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container > ul li {
            padding: 0; } }
        @media screen and (max-width: 767px) {
          main.home section.journal .container > ul li + li {
            margin-top: 50px; } }
        main.home section.journal .container > ul li a {
          display: block; }
          main.home section.journal .container > ul li a figure {
            position: relative;
            background-color: #fff;
            padding: 12px;
            border-radius: 10px;
            margin-bottom: 36px;
            box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
            @media screen and (max-width: 767px) {
              main.home section.journal .container > ul li a figure {
                padding: 11px;
                margin-bottom: 24px; } }
            main.home section.journal .container > ul li a figure div.inner {
              position: relative;
              border-radius: 10px;
              overflow: hidden;
              background-color: #000;
              padding-top: calc(700 / 1130 * 100%); }
              main.home section.journal .container > ul li a figure div.inner:before {
                content: "";
                position: absolute;
                z-index: 2;
                top: 11px;
                left: 11px;
                background-image: url("../images/common/header_logo.svg");
                background-size: 100% 100%;
                display: block;
                width: 94px;
                height: calc(94 / 203 * 29px); }
              main.home section.journal .container > ul li a figure div.inner:after {
                content: "";
                position: absolute;
                z-index: 3;
                background-color: #000;
                opacity: 0;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                transition: all ease .3s; }
              main.home section.journal .container > ul li a figure div.inner img {
                position: absolute;
                z-index: 1;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                transition: all ease .3s; }
            main.home section.journal .container > ul li a figure span.arrow {
              z-index: 4;
              position: absolute;
              right: 20px;
              bottom: 20px;
              background-color: #fff;
              width: 40px;
              height: 40px;
              border-radius: 50%;
              display: block;
              filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
              overflow: hidden; }
              main.home section.journal .container > ul li a figure span.arrow:before {
                content: "";
                display: block;
                background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                opacity: 0;
                transition: all ease .3s; }
              main.home section.journal .container > ul li a figure span.arrow:after {
                font-family: 'icomoon_activecore' !important;
                speak: never;
                font-style: normal;
                font-weight: normal;
                font-variant: normal;
                text-transform: none;
                line-height: 1;
                /* Enable Ligatures ================ */
                letter-spacing: 0 !important;
                -webkit-font-feature-settings: "liga";
                -moz-font-feature-settings: "liga=1";
                -moz-font-feature-settings: "liga";
                -ms-font-feature-settings: "liga" 1;
                font-feature-settings: "liga";
                -webkit-font-variant-ligatures: discretionary-ligatures;
                font-variant-ligatures: discretionary-ligatures;
                /* Better Font Rendering =========== */
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                content: var(--icon-arrow-right);
                font-size: 14px;
                color: #000000;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                transition: all ease .3s; }
          main.home section.journal .container > ul li a .content .meta {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px; }
            main.home section.journal .container > ul li a .content .meta .date {
              font-family: Inter;
              font-weight: 600;
              font-size: 14px;
              line-height: 26px;
              letter-spacing: 0.05em;
              text-align: left;
              color: #c6c6c6; }
            main.home section.journal .container > ul li a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 24px;
              width: 136px;
              text-align: center;
              color: #000;
              border: 1px solid #000000;
              order: 2;
              border-radius: 9999px; }
          main.home section.journal .container > ul li a .content .title {
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 28px;
            text-align: left;
            color: #000; }
          main.home section.journal .container > ul li a:hover figure div.inner:after {
            opacity: .56; }
          main.home section.journal .container > ul li a:hover figure div.inner img {
            transform: scale(1.2); }
          main.home section.journal .container > ul li a:hover figure span.arrow:before {
            opacity: 1; }
          main.home section.journal .container > ul li a:hover figure span.arrow:after {
            color: #fff; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container > ul li.pickup {
            margin-bottom: 0; }
            main.home section.journal .container > ul li.pickup a .content .meta {
              display: block; }
              main.home section.journal .container > ul li.pickup a .content .meta .category {
                font-family: Inter;
                font-weight: bold;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 32px;
                text-align: center;
                color: #fff;
                width: 164px;
                background-color: #000;
                border-radius: 9999px;
                margin-bottom: 32px; } }
        @media screen and (min-width: 768px) {
          main.home section.journal .container > ul li.pickup {
            flex: 0 0 100%;
            margin-bottom: 80px; }
            main.home section.journal .container > ul li.pickup a {
              display: flex; }
              main.home section.journal .container > ul li.pickup a figure {
                flex: 0 0 calc(605 / 1100 * 100%);
                padding: 20px;
                border-radius: 14px;
                margin-bottom: 0;
                height: 100%; }
                main.home section.journal .container > ul li.pickup a figure div.inner {
                  border-radius: 14px; }
                  main.home section.journal .container > ul li.pickup a figure div.inner:before {
                    top: 20px;
                    left: 27px;
                    width: 158px;
                    height: calc(158 / 203 * 29px); }
                main.home section.journal .container > ul li.pickup a figure span.arrow {
                  width: 48px;
                  height: 48px;
                  right: 36px;
                  bottom: 36px; }
                  main.home section.journal .container > ul li.pickup a figure span.arrow:after {
                    font-size: 17px; }
              main.home section.journal .container > ul li.pickup a .content {
                flex: 0 0 calc(495 / 1100 * 100%);
                padding: 0 72px; }
                main.home section.journal .container > ul li.pickup a .content .meta {
                  display: block; }
                  main.home section.journal .container > ul li.pickup a .content .meta .category {
                    font-family: Inter;
                    font-weight: bold;
                    font-size: 14px;
                    letter-spacing: 0.05em;
                    line-height: 32px;
                    text-align: center;
                    color: #fff;
                    width: 164px;
                    line-height: 30px;
                    margin-bottom: 40px;
                    border-radius: 9999px;
                    background-color: #000; }
                  main.home section.journal .container > ul li.pickup a .content .meta .date {
                    font-family: Inter;
                    font-weight: 600;
                    font-size: 18px;
                    line-height: 21px;
                    letter-spacing: 0.05em;
                    text-align: left;
                    color: #c6c6c6;
                    margin-bottom: 20px; }
                main.home section.journal .container > ul li.pickup a .content .title {
                  font-weight: 500;
                  font-size: 20px;
                  letter-spacing: 0.1em;
                  line-height: 44px;
                  text-align: left;
                  color: #000; } }
    main.home section.journal .container .pc ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -28px;
      gap: 58px 0; }
      @media screen and (max-width: 767px) {
        main.home section.journal .container .pc ul {
          display: block;
          margin: 0; } }
      main.home section.journal .container .pc ul li {
        flex: 0 0 33.333333%;
        padding: 0 28px; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container .pc ul li {
            padding: 0; } }
        @media screen and (max-width: 767px) {
          main.home section.journal .container .pc ul li + li {
            margin-top: 50px; } }
        main.home section.journal .container .pc ul li a {
          display: block; }
          main.home section.journal .container .pc ul li a figure {
            position: relative;
            background-color: #fff;
            padding: 12px;
            border-radius: 10px;
            margin-bottom: 36px;
            box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
            @media screen and (max-width: 767px) {
              main.home section.journal .container .pc ul li a figure {
                padding: 11px;
                margin-bottom: 24px; } }
            main.home section.journal .container .pc ul li a figure div.inner {
              position: relative;
              border-radius: 10px;
              overflow: hidden;
              background-color: #000;
              padding-top: calc(700 / 1130 * 100%); }
              main.home section.journal .container .pc ul li a figure div.inner:before {
                content: "";
                position: absolute;
                z-index: 2;
                top: 11px;
                left: 11px;
                background-image: url("../images/common/header_logo.svg");
                background-size: 100% 100%;
                display: block;
                width: 94px;
                height: calc(94 / 203 * 29px); }
              main.home section.journal .container .pc ul li a figure div.inner:after {
                content: "";
                position: absolute;
                z-index: 3;
                background-color: #000;
                opacity: 0;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                transition: all ease .3s; }
              main.home section.journal .container .pc ul li a figure div.inner img {
                position: absolute;
                z-index: 1;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                transition: all ease .3s; }
            main.home section.journal .container .pc ul li a figure span.arrow {
              z-index: 4;
              position: absolute;
              right: 20px;
              bottom: 20px;
              background-color: #fff;
              width: 40px;
              height: 40px;
              border-radius: 50%;
              display: block;
              filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
              overflow: hidden; }
              main.home section.journal .container .pc ul li a figure span.arrow:before {
                content: "";
                display: block;
                background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                opacity: 0;
                transition: all ease .3s; }
              main.home section.journal .container .pc ul li a figure span.arrow:after {
                font-family: 'icomoon_activecore' !important;
                speak: never;
                font-style: normal;
                font-weight: normal;
                font-variant: normal;
                text-transform: none;
                line-height: 1;
                /* Enable Ligatures ================ */
                letter-spacing: 0 !important;
                -webkit-font-feature-settings: "liga";
                -moz-font-feature-settings: "liga=1";
                -moz-font-feature-settings: "liga";
                -ms-font-feature-settings: "liga" 1;
                font-feature-settings: "liga";
                -webkit-font-variant-ligatures: discretionary-ligatures;
                font-variant-ligatures: discretionary-ligatures;
                /* Better Font Rendering =========== */
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                content: var(--icon-arrow-right);
                font-size: 14px;
                color: #000000;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                transition: all ease .3s; }
          main.home section.journal .container .pc ul li a .content .meta {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px; }
            main.home section.journal .container .pc ul li a .content .meta .date {
              font-family: Inter;
              font-weight: 600;
              font-size: 14px;
              line-height: 26px;
              letter-spacing: 0.05em;
              text-align: left;
              color: #c6c6c6; }
            main.home section.journal .container .pc ul li a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 24px;
              width: 136px;
              text-align: center;
              color: #000;
              border: 1px solid #000000;
              order: 2;
              border-radius: 9999px; }
          main.home section.journal .container .pc ul li a .content .title {
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 28px;
            text-align: left;
            color: #000; }
          main.home section.journal .container .pc ul li a:hover figure div.inner:after {
            opacity: .56; }
          main.home section.journal .container .pc ul li a:hover figure div.inner img {
            transform: scale(1.2); }
          main.home section.journal .container .pc ul li a:hover figure span.arrow:before {
            opacity: 1; }
          main.home section.journal .container .pc ul li a:hover figure span.arrow:after {
            color: #fff; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container .pc ul li.pickup {
            margin-bottom: 0; }
            main.home section.journal .container .pc ul li.pickup a .content .meta {
              display: block; }
              main.home section.journal .container .pc ul li.pickup a .content .meta .category {
                font-family: Inter;
                font-weight: bold;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 32px;
                text-align: center;
                color: #fff;
                width: 164px;
                background-color: #000;
                border-radius: 9999px;
                margin-bottom: 32px; } }
        @media screen and (min-width: 768px) {
          main.home section.journal .container .pc ul li.pickup {
            flex: 0 0 100%;
            margin-bottom: 80px; }
            main.home section.journal .container .pc ul li.pickup a {
              display: flex; }
              main.home section.journal .container .pc ul li.pickup a figure {
                flex: 0 0 calc(605 / 1100 * 100%);
                padding: 20px;
                border-radius: 14px;
                margin-bottom: 0;
                height: 100%; }
                main.home section.journal .container .pc ul li.pickup a figure div.inner {
                  border-radius: 14px; }
                  main.home section.journal .container .pc ul li.pickup a figure div.inner:before {
                    top: 20px;
                    left: 27px;
                    width: 158px;
                    height: calc(158 / 203 * 29px); }
                main.home section.journal .container .pc ul li.pickup a figure span.arrow {
                  width: 48px;
                  height: 48px;
                  right: 36px;
                  bottom: 36px; }
                  main.home section.journal .container .pc ul li.pickup a figure span.arrow:after {
                    font-size: 17px; }
              main.home section.journal .container .pc ul li.pickup a .content {
                flex: 0 0 calc(495 / 1100 * 100%);
                padding: 0 72px; }
                main.home section.journal .container .pc ul li.pickup a .content .meta {
                  display: block; }
                  main.home section.journal .container .pc ul li.pickup a .content .meta .category {
                    font-family: Inter;
                    font-weight: bold;
                    font-size: 14px;
                    letter-spacing: 0.05em;
                    line-height: 32px;
                    text-align: center;
                    color: #fff;
                    width: 164px;
                    line-height: 30px;
                    margin-bottom: 40px;
                    border-radius: 9999px;
                    background-color: #000; }
                  main.home section.journal .container .pc ul li.pickup a .content .meta .date {
                    font-family: Inter;
                    font-weight: 600;
                    font-size: 18px;
                    line-height: 21px;
                    letter-spacing: 0.05em;
                    text-align: left;
                    color: #c6c6c6;
                    margin-bottom: 20px; }
                main.home section.journal .container .pc ul li.pickup a .content .title {
                  font-weight: 500;
                  font-size: 20px;
                  letter-spacing: 0.1em;
                  line-height: 44px;
                  text-align: left;
                  color: #000; } }
    main.home section.journal .container .sp {
      margin-top: 40px; }
      main.home section.journal .container .sp .slider {
        position: relative;
        margin-right: -20px; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container .sp .slider {
            margin-right: 45px; } }
        main.home section.journal .container .sp .slider .swiper-button-prev {
          background-image: url("../images/journal/slider_prev.svg");
          background-size: 100% 100%;
          width: 100px;
          height: 100px;
          position: absolute;
          top: 115px;
          left: 0;
          z-index: 2;
          mix-blend-mode: exclusion;
          margin-top: 0;
          opacity: 1; }
          @media screen and (max-width: 767px) {
            main.home section.journal .container .sp .slider .swiper-button-prev {
              display: none; } }
        main.home section.journal .container .sp .slider .swiper-button-next {
          background-image: url("../images/journal/slider_next.svg");
          background-size: 100% 100%;
          width: 100px;
          height: 100px;
          top: 115px;
          right: 20px;
          z-index: 2;
          mix-blend-mode: exclusion;
          margin-top: 0;
          opacity: 1; }
          @media screen and (max-width: 767px) {
            main.home section.journal .container .sp .slider .swiper-button-next {
              display: none; } }
        main.home section.journal .container .sp .slider .swiper-button-disabled {
          display: none; }
        main.home section.journal .container .sp .slider .swiper-container {
          overflow: visible;
          box-sizing: border-box; }
          main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper {
            margin: 0 -24px; }
            @media screen and (max-width: 767px) {
              main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper {
                margin: 0 -16px; } }
            main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide {
              box-sizing: border-box;
              padding: 0 24px; }
              @media screen and (max-width: 767px) {
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide {
                  padding: 0 16px; } }
              main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a {
                display: block; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                  position: relative;
                  background-color: #fff;
                  padding: 12px;
                  border-radius: 10px;
                  margin-bottom: 36px;
                  box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
                  @media screen and (max-width: 767px) {
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                      padding: 11px;
                      margin-bottom: 24px; } }
                  main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner {
                    position: relative;
                    border-radius: 10px;
                    overflow: hidden;
                    background-color: #000;
                    padding-top: calc(700 / 1130 * 100%); }
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:before {
                      content: "";
                      position: absolute;
                      z-index: 2;
                      top: 11px;
                      left: 11px;
                      background-image: url("../images/common/header_logo.svg");
                      background-size: 100% 100%;
                      display: block;
                      width: 94px;
                      height: calc(94 / 203 * 29px); }
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:after {
                      content: "";
                      position: absolute;
                      z-index: 3;
                      background-color: #000;
                      opacity: 0;
                      top: 0;
                      left: 0;
                      right: 0;
                      bottom: 0;
                      transition: all ease .3s; }
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner img {
                      position: absolute;
                      z-index: 1;
                      top: 0;
                      left: 0;
                      width: 100%;
                      height: 100%;
                      transition: all ease .3s; }
                  main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow {
                    z-index: 4;
                    position: absolute;
                    right: 20px;
                    bottom: 20px;
                    background-color: #fff;
                    width: 40px;
                    height: 40px;
                    border-radius: 50%;
                    display: block;
                    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
                    overflow: hidden; }
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:before {
                      content: "";
                      display: block;
                      background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                      position: absolute;
                      top: 0;
                      left: 0;
                      right: 0;
                      bottom: 0;
                      opacity: 0;
                      transition: all ease .3s; }
                    main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:after {
                      font-family: 'icomoon_activecore' !important;
                      speak: never;
                      font-style: normal;
                      font-weight: normal;
                      font-variant: normal;
                      text-transform: none;
                      line-height: 1;
                      /* Enable Ligatures ================ */
                      letter-spacing: 0 !important;
                      -webkit-font-feature-settings: "liga";
                      -moz-font-feature-settings: "liga=1";
                      -moz-font-feature-settings: "liga";
                      -ms-font-feature-settings: "liga" 1;
                      font-feature-settings: "liga";
                      -webkit-font-variant-ligatures: discretionary-ligatures;
                      font-variant-ligatures: discretionary-ligatures;
                      /* Better Font Rendering =========== */
                      -webkit-font-smoothing: antialiased;
                      -moz-osx-font-smoothing: grayscale;
                      content: var(--icon-arrow-right);
                      font-size: 14px;
                      color: #000000;
                      position: absolute;
                      top: 50%;
                      left: 50%;
                      transform: translate(-50%, -50%);
                      transition: all ease .3s; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta {
                  display: flex;
                  justify-content: space-between;
                  align-items: center;
                  margin-bottom: 15px; }
                  main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .date {
                    font-family: Inter;
                    font-weight: 600;
                    font-size: 14px;
                    line-height: 26px;
                    letter-spacing: 0.05em;
                    text-align: left;
                    color: #c6c6c6; }
                  main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .category {
                    font-family: Inter;
                    font-weight: bold;
                    font-size: 12px;
                    letter-spacing: 0.05em;
                    line-height: 24px;
                    width: 136px;
                    text-align: center;
                    color: #000;
                    border: 1px solid #000000;
                    order: 2;
                    border-radius: 9999px; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
                  font-size: 14px;
                  letter-spacing: 0.1em;
                  line-height: 28px;
                  text-align: left;
                  color: #000; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner:after {
                  opacity: .56; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner img {
                  transform: scale(1.2); }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:before {
                  opacity: 1; }
                main.home section.journal .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:after {
                  color: #fff; }
    main.home section.journal .container .action {
      margin-top: 80px;
      text-align: right; }
      @media screen and (max-width: 767px) {
        main.home section.journal .container .action {
          margin-top: 40px;
          text-align: left; } }
      main.home section.journal .container .action a {
        position: relative;
        width: 219px;
        background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        overflow: hidden;
        display: inline-block;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        line-height: 48px;
        text-align: center;
        color: #000;
        transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
        border-radius: 9999px;
        z-index: 1; }
        @media screen and (max-width: 767px) {
          main.home section.journal .container .action a {
            width: 184px;
            line-height: 40px;
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            color: #000; } }
        main.home section.journal .container .action a span {
          position: relative; }
          main.home section.journal .container .action a span:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-right);
            font-size: 14px;
            margin-left: 12px;
            vertical-align: 0; }
        main.home section.journal .container .action a:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
          transition: all ease .3s;
          transform: scaleX(0);
          transform-origin: right;
          transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
        main.home section.journal .container .action a:hover {
          color: #fff; }
          main.home section.journal .container .action a:hover:before {
            left: 0;
            transform: scaleX(1);
            transform-origin: left; }
main.home section.contact {
  background-color: #fff;
  padding: 154px 0 160px; }
  @media screen and (max-width: 767px) {
    main.home section.contact {
      padding: 78px 0 80px; } }
  main.home section.contact .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.home section.contact .container {
        width: calc(100% - 40px); } }
  main.home section.contact h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 56px; }
    @media screen and (max-width: 767px) {
      main.home section.contact h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.home section.contact h2 {
        margin-bottom: 30px; } }
  main.home section.contact .copy {
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.1em;
    line-height: 1; }
    @media screen and (max-width: 767px) {
      main.home section.contact .copy {
        font-size: 20px;
        letter-spacing: 0.1em;
        line-height: 40px; } }
  main.home section.contact .action {
    margin-top: 56px;
    text-align: right; }
    @media screen and (max-width: 767px) {
      main.home section.contact .action {
        margin-top: 30px;
        text-align: left; } }
    main.home section.contact .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.home section.contact .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.home section.contact .action a span {
        position: relative; }
        main.home section.contact .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.home section.contact .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.home section.contact .action a:hover {
        color: #fff; }
        main.home section.contact .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }

main.company:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.company:after {
      height: 80px; } }
main.company header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.company header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.company header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.company header .container {
        width: calc(100% - 40px); } }
    main.company header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.company header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.company header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.company header .container h1 span {
            top: 68px; } }
        .is-loaded main.company header .container h1 span {
          top: 0; }
main.company section.mission {
  background-color: #fff;
  padding-top: 136px; }
  @media screen and (max-width: 767px) {
    main.company section.mission {
      padding-top: 60px; } }
  main.company section.mission .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.mission .container {
        width: calc(100% - 40px); } }
  main.company section.mission .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.company section.mission .cols {
        display: contents; } }
    main.company section.mission .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.company section.mission .cols > div {
          display: contents; } }
  main.company section.mission h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 65px; }
    @media screen and (max-width: 767px) {
      main.company section.mission h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.mission h2 {
        margin-bottom: 39px; } }
  main.company section.mission p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 36px; }
    @media screen and (max-width: 767px) {
      main.company section.mission p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.company section.mission .copy {
    font-weight: 500;
    font-size: 28px;
    letter-spacing: 0.1em;
    line-height: 1;
    text-align: left;
    color: #000;
    margin-bottom: 52px; }
    @media screen and (max-width: 767px) {
      main.company section.mission .copy {
        font-size: 20px;
        letter-spacing: 0.1em;
        margin-bottom: 32px; } }
  @media screen and (max-width: 767px) {
    main.company section.mission figure {
      margin-top: 32px; } }
main.company section.ceo {
  background-color: #fff;
  padding-top: 160px;
  padding-bottom: 180px; }
  @media screen and (max-width: 767px) {
    main.company section.ceo {
      padding-top: 70px;
      padding-bottom: 80px; } }
  main.company section.ceo .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.ceo .container {
        width: calc(100% - 40px); } }
  main.company section.ceo h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 56px; }
    @media screen and (max-width: 767px) {
      main.company section.ceo h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.ceo h2 {
        margin-bottom: 39px; } }
  main.company section.ceo figure img {
    border-radius: 20px; }
    @media screen and (max-width: 767px) {
      main.company section.ceo figure img {
        border-radius: 16px; } }
  main.company section.ceo p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px; }
    @media screen and (max-width: 767px) {
      main.company section.ceo p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.company section.ceo .signature {
    margin-top: 80px;
    margin-bottom: 50px;
    display: flex;
    align-items: baseline; }
    @media screen and (max-width: 767px) {
      main.company section.ceo .signature {
        margin: 44px 0 32px; } }
    main.company section.ceo .signature span:nth-child(1) {
      margin-right: 32px;
      font-weight: 500;
      font-size: 16px;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        main.company section.ceo .signature span:nth-child(1) {
          font-size: 16px;
          margin-right: 24px; } }
    main.company section.ceo .signature span:nth-child(2) {
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 0.2em;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        main.company section.ceo .signature span:nth-child(2) {
          font-size: 20px;
          letter-spacing: 0.1em; } }
  main.company section.ceo .profile {
    margin-top: 50px;
    border-top: 1px solid #C6C6C6;
    padding-top: 26px;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 26px; }
    @media screen and (max-width: 767px) {
      main.company section.ceo .profile {
        margin-top: 32px;
        padding-top: 34px;
        font-size: 12px;
        letter-spacing: 0.05em;
        line-height: 24px; } }
main.company section.feature {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff; }
  main.company section.feature .wrapper {
    padding: 136px 0 100px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.company section.feature .wrapper {
        padding: 78px 0 80px; } }
  main.company section.feature .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.feature .container {
        width: calc(100% - 40px); } }
  main.company section.feature h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 62px; }
    @media screen and (max-width: 767px) {
      main.company section.feature h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.feature h2 {
        margin-bottom: 39px; } }
  main.company section.feature p.title {
    font-weight: 500;
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 1;
    color: #fff;
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      main.company section.feature p.title {
        font-size: 20px;
        letter-spacing: 0.1em;
        margin-bottom: 40px; } }
  main.company section.feature ol {
    border-top: 1px solid rgba(255, 255, 255, 0.3); }
    main.company section.feature ol li {
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      padding: 64px 0; }
      @media screen and (max-width: 767px) {
        main.company section.feature ol li {
          padding: 32px 0; } }
      main.company section.feature ol li .cols {
        display: flex; }
        @media screen and (max-width: 767px) {
          main.company section.feature ol li .cols {
            display: contents; } }
        @media screen and (max-width: 767px) {
          main.company section.feature ol li .cols > div {
            display: contents; } }
        main.company section.feature ol li .cols > div:nth-child(1) {
          flex: 0 0 calc(500 / 1100 * 100%);
          padding-right: 30px; }
          @media screen and (max-width: 767px) {
            main.company section.feature ol li .cols > div:nth-child(1) {
              padding-right: 0; } }
        main.company section.feature ol li .cols > div:nth-child(2) {
          flex: 0 0 calc(600 / 1100 * 100%); }
      main.company section.feature ol li .marker {
        display: inline-block;
        font-family: Inter;
        font-weight: bold;
        font-size: 24px;
        line-height: 1;
        letter-spacing: 0.05em;
        text-align: left;
        color: #fff;
        padding-bottom: 30px;
        border-bottom: 1px solid #fff;
        margin-bottom: 48px; }
        @media screen and (max-width: 767px) {
          main.company section.feature ol li .marker {
            font-size: 18px;
            line-height: 21px;
            padding-bottom: 10px;
            margin-bottom: 24px; } }
      main.company section.feature ol li .copy {
        font-weight: 500;
        font-size: 24px;
        letter-spacing: 0.1em;
        line-height: 56px;
        text-align: left;
        color: #fff;
        max-width: 450px; }
        @media screen and (max-width: 767px) {
          main.company section.feature ol li .copy {
            font-size: 16px;
            letter-spacing: 0.05em;
            line-height: 32px;
            text-align: left;
            color: #fff; } }
      @media screen and (max-width: 767px) {
        main.company section.feature ol li figure {
          margin: 0 -20px;
          margin-top: 16px; } }
main.company section.value {
  padding: 180px 0 140px;
  background-color: #fff;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    main.company section.value {
      padding: 54px 0 50px; } }
  main.company section.value .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.value .container {
        width: calc(100% - 40px); } }
  main.company section.value .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.company section.value .cols {
        display: contents; } }
    main.company section.value .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.company section.value .cols > div {
          display: contents; } }
  main.company section.value h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 66px; }
    @media screen and (max-width: 767px) {
      main.company section.value h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.value h2 {
        margin-bottom: 39px; } }
  main.company section.value .title {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 32px; }
    @media screen and (max-width: 767px) {
      main.company section.value .title {
        font-size: 14px;
        letter-spacing: 0.1em;
        margin-bottom: 24px; } }
  main.company section.value .slogan {
    font-family: Inter;
    font-weight: 600;
    font-size: 73px;
    line-height: 89px;
    letter-spacing: 0.03em;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      main.company section.value .slogan {
        font-size: 40px;
        line-height: 49px;
        letter-spacing: 0.03em;
        margin-bottom: 32px; } }
  main.company section.value p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    max-width: 450px; }
    @media screen and (max-width: 767px) {
      main.company section.value p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        max-width: none; } }
  main.company section.value figure {
    margin-right: -157px; }
    @media screen and (max-width: 767px) {
      main.company section.value figure {
        margin: 0;
        margin-top: 32px; } }
    main.company section.value figure img {
      border-radius: 14px;
      box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1); }
  main.company section.value dl {
    margin-top: 84px; }
    @media screen and (max-width: 767px) {
      main.company section.value dl {
        margin-top: 8px; } }
    main.company section.value dl div {
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      @media screen and (max-width: 767px) {
        main.company section.value dl div {
          display: contents; } }
      main.company section.value dl div + div {
        border-top: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.company section.value dl div + div dt {
            border-top: 1px solid #C6C6C6; } }
      main.company section.value dl div dt {
        padding: 40px 0;
        flex: 0 0 50%;
        font-family: Inter;
        font-weight: 600;
        font-size: 64px;
        letter-spacing: 0.03em; }
        @media screen and (max-width: 767px) {
          main.company section.value dl div dt {
            padding: 40px 0 0;
            font-size: 40px;
            line-height: 49px;
            letter-spacing: 0.03em; } }
      main.company section.value dl div dd {
        flex: 0 0 50%;
        padding: 40px 0;
        padding-left: 32px; }
        @media screen and (max-width: 767px) {
          main.company section.value dl div dd {
            padding: 30px 0 32px; } }
        main.company section.value dl div dd .title {
          font-weight: 500;
          font-size: 18px;
          letter-spacing: 0.1em;
          line-height: 1;
          margin-bottom: 25px; }
          @media screen and (max-width: 767px) {
            main.company section.value dl div dd .title {
              font-size: 16px;
              letter-spacing: 0.1em;
              margin-bottom: 16px; } }
        main.company section.value dl div dd p {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.company section.value dl div dd p {
              font-size: 14px;
              letter-spacing: 0.03em;
              line-height: 30px; } }
main.company section.history {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff; }
  main.company section.history .wrapper {
    padding: 136px 0 100px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.company section.history .wrapper {
        padding: 78px 0 60px; } }
  main.company section.history .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.history .container {
        width: calc(100% - 40px); } }
  main.company section.history h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 73px; }
    @media screen and (max-width: 767px) {
      main.company section.history h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.history h2 {
        margin-bottom: 24px; } }
  main.company section.history dl {
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      main.company section.history dl {
        display: block; } }
    main.company section.history dl dt {
      font-family: Inter;
      font-weight: 600;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #fff;
      padding: 20px 0;
      flex: 0 0 110px;
      border-top: 1px solid rgba(255, 255, 255, 0.3); }
      @media screen and (max-width: 767px) {
        main.company section.history dl dt {
          font-size: 14px;
          line-height: 17px;
          padding: 24px 0 12px; } }
    main.company section.history dl dd {
      flex: 0 0 calc(100% - 110px);
      padding: 20px 0;
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 24px;
      text-align: left;
      color: #fff;
      border-top: 1px solid rgba(255, 255, 255, 0.3); }
      @media screen and (max-width: 767px) {
        main.company section.history dl dd {
          border-top: none;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 24px;
          text-align: left;
          color: #fff;
          padding: 0 0 22px; } }
    main.company section.history dl dt:first-child {
      border-top: none !important; }
    main.company section.history dl dt:first-child + dd {
      border-top: none !important; }
main.company section.profile {
  background-color: #fff;
  padding: 180px 0 160px; }
  @media screen and (max-width: 767px) {
    main.company section.profile {
      padding: 78px 0 80px; } }
  main.company section.profile .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.company section.profile .container {
        width: calc(100% - 40px); } }
  main.company section.profile h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      main.company section.profile h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.company section.profile h2 {
        margin-bottom: 24px; } }
  main.company section.profile dl {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #C6C6C6; }
    @media screen and (max-width: 767px) {
      main.company section.profile dl {
        display: block; } }
    main.company section.profile dl dt {
      font-weight: 500;
      font-size: 14px;
      line-height: 24px;
      letter-spacing: 0.05em;
      text-align: left;
      padding: 20px 0;
      flex: 0 0 166px;
      border-top: 1px solid #C6C6C6; }
      @media screen and (max-width: 767px) {
        main.company section.profile dl dt {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 1;
          text-align: left;
          color: #000;
          padding: 24px 0 12px; } }
    main.company section.profile dl dd {
      flex: 0 0 calc(100% - 166px);
      padding: 20px 0;
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 24px;
      text-align: left;
      border-top: 1px solid #C6C6C6; }
      @media screen and (max-width: 767px) {
        main.company section.profile dl dd {
          font-size: 14px;
          letter-spacing: 0.05em;
          line-height: 24px;
          text-align: left;
          color: #000;
          padding: 0 0 20px;
          border-top: none; } }

main.service:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.service:after {
      height: 80px; } }
main.service header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.service header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.service header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.service header .container {
        width: calc(100% - 40px); } }
    main.service header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.service header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.service header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.service header .container h1 span {
            top: 68px; } }
        .is-loaded main.service header .container h1 span {
          top: 0; }
main.service section.concept {
  background-color: #fff;
  padding-top: 136px; }
  @media screen and (max-width: 767px) {
    main.service section.concept {
      padding-top: 60px; } }
  main.service section.concept .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.service section.concept .container {
        width: calc(100% - 40px); } }
  main.service section.concept h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 55px; }
    @media screen and (max-width: 767px) {
      main.service section.concept h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.service section.concept h2 {
        margin-bottom: 32px; } }
  main.service section.concept .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.service section.concept .cols {
        display: contents; } }
    main.service section.concept .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.service section.concept .cols > div {
          display: contents; } }
  main.service section.concept p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 36px;
    max-width: 460px; }
    @media screen and (max-width: 767px) {
      main.service section.concept p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        max-width: none; } }
  main.service section.concept figure {
    margin-right: -60px; }
    @media screen and (max-width: 767px) {
      main.service section.concept figure {
        margin-right: 0;
        margin-top: 40px; } }
  main.service section.concept dl {
    margin-top: 117px;
    border-top: 1px solid #C6C6C6;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 26px;
    padding-top: 25px; }
    @media screen and (max-width: 767px) {
      main.service section.concept dl {
        margin-top: 48px;
        padding-top: 34px;
        font-size: 12px;
        letter-spacing: 0.05em;
        line-height: 24px; } }
    main.service section.concept dl dt {
      float: left; }
      main.service section.concept dl dt:after {
        content: "："; }
main.service nav.jump {
  background-color: #fff;
  padding: 120px 0 12px; }
  @media screen and (max-width: 767px) {
    main.service nav.jump {
      padding: 64px 0 8px; } }
  main.service nav.jump .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px; }
    @media screen and (max-width: 767px) {
      main.service nav.jump .container {
        width: calc(100% - 40px); } }
  main.service nav.jump ul {
    display: flex;
    margin: 0 -32px; }
    @media screen and (max-width: 767px) {
      main.service nav.jump ul {
        display: block;
        margin: 0; } }
    main.service nav.jump ul li {
      flex: 0 0 50%;
      padding: 0 32px; }
      @media screen and (max-width: 767px) {
        main.service nav.jump ul li {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        main.service nav.jump ul li + li {
          margin-top: 40px; } }
      main.service nav.jump ul li a {
        position: relative;
        width: 219px;
        background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        overflow: hidden;
        display: inline-block;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        line-height: 48px;
        text-align: center;
        color: #000;
        transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
        border-radius: 9999px;
        z-index: 1;
        width: 100% !important;
        line-height: 64px;
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          main.service nav.jump ul li a {
            width: 184px;
            line-height: 40px;
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            color: #000; } }
        main.service nav.jump ul li a span {
          position: relative; }
          main.service nav.jump ul li a span:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-right);
            font-size: 14px;
            margin-left: 12px;
            vertical-align: 0; }
        main.service nav.jump ul li a:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
          transition: all ease .3s;
          transform: scaleX(0);
          transform-origin: right;
          transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
        main.service nav.jump ul li a:hover {
          color: #fff; }
          main.service nav.jump ul li a:hover:before {
            left: 0;
            transform: scaleX(1);
            transform-origin: left; }
        @media screen and (max-width: 767px) {
          main.service nav.jump ul li a {
            line-height: 51px;
            font-size: 16px; } }
        main.service nav.jump ul li a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-down);
          font-size: 12px;
          position: absolute;
          top: 50%;
          right: 32px;
          transform: translateY(-50%); }
        main.service nav.jump ul li a span:after {
          display: none; }
main.service section.product01 {
  background-color: #fff;
  padding: 168px 0 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.service section.product01 {
      padding: 80px 0 0; } }
  main.service section.product01 .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.service section.product01 .container {
        width: calc(100% - 40px); } }
    main.service section.product01 .container > .title {
      background-color: #000000;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      letter-spacing: 0.05em;
      color: #fff;
      padding: 0 16px;
      line-height: 32px;
      margin-bottom: 72px; }
      @media screen and (max-width: 767px) {
        main.service section.product01 .container > .title {
          font-size: 16px;
          letter-spacing: 0.05em;
          line-height: 32px;
          padding: 0 20px;
          margin: 0 -20px;
          margin-bottom: 48px; } }
  main.service section.product01 .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.service section.product01 .cols {
        display: contents; } }
    main.service section.product01 .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.service section.product01 .cols > div {
          display: contents; } }
      main.service section.product01 .cols > div:nth-child(1) {
        position: relative;
        z-index: 1; }
        main.service section.product01 .cols > div:nth-child(1) .logo {
          margin-bottom: 54px; }
          @media screen and (max-width: 767px) {
            main.service section.product01 .cols > div:nth-child(1) .logo {
              margin-bottom: 40px; } }
          main.service section.product01 .cols > div:nth-child(1) .logo img {
            max-width: 358px; }
            @media screen and (max-width: 767px) {
              main.service section.product01 .cols > div:nth-child(1) .logo img {
                max-width: 276px; } }
        main.service section.product01 .cols > div:nth-child(1) .copy {
          font-weight: 500;
          font-size: 20px;
          letter-spacing: 0.1em;
          line-height: 40px;
          margin-bottom: 36px; }
          @media screen and (max-width: 767px) {
            main.service section.product01 .cols > div:nth-child(1) .copy {
              font-size: 18px;
              letter-spacing: 0.05em;
              line-height: 36px;
              margin-bottom: 22px; } }
        main.service section.product01 .cols > div:nth-child(1) p {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 40px;
          text-align: left;
          color: #000;
          max-width: 460px; }
          @media screen and (max-width: 767px) {
            main.service section.product01 .cols > div:nth-child(1) p {
              font-size: 14px;
              letter-spacing: 0.03em;
              line-height: 30px;
              text-align: left;
              color: #000; } }
        main.service section.product01 .cols > div:nth-child(1) .action {
          margin-top: 42px; }
          main.service section.product01 .cols > div:nth-child(1) .action a {
            position: relative;
            width: 219px;
            background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
            filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
            overflow: hidden;
            display: inline-block;
            font-family: Inter;
            font-weight: 600;
            font-size: 16px;
            line-height: 48px;
            text-align: center;
            color: #000;
            transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
            border-radius: 9999px;
            z-index: 1; }
            @media screen and (max-width: 767px) {
              main.service section.product01 .cols > div:nth-child(1) .action a {
                width: 184px;
                line-height: 40px;
                font-family: Inter;
                font-weight: 600;
                font-size: 14px;
                color: #000; } }
            main.service section.product01 .cols > div:nth-child(1) .action a span {
              position: relative; }
              main.service section.product01 .cols > div:nth-child(1) .action a span:after {
                font-family: 'icomoon_activecore' !important;
                speak: never;
                font-style: normal;
                font-weight: normal;
                font-variant: normal;
                text-transform: none;
                line-height: 1;
                /* Enable Ligatures ================ */
                letter-spacing: 0 !important;
                -webkit-font-feature-settings: "liga";
                -moz-font-feature-settings: "liga=1";
                -moz-font-feature-settings: "liga";
                -ms-font-feature-settings: "liga" 1;
                font-feature-settings: "liga";
                -webkit-font-variant-ligatures: discretionary-ligatures;
                font-variant-ligatures: discretionary-ligatures;
                /* Better Font Rendering =========== */
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                content: var(--icon-arrow-right);
                font-size: 14px;
                margin-left: 12px;
                vertical-align: 0; }
            main.service section.product01 .cols > div:nth-child(1) .action a:before {
              content: "";
              display: block;
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
              transition: all ease .3s;
              transform: scaleX(0);
              transform-origin: right;
              transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
            main.service section.product01 .cols > div:nth-child(1) .action a:hover {
              color: #fff; }
              main.service section.product01 .cols > div:nth-child(1) .action a:hover:before {
                left: 0;
                transform: scaleX(1);
                transform-origin: left; }
      main.service section.product01 .cols > div:nth-child(2) {
        padding-top: 74px; }
        @media screen and (max-width: 767px) {
          main.service section.product01 .cols > div:nth-child(2) {
            padding-top: 0; } }
        main.service section.product01 .cols > div:nth-child(2) figure {
          margin: 0 -60px 0 -204px; }
          @media screen and (max-width: 767px) {
            main.service section.product01 .cols > div:nth-child(2) figure {
              margin: 40px 0 0 -20px; } }
  main.service section.product01 section {
    padding: 140px 0 180px; }
    @media screen and (max-width: 767px) {
      main.service section.product01 section {
        padding: 80px 0; } }
    main.service section.product01 section h3 {
      font-weight: 500;
      font-size: 18px;
      letter-spacing: 0.1em;
      line-height: 1;
      text-align: left;
      color: #000;
      padding-bottom: 32px;
      border-bottom: 1px solid #C6C6C6;
      margin-bottom: 50px; }
      @media screen and (max-width: 767px) {
        main.service section.product01 section h3 {
          font-size: 14px;
          letter-spacing: 0.1em;
          padding-bottom: 16px;
          margin-bottom: 40px; } }
    main.service section.product01 section ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -18px;
      gap: 15px 0; }
      @media screen and (max-width: 767px) {
        main.service section.product01 section ul {
          margin: 0 -6px;
          gap: 36px 0; } }
      main.service section.product01 section ul li {
        flex: 0 0 calc(100% / 8);
        padding: 0 18px; }
        @media screen and (max-width: 767px) {
          main.service section.product01 section ul li {
            flex: 0 0 calc(100% / 3);
            padding: 0 6px; } }
main.service section.clientsvoice {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  overflow: hidden; }
  main.service section.clientsvoice .wrapper {
    padding: 138px 0 100px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.service section.clientsvoice .wrapper {
        padding: 78px 0 80px; } }
  main.service section.clientsvoice .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.service section.clientsvoice .container {
        width: calc(100% - 40px); } }
    main.service section.clientsvoice .container h2 {
      font-family: Inter;
      font-weight: 600;
      font-size: 28px;
      line-height: 34px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #c6c6c6;
      margin-bottom: 55px; }
      @media screen and (max-width: 767px) {
        main.service section.clientsvoice .container h2 {
          font-size: 20px;
          line-height: 24px; } }
      @media screen and (max-width: 767px) {
        main.service section.clientsvoice .container h2 {
          margin-bottom: 32px; } }
    main.service section.clientsvoice .container .slider {
      position: relative;
      margin-right: -20px; }
      @media screen and (max-width: 767px) {
        main.service section.clientsvoice .container .slider {
          margin-right: 45px; } }
      main.service section.clientsvoice .container .slider .swiper-button-prev {
        background-image: url("../images/journal/slider_prev.svg");
        background-size: 100% 100%;
        width: 100px;
        height: 100px;
        position: absolute;
        top: 115px;
        left: 0;
        z-index: 2;
        mix-blend-mode: exclusion;
        margin-top: 0;
        opacity: 1; }
        @media screen and (max-width: 767px) {
          main.service section.clientsvoice .container .slider .swiper-button-prev {
            display: none; } }
      main.service section.clientsvoice .container .slider .swiper-button-next {
        background-image: url("../images/journal/slider_next.svg");
        background-size: 100% 100%;
        width: 100px;
        height: 100px;
        top: 115px;
        right: 20px;
        z-index: 2;
        mix-blend-mode: exclusion;
        margin-top: 0;
        opacity: 1; }
        @media screen and (max-width: 767px) {
          main.service section.clientsvoice .container .slider .swiper-button-next {
            display: none; } }
      main.service section.clientsvoice .container .slider .swiper-button-disabled {
        display: none; }
      main.service section.clientsvoice .container .slider .swiper-container {
        overflow: visible;
        box-sizing: border-box; }
        main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper {
          margin: 0 -24px; }
          @media screen and (max-width: 767px) {
            main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper {
              margin: 0 -16px; } }
          main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide {
            box-sizing: border-box;
            padding: 0 24px; }
            @media screen and (max-width: 767px) {
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide {
                padding: 0 16px; } }
            main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a {
              display: block; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                position: relative;
                background-color: #fff;
                padding: 12px;
                border-radius: 10px;
                margin-bottom: 36px;
                box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
                @media screen and (max-width: 767px) {
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                    padding: 11px;
                    margin-bottom: 24px; } }
                main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner {
                  position: relative;
                  border-radius: 10px;
                  overflow: hidden;
                  background-color: #000;
                  padding-top: calc(700 / 1130 * 100%); }
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:before {
                    content: "";
                    position: absolute;
                    z-index: 2;
                    top: 11px;
                    left: 11px;
                    background-image: url("../images/common/header_logo.svg");
                    background-size: 100% 100%;
                    display: block;
                    width: 94px;
                    height: calc(94 / 203 * 29px); }
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:after {
                    content: "";
                    position: absolute;
                    z-index: 3;
                    background-color: #000;
                    opacity: 0;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    transition: all ease .3s; }
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner img {
                    position: absolute;
                    z-index: 1;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    transition: all ease .3s; }
                main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow {
                  z-index: 4;
                  position: absolute;
                  right: 20px;
                  bottom: 20px;
                  background-color: #fff;
                  width: 40px;
                  height: 40px;
                  border-radius: 50%;
                  display: block;
                  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
                  overflow: hidden; }
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:before {
                    content: "";
                    display: block;
                    background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                    position: absolute;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    opacity: 0;
                    transition: all ease .3s; }
                  main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:after {
                    font-family: 'icomoon_activecore' !important;
                    speak: never;
                    font-style: normal;
                    font-weight: normal;
                    font-variant: normal;
                    text-transform: none;
                    line-height: 1;
                    /* Enable Ligatures ================ */
                    letter-spacing: 0 !important;
                    -webkit-font-feature-settings: "liga";
                    -moz-font-feature-settings: "liga=1";
                    -moz-font-feature-settings: "liga";
                    -ms-font-feature-settings: "liga" 1;
                    font-feature-settings: "liga";
                    -webkit-font-variant-ligatures: discretionary-ligatures;
                    font-variant-ligatures: discretionary-ligatures;
                    /* Better Font Rendering =========== */
                    -webkit-font-smoothing: antialiased;
                    -moz-osx-font-smoothing: grayscale;
                    content: var(--icon-arrow-right);
                    font-size: 14px;
                    color: #000000;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    transition: all ease .3s; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px; }
                main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .date {
                  font-family: Inter;
                  font-weight: 600;
                  font-size: 14px;
                  line-height: 26px;
                  letter-spacing: 0.05em;
                  text-align: left;
                  color: #c6c6c6; }
                main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .category {
                  font-family: Inter;
                  font-weight: bold;
                  font-size: 12px;
                  letter-spacing: 0.05em;
                  line-height: 24px;
                  width: 136px;
                  text-align: center;
                  color: #000;
                  border: 1px solid #000000;
                  order: 2;
                  border-radius: 9999px; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
                font-size: 14px;
                letter-spacing: 0.1em;
                line-height: 28px;
                text-align: left;
                color: #000; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner:after {
                opacity: .56; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner img {
                transform: scale(1.2); }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:before {
                opacity: 1; }
              main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:after {
                color: #fff; }
      main.service section.clientsvoice .container .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
        color: #fff; }
    main.service section.clientsvoice .container p.action {
      text-align: right;
      margin-top: 65px; }
      @media screen and (max-width: 767px) {
        main.service section.clientsvoice .container p.action {
          margin-top: 40px;
          text-align: left; } }
      main.service section.clientsvoice .container p.action a {
        position: relative;
        width: 219px;
        background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        overflow: hidden;
        display: inline-block;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        line-height: 48px;
        text-align: center;
        color: #000;
        transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
        border-radius: 9999px;
        z-index: 1; }
        @media screen and (max-width: 767px) {
          main.service section.clientsvoice .container p.action a {
            width: 184px;
            line-height: 40px;
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            color: #000; } }
        main.service section.clientsvoice .container p.action a span {
          position: relative; }
          main.service section.clientsvoice .container p.action a span:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-right);
            font-size: 14px;
            margin-left: 12px;
            vertical-align: 0; }
        main.service section.clientsvoice .container p.action a:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
          transition: all ease .3s;
          transform: scaleX(0);
          transform-origin: right;
          transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
        main.service section.clientsvoice .container p.action a:hover {
          color: #fff; }
          main.service section.clientsvoice .container p.action a:hover:before {
            left: 0;
            transform: scaleX(1);
            transform-origin: left; }
main.service section.product02 {
  background-color: #fff;
  padding: 168px 0 180px; }
  @media screen and (max-width: 767px) {
    main.service section.product02 {
      padding: 80px 0; } }
  main.service section.product02 .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.service section.product02 .container {
        width: calc(100% - 40px); } }
    main.service section.product02 .container > .title {
      background-color: #000000;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #fff;
      padding: 0 16px;
      line-height: 32px;
      margin-bottom: 72px; }
      @media screen and (max-width: 767px) {
        main.service section.product02 .container > .title {
          font-size: 16px;
          letter-spacing: 0.05em;
          line-height: 32px;
          padding: 0 20px;
          margin: 0 -20px;
          margin-bottom: 48px; } }
    main.service section.product02 .container .copy {
      font-weight: 500;
      font-size: 20px;
      letter-spacing: 0.1em;
      line-height: 40px; }
      @media screen and (max-width: 767px) {
        main.service section.product02 .container .copy {
          font-size: 18px;
          letter-spacing: 0.05em;
          line-height: 36px; } }

main.journal:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal:after {
      height: 80px; } }
main.journal header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.journal header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.journal header .container {
        width: calc(100% - 40px); } }
    main.journal header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.journal header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.journal header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.journal header .container h1 span {
            top: 68px; } }
        .is-loaded main.journal header .container h1 span {
          top: 0; }
main.journal section.new {
  background-color: #fff;
  padding-top: 136px;
  padding-bottom: 160px; }
  @media screen and (max-width: 767px) {
    main.journal section.new {
      padding-top: 60px;
      padding-bottom: 80px; } }
  main.journal section.new .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.journal section.new .container {
        width: calc(100% - 40px); } }
  main.journal section.new h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 55px; }
    @media screen and (max-width: 767px) {
      main.journal section.new h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.journal section.new h2 {
        margin-bottom: 40px; } }
  main.journal section.new ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -28px;
    gap: 58px 0; }
    @media screen and (max-width: 767px) {
      main.journal section.new ul {
        display: block;
        margin: 0; } }
    main.journal section.new ul li {
      flex: 0 0 33.333333%;
      padding: 0 28px; }
      @media screen and (max-width: 767px) {
        main.journal section.new ul li {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        main.journal section.new ul li + li {
          margin-top: 50px; } }
      main.journal section.new ul li a {
        display: block; }
        main.journal section.new ul li a figure {
          position: relative;
          background-color: #fff;
          padding: 12px;
          border-radius: 10px;
          margin-bottom: 36px;
          box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
          @media screen and (max-width: 767px) {
            main.journal section.new ul li a figure {
              padding: 11px;
              margin-bottom: 24px; } }
          main.journal section.new ul li a figure div.inner {
            position: relative;
            border-radius: 10px;
            overflow: hidden;
            background-color: #000;
            padding-top: calc(700 / 1130 * 100%); }
            main.journal section.new ul li a figure div.inner:before {
              content: "";
              position: absolute;
              z-index: 2;
              top: 11px;
              left: 11px;
              background-image: url("../images/common/header_logo.svg");
              background-size: 100% 100%;
              display: block;
              width: 94px;
              height: calc(94 / 203 * 29px); }
            main.journal section.new ul li a figure div.inner:after {
              content: "";
              position: absolute;
              z-index: 3;
              background-color: #000;
              opacity: 0;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              transition: all ease .3s; }
            main.journal section.new ul li a figure div.inner img {
              position: absolute;
              z-index: 1;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              transition: all ease .3s; }
          main.journal section.new ul li a figure span.arrow {
            z-index: 4;
            position: absolute;
            right: 20px;
            bottom: 20px;
            background-color: #fff;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: block;
            filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
            overflow: hidden; }
            main.journal section.new ul li a figure span.arrow:before {
              content: "";
              display: block;
              background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
              position: absolute;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              opacity: 0;
              transition: all ease .3s; }
            main.journal section.new ul li a figure span.arrow:after {
              font-family: 'icomoon_activecore' !important;
              speak: never;
              font-style: normal;
              font-weight: normal;
              font-variant: normal;
              text-transform: none;
              line-height: 1;
              /* Enable Ligatures ================ */
              letter-spacing: 0 !important;
              -webkit-font-feature-settings: "liga";
              -moz-font-feature-settings: "liga=1";
              -moz-font-feature-settings: "liga";
              -ms-font-feature-settings: "liga" 1;
              font-feature-settings: "liga";
              -webkit-font-variant-ligatures: discretionary-ligatures;
              font-variant-ligatures: discretionary-ligatures;
              /* Better Font Rendering =========== */
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              content: var(--icon-arrow-right);
              font-size: 14px;
              color: #000000;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              transition: all ease .3s; }
        main.journal section.new ul li a .content .meta {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 15px; }
          main.journal section.new ul li a .content .meta .date {
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            line-height: 26px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #c6c6c6; }
          main.journal section.new ul li a .content .meta .category {
            font-family: Inter;
            font-weight: bold;
            font-size: 12px;
            letter-spacing: 0.05em;
            line-height: 24px;
            width: 136px;
            text-align: center;
            color: #000;
            border: 1px solid #000000;
            order: 2;
            border-radius: 9999px; }
        main.journal section.new ul li a .content .title {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px;
          text-align: left;
          color: #000; }
        main.journal section.new ul li a:hover figure div.inner:after {
          opacity: .56; }
        main.journal section.new ul li a:hover figure div.inner img {
          transform: scale(1.2); }
        main.journal section.new ul li a:hover figure span.arrow:before {
          opacity: 1; }
        main.journal section.new ul li a:hover figure span.arrow:after {
          color: #fff; }
      @media screen and (max-width: 767px) {
        main.journal section.new ul li.pickup {
          margin-bottom: 0; }
          main.journal section.new ul li.pickup a .content .meta {
            display: block; }
            main.journal section.new ul li.pickup a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 14px;
              letter-spacing: 0.05em;
              line-height: 32px;
              text-align: center;
              color: #fff;
              width: 164px;
              background-color: #000;
              border-radius: 9999px;
              margin-bottom: 32px; } }
      @media screen and (min-width: 768px) {
        main.journal section.new ul li.pickup {
          flex: 0 0 100%;
          margin-bottom: 80px; }
          main.journal section.new ul li.pickup a {
            display: flex; }
            main.journal section.new ul li.pickup a figure {
              flex: 0 0 calc(605 / 1100 * 100%);
              padding: 20px;
              border-radius: 14px;
              margin-bottom: 0;
              height: 100%; }
              main.journal section.new ul li.pickup a figure div.inner {
                border-radius: 14px; }
                main.journal section.new ul li.pickup a figure div.inner:before {
                  top: 20px;
                  left: 27px;
                  width: 158px;
                  height: calc(158 / 203 * 29px); }
              main.journal section.new ul li.pickup a figure span.arrow {
                width: 48px;
                height: 48px;
                right: 36px;
                bottom: 36px; }
                main.journal section.new ul li.pickup a figure span.arrow:after {
                  font-size: 17px; }
            main.journal section.new ul li.pickup a .content {
              flex: 0 0 calc(495 / 1100 * 100%);
              padding: 0 72px; }
              main.journal section.new ul li.pickup a .content .meta {
                display: block; }
                main.journal section.new ul li.pickup a .content .meta .category {
                  font-family: Inter;
                  font-weight: bold;
                  font-size: 14px;
                  letter-spacing: 0.05em;
                  line-height: 32px;
                  text-align: center;
                  color: #fff;
                  width: 164px;
                  line-height: 30px;
                  margin-bottom: 40px;
                  border-radius: 9999px;
                  background-color: #000; }
                main.journal section.new ul li.pickup a .content .meta .date {
                  font-family: Inter;
                  font-weight: 600;
                  font-size: 18px;
                  line-height: 21px;
                  letter-spacing: 0.05em;
                  text-align: left;
                  color: #c6c6c6;
                  margin-bottom: 20px; }
              main.journal section.new ul li.pickup a .content .title {
                font-weight: 500;
                font-size: 20px;
                letter-spacing: 0.1em;
                line-height: 44px;
                text-align: left;
                color: #000; } }
main.journal section.member {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  overflow: hidden; }
  main.journal section.member .wrapper {
    padding: 138px 0 100px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.journal section.member .wrapper {
        padding: 78px 0 80px;
        background-size: 16px 16px, 16px 16px, 16px 16px, 16px 16px; } }
  main.journal section.member .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.journal section.member .container {
        width: calc(100% - 40px); } }
  main.journal section.member h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      main.journal section.member h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.journal section.member h2 {
        margin-bottom: 32px; } }
  main.journal section.member p.lead {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 30px;
    text-align: left;
    margin-bottom: 72px;
    color: #fff; }
    @media screen and (max-width: 767px) {
      main.journal section.member p.lead {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        margin-bottom: 42px; } }
  main.journal section.member .slider {
    position: relative;
    margin-right: -20px; }
    @media screen and (max-width: 767px) {
      main.journal section.member .slider {
        margin-right: 45px; } }
    main.journal section.member .slider .swiper-button-prev {
      background-image: url("../images/journal/slider_prev.svg");
      background-size: 100% 100%;
      width: 100px;
      height: 100px;
      position: absolute;
      top: 115px;
      left: 0;
      z-index: 2;
      mix-blend-mode: exclusion;
      margin-top: 0;
      opacity: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.member .slider .swiper-button-prev {
          display: none; } }
    main.journal section.member .slider .swiper-button-next {
      background-image: url("../images/journal/slider_next.svg");
      background-size: 100% 100%;
      width: 100px;
      height: 100px;
      top: 115px;
      right: 20px;
      z-index: 2;
      mix-blend-mode: exclusion;
      margin-top: 0;
      opacity: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.member .slider .swiper-button-next {
          display: none; } }
    main.journal section.member .slider .swiper-button-disabled {
      display: none; }
    main.journal section.member .slider .swiper-container {
      overflow: visible;
      box-sizing: border-box; }
      main.journal section.member .slider .swiper-container .swiper-wrapper {
        margin: 0 -24px; }
        @media screen and (max-width: 767px) {
          main.journal section.member .slider .swiper-container .swiper-wrapper {
            margin: 0 -16px; } }
        main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide {
          box-sizing: border-box;
          padding: 0 24px; }
          @media screen and (max-width: 767px) {
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide {
              padding: 0 16px; } }
          main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a {
            display: block; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
              position: relative;
              background-color: #fff;
              padding: 12px;
              border-radius: 10px;
              margin-bottom: 36px;
              box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
              @media screen and (max-width: 767px) {
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                  padding: 11px;
                  margin-bottom: 24px; } }
              main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner {
                position: relative;
                border-radius: 10px;
                overflow: hidden;
                background-color: #000;
                padding-top: calc(700 / 1130 * 100%); }
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:before {
                  content: "";
                  position: absolute;
                  z-index: 2;
                  top: 11px;
                  left: 11px;
                  background-image: url("../images/common/header_logo.svg");
                  background-size: 100% 100%;
                  display: block;
                  width: 94px;
                  height: calc(94 / 203 * 29px); }
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:after {
                  content: "";
                  position: absolute;
                  z-index: 3;
                  background-color: #000;
                  opacity: 0;
                  top: 0;
                  left: 0;
                  right: 0;
                  bottom: 0;
                  transition: all ease .3s; }
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner img {
                  position: absolute;
                  z-index: 1;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  transition: all ease .3s; }
              main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow {
                z-index: 4;
                position: absolute;
                right: 20px;
                bottom: 20px;
                background-color: #fff;
                width: 40px;
                height: 40px;
                border-radius: 50%;
                display: block;
                filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
                overflow: hidden; }
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:before {
                  content: "";
                  display: block;
                  background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                  position: absolute;
                  top: 0;
                  left: 0;
                  right: 0;
                  bottom: 0;
                  opacity: 0;
                  transition: all ease .3s; }
                main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:after {
                  font-family: 'icomoon_activecore' !important;
                  speak: never;
                  font-style: normal;
                  font-weight: normal;
                  font-variant: normal;
                  text-transform: none;
                  line-height: 1;
                  /* Enable Ligatures ================ */
                  letter-spacing: 0 !important;
                  -webkit-font-feature-settings: "liga";
                  -moz-font-feature-settings: "liga=1";
                  -moz-font-feature-settings: "liga";
                  -ms-font-feature-settings: "liga" 1;
                  font-feature-settings: "liga";
                  -webkit-font-variant-ligatures: discretionary-ligatures;
                  font-variant-ligatures: discretionary-ligatures;
                  /* Better Font Rendering =========== */
                  -webkit-font-smoothing: antialiased;
                  -moz-osx-font-smoothing: grayscale;
                  content: var(--icon-arrow-right);
                  font-size: 14px;
                  color: #000000;
                  position: absolute;
                  top: 50%;
                  left: 50%;
                  transform: translate(-50%, -50%);
                  transition: all ease .3s; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin-bottom: 15px; }
              main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .date {
                font-family: Inter;
                font-weight: 600;
                font-size: 14px;
                line-height: 26px;
                letter-spacing: 0.05em;
                text-align: left;
                color: #c6c6c6; }
              main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .category {
                font-family: Inter;
                font-weight: bold;
                font-size: 12px;
                letter-spacing: 0.05em;
                line-height: 24px;
                width: 136px;
                text-align: center;
                color: #000;
                border: 1px solid #000000;
                order: 2;
                border-radius: 9999px; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
              font-size: 14px;
              letter-spacing: 0.1em;
              line-height: 28px;
              text-align: left;
              color: #000; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner:after {
              opacity: .56; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner img {
              transform: scale(1.2); }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:before {
              opacity: 1; }
            main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:after {
              color: #fff; }
    main.journal section.member .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
      color: #fff; }
  main.journal section.member p.action {
    text-align: right;
    margin-top: 65px; }
    @media screen and (max-width: 767px) {
      main.journal section.member p.action {
        text-align: left;
        margin-top: 40px; } }
    main.journal section.member p.action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.member p.action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.journal section.member p.action a span {
        position: relative; }
        main.journal section.member p.action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.journal section.member p.action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.journal section.member p.action a:hover {
        color: #fff; }
        main.journal section.member p.action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
main.journal section.client {
  background-color: #fff;
  padding: 160px 0 100px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    main.journal section.client {
      padding: 80px 0 64px; } }
  main.journal section.client .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.journal section.client .container {
        width: calc(100% - 40px); } }
  main.journal section.client h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      main.journal section.client h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.journal section.client h2 {
        margin-bottom: 32px; } }
  main.journal section.client p.lead {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 30px;
    text-align: left;
    margin-bottom: 72px; }
    @media screen and (max-width: 767px) {
      main.journal section.client p.lead {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        margin-bottom: 42px; } }
  main.journal section.client .slider {
    position: relative;
    margin-right: -20px; }
    @media screen and (max-width: 767px) {
      main.journal section.client .slider {
        margin-right: 45px; } }
    main.journal section.client .slider .swiper-button-prev {
      background-image: url("../images/journal/slider_prev.svg");
      background-size: 100% 100%;
      width: 100px;
      height: 100px;
      position: absolute;
      top: 115px;
      left: 0;
      z-index: 2;
      mix-blend-mode: exclusion;
      margin-top: 0;
      opacity: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.client .slider .swiper-button-prev {
          display: none; } }
    main.journal section.client .slider .swiper-button-next {
      background-image: url("../images/journal/slider_next.svg");
      background-size: 100% 100%;
      width: 100px;
      height: 100px;
      top: 115px;
      right: 20px;
      z-index: 2;
      mix-blend-mode: exclusion;
      margin-top: 0;
      opacity: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.client .slider .swiper-button-next {
          display: none; } }
    main.journal section.client .slider .swiper-button-disabled {
      display: none; }
    main.journal section.client .slider .swiper-container {
      overflow: visible;
      box-sizing: border-box; }
      main.journal section.client .slider .swiper-container .swiper-wrapper {
        margin: 0 -24px; }
        @media screen and (max-width: 767px) {
          main.journal section.client .slider .swiper-container .swiper-wrapper {
            margin: 0 -16px; } }
        main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide {
          box-sizing: border-box;
          padding: 0 24px; }
          @media screen and (max-width: 767px) {
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide {
              padding: 0 16px; } }
          main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a {
            display: block; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
              position: relative;
              background-color: #fff;
              padding: 12px;
              border-radius: 10px;
              margin-bottom: 36px;
              box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
              @media screen and (max-width: 767px) {
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                  padding: 11px;
                  margin-bottom: 24px; } }
              main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner {
                position: relative;
                border-radius: 10px;
                overflow: hidden;
                background-color: #000;
                padding-top: calc(700 / 1130 * 100%); }
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:before {
                  content: "";
                  position: absolute;
                  z-index: 2;
                  top: 11px;
                  left: 11px;
                  background-image: url("../images/common/header_logo.svg");
                  background-size: 100% 100%;
                  display: block;
                  width: 94px;
                  height: calc(94 / 203 * 29px); }
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:after {
                  content: "";
                  position: absolute;
                  z-index: 3;
                  background-color: #000;
                  opacity: 0;
                  top: 0;
                  left: 0;
                  right: 0;
                  bottom: 0;
                  transition: all ease .3s; }
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner img {
                  position: absolute;
                  z-index: 1;
                  top: 0;
                  left: 0;
                  width: 100%;
                  height: 100%;
                  transition: all ease .3s; }
              main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow {
                z-index: 4;
                position: absolute;
                right: 20px;
                bottom: 20px;
                background-color: #fff;
                width: 40px;
                height: 40px;
                border-radius: 50%;
                display: block;
                filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
                overflow: hidden; }
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:before {
                  content: "";
                  display: block;
                  background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                  position: absolute;
                  top: 0;
                  left: 0;
                  right: 0;
                  bottom: 0;
                  opacity: 0;
                  transition: all ease .3s; }
                main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:after {
                  font-family: 'icomoon_activecore' !important;
                  speak: never;
                  font-style: normal;
                  font-weight: normal;
                  font-variant: normal;
                  text-transform: none;
                  line-height: 1;
                  /* Enable Ligatures ================ */
                  letter-spacing: 0 !important;
                  -webkit-font-feature-settings: "liga";
                  -moz-font-feature-settings: "liga=1";
                  -moz-font-feature-settings: "liga";
                  -ms-font-feature-settings: "liga" 1;
                  font-feature-settings: "liga";
                  -webkit-font-variant-ligatures: discretionary-ligatures;
                  font-variant-ligatures: discretionary-ligatures;
                  /* Better Font Rendering =========== */
                  -webkit-font-smoothing: antialiased;
                  -moz-osx-font-smoothing: grayscale;
                  content: var(--icon-arrow-right);
                  font-size: 14px;
                  color: #000000;
                  position: absolute;
                  top: 50%;
                  left: 50%;
                  transform: translate(-50%, -50%);
                  transition: all ease .3s; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin-bottom: 15px; }
              main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .date {
                font-family: Inter;
                font-weight: 600;
                font-size: 14px;
                line-height: 26px;
                letter-spacing: 0.05em;
                text-align: left;
                color: #c6c6c6; }
              main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .category {
                font-family: Inter;
                font-weight: bold;
                font-size: 12px;
                letter-spacing: 0.05em;
                line-height: 24px;
                width: 136px;
                text-align: center;
                color: #000;
                border: 1px solid #000000;
                order: 2;
                border-radius: 9999px; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
              font-size: 14px;
              letter-spacing: 0.1em;
              line-height: 28px;
              text-align: left;
              color: #000; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner:after {
              opacity: .56; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner img {
              transform: scale(1.2); }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:before {
              opacity: 1; }
            main.journal section.client .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:after {
              color: #fff; }
  main.journal section.client p.action {
    text-align: right;
    margin-top: 65px; }
    @media screen and (max-width: 767px) {
      main.journal section.client p.action {
        text-align: left;
        margin-top: 40px; } }
    main.journal section.client p.action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        main.journal section.client p.action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.journal section.client p.action a span {
        position: relative; }
        main.journal section.client p.action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.journal section.client p.action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.journal section.client p.action a:hover {
        color: #fff; }
        main.journal section.client p.action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
main.journal section.link {
  background-color: #fff; }
  main.journal section.link .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    padding: 100px 0 180px;
    border-top: 1px solid #C6C6C6; }
    @media screen and (max-width: 767px) {
      main.journal section.link .container {
        width: calc(100% - 40px); } }
    @media screen and (max-width: 767px) {
      main.journal section.link .container {
        padding: 64px 0 80px; } }
    main.journal section.link .container ul {
      display: flex;
      justify-content: center; }
      @media screen and (max-width: 767px) {
        main.journal section.link .container ul {
          margin: 0 -8px; } }
      main.journal section.link .container ul li {
        margin: 0 20px; }
        @media screen and (max-width: 767px) {
          main.journal section.link .container ul li {
            flex: 0 0 50%;
            padding: 0 8px;
            margin: 0; } }
        main.journal section.link .container ul li a {
          position: relative;
          width: 219px;
          background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
          filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
          overflow: hidden;
          display: inline-block;
          font-family: Inter;
          font-weight: 600;
          font-size: 16px;
          line-height: 48px;
          text-align: center;
          color: #000;
          transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
          border-radius: 9999px;
          z-index: 1;
          width: 340px;
          height: 100px;
          display: flex;
          justify-content: center;
          align-items: center; }
          @media screen and (max-width: 767px) {
            main.journal section.link .container ul li a {
              width: 184px;
              line-height: 40px;
              font-family: Inter;
              font-weight: 600;
              font-size: 14px;
              color: #000; } }
          main.journal section.link .container ul li a span {
            position: relative; }
            main.journal section.link .container ul li a span:after {
              font-family: 'icomoon_activecore' !important;
              speak: never;
              font-style: normal;
              font-weight: normal;
              font-variant: normal;
              text-transform: none;
              line-height: 1;
              /* Enable Ligatures ================ */
              letter-spacing: 0 !important;
              -webkit-font-feature-settings: "liga";
              -moz-font-feature-settings: "liga=1";
              -moz-font-feature-settings: "liga";
              -ms-font-feature-settings: "liga" 1;
              font-feature-settings: "liga";
              -webkit-font-variant-ligatures: discretionary-ligatures;
              font-variant-ligatures: discretionary-ligatures;
              /* Better Font Rendering =========== */
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              content: var(--icon-arrow-right);
              font-size: 14px;
              margin-left: 12px;
              vertical-align: 0; }
          main.journal section.link .container ul li a:before {
            content: "";
            display: block;
            position: absolute;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
            transition: all ease .3s;
            transform: scaleX(0);
            transform-origin: right;
            transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
          main.journal section.link .container ul li a:hover {
            color: #fff; }
            main.journal section.link .container ul li a:hover:before {
              left: 0;
              transform: scaleX(1);
              transform-origin: left; }
          @media screen and (max-width: 767px) {
            main.journal section.link .container ul li a {
              width: 100%;
              height: 48px; } }
          main.journal section.link .container ul li a:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-link);
            font-size: 16px;
            position: absolute;
            right: 40px;
            top: 50%;
            transform: translateY(-50%); }
            @media screen and (max-width: 767px) {
              main.journal section.link .container ul li a:after {
                right: 18px;
                font-size: 12px; } }
          main.journal section.link .container ul li a span {
            line-height: 1; }
            main.journal section.link .container ul li a span svg {
              vertical-align: top; }
              @media screen and (max-width: 767px) {
                main.journal section.link .container ul li a span svg {
                  width: 72px; } }
              main.journal section.link .container ul li a span svg path {
                transition: all ease .3s; }
            main.journal section.link .container ul li a span:after {
              display: none; }
          main.journal section.link .container ul li a:hover span svg path {
            fill: #fff; }

main.journal-member:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-member:after {
      height: 80px; } }
main.journal-member header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-member header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.journal-member header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.journal-member header .container {
        width: calc(100% - 40px); } }
    main.journal-member header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.journal-member header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.journal-member header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.journal-member header .container h1 span {
            top: 68px; } }
        .is-loaded main.journal-member header .container h1 span {
          top: 0; }
main.journal-member .body {
  background-color: #fff;
  padding-bottom: 180px; }
  @media screen and (max-width: 767px) {
    main.journal-member .body {
      padding-bottom: 80px; } }
  main.journal-member .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.journal-member .body .container {
        width: calc(100% - 40px); } }
  main.journal-member .body .lead {
    padding-top: 136px;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1;
    padding-bottom: 48px;
    border-bottom: 1px solid #C6C6C6;
    margin-bottom: 64px; }
    @media screen and (max-width: 767px) {
      main.journal-member .body .lead {
        padding-top: 60px; } }
    @media screen and (max-width: 767px) {
      main.journal-member .body .lead {
        font-size: 14px;
        line-height: 30px;
        padding-bottom: 40px;
        margin-bottom: 48px; } }
  main.journal-member .body ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -28px;
    gap: 58px 0; }
    @media screen and (max-width: 767px) {
      main.journal-member .body ul {
        display: block;
        margin: 0; } }
    main.journal-member .body ul li {
      flex: 0 0 33.333333%;
      padding: 0 28px; }
      @media screen and (max-width: 767px) {
        main.journal-member .body ul li {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        main.journal-member .body ul li + li {
          margin-top: 50px; } }
      main.journal-member .body ul li a {
        display: block; }
        main.journal-member .body ul li a figure {
          position: relative;
          background-color: #fff;
          padding: 12px;
          border-radius: 10px;
          margin-bottom: 36px;
          box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
          @media screen and (max-width: 767px) {
            main.journal-member .body ul li a figure {
              padding: 11px;
              margin-bottom: 24px; } }
          main.journal-member .body ul li a figure div.inner {
            position: relative;
            border-radius: 10px;
            overflow: hidden;
            background-color: #000;
            padding-top: calc(700 / 1130 * 100%); }
            main.journal-member .body ul li a figure div.inner:before {
              content: "";
              position: absolute;
              z-index: 2;
              top: 11px;
              left: 11px;
              background-image: url("../images/common/header_logo.svg");
              background-size: 100% 100%;
              display: block;
              width: 94px;
              height: calc(94 / 203 * 29px); }
            main.journal-member .body ul li a figure div.inner:after {
              content: "";
              position: absolute;
              z-index: 3;
              background-color: #000;
              opacity: 0;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              transition: all ease .3s; }
            main.journal-member .body ul li a figure div.inner img {
              position: absolute;
              z-index: 1;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              transition: all ease .3s; }
          main.journal-member .body ul li a figure span.arrow {
            z-index: 4;
            position: absolute;
            right: 20px;
            bottom: 20px;
            background-color: #fff;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: block;
            filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
            overflow: hidden; }
            main.journal-member .body ul li a figure span.arrow:before {
              content: "";
              display: block;
              background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
              position: absolute;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              opacity: 0;
              transition: all ease .3s; }
            main.journal-member .body ul li a figure span.arrow:after {
              font-family: 'icomoon_activecore' !important;
              speak: never;
              font-style: normal;
              font-weight: normal;
              font-variant: normal;
              text-transform: none;
              line-height: 1;
              /* Enable Ligatures ================ */
              letter-spacing: 0 !important;
              -webkit-font-feature-settings: "liga";
              -moz-font-feature-settings: "liga=1";
              -moz-font-feature-settings: "liga";
              -ms-font-feature-settings: "liga" 1;
              font-feature-settings: "liga";
              -webkit-font-variant-ligatures: discretionary-ligatures;
              font-variant-ligatures: discretionary-ligatures;
              /* Better Font Rendering =========== */
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              content: var(--icon-arrow-right);
              font-size: 14px;
              color: #000000;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              transition: all ease .3s; }
        main.journal-member .body ul li a .content .meta {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 15px; }
          main.journal-member .body ul li a .content .meta .date {
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            line-height: 26px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #c6c6c6; }
          main.journal-member .body ul li a .content .meta .category {
            font-family: Inter;
            font-weight: bold;
            font-size: 12px;
            letter-spacing: 0.05em;
            line-height: 24px;
            width: 136px;
            text-align: center;
            color: #000;
            border: 1px solid #000000;
            order: 2;
            border-radius: 9999px; }
        main.journal-member .body ul li a .content .title {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px;
          text-align: left;
          color: #000; }
        main.journal-member .body ul li a:hover figure div.inner:after {
          opacity: .56; }
        main.journal-member .body ul li a:hover figure div.inner img {
          transform: scale(1.2); }
        main.journal-member .body ul li a:hover figure span.arrow:before {
          opacity: 1; }
        main.journal-member .body ul li a:hover figure span.arrow:after {
          color: #fff; }
      @media screen and (max-width: 767px) {
        main.journal-member .body ul li.pickup {
          margin-bottom: 0; }
          main.journal-member .body ul li.pickup a .content .meta {
            display: block; }
            main.journal-member .body ul li.pickup a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 14px;
              letter-spacing: 0.05em;
              line-height: 32px;
              text-align: center;
              color: #fff;
              width: 164px;
              background-color: #000;
              border-radius: 9999px;
              margin-bottom: 32px; } }
      @media screen and (min-width: 768px) {
        main.journal-member .body ul li.pickup {
          flex: 0 0 100%;
          margin-bottom: 80px; }
          main.journal-member .body ul li.pickup a {
            display: flex; }
            main.journal-member .body ul li.pickup a figure {
              flex: 0 0 calc(605 / 1100 * 100%);
              padding: 20px;
              border-radius: 14px;
              margin-bottom: 0;
              height: 100%; }
              main.journal-member .body ul li.pickup a figure div.inner {
                border-radius: 14px; }
                main.journal-member .body ul li.pickup a figure div.inner:before {
                  top: 20px;
                  left: 27px;
                  width: 158px;
                  height: calc(158 / 203 * 29px); }
              main.journal-member .body ul li.pickup a figure span.arrow {
                width: 48px;
                height: 48px;
                right: 36px;
                bottom: 36px; }
                main.journal-member .body ul li.pickup a figure span.arrow:after {
                  font-size: 17px; }
            main.journal-member .body ul li.pickup a .content {
              flex: 0 0 calc(495 / 1100 * 100%);
              padding: 0 72px; }
              main.journal-member .body ul li.pickup a .content .meta {
                display: block; }
                main.journal-member .body ul li.pickup a .content .meta .category {
                  font-family: Inter;
                  font-weight: bold;
                  font-size: 14px;
                  letter-spacing: 0.05em;
                  line-height: 32px;
                  text-align: center;
                  color: #fff;
                  width: 164px;
                  line-height: 30px;
                  margin-bottom: 40px;
                  border-radius: 9999px;
                  background-color: #000; }
                main.journal-member .body ul li.pickup a .content .meta .date {
                  font-family: Inter;
                  font-weight: 600;
                  font-size: 18px;
                  line-height: 21px;
                  letter-spacing: 0.05em;
                  text-align: left;
                  color: #c6c6c6;
                  margin-bottom: 20px; }
              main.journal-member .body ul li.pickup a .content .title {
                font-weight: 500;
                font-size: 20px;
                letter-spacing: 0.1em;
                line-height: 44px;
                text-align: left;
                color: #000; } }
  main.journal-member .body nav.pagination {
    margin-top: 120px; }
    main.journal-member .body nav.pagination .nav-links {
      display: flex;
      justify-content: center; }
      main.journal-member .body nav.pagination .nav-links .page-numbers {
        position: relative;
        display: block;
        margin: 0 8px;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        line-height: 38px;
        border: 1px solid #000;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        letter-spacing: 0.05em;
        text-align: center;
        color: #000; }
      main.journal-member .body nav.pagination .nav-links .page-numbers:not(.current):not(.prev):not(.next) {
        border-color: transparent; }
      main.journal-member .body nav.pagination .nav-links .prev {
        position: relative;
        border: none;
        color: transparent;
        margin-right: 40px; }
        main.journal-member .body nav.pagination .nav-links .prev:before {
          color: #000;
          position: absolute;
          top: 0;
          left: 0;
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-left);
          font-size: 40px; }
      main.journal-member .body nav.pagination .nav-links .next {
        position: relative;
        border: none;
        color: transparent;
        margin-left: 40px; }
        main.journal-member .body nav.pagination .nav-links .next:before {
          color: #000;
          position: absolute;
          top: 0;
          left: 0;
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 40px; }

main.journal-member-detail header {
  padding: 170px 0 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-member-detail header {
      padding: 123px 0 0; } }
  main.journal-member-detail header .secondary {
    padding-bottom: 56px; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail header .secondary {
        padding-bottom: 64px; } }
    main.journal-member-detail header .secondary .container {
      max-width: 1100px;
      margin: 0 auto;
      width: calc(100% - 120px);
      max-width: 1220px; }
      @media screen and (max-width: 767px) {
        main.journal-member-detail header .secondary .container {
          width: calc(100% - 40px); } }
      main.journal-member-detail header .secondary .container .type {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 21px;
        letter-spacing: 0.03em;
        text-align: left; }
  main.journal-member-detail header .primary .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px;
    padding-bottom: 36px;
    border-bottom: 1px solid #C6C6C6; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail header .primary .container {
        width: calc(100% - 40px); } }
    @media screen and (max-width: 767px) {
      main.journal-member-detail header .primary .container {
        padding-bottom: 40px; } }
    main.journal-member-detail header .primary .container .meta {
      margin-bottom: 36px;
      display: flex; }
      @media screen and (max-width: 767px) {
        main.journal-member-detail header .primary .container .meta {
          margin-bottom: 24px; } }
      main.journal-member-detail header .primary .container .meta .date {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 32px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #c6c6c6;
        margin-right: 24px; }
        @media screen and (max-width: 767px) {
          main.journal-member-detail header .primary .container .meta .date {
            font-size: 14px;
            letter-spacing: 0.05em; } }
      main.journal-member-detail header .primary .container .meta .category {
        font-weight: 500;
        font-size: 14px;
        line-height: 32px;
        text-align: center;
        color: #fff;
        background-color: #000000;
        border-radius: 9999px;
        min-width: 146px; }
    main.journal-member-detail header .primary .container h1 {
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 0.1em;
      line-height: 48px; }
      @media screen and (max-width: 767px) {
        main.journal-member-detail header .primary .container h1 {
          font-size: 18px;
          letter-spacing: 0.03em;
          line-height: 34px; } }
main.journal-member-detail .body {
  background-color: #fff;
  padding: 80px 0 168px; }
  @media screen and (max-width: 767px) {
    main.journal-member-detail .body {
      padding: 40px 0 80px; } }
  main.journal-member-detail .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail .body .container {
        width: calc(100% - 40px); } }
  main.journal-member-detail .body .content *:first-child {
    margin-top: 0 !important; }
  main.journal-member-detail .body .content *:last-child {
    margin-bottom: 0 !important; }
  main.journal-member-detail .body .content figure {
    margin: 80px 0; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail .body .content figure {
        margin: 32px 0; } }
    main.journal-member-detail .body .content figure img {
      border-radius: 10px; }
  main.journal-member-detail .body .content p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail .body .content p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.journal-member-detail .body .content h2 {
    font-weight: 500;
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: left;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail .body .content h2 {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 28px; } }
  main.journal-member-detail .body nav.pager {
    margin-top: 80px;
    border-top: 1px solid #C6C6C6;
    padding-top: 56px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 40px; }
    @media screen and (max-width: 767px) {
      main.journal-member-detail .body nav.pager {
        margin-top: 56px;
        font-size: 12px; } }
    main.journal-member-detail .body nav.pager ul {
      position: relative;
      height: 0; }
      main.journal-member-detail .body nav.pager ul li {
        position: absolute; }
        main.journal-member-detail .body nav.pager ul li.prev {
          left: 0; }
        main.journal-member-detail .body nav.pager ul li.next {
          right: 0; }
    main.journal-member-detail .body nav.pager .back {
      text-align: center; }

main.journal-client:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-client:after {
      height: 80px; } }
main.journal-client header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-client header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.journal-client header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.journal-client header .container {
        width: calc(100% - 40px); } }
    main.journal-client header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.journal-client header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.journal-client header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.journal-client header .container h1 span {
            top: 68px; } }
        .is-loaded main.journal-client header .container h1 span {
          top: 0; }
main.journal-client .body {
  background-color: #fff;
  padding-bottom: 180px; }
  @media screen and (max-width: 767px) {
    main.journal-client .body {
      padding-bottom: 80px; } }
  main.journal-client .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.journal-client .body .container {
        width: calc(100% - 40px); } }
  main.journal-client .body .lead {
    padding-top: 136px;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1;
    padding-bottom: 48px;
    border-bottom: 1px solid #C6C6C6;
    margin-bottom: 64px; }
    @media screen and (max-width: 767px) {
      main.journal-client .body .lead {
        padding-top: 60px; } }
    @media screen and (max-width: 767px) {
      main.journal-client .body .lead {
        font-size: 14px;
        line-height: 30px;
        padding-bottom: 40px;
        margin-bottom: 48px; } }
  main.journal-client .body ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -28px;
    gap: 58px 0; }
    @media screen and (max-width: 767px) {
      main.journal-client .body ul {
        display: block;
        margin: 0; } }
    main.journal-client .body ul li {
      flex: 0 0 33.333333%;
      padding: 0 28px; }
      @media screen and (max-width: 767px) {
        main.journal-client .body ul li {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        main.journal-client .body ul li + li {
          margin-top: 50px; } }
      main.journal-client .body ul li a {
        display: block; }
        main.journal-client .body ul li a figure {
          position: relative;
          background-color: #fff;
          padding: 12px;
          border-radius: 10px;
          margin-bottom: 36px;
          box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
          @media screen and (max-width: 767px) {
            main.journal-client .body ul li a figure {
              padding: 11px;
              margin-bottom: 24px; } }
          main.journal-client .body ul li a figure div.inner {
            position: relative;
            border-radius: 10px;
            overflow: hidden;
            background-color: #000;
            padding-top: calc(700 / 1130 * 100%); }
            main.journal-client .body ul li a figure div.inner:before {
              content: "";
              position: absolute;
              z-index: 2;
              top: 11px;
              left: 11px;
              background-image: url("../images/common/header_logo.svg");
              background-size: 100% 100%;
              display: block;
              width: 94px;
              height: calc(94 / 203 * 29px); }
            main.journal-client .body ul li a figure div.inner:after {
              content: "";
              position: absolute;
              z-index: 3;
              background-color: #000;
              opacity: 0;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              transition: all ease .3s; }
            main.journal-client .body ul li a figure div.inner img {
              position: absolute;
              z-index: 1;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              transition: all ease .3s; }
          main.journal-client .body ul li a figure span.arrow {
            z-index: 4;
            position: absolute;
            right: 20px;
            bottom: 20px;
            background-color: #fff;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: block;
            filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
            overflow: hidden; }
            main.journal-client .body ul li a figure span.arrow:before {
              content: "";
              display: block;
              background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
              position: absolute;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              opacity: 0;
              transition: all ease .3s; }
            main.journal-client .body ul li a figure span.arrow:after {
              font-family: 'icomoon_activecore' !important;
              speak: never;
              font-style: normal;
              font-weight: normal;
              font-variant: normal;
              text-transform: none;
              line-height: 1;
              /* Enable Ligatures ================ */
              letter-spacing: 0 !important;
              -webkit-font-feature-settings: "liga";
              -moz-font-feature-settings: "liga=1";
              -moz-font-feature-settings: "liga";
              -ms-font-feature-settings: "liga" 1;
              font-feature-settings: "liga";
              -webkit-font-variant-ligatures: discretionary-ligatures;
              font-variant-ligatures: discretionary-ligatures;
              /* Better Font Rendering =========== */
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              content: var(--icon-arrow-right);
              font-size: 14px;
              color: #000000;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              transition: all ease .3s; }
        main.journal-client .body ul li a .content .meta {
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 15px; }
          main.journal-client .body ul li a .content .meta .date {
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            line-height: 26px;
            letter-spacing: 0.05em;
            text-align: left;
            color: #c6c6c6; }
          main.journal-client .body ul li a .content .meta .category {
            font-family: Inter;
            font-weight: bold;
            font-size: 12px;
            letter-spacing: 0.05em;
            line-height: 24px;
            width: 136px;
            text-align: center;
            color: #000;
            border: 1px solid #000000;
            order: 2;
            border-radius: 9999px; }
        main.journal-client .body ul li a .content .title {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px;
          text-align: left;
          color: #000; }
        main.journal-client .body ul li a:hover figure div.inner:after {
          opacity: .56; }
        main.journal-client .body ul li a:hover figure div.inner img {
          transform: scale(1.2); }
        main.journal-client .body ul li a:hover figure span.arrow:before {
          opacity: 1; }
        main.journal-client .body ul li a:hover figure span.arrow:after {
          color: #fff; }
      @media screen and (max-width: 767px) {
        main.journal-client .body ul li.pickup {
          margin-bottom: 0; }
          main.journal-client .body ul li.pickup a .content .meta {
            display: block; }
            main.journal-client .body ul li.pickup a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 14px;
              letter-spacing: 0.05em;
              line-height: 32px;
              text-align: center;
              color: #fff;
              width: 164px;
              background-color: #000;
              border-radius: 9999px;
              margin-bottom: 32px; } }
      @media screen and (min-width: 768px) {
        main.journal-client .body ul li.pickup {
          flex: 0 0 100%;
          margin-bottom: 80px; }
          main.journal-client .body ul li.pickup a {
            display: flex; }
            main.journal-client .body ul li.pickup a figure {
              flex: 0 0 calc(605 / 1100 * 100%);
              padding: 20px;
              border-radius: 14px;
              margin-bottom: 0;
              height: 100%; }
              main.journal-client .body ul li.pickup a figure div.inner {
                border-radius: 14px; }
                main.journal-client .body ul li.pickup a figure div.inner:before {
                  top: 20px;
                  left: 27px;
                  width: 158px;
                  height: calc(158 / 203 * 29px); }
              main.journal-client .body ul li.pickup a figure span.arrow {
                width: 48px;
                height: 48px;
                right: 36px;
                bottom: 36px; }
                main.journal-client .body ul li.pickup a figure span.arrow:after {
                  font-size: 17px; }
            main.journal-client .body ul li.pickup a .content {
              flex: 0 0 calc(495 / 1100 * 100%);
              padding: 0 72px; }
              main.journal-client .body ul li.pickup a .content .meta {
                display: block; }
                main.journal-client .body ul li.pickup a .content .meta .category {
                  font-family: Inter;
                  font-weight: bold;
                  font-size: 14px;
                  letter-spacing: 0.05em;
                  line-height: 32px;
                  text-align: center;
                  color: #fff;
                  width: 164px;
                  line-height: 30px;
                  margin-bottom: 40px;
                  border-radius: 9999px;
                  background-color: #000; }
                main.journal-client .body ul li.pickup a .content .meta .date {
                  font-family: Inter;
                  font-weight: 600;
                  font-size: 18px;
                  line-height: 21px;
                  letter-spacing: 0.05em;
                  text-align: left;
                  color: #c6c6c6;
                  margin-bottom: 20px; }
              main.journal-client .body ul li.pickup a .content .title {
                font-weight: 500;
                font-size: 20px;
                letter-spacing: 0.1em;
                line-height: 44px;
                text-align: left;
                color: #000; } }
  main.journal-client .body nav.pagination {
    margin-top: 120px; }
    main.journal-client .body nav.pagination .nav-links {
      display: flex;
      justify-content: center; }
      main.journal-client .body nav.pagination .nav-links .page-numbers {
        position: relative;
        display: block;
        margin: 0 8px;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        line-height: 38px;
        border: 1px solid #000;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        letter-spacing: 0.05em;
        text-align: center;
        color: #000; }
      main.journal-client .body nav.pagination .nav-links .page-numbers:not(.current):not(.prev):not(.next) {
        border-color: transparent; }
      main.journal-client .body nav.pagination .nav-links .prev {
        position: relative;
        border: none;
        color: transparent;
        margin-right: 40px; }
        main.journal-client .body nav.pagination .nav-links .prev:before {
          color: #000;
          position: absolute;
          top: 0;
          left: 0;
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-left);
          font-size: 40px; }
      main.journal-client .body nav.pagination .nav-links .next {
        position: relative;
        border: none;
        color: transparent;
        margin-left: 40px; }
        main.journal-client .body nav.pagination .nav-links .next:before {
          color: #000;
          position: absolute;
          top: 0;
          left: 0;
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 40px; }

main.journal-client-detail header {
  padding: 170px 0 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.journal-client-detail header {
      padding: 123px 0 0; } }
  main.journal-client-detail header .secondary {
    padding-bottom: 56px; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail header .secondary {
        padding-bottom: 64px; } }
    main.journal-client-detail header .secondary .container {
      max-width: 1100px;
      margin: 0 auto;
      width: calc(100% - 120px);
      max-width: 1220px; }
      @media screen and (max-width: 767px) {
        main.journal-client-detail header .secondary .container {
          width: calc(100% - 40px); } }
      main.journal-client-detail header .secondary .container .type {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 21px;
        letter-spacing: 0.03em;
        text-align: left; }
  main.journal-client-detail header .primary .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px;
    padding-bottom: 36px;
    border-bottom: 1px solid #C6C6C6; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail header .primary .container {
        width: calc(100% - 40px); } }
    @media screen and (max-width: 767px) {
      main.journal-client-detail header .primary .container {
        padding-bottom: 40px; } }
    main.journal-client-detail header .primary .container .meta {
      margin-bottom: 36px;
      display: flex; }
      @media screen and (max-width: 767px) {
        main.journal-client-detail header .primary .container .meta {
          margin-bottom: 24px; } }
      main.journal-client-detail header .primary .container .meta .date {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 32px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #c6c6c6;
        margin-right: 24px; }
        @media screen and (max-width: 767px) {
          main.journal-client-detail header .primary .container .meta .date {
            font-size: 14px;
            letter-spacing: 0.05em; } }
      main.journal-client-detail header .primary .container .meta .category {
        font-weight: 500;
        font-size: 14px;
        line-height: 32px;
        text-align: center;
        color: #fff;
        background-color: #000000;
        border-radius: 9999px;
        min-width: 146px; }
    main.journal-client-detail header .primary .container h1 {
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 0.1em;
      line-height: 48px; }
      @media screen and (max-width: 767px) {
        main.journal-client-detail header .primary .container h1 {
          font-size: 18px;
          letter-spacing: 0.03em;
          line-height: 34px; } }
main.journal-client-detail .body {
  background-color: #fff;
  padding: 80px 0 168px; }
  @media screen and (max-width: 767px) {
    main.journal-client-detail .body {
      padding: 40px 0 80px; } }
  main.journal-client-detail .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail .body .container {
        width: calc(100% - 40px); } }
  main.journal-client-detail .body .content *:first-child {
    margin-top: 0 !important; }
  main.journal-client-detail .body .content *:last-child {
    margin-bottom: 0 !important; }
  main.journal-client-detail .body .content figure {
    margin: 80px 0; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail .body .content figure {
        margin: 32px 0; } }
    main.journal-client-detail .body .content figure img {
      border-radius: 10px; }
  main.journal-client-detail .body .content p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail .body .content p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.journal-client-detail .body .content h2 {
    font-weight: 500;
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: left;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail .body .content h2 {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 28px; } }
  main.journal-client-detail .body nav.pager {
    margin-top: 80px;
    border-top: 1px solid #C6C6C6;
    padding-top: 56px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 40px; }
    @media screen and (max-width: 767px) {
      main.journal-client-detail .body nav.pager {
        margin-top: 56px;
        font-size: 12px; } }
    main.journal-client-detail .body nav.pager ul {
      position: relative;
      height: 0; }
      main.journal-client-detail .body nav.pager ul li {
        position: absolute; }
        main.journal-client-detail .body nav.pager ul li.prev {
          left: 0; }
        main.journal-client-detail .body nav.pager ul li.next {
          right: 0; }
    main.journal-client-detail .body nav.pager .back {
      text-align: center; }

main.recruit header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.recruit header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.recruit header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.recruit header .container {
        width: calc(100% - 40px); } }
    main.recruit header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.recruit header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.recruit header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.recruit header .container h1 span {
            top: 68px; } }
        .is-loaded main.recruit header .container h1 span {
          top: 0; }
main.recruit section.intro {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.recruit section.intro {
      padding-top: 60px; } }
  main.recruit section.intro .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.recruit section.intro .container {
        width: calc(100% - 40px); } }
  main.recruit section.intro .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.recruit section.intro .cols {
        display: contents; } }
    main.recruit section.intro .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.recruit section.intro .cols > div {
          display: contents; } }
  main.recruit section.intro .copy {
    font-weight: 500;
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 60px;
    margin-bottom: 32px; }
    @media screen and (max-width: 767px) {
      main.recruit section.intro .copy {
        font-size: 20px;
        letter-spacing: 0.1em;
        line-height: 40px;
        margin-bottom: 22px; } }
  main.recruit section.intro p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    max-width: 460px; }
    @media screen and (max-width: 767px) {
      main.recruit section.intro p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.recruit section.intro figure {
    margin-right: -60px; }
    @media screen and (max-width: 767px) {
      main.recruit section.intro figure {
        margin-top: 32px;
        margin-right: 0; } }
    main.recruit section.intro figure img {
      border-radius: 14px;
      box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1); }
main.recruit section.value {
  padding: 180px 0 140px;
  background-color: #fff;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    main.recruit section.value {
      padding: 70px 0 50px; } }
  main.recruit section.value .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.recruit section.value .container {
        width: calc(100% - 40px); } }
  main.recruit section.value .cols {
    display: flex;
    margin: 0 -15px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value .cols {
        display: contents; } }
    main.recruit section.value .cols > div {
      flex: 0 0 50%;
      padding: 0 15px; }
      @media screen and (max-width: 767px) {
        main.recruit section.value .cols > div {
          display: contents; } }
  main.recruit section.value h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 66px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.recruit section.value h2 {
        margin-bottom: 39px; } }
  main.recruit section.value .title {
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 1;
    text-align: left;
    color: #000;
    margin-bottom: 32px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value .title {
        font-size: 14px;
        letter-spacing: 0.1em;
        margin-bottom: 24px; } }
  main.recruit section.value .slogan {
    font-family: Inter;
    font-weight: 600;
    font-size: 73px;
    line-height: 89px;
    letter-spacing: 0.03em;
    text-align: left;
    color: #000;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value .slogan {
        font-size: 40px;
        line-height: 49px;
        letter-spacing: 0.03em;
        margin-bottom: 32px; } }
  main.recruit section.value p {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    text-align: left;
    color: #000;
    max-width: 450px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        max-width: none; } }
  main.recruit section.value figure {
    margin-right: -157px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value figure {
        margin: 0;
        margin-top: 32px; } }
    main.recruit section.value figure img {
      border-radius: 14px;
      box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1); }
  main.recruit section.value dl {
    margin-top: 84px; }
    @media screen and (max-width: 767px) {
      main.recruit section.value dl {
        margin-top: 8px; } }
    main.recruit section.value dl div {
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      @media screen and (max-width: 767px) {
        main.recruit section.value dl div {
          display: contents; } }
      main.recruit section.value dl div + div {
        border-top: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.recruit section.value dl div + div dt {
            border-top: 1px solid #C6C6C6; } }
      main.recruit section.value dl div dt {
        padding: 40px 0;
        flex: 0 0 50%;
        font-family: Inter;
        font-weight: 600;
        font-size: 64px;
        letter-spacing: 0.03em; }
        @media screen and (max-width: 767px) {
          main.recruit section.value dl div dt {
            padding: 40px 0 0;
            font-size: 40px;
            line-height: 49px;
            letter-spacing: 0.03em; } }
      main.recruit section.value dl div dd {
        flex: 0 0 50%;
        padding: 40px 0;
        padding-left: 32px; }
        @media screen and (max-width: 767px) {
          main.recruit section.value dl div dd {
            padding: 30px 0 32px; } }
        main.recruit section.value dl div dd .title {
          font-weight: 500;
          font-size: 18px;
          letter-spacing: 0.1em;
          line-height: 1;
          margin-bottom: 25px; }
          @media screen and (max-width: 767px) {
            main.recruit section.value dl div dd .title {
              font-size: 16px;
              letter-spacing: 0.1em;
              margin-bottom: 16px; } }
        main.recruit section.value dl div dd p {
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.recruit section.value dl div dd p {
              font-size: 14px;
              letter-spacing: 0.03em;
              line-height: 30px; } }
main.recruit section.about {
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff; }
  main.recruit section.about .wrapper {
    padding: 138px 0 120px;
    width: 100%;
    background-image: url("../images/common/wrapper_conner_01.svg"), url("../images/common/wrapper_conner_02.svg"), url("../images/common/wrapper_conner_03.svg"), url("../images/common/wrapper_conner_04.svg");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: 0 0, 100% 0, 100% 100%, 0 100%; }
    @media screen and (max-width: 767px) {
      main.recruit section.about .wrapper {
        padding: 78px 0 80px;
        background-size: 16px 16px 16px 16px; } }
  main.recruit section.about .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.recruit section.about .container {
        width: calc(100% - 40px); } }
  main.recruit section.about h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      main.recruit section.about h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.recruit section.about h2 {
        margin-bottom: 40px; } }
  main.recruit section.about .slide {
    max-width: 900px;
    margin: 0 auto; }
main.recruit section.membersvoice {
  padding: 160px 0 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.recruit section.membersvoice {
      padding: 78px 0 0; } }
  main.recruit section.membersvoice .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.recruit section.membersvoice .container {
        width: calc(100% - 40px); } }
    main.recruit section.membersvoice .container h2 {
      font-family: Inter;
      font-weight: 600;
      font-size: 28px;
      line-height: 34px;
      letter-spacing: 0.05em;
      text-align: left;
      color: #c6c6c6;
      margin-bottom: 80px; }
      @media screen and (max-width: 767px) {
        main.recruit section.membersvoice .container h2 {
          font-size: 20px;
          line-height: 24px; } }
      @media screen and (max-width: 767px) {
        main.recruit section.membersvoice .container h2 {
          margin-bottom: 40px; } }
    main.recruit section.membersvoice .container .pc ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -28px;
      gap: 58px 0; }
      @media screen and (max-width: 767px) {
        main.recruit section.membersvoice .container .pc ul {
          display: block;
          margin: 0; } }
      main.recruit section.membersvoice .container .pc ul li {
        flex: 0 0 33.333333%;
        padding: 0 28px; }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container .pc ul li {
            padding: 0; } }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container .pc ul li + li {
            margin-top: 50px; } }
        main.recruit section.membersvoice .container .pc ul li a {
          display: block; }
          main.recruit section.membersvoice .container .pc ul li a figure {
            position: relative;
            background-color: #fff;
            padding: 12px;
            border-radius: 10px;
            margin-bottom: 36px;
            box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
            @media screen and (max-width: 767px) {
              main.recruit section.membersvoice .container .pc ul li a figure {
                padding: 11px;
                margin-bottom: 24px; } }
            main.recruit section.membersvoice .container .pc ul li a figure div.inner {
              position: relative;
              border-radius: 10px;
              overflow: hidden;
              background-color: #000;
              padding-top: calc(700 / 1130 * 100%); }
              main.recruit section.membersvoice .container .pc ul li a figure div.inner:before {
                content: "";
                position: absolute;
                z-index: 2;
                top: 11px;
                left: 11px;
                background-image: url("../images/common/header_logo.svg");
                background-size: 100% 100%;
                display: block;
                width: 94px;
                height: calc(94 / 203 * 29px); }
              main.recruit section.membersvoice .container .pc ul li a figure div.inner:after {
                content: "";
                position: absolute;
                z-index: 3;
                background-color: #000;
                opacity: 0;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                transition: all ease .3s; }
              main.recruit section.membersvoice .container .pc ul li a figure div.inner img {
                position: absolute;
                z-index: 1;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                transition: all ease .3s; }
            main.recruit section.membersvoice .container .pc ul li a figure span.arrow {
              z-index: 4;
              position: absolute;
              right: 20px;
              bottom: 20px;
              background-color: #fff;
              width: 40px;
              height: 40px;
              border-radius: 50%;
              display: block;
              filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
              overflow: hidden; }
              main.recruit section.membersvoice .container .pc ul li a figure span.arrow:before {
                content: "";
                display: block;
                background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                opacity: 0;
                transition: all ease .3s; }
              main.recruit section.membersvoice .container .pc ul li a figure span.arrow:after {
                font-family: 'icomoon_activecore' !important;
                speak: never;
                font-style: normal;
                font-weight: normal;
                font-variant: normal;
                text-transform: none;
                line-height: 1;
                /* Enable Ligatures ================ */
                letter-spacing: 0 !important;
                -webkit-font-feature-settings: "liga";
                -moz-font-feature-settings: "liga=1";
                -moz-font-feature-settings: "liga";
                -ms-font-feature-settings: "liga" 1;
                font-feature-settings: "liga";
                -webkit-font-variant-ligatures: discretionary-ligatures;
                font-variant-ligatures: discretionary-ligatures;
                /* Better Font Rendering =========== */
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
                content: var(--icon-arrow-right);
                font-size: 14px;
                color: #000000;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                transition: all ease .3s; }
          main.recruit section.membersvoice .container .pc ul li a .content .meta {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px; }
            main.recruit section.membersvoice .container .pc ul li a .content .meta .date {
              font-family: Inter;
              font-weight: 600;
              font-size: 14px;
              line-height: 26px;
              letter-spacing: 0.05em;
              text-align: left;
              color: #c6c6c6; }
            main.recruit section.membersvoice .container .pc ul li a .content .meta .category {
              font-family: Inter;
              font-weight: bold;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 24px;
              width: 136px;
              text-align: center;
              color: #000;
              border: 1px solid #000000;
              order: 2;
              border-radius: 9999px; }
          main.recruit section.membersvoice .container .pc ul li a .content .title {
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 28px;
            text-align: left;
            color: #000; }
          main.recruit section.membersvoice .container .pc ul li a:hover figure div.inner:after {
            opacity: .56; }
          main.recruit section.membersvoice .container .pc ul li a:hover figure div.inner img {
            transform: scale(1.2); }
          main.recruit section.membersvoice .container .pc ul li a:hover figure span.arrow:before {
            opacity: 1; }
          main.recruit section.membersvoice .container .pc ul li a:hover figure span.arrow:after {
            color: #fff; }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container .pc ul li.pickup {
            margin-bottom: 0; }
            main.recruit section.membersvoice .container .pc ul li.pickup a .content .meta {
              display: block; }
              main.recruit section.membersvoice .container .pc ul li.pickup a .content .meta .category {
                font-family: Inter;
                font-weight: bold;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 32px;
                text-align: center;
                color: #fff;
                width: 164px;
                background-color: #000;
                border-radius: 9999px;
                margin-bottom: 32px; } }
        @media screen and (min-width: 768px) {
          main.recruit section.membersvoice .container .pc ul li.pickup {
            flex: 0 0 100%;
            margin-bottom: 80px; }
            main.recruit section.membersvoice .container .pc ul li.pickup a {
              display: flex; }
              main.recruit section.membersvoice .container .pc ul li.pickup a figure {
                flex: 0 0 calc(605 / 1100 * 100%);
                padding: 20px;
                border-radius: 14px;
                margin-bottom: 0;
                height: 100%; }
                main.recruit section.membersvoice .container .pc ul li.pickup a figure div.inner {
                  border-radius: 14px; }
                  main.recruit section.membersvoice .container .pc ul li.pickup a figure div.inner:before {
                    top: 20px;
                    left: 27px;
                    width: 158px;
                    height: calc(158 / 203 * 29px); }
                main.recruit section.membersvoice .container .pc ul li.pickup a figure span.arrow {
                  width: 48px;
                  height: 48px;
                  right: 36px;
                  bottom: 36px; }
                  main.recruit section.membersvoice .container .pc ul li.pickup a figure span.arrow:after {
                    font-size: 17px; }
              main.recruit section.membersvoice .container .pc ul li.pickup a .content {
                flex: 0 0 calc(495 / 1100 * 100%);
                padding: 0 72px; }
                main.recruit section.membersvoice .container .pc ul li.pickup a .content .meta {
                  display: block; }
                  main.recruit section.membersvoice .container .pc ul li.pickup a .content .meta .category {
                    font-family: Inter;
                    font-weight: bold;
                    font-size: 14px;
                    letter-spacing: 0.05em;
                    line-height: 32px;
                    text-align: center;
                    color: #fff;
                    width: 164px;
                    line-height: 30px;
                    margin-bottom: 40px;
                    border-radius: 9999px;
                    background-color: #000; }
                  main.recruit section.membersvoice .container .pc ul li.pickup a .content .meta .date {
                    font-family: Inter;
                    font-weight: 600;
                    font-size: 18px;
                    line-height: 21px;
                    letter-spacing: 0.05em;
                    text-align: left;
                    color: #c6c6c6;
                    margin-bottom: 20px; }
                main.recruit section.membersvoice .container .pc ul li.pickup a .content .title {
                  font-weight: 500;
                  font-size: 20px;
                  letter-spacing: 0.1em;
                  line-height: 44px;
                  text-align: left;
                  color: #000; } }
    main.recruit section.membersvoice .container .sp .slider {
      position: relative;
      margin-right: -20px; }
      @media screen and (max-width: 767px) {
        main.recruit section.membersvoice .container .sp .slider {
          margin-right: 45px; } }
      main.recruit section.membersvoice .container .sp .slider .swiper-button-prev {
        background-image: url("../images/journal/slider_prev.svg");
        background-size: 100% 100%;
        width: 100px;
        height: 100px;
        position: absolute;
        top: 115px;
        left: 0;
        z-index: 2;
        mix-blend-mode: exclusion;
        margin-top: 0;
        opacity: 1; }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container .sp .slider .swiper-button-prev {
            display: none; } }
      main.recruit section.membersvoice .container .sp .slider .swiper-button-next {
        background-image: url("../images/journal/slider_next.svg");
        background-size: 100% 100%;
        width: 100px;
        height: 100px;
        top: 115px;
        right: 20px;
        z-index: 2;
        mix-blend-mode: exclusion;
        margin-top: 0;
        opacity: 1; }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container .sp .slider .swiper-button-next {
            display: none; } }
      main.recruit section.membersvoice .container .sp .slider .swiper-button-disabled {
        display: none; }
      main.recruit section.membersvoice .container .sp .slider .swiper-container {
        overflow: visible;
        box-sizing: border-box; }
        main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper {
          margin: 0 -24px; }
          @media screen and (max-width: 767px) {
            main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper {
              margin: 0 -16px; } }
          main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide {
            box-sizing: border-box;
            padding: 0 24px; }
            @media screen and (max-width: 767px) {
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide {
                padding: 0 16px; } }
            main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a {
              display: block; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                position: relative;
                background-color: #fff;
                padding: 12px;
                border-radius: 10px;
                margin-bottom: 36px;
                box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1); }
                @media screen and (max-width: 767px) {
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure {
                    padding: 11px;
                    margin-bottom: 24px; } }
                main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner {
                  position: relative;
                  border-radius: 10px;
                  overflow: hidden;
                  background-color: #000;
                  padding-top: calc(700 / 1130 * 100%); }
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:before {
                    content: "";
                    position: absolute;
                    z-index: 2;
                    top: 11px;
                    left: 11px;
                    background-image: url("../images/common/header_logo.svg");
                    background-size: 100% 100%;
                    display: block;
                    width: 94px;
                    height: calc(94 / 203 * 29px); }
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner:after {
                    content: "";
                    position: absolute;
                    z-index: 3;
                    background-color: #000;
                    opacity: 0;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    transition: all ease .3s; }
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure div.inner img {
                    position: absolute;
                    z-index: 1;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    transition: all ease .3s; }
                main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow {
                  z-index: 4;
                  position: absolute;
                  right: 20px;
                  bottom: 20px;
                  background-color: #fff;
                  width: 40px;
                  height: 40px;
                  border-radius: 50%;
                  display: block;
                  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
                  overflow: hidden; }
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:before {
                    content: "";
                    display: block;
                    background: linear-gradient(180deg, #43ed84 0%, #3bd9ff 100%);
                    position: absolute;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    opacity: 0;
                    transition: all ease .3s; }
                  main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a figure span.arrow:after {
                    font-family: 'icomoon_activecore' !important;
                    speak: never;
                    font-style: normal;
                    font-weight: normal;
                    font-variant: normal;
                    text-transform: none;
                    line-height: 1;
                    /* Enable Ligatures ================ */
                    letter-spacing: 0 !important;
                    -webkit-font-feature-settings: "liga";
                    -moz-font-feature-settings: "liga=1";
                    -moz-font-feature-settings: "liga";
                    -ms-font-feature-settings: "liga" 1;
                    font-feature-settings: "liga";
                    -webkit-font-variant-ligatures: discretionary-ligatures;
                    font-variant-ligatures: discretionary-ligatures;
                    /* Better Font Rendering =========== */
                    -webkit-font-smoothing: antialiased;
                    -moz-osx-font-smoothing: grayscale;
                    content: var(--icon-arrow-right);
                    font-size: 14px;
                    color: #000000;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    transition: all ease .3s; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px; }
                main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .date {
                  font-family: Inter;
                  font-weight: 600;
                  font-size: 14px;
                  line-height: 26px;
                  letter-spacing: 0.05em;
                  text-align: left;
                  color: #c6c6c6; }
                main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .meta .category {
                  font-family: Inter;
                  font-weight: bold;
                  font-size: 12px;
                  letter-spacing: 0.05em;
                  line-height: 24px;
                  width: 136px;
                  text-align: center;
                  color: #000;
                  border: 1px solid #000000;
                  order: 2;
                  border-radius: 9999px; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a .content .title {
                font-size: 14px;
                letter-spacing: 0.1em;
                line-height: 28px;
                text-align: left;
                color: #000; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner:after {
                opacity: .56; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure div.inner img {
                transform: scale(1.2); }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:before {
                opacity: 1; }
              main.recruit section.membersvoice .container .sp .slider .swiper-container .swiper-wrapper .swiper-slide a:hover figure span.arrow:after {
                color: #fff; }
    main.recruit section.membersvoice .container p.action {
      margin-top: 80px;
      text-align: right; }
      @media screen and (max-width: 767px) {
        main.recruit section.membersvoice .container p.action {
          margin-top: 40px;
          text-align: left; } }
      main.recruit section.membersvoice .container p.action a {
        position: relative;
        width: 219px;
        background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        overflow: hidden;
        display: inline-block;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        line-height: 48px;
        text-align: center;
        color: #000;
        transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
        border-radius: 9999px;
        z-index: 1; }
        @media screen and (max-width: 767px) {
          main.recruit section.membersvoice .container p.action a {
            width: 184px;
            line-height: 40px;
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            color: #000; } }
        main.recruit section.membersvoice .container p.action a span {
          position: relative; }
          main.recruit section.membersvoice .container p.action a span:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-right);
            font-size: 14px;
            margin-left: 12px;
            vertical-align: 0; }
        main.recruit section.membersvoice .container p.action a:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
          transition: all ease .3s;
          transform: scaleX(0);
          transform-origin: right;
          transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
        main.recruit section.membersvoice .container p.action a:hover {
          color: #fff; }
          main.recruit section.membersvoice .container p.action a:hover:before {
            left: 0;
            transform: scaleX(1);
            transform-origin: left; }
main.recruit section.recruitment {
  padding: 120px 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.recruit section.recruitment {
      padding: 78px 0 64px; } }
  main.recruit section.recruitment .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment .container {
        width: calc(100% - 40px); } }
  main.recruit section.recruitment h2 {
    font-family: Inter;
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
    letter-spacing: 0.05em;
    text-align: left;
    color: #c6c6c6;
    margin-bottom: 66px; }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment h2 {
        font-size: 20px;
        line-height: 24px; } }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment h2 {
        margin-bottom: 39px; } }
  main.recruit section.recruitment nav.jump {
    display: none; }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment nav.jump {
        display: block;
        margin-bottom: 56px; } }
    main.recruit section.recruitment nav.jump li a {
      display: block;
      font-weight: 500;
      font-size: 14px;
      line-height: 30px;
      text-align: center;
      border: 1px solid #000000;
      border-radius: 9999px; }
    main.recruit section.recruitment nav.jump li + li {
      margin-top: 16px; }
  main.recruit section.recruitment section {
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment section {
        margin-bottom: 48px; } }
    main.recruit section.recruitment section h3 {
      background-color: #000000;
      font-weight: 500;
      font-size: 18px;
      line-height: 48px;
      letter-spacing: 0.1em;
      color: #fff;
      border-radius: 8px;
      padding: 0 24px;
      margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        main.recruit section.recruitment section h3 {
          margin: 0 -20px;
          padding: 0 20px;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 40px;
          text-align: center;
          border-radius: 0;
          margin-bottom: 24px; } }
    main.recruit section.recruitment section .lead {
      font-weight: 500;
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 28px;
      margin-bottom: 32px; }
      @media screen and (max-width: 767px) {
        main.recruit section.recruitment section .lead {
          font-size: 14px;
          letter-spacing: 0.03em;
          line-height: 30px; } }
    main.recruit section.recruitment section table {
      width: 100%; }
      main.recruit section.recruitment section table th {
        background-color: #EDEDED;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6;
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 24px;
        padding: 11px 32px;
        text-align: left; }
        @media screen and (max-width: 767px) {
          main.recruit section.recruitment section table th {
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 1;
            padding: 16px 20px;
            width: auto;
            border-bottom: none; } }
        main.recruit section.recruitment section table th:nth-child(1) {
          width: 220px;
          border-right: 1px solid #C6C6C6; }
          @media screen and (max-width: 767px) {
            main.recruit section.recruitment section table th:nth-child(1) {
              width: 120px; } }
      main.recruit section.recruitment section table td {
        padding: 25px 32px;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 24px;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.recruit section.recruitment section table td {
            font-size: 12px;
            line-height: 20px;
            text-align: left;
            color: #000;
            padding: 20px 0 20px 20px;
            border-top: none; } }
        main.recruit section.recruitment section table td:nth-child(1) {
          border-right: 1px solid #C6C6C6;
          font-weight: 500;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px;
          vertical-align: middle;
          padding-left: 0; }
          @media screen and (max-width: 767px) {
            main.recruit section.recruitment section table td:nth-child(1) {
              font-size: 12px;
              line-height: 24px;
              padding: 20px 20px 20px 0; } }
  main.recruit section.recruitment .decoration {
    background-image: url("../images/common/recruit_img.png");
    background-size: 2088px 334px;
    position: relative;
    z-index: 1;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 334px;
    transform: translateX(-50%);
    animation: recruit-figure 20s linear infinite;
    margin-top: 110px;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      main.recruit section.recruitment .decoration {
        margin-top: 54px;
        margin-bottom: 16px; } }
  main.recruit section.recruitment .action {
    text-align: center; }
    main.recruit section.recruitment .action a {
      position: relative;
      width: 219px;
      background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
      filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
      overflow: hidden;
      display: inline-block;
      font-family: Inter;
      font-weight: 600;
      font-size: 16px;
      line-height: 48px;
      text-align: center;
      color: #000;
      transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
      border-radius: 9999px;
      z-index: 1;
      width: 418px;
      font-size: 28px;
      line-height: 72px; }
      @media screen and (max-width: 767px) {
        main.recruit section.recruitment .action a {
          width: 184px;
          line-height: 40px;
          font-family: Inter;
          font-weight: 600;
          font-size: 14px;
          color: #000; } }
      main.recruit section.recruitment .action a span {
        position: relative; }
        main.recruit section.recruitment .action a span:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          font-size: 14px;
          margin-left: 12px;
          vertical-align: 0; }
      main.recruit section.recruitment .action a:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
        transition: all ease .3s;
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
      main.recruit section.recruitment .action a:hover {
        color: #fff; }
        main.recruit section.recruitment .action a:hover:before {
          left: 0;
          transform: scaleX(1);
          transform-origin: left; }
      @media screen and (max-width: 767px) {
        main.recruit section.recruitment .action a {
          width: 100%;
          line-height: 51px;
          font-size: 16px; } }
      main.recruit section.recruitment .action a:after {
        font-family: 'icomoon_activecore' !important;
        speak: never;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Enable Ligatures ================ */
        letter-spacing: 0 !important;
        -webkit-font-feature-settings: "liga";
        -moz-font-feature-settings: "liga=1";
        -moz-font-feature-settings: "liga";
        -ms-font-feature-settings: "liga" 1;
        font-feature-settings: "liga";
        -webkit-font-variant-ligatures: discretionary-ligatures;
        font-variant-ligatures: discretionary-ligatures;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: var(--icon-arrow-right);
        font-size: 12px;
        position: absolute;
        top: 50%;
        right: 32px;
        transform: translateY(-50%); }
        @media screen and (max-width: 767px) {
          main.recruit section.recruitment .action a:after {
            right: 25px;
            font-size: 10px; } }
      main.recruit section.recruitment .action a span:after {
        display: none; }
main.recruit section.join {
  background-color: #fff; }
  main.recruit section.join .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    border-top: 1px solid #C6C6C6;
    padding: 100px 0 150px; }
    @media screen and (max-width: 767px) {
      main.recruit section.join .container {
        width: calc(100% - 40px); } }
    @media screen and (max-width: 767px) {
      main.recruit section.join .container {
        padding: 56px 0 72px; } }
  main.recruit section.join .lead {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 64px; }
    @media screen and (max-width: 767px) {
      main.recruit section.join .lead {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px;
        margin-bottom: 40px; } }
  main.recruit section.join ul {
    display: flex;
    margin: 0 -24px; }
    @media screen and (max-width: 767px) {
      main.recruit section.join ul {
        display: block;
        margin: 0; } }
    main.recruit section.join ul li {
      flex: 0 0 50%;
      padding: 0 24px; }
      @media screen and (max-width: 767px) {
        main.recruit section.join ul li {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        main.recruit section.join ul li + li {
          margin-top: 40px; } }
      main.recruit section.join ul li figure {
        margin-bottom: 40px; }
        @media screen and (max-width: 767px) {
          main.recruit section.join ul li figure {
            margin-bottom: 32px; } }
        main.recruit section.join ul li figure img {
          border-radius: 14px;
          box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1); }
      main.recruit section.join ul li .title {
        font-weight: 500;
        font-size: 16px;
        line-height: 1;
        margin-bottom: 20px; }
        @media screen and (max-width: 767px) {
          main.recruit section.join ul li .title {
            margin-bottom: 16px; } }
      main.recruit section.join ul li p {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 28px; }
        @media screen and (max-width: 767px) {
          main.recruit section.join ul li p {
            font-size: 14px;
            letter-spacing: 0.03em;
            line-height: 30px; } }

main.contact .wpcf7-list-item {
  margin: 0; }
main.contact .wpcf7-response-output,
main.contact .wpcf7-not-valid-tip {
  margin: 0 !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  letter-spacing: 0.1em !important;
  text-align: left !important;
  color: #fd2c2c !important;
  margin-top: 20px !important; }
  @media screen and (max-width: 767px) {
    main.contact .wpcf7-response-output,
    main.contact .wpcf7-not-valid-tip {
      font-size: 14px !important;
      line-height: 1.5 !important;
      margin-top: 10px !important; } }
main.contact .wpcf7-response-output {
  padding: 0 !important;
  text-align: center !important;
  border: none !important; }
  @media screen and (max-width: 767px) {
    main.contact .wpcf7-response-output {
      text-align: left !important; } }
main.contact header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.contact header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.contact header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.contact header .container {
        width: calc(100% - 40px); } }
    main.contact header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.contact header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.contact header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.contact header .container h1 span {
            top: 68px; } }
        .is-loaded main.contact header .container h1 span {
          top: 0; }
main.contact .body {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.contact .body {
      padding-top: 60px; } }
  main.contact .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.contact .body .container {
        width: calc(100% - 40px); } }
  main.contact .body .lead {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px; }
    @media screen and (max-width: 767px) {
      main.contact .body .lead {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.contact .body section.form {
    padding: 100px 0 180px; }
    @media screen and (max-width: 767px) {
      main.contact .body section.form {
        padding: 64px 0 80px; } }
    main.contact .body section.form h2 {
      font-weight: 500;
      font-size: 18px;
      letter-spacing: 0.1em;
      line-height: 1;
      text-align: left;
      color: #000;
      border-bottom: 1px solid #C6C6C6;
      padding-bottom: 32px;
      margin-bottom: 56px; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form h2 {
          font-size: 14px;
          padding-bottom: 15px;
          margin-bottom: 40px; } }
    main.contact .body section.form dl dt {
      font-weight: 500;
      font-size: 18px;
      letter-spacing: 0.1em;
      line-height: 1;
      text-align: left;
      color: #000;
      margin-bottom: 32px; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form dl dt {
          font-size: 14px;
          letter-spacing: 0.1em;
          margin-bottom: 16px; } }
      main.contact .body section.form dl dt:first-child {
        display: none; }
      main.contact .body section.form dl dt:first-child + dd {
        margin-bottom: 120px; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form dl dt:first-child + dd {
            margin-bottom: 65px; } }
    main.contact .body section.form dl dd {
      margin-bottom: 56px; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form dl dd {
          margin-bottom: 32px; } }
      main.contact .body section.form dl dd input[type="text"],
      main.contact .body section.form dl dd input[type="tel"],
      main.contact .body section.form dl dd input[type="email"] {
        background-color: #EDEDED;
        line-height: 90px;
        height: 90px;
        border-radius: 14px;
        padding: 0 40px;
        font-size: 18px;
        width: 100%; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form dl dd input[type="text"],
          main.contact .body section.form dl dd input[type="tel"],
          main.contact .body section.form dl dd input[type="email"] {
            height: 56px;
            font-size: 16px;
            line-height: 56px;
            padding: 0 20px;
            border-radius: 10px; } }
      main.contact .body section.form dl dd textarea {
        background-color: #EDEDED;
        height: 270px;
        border-radius: 14px;
        font-size: 18px;
        line-height: 2;
        width: 100%;
        padding: 28px 40px; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form dl dd textarea {
            height: 210px;
            border-radius: 10px;
            font-size: 16px;
            padding: 12px 20px;
            height: 210px; } }
      main.contact .body section.form dl dd .wpcf7-list-item {
        display: block;
        margin: 24px 0; }
        main.contact .body section.form dl dd .wpcf7-list-item input[type='radio'] + span {
          position: relative;
          display: inline-block;
          font-weight: bold;
          font-size: 16px;
          letter-spacing: 0.1em;
          line-height: 16px;
          text-align: left;
          color: #000;
          padding-left: 24px; }
          @media screen and (max-width: 767px) {
            main.contact .body section.form dl dd .wpcf7-list-item input[type='radio'] + span {
              font-size: 14px; } }
          main.contact .body section.form dl dd .wpcf7-list-item input[type='radio'] + span:before {
            content: "";
            background-image: url("../images/common/form_radio.svg");
            width: 16px;
            height: 16px;
            position: absolute;
            top: 0;
            left: 0; }
        main.contact .body section.form dl dd .wpcf7-list-item input[type='radio']:checked + span:before {
          background-image: url("../images/common/form_radio_on.svg"); }
    main.contact .body section.form .privacy {
      padding-top: 24px;
      padding-bottom: 56px; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form .privacy {
          padding-bottom: 26px; } }
      main.contact .body section.form .privacy p:nth-child(1) {
        font-weight: 500;
        font-size: 18px;
        letter-spacing: 0.1em;
        line-height: 22px;
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .privacy p:nth-child(1) {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 22px;
            margin-bottom: 10px; } }
        main.contact .body section.form .privacy p:nth-child(1) a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 22px;
          vertical-align: -2px;
          margin-left: 16px; }
      main.contact .body section.form .privacy .note {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .privacy .note {
            font-size: 12px;
            letter-spacing: 0.03em;
            line-height: 24px; } }
    main.contact .body section.form .acceptance {
      border-top: 1px solid #C6C6C6;
      padding-top: 56px; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form .acceptance {
          padding-top: 32px; } }
      main.contact .body section.form .acceptance p:nth-child(1) {
        font-weight: 500;
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 20px;
        text-align: left;
        color: #000;
        margin-bottom: 40px; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .acceptance p:nth-child(1) {
            margin-bottom: 18px; } }
        main.contact .body section.form .acceptance p:nth-child(1) .wpcf7-list-item {
          display: inline-block; }
          main.contact .body section.form .acceptance p:nth-child(1) .wpcf7-list-item input[type='checkbox'] + span {
            position: relative;
            display: inline-block;
            font-weight: 500;
            font-size: 16px;
            letter-spacing: 0.1em;
            line-height: 20px;
            padding-left: 36px; }
            @media screen and (max-width: 767px) {
              main.contact .body section.form .acceptance p:nth-child(1) .wpcf7-list-item input[type='checkbox'] + span {
                font-size: 14px;
                line-height: 20px;
                padding-left: 30px; } }
            main.contact .body section.form .acceptance p:nth-child(1) .wpcf7-list-item input[type='checkbox'] + span:before {
              content: "";
              background-image: url("../images/common/form_checkbox.svg");
              width: 20px;
              height: 20px;
              position: absolute;
              top: 0;
              left: 0; }
          main.contact .body section.form .acceptance p:nth-child(1) .wpcf7-list-item input[type='checkbox']:checked + span:before {
            background-image: url("../images/common/form_checkbox_on.svg"); }
      main.contact .body section.form .acceptance .note {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 1; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .acceptance .note {
            font-size: 12px;
            letter-spacing: 0.03em;
            line-height: 24px; } }
    main.contact .body section.form .action {
      margin-top: 100px;
      text-align: center; }
      @media screen and (max-width: 767px) {
        main.contact .body section.form .action {
          margin-top: 42px; } }
      main.contact .body section.form .action button {
        position: relative;
        width: 219px;
        background: linear-gradient(-90deg, #fff 0%, #f5f5f5 100%);
        filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
        overflow: hidden;
        display: inline-block;
        font-family: Inter;
        font-weight: 600;
        font-size: 16px;
        line-height: 48px;
        text-align: center;
        color: #000;
        transition: color 0.7s cubic-bezier(0.19, 1, 0.22, 1);
        border-radius: 9999px;
        z-index: 1;
        width: 418px;
        line-height: 72px;
        font-size: 28px; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .action button {
            width: 184px;
            line-height: 40px;
            font-family: Inter;
            font-weight: 600;
            font-size: 14px;
            color: #000; } }
        main.contact .body section.form .action button span {
          position: relative; }
          main.contact .body section.form .action button span:after {
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-arrow-right);
            font-size: 14px;
            margin-left: 12px;
            vertical-align: 0; }
        main.contact .body section.form .action button:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          background: linear-gradient(-90deg, #43ed84 0%, #3bd9ff 100%);
          transition: all ease .3s;
          transform: scaleX(0);
          transform-origin: right;
          transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1); }
        main.contact .body section.form .action button:hover {
          color: #fff; }
          main.contact .body section.form .action button:hover:before {
            left: 0;
            transform: scaleX(1);
            transform-origin: left; }
        @media screen and (max-width: 767px) {
          main.contact .body section.form .action button {
            width: 100%;
            line-height: 51px;
            font-size: 16px; } }
        main.contact .body section.form .action button:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-arrow-right);
          position: absolute;
          right: 32px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 12px; }
          @media screen and (max-width: 767px) {
            main.contact .body section.form .action button:after {
              font-size: 10px;
              right: 25px; } }
        main.contact .body section.form .action button span:after {
          display: none; }

main.news:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.news:after {
      height: 80px; } }
main.news header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.news header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.news header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.news header .container {
        width: calc(100% - 40px); } }
    main.news header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.news header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.news header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.news header .container h1 span {
            top: 68px; } }
        .is-loaded main.news header .container h1 span {
          top: 0; }
main.news .body {
  background-color: #fff;
  padding-bottom: 180px; }
  @media screen and (max-width: 767px) {
    main.news .body {
      padding-bottom: 80px; } }
  main.news .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      main.news .body .container {
        width: calc(100% - 40px); } }
    main.news .body .container nav.category {
      background-color: #fff;
      padding-bottom: 56px; }
      @media screen and (max-width: 767px) {
        main.news .body .container nav.category {
          padding-bottom: 64px; } }
      main.news .body .container nav.category ul {
        display: flex;
        flex-wrap: wrap;
        marign: 0 -7px;
        gap: 10px 0; }
        @media screen and (max-width: 767px) {
          main.news .body .container nav.category ul {
            margin: 0 -8px;
            gap: 16px 0; } }
        main.news .body .container nav.category ul li {
          padding: 0 7px; }
          @media screen and (max-width: 767px) {
            main.news .body .container nav.category ul li {
              padding: 0 8px;
              flex: 0 0 50%; } }
          main.news .body .container nav.category ul li a {
            display: block;
            width: 146px;
            line-height: 30px;
            font-weight: 500;
            font-size: 14px;
            text-align: center;
            border-radius: 9999px;
            border: 1px solid #000; }
            @media screen and (max-width: 767px) {
              main.news .body .container nav.category ul li a {
                width: 100%;
                font-size: 14px;
                line-height: 30px;
                text-align: center;
                color: #000; } }
          main.news .body .container nav.category ul li.active a {
            background-color: #000;
            color: #fff; }
    main.news .body .container > ul {
      border-top: 1px solid #C6C6C6; }
      main.news .body .container > ul li {
        border-bottom: 1px solid #C6C6C6; }
        main.news .body .container > ul li a {
          display: flex; }
          @media screen and (max-width: 767px) {
            main.news .body .container > ul li a {
              display: block; } }
          main.news .body .container > ul li a .meta {
            flex: 0 0 158px;
            padding: 32px 0; }
            @media screen and (max-width: 767px) {
              main.news .body .container > ul li a .meta {
                display: flex;
                align-items: center;
                padding: 28px 0 16px; } }
            main.news .body .container > ul li a .meta .date {
              font-family: Inter;
              font-weight: 600;
              font-size: 14px;
              line-height: 32px;
              letter-spacing: 0.05em;
              text-align: left;
              margin-bottom: 5px; }
              @media screen and (max-width: 767px) {
                main.news .body .container > ul li a .meta .date {
                  line-height: 26px;
                  margin-right: 14px;
                  margin-bottom: 0; } }
            main.news .body .container > ul li a .meta .category {
              display: inline-block;
              min-width: 110px;
              line-height: 24px;
              border: 1px solid currentColor;
              border-radius: 9999px;
              font-weight: 500;
              font-size: 12px;
              text-align: center;
              padding: 0 5px; }
          main.news .body .container > ul li a .title {
            padding: 32px 0;
            flex: 0 0 calc(100% - 158px);
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 32px;
            text-align: left; }
            @media screen and (max-width: 767px) {
              main.news .body .container > ul li a .title {
                padding: 0 0 26px;
                font-size: 12px;
                line-height: 24px; } }
    main.news .body .container nav.pagination {
      margin-top: 120px; }
      main.news .body .container nav.pagination .nav-links {
        display: flex;
        justify-content: center; }
        main.news .body .container nav.pagination .nav-links .page-numbers {
          position: relative;
          display: block;
          margin: 0 8px;
          width: 40px;
          height: 40px;
          border-radius: 50%;
          line-height: 38px;
          border: 1px solid #000;
          font-family: Inter;
          font-weight: 600;
          font-size: 16px;
          letter-spacing: 0.05em;
          text-align: center;
          color: #000; }
        main.news .body .container nav.pagination .nav-links .page-numbers:not(.current):not(.prev):not(.next) {
          border-color: transparent; }
        main.news .body .container nav.pagination .nav-links .prev {
          position: relative;
          border: none;
          color: transparent;
          margin-right: 40px; }
          main.news .body .container nav.pagination .nav-links .prev:before {
            color: #000;
            position: absolute;
            top: 0;
            left: 0;
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-circle-left);
            font-size: 40px; }
        main.news .body .container nav.pagination .nav-links .next {
          position: relative;
          border: none;
          color: transparent;
          margin-left: 40px; }
          main.news .body .container nav.pagination .nav-links .next:before {
            color: #000;
            position: absolute;
            top: 0;
            left: 0;
            font-family: 'icomoon_activecore' !important;
            speak: never;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            /* Enable Ligatures ================ */
            letter-spacing: 0 !important;
            -webkit-font-feature-settings: "liga";
            -moz-font-feature-settings: "liga=1";
            -moz-font-feature-settings: "liga";
            -ms-font-feature-settings: "liga" 1;
            font-feature-settings: "liga";
            -webkit-font-variant-ligatures: discretionary-ligatures;
            font-variant-ligatures: discretionary-ligatures;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: var(--icon-circle-right);
            font-size: 40px; }

main.news-detail header {
  padding: 170px 0 0;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.news-detail header {
      padding: 123px 0 0; } }
  main.news-detail header .secondary {
    padding-bottom: 56px; }
    @media screen and (max-width: 767px) {
      main.news-detail header .secondary {
        padding-bottom: 64px; } }
    main.news-detail header .secondary .container {
      max-width: 1100px;
      margin: 0 auto;
      width: calc(100% - 120px);
      max-width: 1220px; }
      @media screen and (max-width: 767px) {
        main.news-detail header .secondary .container {
          width: calc(100% - 40px); } }
      main.news-detail header .secondary .container .type {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 21px;
        letter-spacing: 0.03em;
        text-align: left; }
  main.news-detail header .primary .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px;
    padding-bottom: 36px;
    border-bottom: 1px solid #C6C6C6; }
    @media screen and (max-width: 767px) {
      main.news-detail header .primary .container {
        width: calc(100% - 40px); } }
    @media screen and (max-width: 767px) {
      main.news-detail header .primary .container {
        padding-bottom: 40px; } }
    main.news-detail header .primary .container .meta {
      margin-bottom: 36px;
      display: flex; }
      @media screen and (max-width: 767px) {
        main.news-detail header .primary .container .meta {
          margin-bottom: 24px; } }
      main.news-detail header .primary .container .meta .date {
        font-family: Inter;
        font-weight: 600;
        font-size: 18px;
        line-height: 32px;
        letter-spacing: 0.05em;
        text-align: left;
        color: #c6c6c6;
        margin-right: 24px; }
        @media screen and (max-width: 767px) {
          main.news-detail header .primary .container .meta .date {
            font-size: 14px;
            letter-spacing: 0.05em; } }
      main.news-detail header .primary .container .meta .category {
        font-weight: 500;
        font-size: 14px;
        line-height: 32px;
        text-align: center;
        color: #fff;
        background-color: #000000;
        border-radius: 9999px;
        min-width: 146px; }
    main.news-detail header .primary .container h1 {
      font-weight: 500;
      font-size: 24px;
      letter-spacing: 0.1em;
      line-height: 48px; }
      @media screen and (max-width: 767px) {
        main.news-detail header .primary .container h1 {
          font-size: 18px;
          letter-spacing: 0.03em;
          line-height: 34px; } }
main.news-detail .body {
  background-color: #fff;
  padding: 80px 0 168px; }
  @media screen and (max-width: 767px) {
    main.news-detail .body {
      padding: 40px 0 80px; } }
  main.news-detail .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 900px; }
    @media screen and (max-width: 767px) {
      main.news-detail .body .container {
        width: calc(100% - 40px); } }
  main.news-detail .body .content *:first-child {
    margin-top: 0 !important; }
  main.news-detail .body .content *:last-child {
    margin-bottom: 0 !important; }
  main.news-detail .body .content figure {
    margin: 80px 0; }
    @media screen and (max-width: 767px) {
      main.news-detail .body .content figure {
        margin: 32px 0; } }
    main.news-detail .body .content figure img {
      border-radius: 10px; }
  main.news-detail .body .content p {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 40px;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.news-detail .body .content p {
        font-size: 14px;
        letter-spacing: 0.03em;
        line-height: 30px; } }
  main.news-detail .body .content h2 {
    font-weight: 500;
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: left;
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      main.news-detail .body .content h2 {
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 28px; } }
  main.news-detail .body nav.pager {
    margin-top: 80px;
    border-top: 1px solid #C6C6C6;
    padding-top: 56px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 40px; }
    @media screen and (max-width: 767px) {
      main.news-detail .body nav.pager {
        margin-top: 56px;
        font-size: 12px; } }
    main.news-detail .body nav.pager ul {
      position: relative;
      height: 0; }
      main.news-detail .body nav.pager ul li {
        position: absolute; }
        main.news-detail .body nav.pager ul li.prev {
          left: 0; }
        main.news-detail .body nav.pager ul li.next {
          right: 0; }
    main.news-detail .body nav.pager .back {
      text-align: center; }

main.about-web:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
main.about-web header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.about-web header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.about-web header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.about-web header .container {
        width: calc(100% - 40px); } }
    main.about-web header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.about-web header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.about-web header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.about-web header .container h1 span {
            top: 68px; } }
        .is-loaded main.about-web header .container h1 span {
          top: 0; }
main.about-web .body {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.about-web .body {
      padding-top: 60px; } }
  main.about-web .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1100px; }
    @media screen and (max-width: 767px) {
      main.about-web .body .container {
        width: calc(100% - 40px); } }
    main.about-web .body .container > section {
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 28px;
      text-align: left;
      color: #000; }
      main.about-web .body .container > section h2 {
        font-weight: 500;
        font-size: 28px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #c6c6c6;
        margin-bottom: 58px; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section h2 {
            font-size: 20px;
            line-height: 34px;
            letter-spacing: 0.05em;
            margin-bottom: 25px; } }
      main.about-web .body .container > section .lead {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: left;
        color: #000;
        margin-bottom: 60px; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section .lead {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 30px;
            text-align: left;
            color: #000;
            margin-bottom: 40px; } }
      main.about-web .body .container > section .link {
        margin-top: 25px;
        font-weight: 500;
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 22px;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section .link {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 22px;
            margin-top: 10px; } }
        main.about-web .body .container > section .link a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 22px;
          vertical-align: -2px;
          margin-left: 16px; }
      main.about-web .body .container > section .signature {
        margin-top: 40px;
        text-align: right; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section .signature {
            margin-top: 25px; } }
      main.about-web .body .container > section + section {
        margin-top: 140px; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section + section {
            margin-top: 100px; } }
      main.about-web .body .container > section section {
        padding: 40px 0;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.about-web .body .container > section section {
            padding: 28px 0; } }
        main.about-web .body .container > section section h3 {
          font-weight: 500;
          font-size: 18px;
          line-height: 32px;
          letter-spacing: 0.1em;
          margin-bottom: 18px; }
          @media screen and (max-width: 767px) {
            main.about-web .body .container > section section h3 {
              font-size: 16px;
              line-height: 24px;
              letter-spacing: 0.05em;
              margin-bottom: 18px; } }
        main.about-web .body .container > section section pre {
          background-color: #EDEDED;
          padding: 40px;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.about-web .body .container > section section pre {
              padding: 24px;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 20px; } }
          main.about-web .body .container > section section pre code {
            display: block;
            overflow-wrap: break-word;
            white-space: pre-wrap; }
        main.about-web .body .container > section section table {
          width: 100%; }
          @media screen and (max-width: 767px) {
            main.about-web .body .container > section section table {
              border-top: 1px solid rgba(0, 0, 0, 0.3); } }
          main.about-web .body .container > section section table th {
            width: 173px;
            font-weight: 500;
            font-size: 14px;
            line-height: 2;
            letter-spacing: 0.05em;
            text-align: left;
            color: #000;
            padding: 20px 0;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.about-web .body .container > section section table th {
                display: block;
                font-size: 14px;
                line-height: 28px;
                letter-spacing: 0.05em;
                padding-bottom: 2px;
                border-bottom: none;
                border-top: none;
                width: auto; } }
          main.about-web .body .container > section section table td {
            padding: 20px 0;
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 2;
            text-align: left;
            color: #000;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.about-web .body .container > section section table td {
                display: block;
                padding-top: 0;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 28px;
                border-top: none; } }
        main.about-web .body .container > section section > ol {
          counter-reset: ol; }
          main.about-web .body .container > section section > ol > li {
            position: relative;
            counter-increment: ol;
            padding-left: 1.5em; }
            main.about-web .body .container > section section > ol > li:before {
              position: absolute;
              top: 0;
              left: 0;
              content: counter(ol) ". "; }
            main.about-web .body .container > section section > ol > li .link {
              margin: 25px 0; }
            main.about-web .body .container > section section > ol > li > ol {
              counter-reset: ol2; }
              main.about-web .body .container > section section > ol > li > ol > li {
                position: relative;
                counter-increment: ol2;
                padding-left: 1.5em; }
                main.about-web .body .container > section section > ol > li > ol > li:before {
                  position: absolute;
                  top: 0;
                  left: 0;
                  content: counter(ol2) ") "; }
        main.about-web .body .container > section section + section {
          margin-top: -1px; }

main.privacy-policy:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
main.privacy-policy header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.privacy-policy header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.privacy-policy header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.privacy-policy header .container {
        width: calc(100% - 40px); } }
    main.privacy-policy header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.privacy-policy header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.privacy-policy header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.privacy-policy header .container h1 span {
            top: 68px; } }
        .is-loaded main.privacy-policy header .container h1 span {
          top: 0; }
main.privacy-policy .body {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.privacy-policy .body {
      padding-top: 60px; } }
  main.privacy-policy .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1100px; }
    @media screen and (max-width: 767px) {
      main.privacy-policy .body .container {
        width: calc(100% - 40px); } }
    main.privacy-policy .body .container > section {
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 28px;
      text-align: left;
      color: #000; }
      main.privacy-policy .body .container > section h2 {
        font-weight: 500;
        font-size: 28px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #c6c6c6;
        margin-bottom: 58px; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section h2 {
            font-size: 20px;
            line-height: 34px;
            letter-spacing: 0.05em;
            margin-bottom: 25px; } }
      main.privacy-policy .body .container > section .lead {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: left;
        color: #000;
        margin-bottom: 60px; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section .lead {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 30px;
            text-align: left;
            color: #000;
            margin-bottom: 40px; } }
      main.privacy-policy .body .container > section .link {
        margin-top: 25px;
        font-weight: 500;
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 22px;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section .link {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 22px;
            margin-top: 10px; } }
        main.privacy-policy .body .container > section .link a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 22px;
          vertical-align: -2px;
          margin-left: 16px; }
      main.privacy-policy .body .container > section .signature {
        margin-top: 40px;
        text-align: right; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section .signature {
            margin-top: 25px; } }
      main.privacy-policy .body .container > section + section {
        margin-top: 140px; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section + section {
            margin-top: 100px; } }
      main.privacy-policy .body .container > section section {
        padding: 40px 0;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.privacy-policy .body .container > section section {
            padding: 28px 0; } }
        main.privacy-policy .body .container > section section h3 {
          font-weight: 500;
          font-size: 18px;
          line-height: 32px;
          letter-spacing: 0.1em;
          margin-bottom: 18px; }
          @media screen and (max-width: 767px) {
            main.privacy-policy .body .container > section section h3 {
              font-size: 16px;
              line-height: 24px;
              letter-spacing: 0.05em;
              margin-bottom: 18px; } }
        main.privacy-policy .body .container > section section pre {
          background-color: #EDEDED;
          padding: 40px;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.privacy-policy .body .container > section section pre {
              padding: 24px;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 20px; } }
          main.privacy-policy .body .container > section section pre code {
            display: block;
            overflow-wrap: break-word;
            white-space: pre-wrap; }
        main.privacy-policy .body .container > section section table {
          width: 100%; }
          @media screen and (max-width: 767px) {
            main.privacy-policy .body .container > section section table {
              border-top: 1px solid rgba(0, 0, 0, 0.3); } }
          main.privacy-policy .body .container > section section table th {
            width: 173px;
            font-weight: 500;
            font-size: 14px;
            line-height: 2;
            letter-spacing: 0.05em;
            text-align: left;
            color: #000;
            padding: 20px 0;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.privacy-policy .body .container > section section table th {
                display: block;
                font-size: 14px;
                line-height: 28px;
                letter-spacing: 0.05em;
                padding-bottom: 2px;
                border-bottom: none;
                border-top: none;
                width: auto; } }
          main.privacy-policy .body .container > section section table td {
            padding: 20px 0;
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 2;
            text-align: left;
            color: #000;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.privacy-policy .body .container > section section table td {
                display: block;
                padding-top: 0;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 28px;
                border-top: none; } }
        main.privacy-policy .body .container > section section > ol {
          counter-reset: ol; }
          main.privacy-policy .body .container > section section > ol > li {
            position: relative;
            counter-increment: ol;
            padding-left: 1.5em; }
            main.privacy-policy .body .container > section section > ol > li:before {
              position: absolute;
              top: 0;
              left: 0;
              content: counter(ol) ". "; }
            main.privacy-policy .body .container > section section > ol > li .link {
              margin: 25px 0; }
            main.privacy-policy .body .container > section section > ol > li > ol {
              counter-reset: ol2; }
              main.privacy-policy .body .container > section section > ol > li > ol > li {
                position: relative;
                counter-increment: ol2;
                padding-left: 1.5em; }
                main.privacy-policy .body .container > section section > ol > li > ol > li:before {
                  position: absolute;
                  top: 0;
                  left: 0;
                  content: counter(ol2) ") "; }
        main.privacy-policy .body .container > section section + section {
          margin-top: -1px; }

main.opt-out:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
main.opt-out header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.opt-out header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.opt-out header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.opt-out header .container {
        width: calc(100% - 40px); } }
    main.opt-out header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.opt-out header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.opt-out header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.opt-out header .container h1 span {
            top: 68px; } }
        .is-loaded main.opt-out header .container h1 span {
          top: 0; }
main.opt-out .body {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.opt-out .body {
      padding-top: 60px; } }
  main.opt-out .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1100px; }
    @media screen and (max-width: 767px) {
      main.opt-out .body .container {
        width: calc(100% - 40px); } }
    main.opt-out .body .container > section {
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 28px;
      text-align: left;
      color: #000; }
      main.opt-out .body .container > section h2 {
        font-weight: 500;
        font-size: 28px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #c6c6c6;
        margin-bottom: 58px; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section h2 {
            font-size: 20px;
            line-height: 34px;
            letter-spacing: 0.05em;
            margin-bottom: 25px; } }
      main.opt-out .body .container > section .lead {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: left;
        color: #000;
        margin-bottom: 60px; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section .lead {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 30px;
            text-align: left;
            color: #000;
            margin-bottom: 40px; } }
      main.opt-out .body .container > section .link {
        margin-top: 25px;
        font-weight: 500;
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 22px;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section .link {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 22px;
            margin-top: 10px; } }
        main.opt-out .body .container > section .link a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 22px;
          vertical-align: -2px;
          margin-left: 16px; }
      main.opt-out .body .container > section .signature {
        margin-top: 40px;
        text-align: right; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section .signature {
            margin-top: 25px; } }
      main.opt-out .body .container > section + section {
        margin-top: 140px; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section + section {
            margin-top: 100px; } }
      main.opt-out .body .container > section section {
        padding: 40px 0;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.opt-out .body .container > section section {
            padding: 28px 0; } }
        main.opt-out .body .container > section section h3 {
          font-weight: 500;
          font-size: 18px;
          line-height: 32px;
          letter-spacing: 0.1em;
          margin-bottom: 18px; }
          @media screen and (max-width: 767px) {
            main.opt-out .body .container > section section h3 {
              font-size: 16px;
              line-height: 24px;
              letter-spacing: 0.05em;
              margin-bottom: 18px; } }
        main.opt-out .body .container > section section pre {
          background-color: #EDEDED;
          padding: 40px;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.opt-out .body .container > section section pre {
              padding: 24px;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 20px; } }
          main.opt-out .body .container > section section pre code {
            display: block;
            overflow-wrap: break-word;
            white-space: pre-wrap; }
        main.opt-out .body .container > section section table {
          width: 100%; }
          @media screen and (max-width: 767px) {
            main.opt-out .body .container > section section table {
              border-top: 1px solid rgba(0, 0, 0, 0.3); } }
          main.opt-out .body .container > section section table th {
            width: 173px;
            font-weight: 500;
            font-size: 14px;
            line-height: 2;
            letter-spacing: 0.05em;
            text-align: left;
            color: #000;
            padding: 20px 0;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.opt-out .body .container > section section table th {
                display: block;
                font-size: 14px;
                line-height: 28px;
                letter-spacing: 0.05em;
                padding-bottom: 2px;
                border-bottom: none;
                border-top: none;
                width: auto; } }
          main.opt-out .body .container > section section table td {
            padding: 20px 0;
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 2;
            text-align: left;
            color: #000;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.opt-out .body .container > section section table td {
                display: block;
                padding-top: 0;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 28px;
                border-top: none; } }
        main.opt-out .body .container > section section > ol {
          counter-reset: ol; }
          main.opt-out .body .container > section section > ol > li {
            position: relative;
            counter-increment: ol;
            padding-left: 1.5em; }
            main.opt-out .body .container > section section > ol > li:before {
              position: absolute;
              top: 0;
              left: 0;
              content: counter(ol) ". "; }
            main.opt-out .body .container > section section > ol > li .link {
              margin: 25px 0; }
            main.opt-out .body .container > section section > ol > li > ol {
              counter-reset: ol2; }
              main.opt-out .body .container > section section > ol > li > ol > li {
                position: relative;
                counter-increment: ol2;
                padding-left: 1.5em; }
                main.opt-out .body .container > section section > ol > li > ol > li:before {
                  position: absolute;
                  top: 0;
                  left: 0;
                  content: counter(ol2) ") "; }
        main.opt-out .body .container > section section + section {
          margin-top: -1px; }

main.isms:after {
  content: "";
  display: block;
  height: 180px;
  background-color: #fff; }
main.isms header {
  padding-top: 229px;
  padding-bottom: 10px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.isms header {
      padding-top: 131px;
      padding-bottom: 0; } }
  main.isms header .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1222px; }
    @media screen and (max-width: 767px) {
      main.isms header .container {
        width: calc(100% - 40px); } }
    main.isms header .container h1 {
      font-family: Inter;
      font-weight: 600;
      font-size: 100px;
      line-height: 121px;
      letter-spacing: 0.03em;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        main.isms header .container h1 {
          font-size: 56px;
          line-height: 68px;
          letter-spacing: 0.03em; } }
      main.isms header .container h1 span {
        display: block;
        position: relative;
        top: 121px;
        transition: all 2s cubic-bezier(0.19, 1, 0.22, 1); }
        @media screen and (max-width: 767px) {
          main.isms header .container h1 span {
            top: 68px; } }
        .is-loaded main.isms header .container h1 span {
          top: 0; }
main.isms .body {
  padding-top: 136px;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    main.isms .body {
      padding-top: 60px; } }
  main.isms .body .container {
    max-width: 1100px;
    margin: 0 auto;
    width: calc(100% - 120px);
    max-width: 1100px; }
    @media screen and (max-width: 767px) {
      main.isms .body .container {
        width: calc(100% - 40px); } }
    main.isms .body .container > section {
      font-size: 14px;
      letter-spacing: 0.1em;
      line-height: 28px;
      text-align: left;
      color: #000; }
      main.isms .body .container > section h2 {
        font-weight: 500;
        font-size: 28px;
        letter-spacing: 0.05em;
        line-height: 1;
        text-align: left;
        color: #c6c6c6;
        margin-bottom: 58px; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section h2 {
            font-size: 20px;
            line-height: 34px;
            letter-spacing: 0.05em;
            margin-bottom: 25px; } }
      main.isms .body .container > section .lead {
        font-weight: 500;
        font-size: 14px;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: left;
        color: #000;
        margin-bottom: 60px; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section .lead {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 30px;
            text-align: left;
            color: #000;
            margin-bottom: 40px; } }
      main.isms .body .container > section .link {
        margin-top: 25px;
        font-weight: 500;
        font-size: 16px;
        letter-spacing: 0.1em;
        line-height: 22px;
        text-align: left;
        color: #000; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section .link {
            font-size: 14px;
            letter-spacing: 0.05em;
            line-height: 22px;
            margin-top: 10px; } }
        main.isms .body .container > section .link a:after {
          font-family: 'icomoon_activecore' !important;
          speak: never;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Enable Ligatures ================ */
          letter-spacing: 0 !important;
          -webkit-font-feature-settings: "liga";
          -moz-font-feature-settings: "liga=1";
          -moz-font-feature-settings: "liga";
          -ms-font-feature-settings: "liga" 1;
          font-feature-settings: "liga";
          -webkit-font-variant-ligatures: discretionary-ligatures;
          font-variant-ligatures: discretionary-ligatures;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: var(--icon-circle-right);
          font-size: 22px;
          vertical-align: -2px;
          margin-left: 16px; }
      main.isms .body .container > section .signature {
        margin-top: 40px;
        text-align: right; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section .signature {
            margin-top: 25px; } }
      main.isms .body .container > section + section {
        margin-top: 140px; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section + section {
            margin-top: 100px; } }
      main.isms .body .container > section section {
        padding: 40px 0;
        border-top: 1px solid #C6C6C6;
        border-bottom: 1px solid #C6C6C6; }
        @media screen and (max-width: 767px) {
          main.isms .body .container > section section {
            padding: 28px 0; } }
        main.isms .body .container > section section h3 {
          font-weight: 500;
          font-size: 18px;
          line-height: 32px;
          letter-spacing: 0.1em;
          margin-bottom: 18px; }
          @media screen and (max-width: 767px) {
            main.isms .body .container > section section h3 {
              font-size: 16px;
              line-height: 24px;
              letter-spacing: 0.05em;
              margin-bottom: 18px; } }
        main.isms .body .container > section section pre {
          background-color: #EDEDED;
          padding: 40px;
          font-size: 14px;
          letter-spacing: 0.1em;
          line-height: 28px; }
          @media screen and (max-width: 767px) {
            main.isms .body .container > section section pre {
              padding: 24px;
              font-size: 12px;
              letter-spacing: 0.05em;
              line-height: 20px; } }
          main.isms .body .container > section section pre code {
            display: block;
            overflow-wrap: break-word;
            white-space: pre-wrap; }
        main.isms .body .container > section section table {
          width: 100%; }
          @media screen and (max-width: 767px) {
            main.isms .body .container > section section table {
              border-top: 1px solid rgba(0, 0, 0, 0.3); } }
          main.isms .body .container > section section table th {
            width: 173px;
            font-weight: 500;
            font-size: 14px;
            line-height: 2;
            letter-spacing: 0.05em;
            text-align: left;
            color: #000;
            padding: 20px 0;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.isms .body .container > section section table th {
                display: block;
                font-size: 14px;
                line-height: 28px;
                letter-spacing: 0.05em;
                padding-bottom: 2px;
                border-bottom: none;
                border-top: none;
                width: auto; } }
          main.isms .body .container > section section table td {
            padding: 20px 0;
            font-size: 14px;
            letter-spacing: 0.1em;
            line-height: 2;
            text-align: left;
            color: #000;
            border-top: 1px solid rgba(0, 0, 0, 0.3);
            border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
            @media screen and (max-width: 767px) {
              main.isms .body .container > section section table td {
                display: block;
                padding-top: 0;
                font-size: 14px;
                letter-spacing: 0.05em;
                line-height: 28px;
                border-top: none; } }
        main.isms .body .container > section section > ol {
          counter-reset: ol; }
          main.isms .body .container > section section > ol > li {
            position: relative;
            counter-increment: ol;
            padding-left: 1.5em; }
            main.isms .body .container > section section > ol > li:before {
              position: absolute;
              top: 0;
              left: 0;
              content: counter(ol) ". "; }
            main.isms .body .container > section section > ol > li .link {
              margin: 25px 0; }
            main.isms .body .container > section section > ol > li > ol {
              counter-reset: ol2; }
              main.isms .body .container > section section > ol > li > ol > li {
                position: relative;
                counter-increment: ol2;
                padding-left: 1.5em; }
                main.isms .body .container > section section > ol > li > ol > li:before {
                  position: absolute;
                  top: 0;
                  left: 0;
                  content: counter(ol2) ") "; }
        main.isms .body .container > section section + section {
          margin-top: -1px; }
main.isms .body .container section section {
  border-bottom: none; }
  main.isms .body .container section section figure.isms {
    margin: 100px 0;
    text-align: center; }
    @media screen and (max-width: 767px) {
      main.isms .body .container section section figure.isms {
        margin: 60px 0; } }
    main.isms .body .container section section figure.isms img {
      width: 430px; }
      @media screen and (max-width: 767px) {
        main.isms .body .container section section figure.isms img {
          width: 232px; } }
