@charset "UTF-8";
/* ==========================================
　　診療案内（treatment）共通スタイル
   ======================================= */
.c-ttl-area {
  position: relative;
  min-height: 132rem;
  margin-bottom: 10rem;
  padding: 40rem 5rem 22rem;
  background-color: #FFFBF9;
}
@media (min-width: 768px) {
  .c-ttl-area {
    padding: 40rem var(--padding-container) 22rem;
  }
}
.c-ttl-area::before, .c-ttl-area::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 22rem;
  background: repeating-linear-gradient(-55deg, var(--color, transparent) 0, var(--color, transparent) 3rem, transparent 3rem, transparent 8rem);
  content: "";
}
.c-ttl-area::before {
  top: 0;
}
.c-ttl-area::after {
  bottom: 0;
}
.c-ttl-area__inner {
  display: grid;
  grid-template-columns: 68rem 1fr;
  align-items: center;
  height: 100%;
}
@media (min-width: 768px) {
  .c-ttl-area__inner {
    max-width: min(109.1666666667vw, 1048px);
    margin-inline: auto;
  }
}
.c-ttl-area__ttl {
  margin-left: -0.15em;
}
.c-ttl-area__desc {
  margin-top: 0.2em;
}
.c-ttl-area__image {
  width: 100%;
  margin: 0 auto;
}
.c-ttl-area__image.caries {
  max-width: 41rem;
}
.c-ttl-area__image.perio {
  max-width: 55rem;
}
.c-ttl-area__image.pediatric_correction {
  max-width: 64rem;
}
.c-ttl-area__image.pediatric_dentistry {
  max-width: 59rem;
}
.c-ttl-area__image.orthodontic_dentistry {
  max-width: 62rem;
}
.c-ttl-area__image.preventive {
  max-width: 57rem;
}
.c-ttl-area__image.implant {
  max-width: 42rem;
}
.c-ttl-area__image.teeth-whitening-treatment {
  max-width: 41rem;
}
.c-ttl-area__image.whitening {
  max-width: 45rem;
}
.c-ttl-area.index {
  min-height: 132rem;
  padding: 10rem 15rem;
  background-color: var(--color-bg-light-green);
}
@media (min-width: 768px) {
  .c-ttl-area.index {
    padding: min(2.0833333333vw, 20px) var(--padding-container) min(1.5625vw, 15px);
  }
}
.c-ttl-area.index .c-ttl-area__inner {
  display: block;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .c-ttl-area.index .c-ttl-area__inner {
    max-width: min(106.6666666667vw, 1024px);
  }
}
.c-ttl-area.index .c-ttl-area__ttl {
  font-weight: 700;
  font-size: 26rem;
  line-height: 1.12;
}
.c-ttl-area.index .c-ttl-area__ttl ._en {
  display: block;
  color: var(--color-red-ligher);
  font-weight: 400;
  font-size: 30rem;
  line-height: 1.4;
  font-family: "Sorts Mill Goudy", serif;
  text-transform: uppercase;
}
.c-ttl-area.index .c-ttl-area__desc {
  margin-top: 0.5em;
  font-size: 14rem;
  line-height: 1.2;
}

.c-section + .c-section {
  margin-top: 80rem;
}
.c-section > .heading2:first-child {
  margin-top: 0;
}

.c-movie-box iframe {
  aspect-ratio: 16/9;
  width: 100%;
  max-width: 100%;
}
@media (min-width: 768px) {
  .c-movie-box iframe {
    max-width: 700rem;
    margin: 0 auto;
  }
}

.c-recommendation-box {
  padding: 20rem 10rem 20rem 15rem;
  background-color: #EDF7EB;
}
@media (min-width: 768px) {
  .c-recommendation-box {
    padding: 20rem 15rem;
  }
}
@media (min-width: 768px) {
  .c-recommendation-box ul {
    display: flex;
    flex-wrap: wrap;
  }
}
@media (min-width: 768px) {
  .c-recommendation-box ul li {
    width: 50%;
  }
}

/* ==========================================
   診療案内（treatment）ページ別スタイル
   ======================================= */
