article {
  text-align: center;
  background: url(/img/1/contacts/top--pc.webp) no-repeat;
  background-size: 100%;
  background-position: top;
  background-color: #e6e6e6; }

.bem-contacts {
  width: 100%;
  background: #fff;
  padding: 0 32px 48px;
  margin-top: 548px;
  box-shadow: 0px 0px 64px 16px rgba(0, 0, 0, 0.1); }
  .bem-contacts__title {
    width: 70%;
    margin: -64px 15% 0;
    background: #111b3f;
    color: #fff;
    text-align: center;
    padding: 24px;
    position: relative; }
    .bem-contacts__title::before {
      content: "";
      width: 2px;
      height: 100px;
      background: #fff;
      transform: rotate(40deg);
      position: absolute;
      top: -25px;
      left: 48px; }
    .bem-contacts__title::after {
      content: "";
      width: 2px;
      height: 100px;
      background: #fff;
      transform: rotate(40deg);
      position: absolute;
      bottom: -25px;
      right: 48px; }
    .bem-contacts__title__en {
      width: 100%;
      font-size: 28px;
      font-weight: bold; }
    .bem-contacts__title__jp {
      width: 100%;
      font-size: 18px;
      font-weight: bold;
      margin-top: 16px; }
  .bem-contacts__text {
    width: 100%;
    text-align: center;
    font-size: 14px;
    line-height: 32px;
    font-weight: bold;
    margin: 48px 0; }
  .bem-contacts__tablebox {
    width: 100%; }
    .bem-contacts__tablebox__title {
      width: 27%;
      height: 72px;
      line-height: 72px;
      background: #111b3f;
      color: #fff;
      font-size: 18px;
      position: relative;
      text-align: left;
      font-weight: bold;
      padding-left: 56px;
      margin-left: -7%;
      margin-right: 2%; }
      .bem-contacts__tablebox__title__inner {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: -12px;
        background: #808080;
        color: #fff;
        height: 32px;
        line-height: 32px;
        padding: 0 16px;
        font-weight: bold; }
    .bem-contacts__tablebox table {
      float: right;
      width: 78%;
      border-collapse: separate;
      border-spacing: 4px; }
      .bem-contacts__tablebox table tbody {
        width: 100%; }
        .bem-contacts__tablebox table tbody tr {
          width: 100%; }
          .bem-contacts__tablebox table tbody tr:nth-of-type(even) th {
            background: #82879b; }
          .bem-contacts__tablebox table tbody tr:nth-of-type(even) td {
            background: #f5f5f5; }
          .bem-contacts__tablebox table tbody tr th {
            width: 25%;
            background: #111b3f;
            color: #fff;
            font-weight: bold;
            font-size: 14px;
            vertical-align: middle;
            padding: 16px 16px;
            text-align: left;
            line-height: 20px; }
            .bem-contacts__tablebox table tbody tr th strong {
              font-weight: bold; }
            .bem-contacts__tablebox table tbody tr th .required {
              color: yellow;
              font-weight: bold; }
          .bem-contacts__tablebox table tbody tr td {
            background: #e6e6e6;
            font-size: 14px;
            font-weight: bold;
            padding: 12px 8px;
            text-align: left;
            line-height: 42px; }
            .bem-contacts__tablebox table tbody tr td.error {
              background: #e10004;
              color: #fff; }
              .bem-contacts__tablebox table tbody tr td.error ul.errors {
                width: 100%; }
                .bem-contacts__tablebox table tbody tr td.error ul.errors li {
                  width: 100%;
                  font-weight: bold;
                  color: #fff;
                  font-size: 14px;
                  padding-left: 28px;
                  position: relative; }
                  .bem-contacts__tablebox table tbody tr td.error ul.errors li::before {
                    content: "\f06a";
                    width: 24px;
                    height: 24px;
                    line-height: 24px;
                    text-align: left;
                    font-size: 20px;
                    font-family: 'Font Awesome 6 Free' !important;
                    font-weight: 900;
                    color: #fff;
                    position: absolute;
                    top: 0;
                    bottom: 0;
                    margin: auto;
                    left: 0; }
            .bem-contacts__tablebox table tbody tr td input, .bem-contacts__tablebox table tbody tr td textarea {
              font-size: 16px; }
            .bem-contacts__tablebox table tbody tr td input[type=text], .bem-contacts__tablebox table tbody tr td select {
              width: 345px;
              float: left;
              height: auto;
              padding: 8px 8px;
              margin: 0 10px 0 0;
              resize: none; }
            .bem-contacts__tablebox table tbody tr td input:not([type=file]), .bem-contacts__tablebox table tbody tr td textarea, .bem-contacts__tablebox table tbody tr td select {
              border: 1px solid #ccc;
              background-color: #fff; }
            .bem-contacts__tablebox table tbody tr td label {
              float: left;
              position: relative;
              padding-left: 32px;
              margin-right: 16px;
              cursor: pointer; }
              .bem-contacts__tablebox table tbody tr td label input {
                position: absolute;
                top: 0;
                bottom: 0;
                left: 0;
                margin: auto;
                width: 24px;
                height: 24px; }
  .bem-contacts__btnwrapper {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 32px; }
    .bem-contacts__btnwrapper__back {
      font-size: 16px;
      font-weight: bold;
      height: 48px;
      width: 200px;
      background: #808080;
      color: #fff;
      border: none;
      cursor: pointer; }
      .bem-contacts__btnwrapper__back:hover {
        opacity: 0.8; }
    .bem-contacts__btnwrapper__inputwrap {
      width: 400px;
      height: 96px;
      text-align: center;
      background: #fff;
      position: relative; }
      .bem-contacts__btnwrapper__inputwrap__img {
        position: absolute;
        bottom: 0;
        left: -16px;
        z-index: 1; }
      .bem-contacts__btnwrapper__inputwrap__inner {
        width: 400px;
        height: 96px;
        position: absolute;
        top: 0;
        left: 0;
        background: #e6e6e6;
        overflow: hidden; }
        .bem-contacts__btnwrapper__inputwrap__inner::before {
          position: absolute;
          top: 0;
          left: 170px;
          width: 500px;
          height: 500px;
          content: '';
          -webkit-transition: all .5s ease-in-out;
          transition: all .5s ease-in-out;
          -webkit-transform: translateX(-98%) translateY(-70%) rotate(120deg);
          transform: translateX(-98%) translateY(-70%) rotate(120deg);
          background: #303030; }
        .bem-contacts__btnwrapper__inputwrap__inner:hover::before {
          -webkit-transform: translateX(-9%) translateY(-25%) rotate(120deg);
          transform: translateX(-9%) translateY(-25%) rotate(120deg); }
        .bem-contacts__btnwrapper__inputwrap__inner:hover i {
          color: #fff; }
        .bem-contacts__btnwrapper__inputwrap__inner:hover .bem-contacts__btnwrapper__inputwrap__inner__proceed {
          color: #fff; }
        .bem-contacts__btnwrapper__inputwrap__inner__en {
          position: absolute;
          bottom: 24px;
          left: 0;
          width: 100%;
          padding-left: 132px;
          font-size: 14px;
          color: #808080; }
        .bem-contacts__btnwrapper__inputwrap__inner i {
          width: 20px;
          height: 20px;
          font-size: 20px;
          line-height: 20px;
          color: #808080;
          position: absolute;
          top: 0;
          bottom: 0;
          margin: auto;
          right: 16px; }
        .bem-contacts__btnwrapper__inputwrap__inner__proceed {
          width: 400px;
          height: 96px;
          background: none;
          border: none;
          cursor: pointer;
          z-index: 10;
          display: block;
          position: relative;
          font-weight: bold;
          font-size: 18px;
          text-align: center;
          padding-left: 132px;
          padding-bottom: 20px; }
  .bem-contacts__complete {
    width: 100%;
    text-align: center;
    padding: 48px 48px 0px 48px; }
    .bem-contacts__complete__img {
      float: none;
      display: inline-block; }
    .bem-contacts__complete__text {
      width: 100%;
      text-align: center;
      font-size: 16px;
      font-weight: bold;
      line-height: 28px;
      margin-top: 24px; }

/*# sourceMappingURL=d--contacts--index.css.map */
