/*  default */
.toppage .home-mv {
  height: 750px;
}
@media screen and (max-width: 768px) {
  .toppage .home-mv {
    height: auto;
    aspect-ratio: 1;
  }
}
.toppage .home-mv__slide {
  height: 750px;
}
@media screen and (max-width: 768px) {
  .toppage .home-mv__slide {
    height: auto;
  }
}
.toppage .home-mv img, .toppage .home-mv picture {
  max-height: 100%;
  margin: 0 auto;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.toppage .home-mv__item::after {
  display: none;
}
.toppage .slick-dots {
  position: absolute;
  z-index: 5;
}
.toppage .home-sec{
  padding: 60px 0 80px;
}

@media screen and (max-width: 768px) {
  .toppage .home-sec{
  padding: 40px 0 50px;
}
}

.home-contents {
  padding-bottom: 0;
}

@media screen and (max-width: 768px) {
  .ft__list {
    padding-top: 30px;
  }
}

/*  unique-css */
.toppage ul, .toppage li,
.subpage ul,
.subpage li {
  list-style: none;
}

.ft ul, .ft li {
  list-style: none;
}
.ft ul {
  padding-left: 0;
}

.toppage .bg-gray,
.subpage .bg-gray {
  background-color: #e2e1e1;
}
.toppage .bg-cyan,
.subpage .bg-cyan {
  background-color: #9bc4cb;
}
.toppage .bg-cyan--transparent,
.subpage .bg-cyan--transparent {
  background-color: rgba(155, 196, 203, 0.8);
}
.toppage .bg-darkgray,
.subpage .bg-darkgray {
  background-color: #9c9e9c;
}

.toppage .wrapper,
.subpage .wrapper {
  width: 1110px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .wrapper,
  .subpage .wrapper {
    width: 100%;
    padding: 0 40px;
  }
}
@media screen and (max-width: 767px) {
  .toppage .wrapper,
  .subpage .wrapper {
    width: 100%;
    padding: 0 15px;
  }
}

@media screen and (max-width: 767px) {
  .sp-hide {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
  .md-hide {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .pc-hide {
    display: none !important;
  }
}

.toppage p,
.toppage h1,
.toppage h2,
.toppage h3,
.toppage h4,
.toppage a,
.subpage p,
.subpage h1,
.subpage h2,
.subpage h3,
.subpage h4,
.subpage a {
  color: #231815;
  font-feature-settings: "palt";
}
.toppage p:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.toppage h1:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.toppage h2:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.toppage h3:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.toppage h4:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.toppage a:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage p:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage h1:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage h2:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage h3:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage h4:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *),
.subpage a:is(.bg-darkgray *, .bg-cyan *, .block-floating__box *) {
  color: #ffffff;
}
.toppage p,
.subpage p {
  margin: 0;
  font-size: 18px;
  line-height: 2.2;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .toppage p,
  .subpage p {
    font-size: 14px;
  }
}
.toppage .serif,
.subpage .serif {
  font-family: serif;
}

.toppage .section,
.subpage .section {
  padding: 140px 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .section,
  .subpage .section {
    padding: 120px 0;
  }
}
@media screen and (max-width: 767px) {
  .toppage .section,
  .subpage .section {
    padding: 40px 0;
  }
}
.toppage .section-1,
.subpage .section-1 {
  padding: 110px 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .section-1,
  .subpage .section-1 {
    padding: 100px 0;
  }
}
@media screen and (max-width: 767px) {
  .toppage .section-1,
  .subpage .section-1 {
    padding: 32px 0 60px;
  }
}
.toppage .section-2,
.subpage .section-2 {
  padding: 100px 0 120px;
}
@media screen and (max-width: 767px) {
  .toppage .section-2,
  .subpage .section-2 {
    padding: 40px 0 64px;
  }
}
.toppage .section-3,
.subpage .section-3 {
  padding: 130px 0 150px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .section-3,
  .subpage .section-3 {
    padding-top: 110px 0 130px;
  }
}
@media screen and (max-width: 767px) {
  .toppage .section-3,
  .subpage .section-3 {
    padding: 36px 0 78px;
  }
}
.toppage .section-4,
.subpage .section-4 {
  padding: 120px 0 120px;
}
.toppage .section-4 .btn-gesurgery,
.subpage .section-4 .btn-gesurgery {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .toppage .section-4,
  .subpage .section-4 {
    padding: 64px 0 64px;
  }
}

.toppage .heading__title,
.subpage .heading__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .toppage .heading__title,
  .subpage .heading__title {
    font-size: 26px;
  }
}
.toppage .heading__lead,
.subpage .heading__lead {
  margin-top: 4px;
  line-height: 1;
}
.toppage .vertical-heading,
.subpage .vertical-heading {
  font-weight: 500;
  font-size: 72px;
  line-height: 1;
  font-feature-settings: normal;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .toppage .vertical-heading,
  .subpage .vertical-heading {
    font-size: 32px;
  }
}

.toppage .btn-gesurgery, .subpage .btn-gesurgery {
  display: block;
  align-content: center;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 80px;
  margin-inline: auto;
  padding: 12px 20px 11px;
  border: solid 1px #231815;
  color: #231815;
  font-size: 18px;
  line-height: 1;
  text-decoration: none;
  transition: opacity 0.2s;
}
.toppage .btn-gesurgery:hover, .subpage .btn-gesurgery:hover {
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
  .toppage .btn-gesurgery, .subpage .btn-gesurgery {
    margin-top: 40px;
    padding: 7px 12px;
    font-size: 14px;
  }
}
.toppage .btn-gesurgery--white, .subpage .btn-gesurgery--white {
  border: solid 1px #ffffff;
  color: #ffffff;
}
.toppage .btn-3col, .subpage .btn-3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-inline: auto;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .toppage .btn-3col, .subpage .btn-3col {
    display: block;
    width: 70%;
    margin-inline: auto;
  }
}
.toppage .btn-3col a, .subpage .btn-3col a {
  display: block;
  align-content: center;
  width: 100%;
  height: 48px;
  background-color: #231815;
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .toppage .btn-3col a, .subpage .btn-3col a {
    height: 30px;
    font-size: 12px;
  }
}
.toppage .btn-3col a:hover, .subpage .btn-3col a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
  .toppage .btn-3col a:not(:first-of-type), .subpage .btn-3col a:not(:first-of-type) {
    margin-top: 12px;
    font-size: 12px;
  }
}

