@charset "UTF-8";
/***************************************
 *
 *base CSS
 *
 *2019/XX
 *
 ****************************************** */
/*****************************
 *
 *settings
 *
 ***************************** */
/*****************************
 *
 *settings
 *
 ***************************** */
/***********************
 *
 *common
 *
 ********************** */
#lang_btn label {
  display: none; }
#lang_btn ul, #lang_btn li, #lang_btn a, #lang_btn aside {
  display: block;
  background: #7F8890;
  color: #fff;
  width: 100%;
  font-weight: bold;
  font-family: "Oswald";
  text-align: center; }
#lang_btn ul {
  display: none; }
  #lang_btn ul li:nth-of-type(1) a {
    border-bottom: 1px solid #3C3F43; }
  #lang_btn ul li a {
    padding: 10px;
    transition: 0.4s ease;
    font-size: 15px; }
    #lang_btn ul li a:hover {
      text-decoration: none;
      background: #007586; }

* {
  box-sizing: border-box; }

a {
  text-decoration: none;
  color: inherit; }

s {
  text-decoration: none; }

li {
  list-style: none; }

i, em {
  font-style: normal; }

body, html {
  margin: 0px;
  padding: 0px;
  font-family: "Yu Gothic", "YuGothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Oswald", sans-serif;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  color: #3C3F43; }

body {
  overflow-x: hidden; }
  body.attempt {
    overflow-x: visible; }

ul {
  margin: 0;
  padding: 0; }

h2, h3, h4, h5 {
  font-weight: bold; }

.ib {
  width: 992px;
  margin: 0 auto;
  position: relative;
  max-width: 100%; }

table {
  border-collapse: collapse; }

#wpadminbar {
  display: none; }

.pc_content {
  display: block !important; }

.sp_content {
  display: none !important; }

::-webkit-scrollbar {
  width: 10px; }

::-webkit-scrollbar-track {
  background: #fff;
  border: none;
  border-radius: 10px;
  box-shadow: inset 0 0 2px #777; }

::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
  box-shadow: none; }

.btn_border {
  text-align: center;
  display: block;
  margin: 20px auto;
  position: relative;
  max-width: 300px;
  background: #f1f1f1; }
  .btn_border::before {
    right: 0;
    top: 0; }
  .btn_border::after {
    left: 0;
    bottom: 0; }
  .btn_border::before, .btn_border::after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    transition: all 0.2s linear;
    background: #000;
    transition-delay: 0s; }
  .btn_border:hover::before, .btn_border:hover::after {
    width: 100%;
    transition-delay: 0.2s; }
  .btn_border:hover span::before, .btn_border:hover span::after {
    height: 100%;
    transition-delay: 0s; }
  .btn_border span {
    display: block;
    padding: 15px;
    font-size: 16px;
    color: #000;
    position: relative; }
    .btn_border span::before {
      left: 0;
      top: 0; }
    .btn_border span::after {
      right: 0;
      bottom: 0; }
    .btn_border span::before, .btn_border span::after {
      content: "";
      width: 1px;
      height: 0;
      position: absolute;
      transition: all 0.2s linear;
      background: #000;
      transition-delay: 0.2s; }

/*************************************
 *
 *404
 *
 ************************************* */
p.p404 {
  padding: 40px;
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  background: #f1f1f1;
  margin: 40px 0; }

/***************************************
 *
 *header
 *
 ************************************* */
.bg_layer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99;
  display: none; }
  .bg_layer.active {
    display: block; }

