#implant h4 {
  font-family: "Quicksand", sans-serif;
}

#implant #wrapper {
  background: rgb(246, 245, 241);
  background: linear-gradient(
    0deg,
    rgba(246, 245, 241, 1) 0%,
    rgba(246, 245, 241, 1) 100%
  );
}

#implant .mainvisual {
  background: rgb(71, 59, 47);
  background: linear-gradient(
    180deg,
    rgba(71, 59, 47, 1) 0%,
    rgba(141, 118, 97, 0) 100%
  );
  margin-top: -150px;
  padding-top: 150px;
  padding-bottom: 100px;
  margin-bottom: 0;
}

#implant .mainvisual .container::before {
  display: none;
}

#implant .mainvisual h2 {
  position: unset;
  text-align: center;
  line-height: 1.5;
  font-family: "Yu Mincho";
  text-shadow: unset;
  color: #fff;
  font-weight: normal;
}

#implant .mainvisual h2 span {
  line-height: 2;
  margin-bottom: 10px;
}

#implant .img-mv {
  margin-top: 80px;
  position: relative;
}

#implant .mainvisual .txt-mv {
  position: absolute;
  top: -90px;
  width: 100%;
  font-size: 140px;
  line-height: 1;
  font-family: Classico URW;
  background-image: url("../../images/implant/implant_img01.jpg");
  background-repeat: repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  mix-blend-mode: exclusion;
}

#implant h4 {
  color: #c3a452;
  margin-bottom: 10px;
}

#implant #sec01 {
  padding-bottom: 70px;
}

#implant .list-index {
  display: flex;
  justify-content: center;
  gap: 70px;
}

#implant .list-index .line {
  width: 1px;
  background-color: #b8b8b8;
  margin-bottom: 0;
}

#implant .list-index ul {
  width: 400px;
}

#implant .list-index li {
  padding-left: 30px;
  position: relative;
  font-size: 20px;
}

#implant .list-index li::before {
  position: absolute;
  content: "";
  background-image: url(../../images/implant/li-list.png);
  left: -10px;
  bottom: 47%;
  transform: translateY(50%);
  width: 23px;
  height: 6px;
  background-repeat: no-repeat;
}

#implant #sec01 .box-index {
  margin-bottom: 100px;
}

#implant #sec01 .box-trouble {
  padding-bottom: 100px;
}

#implant #sec01 .box-trouble,
#implant #sec01 .box-trouble h3,
#implant #sec01 .box-trouble h4 {
  position: relative;
  z-index: 1;
}

#implant #sec01 .box-trouble .img-before {
  position: absolute;
  top: 0;
  left: 12%;
  z-index: 0;
  max-width: 300px;
}

#implant #sec01 .box-trouble .img-after {
  position: absolute;
  bottom: 0;
  right: 12%;
  z-index: 0;
  max-width: 300px;
}

#implant .list-trouble {
  display: flex;
  justify-content: center;
  z-index: 1;
  position: relative;
}

#implant .list-trouble ul {
  max-width: 500px;
  width: 100%;
}

#implant .list-trouble li {
  padding-left: 35px;
  position: relative;
  margin-bottom: 10px;
  font-size: 20px;
}

#implant .list-trouble li::before {
  position: absolute;
  content: "";
  background-image: url(../../images/implant/li-check.png);
  left: -10px;
  bottom: 50%;
  transform: translateY(50%);
  background-repeat: no-repeat;
  width: 33px;
  height: 26px;
}

#implant #sec02 {
  background-image: url("../../images/implant/implant_img04.png");
  width: 100%;
  height: 750px;
  background-size: cover;
}

#implant #sec02 .container {
  position: relative;
}

#implant #sec02 .container::before {
  position: absolute;
  content: "";
  background-image: url("../../images/implant/implant_img06.png");
  width: 5px;
  height: 140px;
  left: 50%;
  transform: translateX(-60%);
  top: -14%;
}

#implant #sec02 .sec02-img {
  position: relative;
  top: -80px;
  left: 12%;
}

#implant #sec02 h4 {
  margin-top: -70px;
  margin-bottom: 0;
  letter-spacing: 12px;
}

#implant #sec02 .sec02-txt {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}

#implant #sec02 .sec02-txt::after {
  position: absolute;
  content: "";
  background-image: url(../../images/implant/implant_img07.png);
  width: 261px;
  height: 261px;
  right: -291px;
  bottom: 50%;
  transform: translateY(50%);
}

.txt_dot .dot {
  position: relative;
  display: inline-block;
}

.txt_dot .dot:before {
  position: absolute;
  content: "";
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #c3a452;
}

#implant #content2 {
  /* background-color: #604f3f; */
  background-image: url("../../images/implant/bg-brown.png");
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 120px 0 70px;
}

#implant #content2::before {
  position: absolute;
  content: "";
  background-image: url(../../images/implant/txt.png);
  height: 279px;
  width: 85%;
  background-size: contain;
  top: -150px;
  background-repeat: no-repeat;
  background-position: center center;
  left: 50%;
  transform: translateX(-50%);
}

