@charset "utf-8";

/* CSS Document */
h4 {
  font-size: 26px;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.services {
  width: 900px;
  background: #f2f2f2;
  padding: 50px;
  margin: 40px auto 0;
}

.services-head {
  background-color: #fff;
  padding: 40px;
  position: relative;
  height: 320px;
  margin: 0 0 50px;
}

.services-head-txt {
  position: absolute;
  top: 130px;
}

.services-head-txt p {
  font-size: 16px;
}

h5 {
  font-size: 24px;
  font-weight: 500;
  margin: 0 0 20px;
}

.yellow {
  color: #f4ab33;
}

.blue {
  color: #005e8d;
}

.illust {
  position: absolute;
  right: 40px;
}

.services-foot {
  overflow: hidden;
}

.services-foot-unit-wrap {
  display: flex;
  margin: 0 0 30px;
}

.services-foot-unit-wrap:last-child {
  margin: 0;
}

.services-foot-unit {
  float: left;
}

.services-foot-unit:nth-child(2n) {
  margin: 0 0 0 30px;
}

.services-foot-unit p {
  width: 435px;
  text-align: justify;
}

.management-work, .management-area, .free-plan {
  margin: 90px auto 0;
  position: relative;
}

.management-area .title {
  text-align: center;
  font-size: 30px;
  font-weight: 600;
}

.management-area-txt {
  position: absolute;
  right: 0;
  top: 220px;
  font-size: 16px;
  line-height: 2;
}

.bold {
  font-size: 20px;
  font-weight: 500;
}

.free-plan {
  background-color: #f2f2f2;
  padding: 20px 0 40px;
}

.free-plan-title {
  text-align: center;
  font-size: 21px;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.red-square {
  background-color: #ba0822;
  padding: 5px;
  font-size: 36px;
  color: #fff;
}

.free {
  font-size: 72px;
  position: relative;
  top: 12px;
  color: #ba0822;
}

rt {
  font-size: 16px;
  font-weight: 600;
  transform: translateX(-5px) translateY(10px);
  letter-spacing: -1.2em;
}

.plan {
  font-size: 36px;
  color: #ba0822;
  font-weight: 800;
}

.free-plan-txt {
  text-align: center;
  margin: 0 0 50px;
}

.free-plan-box {
  margin: 0 auto;
  width: 435px;
}

.free-plan-box .top {
  background-color: #005e8d;
  padding: 10px;
  color: #fff;
  font-size: 24px;
  letter-spacing: 0.07em;
  text-align: center;
  font-weight: 500;
}

.free-plan-box .bottom {
  border: 4px solid #005e8d;
  padding: 20px 30px;
  background-color: #fff;
}

.free-plan-box .bottom img {
  margin: 0 auto;
  display: block;
}

.management-flow img {
  margin: 0 auto 70px;
}

.management-work table {
  width: 100%;
  border-collapse: separate;
  border: 2px solid #005e8d;
}

.management-work th, .management-work td {
  padding: 15px 20px;
}

.management-work th {
  background: #005e8d;
  color: #fff;
  font-weight: 400;
  border-bottom: 1px solid #fff;
}

.management-work tr:last-child th {
  border-bottom: none;
}

.management-work td {
  border-bottom: 1px solid #005e8d;
}

@media (max-width: 1023px) {
  h4 {
    font-size: 21px;
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1.4;
    text-align: center;
  }

  #management {
    width: 90%;
  }

  .services {
    width: 92%;
    background: #f2f2f2;
    padding: 4%;
    margin: 6% auto;
  }

  .services-head {
    background-color: #fff;
    padding: 40px;
    position: unset;
    height: unset;
    margin: 0 0 50px;
  }

  .services-head-txt {
    position: unset;
    top: unset;
    text-align: center;
    margin: 0 0 8%;
  }

  .services-head-txt p {
    font-size: 16px;
  }

  h5 {
    font-size: 24px;
    font-weight: 500;
    margin: 0 0 20px;
  }

  .yellow {
    color: #f4ab33;
  }

  .blue {
    color: #005e8d;
  }

  .illust {
    position: unset;
    right: unset;
    margin: 0 auto;
    display: block;
    width: 65%;
  }

  .services-foot {
    overflow: hidden;
  }

  .services-foot-unit {
    float: left;
    width: 48%;
  }

  .services-foot-unit:nth-child(2n) {
    margin: 0 0 0 25px;
  }

  .services-foot-unit p {
    width: 100%;
    text-align: justify;
  }

  .management-area {
    width: 90%;
    margin: 90px auto 0;
    position: unset;
  }

  .management-area .title {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    margin: 0 0 30px;
  }

  .management-area img {
    width: 85%;
    display: block;
    margin: 0 auto;
  }

  .management-area-txt {
    position: unset;
    right: unset;
    top: unset;
    font-size: 16px;
    line-height: 2;
    text-align: center;
    margin: 5% 0 0 0;
  }

  .bold {
    font-size: 20px;
    font-weight: 500;
  }

  .free-plan {
    margin: 90px auto 0;
    padding: 30px 30px 50px;
  }

  .free-plan-title {
    text-align: center;
    font-size: 21px;
    font-weight: 500;
  }

  .red-square {
    background-color: #ba0822;
    padding: 5px;
    font-size: 36px;
    color: #fff;
  }

  .free {
    font-size: 72px;
    position: relative;
    top: 12px;
    color: #ba0822;
  }

  rt {
    font-size: 16px;
    font-weight: 600;
  }

  .plan {
    font-size: 36px;
    color: #ba0822;
    font-weight: 800;
  }

  .free-plan-txt {
    text-align: center;
    margin: 0 0 50px;
  }

  .free-plan-box {
    margin: 0 auto;
    width: 50%;
  }

  .free-plan-box .top {
    background-color: #005e8d;
    padding: 10px;
    color: #fff;
    font-size: 24px;
    text-align: center;
    font-weight: 500;
  }

  .free-plan-box .bottom {
    border: 4px solid #005e8d;
    padding: 20px 30px;
    background-color: #fff;
  }

  .free-plan-box .bottom img {
    margin: 0 auto;
    display: block;
  }

  .management-flow img {
    margin: 0 0 50px;
  }

  .free-plan table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 2px;
  }

  .free-plan th, .free-plan td {
    padding: 15px;
  }

  .free-plan th {
    background: #005e8d;
    color: #fff;
    font-weight: 400;
  }

  .free-plan td {
    background: #fff;
  }
}

