@media screen and (min-width: 769px), print {
  .btn_center {
    text-align: center;
  }
  main .row {
    padding-right: 79px;
  }
  .bg_title {
    padding-top: 30px;
    height: 230px;
    margin-bottom: -43px;
  }
  .bg_title__back {
    font-size: 14.4rem;
  }
  .line_title {
    margin-bottom: 28px;
  }
  .list_dot {
    margin-bottom: 60px;
  }
  .list_dot li {
    padding-left: 42px;
    line-height: 1.875;
  }
  .list_dot li:not(:last-of-type) {
    margin-bottom: 20px;
  }
  .list_dot li:before {
    top: 10px;
    left: 20px;
  }
  .btn {
    margin: 0 95px;
  }
  .btn a {
    width: 100%;
  }
  .vacant_row {
    width: 754px;
    margin: 0 auto 56px;
  }
  .vacant_box {
    margin: 52px auto 50px;
    border: 1px solid #c3c3c3;
    padding: 39px 97px 44px;
    text-align: center;
  }
  .vacant_box .vacant_ttl {
    display: inline-block;
    font-size: 2.2rem;
    padding-bottom: 6px;
    line-height: 1.5;
    font-weight: 400;
    border-bottom: 5px solid #63af87;
    margin-bottom: 34px;
    letter-spacing: 0.15em;
  }
  .vacant_box > p {
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: 0.1em;
  }
  .vacant_box .btn {
    padding-top: 35px;
    margin: 0;
  }
  .vacant_banner {
    padding: 34px 0 35px;
    margin-bottom: 57px;
    text-align: center;
    background: url("../images/banner_bg.jpg") repeat;
    -moz-background-size: 4px 4px;
         background-size: 4px 4px;
  }
  .vacant_banner a {
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .vacant_banner a:hover {
    opacity: 0.7;
  }
  .vacant_banner figure {
    display: inline-block;
    border: 1px solid #c3c3c3;
  }
}

@media screen and (max-width: 768px) {
  .btn {
    text-align: center;
  }
  .btn span {
    text-align: left;
  }
  .bg_title__back {
    font-size: 14.32292vw;
  }
  .line_title {
    margin-bottom: 5.20833vw;
  }
  .list_dot {
    margin-bottom: 7.8125vw;
  }
  .btn {
    margin: 0 5.85938vw;
  }
  .btn a {
    width: 100%;
  }
  .vacant_row {
    margin: 0 auto 7.29167vw;
  }
  .vacant_box {
    margin: 9.11458vw auto 6.51042vw;
    border: 1px solid #c3c3c3;
    padding: 5.07813vw 5.85938vw 5.72917vw;
    text-align: center;
  }
  .vacant_box .vacant_ttl {
    display: inline-block;
    font-size: 3.64583vw;
    padding-bottom: 0.78125vw;
    line-height: 1.5;
    font-weight: 400;
    border-bottom: 0.65104vw solid #63af87;
    margin-bottom: 5.20833vw;
    letter-spacing: 0.15em;
  }
  .vacant_box > p {
    font-size: 3.125vw;
    line-height: 1.625;
    letter-spacing: 0.1em;
  }
  .vacant_box .btn {
    padding-top: 4.55729vw;
    margin: 0;
  }
  .vacant_banner {
    position: relative;
    z-index: 10;
    padding: 4.42708vw 0 4.55729vw;
    text-align: center;
    margin-bottom: -0.13021vw;
    background: url("../images/banner_bg.jpg") repeat;
    -moz-background-size: 0.52083vw 0.52083vw;
         background-size: 0.52083vw 0.52083vw;
  }
  .vacant_banner figure {
    width: 63.41146vw;
    display: inline-block;
    border: 1px solid #c3c3c3;
  }
  .vacant_banner figure img {
    width: 100%;
  }
}