#implant #content2 .txt-mv {
  position: absolute;
  top: -90px;
  width: 100%;
  font-size: 140px;
  line-height: 1;
  font-family: Classico URW;
  background-image: linear-gradient(0deg, #604f3f 0%, #604f3f 100%);
  background-repeat: repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  mix-blend-mode: exclusion;
  margin-bottom: 0;
}

#implant #sec03 {
  position: relative;
}

#implant #sec03 h4 {
  color: #d2c4a0;
}

#implant #sec03 h3 span {
  font-size: 30px;
  font-weight: normal;
  color: #fff;
}

#implant #sec03 .sec03-txt-des {
  font-size: 40px;
}

#implant #sec03 .sec03-txt-des span {
  color: #d2c4a0;
  font-size: 60px;
}

#implant #sec03 .wrap-features {
  margin-top: 150px;
}

#implant #sec03 .item-features {
  background-color: rgba(210, 196, 160, 0.2);
  width: 80%;
  padding-bottom: 50px;
}

#implant #sec03 .item-features .inner {
  margin-left: 400px;
  margin-right: 100px;
}

#implant #sec03 .item-features .num {
  font-size: 280px !important;
  line-height: 1;
  position: relative;
  top: -120px;
  width: 100%;
  font-size: 140px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.1);
  margin-bottom: 0;
  font-family: "Yu Mincho";
}

#implant #sec03 .txt-safe {
  margin-top: -160px;
  color: #fff;
}

#implant #sec03 .txt-safe .txt-small {
  font-size: 20px;
}

#implant #sec03 .txt-safe .txt-large {
  font-size: 30px;
}

#implant #sec03 .d-flex {
  display: flex;
  align-items: center;
  gap: 50px;
  margin-bottom: 80px;
  margin-top: 70px;
}

#implant #sec03 .d-flex.direction {
  flex-direction: row-reverse;
}

#implant #sec03 .d-flex .row-left,
#implant #sec03 .d-flex .row-right {
  width: 50%;
}

#implant #sec03 .d-flex .row-left {
  color: #fff;
}

#implant #sec03 .d-flex .row-img {
  margin-bottom: 0;
}

#implant #sec03 .d-flex .row-left p {
  margin-bottom: 0;
}

#implant #sec03 .txt-title-item {
  font-size: 20px;
}

#implant #sec03 .txt-main-item {
  margin: 10px 0 25px !important;
}

#implant #sec03 .txt-main-item span {
  font-size: 30px;
  position: relative;
  line-height: 1;
  z-index: 1;
  margin: 10px 0 25px !important;
}

/* #implant #sec03 .txt-main-item span::before{
    position: absolute;
    content: "";
    height: 10px;
    background-color: #AE9E8B;
    z-index: -1;
    bottom: 0;
    left: 0;
    right: -30px;
} */

#implant #sec03 .txt-des-item {
  font-size: 16px;
  line-height: 1.8;
  font-weight: lighter;
}

#implant #sec03 .item-even {
  margin-top: 200px;
}

#implant #sec03 .item-features.item-even {
  width: 100%;
  margin-left: 400px;
  background-color: unset;
  padding-bottom: 0;
}

#implant #sec03 .item-features.item-even .inner {
  margin-left: 0;
}

#implant #sec03 .item-features.item-even .d-flex {
  gap: 100px;
}

#implant #sec03 .item-features.item-even .row-left {
  width: 32%;
}

#implant #sec03 .item-features.item-even .row-right {
  flex: 1;
  background-color: rgba(210, 196, 160, 0.2);
  padding: 100px 0 70px;
  position: relative;
}

#implant #sec03 .item-features.item-even .num {
  position: absolute;
  top: -100px;
  width: unset;
  left: 90px;
  font-size: 200px !important;
}

#implant #sec03 .item-features.item-even .row-img {
  margin-left: -50px;
}

.hide-line::before {
  display: none !important;
}

#implant #sec03 .item-features.item-even.odd {
  margin-left: 0;
}

#implant #sec03 .item-features.item-even.odd .d-flex {
  flex-direction: row-reverse;
}

#implant #sec03 .item-features.item-even.odd .inner {
  margin-right: 400px;
}

#implant #sec03 .item-features.item-even.odd .num {
  left: 400px;
}

#implant #sec03 .item-features.item-even.odd .row-img {
  text-align: right;
  margin-left: 0;
  margin-right: -50px;
}

#implant .line-txt {
  --underline-color: #ae9e8b;
  --underline-height: 10px;
  background: radial-gradient(
        farthest-side,
        var(--underline-color) 140%,
        transparent 100%
      )
      bottom right/var(--underline-height) var(--underline-height),
    radial-gradient(
        farthest-side,
        var(--underline-color) 140%,
        transparent 100%
      )
      bottom left / var(--underline-height) var(--underline-height),
    linear-gradient(var(--underline-color), var(--underline-color))
      bottom/calc(105% - var(--underline-height)) var(--underline-height);
  background-repeat: no-repeat;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  white-space: nowrap;
}

#implant .line-txt .br-sp {
  display: none;
}

