header .box {
  position: relative; }
  header .box .leftmenu {
    position: absolute;
    left: 2.97%;
    top: 3.44%;
    z-index: 10; }
    header .box .leftmenu .logo {
      width: 100%;
      max-width: 239px; }
    header .box .leftmenu ul {
      margin: 0;
      padding: 0;
      list-style: none;
      font-size: 1.0vw; }
      header .box .leftmenu ul li {
        line-height: 3em; }
        header .box .leftmenu ul li a {
          position: relative;
          text-decoration: none;
          color: #FFFFFF; }
        header .box .leftmenu ul li a::after {
          position: absolute;
          left: 0;
          bottom: -1px;
          content: '';
          width: 100%;
          height: 1px;
          background: #FFF;
          transform: scale(0, 1);
          transform-origin: left top;
          transition: transform 0.3s; }
        header .box .leftmenu ul li a:hover::after {
          transform: scale(1, 1); }
  header .box .head-recruit {
    position: absolute;
    right: 2.97%;
    top: 0;
    width: 9.22%;
    max-width: 177px;
    transition: transform 0.3s;
    z-index: 9; }
    header .box .head-recruit a:hover {
      filter: drop-shadow(2px 4px 6px black);
      transition: all 0.2s 0.1s ease-in-out; }
  header .box .head-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70.21%;
    max-width: 1348px;
    z-index: 8;
    mix-blend-mode: overlay; }
  header .box .head-subtitle {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -70%);
    z-index: 7; }
    header .box .head-subtitle h1 {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0;
      padding: 0;
      font-size: 1.4vw;
      font-weight: normal;
      color: #ffffff; }
    header .box .head-subtitle h1::before {
      border-top: 1px solid;
      content: "";
      width: 3em;
      margin-right: 1em; }
  header .box .head-bg {
    position: relative;
    z-index: -1; }
  header .box .recinfo {
    position: absolute;
    bottom: -10%;
    right: 2%;
    width: 9.01%;
    max-width: 173px;
    transition: transform 0.3s;
    z-index: 7; }
    header .box .recinfo a:hover {
      filter: drop-shadow(2px 4px 6px black);
      transition: all 0.2s 0.1s ease-in-out; }
  header .box .next {
    position: absolute;
    bottom: -10%;
    left: 50%;
    transform: translate(-50%, -10%);
    width: 2.08%;
    max-width: 40px;
    z-index: 7; }
@media screen and (max-width: 767px) {
  header .box .leftmenu .logo {
    position: relative;
    max-width: 182px;
    z-index: 9999; }
  header .box .leftmenu ul {
    display: none; }
  header .box .head-title {
    width: 92.05%;
    max-width: 390px; }
  header .box .head-subtitle {
    width: 90%; }
    header .box .head-subtitle h1 {
      font-size: 5vw; }
  header .box .next {
    width: 9%;
    max-width: 28%; } }

#index-main {
  position: relative; }
  #index-main .box {
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translate(-50%, 0);
    width: 52.08%;
    max-width: 1000px;
    z-index: 5; }
    #index-main .box .movie h2 {
      margin-bottom: -1.6vw;
      color: #000;
      font-weight: bold;
      font-style: italic;
      font-family: 'Poppins', sans-serif;
      font-size: 4vw;
      text-align: center;
      animation: blur 1s both ease-in; }
    #index-main .box .sasaeru .title {
      margin-top: 5vw; }
      #index-main .box .sasaeru .title p {
        display: inline-block;
        padding: 0.2em 0.5em;
        margin: 0;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 2.4vw;
        font-weight: 900;
        font-style: italic;
        font-feature-settings: "palt";
        color: #000000;
        background: #FFFFFF; }
      #index-main .box .sasaeru .title p:last-child {
        margin-top: 1vw; }
    #index-main .box .business {
      width: 65.2%;
      max-width: 652px;
      margin: 5vw 0 0 auto;
      font-size: 1.1vw; }
      #index-main .box .business p {
        margin: 0 auto 5vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        color: #FFFFFF; }
      #index-main .box .business a {
        padding: 0.5em 2em;
        background-color: #000;
        color: #FFF;
        border: solid 1px #000;
        text-decoration: none;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
      #index-main .box .business a:hover {
        background-color: #ffffff;
        color: #000; }
    #index-main .box .recruit {
      margin: 4vw 0 0 auto;
      writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-weight: 700;
      font-size: 2vw;
      font-feature-settings: "palt";
      color: #FFFFFF; }
      #index-main .box .recruit p {
        display: table;
        padding: 0.5em 0.2em;
        background-color: #000000; }
      #index-main .box .recruit p:nth-child(2) {
        margin-top: 2vw; }
      #index-main .box .recruit p:nth-child(3) {
        margin-top: 4vw; }
    #index-main .box .careers {
      margin-top: 10vw; }
      #index-main .box .careers .title p {
        display: inline-block;
        padding: 0.2em 0.5em;
        margin: 0;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 2.1vw;
        font-weight: 900;
        font-style: italic;
        font-feature-settings: "palt";
        color: #000000;
        background: #FFFFFF; }
      #index-main .box .careers .title p:nth-child(2) {
        margin-top: 1vw; }
      #index-main .box .careers .title p:nth-child(3) {
        margin-top: 1vw; }
      #index-main .box .careers span {
        display: block;
        margin: 3vw 0;
        color: #ffffff;
        font-family: 'Zen Kaku Gothic New', sans-serif; }
      #index-main .box .careers a {
        padding: 0.5em 2em;
        background-color: #000;
        color: #FFF;
        border: solid 1px #000;
        text-decoration: none;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
      #index-main .box .careers a:hover {
        background-color: #ffffff;
        color: #000; }
    @media screen and (max-width: 767px) {
      #index-main .box {
        width: 92.31%;
        max-width: 360px; }
        #index-main .box .movie h2 {
          margin-bottom: -4vw;
          font-size: 10vw; }
        #index-main .box .sasaeru .title {
          margin-top: 55vw; }
          #index-main .box .sasaeru .title p {
            display: inline-table;
            font-size: 5vw; }
        #index-main .box .business {
          width: 92.31%;
          max-width: 360px;
          margin: 84vw auto 0; }
          #index-main .box .business p {
            font-size: 3vw; }
          #index-main .box .business a {
            display: table;
            margin-right: 0;
            margin-left: auto;
            font-size: 4vw; }
        #index-main .box .careers {
          margin-top: 50vw; }
          #index-main .box .careers .title p {
            font-size: 5vw; }
          #index-main .box .careers .title p:nth-child(2) {
            margin-top: 2vw; }
          #index-main .box .careers .title p:nth-child(4) {
            margin-top: 2vw; }
          #index-main .box .careers .title p:nth-child(5) {
            margin-top: 2vw; }
          #index-main .box .careers span {
            margin: 4vw 0;
            font-size: 3vw; }
          #index-main .box .careers a {
            display: table;
            margin-top: 6vw;
            margin-left: auto;
            margin-right: 0; }
        #index-main .box .recruit {
          margin: 50vw 0 0 32vw;
          font-size: 5vw; }
          #index-main .box .recruit p:nth-child(2) {
            margin-top: 10vw; }
          #index-main .box .recruit p:nth-child(3) {
            margin-top: 20vw; } }
  #index-main .bg {
    position: relative;
    padding-top: 21vw;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      #index-main .bg {
        padding-top: 70vw; }
        #index-main .bg .bg02 {
          display: block;
          margin-top: -52vw; } }
  #index-main .photo01 {
    position: absolute;
    top: 15vw;
    right: -8%;
    width: 47.86%;
    max-width: 919px;
    z-index: 5; }
    @media screen and (max-width: 767px) {
      #index-main .photo01 {
        top: 93vw;
        right: -15%;
        width: 89.23%;
        max-width: 348px; } }
  #index-main .photo02 {
    position: absolute;
    top: 65vw;
    left: 0;
    width: 38.54%;
    max-width: 740px;
    z-index: 4; }
    @media screen and (max-width: 767px) {
      #index-main .photo02 {
        top: 185vw;
        width: 100%;
        text-align: center; }
        #index-main .photo02 img {
          width: 92.31%;
          max-width: 360px; } }
  #index-main .photo03 {
    position: absolute;
    top: 100vw;
    right: 0;
    width: 76.04%;
    max-width: 1460px;
    z-index: 4; }
    @media screen and (max-width: 767px) {
      #index-main .photo03 {
        top: 360vw;
        width: 100%;
        text-align: center; }
        #index-main .photo03 img {
          width: 92.31%;
          max-width: 360px; } }
  #index-main .photo04 {
    position: absolute;
    top: 145vw;
    left: -12vw;
    width: 46.56%;
    max-width: 894px;
    z-index: 4; }
    @media screen and (max-width: 767px) {
      #index-main .photo04 {
        top: 590vw;
        left: -25vw;
        width: 77.18%;
        max-width: 301px; } }
  #index-main .txt01 {
    position: absolute;
    top: 46vw;
    right: 5%;
    font-size: 5vw;
    font-weight: bold;
    font-style: italic;
    font-family: 'Poppins', sans-serif;
    font-feature-settings: "palt";
    color: transparent;
    -webkit-text-stroke: 0.5px white;
    z-index: 4; }
    #index-main .txt01 p {
      margin: 0;
      padding: 0; }
    #index-main .txt01 p:last-child {
      padding-left: 1em;
      margin-top: -0.6em; }
    @media screen and (max-width: 767px) {
      #index-main .txt01 {
        top: 145vw;
        left: 5%;
        right: auto;
        font-size: 10vw; } }
  #index-main .txt02 {
    position: absolute;
    top: 96vw;
    left: 15%;
    font-size: 5vw;
    font-weight: bold;
    font-style: italic;
    font-family: 'Poppins', sans-serif;
    font-feature-settings: "palt";
    color: transparent;
    -webkit-text-stroke: 0.5px white;
    z-index: 5; }
    #index-main .txt02 p {
      margin: 0;
      padding: 0; }
    @media screen and (max-width: 767px) {
      #index-main .txt02 {
        top: 348vw;
        left: 8%;
        font-size: 14vw; } }
  #index-main .txt03 {
    position: absolute;
    top: 130vw;
    right: 5%;
    font-size: 11vw;
    font-weight: bold;
    font-style: italic;
    font-family: 'Poppins', sans-serif;
    font-feature-settings: "palt";
    color: transparent;
    -webkit-text-stroke: 1.8px white;
    z-index: 4; }
    #index-main .txt03 p {
      margin: 0;
      padding: 0; }
    #index-main .txt03 p:last-child {
      padding-left: 1em;
      margin-top: -9vw; }
    @media screen and (max-width: 767px) {
      #index-main .txt03 {
        top: 490vw;
        font-size: 15vw;
        -webkit-text-stroke: 0.5px white; } }

