/*wellnest clinic color*/
/*blue*/
/*red*/
/*black.white*/
.pnkz,
.page-ttl {
  position: relative;
  z-index: 1;
}

.pnkz,
.page-ttl {
  background: #FFF;
  box-sizing: border-box;
}

.page-wrap {
  background: #9BA5B3;
  padding-bottom: 80px;
}

.pnkz::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%);
  width: 100vw;
  height: 100%;
  z-index: -1;
  background: #FFFFFF;
}

.page-ttl {
  padding: 16px 0 41px;
  box-shadow: 0px 5px 7px 0 rgba(148, 148, 151, 0.3);
}

.atten {
  color: #C8102E;
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .container {
    background: #FFFFFF;
  }
  .pnkz ul {
    width: 94%;
  }
  .pc-flex {
    display: block;
  }
  .page-ttl {
    padding: 0% 0 8% 0;
  }
  .page-wrap {
    padding-bottom: 0;
  }
}
/*@media screen and (min-width : 768px) {
    .sp {
        display: none;
    }
}*/
/* ------------------------------
sec01
------------------------------ */
.sec01 {
  background-color: #fff;
  max-width: 1280px;
  padding: 80px 0;
  margin: 0 auto;
}
.sec01 .lead {
  text-align: center;
  font-size: 2.1rem;
  font-weight: 700;
  color: #041E42;
}
.sec01 .linettl {
  position: relative;
  text-align: center;
  margin-bottom: 24px;
}
.sec01 .linettl span {
  position: relative;
  padding: 0 50px;
  background: #FFFFFF;
  z-index: 1;
}
.sec01 .linettl:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px solid #041E42;
}
.sec01 .medttl {
  position: relative;
  margin-bottom: 24px;
}
.sec01 .medttl span {
  position: relative;
  padding-right: 30px;
  background: #fff;
  z-index: 1;
}
.sec01 .medttl:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  height: 1px;
  border-top: 1px solid #041E42;
}
.sec01 .fee_box {
  margin-bottom: 100px;
}
.sec01 .fee_box p {
  font-size: 1.5rem;
  line-height: 1.86;
  letter-spacing: 0.1rem;
  text-align: center;
}
.sec01 .fee_box .flex-box {
  display: flex;
  justify-content: space-around;
  margin: 50px 20px 30px 20px;
}
.sec01 .fee_box .flex-box .boxIn {
  width: calc((100% - 100px) / 2);
  padding: 0 0 30px 0;
  box-shadow: 3px 3px 18px -4px rgba(148, 148, 151, 0.3);
  border-radius: 10px;
}
.sec01 .fee_box .flex-box .boxIn h3 {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  text-align: center;
  background: #041E42;
  color: #fff;
  border-radius: 10px 10px 0 0;
  padding: 15px 0;
  margin-bottom: 20px;
}
.sec01 .fee_box .flex-box .boxIn p {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  text-align: center;
  line-height: 1;
  color: #041E42;
}
.sec01 .fee_box .flex-box .boxIn .num {
  font-size: 2.4rem;
}
.sec01 .fee_box .flex-box .boxIn .num small {
  margin-left: 10px;
}
.sec01 .self_paid_btn_wrap .menu_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 20px;
  margin: 5% auto 10% auto;
}
.sec01 .self_paid_btn_wrap .menu_wrap .menu {
  position: relative;
  background: #FFF;
  /* cursor: pointer; */
  border-radius: 8px;
  padding: 30px 25px 30px 17px;
  width: calc((100% - 60px) / 3);
  box-shadow: 2px 2px 10px -2px rgba(148, 148, 151, 0.5);
  transition: opacity 0.3s ease;
  box-sizing: border-box;
}
.sec01 .self_paid_btn_wrap .menu_wrap .menu p {
  color: #041E42;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.sec01 .self_paid_btn_wrap .menu_wrap .menu:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2%;
  transform: translate(-50%, -50%);
  background: url(../img/common/ico-arrow.svg) no-repeat center center;
  width: 12px;
  height: 11px;
}
.sec01 .price_wrap .price_box {
  max-width: 1000px;
  margin: 0 auto;
}
.sec01 .price_wrap .price_box .table_wrap table {
  width: 100%;
  max-width: 1000px;
  border-collapse: collapse;
  margin-bottom: 24px;
}
.sec01 .price_wrap .price_box .table_wrap table th {
  background-color: #041E42;
  color: #fff;
  padding: 15px;
  text-align: center;
  border: 1px solid #9BA5B3;
  line-height: 1.5;
}
.sec01 .price_wrap .price_box .table_wrap table tr {
  width: 100%;
}
.sec01 .price_wrap .price_box .table_wrap table td {
  line-height: 1.5;
  padding: 8px;
  border: 1px solid #9BA5B3;
  /*span {
      background: $blue-400;
      color: #fff;
      font-size: 1.2rem;
      padding: 2px 10px;
      border-radius: 3px;
      margin-left: 10px;
  }*/
}
.sec01 .price_wrap .price_box .table_wrap table td small {
  display: block;
  color: #4F617A;
}
.sec01 .price_wrap .price_box .table_wrap table .price {
  text-align: right;
  white-space: nowrap;
}
.sec01 .price_wrap .price_box .table_wrap table .price s {
  display: block;
}
.sec01 .price_wrap .price_box .table_wrap table .num {
  text-align: right;
}
.sec01 .price_wrap .price_box .table_wrap table .cate {
  font-weight: 600;
  color: #fff;
  text-align: left;
}
.sec01 .price_wrap .price_box .table_wrap table .cate small {
  display: block;
  margin-top: 8px;
}
.sec01 .price_wrap .price_box .table_wrap table .blu900 {
  background: #1D3455;
}
.sec01 .price_wrap .price_box .table_wrap table .blu600 {
  background: #68788E;
}
.sec01 .price_wrap .price_box .table_wrap table .blu300 {
  background: #B3BBC6;
}
.sec01 .price_wrap .price_box .table_wrap table .blu50 {
  background: #F2F4F5;
}
.sec01 .price_wrap .price_box .note {
  padding-left: 24px;
}
.sec01 .price_wrap .price_box .note li {
  list-style: disc;
}
.sec01 .price_wrap + .price_wrap {
  margin-top: 70px;
}
.sec01 .red:before {
  border-color: transparent #C8102E transparent transparent;
}
.sec01 a.link {
  color: #041E42;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .sec01 {
    width: 100%;
    padding: 12vw 0 0;
    margin: 0 auto;
  }
  .sec01 .inner {
    width: 90%;
    max-width: inherit;
  }
  .sec01 .linettl {
    margin: 0 0 4vw;
  }
  .sec01 .linettl span {
    padding: 0 4vw;
  }
  .sec01 .medttl {
    margin-bottom: 4vw;
  }
  .sec01 .medttl span {
    padding-right: 4vw;
  }
  .sec01 .lead {
    font-size: 4.267vw;
  }
  .sec01 .fee_box {
    margin-bottom: 10%;
  }
  .sec01 .fee_box p {
    font-size: 3.73vw;
  }
  .sec01 .fee_box .flex-box {
    display: flex;
    justify-content: space-around;
    margin: 5% 0;
  }
  .sec01 .fee_box .flex-box .boxIn {
    width: 45%;
    padding: 0 0 7% 0;
  }
  .sec01 .fee_box .flex-box .boxIn h3 {
    font-size: 4.27vw;
    padding: 5% 0;
    margin-bottom: 10%;
  }
  .sec01 .fee_box .flex-box .boxIn p {
    font-size: 4.27vw;
  }
  .sec01 .fee_box .flex-box .boxIn .num {
    font-size: 5.33vw;
  }
  .sec01 .fee_box .flex-box .boxIn .num small {
    margin-left: 10px;
  }
  .sec01 .self_paid_btn_wrap .menu_wrap {
    margin: 8vw auto 16vw;
    gap: 4vw;
  }
  .sec01 .self_paid_btn_wrap .menu_wrap .menu {
    padding: 8vw;
    width: calc((100% - 4vw) / 2);
  }
  .sec01 .self_paid_btn_wrap .menu_wrap .menu:after {
    width: 11px;
    height: 10px;
  }
  .sec01 .price_wrap .price_box .table_wrap {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .sec01 .price_wrap .price_box .table_wrap table {
    border-collapse: collapse;
    border-spacing: 0;
    /*width: max-content;
    min-width: 100%;*/
    margin-bottom: 4vw;
  }
  .sec01 .price_wrap .price_box .table_wrap table th,
  .sec01 .price_wrap .price_box .table_wrap table td {
    padding: 2vw;
  }
  .sec01 .price_wrap .price_box .note {
    padding-left: 4vw;
  }
  .sec01 .price_wrap .price_box .note li {
    margin-bottom: 2vw;
  }
  .sec01 .price_wrap + .price_wrap {
    margin-top: 5%;
  }
}
/* ------------------------------
sec01
------------------------------ */
.btn_wrap {
  max-width: 390px;
  margin: 50px auto 0 auto;
}
.btn_wrap .btn_back {
  max-width: 390px;
  margin: 100px auto;
}
.btn_wrap .btn_back .btn {
  position: relative;
  width: 100%;
  display: block;
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.15rem;
  font-weight: 700;
  color: #FFF;
  background: #B4B4B7;
  padding: 14px 10px 18px 10px;
  border-radius: 30px;
  box-sizing: border-box;
}
.btn_wrap .btn_back .btn:after {
  position: absolute;
  left: 22px;
  top: 50%;
  margin-top: -7px;
  display: block;
  content: "";
  transform: rotate(180deg);
  background: url(../img/common/ico-arrow_white.svg) no-repeat center center;
  background-size: 100% auto;
  width: 14px;
  height: 13px;
}

@media screen and (max-width: 767px) {
  .btn_wrap {
    max-width: 100%;
    margin: 8vw auto 16vw;
  }
  .btn_wrap .btn_back {
    margin: 8vw auto 0;
    max-width: 90%;
  }
  .btn_wrap .btn_back .btn {
    font-size: 4.267vw;
    padding: 4vw 2vw;
    line-height: 1;
  }
  .btn_wrap .btn_back .btn:after {
    left: 22px;
    right: auto;
    transform: rotate(-180deg);
  }
}