header {
  height: 88px;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 9999;
  left: 0;
  letter-spacing: 0; }
  header.subpage nav .link .parent em a {
    color: #3C3F43; }
  header.subpage nav .link .parent .icon .shape {
    fill: #3C3F43; }
  header.c_w.scrolled nav .link .parent em a {
    color: #3C3F43; }
  header.c_w nav .link .parent .icon .shape {
    fill: #fff; }
  header.c_w nav .link .parent em a {
    color: #fff; }
  header.scrolled {
    height: 72px; }
    header.scrolled .link .parent em {
      color: #3C3F43; }
      header.scrolled .link .parent em a {
        color: #3C3F43;
        padding-top: 23px; }
    header.scrolled .link .parent .child {
      top: 72px; }
    header.scrolled nav {
      height: 72px;
      transition: 0.4s ease;
      background: #fff; }
      header.scrolled nav .link .parent {
        color: #3C3F43;
        padding-top: 6px;
        position: relative; }
        header.scrolled nav .link .parent .icon .shape {
          fill: #3C3F43; }
    header.scrolled a.head_btn {
      height: 72px;
      padding-top: 6px; }
    header.scrolled .lang {
      transition: 0.4s ease;
      top: 99px; }
  header a.head_btn {
    width: 88px;
    height: 88px;
    text-align: center;
    color: #fff;
    font-weight: 700;
    background: #7F8890;
    font-size: 15px;
    font-weight: bold;
    transition: 0.4s ease;
    position: absolute;
    right: 0;
    top: 0;
    padding: 15px 10px; }
    header a.head_btn img, header a.head_btn .icon {
      display: block;
      margin: 5px auto; }
      header a.head_btn img .shape, header a.head_btn .icon .shape {
        transition: 0.4s ease; }
    header a.head_btn span {
      display: block;
      text-align: center; }
    header a.head_btn.process {
      background: #007586;
      color: #fff;
      right: 88px;
      top: 0; }
      header a.head_btn.process:hover {
        background: #fff;
        color: #007586; }
        header a.head_btn.process:hover .icon .shape {
          fill: #007586 !important; }
    header a.head_btn.new_fac {
      background: #E63034;
      right: 176px; }
      header a.head_btn.new_fac .bal {
        width: 100px;
        height: 55px;
        position: absolute;
        bottom: -65px;
        left: calc(50% - 50px);
        background: url(../img/bal1.svg);
        background-size: 100% 100%;
        padding: 15px 5px 5px 5px;
        line-height: 1.3;
        font-size: 13px;
        font-weight: bold;
        color: #E63034; }
        header a.head_btn.new_fac .bal i {
          animation: flash 1.3s linear infinite; }
        header a.head_btn.new_fac .bal.en {
          height: auto;
          font-size: 10px;
          bottom: auto;
          width: 110px;
          top: 100px;
          background: url(../img/bal_en2.svg);
          background-size: 100% 100%;
          min-height: 86px; }
          header a.head_btn.new_fac .bal.en i {
            word-break: break-all;
            width: 100%;
            display: block;
            padding: 8px 5px; }
@keyframes flash {
  0%;
  100% {
    opacity: 1; }
  40% {
    opacity: 0; }
  80% {
    opacity: 1; } }
      header a.head_btn.new_fac:hover {
        color: #E63034; }
        header a.head_btn.new_fac:hover .icon .shape {
          fill: #E63034 !important; }
    header a.head_btn:hover {
      background: #fff;
      color: #7F8890; }
      header a.head_btn:hover .icon .shape {
        fill: #7F8890 !important; }
  header .ib {
    padding: 0px;
    width: 100%; }
  header h1 {
    margin: 0;
    position: absolute;
    top: 44px;
    left: 51px; }
    header h1 img {
      width: 100px; }
  header nav {
    position: absolute;
    right: 264px;
    top: 0;
    width: 730px;
    height: 88px;
    transition: 0.4s ease; }
    header nav .link {
      display: flex;
      width: 100%;
      height: 100%; }
      header nav .link .parent {
        font-size: 15px;
        font-weight: 700;
        color: #fff;
        transition: 0.4s ease;
        cursor: pointer;
        padding: 0px 0;
        padding-right: 30px;
        position: relative;
        height: 100%; }
        header nav .link .parent i {
          display: block;
          width: 100%;
          height: 100%;
          white-space: nowrap; }
        header nav .link .parent.about .child {
          left: -30px; }
        header nav .link .parent.business.active:before {
          left: 15px; }
        header nav .link .parent.active:before {
          position: absolute;
          content: "";
          top: 0;
          left: 0px;
          display: block;
          height: 8px;
          width: calc(100% - 30px);
          background: #007586; }
        header nav .link .parent:nth-of-type(1) {
          padding-left: 20px; }
        header nav .link .parent .icon {
          display: inline-block;
          top: 12px;
          position: relative; }
          header nav .link .parent .icon .shape {
            transition: 0.4s ease; }
        header nav .link .parent em {
          display: inline-block;
          color: #fff;
          height: 100%; }
          header nav .link .parent em a {
            padding: 34px 0;
            display: block;
            height: 100%;
            color: #fff; }
        header nav .link .parent:hover {
          color: #007586; }
          header nav .link .parent:hover em a, header nav .link .parent:hover i a {
            color: #007586 !important; }
          header nav .link .parent:hover .icon .shape {
            fill: #007586 !important; }
        header nav .link .parent:last-child {
          margin-right: 0; }
        header nav .link .parent .child {
          display: none;
          width: 100%;
          position: absolute;
          left: 0;
          top: 90px;
          background: #5E6165;
          width: 232px; }
          header nav .link .parent .child a {
            display: block;
            height: 46px;
            padding: 12px;
            color: #fff;
            font-size: 14px;
            font-weight: 700;
            border-bottom: 1px solid #393939;
            transition: 0.4s ease;
            position: relative; }
            header nav .link .parent .child a.gr_child {
              background: #3C3F43;
              border-bottom: 1px solid #7F8890; }
            header nav .link .parent .child a:after {
              position: absolute;
              top: 13px;
              right: 8px;
              content: "";
              font-size: 18px;
              font-family: material icons; }
            header nav .link .parent .child a:hover {
              background: #007586;
              color: #fff; }

header .country-selector.weglot-inline li {
  margin: 0; }

header .lang {
  position: absolute;
  width: 56px;
  height: 40px;
  right: 16px;
  top: 95px;
  transition: 0.4s ease; }
  header .lang.subpage svg #glove {
    fill: #7F8890; }
  header .lang.subpage span {
    color: #7F8890;
    border-bottom: 1px solid #7F8890; }
  header .lang:hover span {
    transition: 0.4s ease;
    color: #007586; }
  header .lang:hover svg #glove {
    transition: 0.4s ease;
    fill: #007586; }
  header .lang svg {
    position: relative;
    top: 4px; }
    header .lang svg #glove {
      transition: 0.4s ease; }
  header .lang span {
    display: block;
    width: 100%;
    height: 100%;
    padding: 3px 0;
    text-align: center;
    border-bottom: 1px solid #fff;
    font-size: 15px;
    font-weight: bold;
    color: #fff;
    transition: 0.4s ease; }
    header .lang span i {
      display: inline-block;
      position: relative;
      top: -2px;
      line-height: 1.2;
      font-family: "Oswald"; }
  header .lang .btn {
    display: none; }
    header .lang .btn a {
      display: block;
      width: 100%;
      height: 40px;
      font-size: 15px;
      font-weight: bold;
      color: #fff;
      background: #707070;
      text-align: center;
      padding: 8px 3px;
      transition: 0.4s ease; }
      header .lang .btn a:nth-of-type(1) {
        border-bottom: 1px solid #3C3F43; }
      header .lang .btn a:hover {
        background: #007586;
        color: #fff; }

.background_layer {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  display: block;
  z-index: -1; }
  .background_layer:before {
    content: "";
    display: block;
    background: url(../img/movie_filter.png);
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 2;
    opacity: 0.8;
    background-size: 2px; }
  .background_layer .movie_frame {
    position: absolute;
    width: calc(100% + 60px);
    height: 100%;
    top: 0;
    left: -30px;
    z-index: 1; }
    .background_layer .movie_frame video {
      object-fit: cover;
      width: 100%;
      height: 100%;
      width: 100%;
      height: 100%; }

.first_view {
  height: 100vh;
  overflow: hidden;
  position: relative; }
  .first_view .fv_animation {
    position: absolute;
    width: 100%;
    height: 100vh;
    top: 0px;
    left: 0px;
    display: block; }
    .first_view .fv_animation .layer {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0px;
      left: 0px; }
      .first_view .fv_animation .layer.l1 {
        background: url(../img/fv/img1.jpg) no-repeat;
        animation: fv_move1_t1 forwards linear 5.5s; }
@keyframes fv_move1_t1 {
  0% {
    background-position: 0% calc(50% - 110px); }
  100% {
    background-position: calc(100% + 300px) calc(50% - 110px); } }
        .first_view .fv_animation .layer.l1.after {
          animation: fv_move1_inf infinite linear 5.5s; }
@keyframes fv_move1_inf {
  0% {
    background-position: -300px calc(50% - 110px); }
  100% {
    background-position: calc(100% + 300px) calc(50% - 110px); } }
      .first_view .fv_animation .layer.l2 {
        background: url(../img/fv/img2.jpg) no-repeat;
        animation: fv_move2_t1 forwards linear 5s; }
@keyframes fv_move2_t1 {
  0% {
    background-position: 30% calc(50% + 110px); }
  100% {
    background-position: calc(100% + 250px) calc(50% + 110px); } }
        .first_view .fv_animation .layer.l2.after {
          animation: fv_move2_inf infinite linear 6s; }
@keyframes fv_move2_inf {
  0% {
    background-position: -250px calc(50% + 110px); }
  100% {
    background-position: calc(100% + 250px) calc(50% + 110px); } }
      .first_view .fv_animation .layer.l3 {
        background: url(../img/fv/img3.jpg) no-repeat;
        animation: fv_move3_t1 forwards linear 5s; }
@keyframes fv_move3_t1 {
  0% {
    background-position: 50% calc(50% + 0px); }
  100% {
    background-position: calc(100% + 320px) calc(50% + 0px); } }
        .first_view .fv_animation .layer.l3.after {
          animation: fv_move3_inf infinite linear 7s; }
@keyframes fv_move3_inf {
  0% {
    background-position: -320px calc(50% + 0px); }
  100% {
    background-position: calc(100% + 320px) calc(50% + 0px); } }
      .first_view .fv_animation .layer.l4 {
        background: url(../img/fv/img4.jpg) no-repeat;
        animation: fv_move4_t1 forwards linear 2.8s; }
@keyframes fv_move4_t1 {
  0% {
    background-position: 60% calc(50% - 280px); }
  100% {
    background-position: calc(100% + 250px) calc(50% - 280px); } }
        .first_view .fv_animation .layer.l4.after {
          animation: fv_move4_inf infinite linear 8s; }
@keyframes fv_move4_inf {
  0% {
    background-position: -250px calc(50% - 280px); }
  100% {
    background-position: calc(100% + 350px) calc(50% - 280px); } }
      .first_view .fv_animation .layer.l5 {
        background: url(../img/fv/img5.jpg) no-repeat;
        animation: fv_move5_t1 forwards linear 3s; }
@keyframes fv_move5_t1 {
  0% {
    background-position: calc(100% - 30px) calc(50% - 180px); }
  100% {
    background-position: calc(100% + 440px) calc(50% - 180px); } }
        .first_view .fv_animation .layer.l5.after {
          animation: fv_move5_inf infinite linear 9s; }
@keyframes fv_move5_inf {
  0% {
    background-position: -340px calc(50% - 180px); }
  100% {
    background-position: calc(100% + 440px) calc(50% - 180px); } }
      .first_view .fv_animation .layer.l6 {
        background: url(../img/fv/img6.jpg) no-repeat;
        animation: fv_move6_t1 forwards linear 4s; }
@keyframes fv_move6_t1 {
  0% {
    background-position: 100% calc(50% + 90px); }
  100% {
    background-position: calc(100% + 605px) calc(50% + 90px); } }
        .first_view .fv_animation .layer.l6.after {
          animation: fv_move6_inf infinite linear 10s; }
@keyframes fv_move6_inf {
  0% {
    background-position: -565px calc(50% + 90px); }
  100% {
    background-position: calc(100% + 565px) calc(50% + 90px); } }
  .first_view .tit {
    z-index: 99;
    position: absolute;
    height: 245px;
    left: 60px;
    top: calc(50% - 120px); }
    .first_view .tit img {
      display: block; }
      .first_view .tit img:nth-of-type(1) {
        margin-bottom: 33px; }
  .first_view .fv_shape1 {
    position: absolute;
    left: 0;
    z-index: 1;
    mix-blend-mode: difference;
    bottom: -150px;
    z-index: 4;
    opacity: 0.8; }
  .first_view .ar_con {
    background: #1A1A1A;
    height: 122px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 16px 25px;
    z-index: 6;
    position: absolute;
    right: 0;
    bottom: 0;
    width: calc(50vw + 220px); }
    .first_view .ar_con.show_slide {
      height: 170px; }
      .first_view .ar_con.show_slide .slide_bar, .first_view .ar_con.show_slide .buttons {
        display: block; }
    .first_view .ar_con .slide_bar {
      position: absolute;
      width: 480px;
      height: 4px;
      bottom: 30px;
      left: 127px; }
      .first_view .ar_con .slide_bar span.bar {
        position: relative;
        background: #5E6165;
        display: block;
        height: 100%;
        border-radius: 4px; }
      .first_view .ar_con .slide_bar i {
        width: 100px;
        position: absolute;
        z-index: 2;
        top: 0;
        left: 0;
        background: #fff;
        height: 100%;
        border-radius: 4px;
        cursor: pointer; }
    .first_view .ar_con .buttons {
      width: 80px;
      padding: 0 3px;
      height: 30px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      position: absolute;
      bottom: 18px;
      left: 25px;
      justify-content: space-between; }
      .first_view .ar_con .buttons span {
        width: 30px;
        height: 100%;
        padding: 5px 10px;
        text-align: center;
        pointer-events: none; }
        .first_view .ar_con .buttons span.active {
          cursor: pointer;
          pointer-events: inherit; }
          .first_view .ar_con .buttons span.active svg path {
            fill: #fff; }
        .first_view .ar_con .buttons span svg path {
          fill: #7F8890; }
        .first_view .ar_con .buttons span:nth-of-type(1) svg {
          transform: scale(-1, 1); }
    .first_view .ar_con .slide_bar, .first_view .ar_con .buttons {
      display: none; }
    .first_view .ar_con h3 {
      font-size: 18px;
      font-weight: bold;
      color: #fff;
      line-height: 1.4;
      margin: 18px 0;
      text-align: center; }
    .first_view .ar_con .posts {
      height: 90px;
      margin-left: 24px;
      overflow: hidden;
      width: calc(100% - 101px); }
      .first_view .ar_con .posts .posts_inner {
        display: flex;
        justify-content: flex-start;
        height: 100%;
        position: relative;
        width: max-content; }
      .first_view .ar_con .posts .post {
        width: 160px;
        height: 100%;
        position: relative;
        margin-right: 8px;
        overflow: hidden; }
        .first_view .ar_con .posts .post:before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          background: rgba(0, 0, 0, 0.2);
          width: 100%;
          height: 100%;
          z-index: 2; }
        .first_view .ar_con .posts .post:last-child {
          margin-right: 0; }
        .first_view .ar_con .posts .post:hover img:not(.arr1) {
          transition: 0.4s ease;
          transform: scale(1.2); }
        .first_view .ar_con .posts .post h4 {
          color: #fff;
          font-size: 16px;
          text-align: center;
          font-weight: bold;
          position: relative;
          margin: 17px auto 4px;
          left: 0;
          width: 100%;
          z-index: 3; }
        .first_view .ar_con .posts .post img {
          object-fit: cover;
          width: 100%;
          height: 100%;
          width: 100%;
          height: 100%;
          position: absolute;
          transition: 0.4s ease;
          top: 0;
          left: 0; }
        .first_view .ar_con .posts .post img.arr1 {
          position: relative;
          width: auto;
          height: auto;
          display: block;
          margin: 4px auto;
          z-index: 3; }

.dnone {
  display: none !important; }

.top_content {
  position: relative; }

.side_guide {
  position: fixed;
  height: 380px;
  width: 100px;
  left: 55px;
  top: calc(50% - 190px);
  color: #fff;
  z-index: 99;
  opacity: 0; }
  .side_guide.active {
    opacity: 1; }
  .side_guide.info {
    left: 55px;
    position: absolute;
    bottom: 450px;
    top: auto;
    display: none; }
    .side_guide.info .slide {
      width: 126px; }
  .side_guide .dots {
    position: absolute;
    right: 80px;
    height: 100px;
    top: 130px;
    width: 10px; }
    .side_guide .dots.dnone {
      display: none; }
    .side_guide .dots a {
      cursor: pointer;
      display: block;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #7F8890;
      margin-bottom: 20px;
      position: relative; }
      .side_guide .dots a.active {
        background: #fff; }
        .side_guide .dots a.active:before {
          transform: scale(1); }
      .side_guide .dots a:before {
        width: 16px;
        height: 16px;
        top: -5px;
        left: -5px;
        position: absolute;
        content: "";
        border: 1px solid #fff;
        border-radius: 50%;
        transition: transform 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
        transform: scale(0); }
        .side_guide .dots a:before:last-of-type {
          background: #fff; }
  .side_guide .slide {
    position: absolute;
    width: 60px;
    overflow: hidden;
    height: 100%;
    top: 0;
    right: 20px; }
    .side_guide .slide .sl_ib {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      position: relative;
      transition: 0.4s ease;
      flex-direction: row-reverse; }
      .side_guide .slide .sl_ib.sec2 {
        transform: translateX(60px); }
      .side_guide .slide .sl_ib.sec3 {
        transform: translateX(120px); }
      .side_guide .slide .sl_ib.sec4 {
        transform: translateX(180px); }
      .side_guide .slide .sl_ib.sec5 {
        transform: translateX(240px); }
      .side_guide .slide .sl_ib.sec6 {
        transform: translateX(300px); }
      .side_guide .slide .sl_ib.sec7 {
        transform: translateX(360px); }
      .side_guide .slide .sl_ib.info {
        transform: translateX(240px); }
      .side_guide .slide .sl_ib div {
        width: 40px;
        padding: 0 5px;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 24px;
        font-weight: bold;
        letter-spacing: 0.3em;
        margin: 0 10px;
        text-align: center; }
        .side_guide .slide .sl_ib div em {
          position: relative;
          left: 2px; }
        .side_guide .slide .sl_ib div:last-child {
          width: 106px; }

@media(max-width:1270px) {
  .side_guide {
    display: none; } }
article {
  padding: 10px 0; }
  article h3 {
    font-size: 28px;
    font-weight: bold;
    color: #3C3F43;
    margin: 40px 0 25px;
    letter-spacing: 0.07em; }
    article h3:before {
      content: url(../img/tit_dot.svg);
      position: relative;
      top: 2px;
      margin-right: 10px; }
  article .ib {
    width: 992px;
    background: #fff; }
  article p {
    font-size: 16px;
    color: #3C3F43;
    margin: 20px 0;
    line-height: 1.9;
    letter-spacing: 0.05em; }

footer p {
  font-size: 16px;
  color: #3C3F43;
  margin: 20px 0;
  line-height: 1.9;
  letter-spacing: 0.05em; }

a.link_btn {
  display: inline-block;
  min-width: 224px;
  height: 48px;
  border-radius: 60px;
  background: #EFF0F2;
  font-size: 16px;
  font-weight: bold;
  color: #7F8890;
  letter-spacing: 0.05em;
  padding: 11px 25px;
  position: relative;
  transition: 0.4s ease; }
  a.link_btn .cr1 {
    position: absolute !important;
    right: 12px;
    top: 8px; }
  a.link_btn .arr2 {
    position: absolute !important;
    right: 23px;
    top: 18px;
    transition: 0.4s ease; }
  a.link_btn:hover {
    transition: 0.4s ease;
    background: #007586;
    color: #fff; }
    a.link_btn:hover .arr2 {
      right: 15px; }

article .intro .ib, article .hitosuji .ib, article .rashisa .ib {
  margin-top: 200px;
  background: #fff;
  padding: 70px 65px; }
  article .intro .ib *, article .hitosuji .ib *, article .rashisa .ib * {
    z-index: 2;
    position: relative; }
  article .intro .ib:before, article .hitosuji .ib:before, article .rashisa .ib:before {
    position: absolute;
    content: "";
    width: calc(50vw + 491px);
    height: 340px;
    top: 0;
    left: 0;
    background: url(../img/grad1.png), url(../img/bana_koku_utyu.png);
    background-size: cover;
    background-blend-mode: multiply; }
  article .intro .ib:after, article .hitosuji .ib:after, article .rashisa .ib:after {
    content: "";
    height: 350px;
    width: calc(50vw + 496px);
    background: #fff;
    left: 0;
    top: 340px;
    display: block;
    position: absolute;
    z-index: 1; }
  article .intro .ib a.link_btn, article .hitosuji .ib a.link_btn, article .rashisa .ib a.link_btn {
    position: absolute;
    right: 65px;
    top: 485px; }
  article .intro .ib .section_tit, article .hitosuji .ib .section_tit, article .rashisa .ib .section_tit {
    height: 300px;
    position: relative; }
    article .intro .ib .section_tit h2, article .hitosuji .ib .section_tit h2, article .rashisa .ib .section_tit h2 {
      font-size: 44px;
      color: #fff;
      letter-spacing: 0.1em;
      position: relative;
      z-index: 2;
      top: 5px;
      line-height: 1.5;
      margin: 0;
      font-weight: 500; }
      article .intro .ib .section_tit h2 i, article .intro .ib .section_tit h2 em, article .hitosuji .ib .section_tit h2 i, article .hitosuji .ib .section_tit h2 em, article .rashisa .ib .section_tit h2 i, article .rashisa .ib .section_tit h2 em {
        font-weight: bold;
        display: inline-block; }
      article .intro .ib .section_tit h2 em, article .hitosuji .ib .section_tit h2 em, article .rashisa .ib .section_tit h2 em {
        color: #E63034; }
      article .intro .ib .section_tit h2 span, article .hitosuji .ib .section_tit h2 span, article .rashisa .ib .section_tit h2 span {
        font-weight: bold;
        display: block;
        margin-top: 15px;
        color: #fff;
        font-size: 18px;
        letter-spacing: 0.07em;
        position: relative; }
        article .intro .ib .section_tit h2 span:before, article .hitosuji .ib .section_tit h2 span:before, article .rashisa .ib .section_tit h2 span:before {
          content: url(../img/kakko_l.svg);
          position: relative;
          top: 8px;
          margin-right: 7px; }
        article .intro .ib .section_tit h2 span:after, article .hitosuji .ib .section_tit h2 span:after, article .rashisa .ib .section_tit h2 span:after {
          margin-left: 7px;
          position: relative;
          top: 8px;
          content: url(../img/kakko_r.svg); }
  article .intro .ib h3, article .hitosuji .ib h3, article .rashisa .ib h3 {
    margin-bottom: 15px; }
  article .intro .ib p, article .hitosuji .ib p, article .rashisa .ib p {
    font-size: 16px;
    color: #3C3F43;
    margin: 15px 0 75px;
    width: 600px;
    max-width: 100%; }
  article .intro .ib .biz_area, article .hitosuji .ib .biz_area, article .rashisa .ib .biz_area {
    width: calc(100% + 130px);
    margin-left: -65px;
    margin-bottom: -75px;
    height: 894px;
    background: #EFF0F2;
    position: relative;
    padding: 1px 0 0; }
    article .intro .ib .biz_area .anchor_box, article .hitosuji .ib .biz_area .anchor_box, article .rashisa .ib .biz_area .anchor_box {
      position: absolute;
      width: 736px;
      height: calc(100% - 160px);
      display: block;
      top: 80px;
      left: calc(50% - 368px);
      z-index: 9; }
      article .intro .ib .biz_area .anchor_box a, article .hitosuji .ib .biz_area .anchor_box a, article .rashisa .ib .biz_area .anchor_box a {
        display: block;
        position: absolute;
        width: 100px;
        height: 100px; }
        article .intro .ib .biz_area .anchor_box a:nth-of-type(n+6), article .hitosuji .ib .biz_area .anchor_box a:nth-of-type(n+6), article .rashisa .ib .biz_area .anchor_box a:nth-of-type(n+6) {
          width: 80px;
          height: 80px; }
        article .intro .ib .biz_area .anchor_box a.box01, article .hitosuji .ib .biz_area .anchor_box a.box01, article .rashisa .ib .biz_area .anchor_box a.box01 {
          top: 27px;
          left: calc(50% + 35px); }
        article .intro .ib .biz_area .anchor_box a.box02, article .hitosuji .ib .biz_area .anchor_box a.box02, article .rashisa .ib .biz_area .anchor_box a.box02 {
          top: 80px;
          height: 80px;
          width: 180px;
          left: calc(50% + 100px); }
        article .intro .ib .biz_area .anchor_box a.box03, article .hitosuji .ib .biz_area .anchor_box a.box03, article .rashisa .ib .biz_area .anchor_box a.box03 {
          left: calc(50% + 210px);
          top: 160px; }
        article .intro .ib .biz_area .anchor_box a.box04, article .hitosuji .ib .biz_area .anchor_box a.box04, article .rashisa .ib .biz_area .anchor_box a.box04 {
          left: calc(50% + 250px);
          top: 260px; }
        article .intro .ib .biz_area .anchor_box a.box05, article .hitosuji .ib .biz_area .anchor_box a.box05, article .rashisa .ib .biz_area .anchor_box a.box05 {
          left: calc(50% + 250px);
          top: 360px; }
        article .intro .ib .biz_area .anchor_box a.box06, article .hitosuji .ib .biz_area .anchor_box a.box06, article .rashisa .ib .biz_area .anchor_box a.box06 {
          left: calc(50% + 180px);
          top: 530px; }
        article .intro .ib .biz_area .anchor_box a.box07, article .hitosuji .ib .biz_area .anchor_box a.box07, article .rashisa .ib .biz_area .anchor_box a.box07 {
          left: calc(50% + 110px);
          top: 580px; }
        article .intro .ib .biz_area .anchor_box a.box08, article .hitosuji .ib .biz_area .anchor_box a.box08, article .rashisa .ib .biz_area .anchor_box a.box08 {
          left: calc(50% + 30px);
          top: 620px; }
        article .intro .ib .biz_area .anchor_box a.box09, article .hitosuji .ib .biz_area .anchor_box a.box09, article .rashisa .ib .biz_area .anchor_box a.box09 {
          left: calc(50% - 40px);
          top: 635px; }
        article .intro .ib .biz_area .anchor_box a.box10, article .hitosuji .ib .biz_area .anchor_box a.box10, article .rashisa .ib .biz_area .anchor_box a.box10 {
          left: calc(50% - 110px);
          top: 620px; }
        article .intro .ib .biz_area .anchor_box a.box11, article .hitosuji .ib .biz_area .anchor_box a.box11, article .rashisa .ib .biz_area .anchor_box a.box11 {
          left: calc(50% - 190px);
          top: 580px; }
        article .intro .ib .biz_area .anchor_box a.box12, article .hitosuji .ib .biz_area .anchor_box a.box12, article .rashisa .ib .biz_area .anchor_box a.box12 {
          left: calc(50% - 270px);
          top: 540px; }
        article .intro .ib .biz_area .anchor_box a.box13, article .hitosuji .ib .biz_area .anchor_box a.box13, article .rashisa .ib .biz_area .anchor_box a.box13 {
          left: calc(50% - 330px);
          top: 400px; }
        article .intro .ib .biz_area .anchor_box a.box14, article .hitosuji .ib .biz_area .anchor_box a.box14, article .rashisa .ib .biz_area .anchor_box a.box14 {
          left: calc(50% - 350px);
          top: 310px; }
        article .intro .ib .biz_area .anchor_box a.box15, article .hitosuji .ib .biz_area .anchor_box a.box15, article .rashisa .ib .biz_area .anchor_box a.box15 {
          left: calc(50% - 320px);
          top: 210px; }
        article .intro .ib .biz_area .anchor_box a.box16, article .hitosuji .ib .biz_area .anchor_box a.box16, article .rashisa .ib .biz_area .anchor_box a.box16 {
          left: calc(50% - 280px);
          top: 130px; }
        article .intro .ib .biz_area .anchor_box a.box17, article .hitosuji .ib .biz_area .anchor_box a.box17, article .rashisa .ib .biz_area .anchor_box a.box17 {
          left: calc(50% - 200px);
          top: 65px; }
        article .intro .ib .biz_area .anchor_box a.box18, article .hitosuji .ib .biz_area .anchor_box a.box18, article .rashisa .ib .biz_area .anchor_box a.box18 {
          left: calc(50% - 120px);
          top: 45px; }
    article .intro .ib .biz_area h4, article .hitosuji .ib .biz_area h4, article .rashisa .ib .biz_area h4 {
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      position: absolute;
      top: 65px;
      left: 65px;
      line-height: 1;
      font-size: 40px;
      font-weight: 500;
      color: #fff;
      margin: 0;
      letter-spacing: 0.1em;
      z-index: 3; }
    article .intro .ib .biz_area .img1, article .intro .ib .biz_area .img2, article .hitosuji .ib .biz_area .img1, article .hitosuji .ib .biz_area .img2, article .rashisa .ib .biz_area .img1, article .rashisa .ib .biz_area .img2 {
      position: absolute;
      top: 0; }
    article .intro .ib .biz_area .img1, article .hitosuji .ib .biz_area .img1, article .rashisa .ib .biz_area .img1 {
      left: 0; }
    article .intro .ib .biz_area .img2, article .hitosuji .ib .biz_area .img2, article .rashisa .ib .biz_area .img2 {
      right: 0; }
    article .intro .ib .biz_area .biz_cr, article .hitosuji .ib .biz_area .biz_cr, article .rashisa .ib .biz_area .biz_cr {
      display: block;
      margin: 80px auto;
      position: relative;
      z-index: 3;
      width: 736px;
      height: auto; }
article .intro .ib {
  margin-top: 160px; }

article .factory {
  margin-top: 40px;
  position: relative; }
  article .factory .ib {
    padding: 60px 65px; }
    article .factory .ib:after {
      content: "";
      display: block;
      width: 100%;
      height: 277px;
      position: absolute;
      bottom: 0;
      left: 0;
      background: #EFF0F2;
      z-index: 1; }
    article .factory .ib h3 {
      margin-bottom: 15px; }
      article .factory .ib h3:nth-of-type(1) {
        margin-top: 0; }
    article .factory .ib .d_f {
      margin-top: 50px;
      display: flex;
      justify-content: space-between;
      position: relative;
      z-index: 2; }
      article .factory .ib .d_f .box {
        height: auto;
        width: 282px;
        background: #fff;
        transition: 0.4s ease; }
        article .factory .ib .d_f .box:hover a.txt {
          background: #007586; }
          article .factory .ib .d_f .box:hover a.txt p {
            color: #fff; }
          article .factory .ib .d_f .box:hover a.txt span {
            color: #fff; }
          article .factory .ib .d_f .box:hover a.txt .arr2 {
            right: 4px;
            transition: 0.4s ease; }
        article .factory .ib .d_f .box .img {
          height: 188px; }
          article .factory .ib .d_f .box .img img {
            object-fit: cover;
            width: 100%;
            height: 100%; }
        article .factory .ib .d_f .box .txt {
          position: relative;
          display: block;
          padding: 25px 30px !important; }
          article .factory .ib .d_f .box .txt p {
            font-size: 22px;
            font-weight: bold;
            color: #3C3F43;
            letter-spacing: 0;
            margin: 0;
            line-height: 2;
            transition: 0.4s ease; }
        article .factory .ib .d_f .box a.txt {
          position: relative;
          display: block;
          padding: 25px 30px !important; }
          article .factory .ib .d_f .box a.txt p {
            font-size: 22px;
            font-weight: bold;
            color: #3C3F43;
            letter-spacing: 0;
            margin: 0;
            line-height: 2;
            transition: 0.4s ease; }
          article .factory .ib .d_f .box a.txt span {
            width: 127px;
            position: absolute;
            right: 30px;
            top: 38px;
            font-size: 16px;
            color: #7F8890;
            font-weight: bold;
            letter-spacing: 0.15em;
            transition: 0.4s ease; }
            article .factory .ib .d_f .box a.txt span .cr1 {
              position: absolute;
              right: 0;
              top: -5px; }
            article .factory .ib .d_f .box a.txt span .arr2 {
              position: absolute;
              right: 12px;
              top: 5px;
              transition: 0.4s ease; }

article .top_skill {
  margin-top: 40px;
  height: 350px;
  margin-bottom: 0; }
  article .top_skill .ib {
    padding: 55px 65px;
    height: 100%;
    background: #fff; }
    article .top_skill .ib h3 {
      margin-top: 0;
      margin-bottom: 15px; }
    article .top_skill .ib img.skill {
      position: absolute;
      right: 0;
      top: 0;
      height: 100%; }
    article .top_skill .ib a.link_btn {
      margin-top: 15px; }
    article .top_skill .ib p {
      width: 400px;
      max-width: 100%; }

article .hitosuji {
  margin-top: 160px;
  height: 1030px; }
  article .hitosuji.under_4 {
    height: 950px; }
    article .hitosuji.under_4 .ib:after {
      height: 600px; }
  article .hitosuji .ib {
    margin-top: 160px;
    padding-bottom: 0; }
    article .hitosuji .ib:before {
      background: url(../img/grad1.png), url(../img/hitosuji1.png);
      background-size: cover;
      background-blend-mode: multiply; }
    article .hitosuji .ib:after {
      height: 666px; }
    article .hitosuji .ib p {
      margin-bottom: 60px; }
    article .hitosuji .ib .attempt_list {
      position: relative;
      width: calc(50vw + 491px);
      left: 0;
      margin-left: 0px;
      padding-left: 0px;
      height: 414px;
      padding-top: 30px; }
      article .hitosuji .ib .attempt_list.under_4 {
        height: 380px; }
        article .hitosuji .ib .attempt_list.under_4 .slide_bar, article .hitosuji .ib .attempt_list.under_4 .buttons {
          display: none; }
      article .hitosuji .ib .attempt_list .posts_outer {
        overflow: hidden; }
      article .hitosuji .ib .attempt_list .posts_inner {
        display: flex;
        position: relative;
        width: max-content; }
      article .hitosuji .ib .attempt_list .slide_bar {
        width: 800px;
        position: absolute;
        height: 4px;
        bottom: 80px;
        left: 120px;
        z-index: 3; }
        article .hitosuji .ib .attempt_list .slide_bar span {
          position: relative;
          z-index: 1;
          width: 100%;
          height: 100%;
          background: #EFF0F2;
          border-radius: 4px;
          display: block; }
        article .hitosuji .ib .attempt_list .slide_bar i {
          position: absolute;
          top: 0;
          height: 100%;
          border-radius: 4px;
          display: block;
          left: 0;
          cursor: pointer;
          width: 50px;
          background: #007586; }
      article .hitosuji .ib .attempt_list .buttons {
        width: 80px;
        padding: 0 3px;
        height: 30px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        position: absolute;
        bottom: 68px;
        left: 25px;
        justify-content: space-between; }
        article .hitosuji .ib .attempt_list .buttons span {
          width: 30px;
          height: 100%;
          padding: 5px 10px;
          text-align: center;
          pointer-events: none; }
          article .hitosuji .ib .attempt_list .buttons span:nth-of-type(1) svg {
            transform: scale(-1, 1); }
          article .hitosuji .ib .attempt_list .buttons span.active {
            cursor: pointer;
            pointer-events: inherit; }
            article .hitosuji .ib .attempt_list .buttons span.active svg path {
              fill: #007586; }
          article .hitosuji .ib .attempt_list .buttons span svg path {
            fill: #7F8890; }
      article .hitosuji .ib .attempt_list .box {
        position: relative;
        z-index: 2;
        width: 256px;
        height: auto;
        margin-right: 30px;
        background: #fff;
        transition: 0.4s ease;
        margin-bottom: 30px;
        width: 224px;
        margin-right: 32px;
        margin-bottom: 0;
        transition: 0.4s ease;
        z-index: 2; }
        article .hitosuji .ib .attempt_list .box:last-child {
          margin-right: 0; }
        article .hitosuji .ib .attempt_list .box .img {
          height: 144px; }
          article .hitosuji .ib .attempt_list .box .img img {
            object-fit: cover;
            width: 100%;
            height: 100%; }
        article .hitosuji .ib .attempt_list .box .txt {
          padding: 16px 0;
          position: relative;
          display: block; }
          article .hitosuji .ib .attempt_list .box .txt h4 {
            margin: 0;
            font-size: 18px;
            font-weight: bold;
            line-height: 1.3;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden; }
            article .hitosuji .ib .attempt_list .box .txt h4 a {
              display: -webkit-box;
              -webkit-box-orient: vertical;
              -webkit-line-clamp: 2;
              overflow: hidden; }
          article .hitosuji .ib .attempt_list .box .txt .meta {
            font-size: 12px;
            font-family: "Oswald";
            color: #7F8890;
            font-weight: 500;
            margin-bottom: 8px; }
          article .hitosuji .ib .attempt_list .box .txt .tag {
            font-size: 12px;
            color: #007586;
            display: flex;
            flex-wrap: wrap;
            margin-top: 10px; }
            article .hitosuji .ib .attempt_list .box .txt .tag a {
              display: inline-block;
              margin-right: 5px;
              color: #007586; }
          article .hitosuji .ib .attempt_list .box .txt .cat {
            display: block;
            font-size: 12px;
            font-weight: 400;
            margin-top: 10px; }
            article .hitosuji .ib .attempt_list .box .txt .cat i {
              display: inline-block;
              color: #007586;
              margin-right: 5px; }
          article .hitosuji .ib .attempt_list .box .txt span {
            width: 101px;
            font-size: 14px;
            color: #7F8890;
            font-weight: bold;
            letter-spacing: 0.15em;
            transition: 0.4s ease;
            display: inline-block;
            bottom: 30px;
            right: 30px;
            position: absolute;
            bottom: 24px; }
            article .hitosuji .ib .attempt_list .box .txt span .cr1 {
              position: absolute;
              right: 0;
              top: -2px; }
            article .hitosuji .ib .attempt_list .box .txt span .arr2 {
              position: absolute;
              right: 8px;
              top: 5.5px;
              transition: 0.4s ease; }
        article .hitosuji .ib .attempt_list .box.eyecatch .img i {
          display: none; }
        article .hitosuji .ib .attempt_list .box.noimg .img .thumb {
          display: none; }
        article .hitosuji .ib .attempt_list .box.shown {
          opacity: 1; }
        article .hitosuji .ib .attempt_list .box:last-child {
          margin-right: 0; }
        article .hitosuji .ib .attempt_list .box:hover .img a:before {
          opacity: 1; }
        article .hitosuji .ib .attempt_list .box.new .img:after {
          content: "新着";
          position: absolute;
          width: 74px;
          height: 31px;
          font-size: 12px;
          color: #fff;
          font-weight: bold;
          top: -9px;
          left: -24px;
          z-index: 99;
          background: #E63034;
          display: block;
          text-align: center;
          transform: rotate(-43deg);
          padding: 10px 10px 10px 5px;
          box-sizing: border-box; }
        article .hitosuji .ib .attempt_list .box .hidden {
          display: none; }
        article .hitosuji .ib .attempt_list .box .img {
          height: 126px;
          border: 1px solid #BDC3C7;
          position: relative;
          overflow: hidden; }
          article .hitosuji .ib .attempt_list .box .img a:before {
            z-index: 9;
            content: "";
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            display: block;
            opacity: 0;
            transition: 0.4s ease;
            background: url(../img/link_arr.svg) 50% 50% no-repeat, linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)); }
          article .hitosuji .ib .attempt_list .box .img img.wp-post-image {
            object-fit: cover;
            width: 100%;
            height: 100%; }
          article .hitosuji .ib .attempt_list .box .img img.logo {
            object-fit: inherit;
            display: block;
            margin: 20px auto;
            width: 80px;
            height: auto; }
          article .hitosuji .ib .attempt_list .box .img a {
            z-index: 3;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%; }
          article .hitosuji .ib .attempt_list .box .img i {
            position: absolute;
            font-size: 22px;
            color: #BDC3C7;
            font-weight: 300;
            top: 40px;
            font-family: "Oswald"; }
            article .hitosuji .ib .attempt_list .box .img i.y {
              left: 15px; }
            article .hitosuji .ib .attempt_list .box .img i.m {
              right: 15px; }
        article .hitosuji .ib .attempt_list .box h4:before {
          display: none; }

article .rashisa .ib {
  margin-top: 160px; }
  article .rashisa .ib:before {
    background: url(../img/rashisa1.png);
    background-size: cover;
    height: 480px; }
  article .rashisa .ib:after {
    display: none; }

article .comp_info {
  margin-top: 40px;
  height: 350px;
  margin-bottom: 0;
  margin-top: -110px; }
  article .comp_info .ib {
    padding: 55px 65px;
    height: 100%;
    background: #fff; }
    article .comp_info .ib h3 {
      margin-top: 0;
      margin-bottom: 15px; }
    article .comp_info .ib img.right {
      position: absolute;
      right: 0;
      top: 0;
      height: 100%; }
    article .comp_info .ib a.link_btn {
      margin-top: 15px; }
  article .comp_info p {
    width: 400px;
    max-width: 100%; }

article .history {
  margin-top: 40px;
  height: 350px;
  margin-bottom: 0; }
  article .history .ib {
    padding: 55px 65px;
    height: 100%;
    background: #fff; }
    article .history .ib h3 {
      margin-top: 0;
      margin-bottom: 15px; }
    article .history .ib img.right {
      position: absolute;
      right: 0;
      top: 0;
      height: 100%; }
    article .history .ib a.link_btn {
      margin-top: 15px; }

article .top_recruit {
  margin-top: 80px;
  height: 540px; }
  article .top_recruit .ib {
    padding: 60px 65px;
    background: #fff;
    height: 100%; }
    article .top_recruit .ib:after {
      width: 100%;
      content: "";
      background: #fff;
      height: 230px;
      bottom: 0;
      left: 0;
      position: absolute;
      z-index: 2; }
    article .top_recruit .ib:before {
      content: "";
      background: url(../img/recruit1.png) 50% 50%;
      background-size: cover;
      height: 350px;
      width: calc(50vw + 491px);
      position: absolute;
      left: 0;
      top: 0; }
    article .top_recruit .ib .rec_tit {
      position: absolute;
      bottom: 228px;
      right: 0;
      z-index: 3; }
    article .top_recruit .ib h3 {
      z-index: 3;
      position: relative;
      color: #fff;
      margin-top: 180px; }
    article .top_recruit .ib .subtit {
      z-index: 3;
      position: relative;
      margin-top: 95px; }
      article .top_recruit .ib .subtit span {
        display: block;
        font-size: 20px;
        border-bottom: 1px solid #007586;
        font-weight: bold;
        display: table;
        margin-top: 10px; }
        article .top_recruit .ib .subtit span i {
          color: #007586; }
    article .top_recruit .ib p {
      position: absolute;
      z-index: 3;
      right: 90px;
      top: 350px;
      margin-top: 0; }
      article .top_recruit .ib p i {
        font-size: 18px;
        font-weight: bold; }
    article .top_recruit .ib a.link_btn {
      position: absolute;
      bottom: 60px;
      z-index: 3;
      right: 205px; }

article {
  overflow-x: hidden; }
  article .top_information {
    margin-top: 160px; }
    article .top_information .ib {
      background: none;
      padding: 70px 65px;
      padding-top: 0; }
      article .top_information .ib .bg_shape {
        background: #EFF0F2;
        width: calc(50vw + 491px);
        height: 650px;
        position: absolute;
        bottom: 3px;
        left: 0;
        content: ""; }
      article .top_information .ib h2 {
        color: #fff;
        font-size: 44px;
        letter-spacing: 0.2em;
        margin-top: 0;
        margin-left: -65px; }
      article .top_information .ib a.link_btn {
        position: absolute;
        top: 10px;
        left: 300px; }
      article .top_information .ib .information_lists {
        position: relative;
        z-index: 2; }
        article .top_information .ib .information_lists .box {
          background: #fff;
          height: 112px;
          padding: 25px 30px;
          margin-bottom: 16px;
          transition: 0.4s ease;
          position: relative;
          display: block; }
          article .top_information .ib .information_lists .box .l_box {
            position: absolute;
            width: 100px;
            height: 100%;
            display: block;
            right: 0;
            top: 0; }
          article .top_information .ib .information_lists .box:before {
            content: url(../img/cr1.svg);
            position: absolute;
            right: 30px;
            top: 40px; }
          article .top_information .ib .information_lists .box:after {
            content: url(../img/arr2.svg);
            position: absolute;
            z-index: 2;
            transition: 0.4s ease;
            top: 44px;
            right: 42px; }
          article .top_information .ib .information_lists .box.hover {
            background: #007586; }
            article .top_information .ib .information_lists .box.hover:after {
              right: 34px; }
            article .top_information .ib .information_lists .box.hover .meta {
              transition: 0.4s ease;
              color: #fff; }
              article .top_information .ib .information_lists .box.hover .meta i a {
                color: #fff; }
            article .top_information .ib .information_lists .box.hover p {
              transition: 0.4s ease;
              color: #fff; }
          article .top_information .ib .information_lists .box p {
            margin: 10px 0; }
            article .top_information .ib .information_lists .box p a {
              display: block; }
          article .top_information .ib .information_lists .box .meta {
            color: #007586;
            line-height: 1.3; }
            article .top_information .ib .information_lists .box .meta span {
              display: inline-block;
              font-size: 12px;
              font-weight: 500;
              font-family: "Oswald";
              padding-right: 14px; }
            article .top_information .ib .information_lists .box .meta i {
              display: inline-block;
              margin-left: -2px;
              font-family: "Yu Gothic", "YuGothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN";
              transition: 0.4s ease; }
              article .top_information .ib .information_lists .box .meta i:before {
                content: "|";
                font-size: 120%;
                position: relative;
                top: 2px;
                margin-right: 14px; }
              article .top_information .ib .information_lists .box .meta i a, article .top_information .ib .information_lists .box .meta i span {
                font-size: 14px;
                font-weight: bold;
                font-family: "Yu Gothic", "YuGothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN";
                color: #007586; }
                article .top_information .ib .information_lists .box .meta i a:hover, article .top_information .ib .information_lists .box .meta i span:hover {
                  color: #E63034; }

article, #content {
  padding-bottom: 0; }
  article .top_contact, #content .top_contact {
    height: 650px;
    margin-top: 160px;
    position: relative;
    z-index: 9; }
    article .top_contact.new, #content .top_contact.new {
      height: 468px;
      position: relative; }
      article .top_contact.new:before, #content .top_contact.new:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        width: calc(50% + 10px);
        background: url(../img/cont1.jpg) 50% 50%;
        background-size: 150%;
        height: 100%;
        display: block; }
      article .top_contact.new:after, #content .top_contact.new:after {
        content: "";
        width: calc(50% - 10px);
        right: 0;
        top: 0;
        display: block;
        height: 100%;
        background: #007586;
        position: absolute; }
      article .top_contact.new .ib, #content .top_contact.new .ib {
        display: flex;
        flex-wrap: wrap;
        padding: 0 !important;
        background: none;
        z-index: 2; }
        article .top_contact.new .ib:before, #content .top_contact.new .ib:before {
          display: none; }
        article .top_contact.new .ib .contact_con, #content .top_contact.new .ib .contact_con {
          height: 100%;
          background: none; }
          article .top_contact.new .ib .contact_con .r, #content .top_contact.new .ib .contact_con .r {
            width: calc(50% - 10px);
            background: none;
            padding-left: 0;
            position: relative;
            padding-top: 50px; }
            article .top_contact.new .ib .contact_con .r h2, #content .top_contact.new .ib .contact_con .r h2 {
              margin-top: 0; }
            article .top_contact.new .ib .contact_con .r .bal, #content .top_contact.new .ib .contact_con .r .bal {
              position: absolute;
              top: 80px;
              left: calc(-50vw + 560px);
              width: 106px !important;
              height: 302px;
              background: url(../img/bal_pc.svg);
              padding: 35px 30px;
              writing-mode: vertical-rl;
              color: #fff;
              font-size: 18px;
              font-weight: bold; }
              article .top_contact.new .ib .contact_con .r .bal em, #content .top_contact.new .ib .contact_con .r .bal em {
                position: relative;
                left: 2px; }
          article .top_contact.new .ib .contact_con .l, #content .top_contact.new .ib .contact_con .l {
            background: #007586;
            height: 368px;
            background: #007586;
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            padding-top: 50px;
            padding-right: 0;
            position: relative;
            width: calc(50% + 10px);
            height: 100%;
            flex-wrap: wrap; }
            article .top_contact.new .ib .contact_con .l .l, #content .top_contact.new .ib .contact_con .l .l {
              width: 608px;
              padding: 60px 65px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex; }
              article .top_contact.new .ib .contact_con .l .l .box, #content .top_contact.new .ib .contact_con .l .l .box {
                width: 50%;
                color: #fff;
                line-height: 1.3; }
                article .top_contact.new .ib .contact_con .l .l .box:nth-of-type(2), #content .top_contact.new .ib .contact_con .l .l .box:nth-of-type(2) {
                  padding-left: 20px; }
                article .top_contact.new .ib .contact_con .l .l .box h4, #content .top_contact.new .ib .contact_con .l .l .box h4 {
                  margin: 0;
                  font-size: 24px;
                  font-weight: bold; }
                article .top_contact.new .ib .contact_con .l .l .box .tel, #content .top_contact.new .ib .contact_con .l .l .box .tel {
                  padding-left: 20px;
                  border-left: 2px solid #fff;
                  margin: 20px 0 15px; }
                  article .top_contact.new .ib .contact_con .l .l .box .tel i, #content .top_contact.new .ib .contact_con .l .l .box .tel i {
                    font-size: 14px;
                    display: block;
                    font-weight: bold; }
                    article .top_contact.new .ib .contact_con .l .l .box .tel i:nth-of-type(2), #content .top_contact.new .ib .contact_con .l .l .box .tel i:nth-of-type(2) {
                      margin-top: 10px; }
                  article .top_contact.new .ib .contact_con .l .l .box .tel span, #content .top_contact.new .ib .contact_con .l .l .box .tel span {
                    font-weight: 600;
                    font-size: 22px;
                    display: block;
                    font-family: "Oswald"; }
                  article .top_contact.new .ib .contact_con .l .l .box .tel .btn, #content .top_contact.new .ib .contact_con .l .l .box .tel .btn {
                    display: block;
                    height: 24px;
                    width: 128px;
                    margin-top: 10px;
                    font-size: 12px;
                    border-radius: 30px;
                    padding: 3px 10px;
                    border: 1px solid #fff;
                    font-size: 12px;
                    position: relative;
                    font-weight: bold; }
                    article .top_contact.new .ib .contact_con .l .l .box .tel .btn:hover, #content .top_contact.new .ib .contact_con .l .l .box .tel .btn:hover {
                      background: #fff;
                      color: #007586; }
                      article .top_contact.new .ib .contact_con .l .l .box .tel .btn:hover:after, #content .top_contact.new .ib .contact_con .l .l .box .tel .btn:hover:after {
                        content: url(../img/ico1_h.svg); }
                    article .top_contact.new .ib .contact_con .l .l .box .tel .btn:after, #content .top_contact.new .ib .contact_con .l .l .box .tel .btn:after {
                      content: url(../img/ico1.svg);
                      position: absolute;
                      right: 11px;
                      top: 5px; }
                article .top_contact.new .ib .contact_con .l .l .box .time i, #content .top_contact.new .ib .contact_con .l .l .box .time i {
                  font-size: 14px;
                  display: block;
                  font-weight: bold; }
                article .top_contact.new .ib .contact_con .l .l .box .time span, #content .top_contact.new .ib .contact_con .l .l .box .time span {
                  display: inline-block;
                  font-size: 18px;
                  font-weight: 600;
                  font-family: "Oswald"; }
                article .top_contact.new .ib .contact_con .l .l .box .time em, #content .top_contact.new .ib .contact_con .l .l .box .time em {
                  font-size: 14px;
                  font-weight: 500;
                  display: inline-block; }
            article .top_contact.new .ib .contact_con .l .r, #content .top_contact.new .ib .contact_con .l .r {
              width: calc(100% - 608px);
              height: 100%;
              background: #7F8890;
              padding: 70px; }
              article .top_contact.new .ib .contact_con .l .r .ico, #content .top_contact.new .ib .contact_con .l .r .ico {
                display: block;
                margin: 45px auto 10px; }
              article .top_contact.new .ib .contact_con .l .r h4, #content .top_contact.new .ib .contact_con .l .r h4 {
                font-size: 24px;
                font-weight: bold;
                text-align: center;
                margin: 10px auto;
                color: #fff;
                line-height: 1.35; }
              article .top_contact.new .ib .contact_con .l .r a.link_btn, #content .top_contact.new .ib .contact_con .l .r a.link_btn {
                display: block;
                margin: 20px auto;
                width: 224px; }
            article .top_contact.new .ib .contact_con .l .box h4, #content .top_contact.new .ib .contact_con .l .box h4 {
              color: #fff; }
              article .top_contact.new .ib .contact_con .l .box h4:before, #content .top_contact.new .ib .contact_con .l .box h4:before {
                display: none; }
            article .top_contact.new .ib .contact_con .l #pagetop, #content .top_contact.new .ib .contact_con .l #pagetop {
              cursor: pointer;
              width: 96px;
              height: 96px;
              background: #000;
              position: absolute;
              left: 400px;
              top: -40px;
              border: 3px solid #000;
              padding: 20px;
              display: none !important; }
              article .top_contact.new .ib .contact_con .l #pagetop svg, #content .top_contact.new .ib .contact_con .l #pagetop svg {
                display: block;
                margin: 5px auto;
                transition: 0.4s ease; }
              article .top_contact.new .ib .contact_con .l #pagetop:after, #content .top_contact.new .ib .contact_con .l #pagetop:after {
                content: "";
                display: block;
                width: 3px;
                background: #000;
                height: 0px;
                position: absolute;
                bottom: -1px;
                left: calc(50% - 1.5px);
                transition: 0.4s ease; }
              article .top_contact.new .ib .contact_con .l #pagetop:hover, #content .top_contact.new .ib .contact_con .l #pagetop:hover {
                background: #fff; }
                article .top_contact.new .ib .contact_con .l #pagetop:hover svg, #content .top_contact.new .ib .contact_con .l #pagetop:hover svg {
                  width: 70%;
                  transform: translateY(-9px); }
                  article .top_contact.new .ib .contact_con .l #pagetop:hover svg path, #content .top_contact.new .ib .contact_con .l #pagetop:hover svg path {
                    fill: #000; }
                article .top_contact.new .ib .contact_con .l #pagetop:hover:after, #content .top_contact.new .ib .contact_con .l #pagetop:hover:after {
                  height: 70px; }
            article .top_contact.new .ib .contact_con .l .contact, #content .top_contact.new .ib .contact_con .l .contact {
              display: block;
              width: 100%;
              border-bottom: 1px solid #3C3F43;
              padding: 0px 0 30px;
              margin-bottom: 30px;
              font-size: 24px;
              color: #fff;
              font-weight: bold;
              position: relative;
              transition: 0.4s ease; }
              article .top_contact.new .ib .contact_con .l .contact:hover, #content .top_contact.new .ib .contact_con .l .contact:hover {
                color: #E63034; }
                article .top_contact.new .ib .contact_con .l .contact:hover svg path, #content .top_contact.new .ib .contact_con .l .contact:hover svg path {
                  fill: #E63034; }
                article .top_contact.new .ib .contact_con .l .contact:hover:after, #content .top_contact.new .ib .contact_con .l .contact:hover:after {
                  background: url(../img/arr_cr2.svg); }
              article .top_contact.new .ib .contact_con .l .contact:after, #content .top_contact.new .ib .contact_con .l .contact:after {
                content: "";
                background: url(../img/arr_cr.svg);
                background-size: cover;
                display: inline-block;
                margin-left: 8px;
                width: 36px;
                position: relative;
                top: 10px;
                height: 36px; }
              article .top_contact.new .ib .contact_con .l .contact svg, #content .top_contact.new .ib .contact_con .l .contact svg {
                display: inline-block;
                margin-right: 8px;
                position: relative;
                top: 10px; }
                article .top_contact.new .ib .contact_con .l .contact svg path, #content .top_contact.new .ib .contact_con .l .contact svg path {
                  transition: 0.4s ease; }
            article .top_contact.new .ib .contact_con .l .box:nth-of-type(2), #content .top_contact.new .ib .contact_con .l .box:nth-of-type(2) {
              padding-left: 0; }
            article .top_contact.new .ib .contact_con .l .box .tel, #content .top_contact.new .ib .contact_con .l .box .tel {
              border: none;
              padding: 0; }
    article .top_contact .ib, #content .top_contact .ib {
      height: 100%;
      padding: 60px 65px; }
      article .top_contact .ib:before, #content .top_contact .ib:before {
        content: "";
        background: url(../img/top_contact1.png) 50% 50%;
        background-size: cover;
        width: calc(50vw + 491px);
        height: 320px;
        position: absolute;
        top: 0;
        left: 0; }
      article .top_contact .ib h2, #content .top_contact .ib h2 {
        position: relative;
        z-index: 3;
        font-size: 44px;
        font-weight: bold;
        letter-spacing: 0.2em;
        color: #fff;
        margin-top: 50px; }
      article .top_contact .ib .contact_con, #content .top_contact .ib .contact_con {
        height: 368px;
        background: #007586;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex; }
        article .top_contact .ib .contact_con .l, #content .top_contact .ib .contact_con .l {
          width: 608px;
          padding: 60px 65px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex; }
          article .top_contact .ib .contact_con .l .box, #content .top_contact .ib .contact_con .l .box {
            width: 50%;
            color: #fff;
            line-height: 1.3; }
            article .top_contact .ib .contact_con .l .box:nth-of-type(2), #content .top_contact .ib .contact_con .l .box:nth-of-type(2) {
              padding-left: 20px; }
            article .top_contact .ib .contact_con .l .box h4, #content .top_contact .ib .contact_con .l .box h4 {
              margin: 0;
              font-size: 24px;
              font-weight: bold; }
            article .top_contact .ib .contact_con .l .box .tel, #content .top_contact .ib .contact_con .l .box .tel {
              padding-left: 20px;
              border-left: 2px solid #fff;
              margin: 20px 0 15px; }
              article .top_contact .ib .contact_con .l .box .tel i, #content .top_contact .ib .contact_con .l .box .tel i {
                font-size: 14px;
                display: block;
                font-weight: bold; }
                article .top_contact .ib .contact_con .l .box .tel i:nth-of-type(2), #content .top_contact .ib .contact_con .l .box .tel i:nth-of-type(2) {
                  margin-top: 10px; }
              article .top_contact .ib .contact_con .l .box .tel span, #content .top_contact .ib .contact_con .l .box .tel span {
                font-weight: 600;
                font-size: 22px;
                display: block;
                font-family: "Oswald"; }
              article .top_contact .ib .contact_con .l .box .tel .btn, #content .top_contact .ib .contact_con .l .box .tel .btn {
                display: block;
                height: 24px;
                width: 128px;
                margin-top: 10px;
                font-size: 12px;
                border-radius: 30px;
                padding: 3px 10px;
                border: 1px solid #fff;
                font-size: 12px;
                position: relative;
                font-weight: bold; }
                article .top_contact .ib .contact_con .l .box .tel .btn:hover, #content .top_contact .ib .contact_con .l .box .tel .btn:hover {
                  background: #fff;
                  color: #007586; }
                  article .top_contact .ib .contact_con .l .box .tel .btn:hover:after, #content .top_contact .ib .contact_con .l .box .tel .btn:hover:after {
                    content: url(../img/ico1_h.svg); }
                article .top_contact .ib .contact_con .l .box .tel .btn:after, #content .top_contact .ib .contact_con .l .box .tel .btn:after {
                  content: url(../img/ico1.svg);
                  position: absolute;
                  right: 11px;
                  top: 5px; }
            article .top_contact .ib .contact_con .l .box .time i, #content .top_contact .ib .contact_con .l .box .time i {
              font-size: 14px;
              display: block;
              font-weight: bold; }
            article .top_contact .ib .contact_con .l .box .time span, #content .top_contact .ib .contact_con .l .box .time span {
              display: inline-block;
              font-size: 18px;
              font-weight: 600;
              font-family: "Oswald"; }
            article .top_contact .ib .contact_con .l .box .time em, #content .top_contact .ib .contact_con .l .box .time em {
              font-size: 14px;
              font-weight: 500;
              display: inline-block; }
        article .top_contact .ib .contact_con .r, #content .top_contact .ib .contact_con .r {
          width: calc(100% - 608px);
          height: 100%;
          background: #7F8890;
          padding: 70px; }
          article .top_contact .ib .contact_con .r .ico, #content .top_contact .ib .contact_con .r .ico {
            display: block;
            margin: 45px auto 10px; }
          article .top_contact .ib .contact_con .r h4, #content .top_contact .ib .contact_con .r h4 {
            font-size: 24px;
            font-weight: bold;
            text-align: center;
            margin: 10px auto;
            color: #fff;
            line-height: 1.35; }
          article .top_contact .ib .contact_con .r a.link_btn, #content .top_contact .ib .contact_con .r a.link_btn {
            display: block;
            margin: 20px auto;
            width: 224px; }