#banner {
  position: relative;
  margin-top: -21vw;
  z-index: 1; }
  #banner .banner-f {
    display: flex;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.9); }
    #banner .banner-f .company {
      position: relative; }
      #banner .banner-f .company .bg {
        width: 100%; }
      #banner .banner-f .company .title {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-align: center; }
        #banner .banner-f .company .title h3 {
          margin: 0;
          padding: 0;
          font-size: 5vw;
          font-family: 'Poppins', sans-serif;
          font-weight: 900;
          color: #ffffff; }
        #banner .banner-f .company .title p {
          margin: 0;
          padding: 0;
          font-size: 2vw;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          color: #FFFFFF; }
      #banner .banner-f .company a {
        transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
      #banner .banner-f .company a:hover {
        opacity: 0.7; }
    #banner .banner-f .works {
      position: relative; }
      #banner .banner-f .works .bg {
        width: 100%; }
      #banner .banner-f .works .title {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-align: center; }
        #banner .banner-f .works .title h3 {
          margin: 0;
          padding: 0;
          font-size: 5vw;
          font-family: 'Poppins', sans-serif;
          font-weight: 900;
          color: #ffffff; }
        #banner .banner-f .works .title p {
          margin: 0;
          padding: 0;
          font-size: 2vw;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          color: #FFFFFF; }
      #banner .banner-f .works a {
        transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
      #banner .banner-f .works a:hover {
        mix-blend-mode: luminosity; }
  @media screen and (max-width: 767px) {
    #banner .banner-f {
      display: block; }
      #banner .banner-f .company .title h3 {
        font-size: 10vw; }
      #banner .banner-f .company .title p {
        font-size: 4vw; }
      #banner .banner-f .works .title h3 {
        font-size: 10vw; }
      #banner .banner-f .works .title p {
        font-size: 4vw; } }

