.contact {
  width: 100%;
  max-width: 706px;
  padding: 112px 24px 0;
  margin: 0 auto 96px; }
  .contact .contact-ttl {
    display: inline-block;
    padding: 4px 20px;
    margin: 0 0 24px;
    position: relative;
    top: -4px;
    z-index: 1; }
    .contact .contact-ttl:before, .contact .contact-ttl:after {
      content: '';
      width: 100%;
      height: 70.968%;
      position: absolute;
      left: 0;
      z-index: -1; }
    .contact .contact-ttl:before {
      border-top: 1px solid #7D7D7D;
      border-left: 1px solid #7D7D7D;
      top: 0; }
    .contact .contact-ttl:after {
      border-bottom: 1px solid #7D7D7D;
      border-right: 1px solid #7D7D7D;
      bottom: 0; }
  .contact .contact-pickup {
    font-size: 3.5rem; }
  .contact .lead {
    margin: 0 auto 20px;
    font-size: 1.3rem;
    line-height: 1.6;
    letter-spacing: .13em; }
  .contact .form-head {
    margin: 0 auto 64px; }
    .contact .form-head .tel {
      display: inline-block;
      margin: 0 0 12px;
      position: relative;
      top: -4px;
      z-index: 1; }
      .contact .form-head .tel:before, .contact .form-head .tel:after {
        content: '';
        width: 100%;
        height: 70.968%;
        position: absolute;
        left: 0;
        z-index: -1; }
      .contact .form-head .tel:before {
        border-top: 1px solid #7D7D7D;
        border-left: 1px solid #7D7D7D;
        top: 0; }
      .contact .form-head .tel:after {
        border-bottom: 1px solid #7D7D7D;
        border-right: 1px solid #7D7D7D;
        bottom: 0; }
    .contact .form-head a {
      display: block;
      padding: 2px 18px; }
    .contact .form-head .time {
      font-size: 1.2rem;
      letter-spacing: .15em;
      white-space: nowrap; }
      .contact .form-head .time .small {
        font-size: 1.1rem;
        letter-spacing: .1em; }
  .contact .unit-head {
    margin: 0 auto 36px; }
    .contact .unit-head .unit-ttl {
      margin: 0 auto 8px;
      font-size: 1.4rem; }
    .contact .unit-head .unit-txt {
      font-size: 1.0rem;
      line-height: 1.8;
      letter-spacing: .1em; }
  .contact .form .formErrorContent {
    display: inline-block;
    padding: 4px 0 0 52px;
    color: #f00;
    font-weight: bold;
    letter-spacing: .15em;
    line-height: 1.4; }
  .contact .txt-input-list {
    margin: 0 auto 32px; }
  .contact .txt-input-item {
    font-size: 1.1rem;
    letter-spacing: -.4em;
    line-height: 1; }
    .contact .txt-input-item:not(:last-child) {
      margin: 0 auto 10px; }
    .contact .txt-input-item .req,
    .contact .txt-input-item input {
      display: inline-block;
      height: calc(1em + 20px);
      letter-spacing: .15em;
      vertical-align: middle; }
    .contact .txt-input-item .req {
      width: 44px;
      padding: 10px 0;
      margin-right: 8px;
      text-align: center;
      background-color: #F5F5F5; }
      .contact .txt-input-item .req.none {
        background: transparent; }
    .contact .txt-input-item input {
      width: calc(100% - 52px);
      padding: 10px;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: transparent;
      background-color: #F5F5F5;
      border: none;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      -ms-border-radius: 0;
      -o-border-radius: 0;
      border-radius: 0;
      outline: none; }
  .contact .cat-select {
    margin: 0 auto 32px; }
    .contact .cat-select .txt {
      margin: 0 auto 16px; }
    .contact .cat-select .select-list {
      padding: 0 10px;
      letter-spacing: -.4em; }
    .contact .cat-select .selectitem {
      display: inline-block;
      margin: 0 20px 12px 0;
      vertical-align: top;
      line-height: 1; }
    .contact .cat-select input,
    .contact .cat-select .txt {
      letter-spacing: .15em;
      vertical-align: middle; }
    .contact .cat-select input {
      margin-right: 6px; }
  .contact .form-detail {
    margin: 0 auto 30px; }
    .contact .form-detail textarea {
      width: 100%;
      height: calc(12em * 1.8);
      padding: 10px;
      font-size: 1.1rem;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: transparent;
      background-color: #F5F5F5;
      border: none;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      -ms-border-radius: 0;
      -o-border-radius: 0;
      border-radius: 0;
      outline: none; }
  .contact .submit-btn {
    text-align: center; }
    .contact .submit-btn input {
      width: 94px;
      font-size: 1.7rem;
      text-indent: .3em;
      letter-spacing: .3em;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: transparent;
      background-color: #F5F5F5;
      border: none;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      -ms-border-radius: 5px;
      -o-border-radius: 5px;
      border-radius: 5px;
      outline: none; }

@media screen and (min-width: 1080px) {
  .contact {
    padding: 209px 0 0;
    margin: 0 auto 110px; }
    .contact .contact-ttl {
      padding: 6px 20px;
      letter-spacing: .2em; }
    .contact .contact-pickup {
      font-size: 4.0rem; }
    .contact .lead {
      margin: 0 auto 40px;
      font-size: 1.4rem;
      letter-spacing: .15em; }
    .contact .form-head {
      margin: 0 auto 94px; }
      .contact .form-head .tel:before, .contact .form-head .tel:after {
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        transition-duration: 0.3s; }
      .contact .form-head .tel:hover:before, .contact .form-head .tel:hover:after {
        border-color: #BBD580; }
      .contact .form-head a {
        padding: 4px 18px;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        transition-duration: 0.3s; }
        .contact .form-head a:hover {
          color: #BBD580; }
      .contact .form-head .time {
        font-size: 1.2rem;
        letter-spacing: .15em; }
        .contact .form-head .time .small {
          font-size: 1.2rem; }
    .contact .unit-head {
      margin: 0 auto 40px; }
      .contact .unit-head .unit-ttl {
        margin: 0 auto 12px;
        font-size: 1.6rem; }
      .contact .unit-head .unit-txt {
        font-size: 1.2rem;
        letter-spacing: .13em; }
      .contact .unit-head a {
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        transition-duration: 0.3s; }
        .contact .unit-head a:hover {
          color: #BBD580;
          text-decoration: underline; }
    .contact .txt-input-list {
      margin: 0 auto 48px; }
    .contact .txt-input-item {
      font-size: 1.3rem; }
      .contact .txt-input-item:not(:last-child) {
        margin: 0 auto 24px; }
      .contact .txt-input-item .req,
      .contact .txt-input-item input {
        display: inline-block;
        height: calc(1em + 24px);
        letter-spacing: .15em;
        vertical-align: middle; }
      .contact .txt-input-item .req {
        width: 52px;
        padding: 12px 0; }
      .contact .txt-input-item input {
        width: calc(100% - 60px);
        padding: 12px; }
    .contact .cat-select {
      padding: 0 0 0 16px;
      margin: 0 auto 44px; }
      .contact .cat-select .txt {
        margin: 0 auto 24px;
        font-size: 1.3rem; }
      .contact .cat-select .select-list {
        padding: 0 0 0 18px;
        letter-spacing: -.4em; }
      .contact .cat-select .selectitem {
        margin: 0 18px 12px 0; }
      .contact .cat-select input,
      .contact .cat-select .txt {
        font-size: 1.3rem;
        letter-spacing: .14em; }
      .contact .cat-select input {
        margin-right: 4px; }
    .contact .form-detail {
      margin: 0 auto 34px; }
      .contact .form-detail textarea {
        height: calc(6em * 1.8);
        padding: 14px 10px;
        font-size: 1.3rem; }
    .contact .submit-btn input {
      padding: 2px 0; } }

/*# sourceMappingURL=style.css.map */
