@charset "UTF-8";
/*=======================================
	breakpoint
=======================================*/
/*=======================================
	hover
=======================================*/
/*=======================================
	中央配置
=======================================*/
/*=======================================
	可変レスポンシブ
=======================================*/
/* PC */
/* TB */
/* SP */
/*=======================================
	ブラウザ別
=======================================*/
/* Safari */
/* Firefox */
/*-------------------------
- base
- doctor_sec
-------------------------*/
/*=======================================
　base
=======================================*/
body:has(.clinic) {
  background: url("../img/clinic/cloud_bg.svg") no-repeat center 64.5714285714vw, -webkit-gradient(linear, left top, left bottom, from(#1CC3FB), color-stop(55%, #7EE2FD), to(#D8FFFE));
  background: url("../img/clinic/cloud_bg.svg") no-repeat center 64.5714285714vw, linear-gradient(to bottom, #1CC3FB 0%, #7EE2FD 55%, #D8FFFE 100%);
  background-size: 100% auto;
}
@media screen and (max-width: 768px) {
  body:has(.clinic) {
    background: url("../img/clinic/cloud_bg.svg") no-repeat center top, -webkit-gradient(linear, left top, left bottom, from(#1CC3FB), color-stop(20%, #7EE2FD), color-stop(80%, #C5F9FE), to(#D8FFFE));
    background: url("../img/clinic/cloud_bg.svg") no-repeat center top, linear-gradient(to bottom, #1CC3FB 0%, #7EE2FD 20%, #C5F9FE 80%, #D8FFFE 100%);
  }
}
body:has(.clinic) .clinic .contents_ttl_area {
  margin-bottom: 4.3571428571vw;
}
@media screen and (max-width: 768px) {
  body:has(.clinic) .clinic .contents_ttl_area {
    margin-bottom: 6.6666666667vw;
  }
}
body:has(.clinic) .clinic .contents_ttl_area .contents_ttl_txt {
  font-size: 3.4285714286vw;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  left: 49%;
}
@media screen and (max-width: 768px) {
  body:has(.clinic) .clinic .contents_ttl_area .contents_ttl_txt {
    font-size: 3.7333333333vw;
    top: 47%;
  }
}

.clinic {
  z-index: 1;
  position: relative;
}
.clinic :where(.character_comment) .comment_txt {
  padding-top: 1.6428571429vw;
  padding-bottom: 1.6428571429vw;
}
@media screen and (max-width: 768px) {
  .clinic :where(.character_comment) .comment_txt {
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .clinic :where(.character_comment) .comment_txt::before {
    left: 2.6666666667vw;
  }
}
.clinic :where(.how_character) {
  margin-bottom: 4.8571428571vw;
}
@media screen and (max-width: 768px) {
  .clinic :where(.how_character) {
    margin-bottom: 32.8vw;
  }
}
.clinic :where(.how_character) img {
  width: 10.2142857143vw;
  height: 9.4285714286vw;
  top: -0.5vw;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  left: -13.0714285714vw;
}
@media screen and (max-width: 768px) {
  .clinic :where(.how_character) img {
    width: 23.4666666667vw;
    height: 23.4666666667vw;
    top: auto;
    bottom: -26.6666666667vw;
    left: 50%;
    z-index: 10;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media screen and (max-width: 768px) {
  .bg_cloud_wrapper .bg_cloud:nth-of-type(6),
  .bg_cloud_wrapper .bg_cloud:nth-of-type(7),
  .bg_cloud_wrapper .bg_cloud:nth-of-type(8) {
    display: none;
  }
}

.clinic_cmn_box {
  max-width: 76.5714285714vw;
  margin-left: auto;
  margin-right: auto;
  background: #fff;
  border: 0.1428571429vw solid #ff9b37;
  border-radius: 1.0714285714vw;
  padding: 3.5714285714vw 5.7142857143vw;
}
@media screen and (max-width: 768px) {
  .clinic_cmn_box {
    max-width: inherit;
    width: 90%;
    border: 0.5333333333vw solid #ff9b37;
    border-radius: 4vw;
    padding: 6.6666666667vw 5%;
  }
}
.clinic_cmn_box .item_txt {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.2714285714vw;
  letter-spacing: 0.03em;
  line-height: 1.777;
}
@media screen and (max-width: 768px) {
  .clinic_cmn_box .item_txt {
    font-size: 3.7333333333vw;
    letter-spacing: -0.01em;
  }
}

.clinic .ruby .rt {
  top: -1.1em;
}

/* ===========
doctor_sec
============= */
.doctor_sec {
  margin-bottom: 7.1428571429vw;
  padding-top: 5vw;
  padding-bottom: 5vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec {
    margin-bottom: 13.3333333333vw;
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
}
.doctor_sec .clinic_cmn_box {
  padding-top: 5vw;
  padding-bottom: 5vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .clinic_cmn_box {
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
}
.doctor_sec .doctor_message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 8vw;
  }
}
.doctor_sec .doctor_message:nth-child(1) {
  margin-bottom: 3.5714285714vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(1) {
    margin-bottom: 4.8vw;
  }
}
.doctor_sec .doctor_message:nth-child(1) .img_area {
  width: 27.96%;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(1) .img_area {
    width: 52vw;
    margin: 0 auto;
  }
}
.doctor_sec .doctor_message:nth-child(1) .img_area img {
  border-radius: 0.5714285714vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(1) .img_area img {
    border-radius: 2.1333333333vw;
  }
}
.doctor_sec .doctor_message:nth-child(1) .txt_area {
  width: 67.74%;
  margin-top: 1.0714285714vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(1) .txt_area {
    width: 100%;
    margin-top: 0;
  }
}
.doctor_sec .doctor_message:nth-child(2) {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-column-gap: 5.2857142857vw;
     -moz-column-gap: 5.2857142857vw;
          column-gap: 5.2857142857vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(2) {
    row-gap: 0;
  }
}
.doctor_sec .doctor_message:nth-child(2) .img_area {
  width: 21.45%;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(2) .img_area {
    width: 26.6666666667vw;
    margin-left: auto;
  }
}
.doctor_sec .doctor_message:nth-child(2) .txt_area {
  width: 67.43%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message:nth-child(2) .txt_area {
    width: 100%;
    row-gap: 2.6666666667vw;
    margin-bottom: -3.7333333333vw;
  }
}
.doctor_sec .doctor_message .txt_area .doctor_name {
  font-family: var(--zenmarugothic);
  color: #183251;
  font-weight: 700;
  letter-spacing: 0.3em;
  margin-bottom: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message .txt_area .doctor_name {
    margin-bottom: 4.2666666667vw;
    text-align: center;
  }
}
.doctor_sec .doctor_message .txt_area .doctor_name span:not([class]) {
  font-size: 2.8571428571vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message .txt_area .doctor_name span:not([class]) {
    font-size: 6.4vw;
  }
}
.doctor_sec .doctor_message .txt_area .doctor_name small {
  font-size: 2vw;
}
@media screen and (max-width: 768px) {
  .doctor_sec .doctor_message .txt_area .doctor_name small {
    font-size: 4.8vw;
  }
}

/* ===========
clinic_sec
============= */
.clinic_sec:not(:last-of-type) {
  margin-bottom: 5.7857142857vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec:not(:last-of-type) {
    margin-bottom: 10.6666666667vw;
  }
}
.clinic_sec .clinic_ttl {
  font-family: var(--zenmarugothic);
  font-weight: 700;
  font-size: 2.8571428571vw;
  color: #183251;
  padding-bottom: 2.5vw;
  margin-bottom: 2.8571428571vw;
  text-align: center;
  background-image: radial-gradient(circle, #ff9b37 0.1428571429vw, transparent 0.1428571429vw);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 0.7142857143vw 0.2857142857vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .clinic_ttl {
    background-image: radial-gradient(circle, #ff9b37 0.2666666667vw, transparent 0.2666666667vw);
    background-size: 1.6vw 0.5333333333vw;
    font-size: 5.3333333333vw;
    padding-bottom: 4.2666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
.clinic_sec .flex_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 3.1428571429vw;
     -moz-column-gap: 3.1428571429vw;
          column-gap: 3.1428571429vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 8vw;
  }
}
.clinic_sec .flex_area .info_area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  gap: 1.7142857143vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area {
    gap: 4vw;
  }
}
.clinic_sec .flex_area .info_area .address {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.7142857143vw;
  color: #183251;
  width: 100%;
  line-height: 1.458;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .address {
    font-size: 3.7333333333vw;
  }
}
.clinic_sec .flex_area .info_area .num {
  font-family: var(--zenmarugothic);
  font-weight: 700;
  font-size: 2vw;
  letter-spacing: 0.03em;
  position: relative;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .num {
    font-size: 4.8vw;
  }
}
.clinic_sec .flex_area .info_area .num::before {
  content: "";
  height: 1lh;
  aspect-ratio: 1;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
.clinic_sec .flex_area .info_area .num.tel {
  padding-left: 3.2107142857vw;
  color: #0493dc;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .num.tel {
    padding-left: 5.8666666667vw;
  }
}
.clinic_sec .flex_area .info_area .num.tel::before {
  width: 1.9464285714vw;
  background: url("../img/common/icon_tel.svg") no-repeat center/100%;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .num.tel::before {
    width: 4.8vw;
  }
}
.clinic_sec .flex_area .info_area .num.fax {
  padding-left: 3.5714285714vw;
  color: #FF9B37;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .num.fax {
    padding-left: 8vw;
  }
}
.clinic_sec .flex_area .info_area .num.fax::before {
  width: 2.3357142857vw;
  background: url("../img/common/icon_fax.svg") no-repeat center/100%;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .num.fax::before {
    width: 5.8666666667vw;
  }
}
.clinic_sec .flex_area .info_area .access {
  font-family: var(--zenmarugothic);
  font-weight: 700;
  font-size: 1.7142857143vw;
  color: #183251;
  position: relative;
  padding-left: 3.2178571429vw;
  line-height: 1.458;
  width: 100%;
  margin-bottom: 1.1428571429vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .access {
    padding-left: 5.8666666667vw;
    font-size: 3.7333333333vw;
    margin-bottom: 2.6666666667vw;
  }
}
.clinic_sec .flex_area .info_area .access::before {
  content: "";
  width: 1.8035714286vw;
  height: 2.2892857143vw;
  aspect-ratio: 1;
  display: inline-block;
  background: url("../img/common/icon_pin.svg") no-repeat center/100%;
  border-radius: 50vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .access::before {
    width: 4.2666666667vw;
    height: 5.3333333333vw;
  }
}
.clinic_sec .flex_area .info_area .btn_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.7142857143vw;
     -moz-column-gap: 0.7142857143vw;
          column-gap: 0.7142857143vw;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .btn_area {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.clinic_sec .flex_area .info_area .btn_area .btn {
  width: 17.9285714286vw;
  height: 4vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .btn_area .btn {
    width: 48%;
    height: 10.6666666667vw;
  }
}
.clinic_sec .flex_area .info_area .btn_area .btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  height: 100%;
  border-radius: 0.2857142857vw;
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  padding: 0 2.8642857143vw 0 2.65vw;
  position: relative;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .btn_area .btn a {
    font-size: 3.7333333333vw;
    padding: 0 5.3466666667vw 0 4.9466666667vw;
  }
}
.clinic_sec .flex_area .info_area .btn_area .btn a::before {
  content: "";
  width: 1.1428571429vw;
  height: 1.1428571429vw;
  aspect-ratio: 1;
  display: inline-block;
  background: url("../img/common/icon_blank.svg") no-repeat center/100% auto;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2.8642857143vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .info_area .btn_area .btn a::before {
    width: 3.2vw;
    height: 3.2vw;
    right: 2.6666666667vw;
  }
}
.clinic_sec .flex_area .info_area .btn_area .btn.blue a {
  background: #0493dc;
}
.clinic_sec .flex_area .info_area .btn_area .btn.orange a {
  background: #FF9B37;
}
.clinic_sec .flex_area .img_area {
  width: 36.62%;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .img_area {
    width: 52vw;
    margin: 0 auto;
  }
}
.clinic_sec .flex_area .img_area img {
  border-radius: 1.0714285714vw;
}
@media screen and (max-width: 768px) {
  .clinic_sec .flex_area .img_area img {
    border-radius: 4vw;
  }
}/*# sourceMappingURL=clinic.css.map */