/*************************************
 *
 *footer
 *
 ************************************** */
#top {
  width: 90px;
  height: 90px;
  bottom: 0;
  position: absolute;
  right: calc(50% - 496px);
  padding: 32px 0;
  text-align: center;
  font-size: 16px;
  transition: 0.4s ease;
  color: #fff;
  font-family: "Oswald";
  cursor: pointer;
  z-index: 2; }
  #top:before {
    height: 0;
    width: 2px;
    position: absolute;
    content: "";
    background: #007586;
    right: 12px;
    bottom: 40px;
    transition: 0.4s ease; }
  #top svg {
    position: relative;
    top: -1px;
    display: inline-block;
    margin-right: 3px;
    transition: 0.4s ease; }
  #top:hover {
    color: #E63034; }
    #top:hover:before {
      height: 11px;
      background: #E63034; }
    #top:hover svg {
      transform: translateY(-4px); }
      #top:hover svg path {
        fill: #E63034; }

footer {
  position: relative;
  z-index: 999;
  background: #3C3F43; }
  footer p.copy {
    font-size: 12px;
    font-weight: 400;
    font-family: "Oswald";
    color: #fff;
    letter-spacing: 0.2em;
    margin: 0;
    position: absolute;
    left: 0;
    bottom: 35px; }
  footer .ib {
    padding: 40px 0 90px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    footer .ib .lang {
      position: absolute;
      width: 182px;
      height: 40px;
      position: absolute;
      top: 0px;
      left: 0;
      display: flex;
      justify-content: space-between; }
      footer .ib .lang span, footer .ib .lang a {
        width: calc(100% / 3);
        padding: 15px;
        text-align: center;
        font-size: 15px;
        color: #fff;
        font-weight: bold;
        line-height: 1; }
      footer .ib .lang span {
        padding: 15px 5px;
        background: #3C3F43;
        width: 68px; }
        footer .ib .lang span svg {
          position: relative;
          top: -6px; }
        footer .ib .lang span i {
          display: inline-block;
          position: relative;
          top: -11px; }
      footer .ib .lang a {
        padding: 15px;
        text-align: center;
        background: #7F8890;
        width: 57px;
        transition: 0.4s ease; }
        footer .ib .lang a:nth-of-type(2) {
          border-left: 1px solid #393939; }
        footer .ib .lang a:hover {
          background: #007586;
          color: #fff; }
    footer .ib .l {
      width: 700px; }
      footer .ib .l .row {
        border-bottom: 1px solid #5E6165;
        padding: 50px 0;
        display: flex;
        justify-content: space-between; }
        footer .ib .l .row:nth-of-type(1) {
          height: 193px; }
        footer .ib .l .row:nth-of-type(2) {
          height: 340px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: space-between; }
          footer .ib .l .row:nth-of-type(2) .box {
            width: calc(100% / 3);
            padding-top: 10px; }
            footer .ib .l .row:nth-of-type(2) .box:nth-of-type(4) {
              padding-left: 20px; }
            footer .ib .l .row:nth-of-type(2) .box .a_row {
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex; }
              footer .ib .l .row:nth-of-type(2) .box .a_row i {
                width: 50%;
                font-size: 14px;
                color: #fff; }
              footer .ib .l .row:nth-of-type(2) .box .a_row a.parent {
                width: 50%;
                margin-bottom: 12px; }
            footer .ib .l .row:nth-of-type(2) .box a.parent {
              font-size: 16px;
              font-weight: bold;
              color: #fff;
              margin-bottom: 23px;
              display: block;
              overflow: hidden;
              transition: 0.4s ease;
              position: relative;
              transition: 0.2s ease; }
              footer .ib .l .row:nth-of-type(2) .box a.parent.child {
                margin-bottom: 12px; }
              footer .ib .l .row:nth-of-type(2) .box a.parent span {
                display: inline-block;
                transition: 0.2s ease;
                transform: translateX(-17px);
                padding-left: 17px; }
                footer .ib .l .row:nth-of-type(2) .box a.parent span.child {
                  font-size: 14px;
                  font-weight: 500; }
              footer .ib .l .row:nth-of-type(2) .box a.parent ion-icon {
                position: absolute;
                top: 5px;
                left: 0;
                opacity: 0; }
              footer .ib .l .row:nth-of-type(2) .box a.parent:hover {
                color: #E63034; }
                footer .ib .l .row:nth-of-type(2) .box a.parent:hover span {
                  transition: 0.2s ease;
                  transform: translateX(0); }
                footer .ib .l .row:nth-of-type(2) .box a.parent:hover ion-icon {
                  opacity: 1; }
        footer .ib .l .row .txt {
          width: 215px;
          color: #fff;
          margin-top: 10px;
          font-weight: bold; }
          footer .ib .l .row .txt i {
            display: block;
            font-size: 20px; }
          footer .ib .l .row .txt span {
            display: block;
            font-size: 14px; }
        footer .ib .l .row a.link_btn {
          margin-top: 23px; }
    footer .ib .r {
      width: 292px; }
      footer .ib .r p {
        color: #fff;
        text-align: center;
        margin-top: 8px; }
      footer .ib .r .row {
        border-bottom: 1px solid #5E6165;
        padding: 50px 0; }
        footer .ib .r .row:nth-of-type(1) {
          height: 193px; }
        footer .ib .r .row:nth-of-type(2) {
          height: 340px; }
        footer .ib .r .row #icon_fb, footer .ib .r .row #icon_tw {
          display: block;
          margin: 30px auto;
          transition: 0.4s ease; }
          footer .ib .r .row #icon_fb path, footer .ib .r .row #icon_tw path {
            transition: 0.4s ease; }
          footer .ib .r .row #icon_fb:hover path, footer .ib .r .row #icon_tw:hover path {
            fill: #E63034; }
        footer .ib .r .row #icon_tw {
          position: relative;
          left: -8px; }

#lang_btn {
    position: absolute;
    top: 120px;
    right: 20px;
    cursor: pointer;
    z-index: 9999;
}

.lang_dropdown {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    background: #000;
    padding: 10px;
    z-index: 10000;
    border-radius: 4px;
    min-width: 100px;
    text-align: right;
}

.lang_dropdown li {
    list-style: none;
    margin-bottom: 5px;
}

.lang_dropdown li:last-child {
    margin-bottom: 0;
}

.lang_dropdown li a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 5px;
    font-weight: bold;
}

.lang_dropdown li a:hover {
    background-color: #444;
}

@media screen and (max-width: 768px) {
    #lang_btn {
        position: fixed !important;
        top: 120px !important;   /* 上から100pxに調整 */
        right: 15px !important;  /* 右端から15pxに調整 */
        left: auto !important;   /* 左寄せを無効化 */
        z-index: 9999 !important;
    }

    #lang_btn .lang_dropdown {
        position: absolute;
        top: 100%;               /* ボタンの下に表示 */
        right: 0;
        left: auto;
        background-color: #fff;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        text-align: right;
    }

    #lang_btn .lang_dropdown li a {
        color: #333;
        padding: 8px 12px;
        display: block;
    }

    #lang_btn .lang_dropdown li a:hover {
        background-color: #f0f0f0;
    }
}

