.main_image {
  position: relative;
  height: 522px;
  padding-top: 195px;
  box-sizing: border-box;
  background: url(/images/clinic/clinic_key.webp) center top/cover no-repeat;
  overflow: hidden;
}
.main_image .inner {
  width: 1025px;
  max-width: 100%;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
}
.main_image .text {
  position: relative;
  z-index: 5;
  text-align: center;
  font-family: "noto sans jp", sans-serif;
  font-size: 48px;
  letter-spacing: 0.2em;
  color: #fff;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}
.main_image .text:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 36%;
  bottom: -60%;
  transform: translateY(-50%);
  width: 259px;
  height: 21px;
  background: url(/images/common/line.webp) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .main_image {
    position: relative;
    height: 60vw;
    padding-top: 28.3vw;
    box-sizing: border-box;
    background: url(/images/clinic/clinic_key.webp) right 40% top/cover no-repeat;
    overflow: hidden;
  }
  .main_image .inner {
    padding: 0 2.7vw;
  }
  .main_image .text {
    text-align: center;
    font-size: 5.8vw;
    padding-left: initial;
  }
  .main_image .text:before {
    left: 25vw;
    top: 12.3vw;
    width: 41.3vw;
    height: 21.3vw;
    background: url(/images/common/arch.webp) center/contain no-repeat;
  }
}

.main_image_up {
  position: absolute;
  height: 187px;
  top: 0;
  left: 0;
  margin-top: 148px;
  box-sizing: border-box;
  background: url(/images/doctor/doctor_key_up.webp) center top/cover no-repeat;
  overflow: hidden;
  z-index: 5;
}

.lead_sec {
  margin: 125px auto 50px;
}
@media screen and (max-width: 767px) {
  .lead_sec {
    margin: 10.8vw auto 13.8vw;
  }
}

