:root {
  --c-primary: #514327;
  --c-black: #000;
  --c-gray: #f7f7f7;
  --c-green: #00a040;
  --c-green-deep: #006d2c;
  --c-green-light: #00b79b;
  --c-white: #fff;
  --c-yellow: #ffe145;
  --c-yellow-deep: #ffd918;
  --c-green-h: #16b253;
  --c-yellow-h: #ffef5f;
  --c-bottom-contact: #fffae2;
  --c-h2: #d4f8e2;
  --c-h3: #00a040;
  --c-h3-line: #d8d8d8;
  --c-h4: #00a040;
  --c-about-green: #fcfcd7;
  --c-service: #fff;
  --c-anchor: #ffe500;
  --c-staff: #00a040;
  --c-staff-white: #fff;
  --c-staff-doctor: #056cba;
  --c-staff-treatment-coordinator: #00a040;
  --c-staff-dental-hygienist: #ff554a;
  --c-staff-reception-assistant: #ff6e00;
  --c-staff-visit-coordinator: #1b55b4;
  --c-staff-chairman: #9633b2;
  --c-caries-periodontal-disease: #fc9393;
  --c-preventive-dentistry: #96c000;
  --c-dentures: #0ab47f;
  --c-cleaning-whitening: #ffe500;
  --c-cleaning-whitening-page: #e6a800;
  --c-pediatric-dentistry: #7cc7f1;
  --c-pediatric-dentistry-page: #1c96e5;
  --c-fillings-coverings: #ff9d3a;
  --c-orthodontics-invisalign: #3a6aad;
  --c-implant: #d0a5db;
  --c-implant-page: #a463b5;
  --c-caries-periodontal-disease-light: #fda3a3;
  --c-preventive-dentistry-light: #caf54a;
  --c-dentures-light: #94f8dc;
  --c-cleaning-whitening-light: #ffee58;
  --c-pediatric-dentistry-light: #8ed5ff;
  --c-fillings-coverings-light: #ffb76f;
  --c-orthodontics-invisalign-light: #457dcc;
  --c-implant-light: #e7b5f3;
  --t-dentures: #e5f7f2;
  --t-cleaning-whitening: #ffedac;
  --t-fillings-coverings: #fff3e8;
  --t-orthodontics-invisalign: #e5eeff;
  --t-implant: #f0dff6;
  --t-note: #fffee7;
  --bg-top: url(images/common/bg.png);
  --bg-caries-periodontal-disease: url(images/service/caries-periodontal-disease/footer_back.png);
  --bg-preventive-dentistry: url(images/service/preventive-dentistry/footer_back.png);
  --bg-dentures: url(images/service/dentures/footer_back.png);
  --bg-cleaning-whitening: url(images/service/cleaning-whitening/footer_back.png);
  --bg-pediatric-dentistry: url(images/service/pediatric-dentistry/footer_back.png);
  --bg-fillings-coverings: url(images/service/fillings-coverings/footer_back.png);
  --bg-orthodontics-invisalign: url(images/service/orthodontics-invisalign/footer_back.png);
  --bg-implant: url(images/service/implant/footer_back.png);
  --c-heading-border: #d8d8d8;
  --c-service-background: #fffee8;
  --c-advantageBox-item: #eaeaea;
  --c-list: #b4e289;
  --f-primary: "Murecho", "Noto Sans JP", sans-serif;
  --f-primary-en: "Josefin Sans", sans-serif;
  --z-index-opening: 9999;
  --c-po-blue: #070d3d;
  --c-po-gray: #f0f0f0;
  --c-po-orange: #ff6900;
  --c-po-green: #00b015;
  --c-po-pink: #ff4f55;
  --c-po-yellow: #fff75c;
}

@media screen and (min-width: 821px) {
  .pc-only {
    display: block;
  }
}
@media screen and (max-width: 820px) {
  .pc-only {
    display: none;
  }
}

@media screen and (min-width: 821px) {
  .pc-escape {
    display: none;
  }
}
@media screen and (max-width: 820px) {
  .pc-escape {
    display: block;
  }
}