#inquiry {
  position: relative;
  z-index: 1; }
  #inquiry .box {
    display: flex;
    justify-content: space-around;
    position: absolute;
    align-items: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 52.08%;
    max-width: 1000px;
    z-index: 5; }
    #inquiry .box .text {
      padding-right: 2vw;
      border-right: solid 1px;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-size: 1.4vw;
      color: #FFF; }
      #inquiry .box .text p {
        margin: 0;
        padding: 0; }
    #inquiry .box .link a {
      border: #FFF solid 1px;
      border-radius: 2em;
      padding: 0.5em 3em;
      color: #FFFFFF;
      text-decoration: none;
      font-size: 1.2vw;
      transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
    #inquiry .box .link a:last-child {
      margin-left: 1vw; }
    #inquiry .box .link a:hover {
      background-color: rgba(255, 255, 255, 0.9);
      color: #000; }
  #inquiry .inquiry-img01 {
    position: absolute;
    top: 50%;
    left: 25%;
    transform: translate(-25%, -50%);
    width: 22.92%;
    max-width: 440px;
    z-index: 2; }
  @media screen and (max-width: 767px) {
    #inquiry .box {
      display: block;
      width: 92.31%;
      max-width: 360px; }
      #inquiry .box .text {
        padding-right: 0;
        border-right: none;
        font-size: 4vw;
        text-align: center; }
        #inquiry .box .text p {
          margin: 10vw 0 20vw; }
      #inquiry .box .link span {
        display: block;
        margin-bottom: 10vw;
        width: 100%;
        text-align: center; }
      #inquiry .box .link a {
        font-size: 4vw; }
    #inquiry .inquiry-img01 {
      top: 10%;
      left: 50%;
      transform: translate(-50%, -10%);
      width: 63.85%;
      max-width: 249px; } }

header#about {
  position: relative; }
  header#about .head-box {
    position: absolute;
    left: 23.91%;
    width: 70.21%;
    max-width: 1348px; }
    header#about .head-box .about-head-title {
      display: flex;
      justify-content: flex-start;
      align-items: baseline;
      margin-top: 11vw; }
      header#about .head-box .about-head-title h1 {
        margin: 0;
        font-size: 5vw;
        font-family: 'Poppins', sans-serif;
        font-weight: 900;
        color: #ffffff; }
      header#about .head-box .about-head-title h2 {
        margin: 0;
        padding-left: 1vw;
        font-size: 1vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        color: #ffffff; }
    header#about .head-box .about-head-subtitle {
      margin-top: 5vw; }
      header#about .head-box .about-head-subtitle p {
        display: table;
        padding: 0.2em 0.5em;
        margin: 0;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 2.4vw;
        font-weight: 900;
        font-style: italic;
        font-feature-settings: "palt";
        color: #000000;
        background: #FFFFFF; }
      header#about .head-box .about-head-subtitle p:last-child {
        margin-top: 1vw; }
    header#about .head-box .about-head-img {
      display: flex;
      justify-content: flex-start;
      margin-top: 2vw; }
      header#about .head-box .about-head-img .about-head-img-photo {
        width: 29.67%;
        max-width: 400px; }
      header#about .head-box .about-head-img .about-head-img-text {
        margin-left: 1vw;
        width: 40.13%;
        max-width: 541px;
        font-size: 1vw;
        color: #FFFFFF; }
  @media screen and (max-width: 767px) {
    header#about .head-box {
      left: 50%;
      width: 90%;
      transform: translate(-50%, 0); }
      header#about .head-box .about-head-title {
        margin-top: 65vw; }
        header#about .head-box .about-head-title h1 {
          font-size: 10vw; }
        header#about .head-box .about-head-title h2 {
          font-size: 3vw; }
      header#about .head-box .about-head-subtitle {
        margin-top: 20vw; }
        header#about .head-box .about-head-subtitle p {
          font-size: 5vw; }
      header#about .head-box .about-head-img {
        display: block;
        margin-top: 20vw; }
        header#about .head-box .about-head-img .about-head-img-photo {
          width: 56.92%;
          max-width: 222px; }
        header#about .head-box .about-head-img .about-head-img-text {
          width: 100%;
          font-size: 3vw; }
    header#about .next {
      display: none; } }

#about-box {
  position: relative; }
  #about-box .headbottom-bg {
    position: relative;
    z-index: -1; }
  #about-box .headbottom-bg2 {
    position: relative;
    bottom: 0;
    margin-top: 60vw;
    z-index: -1; }
  #about-box .about-box-title {
    position: absolute;
    top: 15vw;
    left: 5%; }
    #about-box .about-box-title p {
      margin: 0;
      font-size: 5vw;
      font-weight: bold;
      font-style: italic;
      font-family: 'Poppins', sans-serif;
      font-feature-settings: "palt";
      color: transparent;
      -webkit-text-stroke: 0.5px white;
      z-index: 5; }
    #about-box .about-box-title p:last-child {
      margin-top: -3vw; }
  #about-box .about-box-in {
    position: absolute;
    top: 18vw;
    left: 50%;
    transform: translate(-50%, 0);
    width: 50%;
    max-width: 960px; }
    #about-box .about-box-in h3 {
      display: inline-block;
      padding: 0.1em 0.2em;
      background: rgba(0, 0, 0, 0.9);
      color: #ffffff;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-size: 2vw; }
    #about-box .about-box-in ul {
      list-style: none;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      width: 100%; }
      #about-box .about-box-in ul li {
        width: 44.5%;
        max-width: 445px; }
        #about-box .about-box-in ul li .words {
          margin-top: 1vw;
          padding-left: 2vw;
          border-left: solid 1px #000;
          font-family: 'Zen Kaku Gothic New', sans-serif; }
          #about-box .about-box-in ul li .words span {
            font-weight: bold; }
          #about-box .about-box-in ul li .words i {
            font-family: 'Poppins', sans-serif; }
          #about-box .about-box-in ul li .words p {
            font-size: 1vw; }
  #about-box .about-img-01 {
    position: absolute;
    bottom: 35vw;
    left: 1%;
    width: 49.9%;
    max-width: 958px; }
  #about-box .about-img-02 {
    position: absolute;
    top: 21vw;
    right: -14%;
    width: 46.93%;
    max-width: 901px; }
  @media screen and (max-width: 767px) {
    #about-box .headbottom-bg2 {
      margin-top: 550vw; }
    #about-box .about-box-title {
      top: 90vw; }
      #about-box .about-box-title p {
        font-size: 10vw; }
    #about-box .about-box-in {
      top: 120vw;
      width: 90%;
      z-index: 5; }
      #about-box .about-box-in h3 {
        position: relative;
        display: table;
        font-size: 6vw;
        margin-top: 0;
        margin-left: auto;
        margin-right: 0; }
      #about-box .about-box-in ul {
        display: block;
        margin: 0;
        padding: 0; }
        #about-box .about-box-in ul li {
          width: 100%;
          padding-bottom: 5vw; }
          #about-box .about-box-in ul li .words p {
            font-size: 3vw; }
    #about-box .about-img-01 {
      bottom: 105vw;
      width: 79.74%;
      max-width: 311px; }
    #about-box .about-img-02 {
      top: 87vw;
      right: -14%;
      width: 75.38%;
      max-width: 294px;
      z-index: 1; } }