.sec01 {
  margin-bottom: 180px;
}
.sec01 .clinic_sec_header {
  font-size: 20px;
  text-align: left;
  color: #499250;
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 100px;
  position: relative;
}
.sec01 .tyousei {
  width: 1280px;
  max-width: 100%;
  padding-top: 150px;
  overflow-x: hidden;
}
.sec01 .clinic_sec_header::before {
  content: "";
  position: absolute;
  width: 273px;
  height: 273px;
  left: -90px;
  bottom: -120px;
  z-index: -1;
  background: url(/images/clinic/flower.webp) center/contain no-repeat;
}
.sec01 .reception {
  margin-bottom: 207px;
  position: relative;
}
.sec01 .reception .flexbox .textbox {
  margin-left: 65px;
}
.sec01 .reception .flexbox .textbox .flex_title {
  font-size: 31px;
  margin-bottom: 20px;
}
.sec01 .reception .flexbox .textbox .green {
  color: #4A924F;
}
.sec01 .reception .flexbox .imagebox {
  position: relative;
}
.sec01 .reception .flexbox .imagebox::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 76px;
  left: -35%;
  bottom: -40px;
  z-index: 1;
  background: url(/images/clinic/kazari1.webp) center/contain no-repeat;
}
.sec01 .reception::after {
  content: "";
  position: absolute;
  width: 358px;
  height: 77px;
  right: 0px;
  top: -40px;
  z-index: 1;
  background: url(/images/clinic/reception.webp) center/contain no-repeat;
}
.sec01 .counseling {
  position: relative;
}
.sec01 .counseling .flexbox {
  margin-bottom: 207px;
  flex-direction: row-reverse;
}
.sec01 .counseling .flexbox .imagebox {
  position: relative;
}
.sec01 .counseling .flexbox .imagebox::after {
  content: "";
  position: absolute;
  width: 273px;
  height: 273px;
  right: -90px;
  top: -180px;
  z-index: -1;
  background: url(/images/clinic/flower2.webp) center/contain no-repeat;
}
.sec01 .counseling .flexbox .textbox {
  margin-right: 71px;
}
.sec01 .counseling .flexbox .textbox .flex_title {
  font-size: 31px;
  margin-bottom: 20px;
}
.sec01 .counseling .flexbox .textbox .red {
  color: #D98897;
}
.sec01 .counseling::before {
  content: "";
  position: absolute;
  width: 143px;
  height: 88px;
  right: 10px;
  bottom: -40px;
  z-index: 1;
  background: url(/images/clinic/kazari2.webp) center/contain no-repeat;
}
.sec01 .counseling::after {
  content: "";
  position: absolute;
  width: 416px;
  height: 77px;
  left: 0px;
  top: -70px;
  z-index: 1;
  background: url(/images/clinic/counseling.webp) center/contain no-repeat;
}
.sec01 .treatment {
  position: relative;
}
.sec01 .treatment .flexbox {
  justify-content: flex-start;
  margin-bottom: 45px;
  align-items: flex-end;
}
.sec01 .treatment .flexbox .imagebox {
  position: relative;
}
.sec01 .treatment .flexbox .imagebox::before {
  content: "";
  position: absolute;
  width: 275px;
  height: 273px;
  left: -70px;
  top: -150px;
  z-index: -1;
  background: url(/images/clinic/flower3.webp) center/contain no-repeat;
}
.sec01 .treatment .flexbox .imagebox_small {
  margin-left: 64px;
}
.sec01 .treatment .textbox {
  width: 70%;
}
.sec01 .treatment .textbox .flex_title {
  font-size: 31px;
  margin-bottom: 20px;
}
.sec01 .treatment .textbox .orange {
  color: #EC9149;
}
.sec01 .treatment::before {
  content: "";
  position: absolute;
  width: 384px;
  height: 77px;
  right: 0px;
  top: -60px;
  z-index: 1;
  background: url(/images/clinic/treatment.webp) center/contain no-repeat;
}
.sec01 .treatment::after {
  content: "";
  position: absolute;
  width: 174px;
  height: 109px;
  right: 0px;
  bottom: 0;
  z-index: 1;
  background: url(/images/clinic/kazari3.webp) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .sec01 {
    margin-bottom: 23.8vw;
  }
  .sec01 .tyousei {
    padding-top: 10vw;
  }
  .sec01 .inner {
    padding: 0 5vw;
  }
  .sec01 .clinic_sec_header {
    font-size: 4.3vw;
    margin-bottom: 10vw;
  }
  .sec01 .clinic_sec_header::before {
    width: 37vw;
    height: 37vw;
    left: 0;
    bottom: -10vw;
  }
  .sec01 .reception {
    margin-bottom: 23.8vw;
  }
  .sec01 .reception .flexbox .textbox {
    margin-left: initial;
  }
  .sec01 .reception .flexbox .textbox .flex_title {
    font-size: 6vw;
    margin-bottom: 5vw;
  }
  .sec01 .reception::before {
    width: 25vw;
    height: 17vw;
    right: 0;
    top: 50vw;
    left: initial;
  }
  .sec01 .reception::after {
    width: 60vw;
    height: 14vw;
    right: 3vw;
    top: -11vw;
  }
  .sec01 .counseling .flexbox .textbox .flex_title {
    font-size: 6vw;
    margin-bottom: 5vw;
  }
  .sec01 .counseling .flexbox .imagebox::after {
    width: 37vw;
    height: 37vw;
    right: 0;
    top: -31vw;
  }
  .sec01 .counseling::before {
    width: 30vw;
    height: 18vw;
    bottom: -12vw;
    right: 3vw;
  }
  .sec01 .counseling::after {
    width: 60vw;
    height: 14vw;
    right: 3vw;
    top: -11vw;
  }
  .sec01 .treatment .textbox {
    width: 100%;
  }
  .sec01 .treatment .textbox .flex_title {
    font-size: 6vw;
    margin-bottom: 5vw;
  }
  .sec01 .treatment .flexbox .imagebox_small {
    margin-left: initial;
  }
  .sec01 .treatment .flexbox .imagebox_small img {
    width: 100%;
  }
  .sec01 .treatment .flexbox .imagebox::before {
    width: 37vw;
    height: 37vw;
    left: -3vw;
    top: -30vw;
  }
  .sec01 .treatment::before {
    width: 60vw;
    height: 14vw;
    right: 3vw;
    top: -11vw;
  }
  .sec01 .treatment::after {
    width: 32vw;
    height: 21vw;
    bottom: -15vw;
  }
}