@media screen and (min-width: 821px) {
  .tab-only {
    display: none;
  }
}
@media screen and (max-width: 820px) and (min-width: 577px) {
  .tab-only {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .tab-only {
    display: none;
  }
}

@media screen and (min-width: 821px) {
  .tab-escape {
    display: block;
  }
}
@media screen and (max-width: 820px) and (min-width: 577px) {
  .tab-escape {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .tab-escape {
    display: block;
  }
}

@media screen and (min-width: 577px) {
  .sp-only {
    display: none;
  }
}
@media screen and (max-width: 576px) {
  .sp-only {
    display: block;
  }
}

@media screen and (min-width: 577px) {
  .sp-escape {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  .sp-escape {
    display: none;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
    transform: translateY(25px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade-up {
  0% {
    opacity: 0;
    transform: translateY(-25px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade-right {
  0% {
    opacity: 0;
    transform: translateX(25px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fade-left {
  0% {
    opacity: 0;
    transform: translateX(-25px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fade-bg {
  0% {
    transform: translate(-101%, -50%);
  }
  50% {
    transform: translateX(0, -50%);
  }
  100% {
    transform: translate(101%, -50%);
  }
}
@keyframes appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes disappear {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade-scale {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  70% {
    transform: scale(1.1);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.fade-appear {
  opacity: 0;
}
.fade-appear.fade-action {
  animation-name: appear;
  animation-duration: 0.8s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.fade-in {
  opacity: 0;
}
.fade-in.fade-action {
  animation-name: fade-in;
  animation-duration: 0.8s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.fade-up {
  opacity: 0;
}
.fade-up.fade-action {
  animation-name: fade-up;
  animation-duration: 0.8s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.fade-right {
  opacity: 0;
}
.fade-right.fade-action {
  animation-name: fade-right;
  animation-duration: 0.8s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.fade-left {
  opacity: 0;
}
.fade-left.fade-action {
  animation-name: fade-left;
  animation-duration: 0.8s;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
}
.fade-bg .title {
  position: relative;
  color: transparent;
  transition: color 0.1ms 0.35s;
}
.fade-bg .title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(101%, -50%);
  width: 100%;
  height: 100%;
  background-color: var(--c-primary);
}
.fade-bg.white .title::before {
  background-color: var(--c-white);
}
.fade-bg.fade-action .title {
  color: var(--c-primary);
}
.fade-bg.fade-action .title::before {
  animation-name: fade-bg;
  animation-duration: 1.25s;
  animation-fill-mode: forwards;
}
.fade-bg.fade-action.white .title {
  color: var(--c-white);
}
.fade-scale {
  opacity: 0;
}
.fade-scale.fade-action {
  animation-name: fade-scale;
  animation-duration: 0.6s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

body#implant {
  color: #0C3165;
}
body#implant::before {
  display: none;
}
body#implant .floatBtn {
  display: none;
}
@media screen and (max-width: 820px) {
  body#implant .im-header__left {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
  }
}
body#implant .im-header__left .logo {
  position: absolute;
  top: 22px;
  left: clamp(1rem, 2.196193265vw, 3rem);
  z-index: 9999;
  width: clamp(0rem, 15.8854166667vw, 30.5rem);
}
@media screen and (max-width: 1450px) {
  body#implant .im-header__left .logo {
    top: 10px;
    width: clamp(0rem, 23.046875vw, 29.5rem);
  }
}
@media screen and (max-width: 820px) {
  body#implant .im-header__left .logo {
    width: clamp(12.7rem, 43.9024390244vw, 36rem);
  }
}
body#implant .im-header__left .logo img {
  width: 100%;
}
body#implant .im-header .fixed__btnLinks {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  -moz-column-gap: 6px;
       column-gap: 6px;
  padding-top: 21px;
  padding-right: 18px;
  z-index: 9999;
}
@media screen and (max-width: 1450px) {
  body#implant .im-header .fixed__btnLinks {
    padding-top: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .im-header .fixed__btnLinks {
    top: auto;
    right: auto;
    left: 0;
    bottom: 0;
    flex-wrap: wrap;
    justify-content: center;
    -moz-column-gap: clamp(0rem, 2.1951219512vw, 1.8rem);
         column-gap: clamp(0rem, 2.1951219512vw, 1.8rem);
    padding-top: clamp(0rem, 2.5806451613vw, 1.6rem);
    padding-bottom: clamp(0rem, 2.5806451613vw, 1.6rem);
    width: 100%;
    background-color: var(--c-white);
  }
}
@media screen and (max-width: 576px) {
  body#implant .im-header .fixed__btnLinks {
    padding: 6px 0px;
  }
}
body#implant .im-header .fixed__btnLinks__head {
  display: none;
}
@media screen and (max-width: 820px) {
  body#implant .im-header .fixed__btnLinks__head {
    display: block;
    text-align: center;
    width: 100%;
    padding-bottom: 15px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .im-header .fixed__btnLinks__head {
    padding-bottom: 8px;
  }
}
body#implant .im-header .fixed__btnLinks__head img {
  width: clamp(37.5rem, 47.3170731707vw, 38.8rem);
}
@media screen and (max-width: 576px) {
  body#implant .im-header .fixed__btnLinks__head img {
    width: clamp(15rem, 42.6829268293vw, 17.5rem);
  }
}
body#implant .im-header .fixed__btnLinks a {
  width: clamp(13.5rem, 16.25vw, 23.4rem);
  transition: 0.4s opacity ease;
}
@media screen and (max-width: 820px) {
  body#implant .im-header .fixed__btnLinks a {
    width: 45.6097560976%;
  }
}
body#implant .im-header .fixed__btnLinks a:hover {
  opacity: 0.7;
}
body#implant .im-header .fixed__btnLinks a img {
  width: 100%;
}
body#implant ul {
  list-style: none;
}
body#implant .whiteBack {
  background-color: #fff;
}
body#implant .navyBack {
  background-color: #0C3165;
  color: #fff;
}
body#implant .yellowBack {
  background-color: #FFFF00;
}
body#implant .lightBlueBack {
  display: inline-block;
  background-color: #ECFBFF;
  text-align: center;
  padding: 3px 10px;
  border-radius: 5px;
  margin-bottom: 5px;
}
body#implant .blueBack {
  background-color: #00B4FF;
  color: #fff;
}
body#implant .c-blue {
  color: #006AE3;
}
body#implant .c-lightBlue {
  color: #00ACF5;
}
body#implant .c-lightGreen {
  color: #00BDCB;
}
body#implant .c-yellow {
  color: #FF9500;
}
@media screen and (max-width: 820px) {
  body#implant .tb-none {
    display: none;
  }
}
body#implant .tb-block {
  display: none;
}
@media screen and (max-width: 820px) {
  body#implant .tb-block {
    display: block;
  }
}
@media screen and (max-width: 576px) {
  body#implant .sp-none {
    display: none;
  }
}
body#implant .sp-block {
  display: none;
}
@media screen and (max-width: 576px) {
  body#implant .sp-block {
    display: block;
  }
}
body#implant .implant__ttl {
  text-align: center;
  opacity: 0;
}
body#implant .implant__ttl__en {
  display: inline-block;
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(2rem, 1.756954612vw, 2.4rem);
  line-height: 1;
  padding: 7px 5px 2px;
  border-radius: 3px;
  margin-bottom: 14px;
}
@media screen and (max-width: 820px) {
  body#implant .implant__ttl__en {
    font-size: clamp(1.6rem, 3.6458333333vw, 3rem);
  }
}
body#implant .implant__ttl__ja {
  font-size: clamp(3.8rem, 3.3674963397vw, 5rem);
  font-weight: 600;
  line-height: 1.3;
}
@media screen and (max-width: 820px) {
  body#implant .implant__ttl__ja {
    font-size: clamp(3.6rem, 6.7708333333vw, 5.8rem);
  }
}
body#implant .implant__ttl__ja .whiteBack {
  display: inline-block;
  margin-bottom: 5px;
  padding: 0 15px;
  border-radius: 5px;
}
@media screen and (max-width: 576px) {
  body#implant .implant__ttl__ja .whiteBack {
    line-height: 1.2;
    padding: 3px 15px 6px;
  }
}
body#implant .implant__title02 {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  font-weight: 600;
  line-height: 1.2;
}
@media screen and (max-width: 820px) {
  body#implant .implant__title02 {
    font-size: clamp(1.8rem, 3.3854166667vw, 3.2rem);
  }
}
body#implant .implant__title02::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #78D0FF;
  margin-right: 8px;
  vertical-align: middle;
}
body#implant .txt {
  font-size: clamp(1.4rem, 1.1764705882vw, 1.6rem);
  line-height: 1.625;
  text-align: center;
}
@media screen and (max-width: 820px) {
  body#implant .txt {
    font-size: clamp(1.6rem, 2.8645833333vw, 2.4rem);
  }
}
body#implant .inblock {
  display: inline-block;
}
body#implant .mv {
  position: relative;
  overflow: visible;
}
body#implant .mv__mask {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 5;
  background-color: #fff;
  pointer-events: none;
}
body#implant .mv__ttl {
  position: absolute;
  width: 96%;
  bottom: -4%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 820px) {
  body#implant .mv__ttl {
    width: 100%;
    top: 64%;
    transform: translate(-50%, -50%);
  }
}
body#implant .anchorLinks {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 13px 1.7907634307%;
  width: min(92%, 1061px);
  margin-inline: auto;
  list-style: none;
  padding-top: clamp(0rem, 6.875vw, 8.8rem);
}
@media screen and (max-width: 820px) {
  body#implant .anchorLinks {
    row-gap: clamp(0.9rem, 2.1951219512vw, 1.6rem);
    width: min(90.243902439%, 600px);
    padding-top: 20px;
  }
}
body#implant .anchorLinks li {
  width: 23.5626767201%;
}
@media screen and (max-width: 820px) {
  body#implant .anchorLinks li {
    width: 48.9189189189%;
  }
}
body#implant .anchorLinks li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  text-decoration: none;
  padding: 1rem clamp(0rem, 3.1707317073vw, 1.7rem) 1rem;
  color: #0C3165;
  background-color: #EFEFEF;
  height: 75px;
  border-radius: 10px;
  transition: color 0.4s ease, background-color 0.4s ease;
}
@media screen and (max-width: 820px) {
  body#implant .anchorLinks li a {
    height: 84px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .anchorLinks li a {
    -moz-column-gap: 4px;
         column-gap: 4px;
    height: 66px;
  }
}
body#implant .anchorLinks li a span {
  width: 18px;
  height: 18px;
  background-color: #0C3165;
  border-radius: 50%;
  transition: 0.3s ease;
  position: relative;
}
body#implant .anchorLinks li a span::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-mask: url(./images/pediatric-orthodontics/arrow-forward-outline.svg) center/contain no-repeat;
          mask: url(./images/pediatric-orthodontics/arrow-forward-outline.svg) center/contain no-repeat;
  width: 9px;
  aspect-ratio: 9/10;
  background-color: #EFEFEF;
  transition: background-color 0.4s ease;
}
@media screen and (max-width: 576px) {
  body#implant .anchorLinks li a span::after {
    width: 10px;
  }
}
body#implant .anchorLinks li a p {
  font-size: clamp(1.2rem, 1.25vw, 1.6rem);
  font-weight: 600;
  line-height: 1.31;
  letter-spacing: 0.14em;
  transition: color 0.4s ease;
}
@media screen and (max-width: 820px) {
  body#implant .anchorLinks li a p {
    font-size: 18px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .anchorLinks li a p {
    font-size: clamp(1.2rem, 3.4146341463vw, 1.6rem);
  }
}
body#implant .anchorLinks li a:hover {
  background-color: #0C3165;
}
body#implant .anchorLinks li a:hover span {
  background-color: #EFEFEF;
}
body#implant .anchorLinks li a:hover span::after {
  background-color: #0C3165;
}
body#implant .anchorLinks li a:hover p {
  color: #EFEFEF;
}
body#implant .banner {
  max-width: 912px;
  width: 88%;
  margin: clamp(5.2rem, 4.39238653vw, 7.8rem) auto clamp(14rem, 13.17715959vw, 22rem);
}
body#implant .banner a {
  transition: 0.3s ease;
}
body#implant .banner a:hover {
  opacity: 0.7;
}
body#implant .banner.__002 {
  margin: 20px auto;
}
@media screen and (max-width: 820px) {
  body#implant .banner.__002 {
    background-color: #fff;
    width: 100%;
    margin: 0;
    padding: 56px 0 68px;
  }
}
body#implant .banner.__002 a {
  display: block;
  width: 88%;
  margin: 0 auto;
}
@media screen and (max-width: 576px) {
  body#implant .banner.__002 a {
    width: 100%;
  }
}
body#implant .worry {
  max-width: 1385px;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .worry {
    width: 100%;
    margin-top: clamp(14rem, 36.4583333333vw, 30rem);
  }
}
body#implant .worry__wrapper {
  background-image: url(./images/implant/02-background-pc.jpg);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  position: relative;
  padding: 60px 0 180px;
}
@media screen and (max-width: 820px) {
  body#implant .worry__wrapper {
    background-image: url(./images/implant/02-background-sp.jpg);
    padding: clamp(14rem, 36.4583333333vw, 28rem) 0 180px;
  }
}
body#implant .worry__ttl {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 820px) {
  body#implant .worry__ttl {
    width: 100%;
  }
}
body#implant .worry__list {
  display: flex;
  justify-content: center;
  -moz-column-gap: clamp(0rem, 3.5294117647vw, 7rem);
       column-gap: clamp(0rem, 3.5294117647vw, 7rem);
  max-width: 1060px;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .worry__list {
    flex-direction: column;
    align-items: center;
    row-gap: clamp(3.8rem, 6.5104166667vw, 6rem);
  }
}
body#implant .worry__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: clamp(1.6rem, 1.4641288433vw, 2rem);
  width: 28%;
}
@media screen and (max-width: 820px) {
  body#implant .worry__item {
    max-width: 640px;
    width: 100%;
  }
}
body#implant .worry__item img {
  width: 100%;
}
body#implant .worry__txt {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 6px;
}
body#implant .worry__txt .whiteBack {
  font-size: clamp(1.6rem, 1.4641288433vw, 2rem);
  line-height: 1.25;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  font-weight: 600;
  border-radius: 3px;
  padding: clamp(0.2rem, 0.439238653vw, 0.6rem) clamp(0.8rem, 0.878477306vw, 1.2rem);
}
@media screen and (max-width: 820px) {
  body#implant .worry__txt .whiteBack {
    font-size: clamp(2rem, 4.4270833333vw, 3.6rem);
  }
}
body#implant .recommend {
  position: relative;
  background-image: url(./images/implant/03-background-pc.jpg);
  background-size: cover;
  background-position: center top;
  padding-top: 46px;
  padding-bottom: clamp(29rem, 24.8901903367vw, 34rem);
  z-index: 1;
}
@media screen and (max-width: 820px) {
  body#implant .recommend {
    background-image: url(./images/implant/03-background-sp.jpg);
    background-size: 100%;
    background-repeat: repeat;
  }
}
@media screen and (max-width: 576px) {
  body#implant .recommend {
    padding-bottom: 240px;
    background-repeat: no-repeat;
  }
}
body#implant .recommend::after {
  content: "";
  background-image: url(./images/implant/04-background-top-pc.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: auto;
  aspect-ratio: 1920/565;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 820px) {
  body#implant .recommend::after {
    background-image: url(./images/implant/04-background-top-sp.jpg);
    aspect-ratio: 820/408;
  }
}
body#implant .recommend__ttl {
  max-width: 720px;
  width: 78%;
  margin: 0 auto 24px;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__ttl {
    margin-bottom: 32px;
    max-width: 768px;
    width: 96%;
    margin-bottom: 33px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .recommend__ttl img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .recommend__sub {
  text-align: center;
  margin-bottom: 45px;
}
body#implant .recommend__sub span {
  font-size: clamp(2rem, 2.3426061493vw, 3.2rem);
}
@media screen and (max-width: 820px) {
  body#implant .recommend__sub span {
    font-size: clamp(2.4rem, 4.9479166667vw, 4.2rem);
  }
}
@media screen and (max-width: 820px) {
  body#implant .recommend__sub span.tb-block {
    display: inline-block;
  }
}
@media screen and (max-width: 820px) {
  body#implant .recommend__txt {
    padding: 0 5%;
    text-align: left;
  }
}
@media screen and (max-width: 576px) {
  body#implant .recommend__txt {
    font-size: 17px;
  }
}
body#implant .recommend__list {
  display: flex;
  flex-wrap: wrap;
  max-width: 946px;
  width: 80%;
  justify-content: center;
  margin: 70px auto 0;
  gap: clamp(1.5rem, 1.3020833333vw, 2.5rem);
}
@media screen and (max-width: 820px) {
  body#implant .recommend__list {
    max-width: 720px;
    width: 92%;
    flex-direction: column;
    gap: clamp(2rem, 3.90625vw, 3rem);
  }
}
body#implant .recommend__item {
  border-radius: 15px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
  width: 48%;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__item {
    width: 100%;
  }
}
body#implant .recommend__item img {
  display: block;
  border-radius: 15px 15px 0 0;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__item img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .recommend__item__txt {
  text-align: center;
  min-height: 112px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 15px 0;
  background-color: #fff;
  border-radius: 0 0 15px 15px;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__item__txt {
    padding: 15px 5%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .recommend__item__txt {
    padding: 15px 10px;
    min-height: initial;
  }
}
body#implant .recommend__item__txt p {
  font-size: clamp(2rem, 1.756954612vw, 2.4rem);
  font-weight: 600;
  line-height: 1.35;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__item__txt p {
    font-size: clamp(2rem, 4.5572916667vw, 8rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .recommend__item__txt p {
    letter-spacing: initial;
  }
}
body#implant .recommend__note {
  display: inline-block;
  font-size: clamp(1rem, 0.878477306vw, 1.2rem);
  color: #9c9c9c;
  letter-spacing: normal;
}
@media screen and (max-width: 820px) {
  body#implant .recommend__note {
    font-size: clamp(1rem, 1.8229166667vw, 1.6rem);
  }
}
body#implant .treatment {
  max-width: 805px;
  width: 86%;
  margin: 0 auto;
  padding-top: clamp(8rem, 6.25vw, 12rem);
}
@media screen and (max-width: 820px) {
  body#implant .treatment {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .treatment {
    padding-top: 20px;
  }
}
body#implant .treatment__ttl {
  width: 98.8%;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__ttl {
    max-width: 768px;
    width: 100%;
    margin-bottom: clamp(3rem, 5.2083333333vw, 4rem);
  }
}
@media screen and (max-width: 820px) {
  body#implant .treatment__ttl img {
    max-width: initial;
    width: 100%;
  }
}
@media screen and (max-width: 820px) {
  body#implant .treatment__txt {
    text-align: left;
    padding: 0 5%;
  }
}
body#implant .treatment__wrapper {
  position: relative;
  margin-top: 86px;
  padding: 68px 40px 56px;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__wrapper {
    margin-top: clamp(9.6rem, 20.8333333333vw, 16rem);
    padding: clamp(10rem, 23.4375vw, 18rem) clamp(1.6rem, 3.90625vw, 3rem) 20px;
    width: 92%;
    margin: clamp(9.6rem, 20.8333333333vw, 16rem) auto 0;
  }
}
@media screen and (max-width: 576px) {
  body#implant .treatment__wrapper {
    width: 100%;
    padding: 100px 32px 20px;
  }
}
body#implant .treatment__wrapper::before {
  content: "";
  background-image: url(./images/implant/04-background-pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  border: solid 1px #FFFF00;
  border-radius: 15px;
  overflow: hidden;
  z-index: -1;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__wrapper::before {
    background-image: url(./images/implant/04-background-sp.jpg);
  }
}
@media screen and (max-width: 576px) {
  body#implant .treatment__wrapper::before {
    width: 92%;
    border: solid 1px #FFFF00;
  }
}
body#implant .treatment__sub {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 76.5%;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__sub {
    width: 100%;
    max-width: 680px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .treatment__sub img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .treatment__textArea {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5px 0;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__textArea {
    flex-direction: column;
  }
}
body#implant .treatment__check {
  width: 49.5%;
  display: flex;
  -moz-column-gap: 8px;
       column-gap: 8px;
  font-size: clamp(1.6rem, 1.4641288433vw, 2rem);
  font-weight: 600;
  padding: 5px 15px;
  border-radius: 5px;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__check {
    width: 100%;
    font-size: clamp(1.8rem, 3.90625vw, 3.4rem);
    row-gap: 5px;
  }
}
body#implant .treatment__img {
  display: flex;
  -moz-column-gap: 10px;
       column-gap: 10px;
  justify-content: space-between;
  margin-top: 25px;
}
@media screen and (max-width: 820px) {
  body#implant .treatment__img {
    overflow: hidden;
    min-width: 500px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 576px) {
  body#implant .treatment__img {
    margin-top: 10px;
  }
}
body#implant .treatment__img img {
  width: 49%;
}
body#implant .contact {
  max-width: 1130px;
  width: 90%;
  margin: 80px auto;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 820px) {
  body#implant .contact {
    width: 100%;
  }
}
body#implant .contact__ttl img {
  display: block;
  width: 53.5%;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .contact__ttl img {
    max-width: 640px;
    width: 92%;
  }
}
body#implant .contact__sub {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: clamp(3.8rem, 3.3674963397vw, 5rem);
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  padding: 0 8px;
  border-radius: 3px;
  z-index: 1;
}
@media screen and (max-width: 820px) {
  body#implant .contact__sub {
    font-size: clamp(3.8rem, 7.03125vw, 6rem);
    top: 4%;
  }
}
body#implant .contact__sub .whiteBack {
  line-height: 1.2;
}
@media screen and (max-width: 576px) {
  body#implant .contact__sub .c-yellow {
    display: inline-block;
    margin-top: 3px;
  }
}
body#implant .contact__wrapper {
  position: relative;
  background-color: #EAFAFE;
  border: solid 2px #00B4FF;
  padding: 45px 15px 40px;
  margin-top: 30px;
}
@media screen and (max-width: 820px) {
  body#implant .contact__wrapper {
    margin-top: clamp(3.2rem, 6.5104166667vw, 5rem);
    border: initial;
    border-top: solid 2px #00B4FF;
    border-bottom: solid 2px #00B4FF;
    padding: clamp(10.2rem, 15.2671755725vw, 12rem) 0 0;
  }
}
body#implant .contact__text {
  display: block;
  width: 43%;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .contact__text {
    width: 68.3%;
  }
}
body#implant .contact__btn {
  display: flex;
  justify-content: space-between;
  width: 66%;
  margin: 30px auto 0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 820px) {
  body#implant .contact__btn {
    flex-direction: column;
    row-gap: 10px;
    width: 89.5%;
    margin-top: clamp(2rem, 3.90625vw, 3rem);
  }
}
body#implant .contact__btn a {
  display: block;
  width: 49%;
  transition: 0.3s ease;
}
@media screen and (max-width: 820px) {
  body#implant .contact__btn a {
    width: 100%;
  }
}
body#implant .contact__btn a:hover {
  opacity: 0.7;
}
body#implant .contact__img {
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 820px) {
  body#implant .contact__img {
    position: relative;
    margin: 0 auto;
    width: 100%;
    max-width: 540px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .contact__img {
    width: 100%;
  }
}
body#implant .contact__img.__01 {
  left: -10px;
}
@media screen and (max-width: 820px) {
  body#implant .contact__img.__01 {
    display: block;
    left: initial;
  }
}
@media screen and (max-width: 820px) {
  body#implant .contact__img.__01 img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .contact__img.__02 {
  right: -40px;
}
@media screen and (max-width: 576px) {
  body#implant .contact.__002 {
    margin-top: 0;
  }
}
body#implant .blue__wrapper {
  position: relative;
  background-image: url(./images/implant/05-background-pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  padding-top: clamp(14rem, 13.17715959vw, 20rem);
  margin-top: clamp(12rem, 12.5vw, 24rem);
}
@media screen and (max-width: 820px) {
  body#implant .blue__wrapper {
    background-image: url(./images/implant/05-background-sp.png);
    background-size: contain;
    background-repeat: repeat-y;
    padding-top: 0;
    margin-top: clamp(14rem, 31.25vw, 26rem);
  }
}
body#implant .blue__wrapper::before {
  background-image: url(./images/implant/05-background-top-sp.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 100%;
  height: auto;
  aspect-ratio: 410/72;
  position: absolute;
  bottom: 100%;
  left: 0;
}
@media screen and (max-width: 820px) {
  body#implant .blue__wrapper::before {
    content: "";
  }
}
body#implant .blue__wrapper::after {
  content: "";
  background-image: url(./images/implant/05-background-btm-pc.png);
  background-size: contain;
  width: 100%;
  height: auto;
  aspect-ratio: 1920/95;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 820px) {
  body#implant .blue__wrapper::after {
    background-image: url(./images/implant/05-background-btm-sp.png);
    background-size: contain;
    aspect-ratio: 410/35;
  }
}
body#implant .about__txt {
  margin: 25px auto 48px;
}
@media screen and (max-width: 820px) {
  body#implant .about__txt {
    margin-top: clamp(1.5rem, 3.2552083333vw, 2.5rem);
    padding: 0 5%;
    text-align: left;
  }
}
body#implant .about__content {
  display: flex;
  align-items: center;
  max-width: 1124px;
  width: 88%;
  background-color: #fff;
  margin: 0 auto;
  padding: 10px 15px;
  border-radius: 10px;
  box-shadow: 0 0 7px rgba(29, 56, 81, 0.2);
  gap: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .about__content {
    width: 97%;
    flex-direction: column;
    align-items: center;
    padding: clamp(3.7rem, 10.243902439vw, 4.2rem) 5%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .about__content {
    padding: 37px clamp(1.5rem, 4.3902439024vw, 3rem);
  }
}
body#implant .about__img {
  flex-shrink: 0;
  width: 48%;
}
@media screen and (max-width: 820px) {
  body#implant .about__img {
    width: 90%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .about__img {
    width: 100%;
  }
}
@media screen and (max-width: 820px) {
  body#implant .about__img img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .about__text {
  width: 46%;
}
@media screen and (max-width: 820px) {
  body#implant .about__text {
    width: 85%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .about__text {
    width: 100%;
  }
}
body#implant .about__sub {
  font-size: clamp(2.2rem, 1.9117647059vw, 2.8rem);
  border-bottom: dotted 3px #0C3165;
  display: inline-block;
  margin-bottom: clamp(1.4rem, 1.317715959vw, 2.1rem);
}
@media screen and (max-width: 820px) {
  body#implant .about__sub {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
    margin-bottom: clamp(2.1rem, 4.6875vw, 3.6rem);
  }
}
body#implant .about__disc {
  text-align: left;
}
body#implant .reason {
  padding-top: 80px;
  padding-bottom: 370px;
}
@media screen and (max-width: 820px) {
  body#implant .reason {
    padding-top: clamp(9rem, 15.625vw, 12rem);
    padding-bottom: clamp(12rem, 20.8333333333vw, 16rem);
  }
}
body#implant .reason .implant__ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
}
body#implant .reason .implant__ttl__ja {
  display: inline-block;
  padding: 0 15px;
  border-radius: 5px;
}
body#implant .reason__txt {
  margin-top: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .reason__txt {
    text-align: left;
    padding: 0 5%;
  }
}
body#implant .reason__content {
  display: flex;
  align-items: flex-start;
  max-width: 1200px;
  width: 90%;
  margin: 180px auto 0;
  -moz-column-gap: 3%;
       column-gap: 3%;
}
@media screen and (max-width: 820px) {
  body#implant .reason__content {
    max-width: 680px;
    flex-direction: column;
    row-gap: 200px;
    margin-top: clamp(14.8rem, 26.0416666667vw, 20rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .reason__content {
    row-gap: 134px;
  }
}
body#implant .reason__item {
  position: relative;
  flex: 1;
  padding: 140px 22px 26px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 0 7px rgba(29, 56, 81, 0.2);
}
@media screen and (max-width: 820px) {
  body#implant .reason__item {
    padding: 190px 5% clamp(2.6rem, 4.4270833333vw, 3.4rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .reason__item {
    padding: 134px 20px clamp(2.6rem, 4.4270833333vw, 3.4rem);
  }
}
body#implant .reason__item:nth-child(odd) {
  margin-top: 56px;
}
@media screen and (max-width: 820px) {
  body#implant .reason__item:nth-child(odd) {
    margin-top: initial;
  }
}
body#implant .reason__img {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 88%;
}
@media screen and (max-width: 820px) {
  body#implant .reason__img {
    max-width: 480px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .reason__img img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .reason__textArea {
  background-color: #fff;
  border-radius: 0 0 10px 10px;
  min-height: 164px;
}
@media screen and (max-width: 820px) {
  body#implant .reason__textArea {
    min-height: initial;
  }
}
body#implant .reason__textArea .txt {
  text-align: left;
}
body#implant .reason__sub {
  text-align: center;
  font-size: clamp(1.8rem, 1.1979166667vw, 2.3rem);
  line-height: 1.2;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 20px;
  padding: 5px 12px;
}
@media screen and (max-width: 820px) {
  body#implant .reason__sub {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .reason__sub {
    font-size: clamp(2rem, 5.3658536585vw, 2.2rem);
  }
}
body#implant .white__wrapper {
  position: relative;
  background-image: url(./images/implant/08-background-pc.png);
  background-size: 100%;
  background-repeat: repeat;
  background-position: top center;
  padding-top: 180px;
}
@media screen and (max-width: 820px) {
  body#implant .white__wrapper {
    background-image: url(./images/implant/08-background-sp.jpg);
    padding-top: 0;
    background-size: contain;
  }
}
@media screen and (max-width: 576px) {
  body#implant .white__wrapper {
    padding-bottom: 0;
  }
}
body#implant .white__wrapper::after {
  content: " ";
  background-image: url(./images/implant/09-background-top-pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 100%;
  height: auto;
  aspect-ratio: 1920/397;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 820px) {
  body#implant .white__wrapper::after {
    aspect-ratio: 1920/398;
  }
}
@media screen and (max-width: 576px) {
  body#implant .white__wrapper::after {
    background-image: url(./images/implant/09-background-top-sp.jpg);
    top: 100%;
    width: 100%;
    aspect-ratio: 410/258;
  }
}
body#implant .difference {
  max-width: 1200px;
  width: 90%;
  margin: -400px auto 0;
  background-color: #fff;
  box-shadow: 0 0 12px rgba(29, 56, 81, 0.13);
  padding: 67px clamp(0rem, 7.3298429319vw, 14rem) 120px;
  border-radius: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .difference {
    margin-top: 0;
    width: 100%;
    box-shadow: none;
    padding: clamp(5rem, 9.1145833333vw, 7rem) 0 0;
  }
}
body#implant .difference__txt {
  margin: 50px auto;
}
@media screen and (max-width: 820px) {
  body#implant .difference__txt {
    text-align: left;
    margin: clamp(2.8rem, 5.2083333333vw, 4rem) auto 48px;
    padding: 0 5%;
  }
}
@media screen and (max-width: 820px) {
  body#implant .difference__img {
    padding: 0 5%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .difference__img {
    padding: 0 3px;
  }
}
body#implant .difference__img picture {
  display: block;
  width: 100%;
}
body#implant .difference__img picture img {
  width: 100%;
}
body#implant .difference__content {
  display: flex;
  -moz-column-gap: clamp(1.5rem, 2.0833333333vw, 4rem);
       column-gap: clamp(1.5rem, 2.0833333333vw, 4rem);
  margin-top: 50px;
}
@media screen and (max-width: 820px) {
  body#implant .difference__content {
    flex-direction: column;
    align-items: center;
    row-gap: 20px;
    max-width: 620px;
    margin: clamp(4.4rem, 7.8125vw, 6rem) auto 0;
    padding: 0 3%;
  }
}
body#implant .difference__content-img {
  flex-shrink: 0;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .difference__content-img img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .difference__sub {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 2.15;
}
@media screen and (max-width: 820px) {
  body#implant .difference__sub {
    font-size: clamp(2.1rem, 4.6875vw, 4rem);
    line-height: 1.85;
  }
}
body#implant .difference__sub .ttl__border {
  border-bottom: solid 2px #0C3165;
  padding-bottom: 3px;
}
body#implant .difference__textArea .txt {
  margin-top: 20px;
  text-align: left;
}
body#implant .feature {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  background-color: #fff;
  box-shadow: 0 0 12px rgba(29, 56, 81, 0.13);
  padding: 67px clamp(1.5rem, 3.7696335079vw, 7.2rem) 60px;
  border-radius: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .feature {
    background-color: initial;
    box-shadow: none;
    width: 96%;
    padding: 40px 15px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .feature {
    width: 100%;
    padding: 40px 0;
  }
}
body#implant .feature__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: clamp(4rem, 4.39238653vw, 6rem);
  margin-top: 70px;
}
@media screen and (max-width: 576px) {
  body#implant .feature__list {
    flex-direction: column;
    row-gap: 55px;
    margin: 40px auto 0;
    width: 80%;
  }
}
body#implant .feature__item {
  width: 28%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 820px) {
  body#implant .feature__item {
    width: 48%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .feature__item {
    width: 100%;
    justify-content: flex-start;
  }
}
body#implant .feature__item .txt {
  text-align: left;
}
@media screen and (max-width: 820px) {
  body#implant .feature__img {
    width: 68%;
  }
}
body#implant .feature__sub {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.2;
  border-radius: 5px;
  min-height: 70px;
  display: flex;
  align-items: center;
  margin: 12px auto 16px;
}
@media screen and (max-width: 820px) {
  body#implant .feature__sub {
    font-size: clamp(2.2rem, 4.1666666667vw, 3.6rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .feature__sub {
    min-height: initial;
  }
}
body#implant .ball__wrapper {
  position: relative;
  background-image: url(./images/implant/09-background-pc.jpg);
  background-size: 100%;
  background-repeat: repeat;
  background-position: top center;
  padding: 120px 0;
  margin-top: 20.6770833333%;
}
@media screen and (max-width: 820px) {
  body#implant .ball__wrapper {
    margin-top: 20.7291666667%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .ball__wrapper {
    background-image: none;
    margin-top: 62.9268292683%;
    padding-top: 100px;
  }
}
body#implant .dentist {
  max-width: 1145px;
  width: 92%;
  margin: 0 auto;
}
@media screen and (max-width: 576px) {
  body#implant .dentist {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist .implant__ttl__ja {
    font-size: clamp(3.3rem, 8.2926829268vw, 3.4rem);
  }
}
body#implant .dentist__txt {
  margin-top: 32px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__txt {
    padding: 0 4%;
    text-align: left;
  }
}
body#implant .dentist__content {
  display: flex;
  -moz-column-gap: clamp(1rem, 2.6041666667vw, 5rem);
       column-gap: clamp(1rem, 2.6041666667vw, 5rem);
  justify-content: space-between;
  margin-top: 32px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__content {
    flex-direction: column;
    align-items: center;
    row-gap: 15px;
  }
}
body#implant .dentist__content.top {
  width: 93.5%;
  margin: 0 auto;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__content.top {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist__content.top {
    padding: 0 4%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist__content.bottom {
    padding: 0 2%;
    margin-top: 80px;
  }
}
body#implant .dentist__img {
  flex-shrink: 0;
  width: 40%;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__img {
    width: 60%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist__img {
    width: 75%;
    margin-top: 15px;
  }
}
body#implant .dentist__textArea {
  padding-top: 64px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__textArea {
    padding-top: 0;
    margin-top: 25px;
  }
}
body#implant .dentist__textArea .navyBack {
  display: inline-block;
  border-radius: 3px;
  padding: 0 10px;
}
body#implant .dentist__textArea .nameArea-ja {
  font-size: clamp(2.6rem, 1.6666666667vw, 3.2rem);
  font-weight: 600;
  display: inline-block;
  margin-right: 15px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__textArea .nameArea-ja {
    font-size: clamp(3.2rem, 6.7708333333vw, 5.8rem);
  }
}
body#implant .dentist__textArea .nameArea-en {
  display: inline-block;
  font-family: "Josefin Sans", sans-serif;
}
body#implant .dentist__textArea .txt {
  text-align: left;
}
body#implant .dentist__sub {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.625;
  margin: 10px 0 20px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist__sub {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
    margin: 20px 0 40px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist__sub {
    letter-spacing: initial;
    margin: 20px 0 30px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .dentist__sub .blue-border {
    border-bottom: solid 2px #00ACF5;
  }
}
body#implant .dentist .block {
  background-color: #F6F6F6;
  border-radius: 8px;
  width: 48.4%;
  padding: 30px 24px;
}
@media screen and (max-width: 820px) {
  body#implant .dentist .block {
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .dentist .block {
    padding: 30px 18px;
  }
}
body#implant .dentist .block .implant__title02 {
  margin-bottom: 20px;
}
body#implant .dentist .block dl div {
  display: flex;
  margin-bottom: 5px;
}
body#implant .dentist .block dl div > * {
  line-height: 1.4;
}
body#implant .dentist .block dl div dt {
  min-width: 80px;
  flex-shrink: 0;
}
@media screen and (max-width: 820px) {
  body#implant .dentist .block dl div dt {
    width: 25%;
    min-width: initial;
  }
}
body#implant .dentist .block .list {
  list-style: disc;
  padding-left: 21px;
}
body#implant .movie {
  padding-top: clamp(10rem, 8.78477306vw, 12rem);
}
@media screen and (max-width: 820px) {
  body#implant .movie {
    padding-top: clamp(6.4rem, 13.0208333333vw, 10rem);
  }
}
body#implant .movie__content {
  max-width: 820px;
  width: 80%;
  margin: 56px auto 0;
}
@media screen and (max-width: 820px) {
  body#implant .movie__content {
    margin-top: clamp(4.4rem, 7.2916666667vw, 5.6rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .movie__content {
    width: 93%;
  }
}
body#implant .movie__content iframe {
  width: 100%;
  aspect-ratio: 560/315;
}
body#implant .cost {
  max-width: 988px;
  width: 88%;
  margin: 0 auto;
  padding-top: 100px;
}
@media screen and (max-width: 576px) {
  body#implant .cost {
    width: 92%;
  }
}
body#implant .cost__list {
  display: flex;
  flex-direction: column;
  row-gap: clamp(4.8rem, 4.2459736457vw, 5.8rem);
  margin-top: 30px;
  margin-bottom: 38px;
}
@media screen and (max-width: 820px) {
  body#implant .cost__list {
    row-gap: clamp(5.4rem, 9.1145833333vw, 7rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .cost__list {
    margin-top: 68px;
  }
}
body#implant .cost__sub {
  font-size: clamp(2.4rem, 1.4583333333vw, 2.8rem);
  margin-bottom: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .cost__sub {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
  }
}
body#implant .cost__content {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: clamp(1.2rem, 1.25vw, 2.4rem);
       column-gap: clamp(1.2rem, 1.25vw, 2.4rem);
}
@media screen and (max-width: 820px) {
  body#implant .cost__content {
    flex-direction: column;
    row-gap: 15px;
  }
}
body#implant .cost__img {
  flex-shrink: 0;
  width: 34%;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .cost__img {
    width: 100%;
  }
}
body#implant .cost__img picture {
  width: 100%;
}
body#implant .cost__img picture img {
  width: 100%;
  max-width: initial;
}
body#implant .cost__table {
  width: 62.3%;
  border: solid 1px #00B4FF;
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .cost__table {
    width: 100%;
  }
}
body#implant .cost__row {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 820px) {
  body#implant .cost__row {
    flex-direction: column;
  }
}
body#implant .cost__row:not(:first-child) {
  border-top: solid 1px #00B4FF;
}
body#implant .cost__row__tt {
  background-color: #ECFBFF;
  width: 36%;
  padding: 27px 15px 27px 25px;
}
@media screen and (max-width: 820px) {
  body#implant .cost__row__tt {
    width: 100%;
    text-align: center;
    padding: 10px 15px;
  }
}
body#implant .cost__row__td {
  padding-left: clamp(2rem, 2.635431918vw, 3.6rem);
}
@media screen and (max-width: 820px) {
  body#implant .cost__row__td {
    width: 100%;
    padding: 20px 15px;
  }
}
body#implant .cost__note {
  background-color: #F4F4F4;
  padding: 20px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .cost__note {
    flex-direction: column;
    row-gap: 20px;
    margin-bottom: clamp(2.4rem, 5.2083333333vw, 4rem);
  }
}
body#implant .cost__note__img {
  width: 28.8%;
  flex-shrink: 0;
}
@media screen and (max-width: 820px) {
  body#implant .cost__note__img {
    width: 100%;
  }
}
@media screen and (max-width: 820px) {
  body#implant .cost__note__img img {
    max-width: initial;
    width: 100%;
  }
}
body#implant .cost__textArea h3 {
  font-size: clamp(1.7rem, 1.4641288433vw, 2rem);
  margin-bottom: 12px;
}
@media screen and (max-width: 820px) {
  body#implant .cost__textArea h3 {
    font-size: clamp(2rem, 4.4270833333vw, 3.6rem);
  }
}
body#implant .cost__txt {
  text-align: left;
  font-size: clamp(1.3rem, 1.0248901903vw, 1.4rem);
  line-height: 1.85;
}
@media screen and (max-width: 820px) {
  body#implant .cost__txt {
    font-size: clamp(1.4rem, 3.125vw, 2rem);
  }
}
body#implant .cost__add p {
  font-size: clamp(1.3rem, 1.0248901903vw, 1.4rem);
}
@media screen and (max-width: 820px) {
  body#implant .cost__add p {
    font-size: clamp(1.4rem, 2.6041666667vw, 2rem);
  }
}
body#implant .cost .payment {
  width: 100%;
  padding: 53px clamp(3.2rem, 3.125vw, 6rem);
  border-radius: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment {
    padding: 30px clamp(1.3rem, 3.2552083333vw, 2.5rem) clamp(1.2rem, 3.125vw, 2.4rem);
  }
}
body#implant .cost .payment__ttl {
  font-size: clamp(2.8rem, 1.875vw, 3.6rem);
  margin-bottom: 25px;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__ttl {
    display: inline-block;
    text-align: center;
    border-bottom: solid 2px #1B3F71;
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
  }
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__txt {
    font-size: clamp(1.5rem, 2.8645833333vw, 2.2rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .cost .payment__txt {
    letter-spacing: initial;
    text-align: left;
  }
}
body#implant .cost .payment__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 20px;
  margin-top: 30px;
}
@media screen and (max-width: 576px) {
  body#implant .cost .payment__content {
    row-gap: 10px;
  }
}
body#implant .cost .payment__content > * {
  border-radius: 10px;
  padding: 30px clamp(1rem, 1.25vw, 2.4rem);
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__content > * {
    padding: 25px 20px;
  }
}
body#implant .cost .payment__block {
  width: 49%;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__block {
    width: 100%;
  }
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__block.credit img {
    width: 80%;
  }
}
body#implant .cost .payment__kind {
  font-size: clamp(1.5rem, 1.2445095168vw, 1.7rem);
  margin-bottom: 10px;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__kind {
    font-size: clamp(1.5rem, 3.125vw, 2.8rem);
    margin-bottom: 15px;
  }
}
body#implant .cost .payment__textArea {
  width: 100%;
}
body#implant .cost .payment__textArea__ttl {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  color: #00ACF5;
  border-bottom: solid 2px #00ACF5;
  display: inline-block;
  margin-bottom: 12px;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__textArea__ttl {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
    border: none;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__textArea__ttl.tb-none {
    display: none;
  }
}
body#implant .cost .payment__textArea__ttl.tb-block {
  display: none !important;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__textArea__ttl.tb-block {
    display: block !important;
  }
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__textArea__ttl.tb-none {
    display: none;
  }
}
body#implant .cost .payment__textArea__ttl .blue-border {
  border-bottom: solid 2px #00ACF5;
}
@media screen and (max-width: 820px) {
  body#implant .cost .payment__textArea .txt {
    text-align: left;
    font-size: clamp(1.5rem, 2.8645833333vw, 2.2rem);
  }
}
body#implant .bone {
  position: relative;
  background-image: url(./images/implant/11-background-pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(14rem, 14.5833333333vw, 28rem) 0;
  text-align: center;
}
@media screen and (max-width: 820px) {
  body#implant .bone {
    background-image: none;
    background-color: #E8FCFF;
  }
}
@media screen and (max-width: 576px) {
  body#implant .bone {
    padding: 80px 0;
  }
}
body#implant .bone::before, body#implant .bone::after {
  content: "";
  background-size: contain;
  position: absolute;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1924/80;
}
@media screen and (max-width: 820px) {
  body#implant .bone::before, body#implant .bone::after {
    background-size: cover;
    aspect-ratio: 1924/110;
  }
}
@media screen and (max-width: 576px) {
  body#implant .bone::before, body#implant .bone::after {
    aspect-ratio: 820/168;
  }
}
body#implant .bone::before {
  background-image: url(./images/implant/11-background-top-pc.png);
  top: -1%;
}
@media screen and (max-width: 820px) {
  body#implant .bone::before {
    top: 0;
  }
}
@media screen and (max-width: 576px) {
  body#implant .bone::before {
    background-image: url(./images/implant/11-background-top-sp.jpg);
  }
}
body#implant .bone::after {
  background-image: url(./images/implant/11-background-btm-pc.png);
  bottom: -1%;
}
@media screen and (max-width: 820px) {
  body#implant .bone::after {
    bottom: 0;
  }
}
@media screen and (max-width: 576px) {
  body#implant .bone::after {
    background-image: url(./images/implant/11-background-under-sp.jpg);
  }
}
body#implant .bone__title__under {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 5px;
  margin: 26px auto 30px;
}
body#implant .bone__title__under .whiteBack {
  display: inline-block;
  font-size: clamp(2.6rem, 1.7708333333vw, 3.4rem);
  font-weight: 600;
  padding: 0 15px;
  border-radius: 5px;
}
@media screen and (max-width: 820px) {
  body#implant .bone__title__under .whiteBack {
    font-size: clamp(2.2rem, 4.6875vw, 4rem);
  }
}
@media screen and (max-width: 820px) {
  body#implant .bone__txt {
    padding: 0 4%;
    text-align: left;
  }
}
body#implant .bone .wrapper {
  max-width: 990px;
  width: 88%;
  display: flex;
  flex-direction: column;
  row-gap: clamp(5.2rem, 4.0625vw, 7.8rem);
  margin: 70px auto 0;
  padding: 60px 3.5%;
  background-color: #fff;
  border-radius: 10px;
}
@media screen and (max-width: 820px) {
  body#implant .bone .wrapper {
    row-gap: clamp(7rem, 16.9270833333vw, 13rem);
    padding: clamp(3rem, 5.859375vw, 4.5rem) 4%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .bone .wrapper {
    width: 93%;
  }
}
body#implant .bone .wrapper .block {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(1rem, 2.0833333333vw, 4rem);
       column-gap: clamp(1rem, 2.0833333333vw, 4rem);
  row-gap: clamp(5.2rem, 4.0625vw, 7.8rem);
  position: relative;
}
@media screen and (max-width: 820px) {
  body#implant .bone .wrapper .block {
    flex-direction: column;
    row-gap: 20px;
  }
}
body#implant .bone .wrapper .block::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #DBDBDB;
  top: 118%;
  transform: translateY(50%);
  left: 0;
}
@media screen and (max-width: 820px) {
  body#implant .bone .wrapper .block::after {
    top: 108%;
  }
}
body#implant .bone .wrapper .block:last-child::after {
  display: none;
}
body#implant .bone__img {
  width: 33%;
  flex-shrink: 0;
}
@media screen and (max-width: 820px) {
  body#implant .bone__img {
    width: 100%;
  }
}
body#implant .bone__textArea {
  text-align: left;
}
body#implant .bone__textArea .price {
  display: inline-block;
}
@media screen and (max-width: 820px) {
  body#implant .bone__textArea .price {
    background-color: #ECFBFF;
    font-size: clamp(1.7rem, 3.2552083333vw, 3rem);
    padding: 5px 10px;
  }
}
body#implant .bone__textArea .txt {
  text-align: left;
  margin-top: 16px;
}
body#implant .bone-ttl {
  color: #00B4FF;
  display: inline-block;
  margin-right: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .bone-ttl {
    font-size: clamp(2.4rem, 4.9479166667vw, 4rem);
    display: block;
    margin-bottom: 10px;
  }
}
body#implant .bone-ttl::before {
  color: #00B4FF;
}
body#implant .flow {
  padding-top: 60px;
}
body#implant .flow__list {
  max-width: 1024px;
  width: 90%;
  margin: 80px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 54px;
}
@media screen and (max-width: 820px) {
  body#implant .flow__list {
    width: 96%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .flow__list {
    width: 82%;
    justify-content: center;
    row-gap: 30px;
    margin-top: 60px;
  }
}
body#implant .flow__item {
  width: 29%;
  text-align: center;
}
@media screen and (max-width: 820px) {
  body#implant .flow__item {
    width: 47%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .flow__item {
    width: 100%;
  }
}
body#implant .flow__ttl {
  display: inline-block;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 70px;
  margin: 20px auto;
}
@media screen and (max-width: 576px) {
  body#implant .flow__ttl {
    min-height: initial;
  }
}
body#implant .flow__ttl .navyBack {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.2;
  padding: 6px 10px;
  border-radius: 5px;
}
@media screen and (max-width: 820px) {
  body#implant .flow__ttl .navyBack {
    font-size: clamp(2.2rem, 3.6458333333vw, 3.2rem);
  }
}
body#implant .flow__txt {
  text-align: left;
}
@media screen and (max-width: 576px) {
  body#implant .flow-arrow {
    display: block;
    transform: rotate(90deg);
  }
}
body#implant .flow .sp-only {
  display: none;
}
body#implant .faq {
  position: relative;
  padding: clamp(14rem, 10.4166666667vw, 20rem) 0 clamp(20rem, 13.5416666667vw, 26rem);
  margin-top: clamp(14rem, 10.4166666667vw, 20rem);
  overflow-anchor: none;
}
@media screen and (max-width: 820px) {
  body#implant .faq {
    margin-top: clamp(7rem, 16.9270833333vw, 13rem);
    padding-top: clamp(7rem, 16.9270833333vw, 13rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq {
    padding-top: clamp(9rem, 26.8292682927vw, 11rem);
    padding-bottom: 140px;
  }
}
body#implant .faq::after {
  content: "";
  background-image: url(./images/implant/13-bottom-pc.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 100%;
  height: auto;
  aspect-ratio: 1920/163;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 820px) {
  body#implant .faq::after {
    aspect-ratio: 1920/164;
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq::after {
    background-image: url(./images/implant/13-bottom-sp.png);
    aspect-ratio: 820/210;
  }
}
body#implant .faq__circle {
  background-color: rgba(223, 250, 255, 0.6);
  border: solid 3px #C7F0F8;
  width: 96vw;
  min-width: 1200px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 820px) {
  body#implant .faq__circle {
    width: 280vw;
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq__circle {
    width: 380vw;
  }
}
body#implant .faq__circle::before, body#implant .faq__circle::after {
  content: "";
  background-color: rgba(223, 250, 255, 0.6);
  border: solid 3px #C7F0F8;
  border-radius: 50%;
  position: absolute;
  top: 0;
  width: 100%;
  min-width: 1200px;
  height: auto;
  aspect-ratio: 1/1;
  z-index: -1;
}
@media screen and (max-width: 820px) {
  body#implant .faq__circle::before, body#implant .faq__circle::after {
    display: none;
  }
}
body#implant .faq__circle::before {
  left: -25%;
  transform: translateX(-50%);
}
body#implant .faq__circle::after {
  right: -25%;
  transform: translateX(50%);
}
@media screen and (max-width: 576px) {
  body#implant .faq .implant__ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq .implant__ttl__ja {
    background-color: #fff;
    display: inline-block;
    padding: 0 6px;
    border-radius: 5px;
  }
}
body#implant .faq__list {
  max-width: 1120px;
  width: 90%;
  margin: 54px auto 0;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
}
body#implant .faq__item {
  background-color: #fff;
  width: 100%;
  border-radius: 10px;
}
body#implant .faq__question {
  position: relative;
  display: flex;
  align-items: flex-start;
  cursor: pointer;
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  font-weight: 600;
  line-height: 1.2;
  padding: 36px 60px 30px 40px;
}
@media screen and (max-width: 820px) {
  body#implant .faq__question {
    font-size: clamp(2rem, 3.6458333333vw, 3rem);
    padding: 36px 60px 30px 25px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq__question {
    padding: 30px 50px 30px 15px;
  }
}
body#implant .faq__question .faq__q {
  display: inline-block;
  font-size: 14px;
  line-height: 2;
  width: 30px;
  margin-right: 20px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  text-align: center;
  vertical-align: text-bottom;
  flex-shrink: 0;
}
@media screen and (max-width: 820px) {
  body#implant .faq__question .faq__q {
    font-size: clamp(1.3rem, 2.0833333333vw, 1.6rem);
    width: clamp(2.8rem, 4.1666666667vw, 3.2rem);
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq__question .faq__q {
    margin-right: 8px;
    width: 28px;
    height: 28px;
  }
}
body#implant .faq__arrow {
  position: absolute;
  top: 50%;
  right: 36px;
  transform: translateY(-50%);
  line-height: 1;
  transition: transform 0.4s ease;
}
@media screen and (max-width: 576px) {
  body#implant .faq__arrow {
    right: 15px;
  }
}
body#implant .faq__arrow img {
  vertical-align: middle;
}
body#implant .faq__question.open .faq__arrow {
  transform: rotate(180deg);
}
body#implant .faq__answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
body#implant .faq__answer-inner {
  display: flex;
  align-items: flex-start;
  padding: 0 93px 36px;
}
@media screen and (max-width: 820px) {
  body#implant .faq__answer-inner {
    padding: 0 93px 30px 76px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .faq__answer-inner {
    padding: 0 25px 30px 15px;
    font-size: 16px;
  }
}
body#implant .faq__a {
  display: none;
  border: solid 1px #0C3165;
  border-radius: 50%;
  width: 28px;
  aspect-ratio: 1/1;
  text-align: center;
}
@media screen and (max-width: 576px) {
  body#implant .faq__a {
    display: inline-block;
    flex-shrink: 0;
    margin-right: 8px;
    width: 28px;
    height: 28px;
  }
}
body#implant .clinic {
  background-color: #fff;
  padding-top: 80px;
}
@media screen and (max-width: 576px) {
  body#implant .clinic {
    padding-top: 0;
  }
}
body#implant .clinic .implant__ttl {
  margin-bottom: 63px;
}
@media screen and (max-width: 576px) {
  body#implant .clinic .implant__ttl {
    opacity: 0;
    visibility: hidden;
    height: 0;
    margin-bottom: 0;
  }
}
body#implant .clinic__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 5.4%;
       column-gap: 5.4%;
  max-width: 1154px;
  width: 90%;
  margin: 0 auto 120px;
}
@media screen and (max-width: 576px) {
  body#implant .clinic__content {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .clinic__content.__bottom {
    margin-bottom: 80px;
  }
}
body#implant .clinic__textArea, body#implant .clinic__map {
  width: 47.3%;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__textArea, body#implant .clinic__map {
    width: 100%;
  }
}
body#implant .clinic__map {
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__sub {
    text-align: center;
  }
}
@media screen and (max-width: 820px) {
  body#implant .clinic__sub__logo {
    max-width: initial;
    width: clamp(29.3rem, 57.2916666667vw, 44rem);
  }
}
body#implant .clinic__textArea address {
  font-style: initial;
  font-size: clamp(1.6rem, 1.1458333333vw, 2.2rem);
  font-weight: 700;
  line-height: 1.2;
  margin: 16px 0 20px;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__textArea address {
    font-size: clamp(1.6rem, 2.8645833333vw, 2.2rem);
    margin: 27px 0 20px;
  }
}
@media screen and (max-width: 820px) {
  body#implant .clinic__calender {
    max-width: initial;
    width: 100%;
  }
}
body#implant .clinic__map {
  aspect-ratio: 8/5;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__map {
    margin-top: 30px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .clinic__map {
    aspect-ratio: 378/278;
  }
}
body#implant .clinic__map iframe {
  width: 100%;
  height: 100%;
}
body#implant .clinic__img {
  width: 100%;
  margin: 36px auto 40px;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__img {
    margin: 10px auto 20px;
  }
}
body#implant .clinic__btn {
  width: 65%;
  min-width: 600px;
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__btn {
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: initial;
    row-gap: 10px;
  }
}
body#implant .clinic__btn__inner {
  transition: 0.3s ease;
}
@media screen and (max-width: 820px) {
  body#implant .clinic__btn__inner {
    width: 48%;
  }
}
@media screen and (max-width: 576px) {
  body#implant .clinic__btn__inner {
    width: 100%;
  }
}
body#implant .clinic__btn__inner:hover {
  opacity: 0.7;
}
body#implant .po-footer {
  max-width: 1154px;
  width: 90%;
  margin: 0 auto;
  padding: 0;
  border-top: solid 1px #0C3165;
  padding: 20px 0 80px;
}
@media screen and (max-width: 820px) {
  body#implant .po-footer {
    padding-bottom: 220px;
  }
}
@media screen and (max-width: 576px) {
  body#implant .po-footer {
    padding-bottom: 100px;
  }
}
body#implant .po-footer__text {
  font-size: clamp(1.2rem, 1.0248901903vw, 1.4rem);
  line-height: 1.65;
  font-weight: 600;
}
@media screen and (max-width: 820px) {
  body#implant .po-footer__text {
    font-size: clamp(1.2rem, 2.6041666667vw, 2rem);
    text-align: center;
  }
}
@media screen and (max-width: 576px) {
  body#implant .po-footer__text {
    letter-spacing: initial;
  }
}
body#implant .po-footer__text .en {
  font-family: "Josefin Sans", sans-serif;
}/*# sourceMappingURL=implant.css.map */