@media screen and (max-width: 640px) {
  #implant .line-txt {
    white-space: unset;
  }

  #implant .line-txt .br-sp {
    display: block;
  }
}

#implant #sec04 {
  background-color: #f6f5f2;
  padding: 120px 0 120px;
}

#implant #sec04 .box-patient {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
  margin: 90px auto 0;
}

#implant #sec04 .box-patient .patient-right {
  background-image: url(../../images/implant/implant_img16.png);
  width: 649px;
  height: 252px;
  padding: 30px 30px 30px 70px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#implant #sec04 .box-patient .patient-right .title-patient {
  font-size: 25px;
  border-bottom: 1px solid;
  padding-left: 20px;
  margin-bottom: 10px;
}

#implant #sec04 .box-patient .patient-right .des-patient {
  line-height: 1.5;
}

#implant #sec04 .wrap-patient {
  margin-top: 150px;
}

#implant #sec04 .item-patient {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 170px;
}

#implant #sec04 .item-patient:last-child {
  margin-bottom: 70px;
}

#implant #sec04 .item-patient .img-patient {
  margin-bottom: 0;
  margin-right: -50px;
  z-index: 2;
  width: 48%;
}

#implant #sec04 .item-patient .content-patient {
  padding: 65px 150px 65px 100px;
  background-color: #fff;
  position: relative;
  flex: 1;
}

#implant #sec04 .item-patient .content-patient .num.pc {
  font-size: 200px;
  color: #d2c4a0;
  position: absolute;
  right: 150px;
  top: -100px;
  font-family: "Yu Mincho";
}

#implant #sec04 .item-patient .content-patient .badge {
  width: fit-content;
  background: #a68b62;
  padding: 5px 15px;
  color: #fff;
  margin-bottom: 0;
}

#implant #sec04 .item-patient .content-patient .tit-patient {
  font-size: 25px;
  line-height: 1.8;
  margin-top: 10px;
}

#implant #sec04 .item-patient .content-patient .info-patient {
  margin-bottom: 0;
  line-height: 1.8;
}

#implant #sec04 .box-patient.at {
  gap: 50px;
}

#implant #sec04 .box-patient.at .patient-right {
  background-image: url(../../images/implant/implant_img21.png);
  width: 549px;
  height: 339px;
  padding: 30px 70px 30px 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}

#implant #sec04 .box-patient.at .patient-left img {
  box-shadow: 15px 15px #f0eee3;
}

#implant #sec05 {
  background-color: #fff;
  padding: 120px 0 80px;
}

#implant #sec05 #list_news {
  margin-bottom: 70px;
}

#implant #sec05 .idx-btn.style01 {
  max-width: unset;
}

#implant #sec05 .box-seccond {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#implant #sec05 .box-seccond::before {
  position: absolute;
  content: "";
  background-image: url("../../images/implant/implant_img23.png");
  width: 1580px;
  height: 375px;
  top: 20px;
  left: 0;
}

#implant #sec05 .box-seccond::after {
  position: absolute;
  content: "";
  background-image: url("../../images/implant/implant_img24.png");
  width: 1600px;
  height: 375px;
  top: 0;
  left: 0;
}

#implant #sec05 .box-seccond h3 {
  margin-bottom: 0;
}

#implant #sec05 .wrap-seccond {
  padding: 50px 0;
  z-index: 2;
  position: relative;
}

#implant #sec05 .title-seccond {
  width: fit-content;
  margin: 0 auto;
  font-size: 20px;
  margin-bottom: 20px;
}

#implant #sec05 .box-bnr {
  margin-top: 70px;
}

#implant #sec06 {
  background-color: #fff;
}

#implant #sec06 .box-message .container {
  background-color: #f1eee8;
  margin-top: -180px;
  position: relative;
  padding: 150px 0 120px;
}

#implant #sec06 .box-message .container::before {
  position: absolute;
  content: "";
  background-image: url(../../images/implant/implant_img34.png);
  width: 778px;
  height: 122px;
  left: 50%;
  transform: translateX(-50%);
  top: -66px;
}

#implant #sec06 .wrap-message {
  padding: 0 200px;
}

#implant #sec06 .box-further {
  display: flex;
  align-items: center;
  gap: 50px;
  margin: 50px 0 40px;
  gap: 40px;
}

#implant #sec06 .box-further .further-left {
  width: 55%;
}

#implant #sec06 .box-further .further-left p {
  font-size: 30px;
  line-height: 1.5;
}

#implant #sec06 .box-further .further-left p span {
  font-size: 20px;
}

#implant #sec06 .box-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  margin-bottom: 80px;
}

#implant #sec06 .box-grid .grid-item {
  background-color: #a68b62;
  padding: 10px;
  color: #fff;
  position: relative;
  margin-bottom: 0;
  text-align: center;
}

#implant #sec06 .box-grid .grid-item::before {
  position: absolute;
  content: "";
  border: 1px solid #928374;
  inset: 5px -5px -5px 5px;
}

#implant #sec06 .box-prize.sp {
  display: none !important;
}

