/*fixed spacing*/
/*spacing*/
/*radius*/
/*line-height*/
body {
  font-family: "Roboto", "Hiragino Sans", "Meiryo", "Hiragino Kaku Gothic ProN", sans-serif;
  color: #393939;
  font-size: clamp(14px, 3vmin, 16px);
  width: 100%;
  margin: 0;
}

.site-body {
  padding: 0;
}

.site-body-container {
  width: 100%;
}

section {
  margin: 0 auto;
  padding: 5rem 0 2rem 0;
}
section:nth-child(7) {
  padding-bottom: 5rem;
  margin-bottom: 0;
}
section:nth-child(odd) {
  background-color: #fff9ee;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
}
section:nth-child(even) {
  background-color: white;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
}

.site-footer {
  border-top-color: #d5d6d2 !important;
}

.site-footer-title:after, .sub-section-title:after, h3:after {
  border-bottom: #FF9900 !important;
}

.btn-primary {
  background-color: #FF9900;
  border-color: #FF9900;
}

p, dt, dd {
  line-height: 1.6rem;
}

.pcbr {
  display: block;
}
@media screen and (max-width: 1024px) {
  .pcbr {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pcbr {
    display: none;
  }
}

.tbbr {
  display: none;
}
@media screen and (max-width: 1024px) {
  .tbbr {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .tbbr {
    display: none;
  }
}

.spbr {
  display: none;
}
@media screen and (max-width: 1024px) {
  .spbr {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .spbr {
    display: block;
  }
}

.entry-body h2, h3, h4 {
  text-align: center;
  font-weight: 600;
  line-height: 1.6;
}

.entry-body h2 {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: clamp(20px, 6vmin, 24px);
}
.entry-body h2::before, .entry-body h2::after {
  content: "";
  width: 100px;
  height: 3px;
  background-color: #FF9900;
}
@media screen and (max-width: 767px) {
  .entry-body h2::before, .entry-body h2::after {
    width: 65px;
  }
}
.entry-body h2::before {
  margin-right: 20px;
}
.entry-body h2::after {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .entry-body h2 {
    font-size: clamp(18px, 5vmin, 20px);
  }
}

h3 {
  width: 70%;
  font-size: clamp(18px, 5vmin, 20px);
  margin: 3rem auto;
  letter-spacing: 0.1rem;
  position: relative;
  padding: 16px;
  border-radius: 6px;
  border: 1.5px solid #FF9900;
  background-color: #ffffff;
  white-space: pre-wrap;
  word-break: keep-all;
}
@media screen and (max-width: 1024px) {
  h3 {
    width: 100%;
    font-size: clamp(16px, 4vmin, 18px);
  }
}
h3::before {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  height: 3px;
  width: 20px;
  background-color: #ffffff;
  content: "";
}
h3::after {
  position: absolute;
  top: 90%;
  left: 50%;
  transform: translateX(-50%);
  height: 20px;
  width: 1.5px;
  background-color: #FF9900;
  content: "";
  border: none;
}

h4 {
  background: none !important;
  white-space: pre-wrap;
  word-break: keep-all;
}

h4, h5 {
  font-size: clamp(16px, 4vmin, 18px);
  border: none;
}
h4::after, h5::after {
  border: none;
}

.page-header {
  background-color: #FF9900 !important;
}

.inquirybtn {
  background-color: #FF9900;
  color: white;
  border: 1px solid #FF9900;
  border-radius: 5px;
  font-weight: 600;
  padding: 1.5rem 8rem;
  font-size: clamp(16px, 4vmin, 18px);
  margin: 2rem auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  justify-content: center;
  box-shadow: 3px 3px 3px #d5d6d2;
  transition: transform 0.2s;
}
.inquirybtn:active {
  transform: scale(0.95);
}
.inquirybtn:hover {
  background-color: #ffad33;
  border: 1px solid #ffad33;
  cursor: pointer;
}
.inquirybtn a {
  color: white;
  text-align: center;
}
.inquirybtn i {
  font-size: clamp(16px, 4vmin, 18px);
  margin-left: 0.3rem;
}
@media screen and (max-width: 767px) {
  .inquirybtn {
    padding: 1rem 4rem;
    font-size: clamp(14px, 3vmin, 16px);
  }
}

.triangle {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: 0 10px;
  border-top: 4px solid #FFBF00;
  border-right: 4px solid #FFBF00;
  transform: rotate(45deg);
}

.page_top_btn {
  position: fixed;
  right: 2%;
  bottom: 3%;
  z-index: 99999;
  width: 30px;
  height: 30px;
  color: transparent;
  border: none;
  background: #ffad33;
  box-shadow: 0 0 0 1px #ffffff, 0 0 0 2px #FF9900;
  background-image: var(--ver_page_top_button_url);
  background-size: 50%;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.3s;
  text-decoration: none;
}

input[type=submit] {
  background-color: #FF9900;
}

@media screen and (max-width: 767px) {
  .site-header-logo {
    height: 10rem !important;
    background-image: url(https://office.perf-cond.jp/wp-content/uploads/2024/06/logo_kana_pc.png);
    background-repeat: no-repeat;
    background-size: 230px;
    background-position: center bottom 10px;
  }
}
.site-header-logo img {
  max-height: 6rem !important;
}
@media screen and (max-width: 767px) {
  .site-header-logo img {
    padding-top: 1rem;
  }
}

.device-mobile .global-nav-list > li {
  padding: 40px 2em;
}

body:not(.header_scrolled) .global-nav-list {
  background-image: url(https://office.perf-cond.jp/wp-content/uploads/2024/06/logo_kana_pc.png);
  background-repeat: no-repeat;
  background-size: 320px;
  background-position: 15px 20px;
  height: 6rem;
}
body:not(.header_scrolled) .global-nav-list li .global-nav-name {
  position: relative;
  top: 1.5rem;
}
@media screen and (max-width: 1024px) {
  body:not(.header_scrolled) .global-nav-list li .global-nav-name {
    top: 3rem;
  }
}

.site-header--layout--nav-float .site-header-container {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.header_scrolled .link-clinic_container {
  display: none !important;
}
.header_scrolled .site-header--layout--nav-float .site-header-container {
  padding: 0;
}

.vk-mobile-nav-menu-btn {
  border: none !important;
}

.logo-after {
  display: block;
  width: 200px;
  float: right;
}

.link-clinic_container {
  background-color: #fff9ee;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  font-weight: 600;
}
@media screen and (max-width: 1024px) {
  .link-clinic_container {
    flex-direction: column;
    height: 150px;
  }
}
@media screen and (max-width: 767px) {
  .link-clinic_container {
    height: 150px;
    display: none;
  }
}
.link-clinic_container .link-clinic_lead {
  display: flex;
  justify-content: center;
  align-items: center;
}
.link-clinic_container .link-clinic_lead p {
  margin-bottom: 0;
}
.link-clinic_container .link-clinic_lead img {
  width: 25px;
  margin-right: clamp(4px, 3vmin, 8px);
}
.link-clinic_container img {
  width: 40px;
  height: auto;
}
.link-clinic_container .link-clinic {
  border-radius: 8px;
  background-color: #FF9900;
  padding: 0.5rem 2rem;
  box-shadow: 2px 2px 2px #d5d6d2;
  margin-top: 0;
}
.link-clinic_container .link-clinic a {
  color: #ffffff;
  font-size: clamp(13px, 2vmin, 14px);
}

.link-clinic_container_wiget {
  background-color: #fff9ee;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  font-weight: 600;
  height: 150px;
  flex-direction: column;
  padding: 0 1rem;
}
.link-clinic_container_wiget .link-clinic_lead {
  display: flex;
  justify-content: center;
  align-items: center;
}
.link-clinic_container_wiget .link-clinic_lead p {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .link-clinic_container_wiget .link-clinic_lead p {
    font-size: clamp(13px, 2vmin, 14px);
  }
}
.link-clinic_container_wiget .link-clinic_lead img {
  width: 25px;
  margin-right: clamp(4px, 3vmin, 8px);
}
.link-clinic_container_wiget img {
  width: 40px;
  height: auto;
}
.link-clinic_container_wiget .link-clinic {
  border-radius: 8px;
  background-color: #FF9900;
  padding: 0.5rem 1rem;
  box-shadow: 2px 2px 2px #d5d6d2;
  margin-top: 0;
}
.link-clinic_container_wiget .link-clinic a {
  color: #ffffff;
  font-size: clamp(13px, 2vmin, 14px);
}

#global-nav > ul {
  width: 100%;
}
#global-nav > ul li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: none;
}
#global-nav > ul li:last-child {
  background-color: #ffffff;
}

.global-nav-list > li:before {
  border-bottom-color: #FF9900;
}

.swiper-slide h3 {
  line-height: 1.8rem;
}
@media screen and (max-width: 767px) {
  .swiper-slide h3 {
    line-height: 1.4rem;
  }
}

.service__h2 {
  justify-content: center;
}

.service__lead {
  display: flex;
  justify-content: space-around;
  padding: 0;
  margin-bottom: 32px;
}
@media screen and (max-width: 767px) {
  .service__lead {
    display: block;
    text-align: center;
  }
}
.service__lead img {
  width: 360px;
}
@media screen and (max-width: 767px) {
  .service__lead img {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.service__lead p {
  line-height: 1.8;
  margin-left: 1rem;
}
@media screen and (max-width: 767px) {
  .service__lead p {
    font-size: clamp(14px, 3vmin, 16px);
    display: inline-block;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .service__lead {
    display: block;
  }
}

.service__area {
  margin: 28px 0;
  padding-bottom: 20px;
}
.service__area .service__area-detail p {
  text-align: center;
  font-size: clamp(16px, 4vmin, 18px);
  line-height: 1.8;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .service__area .service__area-detail p {
    width: 100%;
    margin: 32px 0;
    text-align: left;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}
.service__area .service__area-detail p span {
  font-weight: lighter;
  font-size: clamp(13px, 2vmin, 14px);
}
.service__area .area-img {
  display: flex;
  justify-content: center;
  align-items: center;
}
.service__area .area-img img {
  width: 50%;
  box-shadow: 3px 3px 3px #d5d6d2;
}
@media screen and (max-width: 767px) {
  .service__area .area-img img {
    width: 100%;
  }
}

.service__merit {
  width: 100%;
}
.service__merit .service__merit-items {
  display: flex;
  justify-content: center;
  margin-top: 5rem;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .service__merit .service__merit-items {
    flex-wrap: wrap;
    gap: clamp(15px, 6vmin, 30px);
    padding: 0;
    margin-top: 3rem;
  }
}
.service__merit .service__merit-items li {
  margin: 0;
}
.service__merit .service__merit-items li dt {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-size: clamp(16px, 4vmin, 18px);
}
@media screen and (max-width: 767px) {
  .service__merit .service__merit-items li dt {
    font-size: clamp(13px, 2vmin, 14px);
  }
}
.service__merit .service__merit-items li dt img {
  width: 150px;
}
@media screen and (max-width: 767px) {
  .service__merit .service__merit-items li dt img {
    width: 100px;
  }
}
.service__merit .service__merit-items li dd {
  text-align: center;
  font-size: clamp(14px, 3vmin, 16px);
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .service__merit .service__merit-items li {
    padding-right: 20px;
  }
  .service__merit .service__merit-items li:nth-child(3) {
    margin: auto 1.5rem;
  }
}

.service__sellingpoint {
  width: 100%;
}
.service__sellingpoint .service__sellingpoint-items {
  display: flex;
  justify-content: center;
}
.service__sellingpoint .service__sellingpoint-items ul {
  font-size: clamp(18px, 5vmin, 20px);
  font-weight: 600;
  line-height: 3.2rem;
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-items ul {
    font-size: clamp(16px, 4vmin, 18px);
    padding-left: 0;
  }
}
.service__sellingpoint .service__sellingpoint-items ul li {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-items ul li {
    display: block;
  }
}
.service__sellingpoint .service__sellingpoint-items ul li span {
  color: #7A9D96;
  font-size: clamp(20px, 6vmin, 24px);
  text-align: center;
}
.service__sellingpoint .service__sellingpoint-items ul li span:first-child {
  position: relative;
  top: 0.5rem;
  right: 0.5rem;
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-items ul li span:first-child {
    top: -0.2rem;
    right: 0.2rem;
  }
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-items ul li span {
    font-size: clamp(16px, 4vmin, 18px);
  }
}
.service__sellingpoint .service__sellingpoint-items ul .emphasis {
  color: #FF9900;
  font-size: clamp(32px, 9vmin, 36px);
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-items ul .emphasis {
    font-size: clamp(18px, 5vmin, 20px);
  }
}
.service__sellingpoint .service__sellingpoint-equipment {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  gap: clamp(20px, 7vmin, 40px);
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-equipment {
    padding: 0;
    flex-wrap: wrap;
    gap: clamp(8px, 4vmin, 16px);
  }
}
.service__sellingpoint .service__sellingpoint-equipment dl {
  width: 24%;
}
@media screen and (max-width: 767px) {
  .service__sellingpoint .service__sellingpoint-equipment dl {
    width: 45%;
  }
}
.service__sellingpoint .service__sellingpoint-equipment dd {
  font-size: clamp(13px, 2vmin, 14px);
  text-align: center;
}
.service__sellingpoint .service__sellingpoint-equipment .equipment-name {
  font-weight: 700;
}
.service__sellingpoint .service__sellingpoint-equipment .equipment-caption {
  text-align: left;
  font-size: clamp(13px, 2vmin, 14px);
  display: flex;
  justify-content: center;
  line-height: 1.6;
}

.service__detail {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
}

.service__benefit {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .service__benefit h3 {
    margin: 4rem auto 0 auto;
  }
}
.service__benefit .service__benefit-items {
  width: 100%;
  display: flex;
  justify-content: center;
}
.service__benefit .service__benefit-items ul {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .service__benefit .service__benefit-items ul {
    display: block;
    padding: 0;
    margin-top: 32px;
  }
}
.service__benefit .service__benefit-items li {
  flex: 1;
  flex-basis: 30%;
  background-color: #ffffff;
  border-radius: 6px;
  padding: 20px 32px;
  word-break: break-all;
  overflow-wrap: anywhere;
  box-shadow: 3px 3px 3px #d5d6d2;
}
@media screen and (max-width: 767px) {
  .service__benefit .service__benefit-items li {
    margin: 20px auto;
  }
}
.service__benefit .service__benefit-items li dt {
  font-size: clamp(16px, 4vmin, 18px);
  margin: 1.5rem auto;
  text-align: center;
  color: #FF9900;
}
.service__benefit .service__benefit-items li dd {
  font-size: clamp(13px, 2vmin, 14px);
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .service__benefit .service__benefit-items li dd {
    text-align: left;
  }
}
.service__benefit .service__benefit-items .service__benefit-benefit01 {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/03/benefit01.png);
  background-repeat: no-repeat;
  background-size: auto 50px;
  background-position: 82% 12%;
}
.service__benefit .service__benefit-items .service__benefit-benefit02 {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/03/benefit02.png);
  background-repeat: no-repeat;
  background-size: auto 50px;
  background-position: 82% 12%;
}
.service__benefit .service__benefit-items .service__benefit-benefit03 {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/03/benefit03.png);
  background-repeat: no-repeat;
  background-size: auto 50px;
  background-position: 82% 12%;
}

.service__solution {
  width: 100%;
}
.service__solution .service__solution-check {
  margin: 32px auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(30px, 8vmin, 50px);
}
.service__solution .service__solution-check img {
  width: 100px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .service__solution .service__solution-check img {
    width: 70px;
  }
}
@media screen and (max-width: 767px) {
  .service__solution .service__solution-check {
    width: 100%;
  }
}
.service__solution .service__solution-check ul {
  padding: 0;
  margin-bottom: 0;
  list-style-type: disc;
}
.service__solution .service__solution-check ul li {
  margin: 0 auto;
  line-height: 2;
  font-weight: 600;
  font-size: clamp(18px, 5vmin, 20px);
  text-align: left;
}
@media screen and (max-width: 767px) {
  .service__solution .service__solution-check ul li {
    width: 100%;
    font-size: clamp(14px, 3vmin, 16px);
    line-height: 1.8;
    margin-top: 12px;
    margin-left: 12px;
  }
}
.service__solution .triangle-container {
  margin-top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.service__solution .triangle-container .triangle {
  position: relative;
  bottom: 1rem;
  transform: rotate(135deg);
  border-top: 4px solid #FF9900;
  border-right: 4px solid #FF9900;
  width: 22px;
  height: 22px;
}
.service__solution h4 {
  font-size: clamp(18px, 5vmin, 20px);
}
@media screen and (max-width: 767px) {
  .service__solution h4 {
    font-size: clamp(14px, 3vmin, 16px);
  }
}

#price .price__lead p {
  text-align: center;
  font-weight: 600;
  font-size: clamp(16px, 4vmin, 18px);
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  #price .price__lead p {
    text-align: left;
    font-size: clamp(14px, 3vmin, 16px);
    margin-top: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.basiccharge_info,
.servicecontent_info {
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .basiccharge_info .basiccharge_detail,
  .basiccharge_info .servicecontent_detail,
  .servicecontent_info .basiccharge_detail,
  .servicecontent_info .servicecontent_detail {
    display: block;
  }
}
.basiccharge_info .basiccharge_detail dl,
.basiccharge_info .servicecontent_detail dl,
.servicecontent_info .basiccharge_detail dl,
.servicecontent_info .servicecontent_detail dl {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}
@media screen and (max-width: 1024px) {
  .basiccharge_info .basiccharge_detail dl,
  .basiccharge_info .servicecontent_detail dl,
  .servicecontent_info .basiccharge_detail dl,
  .servicecontent_info .servicecontent_detail dl {
    display: block;
    width: 100%;
    margin: 0 auto 28px auto;
  }
}
@media screen and (max-width: 767px) {
  .basiccharge_info .basiccharge_detail dl,
  .basiccharge_info .servicecontent_detail dl,
  .servicecontent_info .basiccharge_detail dl,
  .servicecontent_info .servicecontent_detail dl {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .basiccharge_info .basiccharge_detail dl:nth-child(3) dd,
  .basiccharge_info .servicecontent_detail dl:nth-child(3) dd,
  .servicecontent_info .basiccharge_detail dl:nth-child(3) dd,
  .servicecontent_info .servicecontent_detail dl:nth-child(3) dd {
    margin-top: 1rem;
  }
}
.basiccharge_info .basiccharge_detail dt,
.basiccharge_info .servicecontent_detail dt,
.servicecontent_info .basiccharge_detail dt,
.servicecontent_info .servicecontent_detail dt {
  background-color: #a3a59d;
  color: #ffffff;
  font-weight: 600;
  width: 30%;
  padding: 0.3rem 1rem;
  margin-bottom: 0;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .basiccharge_info .basiccharge_detail dt,
  .basiccharge_info .servicecontent_detail dt,
  .servicecontent_info .basiccharge_detail dt,
  .servicecontent_info .servicecontent_detail dt {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.basiccharge_info .basiccharge_detail dd,
.basiccharge_info .servicecontent_detail dd,
.servicecontent_info .basiccharge_detail dd,
.servicecontent_info .servicecontent_detail dd {
  width: 45%;
  text-align: left;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .basiccharge_info .basiccharge_detail dd,
  .basiccharge_info .servicecontent_detail dd,
  .servicecontent_info .basiccharge_detail dd,
  .servicecontent_info .servicecontent_detail dd {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
}
.basiccharge_info .basiccharge_detail dd ul,
.basiccharge_info .servicecontent_detail dd ul,
.servicecontent_info .basiccharge_detail dd ul,
.servicecontent_info .servicecontent_detail dd ul {
  padding-left: 0;
  margin-bottom: 0;
}
.basiccharge_info .basiccharge_detail dd ul li,
.basiccharge_info .servicecontent_detail dd ul li,
.servicecontent_info .basiccharge_detail dd ul li,
.servicecontent_info .servicecontent_detail dd ul li {
  margin-top: 0;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .basiccharge_info .basiccharge_detail,
  .basiccharge_info .servicecontent_detail,
  .servicecontent_info .basiccharge_detail,
  .servicecontent_info .servicecontent_detail {
    width: 100%;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .basiccharge_info .basiccharge_detail,
  .basiccharge_info .servicecontent_detail,
  .servicecontent_info .basiccharge_detail,
  .servicecontent_info .servicecontent_detail {
    padding-bottom: 0;
  }
}

.price__plan-regular .price__basiccharge {
  margin: 5rem auto;
}
.price__plan-regular .basiccharge_info {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .price__plan-regular .basiccharge_info {
    margin-bottom: 0;
  }
}
.price__plan-regular .basiccharge_detail dt, .price__plan-regular .basiccharge_detail dd {
  height: 5rem;
}
@media screen and (max-width: 1024px) {
  .price__plan-regular .basiccharge_detail dt, .price__plan-regular .basiccharge_detail dd {
    height: 4rem;
  }
}
.price__plan-regular .initial-cost dd,
.price__plan-regular .contract-period dd {
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .price__plan-regular .initial-cost dd,
  .price__plan-regular .contract-period dd {
    padding-top: 2rem;
    line-height: 1.8;
    height: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .price__plan-regular .initial-cost dd,
  .price__plan-regular .contract-period dd {
    padding-top: 2rem;
    line-height: 1.8;
    height: 5rem;
  }
}
.price__plan-regular .initial-cost dd span,
.price__plan-regular .contract-period dd span {
  font-weight: 800;
  color: #ff4000;
  margin-left: 0.5rem;
}
.price__plan-regular .initial-cost dd span span,
.price__plan-regular .contract-period dd span span {
  font-size: clamp(20px, 6vmin, 24px);
  margin-left: 0.2rem;
}
.price__plan-regular .initial-cost dd {
  color: #ff4000;
}
@media screen and (max-width: 767px) {
  .price__plan-regular .initial-cost dd {
    display: block;
    text-align: center;
    padding-top: 0.8rem;
  }
}
.price__plan-regular .initial-cost dd .cost {
  font-size: clamp(24px, 7vmin, 28px);
}
.price__plan-regular .initial-cost dd .cost_note {
  font-weight: 400;
  color: #393939;
  position: relative;
  top: 0.2rem;
}
@media screen and (max-width: 767px) {
  .price__plan-regular .travel-cost dd {
    margin-top: 0.5rem;
  }
}

.price__servicecontent {
  margin: 32px auto;
}
.price__servicecontent p {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .price__servicecontent p {
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.price__servicecontent .servicecontent_detail dt, .price__servicecontent .servicecontent_detail dd {
  height: 5rem;
}
@media screen and (max-width: 1024px) {
  .price__servicecontent .servicecontent_detail dt, .price__servicecontent .servicecontent_detail dd {
    height: 4rem;
  }
}
@media screen and (max-width: 1024px) {
  .price__servicecontent .servicecontent_detail dt {
    height: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .price__servicecontent .servicecontent_detail dd {
    height: 5rem;
  }
}
@media screen and (max-width: 1024px) {
  .price__servicecontent .servicecontent_detail .visit-time dd {
    height: 8rem;
  }
}
.price__servicecontent .servicecontent_detail .visit-time dd ul li {
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0;
}
.price__servicecontent .servicecontent_detail .visit-time dd ul li:nth-child(2), .price__servicecontent .servicecontent_detail .visit-time dd ul li:nth-child(3) {
  font-size: clamp(13px, 2vmin, 14px);
}
.price__servicecontent .servicecontent_detail .visit-time dd ul li:nth-child(2) {
  margin-top: 0.5rem;
}
.price__servicecontent .servicecontent_detail .visit-time dd ul li:nth-child(3) {
  padding-left: 1.8rem;
}
.price__servicecontent .servicecontent_notice {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}
.price__servicecontent .servicecontent_notice ul {
  background-color: #F8F8F8;
  border-radius: 4px;
  padding: 20px 24px;
}
@media screen and (max-width: 1024px) {
  .price__servicecontent .servicecontent_notice ul {
    width: 100%;
  }
}
.price__servicecontent .servicecontent_notice ul li {
  font-size: clamp(14px, 3vmin, 16px);
  line-height: 1.6;
  text-indent: -1.5rem;
  padding-left: 1.5rem;
}
.price__servicecontent .servicecontent_notice ul li i {
  padding-left: 1rem;
}

.basiccharge_table,
.dispatch-cost_table {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .basiccharge_table,
  .dispatch-cost_table {
    width: 100%;
    white-space: nowrap;
    overflow-y: scroll;
  }
}
.basiccharge_table table,
.dispatch-cost_table table {
  background-color: #ffffff;
  border: none;
  text-align: center;
  vertical-align: middle;
  box-shadow: 3px 3px 3px #d5d6d2;
}
.basiccharge_table tbody,
.dispatch-cost_table tbody {
  width: 100%;
}
.basiccharge_table tr,
.dispatch-cost_table tr {
  border: 1px solid #F8F8F8;
}
.basiccharge_table tr:nth-child(odd),
.dispatch-cost_table tr:nth-child(odd) {
  background-color: #f5f6f5;
}
.basiccharge_table tr:nth-child(even),
.dispatch-cost_table tr:nth-child(even) {
  background-color: #ffffff;
}
.basiccharge_table td,
.dispatch-cost_table td {
  font-size: clamp(14px, 3vmin, 16px);
  line-height: 1.6;
  border: none;
}
.basiccharge_table .label-fix01,
.dispatch-cost_table .label-fix01 {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  background: #FF9900;
}
.basiccharge_table .label-fix01::before,
.dispatch-cost_table .label-fix01::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
.basiccharge_table .table_heading td,
.dispatch-cost_table .table_heading td {
  color: #ffffff;
  font-weight: 600;
  background: #FF9900;
  border: 1px solid #F8F8F8;
}
.basiccharge_table .table_detail td,
.dispatch-cost_table .table_detail td {
  text-align: center;
  vertical-align: middle;
}
.basiccharge_table .table_detail .table_plan,
.dispatch-cost_table .table_detail .table_plan {
  text-align: center;
  vertical-align: middle;
  color: #ffffff;
  font-weight: 600;
  background: #FF9900;
  border: 1px solid #F8F8F8;
  width: 28%;
  padding: 0;
  white-space: pre-wrap;
  word-break: keep-all;
}
@media screen and (max-width: 1024px) {
  .basiccharge_table .table_detail .table_plan,
  .dispatch-cost_table .table_detail .table_plan {
    width: 25%;
    font-size: clamp(13px, 2vmin, 14px);
  }
}
@media screen and (max-width: 767px) {
  .basiccharge_table .table_detail .table_plan,
  .dispatch-cost_table .table_detail .table_plan {
    padding: 0 2rem;
  }
}
.basiccharge_table .table_menue,
.basiccharge_table .table_price,
.dispatch-cost_table .table_menue,
.dispatch-cost_table .table_price {
  border-right: 1px solid #eeeeed;
}
.basiccharge_table .table_price,
.dispatch-cost_table .table_price {
  font-weight: 600;
}
.basiccharge_table .table_price span,
.dispatch-cost_table .table_price span {
  font-weight: 400;
  font-size: clamp(13px, 2vmin, 14px);
}

.dispatch-cost_table {
  width: 83%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .dispatch-cost_table {
    width: 100%;
    margin-left: 0;
  }
}

.price__basiccharge .table_note {
  position: relative;
  bottom: 2rem;
}
.price__basiccharge .table_note span {
  color: #ff4000;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
@media screen and (max-width: 767px) {
  .price__basiccharge .table_note {
    padding-left: 0;
    padding-left: 1em;
    text-indent: -1em;
  }
}

.price__plan-spot .table_note {
  position: relative;
  left: 5rem;
  top: 0.5rem;
  margin-bottom: 20px;
}
.price__plan-spot .table_note span {
  color: #ff4000;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
@media screen and (max-width: 767px) {
  .price__plan-spot .table_note {
    position: static;
    padding-left: 1rem;
  }
}

.price__plan-spot {
  margin-bottom: 5rem;
}
.price__plan-spot .price__lead {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .price__plan-spot .price__lead p {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .price__plan-spot .price__lead p {
    margin-top: 0 !important;
  }
}
.price__plan-spot .basiccharge_detail,
.price__plan-spot .servicecontent_info {
  width: 85%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .price__plan-spot .basiccharge_detail,
  .price__plan-spot .servicecontent_info {
    width: 100%;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .price__plan-spot .basiccharge_detail,
  .price__plan-spot .servicecontent_info {
    padding-bottom: 0;
  }
}
.price__plan-spot .basiccharge_detail dt, .price__plan-spot .basiccharge_detail dd,
.price__plan-spot .servicecontent_detail dt,
.price__plan-spot .servicecontent_detail dd {
  height: 6rem;
  width: 40%;
}
@media screen and (max-width: 1024px) {
  .price__plan-spot .basiccharge_detail dt, .price__plan-spot .basiccharge_detail dd,
  .price__plan-spot .servicecontent_detail dt,
  .price__plan-spot .servicecontent_detail dd {
    height: 4rem;
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .price__plan-spot .basiccharge_detail dd,
  .price__plan-spot .servicecontent_detail dd {
    height: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .price__plan-spot .basiccharge_detail {
    padding-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .price__plan-spot .initial-cost dd {
    height: 1rem;
    margin-top: 1rem;
  }
}

.price__cases-pc {
  margin: 24px auto 5rem auto;
}
@media screen and (max-width: 767px) {
  .price__cases-pc {
    display: none;
  }
}

.case01,
.case02 {
  width: 100%;
  height: auto;
  background-color: #F8F8F8;
  border-radius: 8px;
  box-shadow: 3px 3px 3px #d5d6d2;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 24px;
  padding: 20px;
}
.case01 .triangle-container .triangle,
.case02 .triangle-container .triangle {
  position: relative;
  top: 50%;
  right: 20%;
  padding: 0;
  border-color: #7A9D96;
}

.price__cases-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .price__cases-sp {
    display: block;
  }
}
.price__cases-sp .triangle {
  display: flex;
  justify-content: center;
  position: relative;
  bottom: 50%;
  transform: rotate(135deg);
  margin: 1rem auto;
  border-color: #7A9D96;
}

.cases-details {
  line-height: 3;
  box-shadow: 3px 3px 3px #d5d6d2;
  color: #393939;
  width: 100%;
  margin: 50px auto;
}
.cases-details input[type=checkbox] {
  display: none;
}
.cases-details__summary {
  position: relative;
  display: block;
  cursor: pointer;
  background-color: #F8F8F8;
  border: 1px solid #F8F8F8;
  margin: 20px 0 0;
  padding: 10px 40px 10px 16px;
}
.cases-details__summary:first-child {
  margin-top: 0;
}
.cases-details__summary::before {
  display: block;
  content: "";
  box-sizing: border-box;
  position: absolute;
  top: calc(50% - 6px);
  right: 16px;
  width: 6px;
  height: 6px;
  border: 6px solid transparent;
  border-left: 6px solid #F8F8F8;
  transition: all 0.4s ease-out;
  transform-origin: 3px 6px;
  transform: rotate(90deg);
}
input[type=checkbox]:checked + .cases-details__summary::before {
  transform: rotate(-90deg);
}
.cases-details__content {
  overflow: hidden;
  transition: line-height 0.4s ease-out 0s, padding 0.4s ease-out 0s, opacity 0.6s 0.3s;
  line-height: 0;
  border: 2px solid #F8F8F8;
  background-color: #F8F8F8;
  border-top: none;
  opacity: 0;
  margin: 0;
  padding: 0 16px;
  height: 0;
}
input[type=checkbox]:checked + .cases-details__summary + .cases-details__content {
  line-height: 2;
  opacity: 1;
  padding: 16px;
  height: 100%;
}

.cases-details__summary {
  text-align: center;
  font-weight: 600;
}

.cases-company {
  width: 25%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.cases-company > div {
  display: flex;
  justify-content: center;
  align-items: center;
}
.cases-company > div img {
  width: 80%;
}
.cases-company h4 {
  color: #00303F;
  margin: 0;
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .cases-company {
    width: 100%;
  }
}

.cases-before, .cases-after {
  width: 45%;
}
.cases-before dl, .cases-after dl {
  margin: 0;
}
.cases-before dt, .cases-after dt {
  margin-bottom: 1rem;
}
.cases-before dd, .cases-after dd {
  margin-bottom: 0.3rem;
}
@media screen and (max-width: 767px) {
  .cases-before, .cases-after {
    width: 100%;
  }
}
.cases-before dd, .cases-after dd {
  padding-left: 1em;
  text-indent: -1em;
  font-size: clamp(14px, 3vmin, 16px);
}

.cases-before dt {
  width: 50%;
  border-radius: 50px;
  background-color: #7A9D96;
  color: #ffffff;
  text-align: center;
  padding: 0 16px;
}
@media screen and (max-width: 1024px) {
  .cases-before dt {
    width: 100%;
  }
}

.cases-after dt {
  width: 50%;
  border-radius: 50px;
  background-color: #FF9900;
  color: #ffffff;
  text-align: center;
  padding: 0 16px;
}
@media screen and (max-width: 1024px) {
  .cases-after dt {
    width: 100%;
  }
}

.cases-merit {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.cases-merit-circle {
  height: 200px;
  width: 200px;
  border: 1px solid #FF9900;
  background-color: #FF9900;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
.cases-merit-circle dl {
  margin-top: 1.5rem;
  padding: 0;
}
.cases-merit-circle dl dt {
  width: 100%;
  margin: 0.5rem auto;
  padding: 0 1rem;
  border: 1px solid #ffffff;
  background-color: #ffffff;
  border-radius: 50px;
  text-align: center;
  font-size: clamp(13px, 2vmin, 14px);
  color: #FF9900;
}
.cases-merit-circle dl dd {
  text-align: center;
  color: #ffffff;
}

.price__samples {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .price__samples {
    margin: 32px auto;
  }
}
@media screen and (max-width: 767px) {
  .price__samples h3 {
    margin: 0 auto 3rem auto;
  }
}
.price__samples .price__lead {
  text-align: center;
  font-weight: 600;
}

.plan_samples {
  display: flex;
  justify-content: space-around;
  gap: 20px;
}
@media screen and (max-width: 1024px) {
  .plan_samples {
    display: block;
  }
}
.plan_samples table {
  text-align: center;
  box-shadow: 3px 3px 3px #d5d6d2;
}
@media screen and (max-width: 1024px) {
  .plan_samples table {
    margin: auto auto 20px auto;
    width: 70%;
  }
}
@media screen and (max-width: 767px) {
  .plan_samples table {
    width: 100%;
  }
}
.plan_samples table td {
  vertical-align: middle;
  line-height: 1.4;
  font-size: clamp(14px, 3vmin, 16px);
  border: 2px solid #ffffff;
  padding: 0.5rem 0;
}
.plan_samples table .sample-heading td {
  text-align: center;
  font-weight: 600;
}
.plan_samples table .sample-detail:nth-child(odd) {
  background-color: #F8F8F8;
}
.plan_samples table .sample-detail:nth-child(even) {
  background-color: #ffffff;
}
.plan_samples table .sample-detail span {
  font-size: clamp(11px, 1vmin, 13px);
}

.plan_sample01 {
  flex: 1;
}
.plan_sample01 .sample-heading td {
  background-color: #FF9900;
  color: #ffffff;
}

.plan_sample02 {
  flex: 1;
}
.plan_sample02 .sample-heading td {
  background-color: #FF9900;
  color: #ffffff;
}

.plan_sample03 {
  flex: 1;
}
.plan_sample03 .sample-heading td {
  background-color: #FF9900;
  color: #ffffff;
}

.price__comment {
  margin-bottom: 2rem;
  width: 100%;
}
.price__comment p {
  font-weight: 600;
  font-size: clamp(18px, 5vmin, 20px);
  line-height: 2.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .price__comment p {
    font-size: clamp(16px, 4vmin, 18px);
    line-height: 1.8;
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.price__voice {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .price__voice {
    margin-bottom: 0;
  }
}
.price__voice h5 {
  font-size: clamp(18px, 5vmin, 20px);
  text-align: left;
}
.price__voice h5 span {
  font-size: clamp(20px, 6vmin, 24px);
  color: #FF9900;
}
@media screen and (max-width: 767px) {
  .price__voice h5 {
    text-align: center;
    font-size: clamp(16px, 4vmin, 18px);
  }
}

.voice_container {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin: 3rem auto;
}
@media screen and (max-width: 767px) {
  .voice_container {
    display: block;
    margin: 0 auto;
  }
}
.voice_container .voice_graph {
  width: 90%;
}
@media screen and (max-width: 767px) {
  .voice_container .voice_graph {
    width: 100%;
  }
}
.voice_container .voice_graph p {
  font-weight: 600;
  margin: 3rem auto 0 auto;
  display: flex;
  justify-content: center;
}
.voice_container .voice_impressions {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.voice_container .voice_impressions ul {
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .voice_container .voice_impressions ul {
    margin: 3rem auto;
    padding: 0;
  }
}
.voice_container .voice_impressions ul li {
  padding-left: 4.5rem;
  margin-bottom: 1rem;
  background: left top no-repeat;
  background-size: 55px auto;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .voice_container .voice_impressions ul li {
    background-size: 40px auto;
  }
}
.voice_container .voice_impressions ul li:nth-child(1) {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/05/voice_icon01.png);
}
@media screen and (max-width: 767px) {
  .voice_container .voice_impressions ul li:nth-child(1) {
    background-position: 0 1rem;
  }
}
.voice_container .voice_impressions ul li:nth-child(2) {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/05/voice_icon02.png);
}
.voice_container .voice_impressions ul li:nth-child(3) {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/05/voice_icon03.png);
}
.voice_container .voice_impressions ul li:nth-child(4) {
  background-image: url(https://perf-cond.sakura.ne.jp/test/wp-content/uploads/2024/05/voice_icon04.png);
}
@media screen and (max-width: 767px) {
  .voice_container .voice_impressions ul li:nth-child(4) {
    background-position: 0 1rem;
  }
}
.voice_container .voice_impressions ul li p {
  background: #fff2cc;
  border-radius: 4px;
  padding: 1rem 2rem;
  margin: 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .voice_container .voice_impressions ul li p {
    font-size: clamp(14px, 3vmin, 16px);
    padding: 1rem;
  }
}
.voice_container .voice_impressions ul li p::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent #fff2cc transparent transparent;
  border-width: 15px 30px 15px 0px;
  position: absolute;
  left: -15px;
  bottom: calc(50% - 15px);
}

.price__comparison {
  margin: clamp(15px, 6vmin, 30px) auto;
}
@media screen and (max-width: 767px) {
  .price__comparison {
    margin: 0 auto clamp(15px, 6vmin, 30px) auto;
  }
}
@media screen and (max-width: 767px) {
  .price__comparison h3 {
    margin: 0 auto 3rem auto;
  }
}

@media screen and (max-width: 767px) {
  .comparison__table {
    width: 100%;
    white-space: nowrap;
    overflow-y: scroll;
    margin-top: 32px;
  }
}
.comparison__table table {
  vertical-align: middle;
  width: 100%;
  border-collapse: separate;
}
.comparison__table table td {
  vertical-align: middle;
  text-align: center;
  height: 5rem;
  width: 16%;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .comparison__table table td {
    padding: auto 1rem;
  }
}
.comparison__table table td span {
  font-size: clamp(11px, 1vmin, 13px);
}
.comparison__table table td:first-child {
  font-weight: 600;
}
.comparison__table .comparison__heading {
  background-color: #867666;
  color: #ffffff;
}
.comparison__table .comparison__heading .label-fix01 {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  background: #867666;
}
.comparison__table .comparison__heading .label-fix01::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
.comparison__table .comparison__heading th {
  text-align: center;
  line-height: 2;
}
.comparison__table .cf-a, .comparison__table .cf-b, .comparison__table .cf-c {
  background-color: #F8F8F8;
}
.comparison__table .cf-a .label-fix01, .comparison__table .cf-b .label-fix01, .comparison__table .cf-c .label-fix01 {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  background: #F8F8F8;
}
.comparison__table .cf-a .label-fix01::before, .comparison__table .cf-b .label-fix01::before, .comparison__table .cf-c .label-fix01::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
.comparison__table .cf-opc {
  font-weight: 600;
  color: #FF9900;
  background-color: #fff9e6;
}
.comparison__table .cf-opc .label-fix01 {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  background: #fff9e6;
}
.comparison__table .cf-opc .label-fix01::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .comparison__table .cf-opc .label-fix01 {
    font-size: clamp(11px, 1vmin, 13px);
  }
}
@media screen and (max-width: 767px) {
  .comparison__table .cf-opc .label-fix01 {
    font-size: clamp(14px, 3vmin, 16px);
  }
}
.comparison__table .cf-opc td {
  font-size: clamp(14px, 3vmin, 16px);
}
@media screen and (max-width: 767px) {
  .comparison__table .cf-opc td {
    padding: 0 1rem;
  }
}

.flow__container {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  display: flex;
}
@media screen and (max-width: 767px) {
  .flow__container {
    display: block;
  }
}
.flow__container .triangle {
  display: none;
}
@media screen and (max-width: 767px) {
  .flow__container .triangle {
    display: block;
    position: relative;
    top: 49rem;
    right: 48%;
    transform: rotate(135deg);
  }
}

.flow {
  display: flex;
  justify-content: center;
  gap: 32px;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1024px) {
  .flow {
    gap: 16px;
  }
}
@media screen and (max-width: 767px) {
  .flow {
    display: block;
    width: 100%;
    padding-left: 0;
  }
}
.flow li {
  display: flex;
  flex-direction: column;
  width: 22%;
  height: auto;
}
@media screen and (max-width: 1024px) {
  .flow li {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .flow li {
    margin-bottom: 3rem;
  }
}
.flow li dl {
  background-color: #F8F8F8;
  box-shadow: 3px 3px 3px #d5d6d2;
  border-radius: 6px;
  padding: 16px;
}
@media screen and (max-width: 1024px) {
  .flow li dl {
    padding: 12px;
  }
}
@media screen and (max-width: 767px) {
  .flow li dl {
    text-align: center;
  }
}
.flow li dt {
  font-size: clamp(16px, 4vmin, 18px);
  font-weight: 600;
  color: #00303F;
  margin-bottom: 1rem;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .flow li dt {
    font-size: clamp(14px, 3vmin, 16px);
  }
}
@media screen and (max-width: 767px) {
  .flow li dt {
    font-size: clamp(16px, 4vmin, 18px);
  }
}
@media screen and (max-width: 1024px) {
  .flow li dd {
    text-align: left;
    font-size: clamp(14px, 3vmin, 16px);
  }
}
@media screen and (max-width: 767px) {
  .flow li dd {
    text-align: left;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}
.flow li dd span {
  font-size: clamp(13px, 2vmin, 14px);
}

.flow > li .icon {
  font-size: clamp(16px, 4vmin, 18px);
  line-height: 50px;
  width: 50px;
  color: #fff;
  background: #ffad33;
  margin: 0 auto 20px;
  display: block;
  border-radius: 50%;
  text-align: center;
  position: relative;
  letter-spacing: 2px;
}
.flow > li .icon:before {
  content: "";
  border: solid transparent;
  border-width: 8px;
  border-top-color: #ffad33;
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  transform: translateX(-50%);
}

.flow > li:not(:last-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #ffc266;
  border-right: 4px solid #ffc266;
  position: relative;
  top: calc(50% - 14px);
  left: 112%;
  transform: rotate(45deg);
}
@media screen and (max-width: 1024px) {
  .flow > li:not(:last-child) dl::before {
    display: none;
  }
}

.flow .agreement {
  font-size: clamp(14px, 3vmin, 16px);
  color: #00303F;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-self: center;
  vertical-align: middle;
  margin-top: 4rem;
}
.flow .agreement img {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .flow .agreement img {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .flow .agreement {
    width: 100%;
    right: 0;
    bottom: 2rem;
    font-size: clamp(16px, 4vmin, 18px);
  }
}

.flow__image {
  display: flex;
  justify-content: center;
  gap: clamp(10px, 5vmin, 20px);
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .flow__image {
    flex-wrap: wrap;
  }
}
.flow__image img {
  width: 22%;
}
@media screen and (max-width: 767px) {
  .flow__image img {
    width: 45%;
  }
}

.flow_notice ul {
  text-align: right;
  font-size: clamp(13px, 2vmin, 14px);
}
@media screen and (max-width: 767px) {
  .flow_notice ul {
    text-align: left;
    font-size: clamp(11px, 1vmin, 13px);
    white-space: nowrap;
  }
}

@media screen and (max-width: 767px) {
  .flow__detail h3 {
    margin: 0 auto 3rem auto;
  }
}
@media screen and (max-width: 767px) {
  .flow__detail h4 {
    margin-top: 32px;
  }
}

.flow__detail p {
  text-align: left;
  line-height: 1.8;
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
}

#faq {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  #faq {
    padding-bottom: 0;
  }
}

.details {
  line-height: 2;
  color: #393939;
  font-weight: 600;
  width: 80%;
  margin: 50px auto 60px;
}
@media screen and (max-width: 767px) {
  .details {
    width: 100%;
    font-size: clamp(13px, 2vmin, 14px);
  }
}
.details input[type=checkbox] {
  display: none;
}
.details__summary {
  position: relative;
  display: block;
  cursor: pointer;
  background-color: #fff9ee;
  border-left: 3px solid #FFBF00;
  margin: 20px 0 0;
  padding: 10px 40px 1rem 2rem;
  text-indent: -1.5rem;
}
.details__summary:first-child {
  margin-top: 0;
}
.details__summary::before {
  display: block;
  content: "";
  box-sizing: border-box;
  position: absolute;
  top: calc(50% - 6px);
  right: 16px;
  width: 6px;
  height: 6px;
  border: 6px solid transparent;
  border-left: 6px solid #FFBF00;
  transition: all 0.3s ease-out;
  transform-origin: 3px 6px;
  transform: rotate(90deg);
}
input[type=checkbox]:checked + .details__summary::before {
  transform: rotate(-90deg);
}
.details__content {
  overflow: hidden;
  transition: line-height 0.4s ease-out 0s, padding 0.4s ease-out 0s, opacity 0.6s 0.3s;
  line-height: 0;
  border-top: none;
  opacity: 0;
  margin: 0 auto auto 24px;
  padding: 0 10px;
  text-indent: -1.7rem;
}
@media screen and (max-width: 767px) {
  .details__content {
    margin: 0 auto auto 8px;
  }
}
input[type=checkbox]:checked + .details__summary + .details__content {
  line-height: 2;
  opacity: 1;
  padding: 10px 30px;
}

#topics {
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  #topics {
    padding-left: 0;
  }
}

.topics__container ul {
  vertical-align: middle;
}
.topics__container ul img {
  width: 100px;
  margin-right: 1rem;
}
.topics__container ul li {
  border-bottom: 1px solid #d5d6d2;
  padding-bottom: 0.5rem;
}
.topics__container ul li a {
  display: flex;
  align-items: center;
}

.topics__more {
  text-align: right;
}

.inquiry__lead {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.inquiry__lead p {
  margin: 0 auto;
  font-weight: 600;
}

#inquiry__call {
  width: 80%;
  background-color: #fff9ee;
  border-radius: 6px;
  margin: 0 auto 3rem auto;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  #inquiry__call {
    width: 100%;
  }
}
#inquiry__call .inquiry__lead p {
  margin-bottom: 2rem;
}
#inquiry__call .call-info .tel-kokubunji {
  text-align: center;
  font-size: clamp(24px, 7vmin, 28px);
  font-weight: 600;
  margin-bottom: 2rem;
}
#inquiry__call .call-info .tel-kokubunji a {
  color: #FF9900;
  font-weight: 600;
}
#inquiry__call .call-info .tel-kokubunji span {
  font-size: clamp(13px, 2vmin, 14px);
}
#inquiry__call .call-info .reception-hours {
  display: flex;
  justify-content: center;
}
#inquiry__call .call-info .reception-hours dl {
  margin-bottom: 0;
}
#inquiry__call .call-info .reception-hours dd {
  margin-left: 1rem;
}
#inquiry__call .call-info .reception-hours dd span {
  font-weight: 600;
}

#inquiry__container {
  width: 65%;
  margin: 3rem auto;
}
@media screen and (max-width: 767px) {
  #inquiry__container {
    width: 100%;
  }
}

#inquiry__container .required {
  color: rgba(238, 59, 0, 0.9568627451);
  font-weight: 600;
  font-size: clamp(16px, 4vmin, 18px);
  padding-left: 0.3rem;
}

.form__inquirer--purpose {
  margin: 0 0 1.5rem;
}
.form__inquirer--purpose label {
  font-weight: 600;
}
.form__inquirer--purpose span .wpcf7-list-item {
  border: 1px solid #c9cac5;
  border-radius: 4px;
  height: 2.5rem;
  display: block;
  margin: clamp(8px, 4vmin, 16px) 0;
  padding: 0.5rem;
}

.from__inquirer--info label {
  font-weight: 600;
}
.from__inquirer--info input {
  height: 2.5rem;
  margin-top: 0.5rem;
}

.form__input--detail label {
  font-weight: 600;
}
.form__input--detail textarea {
  margin-top: 0.5rem;
}

#inquiry .wpcf7-submit {
  background-color: #FF9900;
  color: white;
  border: 1px solid #FF9900;
  border-radius: 5px;
  font-weight: 600;
  padding: 1.5rem 8rem;
  font-size: clamp(16px, 4vmin, 18px);
  margin: 2rem auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  justify-content: center;
  box-shadow: 3px 3px 3px #d5d6d2;
  transition: transform 0.2s;
  display: flex;
  justify-content: center;
  justify-content: center;
  margin-bottom: 0;
  padding: 0.5rem 4rem;
}
#inquiry .wpcf7-submit:active {
  transform: scale(0.95);
}
#inquiry .wpcf7-submit:hover {
  background-color: #ffad33;
  border: 1px solid #ffad33;
  cursor: pointer;
}
#inquiry .wpcf7-submit a {
  color: white;
  text-align: center;
}

.form__note {
  font-size: clamp(13px, 2vmin, 14px);
  text-align: right;
  margin: 0;
  padding: 0;
}
.form__note .required {
  padding-right: 0.3rem;
}

.info__table {
  width: 100%;
}
.info__table table {
  display: flex;
  justify-content: center;
  border: none;
}
.info__table table th, .info__table table td {
  font-size: clamp(14px, 3vmin, 16px);
  vertical-align: middle;
  height: 6rem;
  padding: 1rem;
  border: none;
  border-bottom: 1px solid #b5a99d;
}
@media screen and (max-width: 767px) {
  .info__table table th, .info__table table td {
    font-size: clamp(13px, 2vmin, 14px);
  }
}
.info__table table .company-addres td {
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
}
.info__table .company-business td ul {
  padding-left: 0 !important;
  margin: 0;
}

.site-footer-content h4 {
  font-weight: 600;
  border: none;
  font-size: clamp(13px, 2vmin, 14px);
}
.site-footer-content h4::after {
  border: none;
}
@media screen and (max-width: 767px) {
  .site-footer-content h4 {
    text-align: center;
  }
}

#block-5 {
  margin: 0;
}
#block-5 h4 {
  padding: 0;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .site-footer-content .row {
    flex-direction: column;
    align-items: center;
  }
}
.site-footer-content .site-footer-title {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .site-footer-content .site-footer-title {
    text-align: center;
  }
}
.site-footer-content .footer_clinic {
  margin-top: 0.8rem;
  margin-left: 1rem;
}
.site-footer-content .footer_clinic dl dt {
  border-bottom: 1px solid #d5d6d2;
}
.site-footer-content .footer_clinic dl a {
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .site-footer-content img {
    margin: 0 auto;
    width: 60% !important;
  }
}

/*# sourceMappingURL=custom.css.map */