@charset "UTF-8";
/******************************************************************
 * TOP
******************************************************************/
/* mv
-----------------------------------------------------------------*/
/*.top-mv__wrap {
  width: 100%;
  height: 1002px;
  background: url(../img/top/mv.jpg) center/cover no-repeat;
  position: relative;
}*/

.top-mv__wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.top-mv__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1; /* 背景として後ろに配置 */
}
.top-mv__wrap::after {
  content: "";
  aspect-ratio: 2149/304;
  width: 100%;
  max-width: clamp(539px, 56.1458333333vw, 1078px);
  display: block;
  background: url(../img/top/mv-txt.png) left/cover no-repeat;
  position: absolute;
  top: auto;
  right: 9.85%;
  bottom: 0px;
  left: auto;
}
.top-mv__address {
  width: 100%;
  display: block;
  font-weight: 500;
  color: #504429;
  position: absolute;
  top: 108px;
  left: auto;
  right: 6px;
  text-align: right;
}
.top-mv__address-txt {
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.top-mv__address-txt::before {
  content: "";
  width: 100%;
  display: inline-block;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-right: 0.275em;
  transform: translateY(4px);
}
.top-mv__address-txt--map::before {
  aspect-ratio: 18/26;
  max-width: 0.9em;
  background-image: url(../img/common/icon/map-icon.png);
  margin-right: 0.275em;
  transform: translateY(4px);
}
.top-mv__address-txt--parking {
  letter-spacing: 0.08em;
}
.top-mv__address-txt--parking::before {
  aspect-ratio: 25/22;
  max-width: 1.25em;
  background-image: url(../img/common/icon/car-icon.png);
  margin-right: 0.45em;
  transform: translateY(3px);
}
.top-mv__inner {
  width: 100%;
  height: 950px;
}
.top-mv__logo {
  position: absolute;
  top: 43px;
  left: 1.6%;
}
.top-mv__content {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  row-gap: 23px;
  margin-inline-start: auto;
}
.top-mv__ttl {
  font: 500 clamp(37px, 2.7770833333vw, 53.32px) "Shippori Mincho", serif;
  line-height: 1.6;
  letter-spacing: 0.076em;
  text-shadow: 0 0px 38px rgba(29, 29, 29, 0.7);
}
.top-mv__ttl span {
  display: inline-block;
  margin-bottom: 0.2604505795em;
  font-size: 1.4401725431em;
  letter-spacing: 0.075em;
}
.top-mv__list {
	display: flex;
  -moz-column-gap: 19px;
       column-gap: 19px;
  color: #fff;
}

.top-mv-logo {
  width: 100%;
  max-width: 245px;
  display: block;
}
.top-mv-logo__img {
  width: 100%;
  max-width: 229px;
  margin-left: 6px;
  text-align: center;
}
.top-mv-logo__txt {
  margin-top: 0.9444444444em;
  padding: 2px 13px 5px;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.top-mv-item {
    aspect-ratio: 1 / 1;
    width: 7.264957265em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: url(../img/top/mv-item-bg.png) center / cover no-repeat;
    background-image: image-set(
        url(../img/top/mv-item-bg.webp) type("image/webp"),
        url(../img/top/mv-item-bg.png) type("image/png")
    );
    font: 500 clamp(20px, 1.95vw, 37.44px) "Shippori Mincho", serif;
    letter-spacing: 0.1em;
    line-height: 1.33;
    text-align: center;
}
.top-mv-item__ttl {
  font-size: 1.3333333333em;
  letter-spacing: 0.025em;
}

/* 自分の歯のように過ごせる嬉しさ
-----------------------------------------------------------------*/
.top-intro {
  position: relative;
  z-index: 1;
}
.top-intro__wrap {
  padding-top: 148px;
  background: url(../img/top/top-intro-bg.jpg) 50% 0/100% no-repeat;
  position: relative;
}
.top-intro__wrap::before {
  content: "";
  width: 100%;
  height: 620.34px;
  background: linear-gradient(to bottom, #f7f4ea, rgba(0, 0, 0, 0)) top/cover no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}
.top-intro__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1.3em;
       column-gap: 1.3em;
  font: 500 60px "Shippori Mincho", serif;
  line-height: 1.5;
  letter-spacing: 0.03em;
  text-align: center;
  position: relative;
  z-index: 1;
}
.top-intro__ttl::before, .top-intro__ttl::after {
  content: "";
  flex: 1;
  width: 100%;
  height: 0.3666666667em;
  margin-top: 0.2em;
  border-top: 2px solid #3e3010;
  border-bottom: 2px solid #3e3010;
}
.top-intro__content {
  margin-top: 41px;
  padding: 0 30px;
  position: relative;
  z-index: 1;
}

.top-intro-merit {
  max-width: 1600px;
  margin: 34px auto 0;
  padding: 39px 49px 43px 43px;
  background: #fff;
  border: 1px solid #4d4d4d;
  position: relative;
  z-index: 1;
}
.top-intro-merit::before, .top-intro-merit::after {
  content: "";
  aspect-ratio: 381/640;
  width: 100%;
  max-width: clamp(100px, 19.84375vw, 381px);
  display: block;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: auto;
  right: auto;
  left: -33px;
  bottom: -39px;
}
.top-intro-merit::before {
  background-image: image-set(
    url(../img/top/top-intro-left-img.webp) type("image/webp"),
    url(../img/top/top-intro-left-img.png) type("image/png")
  );
}

.top-intro-merit::after {
  background-image: image-set(
    url(../img/top/top-intro-right-img.webp) type("image/webp"),
    url(../img/top/top-intro-right-img.png) type("image/png")
  );
  top: -42px;
  right: -28px;
  left: auto;
  bottom: auto;
}

.top-intro-merit__inner {
  padding: 29px 20px 18px;
  border: 1px solid #fff;
  position: relative;
  z-index: 1;
}
.top-intro-merit__list {
  width: 100%;
  max-width: -moz-fit-content;
  max-width: fit-content;
  display: block;
  margin: auto;
}
.top-intro-merit__item {
  padding-left: 1.3333333333em;
  font-size: 36px;
  letter-spacing: 0.1em;
  line-height: 1.3;
  position: relative;
}
.top-intro-merit__item::before {
  content: "";
  width: 0.9444444444em;
  height: 0.9722222222em;
  display: block;
  background: url(../img/common/check-mark-1.png) center/cover no-repeat;
  position: absolute;
  top: 0.25em;
  left: 0;
}
.top-intro-merit__item:not(:first-child) {
  margin-top: 1.6111111111em;
}
.top-intro-merit__item-ttl {
  font-weight: 600;
}
.top-intro-merit__item-ttl span {
  color: #916d3a;
  text-decoration: underline;
  text-decoration-thickness: 0.2777777778em;
  text-decoration-color: #fef561;
  text-underline-offset: -0.0555555556em;
}
.top-intro-merit__item-txt {
  margin-top: 0.8888888889em;
  font-size: 0.5em;
  letter-spacing: 0.1em;
}

.top-intro-balloon {
  overflow: hidden;
  width: 100%;
  margin-top: -128px;
  padding: 246px 0px 0px 10px;
  background: #f7f4ea;
  font-size: 30px;
  font-size: clamp(15px, 1.5625vw, 30px);
  letter-spacing: 0.1em;
  line-height: 1.3;
  color: #916d3a;
  position: relative;
  z-index: 0;
}
.top-intro-balloon__content {
  width: 100%;
  max-width: 1693px;
  margin: 0 auto;
  padding-bottom: 83px;
  position: relative;
}
.top-intro-balloon__content::before {
  content: "";
  aspect-ratio: 581 / 450;
  width: 100%;
  max-width: clamp(291px, 30.2604166667vw, 600px);
  display: block;
  background: image-set(
    url(../img/top/top-intro-balloon-img.webp) type("image/webp"),
    url(../img/top/top-intro-balloon-img.png) type("image/png")
  );
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: auto;
  right: 0;
  bottom: -27px;
  left: auto;
}
.top-intro-balloon__list {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 clamp(274px, 28.5416666667vw, 548px) 0 auto;
}
.top-intro-balloon__item:not(:first-child) {
  margin-top: 0.4666666667em;
}
.top-intro-balloon__item:nth-child(2) {
  margin-right: 1.2333333333em;
}
.top-intro-balloon__item:nth-child(3) {
  margin-right: 2.2em;
}
.top-intro-balloon__txt {
  box-shadow: 6px 10px 16px rgba(76, 76, 76, 0.22);
  display: inline-block;
  padding: 0.9333333333em 1.8666666667em 1.0333333333em 2.3333333333em;
  background: #fff;
  border-radius: 100px;
  position: relative;
  font-weight: 500;	
  z-index: 0;
}
.top-intro-balloon__txt::before {
  content: "";
  display: block;
  border-top: 0.8833333333em solid rgba(0, 0, 0, 0);
  border-bottom: 0.8833333333em solid rgba(0, 0, 0, 0);
  border-left: 2.9333333333em solid #fff;
  position: absolute;
  top: 50%;
  right: -0.6666666667em;
  left: auto;
  transform: translateY(-50%);
  z-index: -1;
}

/* TOPバナー
-----------------------------------------------------------------*/
.top-bnr {
  width: 100%;
  height: clamp(380px, 28.59375vw, 549px);
  display: block;
  padding: 0 20px;
  background: #fff;
  position: relative;
  z-index: 0;
}
.top-bnr::before {
  content: "";
  aspect-ratio: 730/1138;
  width: 100%;
  max-width: clamp(365px, 38.0208333333vw, 730px);
  display: block;
  background: url(../img/top/top-bnr-left.png) center/cover no-repeat;
  position: absolute;
  top: -52.8233151184%;
  left: 0;
  z-index: -1;
}
.top-bnr::after {
  content: "";
  aspect-ratio: 953/1031;
  width: 100%;
  max-width: clamp(476.5px, 49.6354166667vw, 953px);
  display: block;
  background: url(../img/top/top-bnr-right.png) center/cover no-repeat;
  position: absolute;
  top: auto;
  right: 0;
  bottom: -40.8014571949%;
  left: auto;
  z-index: -1;
}
.top-bnr__content {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0.8333333333em 0;
  font: 500 clamp(16px, 1.875vw, 36px) "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: center;
}
.top-bnr__logo {
  width: 100%;
  max-width: clamp(110px, 7.5vw, 144px);
  display: block;
  margin-inline: auto;
}
.top-bnr__logo img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-bnr__txt {
  margin-top: 1em;
}
.top-bnr__ttl {
  margin-top: 0.3958333333em;
  font-size: 1.3333333333em;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.top-bnr__ttl span {
  font-size: 1.25em;
  letter-spacing: 0.1em;
  color: #2b2b2b;
  transform: scaleX(1.1);
  transform-origin: 0 50%;
}

/* こんな方におすすめ
-----------------------------------------------------------------*/
.top-recommend__head {
  width: 100%;
  display: flex;
  padding: 36px 0 83px;
  background: #f7f4ea;
  position: relative;
  z-index: -1;
}
.top-recommend__head-inner {
  position: relative;
}
.top-recommend__img {
  width: 100%;
  max-width: 49.7916666667%;
  clip-path: polygon(0 0, 100% 0%, 83.3% 100%, 0% 100%);
}
.top-recommend__img img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-recommend__ttl {
  width: 100%;
  max-width: 49.0625%;
  margin: 6px 2px 0 auto;
  padding-left: clamp(25px, 2.5520833333vw, 49px);
}
.top-recommend__en {
  font: 500 clamp(18px, 1.875vw, 36px) "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: right;
}
.top-recommend__en span {
  background: linear-gradient(112deg, #a1905a, #a1905a 31%, #d9d0b2 48%, #b3a58c 74%, #b3a58c);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.top-recommend__jp {
  margin-top: 0.8020833333em;
  font: 500 clamp(24px, 2.5vw, 48px) "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.875;
  color: #fff;
}
.top-recommend__jp span {
  width: 100%;
  max-width: -moz-fit-content;
  max-width: fit-content;
  display: block;
  padding: 0.3541666667em 1.1666666667em 0.3541666667em 1.2708333333em;
  background: rgba(145, 109, 58, 0.8);
}
.top-recommend__jp span:nth-child(2) {
  margin: -0.3020833333em 0 0 3.2916666667em;
  padding: 0.4375em 1.1666666667em 0.25em 1.4791666667em;
}
.top-recommend__body {
  padding: 98px 0 57px;
}
.top-recommend__list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 64px;
  width: 100%;
}
.top-recommend__list {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.top-recommend__item {
  width: 100%;
}
.top-recommend__item-txt {
  padding-top: 0.9166666667em;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
.top-recommend__item-ttl {
  padding: 0 0 0.7em 1.7666666667em;
  font-weight: 500;
  font-size: 30px;
  letter-spacing: 0.02em;
  line-height: 1.3;
  color: #916d3a;
  position: relative;
  font-weight: 600;	
}
.top-recommend__item-ttl::before {
  content: "";
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 1.3666666667em;
  display: block;
  background: url(../img/common/check-mark-2.png) center/cover no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}
.top-recommend__item-ttl::after {
  content: "";
  width: 100%;
  max-width: 498px;
  height: 2px;
  display: block;
  background: #bcb499;
  position: absolute;
  top: auto;
  left: 0;
  bottom: -1px;
}
.top-recommend__item-detail {
  padding-top: 0.5em;
  font-weight: 500;
  line-height: 1.6;	
}

.top-recommend-contact {
  padding: 0 32px 35px;
  background: linear-gradient(to bottom, #b1a17a, #e5ddc4);
  position: relative;
}
.top-recommend-contact::before {
  content: "";
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 100%;
  height: clamp(30px, 7.34375vw, 141px);
  background: #fff;
  position: absolute;
  top: -1px;
  left: 0;
}
.top-recommend-contact__content {
  padding: 205px 20px 70px;
  border: 3px solid #fff;
  border-top: 0;
}
.top-recommend-contact__ttl {
  font-weight: 500;
  font-size: 40px;
  line-height: 1.9;
  letter-spacing: 0.03em;
  text-align: center;
  color: #342b16;
}
.top-recommend-contact__ttl .small {
  font-size: 0.75em;
  letter-spacing: 0.075em;
}
.top-recommend-contact__ttl .large {
  font-size: 1.2em;
  letter-spacing: 0.03em;
  line-height: 1.25;
  font-weight: 600;	
}
.top-recommend-contact__info {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.5em;
  font-weight: 500;
  font-size: 72px;
  color: #084109;
  line-height: 0.833;
  letter-spacing: 0.1em;
  text-align: center;
}
.top-recommend-contact__info-sub {
  margin-right: 0.7221458047em;
  padding: 0.5502063274em 0.3094910591em 0.5502063274em 0.1719394773em;
  font-weight: 500;
  font-size: 0.4038888889em;
  letter-spacing: 0.025em;
  position: relative;
  transform: translateY(0.2063273728em);
}
.top-recommend-contact__info-sub::before, .top-recommend-contact__info-sub::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: #084109;
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(7deg);
}
.top-recommend-contact__info-sub::after {
  top: auto;
  bottom: 0;
  transform: rotate(-6deg);
}
.top-recommend-contact__bnr-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px 112px;
  margin-top: 53px;
}

.top-recommend-bnr {
  width: 500px;
  height: 200px;
  font-weight: 500;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  box-shadow: 3px 7px 6px rgba(88, 88, 88, 0.2);
}
.top-recommend-bnr--tel {
  background: #fff;
  color: #ae9459;
}
.top-recommend-bnr--tel a {
  border: 20px solid #ae9459;
}
.top-recommend-bnr--web {
  outline: 1px solid #fff;
  outline-offset: -20px;
  background: #a9c538;
}
.top-recommend-bnr a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: opacity 0.2s ease;
}
.top-recommend-bnr a:hover {
  opacity: 0.7;
}
.top-recommend-bnr__num {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: -11px;
  margin-bottom: 4px;
  font-weight: 700;
  font-size: 48px;
  letter-spacing: 0.05em;
}
.top-recommend-bnr__num::before {
  content: "";
  width: 34px;
  height: 34px;
  display: block;
  background: #ae9459;
  -webkit-mask: url(../img/common/icon/tel-icon.png) center/cover no-repeat;
          mask: url(../img/common/icon/tel-icon.png) center/cover no-repeat;
}
.top-recommend-bnr__sub {
  display: block;
}
.top-recommend-bnr__txt {
  margin-top: 4px;
  margin-bottom: 14px;
  font-weight: 600;
  font-size: 48px;
  letter-spacing: 0.05em;
  line-height: 1;
}

/* 症例紹介
-----------------------------------------------------------------*/
.top-case {
  padding: 39px 0 71px;
  background: #f7f4ea;
}
.top-case__list {
  width: 100%;
  max-width: 100%;
 /* max-width: 1794px;*/
  display: flex;
  margin: 53.5px auto 0;
  padding: 0 3%;
  overflow: hidden;
}
.top-case__list .slick-arrow {
  cursor: pointer;
  content: "";
  display: block;
  border-top: solid 47.5px rgba(0, 0, 0, 0);
  border-right: solid 47px #ae9459;
  border-bottom: solid 47.5px rgba(0, 0, 0, 0);
  position: absolute;
  top: 40.9%;
  left: 10px;
  transform: translateY(-50%);
  z-index: 1;
}
.top-case__list .slick-next {
  transform: translateY(-50%) scale(-1, 1);
  right: 10px;
  left: auto;
}
.top-case__list .slick-track {
  display: flex;
}
.top-case__item {
	margin-inline: 30px;
}

.top-case__item-ttl {
        display: flex;
        flex-direction: row;
        justify-content: space-around;
}
.before-ttl,.after-ttl {
    width: 47%;
}
.top-case__item-head {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas: "before-ttl after-ttl" "before-img after-img";
  gap: 20px clamp(20px, 3.9583333333vw, 20px);
}
.top-case__item-ttl {
  padding: 6px 0px 10px;
  font: 400 36px "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
}
.top-case__item-ttl--before {
  grid-area: before-ttl;
  background: #b2b2b2;
}
.top-case__item-ttl--after {
  grid-area: after-ttl;
  background: #ae9459;
  color: #fff;
}
.top-case__item-img {
  aspect-ratio: 701/500;
  display: block;
}
.top-case__item-img--before {
  grid-area: before-img;
}
.top-case__item-img--after {
  grid-area: after-img;
}
.top-case__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-case__item-body {
  margin-top: 1.4583333333em;
  padding: 0 7px;
  font-size: 24px;
  letter-spacing: 0.102em;
  line-height: 1.75;
}

/*-----------------------------------------------------------------*/
.top-case {
  position: relative;
  text-align: center;
  padding-bottom: 100px;
}
.top-case::before {
  position: absolute;
  content: "";
  width: 253px;
  height: 104px;
  bottom: 71px;
  left: 73px;
  background: url(../img/top/case-bg01.png) center/cover no-repeat;
}
.top-case::after {
  position: absolute;
  content: "";
  width: 171px;
  height: 172px;
  bottom: 50px;
  right: 0;
  background: url(../img/top/case-bg02.png) center/cover no-repeat;
}
.top-case__bg {
  position: relative;
  padding-top: 130px;
}
.top-case__bg::before, .top-case__bg::after {
  position: absolute;
  content: "";
  width: 21.3020833333vw;
  height: 18.6979166667vw;
  top: 0;
  background: url(../img/top/case-triangle.png) center/cover no-repeat;
}
.top-case__bg::before {
  left: 0;
}
.top-case__bg::after {
  right: 0;
  transform: scale(-1, 1);
}
.top-case .inner {
  max-width: 1676px;
}
.top-case .c-top-ttl {
  position: relative;
}
.top-case .c-top-ttl::before {
  position: absolute;
  content: "";
  width: 128px;
  height: 137px;
  top: 21px;
  left: -196px;
  background: url(../img/top/case-ttl-bg01.png) center/cover no-repeat;
}
.top-case .c-top-ttl::after {
  position: absolute;
  content: "";
  width: 114px;
  height: 98px;
  top: 28px;
  right: -152px;
  background: url(../img/top/case-ttl-bg02.png) center/cover no-repeat;
}
.top-case .c-top-ttl__wrap {
  color: #fff;
  background: #79c78b;
}
.top-case__subttl {
  position: relative;
  display: inline-block;
  font-weight: 600;
  font-size: 24px;
  line-height: 2.5;
  letter-spacing: 0.18em;
  margin-top: 57px;
  margin-left: 33px;
}
.top-case__subttl::before, .top-case__subttl::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 52px;
  top: 10px;
  background: #333;
}
.top-case__subttl::before {
  left: -40px;
  transform: rotate(-20deg);
}
.top-case__subttl::after {
  right: -15px;
  transform: rotate(20deg);
}
.top-case__slider {
  position: relative;
  margin: 41px 80px 0;
}


/*スライド→*/
.top-case__slider .swiper-button-prev {
  width: 10vw; /* ← 画面の25%をクリック可能に */
  height: 94.5%;
  top: 0;
  transform: none;
  background: transparent;
  z-index: 1;
  cursor: pointer;
  position: absolute;
  left: -200px;	
  border-radius: 60px 60px 0 0;	
}

.top-case__slider .swiper-button-next {
  width: 10vw; /* ← 画面の25%をクリック可能に */
  height: 94.5%;
  top: 0;
  transform: none;
  background: transparent;
  z-index: 1;
  cursor: pointer;
  position: absolute;
  right: -200px;
  border-radius: 60px 60px 0 0;	
}


/* 見た目の矢印は、擬似要素で小さく中央に */
.top-case__slider .swiper-button-prev::before{
  content: "";
  /*position: absolute;*/
  top: 50%;
  left: 50px;
  transform: translateY(-50%) rotate(-45deg);
  width: 70px;
  height: 70px;
  border-top: 10px solid #fcc800;
  border-left: 10px solid #fcc800;
}

.top-case__slider .swiper-button-next::before {
  content: "";
  /*position: absolute;*/
  top: 50%;
  right: 50px;
  width: 70px;
  height: 70px;
  border-top: 10px solid #fcc800;
  border-left: 10px solid #fcc800;
  left: auto;
  transform: translateY(-50%) rotate(135deg);
}


.fixed-arrow::before {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
}
/*
.top-case__slider .swiper-button-prev,
.top-case__slider .swiper-button-next {
  width: 76px;
  height: 76px;
  border-top: 10px solid #fcc800;
  border-left: 10px solid #fcc800;
  top: calc(50% - 36px);
  position: absolute;	
}
.top-case__slider .swiper-button-prev::after,
.top-case__slider .swiper-button-next::after {
  display: none;
}
.top-case__slider .swiper-button-prev {
  transform: rotate(-45deg);
  left: -66px;
}
.top-case__slider .swiper-button-next {
  transform: rotate(135deg);
  right: -78px;
}
*/


.top-case .case-swiper {
  width: 100%;	
  overflow: hidden;
}
.top-case__more {
  width: calc(100% - 160px);
  margin: auto;
  background: #fd7f7e url(../img/top/case-more-bg.png) center/cover no-repeat;
}
.top-case__more a {
  display: inline-block;
  width: 100%;
  height: 100%;
  font-weight: 500;
  font-size: 24px;
  line-height: 2;
  letter-spacing: 0.18em;
  color: #fff;
  transition: all 0.2s;
  padding: 28px 25px 24px;
}
.top-case__more a:hover {
  color: #ecea76;
}

.top-case-item {
  background: #fffbed;
  border-radius: 60px 60px 0 0;
  padding: 60px 12% 40px;
}
.top-case-item__ttl {
  position: relative;
}
.top-case-item__ttl::before {
  position: absolute;
  content: "";
  width: 112px;
  height: 18px;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(../img/top/case-item-ttl-bg.png) center/cover no-repeat;
}
.top-case-item__ttl--en {
  font-weight: 500;
  font-size: 36px;
  line-height: 1.3333333333;
  letter-spacing: 0.18em;
  padding: 21px 0 0 21px;
}
.top-case-item__ttl--ja {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.18em;
  padding: 2px 0 0 5px;
}
.top-case-item__imgs {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}
.top-case-item__before, .top-case-item__after {
  position: relative;
  width: 48%;
}
.top-case-item__img-ttl {
  font-weight: 500;
  font-size: 36px;
  line-height: 1.3333333333;
  letter-spacing: 0.18em;
  color: #fff;
  padding: 0 4px 4px;
  background: #42b1de;
}
.top-case-item__after .top-case-item__img-ttl {
  background: #fcc800;
}

.top-case-item__img-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px;
}
.top-case-item__img-grid img:nth-child(1) {
    grid-column: 1 / -1;
}
.top-case-item__img-grid img {
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 4px;
}


.top-case-item__img {
  margin-top: 15px;
  position: relative;
}

.top-case-item__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: calc(100% * 0.6936170213);
}
.top-case-item__img img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-case-item__txt {
  text-align: left;
  display: flex;
  flex-flow: column;
  gap: 10px;
  margin: 29px 10px 0;
}
.top-case-item__txt-flex {
  display: flex;
  align-items: center;
  gap: 1.5510948905%;
  padding-bottom: 10px;
  border-bottom: solid 1px #cdcdcd;	
}
.top-case-item__txt-ttl {
  width: 23.7226277372%;
  font-weight: 500;
  font-size: 20px;
  color: #42b1de;	
  line-height: 2;
  letter-spacing: 0.18em;
  text-align: center;	
}
.top-case-item__txt-desc {
  width: 73.9051094891%;
  font-size: 16px;
  font-weight:500;
  line-height: 1.6666666667;
  letter-spacing: 0.18em;
}
.top-case-item__txt-desc ul {
    padding-left: 2rem;
}
.top-case-item__txt-desc li {
    list-style: disc;
	margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
    .top-case-item__img-grid {
        grid-template-columns: 1fr;
    }
    .top-case-item__img-grid img:nth-child(1) {
        grid-column: auto;
    }
.top-case__item {
	margin-inline: 0px;
}	
}







/* POINT
-----------------------------------------------------------------*/
.top-point {
  padding-top: 40px;
}

.top-point-menu {
  width: 100%;
  padding-bottom: 133px;
  background: linear-gradient(to top, #f7f4ea, #fff) bottom/100% 676px no-repeat;
}
.top-point-menu__list {
  width: 100%;
  max-width: 1920px;
  margin: 7px auto 0;
}
.top-point-menu__item:not(:first-child) {
  margin-top: 28.8px;
}

.top-point-menu-box a {
  display: flex;
  -moz-column-gap: clamp(30px, 5.15625vw, 99px);
       column-gap: clamp(30px, 5.15625vw, 99px);
  transition: opacity 0.2s ease;
}
.top-point-menu-box a:hover {
  opacity: 0.7;
}
.top-point-menu-box__body {
  padding: 0.5em 10px 0 3.5833333333em;
  font-size: 24px;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: #403315;
  position: relative;
}
.top-point-menu-box__body::before {
  content: "";
  border-top: 1.5833333333em solid #403315;
  border-left: 0.8958333333em solid rgba(0, 0, 0, 0);
  border-right: 0.8958333333em solid rgba(0, 0, 0, 0);
  position: absolute;
  top: 1.9166666667em;
  left: 0;
}
.top-point-menu-box__txt {
  font-weight: 500;
  font-size: 2em;
  letter-spacing: 0.1em;
  line-height: 1.5625;
}
.top-point-menu-box__txt span {
  color: #509f3c;
  font-weight: 600;	
}
.top-point-menu-box__detail {
  margin-top: 6px;
}

.top-point-section {
  overflow: hidden;
}
.top-point-section__head {
  position: relative;
  z-index: 0;
}
.top-point-section__head::before {
  content: "";
  width: 100%;
  height: 661px;
  background: #f7f4ea;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.top-point-section__body--arrow {
  padding: 23px 0 68px;
  position: relative;
  background: linear-gradient(to top, #e1e1e1, #fff) bottom/100% 626px no-repeat;
}
.top-point-section__body--arrow::after {
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  content: "";
  width: 100%;
  height: 101px;
  background: #e2e1e1;
  position: absolute;
  top: auto;
  bottom: -97px;
  left: 50%;
  transform: translateX(-50%);
}
.top-point-section__bottom {
  padding: 260px 20px 110px;
  background: linear-gradient(to bottom, #b5a680, #e5ddc4);
  font-weight: 500;
  font-size: 60px;
  line-height: 1.75;
  letter-spacing: 0.1em;
  text-align: center;
  color: #342b16;
}
.top-point-section__bottom .em {
  color: #084109;
}
.top-point-section__bottom .underline {
  border-bottom: 3px solid #fff;
}

.top-point-head {
  position: relative;
  z-index: 0;
}
.top-point-head .c-point-mark {
  width: 100%;
  max-width: 1920px;
  position: relative;
  z-index: 1;
}
.top-point-head--left {
  margin-inline-end: calc((100% - 1920px) / 2);
}
.top-point-head--left .c-point-mark {
  margin-inline-start: auto;
}
.top-point-head--right {
  margin-inline-start: calc((100% - 1920px) / 2);
}
.top-point-head--right .c-point-mark {
  margin-inline-end: auto;
}
.top-point-head__content {
  padding: 30px 47px 36px 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.top-point-head--right .top-point-head__content {
  padding: 30px 0 36px 47px;
}
.top-point-head__txt {
  border-style: solid;
  border-width: 3px 3px 3px 0;
  border-color: #fff;
}
.top-point-head--right .top-point-head__txt {
  border-width: 3px 0 3px 3px;
}
.top-point-head__txt-inner {
  max-width: 1707px;
  display: block;
}
.top-point-head--left .top-point-head__txt-inner {
  margin-left: auto;
}
.top-point-head__ttl {
  white-space: nowrap;
  writing-mode: vertical-rl;
  display: flex;
  flex-direction: column;
  row-gap: 0.3888888889em;
  font: 600 clamp(24px, 3.75vw, 72px) "Shippori Mincho", serif;
  line-height: 1.389;
  letter-spacing: 0.15em;
  color: #5e412f;
  position: absolute;
  z-index: 1;
}
.top-point-head__ttl .txt {
  height: -moz-fit-content;
  height: fit-content;
  display: inline-block;
  padding: 0.2em;
  background: #fff;
}
.top-point-head__ttl .small {
  font-size: 0.8333333333em;
}
.top-point-head__img {
  width: 100%;
  position: absolute;
  left: auto;
  right: 0;
}
.top-point-head__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-point-head--right .top-point-head__img {
  right: auto;
}

.top-point-product {
  width: 100%;
  max-width: 1920px;
  margin-inline: auto;
  counter-reset: point-num;
}
.top-point-product__item {
  position: relative;
  z-index: 0;
}
.top-point-product__en {
  white-space: nowrap;
  font: 600 clamp(50px, 10.4166666667vw, 200px) "Shippori Mincho", serif;
  line-height: 1;
  letter-spacing: 0.025em;
  background: linear-gradient(-78deg, #746a54, #eee5c6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.27;
  position: absolute;
  top: -0.055em;
  left: 0;
  z-index: -1;
}
.top-point-product__content {
  display: flex;
}
.top-point-product__txt {
  flex: 0 0 63.5%;
}
.top-point-product__img {
  flex: 1;
}

.top-point-product-detail {
  padding: 12.2% 0 0 9.8%;
}
.top-point-product-detail__head {
  display: flex;
  position: relative;
  counter-increment: point-num;
}
.top-point-product-detail__head::before {
  content: counter(point-num, decimal-leading-zero);
  display: flex;
  align-items: center;
  padding-right: 0.5166666667em;
  border-right: 5px solid #403315;
  font: 500 clamp(30px, 3.125vw, 60px) "Shippori Mincho", serif;
  letter-spacing: 0.075em;
  line-height: 1;
  color: #abc73e;
}
.top-point-product-detail__ttl {
  padding: 16px 0 0 1.9375em;
}
.top-point-product-detail__sub {
  font-size: clamp(15px, 1.25vw, 24px);
  letter-spacing: 0.1em;
  line-height: 1.2;
   font-weight: 500;		
}
.top-point-product-detail__txt {
  margin-top: 6px;
  font: 600 clamp(28px, 5.2083333333vw, 100px) "Shippori Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 1.2;
  color: #403315;
}
.top-point-product-detail__body {
  margin-top: 49px;
  padding: 0 9%;
}
.top-point-product-detail__subttl {
  font-size: clamp(16px, 1.875vw, 36px);
  letter-spacing: 0em;
  line-height: 1.75;
  color: #161616;
 font-weight: 500;	
}
.top-point-product-detail__detail {
  font-size: clamp(15px, 1.25vw, 24px);
  letter-spacing: 0.1em;
  line-height: 1.75;
  font-weight: 500;	
}
.top-point-product-detail__detail:not(:first-child) {
  margin-top: 2.125em;
}

.top-point-product-note {
  width: 100%;
  max-width: 1254px;
  margin: 40px auto 0;
}
.top-point-product-note li {
  font-weight: 500;
  font-size: clamp(15px, 1.5625vw, 30px);
  letter-spacing: 0.1em;
  color: #403315;
}
.top-point-product-note li:not(:first-child) {
  margin-top: 10px;
}
.top-point-product-note span {
  display: inline-block;
  padding: 0 39px 5px 68px;
  padding: 0 1.3em 0.1666666667em 2.2666666667em;
  position: relative;
  z-index: 0;
}
.top-point-product-note span::after {
  content: "";
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 0.8em;
  display: block;
  background: url(../img/common/spike-dot.png) center/cover no-repeat;
  position: absolute;
  top: 0.7333333333em;
  left: 1.0333333333em;
}
.top-point-product-note span::before {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  background: #fff44a;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: skew(-21deg);
}

/* POINT01
-----------------------------------------------------------------*/
.top-point01 {
  padding-top: 28px;
}
.top-point01 .top-point-head__content {
  background-image: url(../img/top/top-point01-bg.jpg);
}
.top-point01 .top-point-head__ttl .txt {
  padding: 0.4027777778em 0.3472222222em 0.3333333333em 0.3333333333em;
}
.top-point01 .top-point-head__ttl .txt:nth-child(2) {
  margin-top: 1.375em;
  padding: 0.6111111111em 0.4027777778em 0 0.2916666667em;
}

.top-point01-content__ttl {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding: 0.45em 0.7333333333em 0.55em 0.8833333333em;
  background: #5e412f;
  font: 600 clamp(20px, 3.125vw, 60px) "Shippori Mincho", serif;
  letter-spacing: 0.15em;
  line-height: 1.5;
  color: #fff;
  text-align: center;
}
.top-point01-content__desc {
  width: 100%;
  margin-top: 44px;
  padding: 1.2708333333em 0 1.2504166667em;
  font: 600 clamp(20px, 2.5vw, 48px) "Shippori Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 2.0833333333;
  color: #333;
  text-align: center;
  position: relative;
  z-index: 0;
}
.top-point01-content__desc::before {
  content: "";
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 9.375em;
  background: #f7f4ea;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.top-point01-content__desc-ttl {
  font-size: 1.5em;
  letter-spacing: 0em;
  line-height: 1.111;
  color: #403315;
}
.top-point01-content__desc-txt {
  margin-top: 0.6041666667em;
}
.top-point01-content__desc-txt span {
  position: relative;
}
.top-point01-content__desc-txt span::before {
  content: attr(data-txt);
  width: 100%;
  display: block;
  font-size: 0.4166666667em;
  letter-spacing: 0.2em;
  position: absolute;
  top: -1.1em;
  left: 50%;
  transform: translateX(-50%);
}
.top-point01-content .top-point-product {
  padding-bottom: 14px;
}
.top-point01-content .top-point-product__item:nth-child(1) .top-point-product__img {
  max-width: 532px;
}
.top-point01-content .top-point-product__item:nth-child(2) .top-point-product__img {
  max-width: 467px;
}

.top-point01-note {
  padding-top: 160px;
  position: relative;
}
.top-point01-note::before {
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  content: "";
  display: block;
  width: 100%;
  max-width: 1462px;
  height: 113px;
  background: #c1b28a;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.top-point01-note__txt {
  text-align: center;
  font: 600 clamp(15px, 2.5vw, 48px) "Shippori Mincho", serif;
  letter-spacing: 0;
  line-height: 1.75;
  color: #333;
}
.top-point01-note__txt .num {
  position: relative;
}
.top-point01-note__txt .num::before {
  content: attr(data-txt);
  font: 500 0.5em "Shippori Mincho", serif;
  letter-spacing: 0.075em;
  color: #abc73e;
  position: absolute;
  top: 0.2916666667em;
  left: -46.5%;
}
.top-point01-note__txt .large {
  font-size: 1.25em;
}
.top-point01-note__txt .underline {
  position: relative;
    color: #1e5830;	
}
.top-point01-note__txt .underline::before {
  content: "";
  width: 100%;
  max-width: 583px;
  height: 0.1em;
  display: block;
  background: #a6cc74;
  position: absolute;
  top: auto;
  bottom: -0.1em;
  left: 48.7%;
  transform: translateX(-50%);
  border-radius: 3px;
}
.top-point01-note__txt .underline--02::before {
  max-width: 519px;
  left: 49.5%;
}
.top-point01-note__txt .underline--03::before {
  left: 50.5%;
}

.top-point01-surgicalguide {
  padding-top: 75px;
}
.top-point01-surgicalguide__ttl {
  padding: 0.4111111111em 0 0.4888888889em;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 500 clamp(30px, 4.6875vw, 90px) "Shippori Mincho", serif;
  letter-spacing: 0.15em;
  line-height: 1.3;
  color: #403315;
  position: relative;
  z-index: 0;
}
.top-point01-surgicalguide__en {
  white-space: nowrap;
  display: block;
  background: linear-gradient(-78deg, #746a54, #eee5c6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 2.2222222222em;
  letter-spacing: 0.028em;
  text-align: center;
  opacity: 0.2;
  position: absolute;
  top: 32%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.top-point01-surgicalguide__txt {
  font-weight: 500;
  font-size: clamp(15px, 1.875vw, 36px);
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: center;
}
.top-point01-surgicalguide__txt span {
  color: #f36262;
}
.top-point01-surgicalguide__img {
  max-width: 1324px;
  margin: 44px auto 0;
}
.top-point01-surgicalguide__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-point01-surgicalguide .c-merit__img {
  max-width: 518px;
}

/* POINT02
-----------------------------------------------------------------*/
.top-point02 {
  padding-top: 99px;
}
.top-point02 .top-point-head__content {
  background-image: url(../img/top/top-point02-bg.jpg);
  padding: 30px 0 36px 47px;
}
.top-point02 .top-point-head__ttl .txt {
  padding: 0.75em 0.2083333333em 0.4861111111em;
}
.top-point02 .top-point-head__ttl .txt:nth-child(2) {
  margin-top: 0.5833333333em;
  padding: 0.5138888889em 0.2083333333em 0.625em;
}
.top-point02 .top-point-head__ttl .txt:nth-child(3) {
  margin-top: 0.8888888889em;
  padding: 0.5416666667em 0.2083333333em 0.6527777778em;
}
.top-point02 .top-point-head__img::before {
  content: "";
  clip-path: polygon(68.6% 0%, 100% 0, 100% 100%, 0% 100%);
  opacity: 0.6;
  width: 100%;
  max-width: 42.1290322581%;
  height: 100%;
  display: block;
  background: linear-gradient(258deg, #746a54, #eee5c6);
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
}

.top-point02-content__list {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: clamp(10px, 3.59375vw, 69px);
       column-gap: clamp(10px, 3.59375vw, 69px);
}
.top-point02-content__item {
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 345px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/common/polygon-1.png) center/100% no-repeat;
  padding: 0 0 0.0666666667em 0.1166666667em;
  font: 400 clamp(22px, 3.125vw, 60px) "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.2;
  color: #fff;
  border-radius: 50%;
}
.top-point02-content .top-point-product__item:nth-child(1) .top-point-product__img {
  max-width: 609px;
}
.top-point02-content .top-point-product__item:nth-child(2) .top-point-product__img {
  max-width: 539px;
}
.top-point02-content .top-point-product-detail__sub {
  font: 400 clamp(22px, 3.125vw, 60px) "Shippori Mincho", serif;
  letter-spacing: 0.1em;
}

/* POINT03
-----------------------------------------------------------------*/
.top-point03 {
  padding-top: 84px;
}
.top-point03 .top-point-head__content {
  background: url(../img/top/top-point03-bg.jpg) center/cover no-repeat;
}
.top-point03 .top-point-head__txt {
  border: unset;
}
.top-point03 .top-point-head__ttl .txt {
  padding: 0.7222222222em 0.2083333333em 0;
  letter-spacing: 0.08em;
}
.top-point03 .top-point-head__ttl .txt-wrap {
  margin-top: 0.0833333333em;
}
.top-point03 .top-point-head__ttl .txt-wrap .txt {
  padding-bottom: 0.3333333333em;
}
.top-point03 .top-point-head__ttl .txt-wrap .txt:nth-of-type(2) {
  margin-top: 0.75em;
  transform: translateX(0.3055555556em);
}
.top-point03 .top-point-head__img::before {
  content: "";
  clip-path: polygon(104% 0, 0% 100%, 100% 100%);
  width: 25%;
  height: 100%;
  background: #916d3a;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  opacity: 0.3;
}
.top-point03__body {
  padding: 58px 0 100px;
}

.top-point03-intro__head {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 30px clamp(30px, 2.8645833333vw, 55px);
}
.top-point03-intro__txt {
  max-width: 846px;
}
.top-point03-intro__ttl {
  font: 500 48px "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: #5e412f;
}
.top-point03-intro__detail {
  margin-top: 1.7666666667em;
  padding: 0 2px;
  font-weight: 500;
  font-size: 30px;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: #161616;
}
.top-point03-intro__img {
  flex: 0 0 40.5%;
  max-width: 763px;
}
.top-point03-intro__list {
  counter-reset: intro-list;
  width: 100%;
  max-width: 1308px;
  margin: 2.0666666667em auto 0;
  font-weight: 500;
  font-size: 30px;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: #161616;
}
.top-point03-intro__item {
  counter-increment: intro-list;
  padding: 0.1333333333em 0 0 3.6666666667em;
  position: relative;
}
.top-point03-intro__item::before {
  content: counter(intro-list, decimal-leading-zero);
  font: 400 2em "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1;
  background: linear-gradient(to top, #b1a17a, #504429);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.top-point03-intro__item:not(:first-child) {
  margin-top: 1.1333333333em;
}
.top-point03-intro__item .underline {
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #fef561;
  text-underline-offset: -4px;
}
.top-point03-intro__item .marker {
  position: relative;
  z-index: 0;
}
.top-point03-intro__item .marker::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff44a;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.top-point03-product {
  width: 100%;
  max-width: 1714px;
  display: block;
  margin: 130px auto 0;
  position: relative;
  z-index: 0;
}
.top-point03-product__img {
  max-width: 39.3232205368%;
  position: relative;
}
.top-point03-product__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-point03-product__tag {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(10px, 1.09375vw, 21px);
       column-gap: clamp(10px, 1.09375vw, 21px);
  position: absolute;
  top: auto;
  left: -8%;
  bottom: -16.5%;
}
.top-point03-product__tag span {
  width: clamp(110px, 11.71875vw, 225px);
  height: clamp(110px, 11.71875vw, 225px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../img/common/polygon-2.png) center/cover no-repeat;
  font: 400 clamp(20px, 2.0833333333vw, 40px) "Shippori Mincho", serif;
  letter-spacing: 0.025em;
  line-height: 1.25;
  color: #fff;
  border-radius: 50%;
}
.top-point03-product__txt {
  padding-top: 21px;
}
.top-point03-product__ttl {
  width: 57.0011668611%;
  font: 500 48px "Shippori Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 1.75;
  background: linear-gradient(223deg, #4b4b4b, #331a0d);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.top-point03-product__detail {
  margin-top: 50px;
  padding: 23px 20px 121px;
  background: linear-gradient(-16.5deg, #f8f2de 50%, #f7f4ea 50%);
font-weight: 500;	
}

.top-point03-product-detail {
  display: block;
  width: 57.6061320755%;
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #383838;
}
.top-point03-product-detail__ttl {
  font: 400 30px "Shippori Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
}
.top-point03-product-detail__ttl span {
  padding: 0 13px 7px;
  border-bottom: 2px solid #4b4b4b;
}
.top-point03-product-detail__txt {
  margin-top: 55px;
}
.top-point03-product-detail__list {
  margin-top: 52px;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #393737;
}
.top-point03-product-detail__item {
  padding-left: 1.8333333333em;
  position: relative;
}
.top-point03-product-detail__item:not(:first-child) {
  margin-top: 1.125em;
}
.top-point03-product-detail__item::before {
  content: "";
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 1.1666666667em;
  display: block;
  background: url(../img/common/check-mark-3.png) center/cover no-repeat;
  position: absolute;
  top: 0.375em;
  left: 0;
}

/* POINT04
-----------------------------------------------------------------*/
.top-point04__head::before {
  content: none;
}
.top-point04 .top-point-head__content {
  background-image: url(../img/top/top-point04-bg.jpg);
  margin-left: 172px;
}
.top-point04 .top-point-head__txt {
  border: unset;
}
.top-point04 .top-point-head__ttl {
  row-gap: 12px;
  position: absolute;
  top: 1%;
  right: 6.69%;
  z-index: 1;
}
.top-point04 .top-point-head__ttl .txt {
  padding: 0.6944444444em 0.2083333333em 0.2361111111em;
}
.top-point04 .top-point-head__ttl .txt:nth-child(2) {
  margin-top: 1px;
  padding: 0.625em 0.2083333333em 0;
  letter-spacing: 0;
}
.top-point04 .top-point-head__ttl .txt:nth-child(3) {
  margin-top: 1.75em;
  padding: 0.4027777778em 0.2083333333em 0.4166666667em;
}
.top-point04 .top-point-head__ttl .small {
  font-size: 0.7638888889em;
}
.top-point04 .top-point-head__img::before {
  content: "";
  clip-path: polygon(-24% 0%, 0% 100%, 80% 100%);
  width: 37.6371852808%;
  height: 100%;
  background: #916d3a;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.6;
}
.top-point04__body {
  padding-bottom: 210px;
}
.top-point04__body::after {
  content: none;
}
.top-point04__bottom {
  clip-path: polygon(50% 141px, 100% 0, 100% calc(100% - 141px), 50% 100%, 0 calc(100% - 141px), 0 0);
  background: linear-gradient(to bottom, #b5a680, #e5ddc4 70%);
  padding-top: 181px;
  padding-bottom: 97px;
  font-weight: 700;
  font-size: 72px;
  letter-spacing: 0;
  line-height: 1.36;
}
.top-point04__body + .top-point04__bottom {
  margin-top: -73px;
}
.top-point04__bottom-txt {
  padding-right: 8px;
  color: #5e412f;
}
.top-point04__bottom-txt .stripe {
  position: relative;
  z-index: 0;
}
.top-point04__bottom-txt .stripe::before {
  content: "";
  width: 104%;
  height: 0.6527777778em;
  background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5) 0.0555555556em, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 0.1388888889em);
  background-position: bottom left;
  background-repeat: repeat-x;
  position: absolute;
  top: auto;
  left: 50%;
  bottom: -0.0833333333em;
  z-index: -1;
  transform: translateX(-50%);
}
.top-point04__info {
  margin-top: -141px;
  padding: 160px 20px 65px;
  background: url(../img/top/top-point04-info-bg.png) center/cover no-repeat;
}
.top-point04__info-txt {
  font: 500 55px "Shippori Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 1.4545454545;
  color: #403315;
  text-align: center;
  padding-left: 19px;
}
.top-point04__info-detail {
  width: 100%;
  max-width: 1006px;
  background: #fbf6f2;
  border: solid 6px #a9c538;
  margin: 23px auto 0;
  padding: 1.8333333333em 1.625em 2em;
  font-weight: 500;
  font-size: 24px;
  letter-spacing: 0;
  line-height: 1.75;
}

.top-point04-head__polygon {
  position: absolute;
  top: 16.2%;
  left: auto;
  right: 13.2%;
}
.top-point04-head__polygon-img {
  width: clamp(170px, 17.7083333333vw, 340px);
}
.top-point04-head__polygon-img:nth-child(2) {
  margin-top: 6.2%;
  margin-left: 74px;
}
.top-point04-head__polygon-img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-point04-question {
  width: 100%;
  max-width: 1362px;
  margin-inline: auto;
}
.top-point04-question__content:not(:first-child) {
  margin-top: 86px;
}
.top-point04-question__ttl {
  padding-left: 0.8055555556em;
  font: 500 72px "Shippori Mincho", serif;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #5e412f;
  position: relative;
}
.top-point04-question__ttl::before {
  content: "";
  width: 0;
  height: 0;
  border-top: solid 0.2916666667em rgba(0, 0, 0, 0);
  border-left: solid 0.5em #a9c538;
  border-bottom: solid 0.2916666667em rgba(0, 0, 0, 0);
  position: absolute;
  top: 55%;
  left: 0;
  transform: translateY(-50%);
}
.top-point04-question__ttl span {
  font-size: 0.5em;
  letter-spacing: 0.1em;
}
.top-point04-question__detail {
  display: flex;
  -moz-column-gap: 186px;
       column-gap: 186px;
  margin-top: 18px;
}
.top-point04-question__img {
  width: 100%;
  max-width: 500px;
}
.top-point04-question__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}
.top-point04-question__list {
  width: 100%;
}
.top-point04-question__item {
  width: 100%;
  max-width: 645.56px;
  display: block;
  padding: 0.8214285714em 2.1428571429em 0.6071428571em 2.5em;
  background: #fdf9ec;
  font-size: 28px;
  letter-spacing: 0.08em;
  line-height: 1.6071428571;
  border-radius: 10px;
  position: relative;
    font-weight: 500;	
}
.top-point04-question__item:not(:first-child) {
  margin-top: 1.5714285714em;
}
.top-point04-question__item::before {
  content: "";
  display: block;
  border-top: solid 1.0178571429em rgba(0, 0, 0, 0);
  border-right: solid 1.6785714286em #fdf9ec;
  border-bottom: solid 1.0178571429em rgba(0, 0, 0, 0);
  position: absolute;
  top: 50%;
  left: -1.6785714286em;
  transform: translateY(-50%);
}
.top-point04-question__item span {
  color: #dc2a2a;
}

/* POINT05
-----------------------------------------------------------------*/
.top-point05 .top-point-head__txt {
  border: unset;
}
.top-point05 .top-point-head__content {
  background-image: url(../img/top/top-point05-bg.jpg);
}
.top-point05 .top-point-head__ttl .txt {
  padding: 0.5138888889em 0.2em 0.6666666667em;
  letter-spacing: 0.075em;
}
.top-point05 .top-point-head__ttl .small {
  padding: 0.7708333333em 0.2em 0.6458333333em;
  font-size: 0.6666666667em;
  letter-spacing: 0.075em;
  line-height: 1.6836;
}
.top-point05__body {
  padding-top: 31px;
}

.top-point05-info {
  padding-bottom: 139px;
  position: relative;
  z-index: 0;
}
.top-point05-info::before {
  content: "";
  width: 100%;
  height: calc(100% - 116px);
  display: block;
  background: url(../img/top/top-point05-info-bg.png) top/100% repeat-y;
  position: absolute;
  top: auto;
  left: 50%;
  bottom: 0;
  z-index: -1;
  transform: translateX(-50%);
}
.top-point05-info__inner {
  max-width: 1240px;
  margin-inline: auto;
  padding: 0 20px;
}
.top-point05-info__txt {
  padding: 61px 140px 70px 184px;
  background: #fff;
}
.top-point05-info__txt-detail {
  font-size: 30px;
  line-height: 1.55;
  letter-spacing: 0;
  color: #000;
}
.top-point05-info__txt-detail .dotted-line {
  border-bottom: 7px dotted #cacf3b;
}
.top-point05-info__txt-detail .em {
  font-weight: 500;
  font-size: 1.6em;
}
.top-point05-info__txt-detail .color-red {
  font-weight: 500;
  color: #cb2020;
}
.top-point05-info__txt-detail:not(:first-child) {
  margin-top: 0.3666666667em;
}
.top-point05-info__txt-detail:nth-child(2) {
  line-height: 1.75;
}
.top-point05-info__content {
  margin-top: 7px;
}
.top-point05-info__head {
  text-align: center;
}
.top-point05-info__ttl {
  display: inline-block;
  margin-inline: auto;
  padding-right: 0.625em;
  padding-left: 0.9166666667em;
  font-weight: 500;
  font-size: 48px;
  line-height: 1.3;
  letter-spacing: 0;
  color: #000;
  position: relative;
}
.top-point05-info__ttl::before, .top-point05-info__ttl::after {
  content: "";
  width: 0.0625em;
  height: 1.3333333333em;
  background: #333;
  transform: rotate(-25deg);
  position: absolute;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
}
.top-point05-info__ttl::after {
  transform: rotate(25deg);
  right: 0;
  left: auto;
}
.top-point05-info__ttl span {
  padding: 0 0.2222222222em;
  font-weight: 700;
  font-size: 1.5em;
  color: #084109;
  letter-spacing: 0.05em;
}

.top-point05-implant {
  margin-top: 42px;
}
.top-point05-implant__ttl {
  background: linear-gradient(5.5deg, #6e644b 50%, #61573f 50%);
  padding: 15px 20px 21px;
  font: 400 48px "Shippori Mincho", serif;
  color: #fff;
  letter-spacing: 0;
  line-height: 1.75;
  text-align: center;
  position: relative;
  z-index: 0;
}
.top-point05-implant__detail {
  display: flex;
  justify-content: center;
  -moz-column-gap: clamp(50px, 5.6770833333vw, 109px);
       column-gap: clamp(50px, 5.6770833333vw, 109px);
  padding: 33px 20px 51px;
}
.top-point05-implant__img {
  padding-top: 7px;
}
.top-point05-implant__img--01 {
  max-width: 502px;
}
.top-point05-implant__img--02 {
  max-width: 541px;
}
.top-point05-implant__img--03 {
  max-width: 500px;
}
.top-point05-implant__txt {
  width: 100%;
  max-width: 405px;
}

.top-point05-implant-price {
  width: 100%;
}
.top-point05-implant-price__num {
  text-align: center;
  font-weight: 700;
  font-size: 50px;
  letter-spacing: 0.05em;
  line-height: 1.33;
  color: #333;
  position: relative;
  z-index: 0;
}
.top-point05-implant-price__num::before {
  content: "";
  width: 100%;
  height: 0.6em;
  display: block;
  background: #f5ef8d;
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.top-point05-implant-price__num .num {
  font-size: 2em;
  letter-spacing: 0.05em;
  color: #084109;
}
.top-point05-implant-price__num .yen {
  margin-left: 7px;
  position: relative;
}
.top-point05-implant-price__num .yen::before {
  content: "（税込）";
  font-size: 0.4em;
  letter-spacing: 0.05em;
  line-height: 1.75;
  position: absolute;
  top: -1em;
  left: auto;
  right: -0.3em;
}
.top-point05-implant-price__list {
  margin-top: 19px;
  padding: 23px 74px 25px 48px;
  background: #fbfaf7;
}
.top-point05-implant-price__item {
  display: flex;
  padding-left: calc(0.75em + 6px);
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.04em;
  line-height: 1.7;
  color: #333;
  position: relative;
}
.top-point05-implant-price__item::before {
  content: "";
  width: 6px;
  height: 6px;
  background: #6e644b;
  border-radius: 50%;
  position: absolute;
  top: 0.75em;
  left: 0;
}
.top-point05-implant-price__ttl {
  width: 45%;
}
.top-point05-implant-price__txt {
  width: 55%;
  display: grid;
  grid-template-columns: 1.6em 1fr;
  align-items: center;
  text-align: right;
}
.top-point05-implant-price__txt::before {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  background: #333;
}

.top-point05-implant-others {
  margin-top: 29px;
}
.top-point05-implant-others__ttl {
  display: block;
  background: #f9efd7;
  -o-border-image: url(../img/top/top-point05-implant-others-ttl.jpg) round;
     border-image: url(../img/top/top-point05-implant-others-ttl.jpg) round;
  border-image-slice: 62 fill;
  border-image-width: 31px;
  padding: 33px 28px 20px;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
  color: #5d4c33;
  position: relative;
  z-index: 0;
}
.top-point05-implant-others__ttl::before {
  content: "";
  display: block;
  border-top: solid 1.7333333333em #f9efd7;
  border-left: solid 1em rgba(0, 0, 0, 0);
  border-right: solid 1em rgba(0, 0, 0, 0);
  position: absolute;
  top: auto;
  left: 50.1%;
  bottom: -1.6em;
  transform: translateX(-50%);
  z-index: -1;
}
.top-point05-implant-others__list {
  margin-top: 68px;
}
.top-point05-implant-others__item {
  min-height: 131px;
  display: grid;
  grid-template-columns: 1fr 303px;
  padding: 13px 20px 14px;
  background: #fff;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1.75;
  color: #333;
  border: solid 3px #bbbbbb;
  border-radius: 10px;
}
.top-point05-implant-others__item:not(:first-child) {
  margin-top: 13px;
}
.top-point05-implant-others__txt {
  display: flex;
  align-items: center;
  gap: 10px 20px;
  padding: 0 43px;
}
.top-point05-implant-others__name {
  flex: 1;
  font-size: 24px;
	font-weight:600;
}
.top-point05-implant-others__detail {
  flex: 0 0 57.6470588235%;
}
.top-point05-implant-others__price {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 0 37px 0 40px;
  font-size: 36px;
  border-left: solid 3px #bbbbbb;
}
.top-point05-implant-others__price-txt {
  text-align: center;
}
.top-point05-implant-others__price-txt .yen {
  font-size: 25px;
}
.top-point05-implant-others__price-txt .tax {
  font-size: 16px;
}

.top-point05-loan {
  padding: 76px 0 101px;
}
.top-point05-loan__head {
  text-align: center;
}
.top-point05-loan__ttl {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 14.5972222222em;
  font: 500 clamp(24px, 3.75vw, 72px) "Shippori Mincho", serif;
  line-height: 1.75;
  letter-spacing: 0.15em;
  color: #5d4c33;
  position: relative;
}
.top-point05-loan__ttl .txt-bg {
  width: -moz-fit-content;
  width: fit-content;
  display: inline-flex;
  align-items: baseline;
  padding: 0.1944444444em 0.8333333333em;
  background: linear-gradient(to top, #d0bea5, #faeedd);
  white-space: nowrap;
}
.top-point05-loan__ttl .txt-bg:nth-child(1) {
  padding-left: 0.2638888889em;
  padding-right: 0.4583333333em;
}
.top-point05-loan__ttl .txt-bg:nth-child(2) {
  margin-top: 0.4166666667em;
  padding-right: 0.4583333333em;
}
.top-point05-loan__ttl .txt-bg span {
  font-size: 0.8333333333em;
  letter-spacing: 0.15em;
  transform: translateY(0.1111111111em);
}
.top-point05-loan__intro {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  margin: 38px auto 0;
  padding: 0 1.5277777778em 8px 2.1666666667em;
  font-weight: 500;
  font-size: clamp(18px, 1.875vw, 36px);
  letter-spacing: 0.15em;
  line-height: 1.75;
  color: #333333;
  position: relative;
}
.top-point05-loan__intro::before, .top-point05-loan__intro::after {
  content: "";
  width: 0.1111111111em;
  height: 3.7777777778em;
  background: #5d4c33;
  display: inline-block;
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
  transform: rotate(-19.5deg);
}
.top-point05-loan__intro::after {
  left: auto;
  right: 0;
  transform: rotate(19.5deg);
}

.top-point05-payment {
  width: 100%;
  max-width: 1640px;
  margin: 74px auto 0;
  background: #efefef;
}
.top-point05-payment__ttl {
  width: 100%;
  display: block;
  background: #fdf9ec;
  padding: 17px 140px 20px;
  font-weight: 500;
  font-size: clamp(20px, 1.875vw, 36px);
  letter-spacing: 0.15em;
  line-height: 1.75;
  text-align: center;
  color: #5d4c33;
  position: relative;
}
.top-point05-payment__ttl::before, .top-point05-payment__ttl::after {
  content: "";
  flex: 1;
  width: 100%;
  max-width: 140px;
  height: 100%;
  background: url(../img/top/dental-loan-ttl-eff.png) center/100% 100% no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}
.top-point05-payment__ttl::after {
  transform: scale(-1, 1);
  left: auto;
  right: 0;
}
.top-point05-payment__list {
  display: flex;
  justify-content: center;
  gap: 30px clamp(62px, 6.4583333333vw, 124px);
  margin-top: 38px;
  padding: 0 20px 42px;
}
.top-point05-payment__item {
  aspect-ratio: 1/1;
  width: 100%;
  max-width: clamp(150px, 15.625vw, 300px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #fff;
  font-weight: 500;
  font-size: clamp(15px, 1.5625vw, 30px);
  letter-spacing: -0.05em;
  line-height: 1.5;
}
.top-point05-payment__item:nth-child(1) {
  letter-spacing: 0.05em;
}
.top-point05-payment__item:nth-child(2) {
  padding-bottom: 9px;
}
.top-point05-payment__item:nth-child(3) {
  padding-top: 4px;
}
.top-point05-payment__item:nth-child(1) .top-point05-payment__item-ttl {
  padding-left: 3px;
}
.top-point05-payment__item:nth-child(2) .top-point05-payment__item-ttl {
  padding-right: 5px;
}
.top-point05-payment__item:nth-child(3) .top-point05-payment__item-ttl {
  padding-left: 0.2777777778em;
}
.top-point05-payment__item-icon {
  width: 100%;
  margin-top: 0.5333333333em;
}
.top-point05-payment__item-icon img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-point05-payment__item-icon--cash {
  max-width: 3.6666666667em;
}
.top-point05-payment__item-icon--card {
  max-width: 4.3em;
}
.top-point05-payment__item-icon--loan {
  max-width: 4.4em;
}
.top-point05-payment__item:nth-child(2) .top-point05-payment__item-icon {
  margin-top: 1em;
}

.top-point05-loan-about {
  max-width: 1540px;
  display: flex;
  align-items: flex-start;
  gap: 20px clamp(30px, 5.5729166667vw, 107px);
  margin: 82px auto 0;
}
.top-point05-loan-about__jaccs {
  width: 100%;
  max-width: 462px;
  padding: 19px 5px 28px 18px;
  border-top: 5px solid #009944;
  border-bottom: 5px solid #009944;
}
.top-point05-loan-about__jaccs-logo {
  aspect-ratio: 421/169;
  width: 100%;
  max-width: clamp(210.5px, 21.9270833333vw, 421px);
  margin: auto;
}
.top-point05-loan-about__jaccs-txt {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0.7777777778em auto 0;
  font: 500 clamp(18px, 1.875vw, 36px) "Shippori Mincho", serif;
  letter-spacing: 0.15em;
  line-height: 1.75;
  color: #333333;
}
.top-point05-loan-about__content {
  width: 100%;
  max-width: 880px;
  font-weight: 500;
  font-size: clamp(15px, 0.9375vw, 18px);
  letter-spacing: 0.15em;
  line-height: 1.75;
}
.top-point05-loan-about__ttl {
  font-size: 2.6666666667em;
  letter-spacing: 0.15em;
  line-height: 1.5;
}
.top-point05-loan-about__txt {
  margin-top: 1.1666666667em;
}
.top-point05-loan-about__detail:not(:first-child) {
  margin-top: 1.3333333333em;
}
.top-point05-loan-about__detail:last-child {
  margin-top: 1.7222222222em;
}

.top-point05-service {
  margin-top: 158px;
}
.top-point05-service__bnr {
  padding: 0.8666666667em 0 1.1666666667em;
  background: linear-gradient(to top, #e4dcc3, #b6a781);
  font: 500 clamp(20px, 3.125vw, 60px) "Shippori Mincho", serif;
  letter-spacing: 0.15em;
  line-height: 1.3;
  color: #333333;
  text-align: center;
  position: relative;
  z-index: 0;
}
.top-point05-service__bnr::before {
  content: "";
  border: solid 0.6566666667em rgba(0, 0, 0, 0);
  border-top: 1.1375em solid #e3dbc3;
  position: absolute;
  top: auto;
  bottom: 0.3166666667em;
  left: 49.92%;
  transform: translate(-50%, 100%);
  z-index: -1;
}
.top-point05-service__bnr-txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 600;	
}
.top-point05-service__bnr-txt span {
  letter-spacing: 0.05em;
  color: #084109;
}
.top-point05-service__content {
  margin-top: 100px;
}
.top-point05-service__ttl {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
  margin-inline: auto;
  font-weight: 700;
  font-size: clamp(22px, 2.5vw, 48px);
  letter-spacing: 0.15em;
  color: #d94762;
  line-height: 1.5;
  text-align: center;
  position: relative;
}
.top-point05-service__ttl span {
  font-size: 0.625em;
  letter-spacing: 0.15em;
}
.top-point05-service__case {
  width: 100%;
  max-width: 1310.16px;
  margin: 49px auto 0;
}
.top-point05-service__about {
  margin-top: 2.5416666667em;
  font-weight: 500;
  font-size: clamp(15px, 1.25vw, 24px);
  letter-spacing: 0.15em;
  line-height: 1.75;
  color: #333333;
}
.top-point05-service__about-ttl {
  font: 500 2em "Shippori Mincho", serif;
  letter-spacing: 0.15em;
}
.top-point05-service__about-txt {
  margin-top: 1.0833333333em;
}

.top-point05-case__head {
  width: 100%;
  min-height: 87px;
  display: grid;
  grid-template-columns: 85px 1fr;
  align-items: flex-start;
  background: #e5ddc4;
}
.top-point05-case__head::before {
  content: "例";
  width: 85px;
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: clamp(24px, 2.5vw, 48px);
  letter-spacing: 0.15em;
  line-height: 1;
  color: #fff;
  background: linear-gradient(-45deg, #acc759 50%, #cacf3b 50%);
}
.top-point05-case__ttl {
  margin: auto 0;
  padding: 0.0833333333em 1.8055555556em 0.2777777778em;
  font-weight: 500;
  font-size: clamp(18px, 1.875vw, 36px);
  letter-spacing: 0.15em;
  line-height: 1.5;
  color: #392525;
}
.top-point05-case__ttl span {
  font-size: 1.3333333333em;
  letter-spacing: 0.15em;
}
.top-point05-case__content {
  padding: 34px 25px 38px 21px;
  background: #fdfaef;
}

.top-point05-case-detail {
  width: 100%;
  max-width: clamp(544px, 56.6666666667vw, 1088px);
  display: grid;
  grid-template-columns: 11.5666666667em 1fr;
  gap: clamp(4.5px, 0.46875vw, 9px);
  margin-inline: auto;
  font-weight: 500;
  font-size: clamp(16px, 1.5625vw, 30px);
  letter-spacing: 0.15em;
  line-height: 1.5;
  color: #392525;
}
.top-point05-case-detail__txt .border-box {
  display: inline-block;
  margin: -0.1333333333em 0 0 0.5666666667em;
  padding: 0 0.4em 0.1333333333em 0.4666666667em;
  background: #fff;
  color: #d11e1e;
  border: 3px solid #392525;
}
.top-point05-case-detail__txt .border-box span {
  margin-top: -3px;
  padding-bottom: 2px;
  font-weight: 900;
  font-size: 1.1666666667em;
  letter-spacing: 0.15em;
  line-height: 1.3;
  position: relative;
  z-index: 0;
}
.top-point05-case-detail__txt .border-box span::before {
  content: "";
  width: 100%;
  height: 4px;
  background: #cacf3b;
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.top-point05-case-detail__box {
  display: flex;
}

/* POINT06
-----------------------------------------------------------------*/
.top-point06 .top-point-section__head::before {
  content: none;
}
.top-point06 .top-point-head .c-point-mark {
  margin: 0 auto;
}
.top-point06 .top-point-head__content {
  padding: 34px 0 46px;
  background: #f7f4ea;
}
.top-point06 .top-point-head__txt {
  border: none;
}
.top-point06 .top-point-head__txt-inner {
  max-width: 1920px;
  margin-inline: auto;
}
.top-point06 .top-point-head__ttl {
  row-gap: 0.3611111111em;
  top: 11.7%;
  left: 5%;
}
.top-point06 .top-point-head__ttl .txt {
  padding-top: 0.75em;
  padding-bottom: 0.6111111111em;
  letter-spacing: 0.08em;
}
.top-point06 .top-point-head__ttl .txt:nth-child(2) {
  margin-top: 1.0416666667em;
  padding-top: 0.6805555556em;
}
.top-point06 .top-point-head__img {
  max-width: 61.3020833333%;
  right: auto;
  left: 0;
}
.top-point06__body {
  padding: 88px 0 101px;
}

.top-point06-intro {
  margin-left: 48.78%;
  padding-top: 4.7%;
  position: relative;
}
.top-point06-intro__inner {
  width: 100%;
  max-width: 1688px;
  margin-inline: auto;
  padding: 0 25px;
}
.top-point06-intro__list {
  font-weight: 500;
  font-size: 48px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #4a4a4a;
}
.top-point06-intro__item {
  padding-left: 1.2291666667em;
  position: relative;
}
.top-point06-intro__item:nth-child(2) {
  margin: 0.2083333333em 0 0 1.1875em;
}
.top-point06-intro__item:nth-child(3) {
  margin: 0.3958333333em 0 0 2.7291666667em;
}
.top-point06-intro__item:nth-child(4) {
  margin: 0.4375em 0 0 3.8333333333em;
}
.top-point06-intro__item:nth-child(5) {
  margin: 0.1458333333em 0 0 5.8333333333em;
}
.top-point06-intro__item::before {
  content: "";
  aspect-ratio: 1/1;
  width: 100%;
  max-width: 0.5625em;
  display: inline-block;
  border-radius: 50%;
  background: #c1b28a;
  position: absolute;
  top: 0.75em;
  left: 0;
}
.top-point06-intro__item .underline {
  border-bottom: 10px solid #fff;
}
.top-point06-intro__item .em {
  font-weight: 700;
  font-size: 1.25em;
  letter-spacing: 0.1em;
  color: #a9c538;
}
.top-point06-intro__item .decrease-spacing {
  display: inline-block;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.top-point06-intro__img {
  width: 100%;
  max-width: 51.0416666667%;
  height: 691px;
  display: block;
  clip-path: polygon(0 0, 100% 0%, 100% 100%, 33.3% 100%);
  position: absolute;
  top: auto;
  right: 0;
  bottom: -6.1%;
  left: auto;
  z-index: 1;
}
.top-point06-intro__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-point06-parking {
  position: relative;
}
.top-point06-parking__img {
  width: 100%;
  max-width: 25.3645833333%;
  height: 481px;
}
.top-point06-parking__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-point06-parking__detail {
  width: 100%;
  max-width: 1628px;
  padding: 2.3666666667em 3.5em 3.8333333333em;
  margin-inline: auto;
  background: #fff;
  font-weight: 500;
  font-size: 30px;
  color: #333333;
  line-height: 1.75;
  letter-spacing: 0;
  box-shadow: 0 14px 25.38px 1.62px rgba(151, 151, 151, 0.34);
  position: relative;
  z-index: 0;
}
.top-point06-parking__detail::after {
  content: "";
  display: inline-block;
  border-bottom: 7.1666666667em solid #e5d7ac;
  border-left: 7.1em solid rgba(0, 0, 0, 0);
  position: absolute;
  top: auto;
  right: 1.5em;
  bottom: 1.5333333333em;
  left: auto;
  z-index: -1;
}
.top-point06-parking__txt:not(:first-child) {
  margin-top: 1.75em;
}

/* 一般歯科
-----------------------------------------------------------------*/
.top-about {
  padding: 118px 0 110px;
  background: linear-gradient(to bottom, #f7f4ea, rgba(0, 0, 0, 0)) top/100% 611px no-repeat;
}
.top-about__head {
  font: 500 36px "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #4d4d4d;
  text-align: center;
}
.top-about__ttl {
  margin-top: 10px;
  font-size: 1.6666666667em;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.top-about__ttl span {
  position: relative;
  z-index: 0;
}
.top-about__ttl span::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  padding: 0 0.25em;
  border: solid 1px #c1ac67;
  position: absolute;
  top: 0.05em;
  left: -0.3666666667em;
  z-index: -1;
}
.top-about__body {
  margin-top: 54px;
}

.top-about-intro {
  font-size: 24px;
  letter-spacing: 0.1em;
  line-height: 2em;
  color: #4d4d4d;
  text-align: center;
}
.top-about-intro__head {
  width: 100%;
  max-width: 1172px;
  display: block;
  position: relative;
  margin-inline: auto;
}
.top-about-intro__balloon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6.7142857143em;
  height: 6.7142857143em;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.4285714286;
  letter-spacing: 0;
  color: #5e412f;
  text-align: center;
  border: solid 3px #403315;
  border-radius: 50%;
  position: absolute;
  top: -64%;
  right: 0;
  left: auto;
}
.top-about-intro__balloon::before {
  content: "";
  width: 1.9285714286em;
  height: 3px;
  display: inline-block;
  background: #403315;
  position: absolute;
  top: auto;
  left: -1.2857142857em;
  bottom: 1.9642857143em;
  transform: rotate(-25deg);
}
.top-about-intro__ttl {
  display: inline-block;
  padding: 0.3888888889em 2.0555555556em 0.4444444444em 2.25em;
  font-weight: 500;
  font-size: 36px;
  letter-spacing: 0.1em;
  line-height: 1.6666666667;
  color: #a9c538;
  position: relative;
}
.top-about-intro__ttl::before, .top-about-intro__ttl::after {
  content: "";
  width: 1.1944444444em;
  height: 1.1944444444em;
  border-style: solid;
  border-width: 5px 0 0 5px;
  border-color: #a9c538;
  position: absolute;
  top: 0;
  left: 0;
}
.top-about-intro__ttl::after {
  border-width: 0 5px 5px 0;
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
}
.top-about-intro__txt {
  margin-top: 42px;
  font-weight: 500;	
}

.top-about-care {
  width: 100%;
  max-width: 1624px;
  margin: 29px auto 0;
}
.top-about-care__head {
  text-align: center;
}
.top-about-care__ttl {
  display: inline-block;
  padding: 10px 29px 12px 35px;
  font: 500 36px "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #4d4d4d;
  position: relative;
}
.top-about-care__ttl::before, .top-about-care__ttl::after {
  content: "";
  display: block;
  width: 3px;
  height: 85%;
  background: #70604a;
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
  transform: rotate(-27deg);
}
.top-about-care__ttl::after {
  left: auto;
  right: 0;
  transform: rotate(27deg);
}
.top-about-care__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px clamp(20px, 3.2291666667vw, 62px);
  justify-content: space-between;
  margin-top: 42px;
}
.top-about-care__item {
  width: 100%;
  max-width: 500px;
  margin-inline: auto;
}

.top-about-care-detail {
  width: 100%;
  height: 100%;
  display: block;
  padding: 2.6111111111em 2.8333333333em 1.9444444444em;
  background: #c1b28a;
  border-radius: 10px;
  font-size: clamp(16px, 0.9375vw, 18px);
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #fff;
}
.top-about-care-detail__ttl {
  font: 500 2em "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
}
.top-about-care-detail__img {
  width: 100%;
  max-width: 397px;
  margin: 25px auto 0;
}
.top-about-care-detail__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-about-care-detail__body {
  margin-top: 28px;
}
.top-about-care-detail__txt:not(:first-child) {
  margin-top: 0.6111111111em;
}
.top-about-care-detail__cat-list {
  margin-top: 22px;
}
.top-about-care-detail__cat-item {
  font-weight: 500;
  font-size: clamp(18px, 1.25vw, 24px);
  letter-spacing: 0.025em;
  line-height: 1.5;
}
.top-about-care-detail__cat-item:not(:first-child) {
  margin-top: 9px;
}
.top-about-care-detail__cat-item span {
  padding: 2px 13px;
  background: #968a6a;
  color: #fff;
}

/* 治療の流れ
-----------------------------------------------------------------*/
.top-flow {
  padding: 11px 0 114px;
  background: linear-gradient(-63deg, #f9f7ef, #e8e3d1 55%, #fff 100%);
}
.top-flow__list {
  width: 100%;
  max-width: 1779px;
  display: grid;
  gap: 82px clamp(70px, 7.2916666667vw, 140px);
  grid-template-columns: repeat(3, 1fr);
  margin: 65px auto 0;
}
.top-flow__item {
  width: 100%;
  max-width: 500px;
  padding: 12px 12px 31px;
  background: #fff;
  position: relative;
}
.top-flow__item::before {
  content: "";
  aspect-ratio: 71/37;
  width: 100%;
  max-width: clamp(35px, 3.6979166667vw, 71px);
  display: block;
  background: url(../img/top/top-flow-arrow.png) center/cover no-repeat;
  position: absolute;
  top: 50%;
  left: -7.5%;
  transform: translate(-100%, -50%);
}
.top-flow__step {
  width: 126px;
  height: 126px;
  display: block;
  padding: 11px 13px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.top-flow__step::before {
  content: "";
  border-top: solid 126px rgba(193, 178, 138, 0.6);
  border-right: solid 126px rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.top-flow__step img {
  width: 100%;
  max-width: 42px;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-flow__img {
  width: 100%;
  max-width: 470px;
}
.top-flow__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-flow__txt {
  margin-top: 12px;
  padding: 0 17px;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.75;
  color: #000;
}
.top-flow__ttl {
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0;
  line-height: 1.75;
  color: #af7338;
  text-align: center;
}
.top-flow__detail {
  margin-top: 2px;
}

/* よくある質問
-----------------------------------------------------------------*/
.top-faq {
  padding: 123px 0 110px;
  color: #333333;
}
.top-faq__content {
  padding: 103px 0 165px;
  background-color: #fff;
  background-image: radial-gradient(circle, #efefef 5px, transparent 5px);
  background-position: 0 -12px;
  background-size: 40px 40px;
}
.top-faq__list {
  width: 100%;
  max-width: 1313px;
  margin: 41px auto 0;
}

.top-faq-item {
  padding: 28px 14px 33px;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.75;
  border-bottom: solid 3px #f7f4ea;
}
.top-faq-item__icon {
  cursor: pointer;
  width: 1.875em;
  height: 1.875em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #968a6a;
  font-size: 24px;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  border-radius: 5px;
  position: absolute;
  top: 0;
  left: 0.3em;
}
.top-faq-item__icon::after {
  content: "";
  width: 0.7083333333em;
  height: 0.4583333333em;
  border-radius: 0 0 0.4583333333em 0.4583333333em;
  background: #968a6a;
  position: absolute;
  top: 0.3em;
  left: -0.3em;
}
.top-faq-item__icon--a {
  background: #a9c538;
  top: 10px;
}
.top-faq-item__icon--a::after {
  background: #a9c538;
  top: 0.375em;
  left: auto;
  right: -0.3em;
}
.top-faq-item__head {
  cursor: pointer;
  min-height: 1.875em;
  display: flex;
  align-items: center;
  padding: 6px 60px 6px 79px;
  position: relative;
}
.top-faq-item__q {
  font-weight: 500;
  font-size: 1.3333333333em;
  line-height: 1.25;
  letter-spacing: 0;
}
.top-faq-item__btn {
  width: 31px;
  height: 31px;
  margin: 0;
  padding: 0;
  background: unset;
  position: absolute;
  top: 0;
  right: 22px;
  left: auto;
}
.top-faq-item__btn::after {
  content: "";
  width: 20px;
  height: 20px;
  border-top: 2px solid #c1ac67;
  border-left: 2px solid #c1ac67;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-135deg);
}
.top-faq-item.active .top-faq-item__btn::after {
  transform: translate(-50%, 15%) rotate(45deg);
}
.top-faq-item__body {
  display: none;
  margin: 27px 0 4px;
  position: relative;
}
.top-faq-item__a {
  display: flex;
  align-items: center;
  padding-left: 85px;
}

/* 院長ご挨拶
-----------------------------------------------------------------*/
.top-greeting__head {
  width: 100%;
  height: 400px;
  display: block;
  background: url(../img/top/top-greeting-ttl-bg.jpg) center/cover no-repeat;
  position: relative;
  z-index: 0;
}
.top-greeting__head::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(150, 138, 106, 0.7);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.top-greeting__ttl {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 400 72px "Shippori Mincho", serif;
  letter-spacing: 0;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 0;
}
.top-greeting__ttl::before, .top-greeting__ttl::after {
  content: "";
  width: clamp(80px, 25.9375vw, 498px);
  height: 100%;
  display: block;
  background: url(../img/top/top-greeting-ttl-eff.png) center/100% 100% no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}
.top-greeting__ttl::after {
  transform: scale(-1, 1);
  left: auto;
  right: 0;
}

.top-greeting-detail {
  padding: 32px 0 44px;
}
.top-greeting-detail__content {
  width: 100%;
  max-width: 1524px;
  display: flex;
　flex-direction: row-reverse;	
  -moz-column-gap: clamp(10px, 6.0416666667vw, 116px);
       column-gap: clamp(10px, 6.0416666667vw, 116px);
  margin-inline: auto;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
.top-greeting-detail__detail {
  width: 100%;
  max-width: 858px;
  padding: 59px 76px;
  position: relative;
  z-index: 0;
  font-weight: 500;	
}
.top-greeting-detail__detail::before {
  content: "";
  border-top: solid 346px #f7f4ea;
  border-right: solid 261px rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.top-greeting-detail__txt:not(:first-child) {
  margin-top: 1.75em;
}
.top-greeting-detail__docter {
  width: 100%;
  max-width: 550px;
}
.top-greeting-detail__docter img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 28px 27px 0 #a9c538;
}

.top-greeting-doctor {
  padding: 0 0 clamp(20px, 2.1354166667vw, 41px) clamp(29px, 3.0208333333vw, 58px);
  position: relative;
}
.top-greeting-doctor__img {
  width: 100%;
  max-width: 870px;
  border-radius: clamp(126px, 7.65625vw, 147px) 0 0 clamp(126px, 7.65625vw, 147px);
  overflow: hidden;
}
.top-greeting-doctor__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-greeting-doctor__txt {
  padding: 4.3333333333em 2.7222222222em 3em 3.0555555556em;
  background: #eb9f34;
  color: #fff;
  text-align: center;
  border-radius: 140px 140px 0 0;
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
}
.top-greeting-doctor__position {
  font-weight: 500;
  font-size: clamp(15px, 1.2489583333vw, 23.98px);
  letter-spacing: 0.1em;
  line-height: 1;
}
.top-greeting-doctor__name {
  margin-top: 7px;
}
.top-greeting-doctor__name-jp {
  padding-bottom: 0.2251688767em;
  font-weight: 700;
  font-size: clamp(18px, 2.0817708333vw, 39.97px);
  letter-spacing: 0.1em;
  line-height: 1.5;
  position: relative;
}
.top-greeting-doctor__name-jp::before {
  content: "";
  width: 1.376032024em;
  height: 2px;
  display: block;
  background: #fff;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.top-greeting-doctor__name-en {
  margin-top: 1.5634771732em;
  font-weight: 700;
  font-size: clamp(12px, 0.8328125vw, 15.99px);
  letter-spacing: 0.2em;
  line-height: 1.5;
  color: #fcfcdb;
}

.top-greeting-history {
  padding: 82px 0 113px;
  background: #f7f4ea;
}
.top-greeting-history__list {
  width: 100%;
  max-width: 1262px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 42px;
       column-gap: 42px;
  align-items: flex-start;
}
.top-greeting-history__item {
  height: 100%;
  padding: 39.5px 39px 77.5px;
  font-weight: 400;
  font-size: 18px;
  letter-spacing: 0.03em;
  line-height: 2;
  background: #fff;
}

.top-greeting-history-content__ttl {
  display: block;
  padding: 11px 13px 10px;
  background: #968a6a;
  font: 400 30px "Shippori Mincho", serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}
.top-greeting-history-content__ttl span {
  min-height: 1.6333333333em;
  display: block;
  position: relative;
}
.top-greeting-history-content__ttl span::before, .top-greeting-history-content__ttl span::after {
  content: "";
  width: 1px;
  height: 100%;
  display: block;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.top-greeting-history-content__ttl span::after {
  left: auto;
  right: 0;
}
.top-greeting-history-content__detail {
  margin-top: 8px;
}
.top-greeting-history-content__txt:not(:first-child) {
  margin-top: 1.4em;
}

.top-clinic {
  width: 100%;
  max-width: 1920px;
  margin-inline: auto;
  padding-top: 156px;
}
.top-clinic__list {
  display: flex;
  margin-top: 37px;
  overflow: hidden;
}
.top-clinic__list .slick-track {
  display: flex;
}
.top-clinic__item {
  aspect-ratio: 767/400;
  width: 100%;
  max-width: 1920px;
}
.top-clinic__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-clinic__thumbs {
  margin: 22px 19px 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(20px, 2.0833333333vw, 40px);
}
.top-clinic__thumb {
  aspect-ratio: 3/2;
  width: 100%;
  max-width: 600px;
  transition: 0.3s;
}
.top-clinic__thumb:not(.checked) {
  cursor: pointer;
  opacity: 0.5;
}
.top-clinic__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 751px){
  .top-mv__wrap::before {
    content: "";
    aspect-ratio: 476/488;
    width: 100%;
    max-width: clamp(238px, 24.7916666667vw, 476px);
    display: block;
    background: url(../img/top/mv-tooth.png) center/cover no-repeat;
    position: absolute;
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
  }
  .top-mv__content {
    color: #fff;
  }
  .top-point01 .top-point-head {
    padding-bottom: 58px;
  }
  .top-point02 .top-point-head {
    padding-bottom: 110px;
  }
  .top-point02-content .top-point-product__item:nth-child(1) .top-point-product__img {
    margin-top: 9.7%;
    margin-left: 6px;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product__img {
    margin-top: 6%;
    margin-left: 1%;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-note {
    margin-top: 54px;
  }
  .top-point02-content .top-point-product__img {
    margin: auto 0;
  }
  .top-point03 .top-point-head {
    padding-bottom: 85px;
  }
  .top-point04 .top-point-head {
    padding-bottom: 30px;
  }
  .top-point05 .top-point-head {
    padding-bottom: 94px;
  }
  .top-point05-loan-about__txt {
    padding: 0 0.3888888889em;
  }
  .top-point05-service__about {
    padding: 0 0.4583333333em;
  }
  .top-point06-parking__img {
    position: absolute;
    top: 46.6%;
    left: 0;
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 960px){
  .top-mv__address-txt--map {
    margin-right: 4px;
  }
  .top-mv__content {
    padding: 0 0 19px 49px;
  }
  .top-mv__ttl {
    padding-left: 0.4313578395em;
  }
  .top-mv-item {
    padding-top: 15px;
  }
  .top-mv-item__ttl {
    padding-left: 4px;
  }
  .top-mv-item--01 .top-mv-item__ttl {
    padding-left: 6px;
  }
  .top-mv-item__txt {
    padding-left: 6px;
  }
  .top-mv-item--01 .top-mv-item__txt {
    letter-spacing: 0.05em;
  }
  .top-intro .c-balloon {
    transform: translateX(-7px);
  }
  .top-intro-merit {
    transform: translateX(3px);
  }
  .top-intro-merit__item-txt {
    padding-left: 0.8333333333em;
  }
  .top-bnr__txt {
    padding-left: 6px;
  }
  .top-recommend__img {
    position: absolute;
    top: auto;
    left: 0;
  }
  .top-recommend__list {
    display: flex;
    flex-wrap: wrap;
    gap: 64px 0;
    padding: 0 61px 0 75px;
  }
  .top-recommend__item {
    width: 29.1479820628%;
  }
  .top-recommend__item:nth-child(3n-1) {
    margin-left: 6.4461883408%;
  }
  .top-recommend__item:nth-child(3n) {
    margin-left: 6.1098654709%;
  }
  .top-recommend__item:nth-child(3n+1) {
    margin-left: 0;
  }
  .top-recommend-contact__info {
    margin-left: 13px;
  }
  .top-recommend-bnr--web .top-recommend-bnr__ttl {
    margin-left: 3px;
  }
  .top-recommend-bnr__num {
    margin-left: 2px;
  }
  .top-recommend-bnr__num::before {
    margin-top: 11px;
  }
  .top-recommend-bnr__sub {
    padding-right: 10px;
  }
  .top-recommend-bnr__txt {
    margin-left: 6px;
  }
  .top-case .c-ttl__txt {
    margin-top: -5px;
    margin-left: 9px;
  }
  .top-point .c-ttl__txt {
    margin: -13px 28px 0 0;
  }
  .top-point-menu-box__head .c-point-mark {
    font-size: clamp(40px, 6.25vw, 120px);
  }
  .top-point-menu-box__head .c-point-mark__en {
    font-size: clamp(30px, 4.1666666667vw, 80px);
  }
  .top-point-section__bottom .underline {
    padding-bottom: 0.2333333333em;
  }
  .top-point-section__body--arrow + .top-point-section__bottom {
    margin-top: -97px;
  }
  .top-point-section__bottom-txt {
    padding-left: 36px;
  }
  .top-point-head .c-point-mark {
    padding-left: 34px;
    font-size: 150px;
  }
  .top-point-head .c-point-mark__en {
    margin-top: 27px;
  }
  .top-point-head .c-point-mark__num {
    margin-bottom: 0;
  }
  .top-point-head--right .c-point-mark {
    justify-content: flex-end;
  }
  .top-point-head__txt-inner {
    position: relative;
  }
  .top-point-product-detail__sub {
    padding-left: 15px;
  }
  .top-point-product-detail__subttl {
    padding-left: 13px;
  }
  .top-point01 .top-point-head {
    margin-left: auto;
    margin-right: 0;
  }
  .top-point01 .top-point-head .c-point-mark {
    margin-left: 0;
    margin-right: auto;
    padding-left: 27px;
  }
  .top-point01 .top-point-head__content {
    margin: -8px 0 0 166px;
    padding: 30px 0 36px 47px;
  }
  .top-point01 .top-point-head__txt {
    border-width: 3px 0 3px 3px;
  }
  .top-point01 .top-point-head__txt-inner {
    min-height: clamp(450px, 40.8854166667vw, 785px);
    margin-right: auto;
    margin-left: 0;
  }
  .top-point01 .top-point-head__ttl {
    row-gap: 41px;
    top: 6.4%;
    left: 3.7%;
  }
  .top-point01 .top-point-head__img {
    width: 66.9600938967%;
    max-width: 1141px;
    top: 16px;
  }
  .top-point01-content__head {
    padding-left: 16px;
  }
  .top-point01-content__desc-ttl {
    padding-right: 17px;
  }
  .top-point01-content__desc-txt {
    padding-left: 9px;
  }
  .top-point01-content .top-point-product__item:nth-child(1) .top-point-product__img {
    transform: translateY(-30px);
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product__img {
    margin-left: 53px;
    transform: translateY(17px);
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product-detail {
    padding: 10.7% 0 0 9.6%;
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product-detail__txt {
    margin-top: 11px;
    padding-left: 3px;
    font-size: clamp(30px, 4.6875vw, 90px);
    letter-spacing: 0.15em;
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product-detail__body {
    margin-top: 58px;
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product-detail__detail {
    margin-top: 40px;
  }
  .top-point01-note__txt {
    padding-right: 36px;
  }
  .top-point01-surgicalguide .c-balloon {
    max-width: 691px;
    transform: translateX(-9px);
  }
  .top-point01-surgicalguide__jp {
    padding-left: 41px;
  }
  .top-point01-surgicalguide__txt {
    margin-top: -3px;
    padding-left: 26px;
  }
  .top-point02 .top-point-head .c-point-mark {
    transform: translateX(5px);
  }
  .top-point02 .top-point-head__content {
    margin: 3px 0 0 171px;
    padding: 40px 0 46px 45px;
  }
  .top-point02 .top-point-head__txt-inner {
    min-height: clamp(450px, 44.9479166667vw, 863px);
  }
  .top-point02 .top-point-head__ttl {
    letter-spacing: 0.08em;
    top: 0;
    right: 11.5%;
    left: auto;
  }
  .top-point02 .top-point-head__img {
    width: 91.2301353737%;
    max-width: 1550px;
    top: -101px;
    left: -219px;
  }
  .top-point02__body {
    padding-top: 52px;
    padding-bottom: 59px;
  }
  .top-point02__body::after {
    height: 105px;
    bottom: -105px;
  }
  .top-point02__bottom {
    padding-top: 286px;
  }
  .top-point02__bottom .underline {
    padding-bottom: 1.5px;
  }
  .top-point02__bottom-txt {
    padding-left: 21px;
  }
  .top-point02-content__body {
    padding-top: 8px;
  }
  .top-point02-content__list {
    padding-right: 7px;
  }
  .top-point02-content__item:last-child {
    margin-left: 4px;
  }
  .top-point02-content .top-point-product {
    padding-bottom: 12px;
  }
  .top-point02-content .top-point-product__item:not(:first-child) {
    margin-top: 57px;
  }
  .top-point02-content .top-point-product__item:nth-child(1) .top-point-product-detail {
    padding-left: 16%;
  }
  .top-point02-content .top-point-product__item:nth-child(1) .top-point-product-detail__txt {
    margin-top: -3px;
  }
  .top-point02-content .top-point-product__item:nth-child(1) .top-point-product-detail__body {
    margin-top: 54px;
    padding: 0 4% 0 12.4%;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product__note {
    margin-top: 53px;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-detail {
    padding-top: 11.6%;
    padding-left: 15.8%;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-detail__ttl {
    padding: 0 0 11px 31px;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-detail__sub {
    margin-top: -5px;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-detail__txt {
    margin-top: 17px;
    padding-left: 20px;
    font-size: 80px;
  }
  .top-point02-content .top-point-product__item:nth-child(2) .top-point-product-detail__body {
    margin-top: 54px;
    padding-left: 124px;
  }
  .top-point02-content .top-point-product__txt {
    flex: 0 0 61.9%;
  }
  .top-point02-content .top-point-product-detail__ttl {
    padding-top: 0;
    padding-left: 31px;
  }
  .top-point02-content .top-point-product-detail__txt {
    padding-left: 7px;
    letter-spacing: 0.1em;
  }
  .top-point02-content .c-merit {
    max-width: 1288px;
    margin-top: 83px;
  }
  .top-point02-content .c-merit__head {
    padding-left: 4px;
  }
  .top-point02-content .c-merit__body {
    margin-top: 29px;
  }
  .top-point03 .top-point-head {
    position: relative;
  }
  .top-point03 .top-point-head__content {
    margin: -4px 170px 0 0;
  }
  .top-point03 .top-point-head__txt-inner {
    min-height: clamp(450px, 46.3020833333vw, 889px);
  }
  .top-point03 .top-point-head__ttl {
    row-gap: 41px;
    top: 9.1%;
    left: 9.5%;
  }
  .top-point03 .top-point-head__img {
    width: 91.1176470588%;
    max-width: 1549px;
    top: 45px;
    right: -217px;
  }
  .top-point03-intro__txt {
    padding-bottom: 43px;
    margin: auto 0;
  }
  .top-point03-intro__img {
    transform: translateX(20px);
  }
  .top-point03-product__img {
    position: absolute;
    top: 0;
    left: 3.3%;
    z-index: 1;
  }
  .top-point03-product__ttl {
    margin-inline-start: auto;
    padding: 0 4.5%;
  }
  .top-point03-product__detail {
    transform: translateX(-7px);
  }
  .top-point03-product-detail {
    margin-inline-start: auto;
    padding: 0 4% 0 5.4%;
  }
  .top-point03-product-detail__ttl {
    padding-right: 22px;
  }
  .top-point03-product-detail__txt {
    padding-left: 3px;
  }
  .top-point03-product-detail__list {
    padding-left: 2px;
  }
  .top-point04 .top-point-head .c-point-mark {
    transform: translateX(5px);
  }
  .top-point04 .top-point-head__content {
    margin-top: -5px;
  }
  .top-point04 .top-point-head__txt-inner {
    position: relative;
    min-height: clamp(450px, 46.25vw, 888px);
  }
  .top-point04 .top-point-head__ttl {
    letter-spacing: 0.08em;
  }
  .top-point04 .top-point-head__img {
    width: 91.1228689006%;
    max-width: 1550px;
    top: 24px;
    left: -219px;
  }
  .top-point04__body {
    padding-top: 7px;
  }
  .top-point04__body + .top-point04__bottom {
    margin-top: -146px;
  }
  .top-point04__bottom-txt {
    padding-left: 0;
  }
  .top-point04-question__ttl {
    margin-left: 24px;
  }
  .top-point04-question__list {
    margin-top: 2px;
  }
  .top-point04-question__content:nth-child(2) .top-point04-question__item {
    padding-top: 39px;
    padding-bottom: 45px;
  }
  .top-point05 .top-point-head .c-point-mark__en {
    margin-top: 33px;
  }
  .top-point05 .top-point-head__content {
    margin: -2px 170px 0 0;
  }
  .top-point05 .top-point-head__txt-inner {
    min-height: clamp(450px, 46.25vw, 888px);
  }
  .top-point05 .top-point-head__ttl {
    row-gap: 20px;
    top: 7%;
    left: 11.3%;
  }
  .top-point05 .top-point-head__img {
    width: 81.679389313%;
    max-width: 1391px;
    top: 24px;
    left: auto;
    right: -217px;
  }
  .top-point05-info__ttl {
    transform: translateX(49px);
  }
  .top-point05-loan__intro {
    transform: translateX(2px);
  }
  .top-point05-payment {
    transform: translateX(-2px);
  }
  .top-point05-loan-about__jaccs {
    margin-top: 14px;
  }
  .top-point05-loan-about__jaccs-logo {
    transform: translateX(-2px);
  }
  .top-point05-service__bnr-txt {
    padding-left: 13px;
  }
  .top-point05-service__ttl {
    padding-left: 15px;
    transform: translateX(-2px);
  }
  .top-point05-service__about-txt {
    padding: 0 0.25em;
  }
  .top-point05-case__head::before {
    margin: auto 0;
    transform: translateX(-2px);
  }
  .top-point06 .top-point-head .c-point-mark {
    padding-left: 30px;
  }
  .top-point06 .top-point-head__content {
    margin-top: -41px;
    min-height: 39.0625vw;
  }
  .top-about__ttl {
    padding-left: 26px;
  }
  .top-about-intro__ttl {
    margin-right: 8px;
  }
  .top-about-intro__txt {
    padding-right: 10px;
  }
  .top-about-care {
    transform: translateX(-5px);
  }
  .top-about-care__ttl {
    margin-right: 47px;
  }
  .top-flow .c-ttl {
    padding-left: 16px;
  }
  .top-flow .c-ttl__txt {
    padding-left: 10px;
  }
  .top-flow__list {
    transform: translateX(6px);
  }
  .top-flow__item:nth-child(3n+1)::before {
    content: none;
  }
  .top-flow__ttl {
    padding-right: 10px;
  }
  .top-faq .c-ttl {
    padding-right: 18px;
  }
  .top-greeting-detail {
    padding-left: 3%;
  }
  .top-greeting-detail__docter {
    margin-top: 88px;
  }
  .top-greeting-doctor__name-en {
    margin-right: 0.6253908693em;
  }
  .top-clinic .c-ttl {
    padding-right: 10px;
  }
}
@media screen and (min-width: 1600px){
  .top-point01-surgicalguide__img {
    margin-left: 10%;
  }
}
@media screen and (min-width: 1920px){
  .top-case__list {
    transform: translateX(0px);
  }
  .top-point01 .top-point-head {
    margin-left: calc((100% - 1920px) / 2);
  }
  .top-point06 .top-point-head__content {
    min-height: 750px;
  }
}
@media screen and (max-width: 1920px){
  .top-point-head--left {
    margin-inline-end: auto;
  }
  .top-point-head--right {
    margin-inline-start: auto;
  }
  .top-point06-intro__list {
    font-size: 2.5vw;
  }
  .top-point06-intro__img {
    height: 35.9895833333vw;
  }
  .top-point06-parking__img {
    height: 25.0520833333vw;
  }
  .top-point06-parking__detail {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 1400px){
  .top-about__head {
    font-size: 24px;
  }
  .top-greeting-detail__content {
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  .top-greeting-detail__detail {
    padding: 30px 40px;
  }
}
@media screen and (max-width: 1100px){
  .top-point04__bottom {
    font-size: 60px;
  }
  .top-point04-question__detail {
    -moz-column-gap: 90px;
         column-gap: 90px;
  }
}
@media screen and (max-width: 959px){
  .top-mv__wrap {
    height: 700px;
    background-position: left 0;	  
  }
.top-mv__bg {
    object-position: 50% center;
}	
  .top-mv__wrap::after {
    max-width: 350px;
    right: 0;
  }
  .top-mv__ttl {
    font-size: 37px;
  }
  .top-mv__address {
    top: 85px;
  }
  .top-mv__address-txt {
    font-size: 15px;
  }
  .top-mv-logo {
    max-width: 122px;
  }
  .top-mv-logo__txt {
    font-size: 10px;
    padding: 2px 0;
  }
  .top-mv-item {
    font-size: 20px;
  }
  .top-intro__wrap {
    padding-top: 60px;
    background-size: cover;
  }
  .top-intro__ttl {
    font-size: 35px;
  }
  .top-intro-merit {
    margin-top: 30px;
    padding: 20px 30px;
  }
  .top-intro-merit::before {
    left: -15px;
    bottom: -20px;
  }
  .top-intro-merit::after {
    top: -20px;
    right: -15px;
  }
  .top-intro-merit__inner {
    padding: 20px 30px;
  }
  .top-intro-merit__item {
    font-size: 24px;
  }
  .top-intro-balloon__txt {
    padding: 0.9em 1em 1em 1.8em;
  }
  .top-bnr {
    height: 380px;
  }
  .top-bnr__content {
    font-size: 24px;
  }
  .top-bnr__logo {
    max-width: 110px;
  }
  .top-recommend__head-inner {
    padding: 0;
  }
  .top-recommend__img {
    max-width: 100%;
  }
  .top-recommend__ttl {
    max-width: 100%;
    margin: 30px 0 0;
    padding: 0 20px;
  }
  .top-recommend__jp {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .top-recommend__body {
    padding: 50px 20px 30px;
  }
  .top-recommend__item-txt {
    font-size: 15px;
  }
  .top-recommend__item-ttl {
    font-size: 16px;
  }
  .top-recommend__item-ttl::after {
    height: 1px;
    bottom: 0;
  }
  .top-recommend__item-detail {
    padding-top: 0.5em;
  }
  .top-recommend-contact {
    padding: 0 10px 30px;
  }
  .top-recommend-contact__content {
    padding: 100px 10px 35px;
    border: 2px solid #fff;
  }
  .top-recommend-contact__ttl {
    font-size: 28px;
  }
  .top-recommend-contact__bnr-list {
    gap: 20px;
  }
  .top-recommend-bnr {
    width: 300px;
    height: 120px;
    font-size: 16px;
  }
  .top-recommend-bnr--tel a {
    border-width: 10px;
  }
  .top-recommend-bnr--web {
    outline-offset: -10px;
  }
  .top-recommend-bnr__num {
    gap: 7px;
    margin-top: 0;
    font-size: 24px;
  }
  .top-recommend-bnr__num::before {
    width: 1em;
    height: 1em;
  }
  .top-recommend-bnr__txt {
    font-size: 24px;
  }
  .top-case__list {
    margin-top: 30px;
    padding: 0 70px;
  }
	

  .js-case-slider .slick-slide {
    width: 100vw !important; /* 画面幅を強制 */
  }

  .top-case__item {
    width: 100% !important;
  }

  .top-case__list {
    padding: 0 2%;
    max-width: 100% !important;
  }	
	
	
	
	
  .top-case__item-head {
    gap: 10px 10px;
  }
  .top-case__item-ttl {
    font-size: 24px;
  }
  .top-case__item-body {
    font-size: 16px;
  }
  .top-point-menu {
    padding-bottom: 60px;
  }
  .top-point-menu-box a {
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  .top-point-menu-box__body {
    padding-left: 40px;
    font-size: 15px;
  }
  .top-point-menu-box__body::before {
    top: 19px;
  }
  .top-point-section__head::before {
    height: 330px;
  }
  .top-point-section__body--arrow::after {
    height: 50px;
    bottom: -48px;
  }
  .top-point-section__bottom {
    padding: 120px 10px 80px;
    font-size: 28px;
  }
  .top-point-section__bottom .underline {
    border-bottom-width: 2px;
	font-size: 24px;  
  }
  .top-point-head__content {
    margin: 20px 10% 0 0;
    padding: 15px 15px 15px 0;
    position: relative;
  }
  .top-point-head--right .top-point-head__content {
    margin: 20px 0 0 10%;
    padding: 15px 0 15px 15px;
  }
  .top-point-head__txt {
    border-width: 2px 2px 2px 0;
  }
  .top-point-head--right .top-point-head__txt {
    border-width: 2px 0 2px 2px;
  }
  .top-point-head__txt-inner {
    min-height: 450px;
  }
  .top-point-head__ttl {
    white-space: nowrap;
    position: absolute;
    top: 50px;
    left: 10px;
    z-index: 1;
  }
  .top-point-head--right .top-point-head__ttl {
    left: auto;
    right: 10px;
  }
  .top-point-head__img {
    max-width: 100%;
    top: -20px;
    right: calc(-10% - 15px);
  }
  .top-point-head__img img {
    height: 100%;
  }
  .top-point-head--right .top-point-head__img {
    right: auto;
    left: calc(-10% - 15px);
  }
  .top-point-product__txt {
    flex: 0 0 63.5%;
  }
  .top-point-product-detail {
    padding-left: 20px;
  }
  .top-point-product-detail__head::before {
    border-right-width: 2px;
  }
  .top-point-product-detail__body {
    margin-top: 30px;
    padding: 0 50px;
  }
  .top-point-product-note {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
	.top-point01-note__txt .large {
	  font-size: 1.5em;
	}		
  .top-point01 .top-point-head__ttl {
    row-gap: 20px;
  }
  .top-point01-note {
    padding: 80px 10px 0;
  }
  .top-point01-note::before {
    max-width: 691px;
    height: 60px;
  }
  .top-point01-surgicalguide .c-merit__img {
    max-width: 250px;
  }
  .top-point02-content__item {
    max-width: 150px;
  }
  .top-point03 .top-point-head__txt {
    border-width: 2px 2px 2px 0;
  }
  .top-point03 .top-point-head__txt-inner {
    padding: 15px;
  }
  .top-point03 .top-point-head__ttl {
    row-gap: 20px;
  }
  .top-point03-intro__head {
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  .top-point03-intro__txt {
    width: 100%;
  }
  .top-point03-intro__ttl {
    font-size: 24px;
  }
  .top-point03-intro__detail {
    font-size: 16px;
  }
  .top-point03-intro__img {
    max-width: 355px;
    margin-inline: auto;
  }
  .top-point03-intro__list {
    font-size: 16px;
  }
  .top-point03-intro__item {
    padding-left: 55px;
  }
  .top-point03-product {
    margin-top: 60px;
  }
  .top-point03-product__img {
    max-width: 355px;
    margin-inline: auto;
  }
  .top-point03-product__tag {
    left: -10px;
    bottom: -30px;
  }
  .top-point03-product__txt {
    padding-top: 40px;
  }
  .top-point03-product__ttl {
    width: 100%;
    font-size: 24px;
  }
  .top-point03-product__detail {
    margin-top: 30px;
    padding: 20px 20px 40px;
  }
  .top-point03-product-detail {
    width: 100%;
    font-size: 16px;
  }
  .top-point03-product-detail__ttl {
    font-size: 19px;
	letter-spacing: 0em;  
  }
  .top-point03-product-detail__txt {
    margin-top: 30px;
  }
  .top-point03-product-detail__list {
    margin-top: 30px;
    font-size: 18px;
  }
  .top-point04__body {
    padding-bottom: 105px;
  }
  .top-point04__bottom {
    clip-path: polygon(50% 50px, 100% 0, 100% calc(100% - 50px), 50% 100%, 0 calc(100% - 50px), 0 0);
    padding-top: 90px;
    padding-bottom: 40px;
    font-weight: 700;
    font-size: 28px;
    letter-spacing: 0;
    line-height: 1.36;
  }
  .top-point04__info-txt {
    font-size: 24px;
  }
  .top-point04__info-detail {
    border-width: 3px;
    font-size: 18px;
  }
  .top-point04-head__polygon-img {
    width: 100%;
    max-width: 170px;
  }
  .top-point04-head__polygon-img:nth-child(2) {
    margin-left: 30px;
  }
  .top-point04-question__content:not(:first-child) {
    margin-top: 40px;
  }
  .top-point04-question__ttl {
    font-size: 30px;
  }
  .top-point04-question__detail {
    -moz-column-gap: 50px;
         column-gap: 50px;
  }
  .top-point04-question__img {
    max-width: 35%;
  }
  .top-point04-question__item {
    font-size: 18px;
  }
.top-point04-question__img img {
    width: 60%;
}	
  .top-point05__body {
    padding-top: 30px;
  }
  .top-point05-info {
    padding-bottom: 60px;
  }
  .top-point05-info__txt {
    padding: 30px 70px;
  }
  .top-point05-info__txt-detail {
    font-size: 18px;
  }
  .top-point05-info__txt-detail .dotted-line {
    border-bottom-width: 3px;
  }
  .top-point05-info__ttl {
    padding: 0 20px;
    font-size: 24px;
  }
  .top-point05-implant {
    margin-top: 30px;
  }
  .top-point05-implant__ttl {
    font-size: 24px;
  }
  .top-point05-implant-price__num {
    font-size: 28px;
  }
  .top-point05-implant-price__list {
    margin-top: 10px;
    padding: 20px 30px 30px;
  }
  .top-point05-implant-price__item {
    font-size: 16px;
  }
  .top-point05-implant-price__item::before {
    width: 4px;
    height: 4px;
  }
  .top-point05-implant-others__ttl {
    padding: 24px 30px;
    border-image-width: 20px;
    font-size: 18px;
  }
  .top-point05-implant-others__list {
    margin-top: 40px;
  }
  .top-point05-implant-others__item {
    grid-template-columns: 1fr 250px;
    font-size: 15px;
  }
  .top-point05-implant-others__txt {
    padding: 0 20px 0 0;
  }
  .top-point05-implant-others__name {
    font-size: 20px;
  }
  .top-point05-implant-others__price {
    padding: 0 0 0 20px;
  }
  .top-point05-loan {
    padding: 40px 0 60px;
  }
  .top-point05-loan__intro {
    margin-top: 30px;
  }
  .top-point05-loan-about {
    gap: 20px 30px;
  }
  .top-point05-loan-about__jaccs {
    max-width: 40%;
    padding: 18px 10px;
    border-top-width: 3px;
    border-bottom-width: 3px;
  }
  .top-point05-service {
    margin-top: 40px;
  }
  .top-point05-service__content {
    margin-top: 40px;
  }
  .top-point05-service__case {
    margin-top: 30px;
  }
  .top-point06 .top-point-head__content {
    margin: 20px 0 0;
  }
  .top-point06 .top-point-head__txt-inner {
    min-height: 210px;
  }
  .top-point06 .top-point-head__img {
    max-width: 60%;
  }
  .top-point06__body {
    padding: 40px 0 60px;
  }
  .top-point06-intro {
    margin-left: 45%;
    padding-top: 0;
  }
  .top-about {
    padding: 60px 0 80px;
  }
  .top-about-intro {
    font-size: 16px;
  }
  .top-about-intro__balloon {
    font-size: 20px;
    border-width: 2px;
  }
  .top-about-intro__balloon::before {
    height: 2px;
  }
  .top-about-intro__ttl {
    font-size: 30px;
  }
  .top-about-intro__ttl::before {
    border-width: 3px 0 0 3px;
  }
  .top-about-intro__ttl::after {
    border-width: 0 3px 3px 0;
  }
  .top-about-intro__txt {
    margin-top: 30px;
    text-align: left; 
  }
  .top-about-care__ttl {
    font-size: 30px;
  }
  .top-about-care__list {
    display: grid;
    grid-template-columns: 100%;
    margin-top: 24px;
  }
  .top-about-care-detail {
    font-size: 16px;
  }
  .top-about-care-detail__ttl {
    font-size: 28px;
  }
  .top-about-care-detail__img {
    margin-top: 10px;
  }
  .top-about-care-detail__cat-list {
    margin-top: 20px;
  }
  .top-about-care-detail__cat-item {
    font-size: 18px;
  }
  .top-about-care-detail__cat-item:not(:first-child) {
    margin-top: 5px;
  }
  .top-about-care-detail__cat-item span {
    padding: 1px 6px;
  }
  .top-flow {
    padding-bottom: 80px;
  }
  .top-flow__list {
    margin-top: 30px;
    grid-template-columns: repeat(2, 1fr);
  }
  .top-flow__item::before {
    left: -6%;
  }
  .top-faq {
    padding: 60px 0 80px;
  }
  .top-faq__content {
    margin-top: -52px;
    padding: 51.5px 0 82.5px;
    background-image: radial-gradient(circle, #efefef 2.5px, transparent 2.5px);
    background-position: 0 -6px;
    background-size: 20px 20px;
  }
  .top-faq__list {
    margin-top: 35px;
  }
  .top-faq-item {
    padding: 20px 0 30px;
    font-size: 16px;
    border-bottom-width: 2px;
  }
  .top-faq-item__a {
    padding-left: 79px;
  }
  .top-greeting__head {
    height: 200px;
  }
  .top-greeting__ttl {
    font-size: 40px;
  }
  .top-greeting__ttl::before, .top-greeting__ttl::after {
    content: "";
    width: 150px;
  }
  .top-greeting-detail__content {
    font-size: 16px;
  }
  .top-greeting-detail__detail {
    padding: 20px;
  }
  .top-greeting-detail__detail::before {
    content: "";
    border-top-width: 173px;
    border-right-width: 130px;
  }
  .top-greeting-history {
    padding: 50px 0 70px;
  }
  .top-greeting-history__list {
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
  .top-greeting-history__item {
    padding: 20px 20px 30px;
    font-size: 16px;
  }
  .top-greeting-history-content__ttl {
    font-size: 24px;
  }
  .top-clinic {
    padding-top: 60px;
  }
}
@media screen and (max-width: 959px) and (min-width: 751px){
  .top-flow__item:nth-child(2n+1)::before {
    content: none;
  }
}

@media screen and (max-width: 960px){
.top-mv__inner {
  height: 650px;
}	
}

@media screen and (max-width: 750px){
  .top-mv {
    position: relative;
	background: #dbd6c6; 
    z-index: 0;	  
  }
  .top-mv::before {
    content: "";
    aspect-ratio: 476/488;
    width: 100%;
    max-width: 125px;
    display: block;
    background: url(../img/top/mv-tooth.png) center/cover no-repeat;
    position: absolute;
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
    z-index: 1;
  }
  .top-mv__wrap {
    padding-bottom: 60px;
    background-position: 60% 50%;
	height: 480px;
  }
  .top-mv__wrap::after {
    max-width: 300px;
  }
  .top-mv__address {
    top: 65px;
    right: 6px;
  }
  .top-mv__address-txt {
    font-size: 10px;
  }
  .top-mv__logo {
    top: 10px;
    left: 10px;
  }
  .top-mv__content {
    width: 100%;
    row-gap: 20px;
    padding-top: 50px;
  }
  .top-mv__ttl {
    font-size: 18px;
    color: #fff;
    text-shadow: 0 0px 6px rgba(29, 29, 29, 1);	  
  }
  .top-mv__list {
    -moz-column-gap: 10px;
         column-gap: 10px;
    margin-top: 10px;
    padding: 0 10px 10px;
  }
  .top-mv-logo {
    max-width: 100px;
  }
  .top-mv-logo__txt {
    font-size: 8px;
  }
  .top-mv-item {
    width: 110px;
    font-size: 16px;
  }
  .top-intro__wrap {
    padding-top: 40px;
  }
  .top-intro__wrap::before {
    height: 310px;
  }
  .top-intro__ttl {
    -moz-column-gap: 1em;
         column-gap: 1em;
    font-size: 26px;
  }
  .top-intro__ttl::before, .top-intro__ttl::after {
    border-top-width: 1px;
    border-bottom-width: 1px;
  }
  .top-intro__content {
    padding: 0 20px;
  }
  .top-intro-merit {
    padding: 15px 20px;
  }
  .top-intro-merit__inner {
    padding: 15px 20px;
  }
  .top-intro-merit__item {
    font-size: 18px;
  }
  .top-intro-merit__item-txt {
    font-size: 15px;
	font-weight:500;  
  }
  .top-intro-balloon {
    padding-top: 180px;
    font-size: 15px;
  }
  .top-intro-balloon__content {
    padding-bottom: 60px;
  }
  .top-intro-balloon__content::before {
    max-width: 180px;
    right: -10px;
  }
  .top-intro-balloon__list {
    margin-right: 110px;
  }
  .top-bnr {
    height: 230px;
  }
  .top-bnr::before {
    max-width: 40%;
    top: -30%;
  }
  .top-bnr::after {
    max-width: 40%;
    bottom: -15%;
  }
  .top-bnr__content {
    font-size: 18px;
  }
  .top-bnr__logo {
    max-width: 60px;
  }
  .top-bnr__ttl {
    font-size: 16px;
  }
  .top-bnr__ttl span {
    font-size: 20px;
  }
  .top-recommend__head {
    padding: 30px 0;
  }
  .top-recommend__ttl {
    margin-top: 20px;
  }
  .top-recommend__en {
    font-size: 15px;
  }
  .top-recommend__jp {
    font-size: 20px;
  }
  .top-recommend__item-ttl {
    padding-left: 1.3em;
  }
  .top-recommend__item-ttl::before {
    max-width: 1em;
    top: 2px;
  }
  .top-recommend-contact__content {
    padding-top: 70px;
  }
  .top-recommend-contact__ttl {
    font-size: 18px;
  }
  .top-recommend-contact__info {
    font-size: 36px;
  }
  .top-recommend-contact__info-sub::before, .top-recommend-contact__info-sub::after {
    height: 1px;
  }
  .top-recommend-contact__bnr-list {
    margin-top: 30px;
  }
  .top-case {
	  padding: 30px 0 10px;
  }
  .top-case__list {
    padding: 0 35px;
  }
  .top-case__list .slick-arrow {
    border-top-width: 20.5px;
    border-right-width: 20px;
    border-bottom-width: 20.5px;
  }
  .top-case__item-head {
    display: flex;
    grid-template-columns: 100%;
	flex-direction: row;  
  }
  .top-case__item-ttl {
    font-size: 18px;
  }
  .top-case__item-body {
    font-size: 15px;
  }
  .top-point-menu-box a {
    display: block;
  }
  .top-point-menu-box__body {
    margin-inline: 10px;
  }
  .top-point-menu-box__body::before {
    top: 10px;
  }
  .top-point-menu-box__txt {
    font-size: 20px;
  }
  .top-point-section__head::before {
    height: calc(100% - 200px);
  }
  .top-point-section__body--arrow {
    padding-top: 50px;
  }
  .top-point-section__body--arrow::after {
    height: 30px;
    bottom: -28px;
  }
  .top-point-section__bottom {
    padding: 60px 10px 40px;
    font-size: 22px;
  }
  .top-point-head {
    padding-bottom: 60px;
  }
  .top-point-head__content {
    margin-right: 5%;
  }
  .top-point-head--right .top-point-head__content {
    margin-left: 5%;
  }
  .top-point-head__txt-inner {
    min-height: 200px;
  }
  .top-point-head__img {
    height: 100%;
    right: calc(-5% - 15px);
  }
  .top-point-head--right .top-point-head__img {
    left: calc(-5% - 15px);
  }
  .top-point-product__item:not(:first-child) {
    margin-top: 60px;
  }
  .top-point-product__content {
    display: block;
  }
  .top-point-product__img {
    max-width: 50%;
    margin: 30px auto 0;
  }
  .top-point-product-detail {
    padding-top: 30px;
    padding-left: 0;
  }
  .top-point-product-detail__ttl {
    padding: 8px 0 4px 16px;
  }
  .top-point-product-detail__body {
    margin-top: 20px;
    padding: 0;
  }
  .top-point-product-detail__detail:not(:first-child) {
    margin-top: 1em;
  }
  .top-point01-content__ttl {
    padding: 0.5em 1.5em;
  }
  .top-point01-content__desc {
    margin-top: 30px;
  }
  .top-point01-content .top-point-product__item:nth-child(1) .top-point-product__img {
    max-width: 200px;
    transform: unset;
  }
  .top-point01-content .top-point-product__item:nth-child(2) .top-point-product__img {
    max-width: 200px;
    padding-left: 0;
    transform: unset;
  }
  .top-point01-note {
    padding-top: 60px;
  }
  .top-point01-note::before {
    height: 40px;
  }
  .top-point01-note__txt .num::before {
    font-size: 1em;
    top: -0.5em;
    left: -1.3em;
  }
  .top-point01-surgicalguide {
    padding-top: 40px;
  }
  .top-point01-surgicalguide .c-merit__img {
    margin-inline: auto;
  }
  .top-point02 {
    padding-top: 40px;
  }
  .top-point02 .top-point-head__ttl {
    row-gap: 14px;
    top: -15px;
  }
  .top-point02-content .top-point-product__img {
    max-width: 300px;
  }
  .top-point03 {
    padding-top: 40px;
  }
  .top-point03 .top-point-head__ttl {
    top: 0;
  }
  .top-point03__body {
    padding: 50px 0 60px;
  }
  .top-point03-intro__ttl {
    font-size: 20px;
    letter-spacing: 0.04em;
    font-weight: 600;
  }
  .top-point03-intro__detail {
    margin-top: 1em;
    font-size: 16px;
  }
  .top-point03-intro__list {
    margin-top: 1em;
    font-size: 15px;
  }
  .top-point03-intro__item {
    padding-left: 40px;
  }
  .top-point03-product {
    margin-top: 60px;
    flex-direction: column;
  }
  .top-point03-product__ttl {
    font-size: 20px;
    letter-spacing: 0.04em;
    font-weight: 600;
  }
  .top-point03-product-detail {
    font-size: 15px;
  }
  .top-point03-product-detail__list {
    font-size: 16px;
  }
  .top-point04 .top-point-head__ttl {
    row-gap: 14px;
    top: -20px;
  }
  .top-point04__bottom {
    clip-path: polygon(50% 30px, 100% 0, 100% calc(100% - 30px), 50% 100%, 0 calc(100% - 30px), 0 0);
  }
  .top-point04__info {
    margin-top: -119px;
    padding-top: 138px;
  }
  .top-point04__info-txt {
    font-size: 24px;
  }
  .top-point04__info-detail {
    border-width: 3px;
    font-size: 15px;
  }
  .top-point04-head__polygon {
    top: auto;
    right: auto;
    bottom: 20px;
    left: 20px;
  }
  .top-point04-head__polygon-img {
    max-width: 80px;
  }
  .top-point04-head__polygon-img:nth-child(2) {
    margin-left: 15px;
  }
  .top-point04-question__ttl {
    font-size: 24px;
  }
  .top-point04-question__ttl span {
    font-size: 15px;
  }
  .top-point04-question__detail {
    display: block;
  }
  .top-point04-question__img {
    max-width: 90%;
    margin-inline: auto;
	text-align: center;  
  }
  .top-point04-question__list {
    margin-top: 10px;
  }
  .top-point04-question__item {
    padding: 15px 20px;
    font-size: 16px;
  }
  .top-point04-question__item::before {
    border-top-width: 10px;
    border-right-width: 20px;
    border-bottom-width: 10px;
    left: -20px;
  }
  .top-point05 .top-point-head__ttl {
    top: 10px;
  }
  .top-point05-info::before {
    height: calc(100% - 60px);
  }
  .top-point05-info__txt {
    padding: 16px;
  }
  .top-point05-info__txt-detail {
    font-size: 16px;
  }
  .top-point05-info__txt-detail .em {
    font-size: 21px;
  }
  .top-point05-implant__ttl {
    background: linear-gradient(11.5deg, #6e644b 50%, #61573f 50%);
    padding: 15px 20px;
  }
  .top-point05-implant__detail {
    flex-wrap: wrap;
    padding: 20px 0 40px;
  }
  .top-point05-implant__img {
    max-width: 250px;
  }
  .top-point05-implant-others__item {
    grid-template-columns: 100%;
  }
  .top-point05-implant-others__txt {
    flex-direction: column;
    padding: 0;
  }
  .top-point05-implant-others__price {
    justify-content: center;
    margin-top: 20px;
    padding-left: 40px;
    font-size: 28px;
    border-top: solid 2px #bbbbbb;
    border-left: unset;
  }
  .top-point05-implant-others__price-txt {
    text-align: center;
  }
  .top-point05-implant-others__price-txt .yen {
    font-size: 25px;
  }
  .top-point05-implant-others__price-txt .tax {
    font-size: 16px;
  }
  .top-point05-loan__ttl {
    margin-inline: auto;
  }
  .top-point05-loan__intro {
    max-width: 100%;
    font-size: 13px;
  }
  .top-point05-payment {
    width: auto;
    margin: 30px -20px 0;
  }
  .top-point05-payment__ttl {
    padding: 17px 50px 20px;
  }
  .top-point05-payment__ttl::before, .top-point05-payment__ttl::after {
    width: 50px;
    height: 100%;
  }
  .top-point05-payment__list {
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
  }
  .top-point05-loan-about {
    flex-direction: column;
    margin-top: 40px;
  }
  .top-point05-loan-about__jaccs {
    max-width: 100%;
  }
  .top-point05-loan-about__jaccs-txt {
    text-align: center;
  }
  .top-point05-loan-about__ttl {
    font-size: 24px;
  }
  .top-point05-service__bnr {
    line-height: 1.7;
  }
  .top-point05-service__ttl {
    padding: 0;
  }
  .top-point05-service__case {
    margin-top: 20px;
  }
  .top-point05-service__about-ttl {
    font-size: 22px;
  }
  .top-point05-case__head {
    min-height: 40px;
    grid-template-columns: 40px 1fr;
  }
  .top-point05-case__head::before {
    width: 40px;
    height: 100%;
    font-size: 20px;
  }
  .top-point05-case__ttl {
    padding: 3px 10px;
    font-size: 12px;
  }
  .top-point05-case__ttl span {
    font-size: 18px;
  }
  .top-point05-case__content {
    padding: 10px 0 10px 10px;
  }
  .top-point05-case-detail {
    grid-template-columns: repeat(2, 1fr);
    font-size: 15px;
  }
  .top-point05-case-detail__txt .border-box {
    font-size: 15px;
    letter-spacing: 0;
    border-width: 1px;
  }
  .top-point05-case-detail__txt .border-box span {
    margin-top: 0;
    padding-bottom: 1px;
    font-size: 20px;
    letter-spacing: 0;
  }
  .top-point05-case-detail__txt .border-box span::before {
    height: 3px;
  }
  .top-point06 .top-point-head {
    padding-bottom: 0;
  }
  .top-point06 .top-point-head__content {
    margin-top: 0;
  }
  .top-point06 .top-point-head__ttl {
    top: 10px;
    left: auto;
    right: 20px;
  }
  .top-point06 .top-point-head__img {
    max-width: 90%;
    position: unset;
  }
  .top-point06-intro {
    min-height: auto;
    margin-left: 0;
    padding: 50px 0 0;
  }
  .top-point06-intro__img {
    aspect-ratio: 2/1;
    max-width: 90%;
    height: auto;
    top: -40px;
    bottom: auto;
  }
  .top-point06-intro__list {
    font-size: 20px;
  }
  .top-point06-intro__item:nth-child(2) {
    margin: 5px 0 0 0.25em;
  }
  .top-point06-intro__item:nth-child(3) {
    margin: 5px 0 0 0.5em;
  }
  .top-point06-intro__item:nth-child(4) {
    margin: 5px 0 0 0.75em;
  }
  .top-point06-intro__item:nth-child(5) {
    margin: 5px 0 0 1em;
  }
  .top-point06-parking__img {
    max-width: 100%;
    height: 240px;
  }
  .top-point06-parking__detail {
    width: 100%;
    padding: 35px 25px;
    font-size: 15px;
  }
  .top-point06-parking__detail::after {
    content: "";
    border-bottom-width: 107px;
    border-left-width: 107px;
    right: 20px;
    bottom: 20px;
  }
  .top-about {
    padding: 30px 0 40px;
  }
  .top-about__head {
    font-size: 16px;
  }
  .top-about__ttl {
    font-size: 23px;
	letter-spacing: 0em;
  }
  .top-about__body {
    margin-top: 65px;
  }
  .top-about-intro {
    font-size: 15px;
  }
  .top-about-intro__balloon {
    font-size: 12px;
    border-width: 1px;
  }
  .top-about-intro__balloon::before {
    height: 1px;
  }
  .top-about-intro__ttl {
    font-size: 22px;
  }
  .top-about-intro__ttl::before {
    border-width: 2px 0 0 2px;
  }
  .top-about-intro__ttl::after {
    border-width: 0 2px 2px 0;
  }
  .top-about-care__ttl {
    padding: 10px 24px 12px;
    font-size: 20px;
  }
  .top-about-care__ttl::before, .top-about-care__ttl::after {
    width: 1px;
  }
  .top-about-care-detail {
    padding: 20px 20px 40px;
    font-size: 15px;
  }
  .top-about-care-detail__cat-item {
    font-size: 16px;
  }
  .top-flow {
    padding-bottom: 60px;
  }
  .top-flow__list {
    grid-template-columns: 100%;
    row-gap: 50px;
  }
  .top-flow__item {
    margin-inline: auto;
  }
  .top-flow__item::before {
    max-width: 35px;
    top: auto;
    bottom: -50px;
    left: 50%;
    transform: translate(-50%, -100%) rotate(90deg);
  }
  .top-flow__item:last-child::before {
    content: none;
  }
  .top-flow__step {
    width: 90px;
    height: 90px;
    padding: 8px;
  }
  .top-flow__step::before {
    border-top-width: 90px;
    border-right-width: 90px;
  }
  .top-flow__step img {
    max-width: 32px;
  }
  .top-flow__txt {
    margin-top: 6px;
    padding: 0 1em;
    font-size: 15px;
  }
  .top-flow__ttl {
    font-size: 20px;
  }
  .top-faq {
    padding: 30px 0 40px;
  }
  .top-faq__list {
    margin-top: 10px;
  }
  .top-faq-item {
    padding: 20px 0;
    font-size: 15px;
  }
  .top-faq-item__icon {
    font-size: 20px;
  }
  .top-faq-item__icon--q {
    top: 0;
  }
  .top-faq-item__icon--a {
    top: 0;
  }
  .top-faq-item__head {
    min-height: 37.5px;
    padding: 0 40px 0 60px;
  }
  .top-faq-item__q {
    font-size: 16px;
  }
  .top-faq-item__btn {
    width: 26px;
    height: 26px;
    right: 5px;
  }
  .top-faq-item__btn::after {
    width: 15px;
    height: 15px;
  }
  .top-faq-item__body {
    margin-top: 20px;
  }
  .top-faq-item__a {
    min-height: 37.5px;
    padding-left: 60px;
  }
  .top-greeting__head {
    height: 130px;
  }
  .top-greeting__ttl {
    font-size: 30px;
  }
  .top-greeting__ttl::before, .top-greeting__ttl::after {
    content: "";
    width: 80px;
  }
  .top-greeting-detail__content {
    flex-direction: column-reverse;
    row-gap: 60px;
    font-size: 15px;
  }
  .top-greeting-detail__docter {
    max-width: 300px;
    margin: 0 auto;
  }
  .top-greeting-detail__docter img {
    box-shadow: 15px 15px 0 #a9c538;
  }
  .top-greeting-doctor__txt {
    padding: 40px 25px 25px;
  }
  .top-greeting-history__list {
    grid-template-columns: 100%;
    row-gap: 30px;
  }
  .top-greeting-history__item {
    padding: 20px 15px;
    font-size: 15px;
  }
  .top-greeting-history-content__ttl {
    font-size: 22px;
  }
  .top-clinic {
    padding-top: 30px;
  }
  .top-clinic__thumbs {
    margin: 10px 0 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
  }
}
	
	
h3.top-case-number {
    font-size: 48px;
    font-weight: 600;
    color: #a9c538;
}
p.case-type {
    font-size: 24px;
    font-weight: 500;
    border-bottom: dotted 5px #a9c538;
    display: inline-block;
    margin-bottom: 40px;
}	
@media screen and (max-width: 750px){
h3.top-case-number {
    font-size: 30px;
}
p.case-type {
    font-size: 20px;
    margin-bottom: 30px;
}
}
	