#implant #sec06 .row-prize {
  display: flex;
  gap: 50px;
}

#implant #sec06 .prize-item {
  width: 35%;
}

#implant #sec06 .prize-item p {
  width: 85%;
  margin: -27px auto 0;
  background: #fff;
  padding: 10px;
  z-index: 2;
  position: relative;
  line-height: 1.2;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

#implant #sec06 .prize-item p::before {
  position: absolute;
  content: "";
  background-image: url("../../images/implant/implant_img35.png");
  width: 4px;
  height: 29px;
  left: 50%;
  transform: translateX(-50%);
  top: -15px;
}

#implant #sec06 .row-bottom {
  margin-top: 70px;
  justify-content: flex-end;
}

#implant #sec07 {
  padding: 120px 0;
  background-color: #fff;
}

#implant #sec07 .box-flow {
  background-color: #e8e2d1;
  /* padding: 50px 0; */
  margin-top: 100px;
}

#implant #sec07 .wrap-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  transform: translateY(-30px);
}

#implant #sec07 .wrap-flow .flow-item {
  width: 145px;
  height: 141px;
  position: relative;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#implant #sec07 .wrap-flow .flow-item.arr:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-left: 14px solid #b8b8b8;
  border-bottom: 7px solid transparent;
  right: -25%;
  transform: translateX(-25%);
}

#implant #sec07 .wrap-flow .flow-item.item-01 {
  background-image: url("../../images/implant/implant_img36.png");
}

#implant #sec07 .wrap-flow .flow-item.item-02 {
  background-image: url("../../images/implant/implant_img37.png");
}

#implant #sec07 .wrap-flow .flow-item.item-03 {
  background-image: url("../../images/implant/implant_img38.png");
}

#implant #sec07 .wrap-flow .flow-item.item-04 {
  background-image: url("../../images/implant/implant_img39.png");
}

#implant #sec07 .wrap-flow .flow-item.item-05 {
  background-image: url("../../images/implant/implant_img40.png");
}

#implant #sec07 .wrap-flow .flow-item.item-06 {
  background-image: url("../../images/implant/implant_img41.png");
}

#implant #sec07 .wrap-flow .flow-item::before {
  position: absolute;
  content: "";
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
}

#implant #sec07 .wrap-flow .flow-item p {
  margin-bottom: 0;
}

#implant #sec07 .wrap-flow .flow-item .num {
  font-size: 42px;
  font-family: "Yu mincho";
  color: #d2c4a0;
  position: absolute;
  z-index: 2;
  line-height: 1;
  top: -21px;
}

#implant #sec07 .wrap-flow .flow-item .txt {
  font-size: 18px;
  color: #fff;
  position: relative;
  z-index: 2;
  line-height: 1.5;
  text-align: center;
}

#implant #sec08 {
  background-color: #fff;
  padding-bottom: 200px;
}

#implant #sec08 .box-cost {
  position: relative;
  max-width: 1000px;
  margin: 60px auto 0;
  padding: 20px;
  text-align: center;
  width: 100%;
}

#implant #sec08 .box-cost::before {
  position: absolute;
  content: "";
  inset: 0 -10px -10px 0;
  border: 1px solid #c3a452;
}

#implant #sec08 .box-cost::after {
  position: absolute;
  content: "";
  inset: -10px 0 0 -10px;
  border: 1px solid #c3a452;
}

#implant #sec08 .box-cost .title-cost {
  font-size: 30px;
  margin-bottom: 0;
}

#implant #sec08 .box-cost .price-cost {
  background-color: #a68b62;
  color: #fff;
  width: 50%;
  margin: 20px auto 20px;
  padding: 5px;
  font-size: 20px;
}

#implant #sec08 .fix_tbl_width {
  max-width: 1000px;
  margin: 70px auto 0;
}

#implant #sec08 .box-cost.warranty {
  padding: 70px 50px 50px;
  margin-top: 100px;
}

#implant #sec08 .box-bnr-wararanty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
}

#implant #sec08 .under-tbl tr {
  border: 1px solid #b8b8b8;
  border-right: unset;
  border-left: unset;
}

#implant #sec08 .under-tbl th {
  background-color: #f6f5f1;
  border: unset;
}

#implant #sec08 .under-tbl td::before,
#implant #sec08 .under-tbl td::after {
  display: none;
}

#implant #sec10 {
  background-image: url("../../images/implant/implant_img46.png");
  width: 100%;
  height: 800px;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 110px 0;
  background-position: center;
}
#implant #sec10 .container {
  max-width: 900px;
}

#implant #sec10 a {
  text-decoration: unset;
}

#implant #sec10 ul.accordion {
  list-style: none;
  padding: 0;
}

#implant #sec10 .box-accodion {
  padding: 0 30px;
}

#implant #sec10 ul.accordion a .txt-large {
  font-size: 30px;
  font-family: "Yu mincho";
}

#implant #sec10 ul.accordion .inner {
  padding-left: 1em;
  overflow: hidden;
}

#implant #sec10 ul.accordion li {
  margin: 15px 0;
}

