.root#contact {
  letter-spacing: 0.04em; }
  .root#contact .key {
    position: relative;
    margin-bottom: 80px; }
    .root#contact .key__text {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      font-size: 42px;
      font-size: 4.2rem;
      text-align: center;
      color: #fff;
      line-height: 1.78; }
      .root#contact .key__text:before {
        content: '';
        position: absolute;
        left: 50%;
        bottom: -15px;
        display: inline-block;
        width: 79px;
        height: 6px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        background: #fff; }
  .root#contact .wrap {
    width: 1054px;
    margin: 0 auto 112px; }
    @media only screen and (max-width: 767px) {
      .root#contact .wrap {
        width: 100%;
        padding: 0 6.66666%; } }
    .root#contact .wrap .text {
      display: flex;
      justify-content: center;
      margin-bottom: 62px; }
      .root#contact .wrap .text > p {
        text-align: center;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 2.1; }
        @media only screen and (max-width: 767px) {
          .root#contact .wrap .text > p {
            font-size: 14px;
            font-size: 1.4rem;
            text-align: left; } }
    .root#contact .wrap .contactForm {
      font-size: 16px;
      font-size: 1.6rem;
      text-align: left; }
      .root#contact .wrap .contactForm__errors {
        text-align: center; }
        .root#contact .wrap .contactForm__errors__list {
          display: inline-block;
          margin-bottom: 40px;
          text-align: left; }
          .root#contact .wrap .contactForm__errors__list__item {
            color: #ff0000;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.5;
            margin-bottom: 5px; }
            .root#contact .wrap .contactForm__errors__list__item:last-child {
              margin-bottom: 0; }
      .root#contact .wrap .contactForm__table {
        width: 100%; }
        .root#contact .wrap .contactForm__table__inputObj {
          background: #fff;
          box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);
          display: flex;
          margin-bottom: 20px; }
          @media only screen and (max-width: 767px) {
            .root#contact .wrap .contactForm__table__inputObj {
              display: block;
              padding: 15px; } }
          .root#contact .wrap .contactForm__table__inputObj > dt {
            width: 238px;
            padding: 34px 0 34px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj > dt {
                width: 100%;
                padding: 0;
                margin-bottom: 10px; } }
            .root#contact .wrap .contactForm__table__inputObj > dt > img {
              padding-right: 10px;
              vertical-align: middle; }
          .root#contact .wrap .contactForm__table__inputObj input[type="text"] {
            width: 363px;
            margin: 20px 0;
            background: #F4F9F9;
            border: 1px solid #C2E2E0;
            border-radius: 3px;
            padding: 10px;
            font-size: 16px;
            font-size: 1.6rem; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj input[type="text"] {
                width: 100%;
                margin: 0;
                font-size: 14px;
                font-size: 1.4rem; } }
        .root#contact .wrap .contactForm__table__inputObj--company input[type="text"] {
          width: 786px; }
          @media only screen and (max-width: 767px) {
            .root#contact .wrap .contactForm__table__inputObj--company input[type="text"] {
              width: 100%; } }
        .root#contact .wrap .contactForm__table__inputObj--mail input[type="text"] {
          width: 786px; }
          @media only screen and (max-width: 767px) {
            .root#contact .wrap .contactForm__table__inputObj--mail input[type="text"] {
              width: 100%; } }
        .root#contact .wrap .contactForm__table__inputObj--add > dt {
          line-height: 2.31; }
        .root#contact .wrap .contactForm__table__inputObj--add input[type="text"] {
          width: 786px; }
          @media only screen and (max-width: 767px) {
            .root#contact .wrap .contactForm__table__inputObj--add input[type="text"] {
              width: 100%; } }
        .root#contact .wrap .contactForm__table__inputObj--type {
          margin-bottom: 0; }
          .root#contact .wrap .contactForm__table__inputObj--type > dt {
            line-height: 2.31;
            padding: 44px 0 44px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--type > dt {
                padding: 0; } }
          .root#contact .wrap .contactForm__table__inputObj--type__list {
            padding: 22px 0; }
            .root#contact .wrap .contactForm__table__inputObj--type__list > dd {
              margin-bottom: 15px; }
        .root#contact .wrap .contactForm__table__inputObj--maker {
          box-shadow: 1px 2px 1px 1px rgba(0, 0, 0, 0.07);
          margin-bottom: 0;
          padding-bottom: 20px; }
          .root#contact .wrap .contactForm__table__inputObj--maker > dt {
            padding: 18px 0 18px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--maker > dt {
                padding: 0; } }
          .root#contact .wrap .contactForm__table__inputObj--maker input[type="text"] {
            margin: 0; }
        .root#contact .wrap .contactForm__table__inputObj--model {
          box-shadow: 1px 2px 1px 1px rgba(0, 0, 0, 0.07);
          margin-bottom: 0;
          padding-bottom: 20px; }
          .root#contact .wrap .contactForm__table__inputObj--model > dt {
            padding: 18px 0 18px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--model > dt {
                padding: 0; } }
          .root#contact .wrap .contactForm__table__inputObj--model input[type="text"] {
            margin: 0; }
        .root#contact .wrap .contactForm__table__inputObj--years {
          box-shadow: 1px 2px 1px 1px rgba(0, 0, 0, 0.07);
          padding-bottom: 20px; }
          .root#contact .wrap .contactForm__table__inputObj--years > dt {
            padding: 18px 0 18px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--years > dt {
                padding: 0; } }
          .root#contact .wrap .contactForm__table__inputObj--years input[type="text"] {
            margin: 0; }
        .root#contact .wrap .contactForm__table__inputObj--contents {
          margin-bottom: 50px; }
          .root#contact .wrap .contactForm__table__inputObj--contents > dt {
            padding: 141px 0 141px 31px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--contents > dt {
                padding: 0; } }
          .root#contact .wrap .contactForm__table__inputObj--contents input[type="text"] {
            width: 786px; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--contents input[type="text"] {
                width: 100%; } }
          .root#contact .wrap .contactForm__table__inputObj--contents__area {
            width: 786px;
            height: 258px;
            background: #F4F9F9;
            border: 1px solid #C2E2E0;
            border-radius: 3px;
            resize: none;
            margin: 20px 0;
            padding: 10px;
            font-size: 16px;
            font-size: 1.6rem; }
            @media only screen and (max-width: 767px) {
              .root#contact .wrap .contactForm__table__inputObj--contents__area {
                width: 100%;
                height: 200px;
                font-size: 14px;
                font-size: 1.4rem;
                margin: 0; } }