.sec02 {
  margin-bottom: 180px;
}
.sec02 .inner {
  padding: 0 80px;
}
.sec02 .clinic_sec_header {
  color: #B28699;
  text-align: center;
  margin-bottom: 91px;
}
.sec02 .clinic_sec_header .clinic_sec_title {
  font-size: 31px;
}
.sec02 .clinic_sec_header .clinic_sec_title .small {
  font-size: 20px;
}
.sec02 .flexbox {
  flex-direction: row-reverse;
}
.sec02 .flexbox .imagebox {
  display: flex;
  max-width: 57%;
}
.sec02 .flexbox .imagebox img {
  max-width: 57%;
}
.sec02 .flexbox .textbox {
  margin-right: 50px;
  width: 38%;
}
.sec02 .flexbox .textbox .cont_box .cont_title {
  color: #B28699;
  font-size: 24px;
  padding-left: 100px;
}
.sec02 .flexbox .textbox .cont_box .title01 {
  position: relative;
}
.sec02 .flexbox .textbox .cont_box .title01::before {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  top: -10px;
  left: 0;
  background: url(/images/clinic/car.webp) center top/cover no-repeat;
}
.sec02 .flexbox .textbox .cont_box .title02 {
  position: relative;
}
.sec02 .flexbox .textbox .cont_box .title02::before {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  top: -10px;
  left: 0;
  background: url(/images/clinic/toilet.webp) center top/cover no-repeat;
}
.sec02 .flexbox .textbox .box01 {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .sec02 {
    margin-bottom: 13.8vw;
  }
  .sec02 .inner {
    padding: 0 5vw;
  }
  .sec02 .clinic_sec_header {
    margin-bottom: 10vw;
  }
  .sec02 .clinic_sec_header .clinic_sec_title {
    font-size: 6vw;
  }
  .sec02 .clinic_sec_header .clinic_sec_title .small {
    font-size: 4.8vw;
  }
  .sec02 .flexbox .imagebox {
    margin: 0;
    max-width: 100%;
    padding-bottom: 5vw;
  }
  .sec02 .flexbox .imagebox img {
    max-width: 49%;
  }
  .sec02 .flexbox .textbox {
    margin-right: initial;
    width: 100%;
  }
  .sec02 .flexbox .textbox .box01 {
    margin-bottom: 10vw;
  }
  .sec02 .flexbox .textbox .cont_box .cont_title {
    font-size: 5vw;
    padding-left: 20vw;
  }
  .sec02 .flexbox .textbox .cont_box .title01::before, .sec02 .flexbox .textbox .cont_box .title02::before {
    width: 14vw;
    height: 14vw;
    top: -2vw;
  }
}