#implant #sec10 ul.accordion li a.toggle {
  width: 100%;
  display: block;
  background: #d2c4a0;
  color: #fefefe;
  padding: 10px 25px 10px 10px;
  border-radius: 0.15em;
  transition: all 0.2s linear;
  position: relative;
}

#implant #sec10 ul.accordion li a.toggle::after {
  position: absolute;
  content: "";
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background-image: url(../../images/implant/minus.png);
  width: 18px;
  height: 3px;
}

#implant #sec10 ul.accordion li a.toggle.close::after {
  background-image: url(../../images/implant/plus.png);
  width: 18px;
  height: 18px;
}

#implant #sec10 ul.accordion li a.toggle:hover {
  background: rgba(210, 196, 160, 0.8);
}

#implant #sec10 .acc-answer p {
  display: flex;
  /* align-items: center; */
  gap: 10px;
  margin-bottom: 0;
}

#implant #sec10 .acc-answer .txt-large {
  font-size: 30px;
  font-family: "Yu mincho";
  color: #c3a452;
  padding-top: 10px;
}

#implant #sec11 {
  padding: 120px 0;
  background-color: #fff;
}

#implant #sec11 .box-movie {
  position: relative;
  max-width: 1200px;
  margin: 120px auto 0;
  padding: 20px 20px 45px;
  text-align: center;
  width: 100%;
  z-index: 1;
}

#implant #sec11 .box-movie::before {
  position: absolute;
  content: "";
  inset: 0 -10px -10px 0;
  border: 1px solid #c3a452;
  z-index: -1;
}

#implant #sec11 .box-movie::after {
  position: absolute;
  content: "";
  inset: -10px 0 0 -10px;
  border: 1px solid #c3a452;
  z-index: -1;
}

#implant #sec11 .box-movie .heading-movie {
  background-color: #fff;
  width: 70%;
  margin: 0 auto 0;
  transform: translateY(-50px);
}

#implant #sec11 .box-movie .heading-movie h3 {
  margin-bottom: 0;
}

#implant #sec11 .box-ytb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  padding: 0 30px;
}

#implant #sec11 .box-ytb .title-ytb {
  font-size: 30px;
  margin-bottom: 20px;
  line-height: 1;
}

#implant #sec09 {
  padding: 0 0 120px 0;
}

#implant #sec09 .box-maintenace {
  background-image: url("../../images/implant/implant_img59.png");
  max-width: 1920px;
  width: 100%;
  height: 550px;
  background-position: center;
  background-repeat: no-repeat;
}

#implant #sec09 .wrap-maintenace {
  /* padding-top: 550px; */
  max-width: 998px;
  margin: 0 auto;
}

#implant #sec09 .wrap-maintenace .inner-maintenace {
  background-color: #fff;
  padding: 0 70px 70px;
}

#implant #sec09 .txt-maintenace {
  position: relative;
  /* max-width: 1200px;
    margin: 120px auto 0; */
  padding: 10px 20px;
  text-align: center;
  width: fit-content;
  margin: 0 auto 50px;
  z-index: 1;
}

#implant #sec09 .txt-maintenace::before {
  position: absolute;
  content: "";
  inset: 0 -7px -7px 0;
  border: 1px solid #b8b8b8;
  z-index: -1;
}

#implant #sec09 .txt-maintenace::after {
  position: absolute;
  content: "";
  inset: -7px 0 0 -7px;
  border: 1px solid #b8b8b8;
  z-index: -1;
}

@media screen and (min-width: 1280px) and (max-width: 1280px) {
  #implant .txt-mv {
    font-size: 110px !important;
    top: -70px !important;
  }

  #implant #sec02 .sec02-txt {
    max-width: 640px;
    width: 100%;
  }

  #implant #sec02 .sec02-txt::after {
    position: absolute;
    content: "";
    background-image: url(../../images/implant/implant_img07.png);
    width: 231px;
    height: 231px;
    right: -251px;
    bottom: 50%;
    transform: translateY(50%);
  }

  #implant #sec03 .item-features .inner,
  #implant #sec03 .item-features.item-even {
    margin-left: 100px;
  }

  #implant #sec03 .item-features.item-even.odd .inner {
    margin-right: 100px;
  }

  #implant #sec10 {
    width: 100%;
  }

  #implant #sec01 .box-trouble .img-before {
    left: 3%;
  }

  #implant #sec11 .box-movie {
    max-width: 1100px;
  }
}

@media screen and (min-width: 1366px) and (max-width: 1366px) {
  #implant .txt-mv {
    font-size: 110px !important;
    top: -70px !important;
  }

  #implant #sec02 .sec02-txt {
    max-width: 640px;
    width: 100%;
  }

  #implant #sec02 .sec02-txt::after {
    position: absolute;
    content: "";
    background-image: url(../../images/implant/implant_img07.png);
    width: 231px;
    height: 231px;
    right: -251px;
    bottom: 50%;
    transform: translateY(50%);
  }

  #implant #sec03 .item-features .inner,
  #implant #sec03 .item-features.item-even {
    margin-left: 100px;
  }

  #implant #sec03 .item-features.item-even.odd .inner {
    margin-right: 100px;
  }

  #implant #sec10 {
    width: 100%;
  }
}