/*************************************
 *
 *修正箇所　2025.08.04
 *
 ************************************** */

 .nadcap {
   display: flex;
     flex-wrap: wrap;
     align-items: center;
     justify-content: flex-start;
     padding: 40px 20px;
     max-width: 1600px;
     height:400px;
     margin: auto;
     position: relative;
 }

 .nadcap .nadcap_left {
   flex: 1 1 400px;
   padding: 20px;
   min-width: 400px;
   width:400px;
 }

 .nadcap_logo {
   width: 180px;
   margin-bottom: 20px;
 }

 .nadcap .nadcap_left .nadcap_text {
   width:400px;
   font-size: 2.0rem;
   line-height: 1.6;
 }

 .nadcap_tit {
   color: #0070c0;
   font-weight: bold;
  font-size: 2rem;
 }

 .nadcap_tag {
   background-color: #0070c0;
   color: #fff;
   padding: 2px 6px;
   font-size: 2rem;
   margin-right:5px;
 }

 .nadcap .nadcap_right {
  right: -400px;
  top: -100px;
  transform: translateY(-100%);
  padding: 20px;
  min-width: 300px;
  text-align: right;
 }

 .cert-image {
   width: 100%;
   max-width: 600px;
   height: auto;
 }

 .ams{
  width: 100%;
  height: auto;
  display: block;
}

