#contact .contact-ttl {
  margin-top: 0;
  margin-bottom: 3.6603221083455346vw; }
  @media (max-width: 768px) {
    #contact .contact-ttl {
      margin-bottom: 10.666666666666668vw;
      text-align: center; } }
  #contact .contact-ttl .eng {
    font-size: 7.320644216691069vw;
    font-family: "Roboto", sans-serif;
    font-weight: 100;
    color: #194DA8; }
    @media (max-width: 768px) {
      #contact .contact-ttl .eng {
        font-size: 9.066666666666666vw; } }
  #contact .contact-ttl .jap {
    font-size: 1.3177159590043925vw;
    color: #7C7C7C;
    font-weight: 400;
    letter-spacing: .2em;
    margin-top: .5em; }
    @media (max-width: 768px) {
      #contact .contact-ttl .jap {
        font-size: 4.8vw; } }
#contact .about {
  margin-bottom: 6.588579795021962vw;
  border-bottom: 1px solid #707070;
  padding-bottom: 3.074670571010249vw; }
  @media (max-width: 768px) {
    #contact .about {
      margin-bottom: 0; } }
  #contact .about .txt {
    font-size: 1.3177159590043925vw;
    line-height: 1.94; }
    @media (max-width: 768px) {
      #contact .about .txt {
        font-size: 3.2vw;
        line-height: 1.91; } }
    #contact .about .txt a {
      color: #00A7FF;
      text-decoration: none; }
      #contact .about .txt a:hover {
        text-decoration: none;
        color: #707070; }