header#company {
  position: relative; }
  header#company .head-box {
    position: absolute;
    left: 23.91%;
    width: 70.21%;
    max-width: 1348px; }
    header#company .head-box .company-head-title {
      display: flex;
      justify-content: flex-start;
      align-items: baseline;
      margin-top: 11vw; }
      header#company .head-box .company-head-title h1 {
        margin: 0;
        font-size: 5vw;
        font-family: 'Poppins', sans-serif;
        font-weight: 900;
        color: #ffffff; }
      header#company .head-box .company-head-title h2 {
        margin: 0;
        padding-left: 1vw;
        font-size: 1vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        color: #ffffff; }
    header#company .head-box .company-head-subtitle {
      margin-top: 5vw; }
      header#company .head-box .company-head-subtitle p {
        display: table;
        padding: 0.2em 0.5em;
        margin: 0;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 2.4vw;
        font-weight: 900;
        font-style: italic;
        font-feature-settings: "palt";
        color: #000000;
        background: #FFFFFF; }
      header#company .head-box .company-head-subtitle p:last-child {
        margin-top: 1vw; }
    header#company .head-box .company-head-img {
      display: flex;
      justify-content: flex-start;
      margin-top: 2vw; }
      header#company .head-box .company-head-img .company-head-img-photo {
        width: 29.67%;
        max-width: 400px; }
      header#company .head-box .company-head-img .company-head-img-text {
        margin-left: 1vw;
        width: 40.13%;
        max-width: 541px;
        font-size: 1vw;
        color: #FFFFFF; }
  header#company .company-head {
    margin-top: 5vw; }
    header#company .company-head .title {
      margin-bottom: 1vw;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      color: #FFFFFF; }
    header#company .company-head .inbox {
      padding: 2vw;
      width: 74.18%;
      max-width: 1000px;
      background-color: #FFFFFF; }
      header#company .company-head .inbox span {
        background-color: #000000;
        color: #ffffff;
        font-size: 2vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-weight: bold;
        line-height: 1.3em; }
      header#company .company-head .inbox p {
        font-size: 1vw;
        font-family: 'Zen Kaku Gothic New', sans-serif; }
      header#company .company-head .inbox .sign {
        text-align: right; }
        header#company .company-head .inbox .sign img {
          width: 19.3%;
          max-width: 193px; }
  @media screen and (max-width: 767px) {
    header#company .head-box {
      left: 50%;
      transform: translate(-50%, 0);
      width: 90%;
      max-width: 767px; }
      header#company .head-box .company-head-title {
        margin-top: 47vw; }
        header#company .head-box .company-head-title h1 {
          font-size: 10vw; }
        header#company .head-box .company-head-title h2 {
          font-size: 3vw; }
      header#company .head-box .company-head-subtitle {
        margin-top: 10vw; }
        header#company .head-box .company-head-subtitle p {
          font-size: 5vw; }
    header#company .company-head {
      margin-top: 50vw; }
      header#company .company-head .inbox {
        padding: 4vw;
        width: 100%; }
        header#company .company-head .inbox span {
          font-size: 6vw; }
        header#company .company-head .inbox p {
          font-size: 3vw;
          line-height: 2em; }
        header#company .company-head .inbox .sign img {
          width: 45%; } }

#company-box {
  position: relative; }
  #company-box .headbottom-bg {
    position: relative;
    z-index: -1; }
  #company-box .company-box-title {
    position: absolute;
    top: 27vw;
    right: 5%;
    font-size: 5vw;
    font-weight: bold;
    font-style: italic;
    font-family: 'Poppins', sans-serif;
    font-feature-settings: "palt";
    color: transparent;
    -webkit-text-stroke: 0.5px white;
    z-index: 4; }
    #company-box .company-box-title p {
      margin: 0;
      text-align: right; }
    #company-box .company-box-title p:first-child {
      padding-right: 13vw; }
    #company-box .company-box-title p:nth-child(2) {
      margin-top: -3vw; }
  #company-box .company-box-plof {
    position: absolute;
    top: 32vw;
    left: 23.91%;
    width: 70.21%;
    max-width: 1348px;
    color: #FFFFFF;
    font-family: 'Zen Kaku Gothic New', sans-serif; }
    #company-box .company-box-plof .title {
      font-size: 2vw; }
    #company-box .company-box-plof ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      #company-box .company-box-plof ul li {
        display: flex;
        justify-content: flex-start;
        border-bottom: solid 1px;
        padding-bottom: 2vw;
        padding-top: 2vw;
        font-size: 1vw; }
        #company-box .company-box-plof ul li span {
          width: 20%; }
        #company-box .company-box-plof ul li p {
          margin: 0; }
      #company-box .company-box-plof ul li:last-child {
        border-bottom: none; }
  #company-box .headbottom-bg2 {
    position: absolute;
    top: 25vw;
    left: 11%;
    width: 17.4%;
    max-width: 334px; }
  @media screen and (max-width: 767px) {
    #company-box .company-box-title {
      top: 140vw;
      font-size: 10vw; }
    #company-box .company-box-plof {
      top: 170vw;
      left: 50%;
      transform: translate(-50%, 0);
      width: 90%; }
      #company-box .company-box-plof .title {
        font-size: 5vw; }
      #company-box .company-box-plof ul li {
        font-size: 3vw;
        padding-bottom: 8vw;
        padding-top: 8vw; }
        #company-box .company-box-plof ul li span {
          width: 25%; } }