@media (max-width: 767px) {
  h4 {
    width: 90%;
    margin: 3% auto 0;
    font-size: 4.3vw;
    font-weight: 500;
    letter-spacing: initial;
    line-height: 1.8;
    text-align: center;
  }

  #management {
    width: 100%;
  }

  .services {
    width: 90%;
    background: #f2f2f2;
    padding: 10% 5%;
    margin: 15% auto 0;
  }

  .services-head {
    background-color: #fff;
    padding: 10% 5%;
    margin: 0 0 10%;
  }

  .services-head-txt p {
    font-size: 12px;
  }

  h5 {
    font-size: 4.3vw;
    font-weight: 500;
    margin: 0 0 20px;
  }

  .illust {
    width: 80%;
  }

  .services-foot {
    overflow: hidden;
  }

  .services-foot-unit {
    float: left;
    width: 48%;
  }

  .services-foot-unit:nth-child(2n) {
    margin: 0 0 0 4%;
  }

  .services-foot-unit p {
    width: 100%;
    height: unset;
    line-height: 1.5;
    text-align: justify;
  }

  .services-foot-unit:nth-child(3) p, .services-foot-unit:nth-child(4) p {
    margin: 0;
  }

  .management-work, .management-area, .free-plan {
    width: 90%;
    margin: 15% auto 0;
    position: relative;
  }

  .management-area .title {
    text-align: center;
    font-size: 4.5vw;
    font-weight: 500;
    margin: 0 0 30px;
  }

  .management-area-txt {
    font-size: 12px;
    line-height: 2;
    margin: 10% 0 0 0;
  }

  .bold {
    font-size: 13px;
    font-weight: 500;
  }

  .free-plan {
    padding: 8% 5%;
  }

  .free-plan-title {
    text-align: center;
    font-size: 4vw;
    font-weight: 500;
    line-height: 1;
    margin: 0 0 9%;
  }

  .red-square {
    background-color: #ba0822;
    padding: 5px;
    margin: 0 1.5% 0 0;
    font-size: 7vw;
    color: #fff;
  }

  .free {
    font-size: 13.5vw;
    position: relative;
    top: 10px;
    color: #ba0822;
  }

  rt {
    font-size: 3vw;
    font-weight: 600;
    transform: translateX(-5px) translateY(7px);
    letter-spacing: -1.2em;
  }

  .plan {
    font-size: 7vw;
    color: #ba0822;
    font-weight: 800;
  }

  .free-plan-txt {
    text-align: center;
    margin: 0 0 9%;
  }

  .free-plan-box {
    margin: 0 auto;
    width: 100%;
  }

  .free-plan-box .top {
    background-color: #005e8d;
    padding: 10px;
    color: #fff;
    font-size: 15px;
    text-align: center;
    font-weight: 500;
  }

  .free-plan-box .bottom {
    border: 4px solid #005e8d;
    padding: 20px 30px;
    background-color: #fff;
  }

  .free-plan-box .bottom img {
    margin: 0 auto;
    display: block;
  }

  .management-flow img {
    margin: 0 0 50px;
  }

  .management-work table {
    width: 100%;
    border-collapse: separate;
    margin: 0 0 40px;
  }

  .management-work th, .management-work td {
    display: block;
    padding: 10px 15px;
  }

  .management-work th {
    display: block;
    margin-bottom: 4px;
  }
}