@charset "UTF-8";

/*============================================================================================================
  base
  ============================================================================================================*/
  html {
    font-size: 62.5%;
  }

  body {
    color: #000;
    -webkit-text-size-adjust: 100%;
    line-height: 2;
    letter-spacing: 0.7px;
    font-size: 1.6rem;
    font-weight: 400;
  }

  div,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  ul,
  ol,
  li,
  dl,
  dt,
  dd,
  th,
  td,
  section,
  article,
  header,
  footer,
  main,
  nav,
  span,
  a {
    box-sizing: border-box;
  }

  a {
    color: inherit;
    text-decoration: none;
  }
  p> a:not([class]){
    color: #e06d74;
    font-weight: bold;
  }

  img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }

  iframe {
    max-width: 100%;
    max-height: 60vw;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: 1.5;
    font-weight: normal;
    margin: 0;
    word-wrap: break-word;
  }

  p,
  li,
  td,
  th,
  dt,
  dd {
    margin: 0;
    word-wrap: break-word;
    font-size: 1.8rem;
  }

  button {
    padding: 0;
    border: 0;
  }

  @media screen and (max-width: 767px) {

    p,
    li,
    td,
    th,
    dt,
    dd {
      font-size: 1.4rem;
    }
  }

  style {
    display: none;
  }

  table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
  }

  th,
  td {
    text-align: left;
    font-weight: normal;
    vertical-align: top;
  }

  ul,
  ol,
  dl {
    padding: 0;
    margin: 0;
  }

  li {
    list-style: none;
  }

  .cf:after {
    content: "";
    display: block;
    clear: both;
  }

  @media screen and (min-width: 768px) {
    .sp {
      display: none !important;
    }

    .only-sp {
      display: none !important;
    }
  }

  @media screen and (min-width: 768px) and (max-width: 1279px) {
    html {
      font-size: 0.78125vw;
      /* 1280pxのとき10pxの換算 */
    }
  }

  @media screen and (max-width: 767px) {
    .pc {
      display: none !important;
    }

    .only-pc {
      display: none !important;
    }
  }

/*============================================================================================================
  basic
  ============================================================================================================*/


/*------------------------------------------
  font
  ------------------------------------------*/
  body {
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  }

/*------------------------------------------
  frame
  ------------------------------------------*/
  main{
    overflow: hidden;
  }
  
  body.top {
    line-height: 1;
  }

  body.top main {
    margin-top: 12.5rem;
  }

  body.lower main {
    margin-top: 22.3rem;
  }
    @media screen and (max-width: 1600px) {
body.lower main {
    margin-top: 16.3rem;
  }
    }
  @media screen and (min-width: 768px) {
    body {
      min-width: 110.0rem;
    }
  }

  @media screen and (max-width: 767px) {
    body.top main {
      margin-top: 60px;
    }

    body.lower main {
      margin-top: 60px;
    }
  }

/*------------------------------------------
  hover
  ------------------------------------------*/
  @media screen and (min-width: 768px) {
    a {
      transition: all 0.3s ease-in-out;
    }

    a:hover {
      opacity: 0.7;
    }

    a[href^="tel:"] {
      pointer-events: none;
    }
  }

/*============================================================================================================
  parts
  ============================================================================================================*/

/*------------------------------------------
  .breadcrumbs
  ------------------------------------------*/
  .breadcrumbs {
    margin: 4.0rem auto 5.0rem;
    font-size: 1.2rem;
    padding: 0 1.0rem;
  }

  @media screen and (max-width: 767px) {
    .breadcrumbs {
      margin: 1.0rem auto 1.0rem;
      font-size: 1.0rem;
      white-space: nowrap;
      overflow: auto;
    }
  }

/*------------------------------------------
  imgBox
  ------------------------------------------*/
  .imgBox {
    position: relative;
    border-radius: 2rem;
    overflow: hidden;
  }
  .imgBox img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  @media screen and (max-width: 767px) {
    .imgBox {
      border-radius: 1rem;
    }
  }

/*============================================================================================================
  component
  ============================================================================================================*/
/*------------------------------------------
  inner
  ------------------------------------------*/
  .c-inner01,
  .c-inner02,
  .c-inner03 {
    width: 100%;
    margin: auto;
    padding-left: 8.0rem;
    padding-right: 8.0rem;
  }
  .c-inner01{
    max-width: 144.0rem;    
  }
  .c-inner02{
    max-width: 116.0rem;  
  }
  .c-inner03{
    max-width: 96.0rem;
  }

  @media screen and (max-width: 767px) {
    .c-inner01,
    .c-inner02,
    .c-inner03 {
      padding-left: 2rem;
      padding-right: 2rem;
    }
  }



/*------------------------------------------
title
------------------------------------------*/

.page__title {
  margin: 5rem auto;
  text-align: center;
}
.page__title h1 {
  font-size: 4.8rem;
  font-weight: bold;
  color: #008863;
}

@media screen and (max-width: 767px) {
  .page__title {
    margin: 3rem auto;
  }
  .page__title h1 {
    font-size: 2.8rem;
  }
}


.c-tit01 {
  margin: 5rem auto;
  text-align: center;
  font-size: 3.8rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .c-tit01 {
    margin: 3rem auto;
    font-size: 2.8rem;
  }
}


/*------------------------------------------
page-main-visual
------------------------------------------*/
.page__main-visual {
  position: relative;
  min-height: 500px;
  max-height: 700px;
  height: calc(100vh - 415px);
  margin-bottom: 10rem;
}
.page__main-visual__img-box {
  height: 100%;
}
.page__main-visual__img-box img {width: 100%;height: 100%;object-fit: cover;}

.page__main-visual__title-box {
  z-index: 9;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3rem;
  padding: 0;
  text-align: right;
  color: #008863;
  font-weight: 100;
  text-shadow: 0 0 3rem #fff;
}

.page__main-visual__title-box__inner {
  max-width: 1280px;    
  margin: auto;
}

.page__main-visual__title-box h1{
  color: #008863;
  font-weight: bold;
  font-size: 4.8rem;
  display: inline-block;
  width: auto;
  text-align: left;
}
.page__main-visual__title-box h1 small{
  font-size: 0.5em;
}

@media screen and (max-width: 767px) {
  .page__main-visual {
    position: relative;
    min-height: 0;
    max-height: initial;
    height: auto;
    margin-bottom: auto;
  }
  .page__main-visual__img-box {min-height: 250px;max-height: 500px;height: 100vw;}
  .page__main-visual__img-box img {width: 100%;height: 100%;object-fit: cover;}

  .page__main-visual__title-box {
    z-index: 9;
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    color: #008863;
    width: 90%;
    margin: -6rem auto 3rem;
    background: rgba(255,255,255,0.9);
    border-radius: 2rem;
    text-align: center;
  }

  .page__main-visual__title-box__inner {
    max-width: 1280px;    
    margin: auto;
  }

  .page__main-visual__title-box h1{
    color: #008863;
    font-weight: bold;
    font-size: 2.8rem;
    display: inline-block;
    width: auto;
    text-align: left;
  }
  .page__main-visual__title-box h1 small{
    font-size: 0.5em;
  }
}


/*------------------------------------------
btn
------------------------------------------*/


.c-btn01 {
  margin: 5rem auto;
  text-align: center;
  background: #111;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .c-btn01 {
    margin: 3rem auto;
    text-align: center;
  }
}


