#contact_form {
  max-width: 800px;
  margin: 0 auto 60px;
  width: 94%; }
  #contact_form h1 {
    color: #111111;
    font-size: min(28px, 5.3vw);
    font-weight: 700;
    border-bottom: 1px solid #aaaaaa;
    text-align: left;
    padding: 0 0 0.5em; }
  #contact_form .read {
    font-size: 16px;
    font-weight: 600;
    color: red;
    margin: 20px 0 40px; }
  #contact_form .thanks_txt {
    font-size: 16px;
    font-weight: 600;
    margin: 20px 0 40px; }
  #contact_form dl {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #333; }
    #contact_form dl dt {
      width: 30%;
      font-size: 16px;
      font-weight: 700; }
      #contact_form dl dt .must {
        color: red; }
    #contact_form dl dd {
      width: 70%;
      padding-left: 5%;
      font-size: 16px; }
      #contact_form dl dd input {
        font-size: 16px;
        width: 100%; }
      #contact_form dl dd.flex {
        display: flex;
        align-items: center; }
        #contact_form dl dd.flex div {
          display: flex;
          align-items: center;
          font-size: 16px;
          flex-wrap: nowrap;
          width: 50%; }
          #contact_form dl dd.flex div:first-of-type {
            margin-right: 20px; }
          #contact_form dl dd.flex div input {
            margin-left: 10px;
            width: 100% !important; }
  #contact_form .action_btn {
    width: 80%;
    max-width: 300px;
    margin: 0 auto; }
    #contact_form .action_btn input {
      width: 100%;
      display: block;
      color: #fff;
      border: none;
      padding: 20px;
      font-size: 18px;
      background: none;
      cursor: pointer;
      transition: .3s;
      background: #111; }
      #contact_form .action_btn input:hover {
        opacity: .7; }
