@media screen and (min-width: 769px) {
  .contact .form .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 11px;
  }
  .contact .form .df > span {
    margin-right: 10px;
  }
  .contact .form .df input {
    width: 171px;
  }
  .contact .form dl dt span.st2 {
    background: #CECECE;
  }
  .contact .form dl dd .list_rd {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-bottom: -10px;
    margin-top: 11px;
  }
  .contact .form dl dd .list_rd .rd {
    margin-bottom: 10px;
  }
  .contact .form dl dd .list_rd .rd:not(:last-child) {
    margin-right: 30px;
  }
  .contact .form dl dd .list_rd .note {
    width: 100%;
  }
  .contact .form dl dd .list_checkbox {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-bottom: -10px;
  }
  .contact .form dl dd .list_checkbox label {
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    font-size: 16px;
    line-height: 24px;
  }
  .contact .form dl dd .list_checkbox label:not(:last-child) {
    margin-right: 28px;
  }
  .contact .form dl dd .list_checkbox label input {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
  }
  .contact .form dl dd .list_checkbox label input:checked + span::before {
    content: '\2713';
  }
  .contact .form dl dd .list_checkbox label span {
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    display: inline-block;
    padding: 0 0 0 32px;
    min-width: 80px;
  }
  .contact .form dl dd .list_checkbox label span::before {
    position: absolute;
    content: "";
    width: 22.5px;
    height: 22.5px;
    background: #fff;
    border: 1px solid #78829a;
    left: 0;
    top: 1.5px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 23px;
    line-height: 1.5;
  }
  .contact .form dl dd textarea {
    height: 188px;
  }
  .contact .form dl dd textarea.st2 {
    height: 107px;
  }
  .contact .form dl dd .wrapDate {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .contact .form dl dd .wrapDate input {
    width: 175px;
    margin-right: 8.5px;
    padding: 0 19px;
  }
  .contact .form dl dd .wrapDate .wrapSel {
    width: 175px;
    position: relative;
  }
  .contact .form dl dd .wrapDate .wrapSel select {
    appearance: none;
    border: 0;
    width: 100%;
    padding: 0 19px;
    outline: none;
    font-size: 16px;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 50px;
    background: #f0f2f7;
    -moz-border-radius: 5px;
         border-radius: 5px;
    border: 1px solid #78829a;
  }
  .contact .form dl dd .wrapDate .wrapSel::after {
    position: absolute;
    content: ">";
    font-size: 18px;
    line-height: 26px;
    font-weight: 400;
    color: #000000;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(90deg);
       -moz-transform: translateY(-50%) rotate(90deg);
        -ms-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
    right: 6px;
    pointer-events: none;
  }
}

@media screen and (max-width: 768px) {
  .contact .form .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2.657vw;
  }
  .contact .form .df > span {
    margin-right: 2.41546vw;
  }
  .contact .form .df input {
    width: 41.30435vw;
  }
  .contact .form dl dd .list_rd {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 1.69082vw;
    margin-top: 1.69082vw;
  }
  .contact .form dl dd .list_rd .rd {
    margin-top: 1.44928vw;
    margin-bottom: 1.44928vw;
  }
  .contact .form dl dd .list_rd .rd:not(:last-child) {
    margin-right: 5.31401vw;
  }
  .contact .form dl dd .list_rd .note {
    width: 100%;
  }
  .contact .form dl dt span.st2 {
    background: #CECECE;
  }
  .contact .form dl dd .list_checkbox {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-top: 4.69082vw;
  }
  .contact .form dl dd .list_checkbox label {
    margin-bottom: 4.830vw;
    position: relative;
    display: inline-block;
    cursor: pointer;
    font-size: 3.86473vw;
    line-height: 4.83092vw;
  }
  .contact .form dl dd .list_checkbox label:not(:last-child) {
    margin-right: 5.66184vw;
  }
  .contact .form dl dd .list_checkbox label input {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
  }
  .contact .form dl dd .list_checkbox label input:checked + span::before {
    content: '\2713';
  }
  .contact .form dl dd .list_checkbox label span {
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    display: inline-block;
    padding: 0 0 0 6.45411vw;
    min-width: 80px;
  }
  .contact .form dl dd .list_checkbox label span::before {
    position: absolute;
    content: "";
    width: 5.03865vw;
    height: 5.03865vw;
    background: #fff;
    border: 1px solid #78829a;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 5.5555vw;
    line-height: 1.5;
  }
  .contact .form dl dd textarea {
    height: 45.41063vw;
  }
  .contact .form dl dd textarea.st2 {
    height: 25.845vw;
  }
  .contact .form dl.st2 dt {
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .contact .form dl dd .wrapDate {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .contact .form dl dd .wrapDate input {
    width: 48%;
    padding: 0 4.589vw;
  }
  .contact .form dl dd .wrapDate .wrapSel {
    width: 48%;
    position: relative;
  }
  .contact .form dl dd .wrapDate .wrapSel select {
    appearance: none;
    border: 0;
    width: 100%;
    padding: 0 19px;
    outline: none;
    font-size: 16px;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 12.07729vw;
    -moz-border-radius: 1.20773vw;
         border-radius: 1.20773vw;
    border: 1px solid #78829a;
    background: #F4F4F4;
  }
  .contact .form dl dd .wrapDate .wrapSel::after {
    position: absolute;
    content: ">";
    font-size: 18px;
    line-height: 26px;
    font-weight: 400;
    color: #000000;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(90deg);
       -moz-transform: translateY(-50%) rotate(90deg);
        -ms-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
    right: 6px;
    pointer-events: none;
  }
}