.sec03 {
  margin-bottom: 100px;
}
.sec03 .inner {
  padding: 0 80px;
}
.sec03 .clinic_sec_header .header_box {
  display: flex;
  display: flex;
  justify-content: space-between;
  margin-bottom: 215px;
}
.sec03 .clinic_sec_header .header_box .title_left {
  font-size: 31px;
  color: #0071BC;
}
.sec03 .clinic_sec_header .header_box .title_left .clinic_sec_title {
  font-size: 31px;
}
.sec03 .clinic_sec_header .header_box .title_left .small {
  font-size: 21px;
}
.sec03 .clinic_sec_header .header_box .title_right {
  text-align: right;
  color: #ED1E79;
  font-size: 40px;
}
.sec03 .first_box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 150px;
  row-gap: 170px;
}
.sec03 .first_box .setubi_box {
  width: 90%;
  background-color: rgba(0, 113, 188, 0.2);
  margin: 0 auto;
  padding: 110px 13px 10px;
  position: relative;
}
.sec03 .first_box .setubi_box .imagebox {
  max-width: 100%;
}
.sec03 .first_box .setubi_box .imagebox01 {
  position: absolute;
  top: -130px;
  right: 50%;
  transform: translateX(50%);
  box-sizing: border-box;
  width: 434px;
}
.sec03 .first_box .setubi_box .imagebox02 {
  position: absolute;
  top: -130px;
  right: 50%;
  transform: translateX(50%);
  box-sizing: border-box;
  width: 283px;
}
.sec03 .first_box .setubi_box .imagebox03 {
  position: absolute;
  top: -120px;
  right: 50%;
  transform: translateX(50%);
  box-sizing: border-box;
  width: 468px;
}
.sec03 .first_box .setubi_box .imagebox04 {
  position: absolute;
  top: -140px;
  right: 50%;
  transform: translateX(50%);
  box-sizing: border-box;
  width: 461px;
}
.sec03 .first_box .setubi_box .textbox {
  width: 70%;
  margin: 0 auto;
}
.sec03 .first_box .setubi_box .textbox .setubi_title {
  font-size: 21px;
  color: #0071BC;
}
.sec03 .second_box {
  background-image: url(/images/clinic/sec03_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 50px 0;
}
.sec03 .second_box .flexbox .textbox {
  width: 53%;
  margin-left: 40px;
}
.sec03 .second_box .flexbox .textbox .second_title {
  font-size: 29px;
  color: #008270;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .sec03 {
    margin-bottom: 13.8vw;
  }
  .sec03 .inner {
    padding: 0 5vw;
  }
  .sec03 .clinic_sec_header .header_box {
    display: block;
    margin-bottom: 30vw;
  }
  .sec03 .clinic_sec_header .header_box .title_left {
    font-size: 8vw;
  }
  .sec03 .clinic_sec_header .header_box .title_left .clinic_sec_title {
    font-size: 8vw;
  }
  .sec03 .clinic_sec_header .header_box .title_left .clinic_sec_title .small {
    font-size: 5vw;
  }
  .sec03 .first_box {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 15vw;
    row-gap: 40vw;
  }
  .sec03 .first_box .setubi_box {
    padding: 20vw 5vw 4vw;
  }
  .sec03 .first_box .setubi_box .textbox {
    width: 100%;
  }
  .sec03 .first_box .setubi_box .textbox .setubi_title {
    font-size: 5vw;
  }
  .sec03 .first_box .setubi_box .textbox .setubi_text {
    font-size: 4vw;
  }
  .sec03 .first_box .setubi_box .imagebox01, .sec03 .first_box .setubi_box .imagebox02, .sec03 .first_box .setubi_box .imagebox03 {
    right: 50%;
  }
  .sec03 .first_box .setubi_box .imagebox01 {
    top: -23vw;
    width: 80%;
  }
  .sec03 .first_box .setubi_box .imagebox02 {
    width: 70%;
    top: -34vw;
  }
  .sec03 .first_box .setubi_box .imagebox03 {
    width: 80%;
    top: -18vw;
  }
  .sec03 .first_box .setubi_box .imagebox04 {
    width: 80%;
    top: -20vw;
  }
  .sec03 .second_box {
    padding: 10vw 0;
  }
  .sec03 .second_box .flexbox .imagebox {
    width: 90%;
  }
  .sec03 .second_box .flexbox .textbox {
    width: 100%;
    margin-left: initial;
    padding: 0 5vw;
  }
  .sec03 .second_box .flexbox .textbox .second_title {
    font-size: 5.8vw;
    margin-bottom: 5vw;
  }
}/*# sourceMappingURL=clinic.css.map */