header#contact {
  position: relative; }
  header#contact .head-box {
    position: absolute;
    left: 23.91%;
    width: 70.21%;
    max-width: 1348px; }
    header#contact .head-box .contact-head-title {
      display: flex;
      justify-content: flex-start;
      align-items: baseline;
      margin-top: 11vw; }
      header#contact .head-box .contact-head-title h1 {
        margin: 0;
        font-size: 5vw;
        font-family: 'Poppins', sans-serif;
        font-weight: 900;
        color: #ffffff; }
      header#contact .head-box .contact-head-title h2 {
        margin: 0;
        padding-left: 1vw;
        font-size: 1vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        color: #ffffff; }
    header#contact .head-box .contact-head {
      margin-top: 2vw; }
      header#contact .head-box .contact-head .inbox {
        width: 74.18%;
        max-width: 1000px; }
        header#contact .head-box .contact-head .inbox p {
          font-size: 1vw;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          color: #ffffff; }
        header#contact .head-box .contact-head .inbox .outlink {
          display: flex;
          justify-content: space-between; }
          header#contact .head-box .contact-head .inbox .outlink span {
            width: 48%;
            max-width: 480px; }
  header#contact .contact-img {
    position: absolute;
    top: 5vw;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 5; }
  @media screen and (max-width: 767px) {
    header#contact .head-box {
      left: 50%;
      width: 90%;
      transform: translate(-50%, 0); }
      header#contact .head-box .contact-head-title {
        margin-top: 65vw; }
        header#contact .head-box .contact-head-title h1 {
          font-size: 10vw; }
        header#contact .head-box .contact-head-title h2 {
          font-size: 3vw; }
      header#contact .head-box .contact-head .inbox {
        width: 100%; }
        header#contact .head-box .contact-head .inbox p {
          margin-bottom: 20vw;
          font-size: 3vw; }
        header#contact .head-box .contact-head .inbox .outlink {
          display: block; }
          header#contact .head-box .contact-head .inbox .outlink span {
            display: block;
            margin-bottom: 3vw;
            width: 100%;
            max-width: 351px; } }

#contact-box {
  position: relative; }
  #contact-box .form {
    margin: 5vw auto 10vw;
    width: 52.08%;
    max-width: 1000px; }
    #contact-box .form .contact7 {
      display: flex;
      flex-wrap: wrap;
      max-width: 100%;
      box-sizing: border-box;
      font-family: 'Zen Kaku Gothic New', sans-serif; }
      #contact-box .form .contact7 dd {
        width: 69%;
        margin: 0 0 30px 0;
        background-color: #ffffff; }
      #contact-box .form .contact7 dt {
        width: 30%;
        font-weight: normal; }
      #contact-box .form .contact7 .must {
        background: #86012E;
        color: #FFF;
        border-radius: 10px;
        font-size: 0.7vw;
        margin-left: 10px;
        padding: 1px 2px;
        letter-spacing: 2px; }
      #contact-box .form .contact7 .optional {
        background: #999;
        color: #FFF;
        border-radius: 10px;
        font-size: 0.7vw;
        margin-left: 10px;
        padding: 1px 2px;
        letter-spacing: 2px; }
    #contact-box .form .btn_contact7 {
      text-align: center; }
      #contact-box .form .btn_contact7 input {
        width: 70%;
        background-color: #000000;
        color: #FFF;
        font-size: 1.1em;
        font-weight: bold;
        letter-spacing: 0.2em;
        border: 1px solid #005513;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        -ms-transition: 0.3s;
        transition: 0.3s; }
      #contact-box .form .btn_contact7 input:hover {
        background-color: #86012E;
        color: #ffffff; }
    #contact-box .form .contact7-words p {
      text-align: center; }
    #contact-box .form .privacy {
      overflow-x: scroll;
      width: 100%;
      height: 225px;
      margin: auto;
      border: #CCCCCC solid 1px; }
      #contact-box .form .privacy p {
        width: 90%;
        margin: 0 auto 2em;
        font-size: 1vw;
        text-align: left; }
      #contact-box .form .privacy p:first-child {
        padding-top: 1vw; }
      #contact-box .form .privacy span {
        display: block;
        font-weight: bold; }
  @media screen and (max-width: 767px) {
    #contact-box .form {
      width: 90%; }
      #contact-box .form .contact7 {
        display: block; }
        #contact-box .form .contact7 dd {
          width: 100%;
          font-size: 4vw; }
        #contact-box .form .contact7 dt {
          width: 100%;
          font-size: 4vw; }
        #contact-box .form .contact7 .must {
          font-size: 3vw; }
        #contact-box .form .contact7 .optional {
          font-size: 3vw; }
      #contact-box .form .contact7-words p {
        font-size: 4vw; }
      #contact-box .form .btn_contact7 input {
        display: block;
        margin: auto; } }

header#recruit {
  position: relative; }
  header#recruit .head-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 36.09%;
    max-width: 693px; }
  header#recruit .recinfo {
    bottom: 3%; }
  @media screen and (max-width: 767px) {
    header#recruit .head-box {
      width: 86.41%;
      max-width: 337px; }
    header#recruit .head-bg img {
      width: 100%; } }

.recruit-title {
  margin: 1vw; }
  @media screen and (max-width: 767px) {
    .recruit-title {
      width: 99.49%;
      max-width: 388px; } }

