@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
.page-nav {
  background: #edf8f6;
  padding: 65px 0; }
  @media (max-width: 480px) {
    .page-nav {
      padding: 30px 10px; } }
  .page-nav .container {
    max-width: 1040px;
    margin: 0 auto; }
    .page-nav .container ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .page-nav .container ul li {
        width: calc(25% - 10px); }
        @media (max-width: 480px) {
          .page-nav .container ul li {
            width: 100%;
            margin-bottom: 10px; } }
        .page-nav .container ul li a {
          display: block;
          border: solid 1px #01ada1;
          color: #fff;
          background: #01ada1 url(../img/arrow4.png) no-repeat;
          background-size: 12px;
          background-position: center bottom 10px;
          height: 70px;
          line-height: 60px;
          text-decoration: none;
          -webkit-transition-property: all;
          transition-property: all;
          -webkit-transition: 0.3s linear;
          transition: 0.3s linear;
          text-align: center;
          letter-spacing: 0.5px;
          white-space: pre; }
          @media (max-width: 480px) {
            .page-nav .container ul li a {
              height: 50px;
              line-height: 50px;
              background: #01ada1 url(../img/arrow4.png) no-repeat;
              background-size: 12px;
              background-position: right 15px center; } }
          .page-nav .container ul li a:hover {
            background: #edf8f6 url(../img/arrow3.png) no-repeat;
            background-size: 12px;
            background-position: center bottom 10px;
            color: #01ada1; }
            @media (max-width: 480px) {
              .page-nav .container ul li a:hover {
                background: #01ada1 url(../img/arrow4.png) no-repeat;
                background-size: 12px;
                background-position: right 15px center;
                color: #fff; } }

.shadow-inner {
  background: #fff;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
  padding: 40px;
  margin: 20px 0 5px; }
  @media (max-width: 480px) {
    .shadow-inner {
      padding: 15px 20px 20px; } }
  .shadow-inner .head {
    font-weight: bold;
    color: #009999;
    font-size: 20px; }
    @media (max-width: 480px) {
      .shadow-inner .head {
        font-size: 1em; } }
  .shadow-inner ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .shadow-inner ul li:before {
      content: '●';
      color: #57c4a8;
      font-size: .8em;
      margin-right: 5px;
      position: relative;
      top: 4px; }

@media (max-width: 480px) {
  .service-img {
    width: 100%;
    height: 180px;
    -o-object-fit: cover;
       object-fit: cover; } }

.text-right {
  text-align: right; }

.before-after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 20px 0 140px; }
  @media (max-width: 480px) {
    .before-after {
      margin: 10px 0 80px; } }
  .before-after > div {
    width: calc(50% - 20px);
    position: relative; }
    @media (max-width: 480px) {
      .before-after > div {
        width: calc(50% - 5px); } }
    .before-after > div:after {
      content: 'before';
      display: block;
      background: #4d4d4d;
      color: #fff;
      text-align: center;
      padding: 5px 20px;
      position: absolute;
      left: 0;
      top: 0;
      min-width: 140px; }
      @media (max-width: 480px) {
        .before-after > div:after {
          min-width: 20px;
          font-size: .8em;
          line-height: 1;
          padding: 5px 15px; } }
    .before-after > div.after:after {
      content: 'after';
      background: #01ada1; }
  .before-after .arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 0 18px 18px;
    border-color: transparent transparent transparent #57c4a9; }
    @media (max-width: 480px) {
      .before-after .arrow {
        border-width: 10px 0 10px 10px;
        margin: 0 5px; } }
    .before-after .arrow:after {
      content: none; }

#service3 .before-after > div:after {
  content: none; }

#service4 .before-after {
  margin-bottom: 0; }