#contact .contact {
  padding: 0 3.6603221083455346vw;
  margin-bottom: 14.641288433382138vw; }
  @media (max-width: 768px) {
    #contact .contact {
      padding: 10.666666666666668vw 0 14.666666666666666vw; } }
  #contact .contact-form table {
    width: 100%;
    border-spacing: 0 0.7320644216691069vw; }
    @media (max-width: 768px) {
      #contact .contact-form table {
        border-spacing: 0; } }
    #contact .contact-form table th {
      width: 29%;
      background-color: #194DA8;
      padding: 0.8784773060029283vw 1.8301610541727673vw;
      color: #fff;
      text-align: left;
      vertical-align: top; }
      @media (max-width: 768px) {
        #contact .contact-form table th {
          display: block;
          width: 100%;
          padding: 2.666666666666667vw 1.3333333333333335vw;
          margin-bottom: 1.3333333333333335vw; } }
      #contact .contact-form table th .required {
        display: inline-block;
        font-size: 1.0248901903367496vw;
        background-color: #FF5800;
        padding: 0.5856515373352855vw 1.171303074670571vw 0.36603221083455345vw;
        margin-right: 1.171303074670571vw; }
        @media (max-width: 768px) {
          #contact .contact-form table th .required {
            font-size: 2.666666666666667vw;
            padding: 1.866666666666667vw 3.2vw 1.3333333333333335vw;
            margin-right: 3.2vw; } }
      #contact .contact-form table th .optional {
        display: inline-block;
        font-size: 1.0248901903367496vw;
        background-color: #ACACAC;
        padding: 0.5856515373352855vw 1.171303074670571vw 0.36603221083455345vw;
        margin-right: 1.171303074670571vw; }
        @media (max-width: 768px) {
          #contact .contact-form table th .optional {
            font-size: 2.666666666666667vw;
            padding: 1.866666666666667vw 4vw 1.3333333333333335vw; } }
    #contact .contact-form table td {
      width: 71%;
      padding: 0 1.8301610541727673vw 0 5.124450951683748vw; }
      @media (max-width: 768px) {
        #contact .contact-form table td {
          display: block;
          width: 100%;
          padding: 2.666666666666667vw 0 5.333333333333334vw;
          margin-bottom: 2.666666666666667vw; } }
      #contact .contact-form table td select {
        padding: 0.7320644216691069vw 1.4641288433382138vw;
        border: 1px solid #CECECE; }
        @media (max-width: 768px) {
          #contact .contact-form table td select {
            padding: 1.3333333333333335vw 2.666666666666667vw;
            border-radius: 1.3333333333333335vw; } }
      #contact .contact-form table td input[type="text"] {
        width: 100%;
        padding: 0.7320644216691069vw 1.4641288433382138vw;
        border: 1px solid #CECECE; }
        @media (max-width: 768px) {
          #contact .contact-form table td input[type="text"] {
            padding: 1.3333333333333335vw 2.666666666666667vw;
            border-radius: 1.3333333333333335vw; } }
      #contact .contact-form table td input[type="tel"] {
        width: 100%;
        padding: 0.7320644216691069vw 1.4641288433382138vw;
        border: 1px solid #CECECE; }
        @media (max-width: 768px) {
          #contact .contact-form table td input[type="tel"] {
            padding: 1.3333333333333335vw 2.666666666666667vw;
            border-radius: 1.3333333333333335vw; } }
      #contact .contact-form table td input[type="email"] {
        width: 100%;
        padding: 0.7320644216691069vw 1.4641288433382138vw;
        border: 1px solid #CECECE; }
        @media (max-width: 768px) {
          #contact .contact-form table td input[type="email"] {
            padding: 1.3333333333333335vw 2.666666666666667vw;
            border-radius: 1.3333333333333335vw; } }
      #contact .contact-form table td textarea {
        width: 100%;
        padding: 0.7320644216691069vw 1.4641288433382138vw;
        height: 16.83748169838946vw;
        border: 1px solid #CECECE; }
        @media (max-width: 768px) {
          #contact .contact-form table td textarea {
            padding: 1.3333333333333335vw 2.666666666666667vw;
            height: 45.33333333333333vw;
            border-radius: 1.3333333333333335vw; } }
      #contact .contact-form table td .stxt {
        width: 30% !important; }
        @media (max-width: 768px) {
          #contact .contact-form table td .stxt {
            width: 80% !important; } }
      #contact .contact-form table td.add .stxt {
        margin-left: 5px;
        margin-bottom: 0.7320644216691069vw; }
        @media (max-width: 768px) {
          #contact .contact-form table td.add .stxt {
            margin-bottom: 2.666666666666667vw; } }
  #contact .contact-form .contact-button {
    margin-top: 8vw;
    text-align: center; }
    @media (max-width: 768px) {
      #contact .contact-form .contact-button {
        margin-top: 8vw; } }
    #contact .contact-form .contact-button input[type="submit"] {
      background-color: #FF5800;
      border: none;
      font-size: 1.903367496339678vw;
      color: #fff;
      line-height: 6.44216691068814vw;
      border-radius: 1.6837481698389458vw;
      cursor: pointer;
      padding: 0 6.222547584187408vw; }
      @media (max-width: 768px) {
        #contact .contact-form .contact-button input[type="submit"] {
          font-size: 4.8vw;
          line-height: 16vw;
          border-radius: 2.666666666666667vw;
          padding: 0 16vw; } }
      #contact .contact-form .contact-button input[type="submit"]:hover {
        background-color: #707070; }
  #contact .contact .back {
    background-color: #5E5E5E;
    border: none;
    font-size: 1.903367496339678vw;
    color: #fff;
    line-height: 6.44216691068814vw;
    border-radius: 1.6837481698389458vw;
    cursor: pointer;
    padding: 0 6.222547584187408vw; }
    @media (max-width: 768px) {
      #contact .contact .back {
        font-size: 4.8vw;
        line-height: 16vw;
        border-radius: 2.666666666666667vw;
        padding: 0 16vw; } }
    #contact .contact .back:hover {
      background-color: #707070; }
  #contact .contact .submit {
    background-color: #FF5800;
    border: none;
    font-size: 1.903367496339678vw;
    color: #fff;
    line-height: 6.44216691068814vw;
    border-radius: 1.6837481698389458vw;
    cursor: pointer;
    padding: 0 6.222547584187408vw; }
    @media (max-width: 768px) {
      #contact .contact .submit {
        font-size: 4.8vw;
        line-height: 16vw;
        border-radius: 2.666666666666667vw;
        padding: 0 16vw; } }
    #contact .contact .submit:hover {
      background-color: #707070; }
  #contact .contact .toppage {
    background-color: #FF5800;
    border: none;
    font-size: 1.903367496339678vw;
    color: #fff;
    line-height: 6.44216691068814vw;
    border-radius: 1.6837481698389458vw;
    cursor: pointer;
    text-decoration: none;
    padding: 0 6.222547584187408vw; }
    @media (max-width: 768px) {
      #contact .contact .toppage {
        font-size: 4.8vw;
        line-height: 16vw;
        border-radius: 2.666666666666667vw;
        padding: 0 16vw; } }
    #contact .contact .toppage:hover {
      background-color: #707070; }
  #contact .contact h4 {
    margin-bottom: 3.0rem; }
  #contact .contact .error_messe {
    color: #D90000; }

.g-recaptcha div {
  margin: 3.0rem auto; }