#recruit-box {
  position: relative; }
  #recruit-box .recbox-title {
    position: absolute;
    top: 1vw;
    left: 23.96%; }
    #recruit-box .recbox-title .inbox {
      position: relative; }
    #recruit-box .recbox-title .text01 {
      display: flex;
      flex-direction: column;
      margin-top: 1vw; }
      #recruit-box .recbox-title .text01 span {
        margin: 0 0 0.5em; }
        #recruit-box .recbox-title .text01 span p {
          display: inline-block;
          padding: 0 0.1em;
          margin: 0;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          font-size: 2.4vw;
          font-weight: 900;
          font-style: italic;
          font-feature-settings: "palt";
          color: #000000;
          background: #FFFFFF; }
    #recruit-box .recbox-title .text02 {
      position: absolute;
      top: -2.5vw;
      left: 50vw;
      display: flex;
      flex-direction: column;
      writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-weight: 700;
      font-size: 2vw;
      font-feature-settings: "palt";
      color: #FFFFFF; }
      #recruit-box .recbox-title .text02 span {
        margin: 0 0 0 1vw; }
        #recruit-box .recbox-title .text02 span p {
          display: inline-block;
          margin: 0;
          padding: 0;
          background-color: #000000;
          word-break: keep-all; }
  #recruit-box .ourworks {
    position: absolute;
    top: 25vw;
    right: 0; }
    #recruit-box .ourworks .inbox {
      position: relative; }
    #recruit-box .ourworks .text01 {
      position: absolute;
      display: flex;
      left: 20vw;
      flex-direction: column;
      margin: 4vw 0 0 auto;
      writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-weight: 700;
      font-size: 2vw;
      font-feature-settings: "palt";
      color: #FFFFFF; }
      #recruit-box .ourworks .text01 span {
        margin: 0 0 0 1vw; }
        #recruit-box .ourworks .text01 span p {
          display: inline-block;
          margin: 0;
          background-color: #000000; }
    #recruit-box .ourworks .photos {
      margin-right: 0;
      margin-left: auto;
      width: 64.53%;
      max-width: 1239px; }
    #recruit-box .ourworks .words {
      position: absolute;
      bottom: -6vw;
      right: 2vw;
      width: 23.54%;
      max-width: 452px;
      mix-blend-mode: darken; }
    #recruit-box .ourworks .imgs {
      position: absolute;
      top: 0;
      left: -7vw;
      width: 49.58%;
      max-width: 952px; }
  #recruit-box .message {
    margin-left: 23.96%; }
    #recruit-box .message .title {
      display: flex;
      align-items: baseline; }
      #recruit-box .message .title h3 {
        margin: 0;
        font-family: 'Poppins', sans-serif;
        font-size: 4vw;
        font-weight: bold;
        color: #000; }
      #recruit-box .message .title p {
        margin: 0 0 0 2vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 1vw; }
    #recruit-box .message .subtitle {
      display: inline-block;
      margin: 2vw 0;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-weight: 700;
      font-size: 2vw;
      font-style: italic;
      color: #FFFFFF;
      background-color: #000000; }
    #recruit-box .message .words {
      font-family: 'Zen Kaku Gothic New', sans-serif;
      font-size: 1vw;
      line-height: 2em; }
  #recruit-box .member {
    margin-left: 23.96%;
    margin-top: 5vw; }
    #recruit-box .member .title {
      display: flex;
      align-items: baseline; }
      #recruit-box .member .title h3 {
        margin: 0;
        font-family: 'Poppins', sans-serif;
        font-size: 4vw;
        font-weight: bold;
        color: #000; }
      #recruit-box .member .title p {
        margin: 0 0 0 2vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        font-size: 1vw; }
  #recruit-box .member-photo {
    display: flex; }
    #recruit-box .member-photo .photo {
      position: relative;
      width: 33.33%;
      outline: 1px solid #fff;
      outline-offset: -1px; }
      #recruit-box .member-photo .photo .name {
        position: absolute;
        bottom: 1vw;
        left: 1vw;
        display: flex;
        flex-direction: column;
        font-family: 'Zen Kaku Gothic New', sans-serif; }
        #recruit-box .member-photo .photo .name span {
          font-size: 1vw; }
          #recruit-box .member-photo .photo .name span p {
            display: inline-block;
            padding: 0;
            margin: 1vw 0 0;
            background-color: #FFF; }
        #recruit-box .member-photo .photo .name span:last-child {
          font-size: 2vw; }
  #recruit-box .efw {
    position: relative;
    background-image: linear-gradient(90deg, #fff21f, #fccd00 4%, #f1942e 33%, #ea652d 89%, #e5352b); }
    #recruit-box .efw .inbox {
      margin-left: 23.96%; }
      #recruit-box .efw .inbox .title {
        padding: 5vw 0 0; }
        #recruit-box .efw .inbox .title h3 {
          margin: 0;
          color: #ffffff;
          font-size: 3vw;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          font-style: italic; }
        #recruit-box .efw .inbox .title span {
          display: flex; }
          #recruit-box .efw .inbox .title span p {
            padding: 0.1vw 0.2vw;
            margin-right: 1vw;
            background-color: #fff;
            font-weight: bold; }
      #recruit-box .efw .inbox ul {
        margin: 0;
        padding: 0 0 5vw;
        list-style: none;
        width: 52.08%;
        max-width: 1000px; }
        #recruit-box .efw .inbox ul li {
          display: flex;
          padding-bottom: 2vw;
          margin-bottom: 2vw;
          border-bottom: #ffffff solid 1px;
          color: #FFFFFF;
          font-size: 1.2vw; }
          #recruit-box .efw .inbox ul li span {
            width: 30%;
            max-width: 300px; }
          #recruit-box .efw .inbox ul li p {
            margin: 0;
            padding: 0;
            width: 70%; }
        #recruit-box .efw .inbox ul li:last-child {
          border-bottom: none; }
    #recruit-box .efw .textr {
      position: absolute;
      top: 3vw;
      right: 5%;
      font-size: 5vw;
      font-weight: bold;
      font-style: italic;
      font-family: 'Poppins', sans-serif;
      font-feature-settings: "palt";
      text-align: right;
      color: transparent;
      -webkit-text-stroke: 0.5px white;
      z-index: 4; }
      #recruit-box .efw .textr span {
        display: block; }
      #recruit-box .efw .textr span:first-child {
        margin-right: 23vw; }
      #recruit-box .efw .textr span:last-child {
        margin-top: -3.5vw; }
  #recruit-box .images02 {
    position: absolute;
    top: 65vw;
    right: -5vw;
    width: 48.96%;
    max-width: 940px; }
  @media screen and (max-width: 767px) {
    #recruit-box .recbox-title {
      width: 90%;
      left: 50%;
      transform: translate(-50%, 0); }
      #recruit-box .recbox-title .text01 {
        margin-top: 40vw; }
        #recruit-box .recbox-title .text01 span p {
          font-size: 5vw; }
      #recruit-box .recbox-title .text02 {
        top: -40vw;
        left: auto;
        right: 0;
        font-size: 6vw; }
    #recruit-box .ourworks {
      top: 90vw; }
      #recruit-box .ourworks .text01 {
        left: 5vw;
        font-size: 6vw; }
      #recruit-box .ourworks .photos {
        padding-top: 50vw;
        width: 100%; }
      #recruit-box .ourworks .words {
        bottom: -20vw;
        width: 67.44%;
        max-width: 263px; }
      #recruit-box .ourworks .imgs {
        top: -2em;
        left: auto;
        right: -40vw;
        width: 84.1%;
        max-width: 328px; }
    #recruit-box .headbottom-bg {
      margin-bottom: 60vw; }
    #recruit-box .message {
      margin-left: 5%; }
      #recruit-box .message .title h3 {
        font-size: 10vw; }
      #recruit-box .message .title p {
        font-size: 3vw; }
      #recruit-box .message .subtitle {
        font-size: 6vw; }
      #recruit-box .message .words {
        font-size: 3vw; }
    #recruit-box .member {
      margin-left: 5%;
      margin-top: 20vw; }
      #recruit-box .member .title h3 {
        font-size: 10vw; }
      #recruit-box .member .title p {
        font-size: 3vw; }
    #recruit-box .member-photo {
      display: block; }
      #recruit-box .member-photo .photo {
        width: 100%; }
        #recruit-box .member-photo .photo .name span {
          font-size: 4vw; }
        #recruit-box .member-photo .photo .name span:last-child {
          font-size: 6vw; }
    #recruit-box .efw {
      background-image: linear-gradient(129deg, #fff21f, #fccd00 4%, #f1942e 33%, #ea652d 89%, #e5352b); }
      #recruit-box .efw .inbox {
        margin-left: 5%; }
        #recruit-box .efw .inbox .title {
          padding: 15vw 0 0; }
          #recruit-box .efw .inbox .title h3 {
            font-size: 7vw; }
          #recruit-box .efw .inbox .title span p {
            margin-top: 0; }
        #recruit-box .efw .inbox ul {
          width: 90%; }
          #recruit-box .efw .inbox ul li {
            font-size: 3vw; }
      #recruit-box .efw .textr {
        top: 1vw;
        right: 1%;
        font-size: 9vw; }
    #recruit-box .images02 {
      top: 222vw;
      right: -15vw;
      width: 94.1%;
      max-width: 367px; } }