/*---index.html---*/
.treatment-box .treatment-img {
  width: 40.7124681934vw;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .treatment-box .treatment-img {
    width: 15.625%;
  }
}
.treatment-box .flex-1 {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
.treatment-box .flex-1 .u-text-right {
  margin-bottom: 15rem;
}

/*---caries.html---*/
.caries-list .caries-box {
  display: flex;
  align-items: self-start;
}
.caries-list .caries-box .no {
  width: 35rem;
  margin-right: 10rem;
  padding: 0 10rem;
  border-radius: 40rem;
  background-color: #FF9B8B;
  color: #FFF;
  font-family: goudy-old-style, serif;
  text-transform: uppercase;
}

.cost {
  padding: 10rem;
  background-color: #FDD300;
  text-align: center;
}

/*---perio.html---*/
.perio-ttl {
  color: #EE7C6A;
}

.perio-img {
  width: 58.524173028vw;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .perio-img {
    width: auto;
  }
}

@media (min-width: 768px) {
  .perio-txt {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .perio-box {
    margin: 0 32rem;
  }
  .perio-box .flex {
    justify-content: space-between;
  }
}
.perio-box .perio-photo {
  flex: 0 0 calc((100% - 80px) / 2);
}

/*---pediatric_correction.html---*/
.smile-box {
  display: flex;
  position: relative;
  flex-flow: column;
  align-items: center;
  margin-top: 17.8117048346vw;
  padding: 29.0076335878vw 2.5445292621vw 5.0890585242vw;
}
@media (min-width: 768px) {
  .smile-box {
    margin-top: 20rem;
    padding: 20rem;
  }
}
.smile-box .total {
  padding: 0 20rem;
  border-radius: 30rem;
  background: #EE7C6A;
  color: #fff;
  font-weight: bold;
  font-size: 22rem;
}
.smile-box .ttl {
  font-weight: bold;
  font-size: 28rem;
}
.smile-box .img {
  max-width: 700rem;
  margin: 0 auto;
}
.smile-box .illust01 {
  position: absolute;
  top: -8.6513994911vw;
  left: -6.106870229vw;
  width: 29.5165394402vw;
}
@media (min-width: 768px) {
  .smile-box .illust01 {
    top: 18rem;
    left: 10rem;
    width: 116rem;
  }
}
.smile-box .illust02 {
  position: absolute;
  top: -5.8524173028vw;
  right: -6.106870229vw;
  width: 31.2977099237vw;
}
@media (min-width: 768px) {
  .smile-box .illust02 {
    top: 18rem;
    right: 10rem;
    width: 123rem;
  }
}

.anxiety-list ul {
  justify-content: space-between;
}
@media (min-width: 768px) {
  .anxiety-list ul li {
    width: 45%;
  }
}

.feature-list {
  flex-wrap: wrap;
  justify-content: space-between;
}
.feature-list .flex-1 {
  flex: 0 0 calc((100% - 38px) / 2);
}

.point-num {
  position: relative;
  padding-left: 2em;
}
.point-num::before {
  position: absolute;
  top: 50%;
  left: 2rem;
  width: 18rem;
  height: 45rem;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3csvg%20width='18'%20height='45'%20viewBox='0%200%2018%2045'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_478_4457)'%3e%3cpath%20d='M14.5403%2044.2072C14.5222%2044.5293%2014.2433%2044.7929%2013.9209%2044.7929H4.07923C3.75643%2044.7929%203.47788%2044.5293%203.45983%2044.2072L3.11155%2038.0324C3.09315%2037.7104%203.34268%2037.4467%203.66511%2037.4467H14.3347C14.6574%2037.4467%2014.9066%2037.7104%2014.8886%2038.0324L14.5403%2044.2072Z'%20fill='white'/%3e%3cpath%20d='M13.9208%2045H4.07911C3.64766%2045%203.27708%2044.6496%203.25302%2044.2189L2.90509%2038.0441C2.89306%2037.8307%202.96597%2037.6293%203.11038%2037.4765C3.25443%2037.3236%203.45193%2037.2397%203.66536%2037.2397H14.3349C14.5487%2037.2397%2014.7458%2037.3236%2014.8902%2037.4765C15.0343%2037.629%2015.1075%2037.8307%2015.0952%2038.0441L14.7476%2044.2189C14.7235%2044.6493%2014.3526%2045%2013.9215%2045H13.9208ZM3.665%2037.6534C3.56661%2037.6534%203.47635%2037.6916%203.41087%2037.7606C3.34575%2037.8297%203.31248%2037.922%203.31814%2038.0204L3.66606%2044.1955C3.67774%2044.4072%203.86746%2044.5859%204.07911%2044.5859H13.9211C14.1328%2044.5859%2014.3218%2044.4072%2014.3342%2044.1955L14.6821%2038.0204C14.6878%2037.9224%2014.6549%2037.8297%2014.5894%2037.7606C14.5239%2037.6916%2014.4336%2037.6534%2014.3349%2037.6534H3.665Z'%20fill='%23BBC1C4'/%3e%3cpath%20d='M13.4959%2043.7935C13.3815%2043.7935%2013.2888%2043.7008%2013.2888%2043.5865V38.3237C13.2888%2038.2091%2013.3815%2038.1167%2013.4959%2038.1167C13.6102%2038.1167%2013.7029%2038.2091%2013.7029%2038.3237V43.5865C13.7029%2043.7008%2013.6102%2043.7935%2013.4959%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M11.7414%2043.7935C11.6274%2043.7935%2011.5347%2043.7008%2011.5347%2043.5865V38.3237C11.5347%2038.2091%2011.6274%2038.1167%2011.7414%2038.1167C11.8553%2038.1167%2011.9484%2038.2091%2011.9484%2038.3237V43.5865C11.9484%2043.7008%2011.856%2043.7935%2011.7414%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M9.98684%2043.7935C9.87252%2043.7935%209.77979%2043.7008%209.77979%2043.5865V38.3237C9.77979%2038.2091%209.87252%2038.1167%209.98684%2038.1167C10.1012%2038.1167%2010.1939%2038.2091%2010.1939%2038.3237V43.5865C10.1939%2043.7008%2010.1012%2043.7935%209.98684%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M8.23185%2043.7935C8.11788%2043.7935%208.02515%2043.7008%208.02515%2043.5865V38.3237C8.02515%2038.2091%208.11788%2038.1167%208.23185%2038.1167C8.34582%2038.1167%208.4389%2038.2091%208.4389%2038.3237V43.5865C8.4389%2043.7008%208.34652%2043.7935%208.23185%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M6.47781%2043.7935C6.36313%2043.7935%206.27075%2043.7008%206.27075%2043.5865V38.3237C6.27075%2038.2091%206.36313%2038.1167%206.47781%2038.1167C6.59248%2038.1167%206.68486%2038.2091%206.68486%2038.3237V43.5865C6.68486%2043.7008%206.59213%2043.7935%206.47781%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M4.72341%2043.7935C4.60909%2043.7935%204.51636%2043.7008%204.51636%2043.5865V38.3237C4.51636%2038.2091%204.60909%2038.1167%204.72341%2038.1167C4.83774%2038.1167%204.93047%2038.2091%204.93047%2038.3237V43.5865C4.93047%2043.7008%204.83809%2043.7935%204.72341%2043.7935Z'%20fill='%23D3DADD'/%3e%3cpath%20d='M15.5918%2037.2156C15.5706%2037.5373%2015.2892%2037.801%2014.9664%2037.801H3.03256C2.70977%2037.801%202.42839%2037.5373%202.4075%2037.2156L0.000707122%200.585376C-0.0198214%200.263313%200.226521%200%200.549315%200H17.45C17.7728%200%2018.0195%200.263313%2017.9982%200.585376L15.5918%2037.2156Z'%20fill='%23E1EADF'/%3e%3cpath%20d='M15.8639%2015.9595C15.8639%2019.7502%2012.7907%2022.8229%208.9996%2022.8229C5.20854%2022.8229%202.13599%2019.7499%202.13599%2015.9595C2.13599%2012.169%205.20925%209.09598%208.9996%209.09598C12.79%209.09598%2015.8639%2012.1687%2015.8639%2015.9595Z'%20fill='%239EC993'/%3e%3cpath%20d='M0.200722%203.74973H17.799L17.9282%201.78409H0.0715332L0.200722%203.74973Z'%20fill='%23FDFEFF'/%3e%3cpath%20d='M15.7435%2035.0323L15.8727%2033.0663H2.12671L2.2559%2035.0323H15.7435Z'%20fill='%23FDFEFF'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_478_4457'%3e%3crect%20width='18'%20height='45'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") no-repeat center center/contain;
  content: attr(data-num);
  color: var(--color-white);
  font-weight: 700;
  font-size: 13rem;
  line-height: 2.5;
  text-align: center;
}

@media (min-width: 768px) {
  .paper-img {
    max-width: 750rem;
    margin: 0 auto;
  }
}

.orthodontics-list {
  gap: 75rem;
}
@media (min-width: 768px) {
  .orthodontics-list {
    gap: 38rem;
  }
}
.orthodontics-list .orthodontics-box {
  position: relative;
  background-color: #FFFBF9;
}
.orthodontics-list .orthodontics-box .illust01 {
  position: absolute;
  top: -5.8524173028vw;
  left: 0;
  width: 16.2849872774vw;
}
@media (min-width: 768px) {
  .orthodontics-list .orthodontics-box .illust01 {
    top: 7rem;
    left: 14rem;
    width: 64rem;
  }
}
.orthodontics-list .orthodontics-box .illust02 {
  position: absolute;
  top: -6.8702290076vw;
  right: 0;
  width: 15.2671755725vw;
}
@media (min-width: 768px) {
  .orthodontics-list .orthodontics-box .illust02 {
    top: 7rem;
    right: 20rem;
    width: 60rem;
  }
}
.orthodontics-list .orthodontics-box .illust03 {
  position: absolute;
  top: -6.3613231552vw;
  left: 0;
  width: 13.9949109415vw;
}
@media (min-width: 768px) {
  .orthodontics-list .orthodontics-box .illust03 {
    top: -25rem;
    left: 25rem;
    width: 55rem;
  }
}
.orthodontics-list .orthodontics-box .illust04 {
  position: absolute;
  top: -6.106870229vw;
  right: 0;
  width: 15.0127226463vw;
}
@media (min-width: 768px) {
  .orthodontics-list .orthodontics-box .illust04 {
    top: -5rem;
    right: 20rem;
    width: 59rem;
  }
}

.disc-list.pink li::before {
  background-color: #EE7C6A;
}
.disc-list li br {
  display: none;
}
@media (min-width: 768px) {
  .disc-list li br {
    display: block;
  }
}

/*---pediatric_dentistry.html---*/
@media (min-width: 768px) {
  .dentition-img {
    max-width: 700rem;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  .floor-img {
    max-width: 750rem;
    margin: 0 auto;
  }
}

.space {
  letter-spacing: -0.01em;
}

/*---orthodontic_dentistry.html---*/
@media (min-width: 768px) {
  .mouthpiece-features-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.mouthpiece-features-list__item {
  flex: 0 0 calc((100% - 38px) / 3);
  margin-bottom: 40rem;
}
.mouthpiece-features-list__item .ttl {
  margin-bottom: 10rem;
  color: #EE7C6A;
  font-size: 16rem;
  text-align: center;
}
.mouthpiece-features-list__item .txt {
  margin-top: 15rem;
  text-align: center;
}

@media (min-width: 768px) {
  .before-after {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 32rem;
  }
}
.before-after__item {
  flex: 0 0 calc((100% - 80px) / 2);
}
.before-after__item .txt {
  margin-top: 15rem;
  text-align: center;
}
.before-after__item + .before-after__item {
  margin-top: 20rem;
}
@media (min-width: 768px) {
  .before-after__item + .before-after__item {
    margin-top: 0;
  }
}
.before-after__item02 {
  flex: 0 0 calc((100% - 38px) / 3);
}
.before-after__item02 .txt {
  margin-top: 15rem;
  text-align: center;
}
.before-after__item02 + .before-after__item02 {
  margin-top: 20rem;
}
@media (min-width: 768px) {
  .before-after__item02 + .before-after__item02 {
    margin-top: 0;
  }
}

/*---implant.html---*/
.implant-box {
  padding: 20rem 13rem;
}

.comparison-box {
  padding: 20rem 10rem;
}
@media (min-width: 768px) {
  .comparison-box {
    padding: 20rem;
  }
}
.comparison-box.bg-pink {
  background-color: #FFFBF9;
}
.comparison-box .img img {
  max-height: 113rem;
  margin: 0 auto;
}

.comparison-arrow img {
  max-width: 30rem;
  margin: 0 auto;
}

/*---teeth-whitening-treatment.html---*/
.pink-box {
  flex-wrap: wrap;
}
.pink-box .block {
  flex: 0 0 calc((100% - 38px) / 2);
}
.pink-box .block.u-bg-light-pink {
  background-color: #FFFBF9;
}

.artificial-box .image {
  width: 40%;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .artificial-box .image {
    width: 9.9609%;
  }
}

/*---whitening.html---*/
.whitening-box {
  display: flex;
  flex-flow: column;
  align-items: center;
  padding: 20rem 20rem 20rem 13rem;
  gap: 20rem;
}
@media (min-width: 768px) {
  .whitening-box {
    flex-flow: row;
    justify-content: space-between;
    max-width: 654rem;
    margin: 0 auto;
  }
}
.whitening-box .flex-1 {
  width: 100%;
}
@media (min-width: 768px) {
  .whitening-box .flex-1 {
    width: 37.2%;
  }
}
@media (min-width: 768px) {
  .whitening-box .arrow {
    width: 4.8%;
    transform: rotate(-90deg);
  }
}
.whitening-box .box {
  width: 100%;
  background-color: #26B8B5;
}
@media (min-width: 768px) {
  .whitening-box .box {
    width: 48.5%;
  }
}
.whitening-box .box a {
  display: block;
  padding: 5rem 10rem;
  color: #FFF;
  text-align: center;
  text-decoration: none;
}

@media (min-width: 768px) {
  .clinic-whitening-img {
    max-width: 580rem;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  .home-whitening-img {
    max-width: 480rem;
    margin: 0 auto;
  }
}

.bottom-box {
  padding: 25rem 0;
}