/*---------------------------------

layout

---------------------------------*/
/*
    header
    ---------------------------------*/
    .header {
      position: fixed;
      top: 0;
      left: 0;
      z-index: 300;
      width: 100%;
      height: 12.5rem;
      line-height: 1;
      background: #fff;
    }

    .header__inner__pc {
      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;
      width: 93%;
      max-width: 1560px;
      margin: 0 auto;
      padding: 2rem 0 2rem 2rem;
      background: #fff;
    }

    .header__inner__pc .header__logo__txt {
      font-size: 1.2rem;
      font-weight: 400;
      letter-spacing: 0.05em;
    }

    .header__inner__pc .header__logo__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-top: 1.5rem;
    }

    .header__inner__pc .header__logo__listItem {
      max-width: 20rem;
    }
    .header__inner__pc .header__logo__listItem:not(:first-child) {
      margin-left: 1.9rem;
    }
    .header__inner__pc .header__logo__listItem a {
      display: inline-block;
    }

    .header__inner__pc .header__enquiry {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      margin: -0.5rem -2rem 0 2rem;
    }

    .header__inner__pc .header__enquiry__tel {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-left: 4rem;
    }

    .header__inner__pc .header__enquiry__telItem:not(:first-child) {
      margin-left: 0.5rem;
    }
    .header__inner__pc .header__enquiry__telItem a {
      color: #008863;
      font-size: 1.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }

    .header__inner__pc .header__enquiry__link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      margin-top: 1.6rem;
    }

    .header__inner__pc .header__enquiry__linkItem:not(:first-child) {
      margin-left: 2rem;
    }
    .header__inner__pc .header__enquiry__linkItem a {
      display: inline-block;
      position: relative;
      padding-left: 2rem;
      font-size: 1.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }
    .header__inner__pc .header__enquiry__linkItem a::before {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 1.2rem;
      height: 1rem;
      background: url(../img/common/icon_arrow-green.svg) no-repeat center center/cover;
      -webkit-transition: -webkit-transform 0.3s;
      transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
      transition: transform 0.3s, -webkit-transform 0.3s;
      content: "";
    }

    .header__inner__pc .cmnBtnBox {
      margin-left: 2.7rem;
    }
    .header__inner__pc .cmnBtnBox:last-child {
      margin-left: 2rem;
    }
    .header__inner__pc .cmnBtnBox .cmnBtn {
      width: 24rem;
      padding: 1.1rem;
      font-size: 1.6rem;
    }
    .header__inner__pc .cmnBtnBox .cmnBtn span {
      display: inline-block;
      position: relative;
      padding-left: 2.5rem;
    }
    .header__inner__pc .cmnBtnBox .cmnBtn span::before {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      -webkit-transition: background 0.3s;
      transition: background 0.3s;
      content: "";
    }
    .header__inner__pc .cmnBtnBox.shiryo .cmnBtn span::before {
      width: 1.6rem;
      height: 2.1rem;
      background: url(../img/common/icon_document.svg) no-repeat center center/cover;
    }
    .header__inner__pc .cmnBtnBox.online .cmnBtn span::before {
      width: 2rem;
      height: 1.9rem;
      background: url(../img/common/icon_live-chat.svg) no-repeat center center/cover;
    }

    .header__inner__pc .header__btnBox {
      display: none;
    }

    @media (hover: hover) and (pointer: fine) {
      .header__inner__pc .header__enquiry__linkItem a:hover {
        opacity: 1;
        text-decoration: underline;
      }
      .header__inner__pc .header__enquiry__linkItem a:hover::before {
        -webkit-transform: translate(3px, -50%);
        transform: translate(3px, -50%);
      }

      .header__inner__pc .cmnBtnBox.shiryo .cmnBtn:hover span::before {
        background: url(../img/common/icon_document-green.svg) no-repeat center center/100%;
      }

      .header__inner__pc .cmnBtnBox.online .cmnBtn:hover span::before {
        background: url(../img/common/icon_live-chat-green.svg) no-repeat center center/100%;
      }

      .header__inner__cont .header__nav__listItem a:hover {
        opacity: 1;
        color: #008863;
      }

      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn:hover {
        color: #fff;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn:hover span::after {
        background: url(../img/common/icon_arrow-white.svg) no-repeat center center/100%;
        -webkit-transform: translate(3px, -50%);
        transform: translate(3px, -50%);
      }

      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.shiryo:hover span::before {
        background: url(../img/common/icon_document-green.svg) no-repeat center center/100%;
      }

      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.online:hover span::before {
        background: url(../img/common/icon_live-chat-green.svg) no-repeat center center/100%;
      }
    }
    @media screen and (max-width: 1550px) {
      .header__inner__pc {
        padding: 2rem 0 1rem;
      }
    }
    @media screen and (min-width: 1000px) {
      .header__inner__cont {
        display: none;
      }
    }
    @media screen and (max-width: 1000px) {
      .header__inner__pc .header__enquiry {
        display: none;
      }

      .header__inner__pc .header__btnBox {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin-left: 1.1rem;
      }

      .header__inner__pc .header__btn {
        width: 7rem;
        height: 7rem;
        background: #008863;
      }
      .header__inner__pc .header__btn:first-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
      }
      .header__inner__pc .header__btn:first-child img {
        width: 3rem;
      }
      .header__inner__pc .header__btn:last-child {
        display: inline-block;
        position: relative;
        margin-left: 0.5rem;
        cursor: pointer;
      }
      .header__inner__pc .header__btn:last-child span {
        display: inline-block;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 3.5rem;
        height: 3px;
        background: #fff;
      }
      .header__inner__pc .header__btn:last-child span:nth-child(1) {
        top: 1.7rem;
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;
      }
      .header__inner__pc .header__btn:last-child span:nth-child(2) {
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: opacity 0.5s;
        transition: opacity 0.5s;
      }
      .header__inner__pc .header__btn:last-child span:nth-child(3) {
        bottom: 1.7rem;
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;
      }

      .header.is-open .header__inner__pc .header__btn:last-child span {
        width: 3.8rem;
      }
      .header.is-open .header__inner__pc .header__btn:last-child span:nth-child(1) {
        -webkit-transform: translate(-50%, 1.6rem) rotate(225deg);
        transform: translate(-50%, 1.6rem) rotate(225deg);
      }
      .header.is-open .header__inner__pc .header__btn:last-child span:nth-child(2) {
        opacity: 0;
      }
      .header.is-open .header__inner__pc .header__btn:last-child span:nth-child(3) {
        -webkit-transform: translate(-50%, -1.6rem) rotate(-225deg);
        transform: translate(-50%, -1.6rem) rotate(-225deg);
      }

      .header__inner__cont {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: -1;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        padding: 2rem 4.5rem 5rem;
        background: #fff;
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;
      }

      .header.is-open .header__inner__cont {
        height: calc(100vh - 12rem);
        overflow-y: auto;
        -webkit-transform: translateY(11.9rem);
        transform: translateY(11.9rem);
      }

      .header__inner__cont .header__office__detailItem {
        padding: 3rem;
        border-radius: 2rem;
        background: #f5f9e5;
      }
      .header__inner__cont .header__office__detailItem:not(:first-child) {
        margin-top: 2rem;
      }

      .header__inner__cont .header__office__detailItem .officeName {
        color: #008863;
        font-size: 2.4rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        text-align: center;
      }

      .header__inner__cont .header__office__detailItem .cmnBtnBox {
        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-top: 2rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn {
        width: calc(50% - 1rem);
        height: 6rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child {
        padding: 0.7rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child span {
        display: inline-block;
        position: relative;
        padding-left: 3rem;
        font-family: "Arial", sans-serif;
        font-size: 2.8rem;
        letter-spacing: 0.05em;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child span::before {
        position: absolute;
        top: 50%;
        left: 0.7rem;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1.6rem;
        height: 1.6rem;
        background: url(../img/common/icon_tel-green.svg) no-repeat center center/cover;
        content: "";
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:last-child {
        padding: 1.4rem 1.5rem;
        font-size: 1.8rem;
        letter-spacing: 0.05em;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:last-child::after {
        right: 1.2rem;
      }

      .header__inner__cont .header__nav {
        margin-top: 2.5rem;
      }

      .header__inner__cont .header__nav__listItem:not(:first-child) {
        border-top: 2px dotted #bcbcbc;
      }
      .header__inner__cont .header__nav__listItem a {
        display: block;
        position: relative;
        padding: 1.6rem 0 1.6rem 3rem;
        font-size: 1.8rem;
        font-weight: 700;
        letter-spacing: 0.025em;
        line-height: 1.4;
        -webkit-transition: color 0.3s;
        transition: color 0.3s;
      }
      .header__inner__cont .header__nav__listItem a::before {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1.6rem;
        height: 1.2rem;
        background: url(../img/common/icon_leaf.svg) no-repeat center center/contain;
        content: "";
      }

      .header__inner__cont .header__enquiry {
        margin-top: 2.8rem;
      }

      .header__inner__cont .header__enquiry__link:first-child {
        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;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem {
        width: calc(50% - 1rem);
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn {
        display: block;
        padding: 1.4rem 4rem 1.4rem 0.5rem;
        border-width: 2px;
        color: #000;
        font-size: 1.8rem;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn span {
        display: inline-block;
        position: relative;
        padding-left: 4rem;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn span::after {
        position: absolute;
        top: 50%;
        left: 1.5rem;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1.7rem;
        height: 1.5rem;
        background: url(../img/common/icon_arrow-green.svg) no-repeat center center/contain;
        -webkit-transition: background 0.3s, -webkit-transform 0.3s;
        transition: background 0.3s, -webkit-transform 0.3s;
        transition: transform 0.3s, background 0.3s;
        transition: transform 0.3s, background 0.3s, -webkit-transform 0.3s;
        content: "";
      }
      .header__inner__cont .header__enquiry__link:last-child {
        margin-top: 3rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtnBox:not(:first-child) {
        margin-top: 1rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn {
        display: block;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn span {
        display: inline-block;
        position: relative;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn span::before {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        -webkit-transition: background 0.3s;
        transition: background 0.3s;
        content: "";
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.shiryo span {
        padding-left: 3.1rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.shiryo span::before {
        width: 1.8rem;
        height: 2.4rem;
        background: url(../img/common/icon_document.svg) no-repeat center center/cover;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.online span {
        padding-left: 3.9rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.online span::before {
        width: 2.4rem;
        height: 2.2rem;
        background: url(../img/common/icon_live-chat.svg) no-repeat center center/cover;
      }
    }
    @media screen and (max-width: 767px) {
      .header {
        height: 60px;
      }

      .header__inner__sp {
        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;
        height: inherit;
        padding: 0 1.5rem;
        background: #fff;
      }

      .header__inner__sp .header__logo {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 4rem;
      }

      .header__inner__sp .header__office {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        margin-left: 0.5rem;
      }
      .header__inner__sp .header__office a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 6.6rem;
        height: 4rem;
        border: 1px solid #007e69;
        color: #008863;
        font-size: 1rem;
        font-weight: 700;
        letter-spacing: 0.025em;
        line-height: 1.38;
        text-align: center;
      }
      .header__inner__sp .header__office a:not(:first-child) {
        margin-left: 0.3rem;
      }

      .header__inner__sp .header__btnBox {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin-left: 1.1rem;
      }

      .header__inner__sp .header__btn {
        width: 4rem;
        height: 4rem;
        background: #008863;
      }
      .header__inner__sp .header__btn:first-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
      }
      .header__inner__sp .header__btn:first-child img {
        width: 2rem;
      }
      .header__inner__sp .header__btn:last-child {
        display: inline-block;
        position: relative;
        margin-left: 0.5rem;
        cursor: pointer;
      }
      .header__inner__sp .header__btn:last-child span {
        display: inline-block;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 2rem;
        height: 2px;
        background: #fff;
      }
      .header__inner__sp .header__btn:last-child span:nth-child(1) {
        top: 1.1rem;
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;
      }
      .header__inner__sp .header__btn:last-child span:nth-child(2) {
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        -webkit-transition: opacity 0.5s;
        transition: opacity 0.5s;
      }
      .header__inner__sp .header__btn:last-child span:nth-child(3) {
        bottom: 1.1rem;
        -webkit-transition: -webkit-transform 0.5s;
        transition: -webkit-transform 0.5s;
        transition: transform 0.5s;
        transition: transform 0.5s, -webkit-transform 0.5s;
      }

      .header.is-open .header__inner__sp .header__btn:last-child span {
        width: 2.2rem;
      }
      .header.is-open .header__inner__sp .header__btn:last-child span:nth-child(1) {
        -webkit-transform: translate(-50%, 0.8rem) rotate(225deg);
        transform: translate(-50%, 0.8rem) rotate(225deg);
      }
      .header.is-open .header__inner__sp .header__btn:last-child span:nth-child(2) {
        opacity: 0;
      }
      .header.is-open .header__inner__sp .header__btn:last-child span:nth-child(3) {
        -webkit-transform: translate(-50%, -0.8rem) rotate(-225deg);
        transform: translate(-50%, -0.8rem) rotate(-225deg);
      }

      .header__inner__cont {
        padding: 1.6rem 3rem 5rem;
      }

      .header.is-open .header__inner__cont {
        height: calc(100vh - 60px);
        -webkit-transform: translateY(60px);
        transform: translateY(60px);
      }

      .header__inner__cont .header__office__detailItem {
        padding: 1.5rem;
        border-radius: 1rem;
      }
      .header__inner__cont .header__office__detailItem:not(:first-child) {
        margin-top: 1.3rem;
      }

      .header__inner__cont .header__office__detailItem .officeName {
        font-size: 1.6rem;
        letter-spacing: 0.025em;
      }

      .header__inner__cont .header__office__detailItem .cmnBtnBox {
        margin-top: 1rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn {
        width: calc(50% - 0.5rem);
        height: 4.5rem;
        white-space: nowrap;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child {
        padding: 1.1rem 0.3rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child span {
        padding-left: 1.3rem;
        font-size: 1.5rem;
        letter-spacing: 0;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:first-child span::before {
        left: 0;
        width: 0.8rem;
        height: 0.8rem;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:last-child {
        padding: 0.2rem 1.5rem;
        font-size: 1.4rem;
        line-height: 1.2;
      }
      .header__inner__cont .header__office__detailItem .cmnBtnBox .cmnBtn:last-child::after {
        right: 1.2rem;
      }

      .header__inner__cont .header__nav {
        margin-top: 1.2rem;
      }

      .header__inner__cont .header__nav__listItem a {
        padding: 1.4rem 0 1.4rem 3rem;
        font-size: 1.4rem;
        letter-spacing: 0.025em;
      }
      .header__inner__cont .header__nav__listItem a::before {
        width: 1.4rem;
        height: 1rem;
      }

      .header__inner__cont .header__enquiry {
        margin-top: 2.8rem;
      }

      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem {
        width: calc(50% - 0.5rem);
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn {
        padding: 0.8rem 2rem 0.8rem 0.5rem;
        border-width: 1px;
        font-size: 1.2rem;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn span {
        padding-left: 2.8rem;
      }
      .header__inner__cont .header__enquiry__link:first-child .header__enquiry__linkItem .cmnBtn span::after {
        left: 1.5rem;
        width: 0.8rem;
        height: 0.7rem;
      }
      .header__inner__cont .header__enquiry__link:last-child {
        margin-top: 3rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtnBox:not(:first-child) {
        margin-top: 1rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.shiryo span {
        padding-left: 2.1rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.shiryo span::before {
        width: 1.4rem;
        height: 1.9rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.online span {
        padding-left: 2.9rem;
      }
      .header__inner__cont .header__enquiry__link:last-child .cmnBtn.online span::before {
        width: 1.9rem;
        height: 1.8rem;
      }
    }
    @media screen and (max-width: 370px) {
      .header__inner__sp .header__office a {
        width: 6rem;
        font-size: 0.9rem;
      }
    }

/*
    globalMenu
    ---------------------------------*/

    body.lower .globalMenu {
      position: fixed;
      top: 12.5rem;
      left: 0;
      z-index: 10;
      width: 100%;
      background: #fff;
    }

    @media screen and (max-width: 1600px) {
      body.lower .globalMenu {
        position: relative;
      }
    }

    .globalMenu__nav__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      padding-bottom: 2rem;
    }

    .globalMenu__nav__listItem {
      width: 12.5%;
      border-left: 2px dotted #bbb;
    }
    .globalMenu__nav__listItem:last-child {
      border-right: 2px dotted #bbb;
    }
    .globalMenu__nav__listItem a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      position: relative;
      height: 7.8rem;
      padding: 0 0.5rem 2rem;
      font-size: 1.5rem;
      font-weight: 700;
      letter-spacing: 0.03em;
      line-height: 1.3333333333;
      text-align: center;
      -webkit-transition: color 0.3s;
      transition: color 0.3s;
      white-space: nowrap;
    }
    .globalMenu__nav__listItem a::before {
      position: absolute;
      bottom: 0.4rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 2.2rem;
      height: 1.4rem;
      background: url(../img/common/icon_leaf.svg) no-repeat center center/contain;
      content: "";
    }

    /* ホバーメニュー */
    :root{
      scroll-padding: 223px;
      scroll-behavior: smooth;
    }
    .hover_menu{
      position: relative;
    }

    .hover_menu_content {
      opacity: 0;
      overflow: hidden;
      position: absolute;
      margin: auto;
      left: 0;
      right: 0;
      top: 59px;
      display: flex;
      flex-direction: column;
      z-index: 10;
      background: #fff;
      border: 2px solid #008863;
      transition: 0.2s;
      padding: 0;
      border-radius: 10px;
      width: fit-content;
      padding: 20px;
      white-space: nowrap;
      pointer-events: none;
  }

  .hover_menu:hover .hover_menu_content{
      opacity: 1;
      pointer-events: initial;
  }
  .hover_menu > a{
      transition: 0.2s;   
      z-index: 10;
  }
  .hover_menu:hover > a {
      opacity: 1;
      color: #008863;
  }

  .hover_menu_content li a {
      width: 100%;
      text-align: left;
      padding: 15px 15px 15px 34px;
      border-bottom: 1px dashed #008863;
      line-height: 1;
      justify-content: flex-start;
  }
  .hover_menu_content li:last-child a{
      border-bottom: none;    
  }
  .hover_menu_content li {
      width: 100%;
  }

  .hover_menu_content li a::before {
      content: "";
      position: absolute;
      border: solid transparent;
      border-width: 8px 12px;
      border-left-color: #008863;
      left: 14px;
      top: 50%;
      margin: auto;
      transform: translateY(-50%);
      background: none;
      height: initial;
      bottom: initial;
  }


    @media (hover: hover) and (pointer: fine) {
      .globalMenu__nav__listItem a:hover {
        opacity: 1;
        color: #008863;
      }
    }
    @media screen and (max-width: 1450px) {
      .globalMenu__nav__listItem a {
        font-size: 1.5rem;
        letter-spacing: 0.03em;
        white-space: nowrap;
      }
    }
    @media screen and (max-width: 1350px) {
      .globalMenu__nav__listItem a {
        padding: 0 0.5rem 2rem;
      }
    }

/*
    footer
    ---------------------------------*/
    .footer {
      padding: 11.5rem 0 6.2rem;
      background: #008863;
      line-height: 1;
    }

    .footer__linkBox {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
    }

    .footer__nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
    }

    .footer__nav__list:not(:first-child) {
      margin-left: 8rem;
    }

    .footer__nav__listItem:not(:first-child) {
      margin-top: 2.8rem;
    }
    .footer__nav__listItem a {
      display: inline-block;
      position: relative;
      padding-left: 2rem;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }
    .footer__nav__listItem a::before {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 1.3rem;
      height: 1rem;
      background: url(../img/common/icon_arrow-lightgreen.svg) no-repeat center center/cover;
      -webkit-transition: -webkit-transform 0.3s;
      transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
      transition: transform 0.3s, -webkit-transform 0.3s;
      content: "";
    }

    .footer__banner {
      max-width: 32rem;
    }

    .footer__banner__txt {
      color: #fff;
      font-size: 1.6rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }

    .footer__banner__list {
      margin-top: 2.4rem;
    }

    .footer__banner__listItem {
      position: relative;
      z-index: 1;
      border-radius: 1rem;
      overflow: hidden;
    }
    .footer__banner__listItem:not(:first-child) {
      margin-top: 2rem;
    }
    .footer__banner__listItem a {
      display: inline-block;
    }

    .footer__enquiry {
      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-top: 8rem;
    }

    .footer__enquiry__item {
      width: 32%;
      max-width: 400px;
    }
    .footer__enquiry__item .cmnBtn {
      display: block;
      padding: 2rem 3rem;
      border-color: #fff;
      border-radius: 4rem;
      background: #fff;
      font-size: 2.4rem;
    }
    .footer__enquiry__item .cmnBtn span {
      display: inline-block;
      position: relative;
      padding-left: 4rem;
    }
    .footer__enquiry__item .cmnBtn span::before {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      -webkit-transition: background 0.3s;
      transition: background 0.3s;
      content: "";
    }
    .footer__enquiry__item.shiryo .cmnBtn {
      color: #008863;
    }
    .footer__enquiry__item.shiryo .cmnBtn span::before {
      width: 2rem;
      height: 2.8rem;
      background: url(../img/common/icon_document-green.svg) no-repeat center center/cover;
    }
    .footer__enquiry__item.shiryo .cmnBtn--arrow::after {
      background: url(../img/common/icon_arrow-green.svg) no-repeat center center/cover;
    }
    .footer__enquiry__item.kengaku .cmnBtn {
      color: #9ec200;
    }
    .footer__enquiry__item.kengaku .cmnBtn span::before {
      width: 3rem;
      height: 3rem;
      background: url(../img/common/icon_interview-lightgreen.svg) no-repeat center center/cover;
    }
    .footer__enquiry__item.kengaku .cmnBtn--arrow::after {
      background: url(../img/common/icon_arrow-lightgreen.svg) no-repeat center center/cover;
    }
    .footer__enquiry__item.online .cmnBtn {
      color: #e06d74;
    }
    .footer__enquiry__item.online .cmnBtn span::before {
      width: 3.4rem;
      height: 3rem;
      background: url(../img/common/icon_live-chat-pink.svg) no-repeat center center/cover;
    }
    .footer__enquiry__item.online .cmnBtn--arrow::after {
      background: url(../img/common/icon_arrow-pink.svg) no-repeat center center/cover;
    }

    .footer__bottom {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 8rem;
    }

    .footer__logo a {
      display: inline-block;
    }
    .footer__logo a img {
      max-width: 28rem;
    }

    .footer__logo__txt {
      margin-top: 2rem;
      color: #fff;
      font-size: 1.2rem;
      letter-spacing: 0.05em;
      white-space: nowrap;
    }

    .footer__copy {
      color: #fff;
    }
    .footer__copy small {
      font-size: 1.4rem;
      letter-spacing: 0.05em;
    }

    @media (hover: hover) and (pointer: fine) {
      .footer__nav__listItem a:hover {
        opacity: 1;
        text-decoration: underline;
      }
      .footer__nav__listItem a:hover::before {
        -webkit-transform: translate(3px, -50%);
        transform: translate(3px, -50%);
      }

      .footer__enquiry__item .cmnBtn:hover {
        border-color: #fff;
        color: #fff;
      }

      .footer__enquiry__item.shiryo .cmnBtn:hover {
        background: #008863;
      }
      .footer__enquiry__item.shiryo .cmnBtn:hover span::before {
        background: url(../img/common/icon_document.svg) no-repeat center center/100%;
      }

      .footer__enquiry__item.kengaku .cmnBtn:hover {
        background: #9ec200;
      }
      .footer__enquiry__item.kengaku .cmnBtn:hover span::before {
        background: url(../img/common/icon_interview.svg) no-repeat center center/100%;
      }

      .footer__enquiry__item.online .cmnBtn:hover {
        background: #e06d74;
      }
      .footer__enquiry__item.online .cmnBtn:hover span::before {
        background: url(../img/common/icon_live-chat.svg) no-repeat center center/100%;
      }

      .footer__enquiry__item.shiryo .cmnBtn--arrow:hover::after,
      .footer__enquiry__item.kengaku .cmnBtn--arrow:hover::after,
      .footer__enquiry__item.online .cmnBtn--arrow:hover::after {
        background: url(../img/common/icon_arrow-white.svg) no-repeat center center/100%;
      }
    }
    @media screen and (max-width: 1400px) {
      .footer__nav__list:not(:first-child) {
        margin-left: 5rem;
      }

      .footer__banner {
        max-width: 30rem;
      }
    }
    @media screen and (max-width: 767px) {
      .footer {
        margin-bottom: 50px;
        padding: 5rem 0 3.2rem;
      }

      .footer__linkBox {
        display: block;
      }

      .footer__nav {
        display: block;
      }

      .footer__nav__list:not(:first-child) {
        margin-top: 1.3rem;
        margin-left: 0;
      }

      .footer__nav__listItem:not(:first-child) {
        margin-top: 1.8rem;
      }

      .footer__nav__listItem a {
        padding-left: 1.6rem;
        font-size: 1.2rem;
        letter-spacing: 0.025em;
      }
      .footer__nav__listItem a::before {
        width: 0.8rem;
        height: 0.7rem;
      }

      .footer__banner {
        max-width: 100%;
        margin-top: 4.6rem;
      }

      .footer__banner__txt {
        font-size: 1.2rem;
        letter-spacing: 0.025em;
      }

      .footer__banner__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 1.5rem;
      }

      .footer__banner__listItem {
        width: calc(50% - 0.75rem);
        border-radius: 0.8rem;
      }
      .footer__banner__listItem:not(:first-child) {
        margin-top: 0;
      }
      .footer__banner__listItem:nth-child(even) {
        margin-left: 1.5rem;
      }
      .footer__banner__listItem:nth-child(n+3) {
        margin-top: 1.5rem;
      }
      .footer__banner__listItem a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        position: relative;
        width: 100%;
        min-height: 5.5rem;
        background: #fff;
      }

      .footer__enquiry {
        display: block;
        margin-top: 5rem;
      }

      .footer__enquiry__item {
        width: calc(100% - 6rem);
        margin: 0 auto;
      }
      .footer__enquiry__item:not(:first-child) {
        margin-top: 1.3rem;
      }
      .footer__enquiry__item .cmnBtn {
        padding: 1.2rem 3rem;
        font-size: 1.4rem;
        letter-spacing: 0.025em;
      }
      .footer__enquiry__item .cmnBtn span {
        padding-left: 2.4rem;
      }
      .footer__enquiry__item.shiryo .cmnBtn span::before {
        width: 1.3rem;
        height: 1.8rem;
      }
      .footer__enquiry__item.kengaku .cmnBtn span::before {
        width: 1.8rem;
        height: 1.8rem;
      }
      .footer__enquiry__item.online .cmnBtn span::before {
        width: 1.9rem;
        height: 1.7rem;
      }

      .footer__bottom {
        display: block;
        margin-top: 5rem;
        text-align: center;
      }

      .footer__logo a img {
        max-width: 190px;
      }

      .footer__logo__txt {
        margin-top: 1.4rem;
        font-size: 1.1rem;
        letter-spacing: 0.025em;
      }

      .footer__copy {
        margin-top: 2.3rem;
      }
      .footer__copy small {
        font-size: 0.9rem;
        letter-spacing: 0.025em;
      }
    }

/*
    floatMenu
    ---------------------------------*/
    .floatMenu {
      display: none;
      position: fixed;
      top: 22rem;
      left: calc(100% - 8rem + 1px);
      /* right:0だとSafariでスクロールバー分ずれが生じるため、このように設定（1pxは隙間が出ないための微調整分） */
      z-index: 100;
      line-height: 1;
    }

    .floatMenu__listItem:not(:first-child) {
      margin-top: 1rem;
    }
    .floatMenu__listItem a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      position: relative;
      padding: 5.9rem 2.7rem 2.6rem;
      border-radius: 2rem 0 0 2rem;
      color: #fff;
      font-size: 1.8rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      -webkit-transition: background 0.3s, color 0.3s;
      transition: background 0.3s, color 0.3s;
    }
    .floatMenu__listItem a::before {
      position: absolute;
      top: 2.7rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      -webkit-transition: background 0.3s;
      transition: background 0.3s;
      content: "";
    }
    .floatMenu__listItem.shiryo a {
      border: 0.4rem solid #9ec200;
      background: #9ec200;
    }
    .floatMenu__listItem.shiryo a::before {
      width: 1.8rem;
      height: 2.4rem;
      background: url(../img/common/icon_document.svg) no-repeat center center/100%;
    }
    .floatMenu__listItem.online a {
      border: 0.4rem solid #e06d74;
      background: #e06d74;
    }
    .floatMenu__listItem.online a::before {
      width: 2.4rem;
      height: 2.2rem;
      background: url(../img/common/icon_live-chat.svg) no-repeat center center/100%;
    }

    @media (hover: hover) and (pointer: fine) {
      .floatMenu__listItem a:hover {
        opacity: 1;
      }

      .floatMenu__listItem.shiryo a:hover {
        border-color: #9ec200;
        background: #fff;
        color: #9ec200;
      }
      .floatMenu__listItem.shiryo a:hover::before {
        background: url(../img/common/icon_document-lightgreen.svg) no-repeat center center/100%;
      }

      .floatMenu__listItem.online a:hover {
        border-color: #e06d74;
        background: #fff;
        color: #e06d74;
      }
      .floatMenu__listItem.online a:hover::before {
        background: url(../img/common/icon_live-chat-pink.svg) no-repeat center center/cover;
      }
    }
    @media screen and (max-width: 767px) {
      .floatMenu {
        top: unset;
        right: unset;
        left: 0;
        bottom: 0;
        width: 100%;
      }

      .floatMenu__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
      }

      .floatMenu__listItem {
        width: 50%;
      }
      .floatMenu__listItem:not(:first-child) {
        margin-top: 0;
      }
      .floatMenu__listItem a {
        padding: 1.4rem 1rem;
        border-radius: 0;
        font-size: 1.5rem;
        letter-spacing: 0.05em;
        -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
        writing-mode: unset;
      }
      .floatMenu__listItem a::before {
        content: none;
      }
    }

/*
    container
    ---------------------------------*/
    .container {
      width: calc(100% - 16rem);
      max-width: 1280px;
      margin: 0 auto;
    }

    .container--large {
      max-width: 1520px;
    }

    .container--header {
      width: calc(100% - 4rem);
    }

    @media screen and (max-width: 767px) {
      .container {
        width: 100%;
        padding: 0 2rem;
      }

      .container--large {
        padding: 0 1.5rem;
      }
    }

/*---------------------------------

component

---------------------------------*/
/*
    cmnTtl
    ---------------------------------*/
    .cmnTtl {
      position: relative;
      padding-top: 5.5rem;
      font-size: 4.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 1.3636363636;
    }
    .cmnTtl::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 5.5rem;
      height: 3.8rem;
      background: url(../img/common/icon_leaf2.svg) no-repeat center center/contain;
      content: "";
    }
    .cmnTtl span {
      font-size: 2.8rem;
    }

    @media screen and (max-width: 767px) {
      .cmnTtl {
        padding-top: 2.9rem;
        font-size: 2.4rem;
        letter-spacing: 0.025em;
        line-height: 1.4166666667;
      }
      .cmnTtl::before {
        width: 3.2rem;
        height: 2rem;
      }
      .cmnTtl span {
        font-size: 1.5rem;
      }
    }
/*
    cmnTtl--center
    ---------------------------------*/
    .cmnTtl--center {
      text-align: center;
    }
    .cmnTtl--center::before {
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
    }

/*
    cmnTxt
    ---------------------------------*/
    .cmnTxt {
      font-size: 1.8rem;
      letter-spacing: 0.05em;
      line-height: 2;
    }

    @media screen and (max-width: 767px) {
      .cmnTxt {
        font-size: 1.4rem;
        letter-spacing: 0.025em;
      }
    }
/*  
    cmnBtn
    ---------------------------------*/
    .cmnBtn {
      display: inline-block;
      padding: 2rem 4rem;
      border: 0.4rem solid #008863;
      border-radius: 3.5rem;
      background: #008863;
      color: #fff;
      font-size: 1.8rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 1.3333333;
      text-align: center;
      -webkit-transition: background 0.3s, color 0.3s;
      transition: background 0.3s, color 0.3s;
    }

    @media (hover: hover) and (pointer: fine) {
      .cmnBtn:hover {
        opacity: 1;
        background: #fff;
        color: #008863;
      }
    }
    @media screen and (max-width: 767px) {
      .cmnBtn {
        padding: 1.3rem;
        border-width: 2px;
        border-radius: 2.3rem;
        font-size: 1.2rem;
        letter-spacing: 0.025em;
        line-height: 1.6;
      }
    }
/*  
    cmnBtn--border
    ---------------------------------*/
    .cmnBtn--border {
      padding: 3rem 7.4rem;
      border-radius: 5rem;
      background: #fff;
      color: #008863;
      font-size: 2.4rem;
      -webkit-transition: background 0.3s, color 0.3s;
      transition: background 0.3s, color 0.3s;
    }

    @media (hover: hover) and (pointer: fine) {
      .cmnBtn--border:hover {
        background: #008863;
        color: #fff;
      }
    }
    @media screen and (max-width: 767px) {
      .cmnBtn--border {
        width: 100%;
        padding: 1.4rem;
        font-size: 1.4rem;
      }
    }
/*  
    cmnBtn--arrow
    ---------------------------------*/
    .cmnBtn--arrow {
      position: relative;
    }
    .cmnBtn--arrow::after {
      position: absolute;
      top: 50%;
      right: 1.7rem;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 1.7rem;
      height: 1.5rem;
      background: url(../img/common/icon_arrow-white.svg) no-repeat center center/cover;
      -webkit-transition: background 0.3s, -webkit-transform 0.3s;
      transition: background 0.3s, -webkit-transform 0.3s;
      transition: transform 0.3s, background 0.3s;
      transition: transform 0.3s, background 0.3s, -webkit-transform 0.3s;
      content: "";
    }

    .cmnBtn--arrow.cmnBtn--border::after {
      width: 2.4rem;
      height: 2.2rem;
      background: url(../img/common/icon_arrow-green.svg) no-repeat center center/cover;
      -webkit-transition: background 0.3s, -webkit-transform 0.3s;
      transition: background 0.3s, -webkit-transform 0.3s;
      transition: transform 0.3s, background 0.3s;
      transition: transform 0.3s, background 0.3s, -webkit-transform 0.3s;
    }

    @media (hover: hover) and (pointer: fine) {
      .cmnBtn--arrow:hover::after {
        -webkit-transform: translate(5px, -50%);
        transform: translate(5px, -50%);
        background: url(../img/common/icon_arrow-green.svg) no-repeat center center/100%;
      }

      .cmnBtn--arrow.cmnBtn--border:hover::after {
        -webkit-transform: translate(5px, -50%);
        transform: translate(5px, -50%);
        background: url(../img/common/icon_arrow-white.svg) no-repeat center center/100%;
      }
    }
    @media screen and (max-width: 767px) {
      .cmnBtn--arrow::after {
        width: 1rem;
        height: 0.8rem;
      }

      .cmnBtn--arrow.cmnBtn--border::after {
        right: 1.5rem;
        width: 1.2rem;
        height: 1rem;
      }
    }
/*  
    cmnCat
    ---------------------------------*/
    .cmnCat {
      display: inline-block;
      padding: 0.5rem 1.4rem;
      border: 1px solid #008863;
      border-radius: 1.2rem;
      color: #008863;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      -webkit-transition: background 0.3s, color 0.3s;
      transition: background 0.3s, color 0.3s;
    }

    @media (hover: hover) and (pointer: fine) {
      .cmnCat:hover {
        opacity: 1;
        background: #008863;
        color: #fff;
      }
    }
    @media screen and (max-width: 767px) {
      .cmnCat {
        padding: 0.5rem 0.7rem;
        font-size: 1.1rem;
        letter-spacing: 0.025em;
      }
    }
/*  
    cmnLabel
    ---------------------------------*/
    .cmnLabel {
      display: inline-block;
      padding: 1.4rem 2rem;
      border-radius: 0 2rem 0 2rem;
      background: #fff;
      color: #008863;
      font-size: 1.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      -webkit-transition: background 0.3s, color 0.3s;
      transition: background 0.3s, color 0.3s;
    }

    @media (hover: hover) and (pointer: fine) {
      .cmnLabel:hover {
        opacity: 1;
        background: #008863;
        color: #fff;
      }
    }
    @media screen and (max-width: 767px) {
      .cmnLabel {
        padding: 0.7rem 1rem;
        border-radius: 0 1rem 0 1rem;
        font-size: 1.1rem;
        letter-spacing: 0.025em;
      }
    }

/*---------------------------------

project

---------------------------------*/

/*
    office
    ---------------------------------*/
    .office {
      position: relative;
      padding: 8.3rem 0 11.6rem;
      background: #f2f1ec;
      line-height: 1;
    }
    .office.office--lower{
      margin-top: 20rem;
    }
    .office::before {
      position: absolute;
      bottom: calc(100% - 1px);
      /* 隙間ができないように調整 */
      left: 0;
      width: 100%;
      height: 6rem;
      background: url(../img/top/nami-gray-top_pc.svg) no-repeat bottom center/100%;
      content: "";
    }
    .office::after {
      position: absolute;
      top: calc(100% - 1px);
      /* 隙間ができないように調整 */
      left: 0;
      width: 100%;
      height: 6rem;
      background: url(../img/top/nami-gray-bottom_pc.svg) no-repeat top center/100%;
      content: "";
    }

    .office__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 5.4rem;
    }

    .office__listItem {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      position: relative;
      width: 32%;
      max-width: 480px;
    }
    .office__listItem .imgBox {
      padding-top: 70.8333333333%;
      border-radius: 2rem 2rem 0 0;
    }
    .office__listItem .txtBox {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      padding: 4rem 4rem 7.4rem;
      background: #fff;
      border-radius: 0 0 2rem 2rem;
    }

    .office__listItem__name {
      color: #008863;
      font-size: 3rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      text-align: center;
    }

    .office__listItem dl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      border-top: 1px dashed #000;
    }
    .office__listItem dl:first-of-type {
      margin-top: 4rem;
    }
    .office__listItem dl:last-child {
      border-bottom: 1px dashed #000;
    }
    .office__listItem dl dt, .office__listItem dl dd {
      padding: 1.4rem 0;
      letter-spacing: 0.05em;
      line-height: 1.5555555556;
    }
    .office__listItem dl dt {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      width: 10rem;
      font-weight: 700;
    }
    .office__listItem dl dd {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
    }

    .office__listItem.fushimi dl:last-child dd span {
      letter-spacing: -0.03em;
    }

    .office__listItem .cmnBtn {
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 50%);
      transform: translate(-50%, 50%);
      width: 90%;
      max-width: 400px;
      padding: 2rem 3.4rem;
    }
    .office__listItem .cmnBtn span {
      display: inline-block;
    }

    .office__deco::before {
      position: absolute;
      top: -51rem;
      left: 9rem;
      width: 43rem;
      height: 55.6rem;
      background: url(../img/top/img_tree2.png) no-repeat bottom center/contain;
      content: "";
    }
    .office__deco.office__deco--lower::before{
      display: none;
    }
    .office__deco::after {
      position: absolute;
      bottom: -10rem;
      right: 18.8rem;
      width: 33.6rem;
      height: 13.4rem;
      background: url(../img/top/img_ten3.png) no-repeat center center/contain;
      content: "";
    }

    @media screen and (min-width: 1680px) {
      .office::before,
      .office::after {
        height: 3.57vw;
      }
    }
    @media screen and (max-width: 1500px) {
      .office__deco::before {
        left: -50px;
      }
    }
    @media screen and (max-width: 1423px) {
      .office__listItem .cmnBtn {
        border-radius: 5.5rem;
      }
    }
    @media screen and (max-width: 767px) {
      .office {
        padding: 5rem 0 7rem;
      }
      .office.office--lower{
        margin-top: 5rem;
      }
      .office::before {
        height: 4rem;
        background: url(../img/top/nami-gray-top_sp.svg) no-repeat bottom center/100%;
      }
      .office::after {
        height: 4rem;
        background: url(../img/top/nami-gray-bottom_sp.svg) no-repeat top center/100%;
      }

      .office__list {
        display: block;
        padding: 0 1.5rem;
        margin-top: 2.4rem;
      }

      .office__listItem {
        width: 100%;
        max-width: 100%;
      }
      .office__listItem:not(:first-child) {
        margin-top: 5.3rem;
      }
      .office__listItem .imgBox {
        border-radius: 1.5rem 1.5rem 0 0;
      }
      .office__listItem .txtBox {
        padding: 1.5rem 3rem 4rem;
      }

      .office__listItem__name {
        font-size: 1.8rem;
        letter-spacing: 0.025em;
      }

      .office__listItem dl {
        display: block;
        padding: 1.2rem 0;
      }
      .office__listItem dl:first-of-type {
        margin-top: 1.5rem;
      }
      .office__listItem dl:not(:first-of-type) {
        padding: 1.6rem 0;
      }
      .office__listItem dl dt, .office__listItem dl dd {
        padding: 0;
        font-size: 1.4rem;
        line-height: 1.2857142857;
      }
      .office__listItem dl dd {
        margin-top: 0.5rem;
      }

      .office__listItem .cmnBtn {
        width: 80%;
        padding: 1.3rem;
        border-radius: 2.3rem;
      }
      .office__listItem .cmnBtn span {
        display: inline;
      }

      .office__deco::before {
        top: -1.4rem;
        left: -0.4rem;
        width: 11.7rem;
        height: 15.1rem;
      }

      .office__deco::after {
        content: none;
      }
    }
/*
    flow
    ---------------------------------*/
    .flow {
      padding: 16rem 0 18rem;
      line-height: 1;
    }

    .flow__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 5rem;
      counter-reset: number;
    }

    .flow__listItem {
      width: 17%;
      max-width: 256px;
    }
    .flow__listItem:nth-child(even) {
      padding-top: 4rem;
    }
    .flow__listItem .imgBox::before {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 1;
      width: 6rem;
      height: 6rem;
      border-radius: 50%;
      background: #e06d74;
      color: #fff;
      font-family: "Arial", sans-serif;
      font-size: 3rem;
      counter-increment: number;
      content: "0" counter(number);
    }
    .flow__listItem .imgBox .imgBox__img {
      position: relative;
      padding-top: 100%;
      border-radius: 50%;
      overflow: hidden;
    }
    .flow__listItem .txtBox {
      margin-top: 3.4rem;
    }

    .flow__listItem:nth-child(2) .imgBox .imgBox__img img {
      -webkit-transform-origin: 117% 16%;
      transform-origin: 117% 16%;
      -webkit-transform: scale(1.5);
      transform: scale(1.5);
    }

    .flow__listItem:nth-child(3) .imgBox .imgBox__img img {
      -webkit-transform-origin: 21% 43%;
      transform-origin: 21% 43%;
      -webkit-transform: scale(1.2);
      transform: scale(1.2);
    }

    .flow__listItem:nth-child(4) .imgBox .imgBox__img img {
      -webkit-transform-origin: 86% 47%;
      transform-origin: 86% 47%;
      -webkit-transform: scale(1.2);
      transform: scale(1.2);
    }

    .flow__listItem:nth-child(5) .imgBox .imgBox__img img {
      -webkit-transform-origin: 72% 78%;
      transform-origin: 72% 78%;
      -webkit-transform: scale(1.7);
      transform: scale(1.7);
    }

    .flow__listItem__ttl {
      color: #e06d74;
      font-size: 3rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }
    .flow__listItem__ttl + .cmnTxt {
      margin-top: 3.4rem;
      line-height: 1.7;
    }

    @media screen and (max-width: 767px) {
      .flow {
        padding: 8rem 0 8.2rem;
      }
      .flow .cmnTtl {
        text-align: center;
      }
      .flow .cmnTtl::before {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
      }

      .flow__list {
        display: block;
        margin-top: 3rem;
        padding: 0 1.5rem;
      }

      .flow__listItem {
        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;
        width: 100%;
        max-width: 100%;
      }
      .flow__listItem:not(:first-child) {
        margin-top: 2rem;
      }
      .flow__listItem:nth-child(even) {
        padding-top: 0;
      }
      .flow__listItem .imgBox {
        width: 36.5%;
      }
      .flow__listItem .imgBox::before {
        width: 3.5rem;
        height: 3.5rem;
        font-size: 1.8rem;
      }
      .flow__listItem .imgBox .imgBox__img {
        padding-top: 100%;
      }
      .flow__listItem .txtBox {
        width: 58.7%;
        margin-top: 0;
      }

      .flow__listItem__ttl {
        font-size: 1.8rem;
      }
      .flow__listItem__ttl + .cmnTxt {
        margin-top: 1.4rem;
        line-height: 1.6;
      }
    }
/*
    enquiry
    ---------------------------------*/
    .enquiry {
      position: relative;
      padding: 7.5rem 0 16.3rem;
      background: #f2f1ec;
      line-height: 1;
      text-align: center;
    }
    .enquiry::before {
      position: absolute;
      bottom: calc(100% - 1px);
      /* 隙間ができないように調整 */
      left: 0;
      width: 100%;
      height: 6rem;
      background: url(../img/top/nami-gray-top_pc.svg) no-repeat bottom center/100%;
      content: "";
    }

    .enquiry__ttl {
      font-size: 4.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }

    .enquiry__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 6rem;
    }

    .enquiry__listItem {
      position: relative;
      width: 32%;
      max-width: 400px;
      padding: 11.8rem 2rem 6.2rem;
      border-radius: 2rem;
      background: #fff;
    }
    .enquiry__listItem::before {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: calc(100% - 1.6rem);
      height: calc(100% - 1.6rem);
      border-radius: 1.5rem;
      content: "";
    }
    .enquiry__listItem.shiryo::before {
      border: 2px solid #008863;
    }
    .enquiry__listItem.kengaku::before {
      border: 2px solid #9ec200;
    }
    .enquiry__listItem.online::before {
      border: 2px solid #e06d74;
    }

    .enquiry__listItem__txt {
      position: relative;
      font-size: 2.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 1.5;
    }
    .enquiry__listItem__txt::before {
      position: absolute;
      top: -7rem;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      content: "";
    }

    .enquiry__listItem.shiryo .enquiry__listItem__txt::before {
      width: 4.5rem;
      height: 6rem;
      background: url(../img/common/icon_document-green.svg) no-repeat center center/cover;
    }

    .enquiry__listItem.kengaku .enquiry__listItem__txt::before {
      width: 6rem;
      height: 6rem;
      background: url(../img/common/icon_interview-lightgreen.svg) no-repeat center center/cover;
    }

    .enquiry__listItem.online .enquiry__listItem__txt::before {
      width: 7rem;
      height: 6.2rem;
      background: url(../img/common/icon_live-chat-pink.svg) no-repeat center center/cover;
    }

    .enquiry__listItem .cmnBtn {
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 50%);
      transform: translate(-50%, 50%);
      width: 28rem;
    }

    .enquiry__listItem.kengaku .cmnBtn {
      border: 0.4rem solid #9ec200;
      background: #9ec200;
    }

    .enquiry__listItem.online .cmnBtn {
      border: 0.4rem solid #e06d74;
      background: #e06d74;
    }

    @media (hover: hover) and (pointer: fine) {
      .enquiry__listItem.kengaku .cmnBtn:hover {
        background: #fff;
        color: #9ec200;
      }
      .enquiry__listItem.kengaku .cmnBtn:hover::after {
        background: url(../img/common/icon_arrow-lightgreen.svg) no-repeat center center/100%;
      }

      .enquiry__listItem.online .cmnBtn:hover {
        background: #fff;
        color: #e06d74;
      }
      .enquiry__listItem.online .cmnBtn:hover::after {
        background: url(../img/common/icon_arrow-pink.svg) no-repeat center center/100%;
      }
    }
    @media screen and (min-width: 1680px) {
      .enquiry::before {
        height: 3.57vw;
      }
    }
    @media screen and (max-width: 767px) {
      .enquiry {
        padding: 5rem 0 6.2rem;
      }
      .enquiry::before {
        height: 4rem;
        background: url(../img/top/nami-gray-top_sp.svg) no-repeat bottom center/100%;
      }

      .enquiry__ttl {
        font-size: 2.4rem;
        letter-spacing: 0.025em;
      }

      .enquiry__list {
        display: block;
        margin-top: 2.9rem;
      }

      .enquiry__listItem {
        width: 100%;
        max-width: 100%;
        padding: 7.9rem 1rem 4.8rem;
        border-radius: 1rem;
      }
      .enquiry__listItem:not(:first-child) {
        margin-top: 4.5rem;
      }
      .enquiry__listItem::before {
        width: calc(100% - 1rem);
        height: calc(100% - 1rem);
        border-radius: 0.8rem;
      }

      .enquiry__listItem__txt {
        font-size: 1.8rem;
        letter-spacing: 0.025em;
      }
      .enquiry__listItem__txt::before {
        top: -5rem;
      }

      .enquiry__listItem.shiryo .enquiry__listItem__txt::before {
        width: 3rem;
        height: 4rem;
      }

      .enquiry__listItem.kengaku .enquiry__listItem__txt::before {
        width: 4rem;
        height: 4rem;
      }

      .enquiry__listItem.online .enquiry__listItem__txt::before {
        width: 4rem;
        height: 3.5rem;
      }

      .enquiry__listItem .cmnBtn {
        bottom: 0.8rem;
        width: 25rem;
        padding: 1.1rem 3rem;
        font-size: 1.4rem;
      }
    }
/*
    contact
    ---------------------------------*/
    .contact {
      position: relative;
      padding: 11rem 0 8rem;
      background: #9ec200;
      line-height: 1;
    }
    .contact::after {
      position: absolute;
      top: calc(100% - 1px);
      /* 隙間ができないように調整 */
      left: 0;
      width: 100%;
      height: 6rem;
      background: url(../img/top/nami-green-bottom_pc.svg) no-repeat top center/100%;
      content: "";
    }

    .contact__ttl {
      color: #fff;
      font-size: 4.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 1.3636363636;
      text-align: center;
    }

    .contact__time {
      margin-top: 2.8rem;
      text-align: center;
    }
    .contact__time span {
      display: inline-block;
      padding: 2.8rem 4.5rem;
      border: 2px solid #fff;
      border-radius: 4rem;
      color: #fff;
      font-size: 2.4rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }

    .contact__list {
      margin-top: 6.2rem;
    }

    .contact__listItem {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
    }
    .contact__listItem:not(:first-child) {
      margin-top: 4.4rem;
    }
    .contact__listItem .imgBox {
      position: relative;
      z-index: 1;
      width: 44%;
      max-width: 560px;
      padding-top: 31.25%;
      border-radius: 4rem;
    }
    .contact__listItem .txtBox {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      position: relative;
      padding: 5.2rem 4rem 4.3rem 4rem;
      background: #fff;
      border-radius: 0 2rem 2rem 0;
    }
    .contact__listItem .txtBox::before {
      position: absolute;
      top: 0;
      right: 100%;
      width: 5rem;
      height: 100%;
      background: #fff;
      content: "";
    }

    .contact__listItem__name {
      position: relative;
      padding-left: 7.7rem;
      font-size: 3.3rem;
      font-weight: 700;
      letter-spacing: 0.05em;
    }
    .contact__listItem__name::before {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 6rem;
      height: 6rem;
      background: url(../img/common/img_logo-mark.png) no-repeat center center/contain;
      content: "";
    }
    .contact__listItem__name + .cmnTxt {
      margin-top: 4.3rem;
    }

    .contact__listItem .cmnBtnBox {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 3.1rem;
    }
    .contact__listItem .cmnBtnBox .cmnBtn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 48%;
      max-width: 300px;
      padding: 0.8rem 1rem;
    }
    .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] {
      border-width: 2px;
    }
    .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] span {
      position: relative;
      display: inline-block;
      padding-left: 2.5rem;
      font-family: "Arial", sans-serif;
      font-size: 3rem;
    }
    .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] span::before {
      position: absolute;
      top: 50%;

      left: 0;
      width: 1.6rem;
      height: 1.6rem;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      background: url(../img/common/icon_tel-green.svg) no-repeat center center/cover;
      content: "";
    }

    @media screen and (min-width: 1680px) {
      .contact::after {
        height: 3.57vw;
      }
    }
    @media screen and (max-width: 767px) {
      .contact {
        padding: 4.6rem 0 5.2rem;
      }
      .contact::after {
        height: 4rem;
        background: url(../img/top/nami-green-bottom_sp.svg) no-repeat top center/100%;
      }

      .contact__ttl {
        font-size: 2.4rem;
        letter-spacing: 0.025em;
      }

      .contact__time {
        margin-top: 0.7rem;
      }
      .contact__time span {
        padding: 1.3rem 2.4rem;
        border-radius: 2.2rem;
        font-size: 1.4rem;
        letter-spacing: 0.025em;
      }

      .contact__list {
        margin-top: 3.2rem;
      }

      .contact__listItem {
        display: block;
      }
      .contact__listItem:not(:first-child) {
        margin-top: 3.2rem;
      }
      .contact__listItem .imgBox {
        width: 100%;
        max-width: 100%;
        padding-top: 69.8412698413%;
        border-radius: 2rem;
      }
      .contact__listItem .txtBox {
        margin: 0 1.5rem;
        padding: 4rem 3rem 3rem;
        border-radius: 0 0 1rem 1rem;
      }
      .contact__listItem .txtBox::before {
        content: none;
      }

      .contact__listItem__name {
        padding-left: 5rem;
        font-size: 1.8rem;
        letter-spacing: 0.025em;
      }
      .contact__listItem__name::before {
        width: 4rem;
        height: 4rem;
      }
      .contact__listItem__name + .cmnTxt {
        margin-top: 2rem;
        line-height: 1.4285714286;
      }

      .contact__listItem .cmnBtnBox {
        display: block;
        margin-top: 1.4rem;
      }
      .contact__listItem .cmnBtnBox .cmnBtn {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 0.5rem 3rem;
        border-radius: 2.5rem;
        font-size: 1.4rem;
      }
      .contact__listItem .cmnBtnBox .cmnBtn:not(:first-child) {
        margin-top: 1rem;
      }
      .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] {
        padding: 1rem 3rem;
        border-radius: 2.3rem;
        font-size: 1.8rem;
      }
      .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] span {
        padding-left: 1.7rem;
        font-size: 1.8rem;
      }
      .contact__listItem .cmnBtnBox .cmnBtn[href^="tel:"] span::before {
        width: 1rem;
        height: 1rem;
      }
    }
/*
    network
    ---------------------------------*/
    .network {
      padding: 19rem 0 11.8rem;
      line-height: 1;
    }

    .network__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
    }
    .network__inner .txtBox {
      width: 40%;
      margin-top: -1rem;
    }
    .network__inner .txtBox .cmnTxt {
      margin-top: 2.2rem;
    }
    .network__inner .map {
      width: 48%;
    }

    .network .cmnBtnBox {
      margin-top: 2.4rem;
      text-align: center;
    }

    .network .cmnBtn {
      border-radius: 9999px;
      font-size: 1.8rem;
      width: 100%;
      padding: 1.5rem 2rem;
    }

    @media screen and (max-width: 1350px) {
      .network__inner .txtBox {
        width: 43%;
      }
    }
    @media screen and (max-width: 767px) {
      .network {
        padding: 8.8rem 0 6.5rem;
      }

      .network__inner {
        display: block;
      }
      .network__inner .txtBox {
        width: 100%;
      }
      .network__inner .txtBox .cmnTxt {
        margin-top: 1.4rem;
      }
      .network__inner .map {
        width: 100%;
        margin-top: 2rem;
      }
      .network__inner .cmnTtl {
        text-align: center;
      }
      .network__inner .cmnTtl::before {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
      }

      .network .cmnBtnBox {
        margin-top: 2rem;
      }
      .network .cmnBtnBox .cmnBtn {
        padding: 0.8rem 3rem;
      }
    }