.subpage .subpage-mv {
  box-sizing: border-box;
  height: min(40vw, 420px);
  background-size: cover;
}
.subpage .subpage-mv.page-disease {
  background-image: url("/med/gesurgery/assets/cases01-pc.jpg");
}
@media screen and (max-width: 767px) {
  .subpage .subpage-mv.page-disease {
    background-image: url("/med/gesurgery/assets/cases01-sp.jpg");
  }
}
.subpage .subpage-mv.page-research {
  background-image: url("/med/gesurgery/assets/study01-pc.jpg");
}
@media screen and (max-width: 767px) {
  .subpage .subpage-mv.page-research {
    background-image: url("/med/gesurgery/assets/study01-sp.jpg");
  }
}
.subpage .subpage-mv__outer {
  contain: content;
  position: relative;
  height: 100%;
}
.subpage .subpage-mv__content {
  position: absolute;
  align-content: center;
  width: 100%;
  height: min(40vw, 420px);
  text-align: center;
}
.subpage .subpage-mv__lead {
  color: #ffffff;
  font-weight: 500;
  font-size: 42px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .subpage .subpage-mv__lead {
    font-size: 16px;
  }
}
.subpage .subpage-mv__title {
  margin-top: 15px;
  color: #ffffff;
  font-weight: 500;
  font-size: 72px;
}
@media screen and (max-width: 767px) {
  .subpage .subpage-mv__title {
    margin-top: 6px;
    font-size: 24px;
  }
}

.subpage-nav {
  padding: 16px 0 90px;
}
@media screen and (max-width: 767px) {
  .subpage-nav {
    padding: 8px 0 60px;
  }
}
.subpage-nav__link {
  margin-top: 54px;
}
@media screen and (max-width: 767px) {
  .subpage-nav__link {
    margin-top: 40px;
  }
}
.subpage-nav--research {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .subpage-nav--research {
    padding-bottom: 0px;
  }
}

.mv {
  position: relative;
}

.home-mv__box {
  position: absolute;
  top: 50%;
  left: 60px;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .home-mv__box {
    top: auto;
    bottom: 8vw;
    left: 26px;
    transform: none;
  }
}
.home-mv__box source,
.home-mv__box img {
  width: 590px;
  height: auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .home-mv__box source,
  .home-mv__box img {
    width: min(52.8%, 590px);
  }
}
@media screen and (max-width: 767px) {
  .home-mv__box source,
  .home-mv__box img {
    width: 42.6666666667vw;
  }
}