/* 追記 */
@media screen and (max-width: 1520px) {
  #implant #sec02 .sec02-txt {
    max-width: 640px;
    width: 100%;
  }

  #implant #sec02 .sec02-txt::after {
    position: absolute;
    content: "";
    background-image: url(../../images/implant/implant_img07.png);
    width: 231px;
    height: 231px;
    right: -251px;
    bottom: 50%;
    transform: translateY(50%);
  }

  #implant #sec03 .item-features .inner,
  #implant #sec03 .item-features.item-even {
    margin-left: 100px;
  }

  #implant #sec03 .item-features.item-even.odd .inner {
    margin-right: 100px;
  }

  #implant #sec10 {
    width: 100%;
  }
}

@media screen and (min-width: 641px) and (max-width: 1279px) {
  #implant #content2 .txt-mv {
    font-size: 110px !important;
    top: -70px;
  }

  #implant #sec03 .item-features .inner,
  #implant #sec03 .item-features.item-even {
    margin-left: 100px;
  }

  #implant #sec03 .item-features.item-even.odd .inner {
    margin-right: 100px;
  }

  #implant #sec10 {
    width: 100%;
  }

  #implant #sec01 .box-trouble .img-before {
    left: 3%;
  }

  #implant #sec11 .box-movie {
    max-width: 1100px;
  }
}

