@charset "UTF-8";
.container {
  width: 100%;
}

@media only screen and (min-width: 576px) {
  .cases-swiper-button-next {
    top: 46%;
    left: 89%;
  }
  .cases-swiper-button-prev {
    top: 46%;
    left: 2%;
  }
}

@media only screen and (min-width: 768px) {
  .cases-swiper-button-next {
    width: 9.5vw;
    height: 9.5vw;
    top: 34.5%;
    left: unset;
    right: 1.8%;
  }
  .cases-swiper-button-prev {
    width: 9.5vw;
    height: 9.5vw;
    top: 34.5%;
    left: 1.8%;
  }
  .cases-swiper-button-next::after {
    content: "";
    height: 9.5vw;
    margin: auto;
    width: 9.5vw;
    background: url(../images/swiper-next-arrow-pc.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
  }
  .cases-swiper-button-prev::after {
    content: "";
    height: 9.5vw;
    margin: auto;
    width: 9.5vw;
    background: url(../images/swiper-next-arrow-pc.png);
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(180deg);
    display: inline-block;
  }
}
@media only screen and (min-width: 992px) {
  /* .cases-swiper-pagination {
    padding: 50px 0;
  } */
  .cases-swiper .sec04_case .sec04_case_title {
    /* padding: 15px 0; */
    margin: 0;
  }
  /* .cases-swiper .swiper-slide-wrapper {
    border: 0.8px solid #007D9F;
    height: 100%;
    background: #fff;
    margin: 0 auto;
    padding: 0 27px 27.5px;
  } */
  /* .cases-swiper .sec04_case_text p {
    max-width: 821px;
    padding: 2% 0;
  } */
  .cases-swiper-button-next {
    width: 7.5vw;
    height: 7.5vw;
    right: 3vw;
    top: 41.5%;
  }
  .cases-swiper-button-prev {
    width: 7.5vw;
    height: 7.5vw;
    left: 3vw;
    top: 41.5%;
  }
  .cases-swiper-button-prev::after {
    width: 7.5vw;
    height: 7.5vw;
  }
  .cases-swiper-button-next::after {
    width: 7.5vw;
    height: 7.5vw;
  }
}
@media only screen and (min-width: 1144px) {
  .cases-swiper-button-next::after {
    content: "";
    height: 60px;
    margin: auto;
    width: 60px;
    background: url(../images/swiper-next-arrow-pc.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
  }
  .cases-swiper-button-prev::after {
    content: "";
    height: 60px;
    margin: auto;
    width: 60px;
    background: url(../images/swiper-next-arrow-pc.png);
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(180deg);
    display: inline-block;
  }
}
@media only screen and (min-width: 1200px) {
  .cases-swiper-button-next {
    right: 4.8vw;
  }
  .cases-swiper-button-prev {
    left: 7.2vw;
  }
}

@media only screen and (min-width: 1280px) {
  .container {
    width: 1280px;
    margin: 0 auto;
  }
  /*.section02*/
  .section02 {
    margin: 60px 0 124px;
  }
  .section02 h2 {
    font-size: 40px;
    margin-bottom: 60px;
  }
  .section02 dl {
    width: 1100px;
    margin-bottom: 55px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .section02 dl > div {
    width: 263px;
  }
  .section02 dl > div dt {
    font-size: 39px;
    padding: 147px 0 25px;
  }
  .section02 dl > div dt::after {
    width: 24px;
    height: 24px;
  }
  .section02 dl > div dt div {
    font-size: 24px;
    margin-bottom: 15px;
  }
  .section02 dl > div dt div span {
    margin-bottom: 10px;
    font-size: 16px;
  }
  .section02 dl > div dt div + span {
    font-size: 12px;
    margin-bottom: 7px;
  }
  .section02 dl > div dd {
    font-size: 16px;
    padding-top: 27px;
  }
  .section02 > a {
    width: 416px;
    padding: 20px 0;
    font-size: 18px;
  }
  /*section03*/
  .section03 {
    padding-top: 100px;
  }
  .section03 h2 {
    font-size: 40px;
    line-height: 1.5;
  }
  .section03 dl {
    margin: 68px auto 62px;
    width: 1280px;
  }
  .section03 dl div {
    margin-right: 90px;
    padding-left: 660px;
  }
  .section03 dl div:nth-of-type(2) {
    margin: 122px 0 122px 90px;
    height: 593px;
    padding-top: 70px;
    padding-right: 660px;
    margin-left: 90px;
  }
  .section03 dl div:nth-of-type(3) {
    height: 533px;
    padding-top: 10px;
  }
  .section03 dl div dd {
    font-size: 16px;
  }
  .section03 dl div dd ul li {
    font-size: 12px;
  }
  /* バナー */
  .bnr-wrap {
    margin-bottom: 119px;
  }
  /*section04*/
  .section04 h2 {
    font-size: 40px;
    margin-bottom: 32px;
  }
  .section04 p {
    font-size: 16px;
  }
  .section04 .doctors-list {
    margin: 60px 0 60px 90px;
  }
  .section04 .doctors-list .list-body .slick-list {
    padding: 0 69.75px 0 0 !important;
  }
  .section04 .doctors-list .list-body .doctor-slide {
    width: 263px;
    margin: 0 16px;
  }
  .section04 .doctors-list .list-body .doctor-slide::after {
    width: 24px;
    height: 24px;
    right: -14px;
  }
  .section04 .doctors-list .list-body .doctor-slide dt,
  .section04 .doctors-list .list-body .doctor-slide dd {
    width: 263px;
  }
  .section04 .doctors-list .list-body .doctor-slide dt {
    padding: 304px 20px 0;
    font-size: 16px;
  }
  .section04 .doctors-list .list-body .doctor-slide dt span {
    font-size: 14px;
    margin-bottom: 12px;
  }
  .section04 .doctors-list .list-body .doctor-slide dd {
    font-size: 14px;
    padding: 20px 20px 100px;
  }
  .section04 .doctors-list .prev-arrow {
    width: 60px;
    margin-top: -30px;
    left: 15px;
  }
  .section04 .doctors-list .next-arrow {
    width: 60px;
    margin-top: -30px;
  }
  .section04 > a {
    width: 416px;
    padding: 20px 0;
    font-size: 18px;
  }
  .section04 > a span {
    font-size: 12px;
  }
  /*slick*/
  .slick-track {
    width: 10959px !important;
  }

  /*section06*/
  .section06 {
    background-size: 1190px auto;
    height: 740px;
    margin: 80px 0 220px;
    padding: 120px 0 0 150px;
  }
  .section06::before {
    width: 544px;
    height: 621px;
    top: 60px;
    left: 235px;
  }
  .section06 > h2 {
    font-size: 40px;
    margin-bottom: 23px;
  }
  .section06 > p {
    font-size: 16px;
  }
  .section06 .clinic-list > dt {
    font-size: 14px;
  }
  .section06 .clinic-list > dt a {
    min-width: 77px;
    min-height: 28px;
    border-radius: 14px;
  }
  .section06 .clinic-list > dd {
    width: 302px;
    top: 133px;
    right: 148px;
    padding: 20px;
  }
  .section06 .clinic-list > dd .close {
    width: 20px;
    height: 20px;
    top: 20px;
    right: 20px;
  }
  .section06 .clinic-list > dd dt {
    font-size: 20px;
  }
  .section06 .clinic-list > dd dd {
    font-size: 14px;
    padding-bottom: 150px;
  }
  .section06 .clinic-list > dd dd figure {
    margin: 20px 0 30px;
  }
  .section06 .clinic-list > dd dd span {
    font-size: 13px;
  }
  .section06 .clinic-list > dd dd ul {
    bottom: 20px;
    left: 20px;
    width: 262px;
  }
  .section06 .clinic-list > dd dd ul li:last-child {
    margin-top: 10px;
  }
  .section06 .clinic-list > dd dd ul li a {
    padding: 16px;
    font-size: 13px;
  }
  .section06 .clinic-list dt .long_sentence {
    padding-left: 0.5em;
  }
  .section06 .clinic-list dt:nth-child(1) {
    top: 160px;
    left: 505px;
  }
  .section06 .clinic-list dt:nth-child(3) {
    top: 498px;
    left: 648px;
  }
  .section06 .clinic-list dt:nth-child(5) {
    top: 536px;
    left: 648px;
  }
  .section06 .clinic-list dt:nth-child(7) {
    top: 574px;
    left: 648px;
  }
  .section06 .clinic-list dt:nth-child(9) {
    top: 612px;
    left: 648px;
  }
  .section06 .clinic-list dt:nth-child(11) {
    top: 652px;
    left: 648px;
  }
  .section06 .clinic-list dt:nth-child(13) {
    top: 652px;
    left: 555px;
  }
  .section06 .clinic-list dt:nth-child(15) {
    top: 612px;
    left: 555px;
  }
  .section06 .clinic-list dt:nth-child(17) {
    top: 612px;
    left: 462px;
  }
  .section06 .clinic-list dt:nth-child(19) {
    top: 451px;
    left: 243px;
  }
  .section06 .clinic-list dt:nth-child(21) {
    top: 451px;
    left: 150px;
  }
  .section06 .clinic-list dt:nth-child(23) {
    top: 451px;
    left: 150px;
  }
  /*section07*/
  .section07 dl {
    width: 1100px;
    margin: 0 auto 200px;
  }
  .section07 dl div {
    width: 542px;
    min-height: 343px;
  }
  .section07 dl div::before {
    width: 54px;
    height: 54px;
    top: 55px;
    left: 244px;
  }
  .section07 dl div::after {
    width: 24px;
    height: 24px;
    right: 5px;
    bottom: 5px;
  }
  .section07 dl div dt {
    font-size: 22px;
    top: 134px;
  }
  .section07 dl div dd {
    font-size: 14px;
    width: 370px;
    margin-top: 221px;
    margin-left: 55px;
    padding-bottom: 55px;
  }
  /*footer*/
  .page-footer {
    -webkit-box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.16);
    box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.16);
    height: 140px;
  }
  .page-footer .container {
    height: 140px;
  }
  .page-footer .reservation li {
    width: 350px;
    height: 58px;
    top: 26px;
    font-size: 17px;
  }
  .page-footer .reservation li a {
    padding-top: 22px;
  }
  .page-footer .reservation li.web {
    /* left: 430px; */
    left: auto;
    right: 500px;
  }
  .page-footer .reservation li.line {
    right: 124px;
  }
  .page-footer .reservation li.web::after,
  .page-footer .reservation li.line::after {
    width: 6px;
    height: 12px;
    top: 23px;
    right: 20px;
  }
  .page-footer .reservation li.pagetop {
    width: 57px;
    height: 57px;
    background-size: 28px 17px;
    background-position: center 21.8px;
  }
  .page-footer .contact {
    top: 26px;
    left: 40px;
  }
  .page-footer .contact li {
    padding-left: 36px;
  }
  .page-footer .contact li span {
    font-size: 10px;
  }
  .page-footer .contact li:nth-child(1) {
    font-size: 32px;
  }
  .page-footer .contact li:nth-child(1)::before {
    width: 26px;
    height: 26px;
  }
  .page-footer .contact li:nth-child(2) {
    font-size: 20px;
  }
  .page-footer .contact li:nth-child(2) span:first-child {
    font-size: 14px;
  }
  .page-footer .container p {
    font-size: 12px;
    bottom: 23px;
    right: 32px;
  }
  .page-footer .certificate {
    width: 66px;
    height: 86px;
    top: 26px;
    left: 336px;
  }
}
@media only screen and (min-width: 1280px) {
  .cases-swiper-button-next {
    right: unset;
    left: 85.4%;
  }
  .cases-swiper-button-prev {
    left: 10%;
  }
}
@media only screen and (min-width: 1400px) {
  .cases-swiper-button-next {

    left: 84.8%;
  }
  .cases-swiper-button-prev {
    left: 10.5%;
  }
}