.top-news {
  display: flex;
  gap: 108px;
}
@media screen and (max-width: 767px) {
  .top-news {
    display: block;
  }
}
.top-news__heading {
  width: 320px;
}
@media screen and (max-width: 767px) {
  .top-news__heading {
    width: 100%;
  }
}
.top-news__content {
  width: calc(100% - 428px);
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .top-news__content {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .top-news__content {
    width: 100%;
    margin-top: 36px;
  }
}
.top-news__article {
  display: block;
  transition: opacity 0.2s;
}
.top-news__article:hover {
  opacity: 0.6;
}
.top-news__article:not(:first-of-type) {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .top-news__article:not(:first-of-type) {
    margin-top: 24px;
  }
}
.top-news__article dl {
  display: flex;
  align-items: center;
  gap: 36px;
}
@media screen and (max-width: 767px) {
  .top-news__article dl {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .top-news__article dt,
  .top-news__article dd {
    font-size: 0.625rem;
  }
}

.toppage .top-greeting,
.subpage .top-greeting {
  position: relative;
  height: 900px;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting,
  .subpage .top-greeting {
    height: auto;
  }
}
.toppage .top-greeting__image,
.subpage .top-greeting__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  user-drag: none;
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting__image,
  .subpage .top-greeting__image {
    aspect-ratio: 1;
  }
}
.toppage .top-greeting__box,
.subpage .top-greeting__box {
  position: absolute;
  bottom: 108px;
  left: 100px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .top-greeting__box,
  .subpage .top-greeting__box {
    left: 80px;
  }
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting__box,
  .subpage .top-greeting__box {
    position: static;
    align-content: center;
    padding: 35px 15px;
  }
}
.toppage .top-greeting__inner,
.subpage .top-greeting__inner {
  display: flex;
  gap: 60px;
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting__inner,
  .subpage .top-greeting__inner {
    gap: 16px;
  }
}
.toppage .top-greeting__info,
.subpage .top-greeting__info {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting__info,
  .subpage .top-greeting__info {
    width: 100%;
  }
}
.toppage .top-greeting__text,
.subpage .top-greeting__text {
  margin-top: 20px;
}
.toppage .top-greeting__name,
.subpage .top-greeting__name {
  margin-top: 18px;
  font-size: 24px;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .toppage .top-greeting__name,
  .subpage .top-greeting__name {
    margin-top: 12px;
    font-size: 20px;
  }
}

.toppage .block-2col,
.subpage .block-2col {
  display: flex;
  flex-direction: row-reverse;
  height: 720px;
}
@media screen and (max-width: 767px) {
  .toppage .block-2col,
  .subpage .block-2col {
    display: block;
    height: auto;
  }
}
.toppage .block-2col__image--top,
.subpage .block-2col__image--top {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .toppage .block-2col__image--top,
  .subpage .block-2col__image--top {
    aspect-ratio: 1;
    width: 100%;
  }
}
.toppage .block-2col__image--top source,
.toppage .block-2col__image--top img,
.subpage .block-2col__image--top source,
.subpage .block-2col__image--top img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .toppage .block-2col__image--top source,
  .toppage .block-2col__image--top img,
  .subpage .block-2col__image--top source,
  .subpage .block-2col__image--top img {
    aspect-ratio: 1;
  }
}
.toppage .block-2col__content,
.subpage .block-2col__content {
  align-content: center;
}
.toppage .block-2col__content--top,
.subpage .block-2col__content--top {
  box-sizing: border-box;
  width: 50%;
  padding: 0 90px 0 120px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .block-2col__content--top,
  .subpage .block-2col__content--top {
    padding: 0 60px;
  }
}
@media screen and (max-width: 767px) {
  .toppage .block-2col__content--top,
  .subpage .block-2col__content--top {
    width: 100%;
    height: min(100svw, 375px);
    margin-inline: auto;
    padding: 0 15px;
  }
}
.toppage .block-2col__content-inner,
.subpage .block-2col__content-inner {
  display: flex;
  gap: 80px;
}
@media screen and (max-width: 767px) {
  .toppage .block-2col__content-inner,
  .subpage .block-2col__content-inner {
    gap: 16px;
  }
}
.toppage .block-2col__content-text,
.subpage .block-2col__content-text {
  margin-top: 36px;
}
@media screen and (max-width: 767px) {
  .toppage .block-2col__content-text,
  .subpage .block-2col__content-text {
    margin-top: 15px;
  }
}