@media screen and (max-width: 640px) {
  #implant .mainvisual {
    padding-top: 250px;
    padding-bottom: 0;
    background: linear-gradient(
      180deg,
      rgba(71, 59, 47, 1) 0%,
      rgb(141 118 97 / 50%) 100%
    );
  }

  #implant #header.fixed ~ .mainvisual {
    padding-top: 150px;
  }

  #implant .mainvisual .container {
    padding: 0;
  }

  #implant .mainvisual h2 span {
    line-height: 1.5;
  }

  #implant .img-mv {
    margin-top: 80px;
  }

  #implant .txt-mv {
    font-size: 60px !important;
    line-height: 0.8;
    margin-bottom: 0;
    background-image: url("../../images/implant/implant_img01_sp.jpg");
    top: -40px !important;
  }

  #implant #content2::before {
    background-image: url(../../images/implant/MinimalIntervention.png);
    height: 268px;
    width: 85%;
    top: -115px;
  }

  #implant #sec01 .box-index {
    margin: 70px 0;
  }

  #implant .list-index {
    flex-direction: column;
    gap: 0;
  }

  #implant .list-index li {
    font-size: 16px;
  }

  #implant .list-trouble li {
    padding-left: 15px;
    font-size: 14px;
  }

  #implant .list-trouble li::before {
    width: 17px;
    height: 15px;
    background-size: cover;
    top: 10%;
  }

  #implant #sec01 .box-img {
    display: flex;
    flex-direction: row-reverse;
    margin-top: 30px;
  }

  #implant #sec01 .box-trouble {
    padding-bottom: 50px;
  }

  #implant #sec01 .box-trouble .img-before {
    position: unset;
    max-width: 300px;
    transform: translateY(-20%);
  }

  #implant #sec01 .box-trouble .img-after {
    position: unset;
    max-width: 300px;
  }

  #implant #sec02 {
    height: auto;
    padding-bottom: 110px;
  }

  #implant #sec02 .sec02-img {
    display: inline-block;
    max-width: 150px;
    left: 0;
  }

  #implant #sec02 .container::before {
    top: -23%;
  }

  .txt_dot {
    line-height: 1.8;
  }

  .txt_dot .dot:before {
    width: 5px;
    height: 5px;
    top: -1px;
  }

  #implant #sec02 .sec02-txt::after {
    display: none;
  }

  #implant #sec03 h3 {
    line-height: 1.3;
  }

  #implant #sec03 span {
    font-size: 22px;
    display: inline-block;
  }

  #implant #sec03 .txt-des-item span {
    font-size: 16px;
  }

  #implant #sec03 .sec03-txt-head {
    margin-bottom: 15px;
  }

  #implant #sec03 .sec03-txt-des {
    font-size: 25px;
  }

  #implant #sec03 .sec03-txt-des span {
    color: #d2c4a0;
    font-size: 40px;
  }

  #implant #sec03 .item-features {
    width: 100%;
  }

  #implant #sec03 .item-even {
    margin-top: 100px;
  }

  #implant #sec03 .wrap-features {
    margin-top: 100px;
  }

  #implant #sec03 .item-features .inner {
    margin-left: unset;
    margin-right: unset;
    padding: 0 10px;
  }

  #implant #sec03 .item-features .num {
    font-size: 100px !important;
    top: -50px;
    text-align: center;
  }

  #implant #sec03 .item-features.item-even .num {
    font-size: 100px !important;
  }

  #implant #sec03 .txt-safe {
    margin-top: unset;
    padding: 0 35px;
  }

  #implant #sec03 .d-flex {
    flex-direction: column !important;
    margin-bottom: 0;
    margin-top: 40px;
  }

  #implant #sec03 .d-flex .row-left,
  #implant #sec03 .d-flex .row-right {
    width: 100%;
  }

  #implant #sec03 .d-flex .row-img {
    text-align: center !important;
    margin-bottom: 20px !important;
  }

  #implant #sec03 .txt-safe .txt-small {
    font-size: 18px;
  }

  #implant #sec03 .txt-safe .txt-large {
    font-size: 22px;
  }

  #implant #sec03 .txt-title-item {
    font-size: 18px;
    text-align: center;
    margin-top: -30px;
  }

  #implant #sec03 .txt-main-item {
    text-align: center;
    font-size: 22px;
  }

  #implant #sec03 .txt-main-item span {
    /* text-align: center; */
  }

  #implant #sec03 .txt-main-item span::before {
    bottom: -5px;
    /* width: 80%; */
  }

  #implant #sec03 .item-features.item-even {
    margin-left: unset;
  }

  #implant #sec03 .item-features.item-even .d-flex {
    flex-direction: column-reverse !important;
    gap: 0;
  }

  #implant #sec03 .item-features.item-even {
    background: rgba(210, 196, 160, 0.2);
    padding-bottom: 80px;
  }

  #implant #sec03 .item-features.item-even .row-right {
    background-color: unset;
  }

  #implant #sec03 .item-features.item-even .num {
    position: relative;
    transform: translateX(-50%);
    left: 50%;
    top: -50px;
  }

  #implant #sec03 .item-features.item-even .row-left {
    width: 100%;
  }

  #implant #sec03 .item-features.item-even .row-right {
    padding: 0;
  }

  .hide-line {
    display: unset !important;
  }

  #implant #sec03 .item-features.item-even .row-img {
    margin-left: unset;
  }

  #implant #sec03 .item-features.item-even.odd .inner {
    margin-right: 0;
  }

  #implant #sec03 .item-features.item-even.odd .num {
    left: 50%;
  }

  #implant #sec03 .item-features.item-even.odd .row-img {
    margin-right: 0;
  }

  #implant #sec03 .txt-main-item span.fix-lh {
    line-height: 1.4;
  }

  #implant #sec04 {
    padding: 80px 0 6px;
  }

  #implant #sec04 .box-patient {
    flex-direction: column;
    margin-top: 50px;
  }

  #implant #sec04 .box-patient .patient-left {
    z-index: 1;
  }

  #implant #sec04 .box-patient .patient-right {
    width: 100%;
    height: auto;
    background: unset;
    border: 2px solid #d2c4a0;
    padding: 60px 30px 30px;
    margin-top: -50px;
  }

  #implant #sec04 .box-patient .patient-right .title-patient {
    text-align: center;
    padding-left: 0;
    font-size: 22px;
  }

  #implant #sec04 .wrap-patient {
    margin-top: 50px;
  }

  #implant #sec04 .item-patient {
    margin-bottom: 50px;
  }

  #implant #sec04 .item-patient .img-patient {
    display: none;
  }

  #implant #sec04 .item-patient .wrap-badge {
    display: flex;
    align-items: center;
    gap: 20px;
  }

  #implant #sec04 .item-patient .wrap-badge .num.sp {
    color: #d2c4a0;
    font-family: "Yu Mincho";
    font-size: 70px;
  }

  #implant #sec04 .item-patient .content-patient .tit-patient {
    font-size: 22px;
    margin-bottom: 50px;
  }

  #implant #sec04 .item-patient .content-patient {
    padding: 30px 10px 70px;
  }

  #implant #sec04 .box-patient.at .patient-right {
    background: unset;
    border: unset;
    width: 100%;
    height: auto;
    margin-top: 0;
    padding: 30px;
  }

  #implant #sec04 .box-patient.at {
    background-color: #7b6550;
    gap: 0;
    padding-bottom: 70px;
  }

  #implant #sec04 .box-patient.at .patient-left {
    text-align: center;
    width: 70%;
  }

  #implant #sec04 .box-patient.at .patient-left img {
    box-shadow: 10px 10px #f0eee3;
  }

  #implant #sec05 {
    padding-bottom: 50px;
  }

  #implant #sec05 .wrap-seccond {
    padding: 75px 0 40px;
  }

  #implant #sec05 .box-seccond {
    margin: 80px 0 55px;
  }

  #implant #sec05 .box-seccond::before {
    position: absolute;
    content: "";
    background-image: url("../../images/implant/implant_img23.png");
    width: 1580px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    top: 20px;
    left: 0;
    bottom: 0;
  }

  #implant #sec05 .box-seccond::after {
    position: absolute;
    content: "";
    background-image: url("../../images/implant/implant_img24.png");
    width: 1600px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    left: 0;
    bottom: 0;
  }

  #implant #sec06 .wrap-message {
    padding: 0 10px;
  }

  #implant #sec06 .box-further {
    flex-direction: column-reverse;
    margin-top: 80px;
  }

  #implant #sec06 .box-further .further-left {
    text-align: center;
    width: 100%;
  }

  #implant #sec06 .box-further .further-left p {
    font-size: 22px;
  }

  #implant #sec06 .box-further .further-left p span {
    font-size: 18px;
  }

  #implant #sec06 .box-grid {
    grid-template-columns: repeat(1, 1fr);
  }

  #implant #sec06 .box-prize.sp {
    display: block !important;
  }

  #implant #sec06 .prize-item {
    width: 100%;
  }

  #implant #sec06 .prize-item img {
    display: inline-block;
  }

  #implant #sec06 .slick-arrow {
    border: none;
    outline: none;
    background-color: transparent;
    width: 45px;
    cursor: pointer;
    position: absolute;
    z-index: 99;
  }

  #implant #sec06 .slick-arrow.slick-prev {
    left: 0;
    bottom: 60%;
    transform: translateY(50%);
  }

  #implant #sec06 .slick-arrow.slick-next {
    right: 0;
    bottom: 60%;
    transform: translateY(50%);
  }

  #implant #sec06 .slick-arrow.slick-prev img {
    transform: rotate(-90deg);
  }

  #implant #sec06 .slick-arrow.slick-next img {
    transform: rotate(90deg);
  }

  #implant #sec06 .slick-disabled {
    pointer-events: none;
    filter: grayscale(1);
  }

  #implant #sec06 .box-message .container {
    margin-top: 0;
    padding-top: 10px;
    padding-bottom: 60px;
  }

  #implant #sec06 .box-message {
    background-color: #f1eee8;
  }

  #implant #sec06 .box-message .txt-message {
    transform: translateY(-6.8vw);
  }

  #implant #sec06 .box-message .container::before {
    display: none;
    position: absolute;
    content: "";
    background-image: url(../../images/implant/implant_img43.png);
    width: 640px;
    height: 74px;
    left: 50%;
    transform: translateX(-50%);
    top: -43px;
  }

  #implant #sec07 {
    padding: 70px 0;
  }

  #implant #sec07 .box-flow.sp {
    background: unset;
    position: relative;
  }

  #implant #sec07 .box-flow.sp::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    background-color: #e8e2d1;
    bottom: 0;
    top: 50%;
  }

  #implant #sec08 {
    padding-bottom: 100px;
  }

  #implant #sec08 .box-cost {
    width: 95%;
    margin-top: 50px;
  }

  #implant #sec08 .box-cost .title-cost {
    font-size: 22px;
  }

  #implant #sec08 .box-cost .price-cost {
    width: 100%;
  }

  #implant #sec08 .box-cost.warranty {
    padding: 30px;
  }

  #implant #sec08 .box-bnr-wararanty {
    margin-top: 50px;
    flex-direction: column;
    gap: 50px;
  }

  #implant #sec09 {
    padding-bottom: 50px;
  }

  #implant #sec10 {
    width: 100%;
    height: auto;
    padding: 80px 0 50px;
  }

  #implant #sec11 {
    padding: 50px 0 100px;
  }

  #implant #sec11 .box-ytb {
    flex-direction: column;
    gap: 50px;
  }

  #implant #sec11 .box-movie {
    width: 95%;
  }

  #implant #sec11 .box-ytb .title-ytb {
    font-size: 22px;
  }

  #implant #sec09 .box-maintenace {
    background-image: url("../../images/implant/implant_img60.png");
    max-width: 640px;
    background-size: cover;
  }

  #implant #sec09 .wrap-maintenace {
    max-width: unset;
    margin: 0 auto;
    padding: 0 5.4vw;
  }

  #implant #sec09 .wrap-maintenace .inner-maintenace {
    padding: 30px;
  }

  #implant #sec08 .under-tbl tr {
    border: unset;
  }

  #implant #sec08 .under-tbl th,
  #implant #sec08 .under-tbl td {
    text-align: center;
    font-weight: normal;
  }

  #implant #sec08 .under-tbl th::before,
  #implant #sec08 .under-tbl th::after {
    display: none;
  }
}

@media screen and (max-width: 540px) {
  #implant .txt-mv {
    font-size: 48px !important;
    line-height: 1;
    margin-bottom: 0;
  }

  #implant #sec09 .wrap-maintenace {
    margin-top: -20px;
  }
}

@media screen and (max-width: 480px) {
  #implant #sec02 .sec02-img {
    max-width: 120px;
    left: 0;
  }

  #implant #sec02 .container::before {
    top: -20%;
  }

  #implant #sec07 .wrap-flow .flow-item {
    width: 105px;
    height: 101px;
    position: relative;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #implant #sec07 .wrap-flow .flow-item.arr:after {
    right: -35%;
  }

  #implant #sec09 .wrap-maintenace {
    margin-top: -50px;
  }
}

@media screen and (max-width: 450px) {
  #implant #sec09 .wrap-maintenace {
    padding: 0 3.5vw;
  }
}

@media screen and (max-width: 430px) {
  #implant #sec09 .wrap-maintenace {
    padding: 0 1.5vw;
  }
}

@media screen and (max-width: 420px) {
  #implant #sec09 .wrap-maintenace {
    padding: 0;
  }
}