div.link-bg{
  height:250px;
  position: relative;
  overflow: hidden;
}

.link-air .link-bg {
  background: url('../img/bana_koku_service.png') center/cover no-repeat;
}

.link-type .link-bg {
  background: url('../img/bana_service.png') center/cover no-repeat;
}

.link-bg {
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  position: relative;
}

.link-bg a:hover{
  color:red;
}

.arrow_koku {
  position: absolute;
  right: -50px;
  top: 50px;
  transform: translateY(-50%);
  font-size: 2rem;
  width: 90px;
  height: 90px;
  line-height: 90px;
  text-align: center;
}

.arrow_service {
  position: absolute;
  right: -132px;
  top: 50px;
  transform: translateY(-50%);
  font-size: 2rem;
  width: 90px;
  height: 90px;
  line-height: 90px;
  text-align: center;
}


div.biz_area div.link-air div.link-bg p.koku  {
  width:300px;
  margin:30px 10px 0 230px;
  text-align:left;
  font-size:1.6rem;
  line-height:1.6;
}

div.biz_area div.link-type div.link-bg p.service  {
  width:300px;
  margin:30px 10px 0 -100px;
  text-align:left;
  color:#fff;
  font-size:1.6rem;
  line-height:1.6;
}

@media screen and (max-width: 768px) {
  article .intro .ib:before {
    background: url(../img/grad1_sp.png), url(../img/bana_koku_utyu_sp.png);
    background-size: cover;
    background-blend-mode: multiply;
  }

  .nadcap {
    flex-direction: column;
    align-items: flex-start;
    height: auto;
    padding: 80px 10px;
    text-align: center;
  }

  .nadcap .nadcap_left {
    width: 100%;
    min-width: auto;
    padding: 10px;
  }

  .eng {
    margin-top:100px;
  }

  .nadcap_logo {
    width: 140px;
    margin-bottom: 10px;
  }

  .nadcap .nadcap_left .nadcap_text {
    width: 100%;
    font-size: 1.6rem;
  }

  .nadcap .nadcap_right {
    position: static;
    right:30px;
    top:-100px;
    transform: none;
    text-align: center;
    width: 100%;
    padding: 10px;
    margin-top: 20px;
    height:100px;
  }

  .cert-image {
    width: 120%;
  }

  .link-bg {
    flex-direction: column;
    height: auto;
    padding: 30px 10px;
  }

  .link-air .link-bg {
    background: url('../img/bana_koku_sp.png') center/cover no-repeat;
    height:300px;
  }

  .link-type .link-bg {
    height:300px;
  }

  .arrow_koku {
    position: static;
    transform: none;
    right: 0;
    top: 0;
    width: 60px;
    height: 60px;
    line-height: 60px;
    margin-top: 10px;
  }

    .arrow_service {
      position: static;
      transform: none;
      right: 0;
      top: 0;
      width: 60px;
      height: 60px;
      line-height: 60px;
      margin-top: 10px;
    }

  div.biz_area div.link-air div.link-bg p.koku,
  div.biz_area div.link-type div.link-bg p.service {
    width: 100%;
    margin: 0;
    padding: 30px 0;
    text-align: center;
    font-size: 1.4rem;
    color:#fff;
  }

  div.factory {
    margin-top:200px;
  }
}


/*# sourceMappingURL=style.css.map */