.toppage .block-floating,
.subpage .block-floating {
  position: relative;
  height: 750px;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .toppage .block-floating,
  .subpage .block-floating {
    height: auto;
  }
}
.toppage .block-floating__box,
.subpage .block-floating__box {
  position: absolute;
  top: 50%;
  right: 84px;
  align-content: center;
  aspect-ratio: 1;
  width: 590px;
  padding: 0 36px 0 96px;
  transform: translateY(-50%);
  background-color: rgba(155, 196, 203, 0.8);
}
@media screen and (max-width: 767px) {
  .toppage .block-floating__box,
  .subpage .block-floating__box {
    aspect-ratio: auto;
    width: 100%;
    height: min(100svw, 375px);
    padding: 0 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .toppage .block-floating__box,
  .subpage .block-floating__box {
    right: 60px;
  }
}
@media screen and (max-width: 767px) {
  .toppage .block-floating__box,
  .subpage .block-floating__box {
    position: static;
    transform: none;
  }
}
.toppage .block-floating__top,
.subpage .block-floating__top {
  display: flex;
  align-items: center;
  gap: 24px;
}
@media screen and (max-width: 767px) {
  .toppage .block-floating__top .heading,
  .subpage .block-floating__top .heading {
    width: 84.5%;
  }
}
.toppage .block-floating__text,
.subpage .block-floating__text {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .toppage .block-floating__text,
  .subpage .block-floating__text {
    display: block;
    width: 84.5%;
    margin-top: 15px;
  }
}
.toppage .block-floating__image,
.subpage .block-floating__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  user-drag: none;
}
@media screen and (max-width: 767px) {
  .toppage .block-floating__image,
  .subpage .block-floating__image {
    aspect-ratio: 1;
  }
}

.toppage .block-bar,
.subpage .block-bar {
  display: flex;
  height: 100svh;
}
@media screen and (max-width: 767px) {
  .toppage .block-bar,
  .subpage .block-bar {
    display: block;
    height: auto;
  }
}
.toppage .block-bar--reverse,
.subpage .block-bar--reverse {
  flex-direction: row-reverse;
}
.toppage .block-bar__image,
.subpage .block-bar__image {
  width: calc(100% - 240px);
  height: auto;
}
@media screen and (max-width: 767px) {
  .toppage .block-bar__image,
  .subpage .block-bar__image {
    aspect-ratio: 1;
    width: 100%;
  }
}
.toppage .block-bar__image source,
.toppage .block-bar__image img,
.subpage .block-bar__image source,
.subpage .block-bar__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.toppage .block-bar__title,
.subpage .block-bar__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 240px;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .toppage .block-bar__title,
  .subpage .block-bar__title {
    width: 100%;
    height: min(100svw, 375px);
  }
}

.subpage .research-above__content {
  display: flex;
  align-items: center;
  margin-bottom: 100px;
  gap: 70px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .subpage .research-above__content {
    display: block;
    width: 100%;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .subpage .research-above__content {
    display: block;
    width: 100%;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .subpage .research-above__content.wrapper {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .subpage .research-above__content.wrapper {
    padding: 0;
  }
}
.subpage .research-above__text {
  width: calc(100% - 660px);
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .subpage .research-above__text {
    width: 82.7%;
    margin-bottom: 80px;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .subpage .research-above__text {
    width: 82.7%;
    margin-bottom: 80px;
    margin-inline: auto;
  }
}
.subpage .research-above__box {
  align-content: center;
  align-content: center;
  aspect-ratio: 1;
  width: 590px;
  background-color: rgba(155, 196, 203, 0.8);
}
@media screen and (max-width: 767px) {
  .subpage .research-above__box {
    aspect-ratio: auto;
    width: 100%;
    height: min(100svw, 375px);
    padding: 0 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
  .subpage .research-above__box {
    aspect-ratio: auto;
    width: 100%;
    height: 500px;
  }
}
.subpage .research-above__top {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .subpage .research-above__top {
    justify-content: center;
    text-align: center;
  }
}
.subpage .research-above__top h2, .subpage .research-above__top p {
  color: #ffffff;
}
.subpage .research-above__image {
  width: 100%;
  height: 720px;
}
@media screen and (max-width: 767px) {
  .subpage .research-above__image {
    aspect-ratio: 1;
    height: auto;
  }
}
.subpage .research-above__image source,
.subpage .research-above__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