.c-formRadio_type01 > input[type="radio"]:checked + label > span:after {
  display: block; }
.c-formRadio_type01 > label {
  position: relative;
  display: inline-block; }
  .c-formRadio_type01 > label > span {
    font-size: 0;
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #fff;
    border: 1px solid #222222;
    vertical-align: middle;
    margin-right: 10px;
    border-radius: 50%; }
    .c-formRadio_type01 > label > span:after {
      font-size: 0;
      display: none;
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 10px;
      height: 10px;
      margin-left: -5px;
      margin-top: -5px;
      background-color: #818181;
      border-radius: 50%; }
  .c-formRadio_type01 > label > div {
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    font-size: 1.4rem; }
  .c-formRadio_type01 > label:hover {
    cursor: pointer; }

#confirm .anony {
  padding: 50px 0; }
  #confirm .anony__table {
    width: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      #confirm .anony__table {
        width: 100%; } }
    #confirm .anony__table > tbody > tr > th,
    #confirm .anony__table > tbody > tr > td {
      padding: 15px;
      font-size: 15px;
      font-size: 1.5rem;
      border: 1px solid #B7B7B7; }
      @media only screen and (max-width: 767px) {
        #confirm .anony__table > tbody > tr > th,
        #confirm .anony__table > tbody > tr > td {
          display: block;
          padding: 10px;
          width: 100% !important; } }
    #confirm .anony__table > tbody > tr > th {
      width: 30%;
      background-color: #F8F9FA; }
    #confirm .anony__table > tbody > tr > td {
      width: 70%; }
  #confirm .anony__btns {
    text-align: center; }
    #confirm .anony__btns__list__item__btn {
      display: block;
      width: 500px;
      margin-left: auto;
      margin-right: auto;
      font-weight: 500;
      padding: 20px;
      text-align: center;
      border: 2px solid #0D9A93;
      cursor: pointer; }
      #confirm .anony__btns__list__item__btn[data-role="prev"] {
        background-color: #fff;
        color: #0D9A93;
        margin-bottom: 20px; }
      #confirm .anony__btns__list__item__btn[data-role="send"] {
        background-color: #0D9A93;
        color: #fff; }
      @media only screen and (max-width: 767px) {
        #confirm .anony__btns__list__item__btn {
          width: 100%; } }

#finish .anony {
  padding: 50px 0; }
  #finish .anony__rt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    text-align: center;
    margin-bottom: 40px; }
  #finish .anony__btn {
    width: 500px;
    margin-left: auto;
    margin-right: auto; }
    @media only screen and (max-width: 767px) {
      #finish .anony__btn {
        width: 100%; } }
    #finish .anony__btn > a {
      background-image: none; }
