@charset "UTF-8";
.form {
  max-width: 800px;
  margin: 0 auto; }
  .form #read-block {
    margin: 0 0 25px; }
    .form #read-block p {
      margin: 20px 0 0; }
      .form #read-block p:first-child {
        margin: 0; }
  .form h2 {
    font-size: 1.6rem;
    font-weight: bold;
    border-top: #C8C8C8 solid 1px;
    border-bottom: #C8C8C8 solid 1px;
    background-color: #F0F0F0;
    padding: 5px 0 3px;
    text-align: center;
    margin: 0 0 10px; }
  .form .form-notice {
    color: #CC0000;
    margin: 0 0 15px; }
  .form .form-table {
    border: #C8C8C8 solid 1px;
    width: 100%; }
    .form .form-table.addtable {
      border: #037CA5 solid 2px; }
    .form .form-table.other-table {
      margin: 15px 0 0; }
    .form .form-table tr:nth-child(2n+1) {
      background-color: #F0F0F0; }
    @media only screen and (max-width: 668px) {
      .form .form-table tr th, .form .form-table tr td {
        padding: 10px;
        display: block;
        box-sizing: border-box;
        width: auto;
        font-size: 1.6rem;
        width: 100%; } }
    .form .form-table tr th {
      width: 38%;
      text-align: left;
      font-weight: normal;
      padding: 8px 8px 8px 16px; }
      @media only screen and (max-width: 668px) {
        .form .form-table tr th {
          width: 100%; } }
      .form .form-table tr th.required:after {
        content: "（必須）";
        color: #CC0000;
        vertical-align: middle; }
    .form .form-table tr td {
      padding: 8px; }
      .form .form-table tr td input[type="text"], .form .form-table tr td input[type="email"],
      .form .form-table tr td textarea {
        /* box-shadow */
        box-shadow: rgba(0, 0, 0, 0.760784) 0px 1px 1px -1px inset;
        -webkit-box-shadow: rgba(0, 0, 0, 0.760784) 0px 1px 1px -1px inset;
        -moz-box-shadow: rgba(0, 0, 0, 0.760784) 0px 1px 1px -1px inset;
        border: #E4E4E4 solid 1px;
        padding: 2px 5px;
        box-sizing: border-box; }
        @media only screen and (max-width: 668px) {
          .form .form-table tr td input[type="text"], .form .form-table tr td input[type="email"],
          .form .form-table tr td textarea {
            width: 100%; } }
      .form .form-table tr td input[type="text"], .form .form-table tr td input[type="email"] {
        width: 320px; }
        @media only screen and (max-width: 668px) {
          .form .form-table tr td input[type="text"], .form .form-table tr td input[type="email"] {
            width: 100%; } }
        .form .form-table tr td input[type="text"].mail, .form .form-table tr td input[type="email"].mail {
          width: 100%; }
        .form .form-table tr td input[type="text"].width01, .form .form-table tr td input[type="email"].width01 {
          width: 140px; }
        .form .form-table tr td input[type="text"].tel, .form .form-table tr td input[type="email"].tel {
          width: 210px; }
      .form .form-table tr td textarea {
        width: 100%;
        vertical-align: bottom; }
  .form #form-btn {
    text-align: center;
    margin: 50px 0 15px;
    padding: 0;
    list-style: none; }
    .form #form-btn > div {
      display: inline-block;
      padding: 2px;
      margin: 0 5px; }
      @media only screen and (max-width: 668px) {
        .form #form-btn > div {
          display: block;
          width: 60%;
          margin: 10px auto 0; } }
      .form #form-btn > div.submit {
        background-color: #2491B9; }
        .form #form-btn > div.submit:hover {
          opacity: 0.7;
          filter: alpha(opacity=60); }
      .form #form-btn > div input {
        width: 206px;
        padding: 7px 5px 5px;
        box-sizing: border-box;
        border: #FFFFFF solid 1px;
        background-color: #2491B9;
        font-size: 2.2rem;
        color: #fff; }
        @media only screen and (max-width: 668px) {
          .form #form-btn > div input {
            width: 100%; } }
      .form #form-btn > div.btn-cancel {
        background-color: #D8D8D8; }
        .form #form-btn > div.btn-cancel:hover {
          opacity: 0.7;
          filter: alpha(opacity=60); }
        .form #form-btn > div.btn-cancel a {
          display: inline-block;
          width: 206px;
          padding: 6px 5px 4px;
          box-sizing: border-box;
          border: #FFFFFF solid 1px;
          background-color: #D8D8D8;
          font-size: 2.2rem;
          line-height: 1.6;
          color: #fff;
          text-decoration: none; }
          @media only screen and (max-width: 668px) {
            .form #form-btn > div.btn-cancel a {
              width: 100%; } }
  .form .form-notes {
    font-size: 1.2rem; }
  .form .thanks-text {
    text-align: center;
    margin: 100px 0; }
  .form .form-subtitle {
    color: #037CA5;
    font-weight: bold;
    margin: 15px 0 0; }
