/*wellnest clinic color*/
.container {
  background: #F2F4F5; }

.pnkz,
.page-ttl {
  position: relative;
  z-index: 1; }

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

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

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

.anchor {
  display: block;
  padding-top: 40px;
  margin-top: -40px; }

@media screen and (max-width: 768px) {
  .container {
    background: #fff; }

    /*.pnkz {
        ul {
            width: 94%;
        }
    }

    .selfp-wrap {
        padding: 0 2%;
        margin: 0 auto 50px;
    }*/
  .pc-flex {
    display: block; }

  .page-ttl {
    padding: 0% 0 8% 0; }

  .anchor {
    padding-top: 8vw;
    margin-top: -8vw; } }
/* ------------------------------
sec01
------------------------------ */
.sec01 {
  width: 1280px;
  padding: 80px 0;
  background-color: #fff;
  margin: 0 auto 64px;
  /*.lead {
    text-align: center;
    font-size: 2.1rem;
    font-weight: 700;
    color: #001e4e;
  }*/
    /*.red {
        &:before {
            border-color: transparent $red-1000 transparent transparent;
        }
    }

    a.link {
        color: $blue-1000;
        text-decoration: underline;
    }*/ }
  .sec01 .linettl {
    position: relative;
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-align: center;
    line-height: 1.5;
    color: #041E42;
    margin-bottom: 30px; }
    .sec01 .linettl span {
      position: relative;
      padding: 0 50px;
      background: #fff;
      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;
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.025em;
    line-height: 1;
    color: #041E42;
    margin-bottom: 30px; }
    .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 .box {
    width: 1120px;
    margin: 0 auto; }
    .sec01 .box .menu_wrap {
      display: flex;
      flex-wrap: wrap;
      gap: 24px;
      margin: 40px auto 120px auto; }
      .sec01 .box .menu_wrap li {
        position: relative;
        background: #FFF;
        border-radius: 8px;
        padding: 32px 24px 32px 16px;
        width: calc((100% - 64px) / 3);
        box-shadow: 4px 4px 16px -4px rgba(114, 114, 114, 0.3);
        transition: opacity 0.3s ease;
        box-sizing: border-box; }
        .sec01 .box .menu_wrap li a {
          color: #041E42;
          font-size: 1.6rem;
          font-weight: 700;
          line-height: 1.5;
          letter-spacing: 0.04em;
          text-align: center;
          display: inline-block;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 100%;
          padding: 16px 0; }
        .sec01 .box .menu_wrap li:after {
          content: '';
          position: absolute;
          top: 50%;
          right: 8px;
          transform: translate(-50%, -50%);
          background: url(../img/common/ico-arrow.svg) no-repeat center center;
          width: 12px;
          height: 11px; }
    .sec01 .box .boxIn {
      max-width: 1000px;
      margin: 0 auto; }
      .sec01 .box .boxIn table {
        width: 100%;
        max-width: 1000px;
        border-collapse: collapse; }
        .sec01 .box .boxIn table th {
          background-color: #364B68;
          color: #fff;
          padding: 8px;
          font-size: 1.4rem;
          line-height: 1.5;
          letter-spacing: 0.04em;
          text-align: center;
          border: 1px solid #021223; }
        .sec01 .box .boxIn table th.ttl {
          text-align: left;
          color: #041E42;
          background-color: #E5E8EC; }
        .sec01 .box .boxIn table tr {
          width: 100%; }
        .sec01 .box .boxIn table td {
          font-size: 1.4rem;
          line-height: 1.5;
          letter-spacing: 0.04em;
          padding: 8px;
          border: 1px solid #595959;
          text-align: center; }
          .sec01 .box .boxIn table td span {
            background: #96A4B8;
            color: #fff;
            font-size: 1.2rem;
            padding: 2px 10px;
            border-radius: 3px;
            margin-left: 10px; }
        .sec01 .box .boxIn table td.txt_left {
          text-align: left; }
        .sec01 .box .boxIn table .price {
          text-align: right;
          width: 50%; }
        .sec01 .box .boxIn table .num {
          text-align: right; }
        .sec01 .box .boxIn table .cate {
          text-align: center;
          font-weight: 600;
          color: #fff; }
        .sec01 .box .boxIn table .blu01 {
          background: #637598; }
        .sec01 .box .boxIn table .blu02 {
          background: #96A4B8; }
  .sec01 .box + .box {
    margin-top: 104px; }

.btn_wrap {
  max-width: 390px;
  margin: 64px auto; }
  .btn_wrap .btn_back {
    margin-bottom: 40px; }
    .btn_wrap .btn_back .btn {
      position: relative;
      width: 100%;
      display: block;
      text-align: center;
      font-size: 1.8rem;
      letter-spacing: .15rem;
      font-weight: 700;
      color: #FFF;
      background: #c9c9c9;
      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) {
  .sec01 {
    width: 100%;
    padding: 8vw 0 0;
    margin: 0 auto; }
    .sec01 .inner {
      width: 100%;
      padding: 0 4.267vw; }
    .sec01 .linettl {
      font-size: 6.4vw;
      margin: 4vw 0; }
      .sec01 .linettl span {
        padding: 0 15px; }
    .sec01 .medttl {
      font-size: 5.33vw;
      margin-bottom: 4vw; }
      .sec01 .medttl span {
        padding-right: 15px; }
    .sec01 .lead {
      font-size: 4.267vw; }
    .sec01 .box .menu_wrap {
      gap: 16px;
      margin: 8vw auto;
      justify-content: center; }
      .sec01 .box .menu_wrap li {
        padding: 6vw;
        width: calc((100% - 16px) / 2); }
        .sec01 .box .menu_wrap li:after {
          width: 2vw;
          height: 2vw; }
        .sec01 .box .menu_wrap li a {
          font-size: 3.2vw;
          padding: 4vw 0; }
    .sec01 .box .boxIn {
      overflow-x: scroll; }
      .sec01 .box .boxIn table {
        font-size: 3vw;
        width: max-content;
        min-width: 100%; }
        .sec01 .box .boxIn table th,
        .sec01 .box .boxIn table td {
          padding: 4vw 2vw;
          font-size: 2.67vw; }
    .sec01 .box + .box {
      margin-top: 16vw; }

  .btn_wrap {
    margin: 16vw auto; }
    .btn_wrap .btn_back {
      margin: 0 auto 8vw;
      max-width: inherit; }
      .btn_wrap .btn_back .btn:after {
        left: 22px;
        right: auto;
        transform: rotate(-180deg); }
    .btn_wrap .btn {
      font-size: 4.267vw;
      padding: 4vw;
      line-height: 1; } }
