:root {
  --fwel: 200;
  --fwl: 300;
  --fwn: 400;
  --fwm: 500;
  --fwsb: 600;
  --fwb: 700;
  --font-jp: "Noto Sans JP", sans-serif;
  --font-en: "Figtree", sans-serif;
}

html {
  scroll-padding-top: 14rem;
}
@media screen and (max-width: 1024px) {
  html {
    scroll-padding-top: 9rem;
  }
}
@media screen and (max-width: 834px) {
  html {
    scroll-padding-top: 7.5rem;
  }
}

@media screen and (min-width: 835px) {
  .medical-works__outstanding .under-mv1__text-wrap {
    width: 49%;
  }
}
.medical-works__outstanding .under-mv1__title {
  font-size: clamp(2.2rem, 3.4vw, 5.6rem);
}

@media screen and (min-width: 451px) {
  .breadcrumb__item br {
    display: none;
  }
}

.sec-out__ttl {
  margin-bottom: 2rem;
  font-size: 4rem;
  font-weight: var(--fwm);
  text-align: center;
}
@media screen and (max-width: 950px) {
  .sec-out__ttl {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__ttl {
    margin-bottom: 1rem;
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__ttl {
    font-size: 2rem;
  }
}
.sec-out__ttl br {
  display: none;
}
@media screen and (max-width: 834px) {
  .sec-out__ttl br {
    display: block;
  }
}
.sec-out__ttl-strong {
  display: inline-block;
  margin: 0 0.8rem;
  font-size: 1.2em;
  font-weight: var(--fwm);
  color: #d80000;
  text-decoration: underline;
  text-underline-offset: 0.7rem;
  text-decoration-thickness: 2px;
}
@media screen and (max-width: 834px) {
  .sec-out__ttl-strong {
    margin: 0 0.5rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out .tac {
    text-align: left;
  }
}
.sec-out__nav {
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3.4rem;
}
@media screen and (max-width: 1200px) {
  .sec-out__nav {
    gap: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__nav {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
  }
}
.sec-out__nav-link {
  max-width: 56rem;
  width: 50%;
  padding-right: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3rem;
  background-color: #fff;
  border: 1px solid #dbdddf;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .sec-out__nav-link {
    padding-right: 2rem;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__nav-link {
    width: 100%;
  }
}
.sec-out__nav-link:hover .medical-works__icon.--invert {
  border: 1px solid #45b035;
  background-color: transparent;
}
.sec-out__nav-link:hover .medical-works__icon.--invert::before {
  animation: arrowOut 0.6s forwards;
}
.sec-out__nav-link:hover .medical-works__icon.--invert::after {
  animation: arrowIn 0.6s forwards;
}
.sec-out__nav-img {
  min-width: 15rem;
}
@media screen and (max-width: 1100px) {
  .sec-out__nav-img {
    max-width: 11rem;
    min-width: 11rem;
    height: 100%;
    max-height: 9.6rem;
  }
  .sec-out__nav-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__nav-img {
    max-height: 8.7rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__nav-img {
    max-width: 8rem;
    min-width: 8rem;
    max-height: 6.5rem;
  }
}
@media screen and (max-width: 380px) {
  .sec-out__nav-img {
    max-width: 6rem;
    min-width: 6rem;
    max-height: 5rem;
  }
}
.sec-out__nav-hg {
  min-width: 22.9rem;
}
@media screen and (max-width: 1200px) {
  .sec-out__nav-hg {
    min-width: unset;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__nav-hg {
    min-width: 17.6rem;
  }
}
.sec-out__nav-txt {
  font-size: 1.4rem;
  font-weight: var(--fwm);
  color: #4b9143;
}
@media screen and (max-width: 450px) {
  .sec-out__nav-txt {
    font-size: 1.3rem;
  }
}
.sec-out__nav-ttl {
  font-size: 2.1rem;
  font-weight: var(--fwm);
  line-height: 1.3;
}
@media screen and (max-width: 450px) {
  .sec-out__nav-ttl {
    font-size: 1.6rem;
  }
}
.sec-out__nav .medical-works__icon {
  width: 4.5rem;
  min-width: 4.5rem;
  height: 4.5rem;
}
@media screen and (max-width: 450px) {
  .sec-out__nav .medical-works__icon {
    width: 3rem;
    min-width: 3rem;
    height: 3rem;
  }
}
.sec-out__nav .medical-works__icon::before, .sec-out__nav .medical-works__icon::after {
  background-size: 1.5rem auto;
}
@media screen and (max-width: 450px) {
  .sec-out__nav .medical-works__icon::before, .sec-out__nav .medical-works__icon::after {
    background-size: 1rem auto;
  }
}
.sec-out__list {
  margin-top: 13rem;
}
@media screen and (max-width: 834px) {
  .sec-out__list {
    margin-top: 5rem;
  }
}
.sec-out__item {
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
  overflow: hidden;
}
.sec-out__item.--dcc {
  background-color: #e9f5e8;
}
.sec-out__item.--dcc .sec-out__item-ttl {
  background-color: #45b035;
}
.sec-out__item.--hospital {
  background-color: #e9f1f7;
}
.sec-out__item.--hospital .sec-out__item-ttl {
  background-color: #00559d;
}
.sec-out__item.--hospital .sec-out__item-flow__wrap::before {
  background: linear-gradient(90deg, rgba(233, 241, 247, 0) 0%, rgb(233, 241, 247) 20%, rgb(233, 241, 247) 100%);
}
.sec-out__item.--hospital .sec-out__item-flow {
  margin-top: 2.5rem;
  margin-bottom: 6.5rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item.--hospital .sec-out__item-flow {
    margin-bottom: 3rem;
  }
}
.sec-out__item.--hospital .sec-out__item-flow-item:last-of-type {
  margin-right: 0;
}
@media screen and (max-width: 1360px) {
  .sec-out__item.--hospital .sec-out__item-flow-item:last-of-type {
    margin-right: 6rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__item.--hospital .sec-out__item-flow-item:last-of-type {
    margin-right: 4rem;
  }
}
.sec-out__item:not(:first-of-type) {
  margin-top: 9rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item:not(:first-of-type) {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item:not(:first-of-type) {
    margin-top: 3rem;
  }
}
.sec-out__item-inner {
  max-width: 116rem;
  width: 90%;
  margin: 0 auto;
  display: block;
}
.sec-out__item-ttl {
  padding: 1.2rem 0;
  font-size: 4.8rem;
  font-weight: var(--fwm);
  color: #fff;
}
@media screen and (max-width: 1100px) {
  .sec-out__item-ttl {
    font-size: 4rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__item-ttl {
    padding: 1rem 0;
    font-size: 3rem;
    line-height: 1.3;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item-ttl {
    font-size: 2.5rem;
  }
}
.sec-out__item-ttl:has(small) .sec-out__item-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-ttl:has(small) .sec-out__item-inner {
    gap: 1rem;
  }
}
.sec-out__item-ttl small {
  font-size: 0.5em;
  font-weight: var(--fwm);
}
.sec-out__item-lead {
  margin-top: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 3rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-lead {
    margin-top: 3rem;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item-lead {
    margin-top: 2rem;
  }
}
.sec-out__item-lead__ttl {
  font-size: 3.2rem;
  font-weight: var(--fwm);
  line-height: 1.5;
}
@media screen and (max-width: 834px) {
  .sec-out__item-lead__ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item-lead__ttl {
    font-size: 1.8rem;
  }
}
.sec-out__item-img {
  width: 45%;
}
@media screen and (max-width: 834px) {
  .sec-out__item-img {
    margin: 0 auto;
    width: 50%;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item-img {
    width: 100%;
  }
}
.sec-out__item-img img {
  border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
}
.sec-out__item-cont {
  max-width: 56rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-cont {
    max-width: 100%;
  }
}
.sec-out__item-list {
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.3rem 0.8rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-list {
    margin-top: 1rem;
    margin-bottom: 1rem;
    gap: 0.5rem;
  }
}
.sec-out__item-item {
  padding: 0.25rem 1.2rem 0.35rem;
  font-size: 1.6rem;
  font-weight: var(--fwm);
  color: #45b035;
  background-color: #fff;
  border-radius: 100vmax;
  -webkit-border-radius: 100vmax;
}
@media screen and (max-width: 834px) {
  .sec-out__item-item {
    padding: 0.15rem 1rem 0.15rem;
    font-size: 1.4rem;
  }
}
.sec-out__item-att {
  margin-top: 4rem;
  padding: 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 3rem;
  background-color: #fff;
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
}
@media screen and (max-width: 1000px) {
  .sec-out__item-att {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__item-att {
    margin-top: 2rem;
    gap: 1.5rem;
  }
}
.sec-out__item-att__img {
  max-width: 21.4rem;
}
@media screen and (max-width: 1000px) {
  .sec-out__item-att__cont {
    width: 100%;
  }
}
.sec-out__item-att__ttl {
  position: relative;
  font-size: 2.4rem;
  font-weight: var(--fwm);
  line-height: 1.3;
  text-decoration: underline;
  text-decoration-color: #fff88a;
  text-decoration-thickness: 0.5em;
  text-underline-offset: -0.2em;
}
@media screen and (max-width: 834px) {
  .sec-out__item-att__ttl {
    font-size: 2rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__item-att__ttl {
    font-size: 1.8rem;
  }
}
.sec-out__item-att__list {
  margin-top: 4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.2rem 3.7rem;
}
@media screen and (max-width: 1100px) {
  .sec-out__item-att__list {
    gap: 2rem 3rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__item-att__list {
    margin-top: 2rem;
    gap: 1rem;
  }
}
@media screen and (max-width: 640px) {
  .sec-out__item-att__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.sec-out__item-att__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 1.4rem;
  font-weight: var(--fwm);
}
@media screen and (max-width: 834px) {
  .sec-out__item-att__item {
    gap: 0.8rem;
  }
}
@media screen and (max-width: 834px) {
  .sec-out__item-att__item .check {
    width: 1.5rem;
  }
}
.sec-out__item-att__item .txt {
  margin-top: -0.4rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-att__item .txt {
    margin-top: -0.5rem;
  }
}
.sec-out__item .service__title {
  margin: 8rem 0 4rem;
  border-bottom-color: #fff;
}
@media screen and (max-width: 834px) {
  .sec-out__item .service__title {
    margin: 3rem 0 1rem;
  }
}
.sec-out__item-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.7rem;
}
.sec-out__item-flow__wrap {
  position: relative;
  max-width: 125.5rem;
  width: 95%;
  margin: 2.5rem 0 6.5rem auto;
}
@media screen and (max-width: 834px) {
  .sec-out__item-flow__wrap {
    margin-bottom: 3rem;
  }
}
.sec-out__item-flow__wrap::before {
  position: absolute;
  content: "";
  width: 5rem;
  height: 100%;
  top: 0;
  right: 0;
  z-index: 2;
  background: linear-gradient(90deg, rgba(233, 245, 232, 0) 0%, rgb(233, 245, 232) 20%, rgb(233, 245, 232) 100%);
}
@media screen and (max-width: 834px) {
  .sec-out__item-flow__wrap::before {
    width: 3rem;
  }
}
.sec-out__item-flow__wrap .sec-out__item-flow-item:last-of-type {
  margin-right: 6rem;
}
@media screen and (max-width: 834px) {
  .sec-out__item-flow__wrap .sec-out__item-flow-item:last-of-type {
    margin-right: 4rem;
  }
}
.sec-out__item-flow-item {
  min-width: 25.3rem;
  padding: 2.5% 2.5%;
  background-color: #fff;
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
}
@media screen and (max-width: 450px) {
  .sec-out__item-flow-item {
    padding: 1rem;
    min-width: 20rem;
  }
}
.sec-out__item-flow-item:not(:first-of-type) {
  position: relative;
}
.sec-out__item-flow-item:not(:first-of-type)::before {
  position: absolute;
  content: "";
  width: 1.4rem;
  aspect-ratio: 14/23;
  top: 50%;
  left: -3.05rem;
  z-index: 1;
  background: url(../img/outstanding/arw.webp) no-repeat center center/cover;
}
.sec-out__item-flow-num {
  width: fit-content;
  margin: 0 auto;
  padding: 0 1rem;
  font-size: 1.4rem;
  color: #45b035;
  font-family: var(--font-en);
  background-color: #e7f6e6;
  border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
}
.sec-out__item-flow__icon {
  margin: 2rem auto 0;
  min-height: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media screen and (max-width: 450px) {
  .sec-out__item-flow__icon {
    min-height: 5rem;
  }
  .sec-out__item-flow__icon img {
    width: auto;
    max-height: 5rem;
  }
}
.sec-out__item-flow__ttl {
  margin: 2rem 0 1rem;
  font-size: 1.8rem;
  font-weight: var(--fwm);
  text-align: center;
}
.sec-out__item-flow__ttl small {
  display: block;
  font-size: 0.77em;
}
.sec-out__item-flow .service__lead-text {
  font-size: 1.4rem;
}
.sec-out__link {
  max-width: 75rem;
  margin: 11rem auto 0;
  padding: 3.6%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2rem;
  background-color: #45b035;
  border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
}
@media screen and (max-width: 834px) {
  .sec-out__link {
    margin-top: 5rem;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1rem 2rem;
  }
}
@media screen and (max-width: 450px) {
  .sec-out__link {
    margin-top: 3rem;
  }
  .sec-out__link .medical-works__btn {
    margin: 0 auto;
  }
}
.sec-out__link:hover .medical-works__icon.--invert {
  border: 1px solid #45b035;
  background-color: transparent;
}
.sec-out__link:hover .medical-works__icon.--invert::before {
  animation: arrowOut 0.6s forwards;
}
.sec-out__link:hover .medical-works__icon.--invert::after {
  animation: arrowIn 0.6s forwards;
}
.sec-out__link-txt {
  font-size: 2.4rem;
  font-weight: var(--fwm);
  color: #fff;
}
@media screen and (max-width: 450px) {
  .sec-out__link-txt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 375px) {
  .sec-out__link-txt {
    font-size: 1.8rem;
  }
}
.sec-out__link-txt small {
  font-size: 0.83em;
  display: block;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  z-index: 2;
}