.entry {
  position: relative; }
  .entry .text {
    position: absolute;
    left: 42.29%;
    top: 5vw; }
    .entry .text .title {
      margin-bottom: 1vw;
      font-size: 2.5vw;
      font-family: 'Zen Kaku Gothic New', sans-serif;
      color: #FFFFFF; }
    .entry .text a {
      border: #FFF solid 1px;
      border-radius: 2em;
      padding: 0.5em 3em;
      margin-left: 5vw;
      color: #FFFFFF;
      text-decoration: none;
      font-size: 1.2vw;
      transition: 0.4s cubic-bezier(0.37, 0, 0.63, 1); }
    .entry .text a:hover {
      background-color: rgba(255, 255, 255, 0.9);
      color: #000; }
  @media screen and (max-width: 767px) {
    .entry .text {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 90%;
      text-align: center; }
      .entry .text .title {
        margin-bottom: 5vw;
        font-size: 6vw;
        font-weight: bold; }
      .entry .text a {
        font-size: 4vw; } }

header#works {
  position: relative; }
  header#works .head-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 36.09%;
    max-width: 693px; }
    header#works .head-box .company-head-title {
      display: flex;
      justify-content: flex-start;
      align-items: baseline;
      margin-top: 11vw; }
      header#works .head-box .company-head-title h1 {
        margin: 0;
        font-size: 5vw;
        font-family: 'Poppins', sans-serif;
        font-weight: 900;
        color: #ffffff; }
      header#works .head-box .company-head-title h2 {
        margin: 0;
        padding-left: 1vw;
        font-size: 1vw;
        font-family: 'Zen Kaku Gothic New', sans-serif;
        color: #ffffff; }
  @media screen and (max-width: 767px) {
    header#works .head-box {
      width: 90%; }
      header#works .head-box .company-head-title {
        margin-top: -25vw; }
        header#works .head-box .company-head-title h1 {
          font-size: 13vw; }
        header#works .head-box .company-head-title h2 {
          font-size: 3vw; }
    header#works .head-img {
      position: absolute;
      top: 89vw;
      right: -44vw;
      width: 97.44%;
      max-width: 380px; } }

#works-box {
  position: relative; }
  #works-box .worksarea {
    height: 50vw; }
  #works-box .inbox {
    position: absolute;
    top: -5vw;
    left: 50%;
    transform: translate(-50%, 0);
    width: 52.08%;
    max-width: 1000px;
    font-family: 'Poppins', sans-serif; }
  #works-box .entry-date {
    background: url("/img/works/icon.png") no-repeat left;
    background-size: contain; }
    #works-box .entry-date time {
      margin-left: 2vw; }
  #works-box .pt-cv-pagination-wrapper {
    text-align: center; }
  #works-box .works-img {
    position: absolute;
    bottom: 20vw;
    left: 0;
    width: 49.58%;
    max-width: 952px; }
  @media screen and (max-width: 767px) {
    #works-box .worksarea {
      height: 200vh; }
    #works-box .inbox {
      top: -30vw;
      width: 74.36%; }
    #works-box .entry-date time {
      margin-left: 7vw; } }

.post-thumbnail {
  display: none; }

.blog-p {
  margin: -5vw auto 10vw !important;
  padding: 2vw;
  width: 52.08%;
  max-width: 1000px;
  background: rgba(0, 0, 0, 0.9);
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1vw;
  color: #FFFFFF;
  box-shadow: rgba(0, 0, 0, 0.8) 0.2vw 0.2vw 0.5vw; }
  .blog-p h1 {
    padding-left: 3vw;
    background: url("/img/works/icon.png") no-repeat left;
    background-size: contain;
    font-size: 1.2vw;
    font-weight: normal; }
  @media screen and (max-width: 767px) {
    .blog-p {
      margin: -20vw auto 10vw !important;
      width: 90%;
      font-size: 4vw; }
      .blog-p h1 {
        padding-left: 10vw;
        font-size: 5vw; } }

.nav-links {
  margin: auto !important;
  width: 90%; }
  .nav-links a {
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1vw;
    color: #000000 !important;
    text-decoration: none !important; }
  @media screen and (max-width: 767px) {
    .nav-links a {
      font-size: 4vw; } }

@-webkit-keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 102.55999755859375px;
    stroke-dasharray: 102.55999755859375px; }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 102.55999755859375px; } }
@keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 102.55999755859375px;
    stroke-dasharray: 102.55999755859375px; }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 102.55999755859375px; } }
header .box .svg-elem-1 {
  -webkit-animation: animate-svg-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both;
  animation: animate-svg-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both; }
@-webkit-keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 59.02312469482422px;
    stroke-dasharray: 59.02312469482422px; }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 59.02312469482422px; } }
@keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 59.02312469482422px;
    stroke-dasharray: 59.02312469482422px; }
  100% {
    stroke-dashoffset: 0;
    stroke-dasharray: 59.02312469482422px; } }
header .box .svg-elem-2 {
  -webkit-animation: animate-svg-stroke-2 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both;
  animation: animate-svg-stroke-2 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both; }

@keyframes blur {
  from {
    filter: blur(10px); }
  to {
    filter: blur(0); } }
#achievements {
  position: relative;
  z-index: 1; }
  #achievements .box {
    width: 100%; }
    #achievements .box .head-box {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 60.05%;
      max-width: 1153px; }
      #achievements .box .head-box .achievements-head-subtitle {
        margin-top: 5vw; }
        #achievements .box .head-box .achievements-head-subtitle span {
          display: block;
          padding-bottom: 1em;
          color: #FFFFFF;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          font-weight: 600;
          font-size: 1.2vw; }
        #achievements .box .head-box .achievements-head-subtitle p {
          display: table;
          padding: 0.2em 0.5em;
          margin: 0;
          font-family: 'Zen Kaku Gothic New', sans-serif;
          font-size: 2.4vw;
          font-weight: 900;
          font-style: italic;
          font-feature-settings: "palt";
          color: #000000;
          background: #FFFFFF; }
        #achievements .box .head-box .achievements-head-subtitle p:last-child {
          margin-top: 1vw; }
      #achievements .box .head-box .achievements-head {
        margin-top: 2vw; }
        #achievements .box .head-box .achievements-head .inbox {
          width: 100%;
          background-color: rgba(0, 0, 0, 0.6);
          padding: 1vw; }
          #achievements .box .head-box .achievements-head .inbox p {
            font-size: 0.8vw;
            font-family: 'Zen Kaku Gothic New', sans-serif;
            color: #ffffff; }
          #achievements .box .head-box .achievements-head .inbox .outlink {
            display: flex;
            justify-content: space-between; }
            #achievements .box .head-box .achievements-head .inbox .outlink span {
              width: 48%;
              max-width: 480px; }

.achievements {
  position: relative;
  width: 100%;
  height: auto; }
  .achievements .in-box {
    position: relative;
    margin: auto;
    width: 60.05%;
    max-width: 1153px;
    z-index: 1; }
    .achievements .in-box .ac-box {
      margin: auto;
      width: 86.73%;
      max-width: 1000px; }
      .achievements .in-box .ac-box .str {
        margin: 3vw auto 0; }
        .achievements .in-box .ac-box .str .str-title {
          margin: auto;
          width: 55.2%;
          max-width: 552px; }
          .achievements .in-box .ac-box .str .str-title p {
            font-size: 1.6em;
            font-weight: 600;
            text-align: center;
            color: #000000; }
        .achievements .in-box .ac-box .str .str-list {
          margin: auto;
          width: 73.5%;
          max-width: 735px; }
        .achievements .in-box .ac-box .str .str-hoshu {
          margin: 5vw auto;
          width: 87.1%;
          max-width: 871px; }
          .achievements .in-box .ac-box .str .str-hoshu p {
            font-size: 0.8em;
            text-align: center;
            color: #FFFFFF; }
        .achievements .in-box .ac-box .str .str-mitsu {
          text-align: center; }
          .achievements .in-box .ac-box .str .str-mitsu .mitsumori {
            width: 54.1%;
            max-width: 541px; }
          .achievements .in-box .ac-box .str .str-mitsu .check {
            margin: 2vw auto 5vw;
            width: 87.3%;
            max-width: 873px; }
      .achievements .in-box .ac-box .ach {
        margin: 10vw auto 5vw; }
        .achievements .in-box .ac-box .ach .ac-se {
          max-width: 523px;
          width: 52.3%; }
          .achievements .in-box .ac-box .ach .ac-se img {
            width: 100%; }
        .achievements .in-box .ac-box .ach .icons {
          margin: 5vw 0;
          width: 100%;
          max-width: 1000px; }
        .achievements .in-box .ac-box .ach .comment01 {
          text-align: center; }
          .achievements .in-box .ac-box .ach .comment01 h3 {
            color: #FFFFFF; }
          .achievements .in-box .ac-box .ach .comment01 p {
            color: #FFFFFF;
            font-size: 0.8em; }
        .achievements .in-box .ac-box .ach .hituyou {
          margin: 2vw auto;
          width: 85.9%;
          max-width: 859px; }
        .achievements .in-box .ac-box .ach .renew {
          margin: auto;
          width: 99.8%;
          max-width: 998px; }
        .achievements .in-box .ac-box .ach .yosan {
          margin: 3vw auto 2vw;
          width: 85%;
          max-width: 850px; }
        .achievements .in-box .ac-box .ach .outlink {
          display: flex;
          justify-content: space-around;
          padding: 1vw 0;
          width: 100%;
          max-width: 1000px;
          background-color: rgba(0, 0, 0, 0.8); }
          .achievements .in-box .ac-box .ach .outlink span {
            width: 48%;
            max-width: 480px; }
      .achievements .in-box .ac-box .flow {
        margin-top: 15vw;
        margin-bottom: 15vw; }
        .achievements .in-box .ac-box .flow h2 {
          text-align: center;
          font-size: 1.8em;
          color: #FFFFFF; }
        .achievements .in-box .ac-box .flow .flow-box {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          width: 100%; }
          .achievements .in-box .ac-box .flow .flow-box .flow-one {
            width: 45.5%;
            max-width: 445px; }
            .achievements .in-box .ac-box .flow .flow-box .flow-one .photo {
              width: 100%; }
            .achievements .in-box .ac-box .flow .flow-box .flow-one .text-box {
              border-left: #000 solid 1px;
              padding-left: 2vw; }
              .achievements .in-box .ac-box .flow .flow-box .flow-one .text-box p {
                font-size: 0.8em; }
  .achievements .achievements-bg {
    position: absolute;
    top: -4vw;
    left: 0;
    width: 100%;
    z-index: -1; }
  .achievements .photos01 {
    position: absolute;
    top: 10vw;
    right: 0;
    width: 24.74%;
    max-width: 475px; }
  .achievements .photos02 {
    position: absolute;
    top: 125vw;
    left: 0;
    width: 24.74%;
    max-width: 475px; }
  .achievements .photos03 {
    position: absolute;
    bottom: 20vw;
    right: 0;
    width: 24.74%;
    max-width: 475px; }
