@charset "UTF-8";
/*
 * firsttime.css
 * Last modify 2026/09/19 17:22
 */
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDMincho:wght@400;700&family=BIZ+UDPMincho:wght@400;700&family=Cardo:wght@400;700&family=Zen+Kaku+Gothic+Antique&display=swap"); /* ==========================================================
!import
========================================================== */
/* ==========================================================
!mediaQuery
デザインベースは376px、1440px
========================================================== */
/* -----------------------------------------------------
Base Style
----------------------------------------------------- */
/* !main
---------------------------------------------------------- */
html.webp #main {
  background-image: url("../img/service/whitening/bg_main01.webp");
}
@media screen and (max-width: 880px) {
  html.webp #main {
    background-image: url("../img/service/whitening/bg_main01_sp.webp");
  }
}

html.no-webp #main {
  background-image: url("../img/service/whitening/bg_main01.jpg");
}
@media screen and (max-width: 880px) {
  html.no-webp #main {
    background-image: url("../img/service/whitening/bg_main01_sp.jpg");
  }
}

/* !content
---------------------------------------------------------- */
@media screen and (min-width: 881px) {
  #content {
    width: 80.62vw;
  }
}
@media screen and (min-width: 1281px) {
  #content {
    width: 1032px;
  }
}
@media screen and (min-width: 1441px) {
  #content {
    width: 71.16vw;
  }
}
#content h1.h1_basic01 {
  margin-bottom: 4.25vw;
}
@media screen and (min-width: 881px) {
  #content h1.h1_basic01 {
    margin-bottom: 6.25vw;
  }
}
@media screen and (min-width: 1281px) {
  #content h1.h1_basic01 {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 1441px) {
  #content h1.h1_basic01 {
    margin-bottom: 5.55vw;
  }
}
#content .firstAction01,
#content .firstAction02 {
  position: relative;
  opacity: 0;
  top: 50px;
}
#content .firstAction01 {
  text-align: center;
  -webkit-animation: show01 0.5s ease 0s forwards;
  animation: show01 0.5s ease 0s forwards;
}
#content .firstAction02 {
  -webkit-animation: show01 0.5s ease 0.3s forwards;
  animation: show01 0.5s ease 0.3s forwards;
}
#content .secBox01 {
  border: 1px solid #DAD4A4;
}
@media screen and (max-width: 880px) {
  #content .secBox01 {
    padding: 7.71vw;
  }
}
@media screen and (min-width: 881px) {
  #content .secBox01 {
    width: 64.06vw;
    padding: 3.9vw 4.6vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .secBox01 {
    width: 820px;
    padding: 50px 59px;
  }
}
@media screen and (min-width: 1441px) {
  #content .secBox01 {
    width: 56.94vw;
    padding: 3.47vw 4.09vw;
  }
}
@media screen and (min-width: 881px) {
  #content .secBox {
    display: flex;
    gap: 3.75vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .secBox {
    gap: 48px;
  }
}
@media screen and (min-width: 1441px) {
  #content .secBox {
    gap: 3.4vw;
  }
}
@media screen and (min-width: 881px) {
  #content .secBox .txtWrap {
    width: 38.43vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .secBox .txtWrap {
    width: 492px;
  }
}
@media screen and (min-width: 1441px) {
  #content .secBox .txtWrap {
    width: 34.16vw;
  }
}
@media screen and (max-width: 880px) {
  #content .secBox .txtWrap .img01 {
    display: block;
    margin-bottom: 6.38vw;
    border: 1px solid #DAD4A4;
  }
  #content .secBox .txtWrap .img01 img {
    width: 100%;
  }
}
@media screen and (min-width: 881px) {
  #content .secBox .imgWrap {
    width: 38.43vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .secBox .imgWrap {
    width: 492px;
  }
}
@media screen and (min-width: 1441px) {
  #content .secBox .imgWrap {
    width: 34.16vw;
  }
}
#content .secBox .imgWrap img {
  display: block;
  width: 100%;
  border: 1px solid #DAD4A4;
}
@media screen and (min-width: 881px) {
  #content .secBox .imgWrap img {
    margin-top: 0.78vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .secBox .imgWrap img {
    margin-top: 10px;
  }
}
@media screen and (min-width: 1441px) {
  #content .secBox .imgWrap img {
    margin-top: 0.69vw;
  }
}
#content .secBox .imgWrap .img01:first-child img {
  margin-top: 0;
}
@media screen and (max-width: 880px) {
  #content .txtWrap h2 {
    margin-bottom: 6.38vw;
    font-size: 5.31vw;
  }
}
@media screen and (min-width: 881px) {
  #content .txtWrap h2 {
    margin-bottom: 2.5vw;
    font-size: 2.18vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .txtWrap h2 {
    margin-bottom: 32px;
    font-size: 28px;
  }
}
@media screen and (min-width: 1441px) {
  #content .txtWrap h2 {
    margin-bottom: 2.22vw;
    font-size: 1.94vw;
  }
}
#content .txtWrap h2 strong {
  display: inline-block;
  color: #00B3CD;
  font-weight: normal;
}
@media screen and (max-width: 880px) {
  #content .txtWrap h2 strong {
    margin-top: 3.06vw;
    font-size: 4.25vw;
  }
}
@media screen and (min-width: 881px) {
  #content .txtWrap h2 strong {
    margin-top: 0.78vw;
    font-size: 1.87vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .txtWrap h2 strong {
    margin-top: 10px;
    font-size: 24px;
  }
}
@media screen and (min-width: 1441px) {
  #content .txtWrap h2 strong {
    margin-top: 0.69vw;
    font-size: 1.66vw;
  }
}
#content .txtWrap p,
#content .txtWrap ul {
  margin-top: 1em;
}
#content .txtWrap p:nth-of-type(1),
#content .txtWrap li:first-child {
  margin-top: 0;
}
#content .ccopy {
  text-align: center;
}
@media screen and (max-width: 880px) {
  #content .ccopy {
    margin-bottom: 10.63vw;
    font-size: 5.31vw;
  }
}
@media screen and (min-width: 881px) {
  #content .ccopy {
    margin-bottom: 7.81vw;
    font-size: 1.87vw;
  }
}
@media screen and (min-width: 1281px) {
  #content .ccopy {
    margin-bottom: 100px;
    font-size: 24px;
  }
}
@media screen and (min-width: 1441px) {
  #content .ccopy {
    margin-bottom: 6.94vw;
    font-size: 1.66vw;
  }
}
#content p,
#content .commentList > li,
#content .checkList > li,
#content .pointList > li,
#content td {
  font-size: 4.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 881px) {
  #content p,
#content .commentList > li,
#content .checkList > li,
#content .pointList > li,
#content td {
    font-size: 1.4vw;
  }
}
@media screen and (min-width: 1281px) {
  #content p,
#content .commentList > li,
#content .checkList > li,
#content .pointList > li,
#content td {
    font-size: 18px;
  }
}
@media screen and (min-width: 1441px) {
  #content p,
#content .commentList > li,
#content .checkList > li,
#content .pointList > li,
#content td {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 880px) {
  #content #white_essence,
#content #oral_spa_cleaning {
    margin-top: 21.27vw;
  }
}
@media screen and (min-width: 881px) {
  #content #white_essence,
#content #oral_spa_cleaning {
    margin-top: 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #content #white_essence,
#content #oral_spa_cleaning {
    margin-top: 100px;
  }
}
@media screen and (min-width: 1441px) {
  #content #white_essence,
#content #oral_spa_cleaning {
    margin-top: 6.94vw;
  }
}

/* !msg
---------------------------------------------------------- */
#msg ul {
  margin-top: 0 !important;
  margin-bottom: 1em;
}

/* !value
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #value {
    margin-top: 21.27vw;
  }
  #value p {
    letter-spacing: 1px;
  }
}
@media screen and (min-width: 881px) {
  #value {
    margin: 4.68vw auto 0;
  }
}
@media screen and (min-width: 1281px) {
  #value {
    margin: 60px auto 0;
  }
}
@media screen and (min-width: 1441px) {
  #value {
    margin: 4.16vw auto 0;
  }
}
#value h2 {
  text-align: center;
}
@media screen and (max-width: 880px) {
  #value h2 {
    margin-bottom: 1em;
    font-size: 5.31vw;
  }
}
@media screen and (min-width: 881px) {
  #value h2 {
    font-size: 2.18vw;
    margin-bottom: 2.5vw;
  }
}
@media screen and (min-width: 1281px) {
  #value h2 {
    font-size: 28px;
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 1441px) {
  #value h2 {
    font-size: 1.94vw;
    margin-bottom: 2.22vw;
  }
}
#value p {
  margin-top: 1em;
  text-align: center;
}
#value ul {
  margin: 1em auto 0;
}
@media screen and (min-width: 881px) {
  #value ul {
    width: 37.5vw;
  }
}
@media screen and (min-width: 1281px) {
  #value ul {
    width: 480px;
  }
}
@media screen and (min-width: 1441px) {
  #value ul {
    width: 33.33vw;
  }
}

/* !whitening_examples
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #whitening_examples {
    margin: 15.95vw -3.72vw 21.27vw;
  }
  #whitening_examples .examplesDetail {
    width: 76.59vw;
    margin: 7.81vw auto 7.81vw;
  }
}
@media screen and (min-width: 881px) {
  #whitening_examples {
    width: 64.06vw;
    margin: 7.81vw auto 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #whitening_examples {
    width: 820px;
    margin: 100px auto 100px;
  }
}
@media screen and (min-width: 1441px) {
  #whitening_examples {
    width: 56.94vw;
    margin: 6.94vw auto 6.94vw;
  }
}
#whitening_examples td span {
  position: relative;
  display: inline-block;
  width: 4.5em;
  margin-right: 1em;
  color: #BFB87D;
}
#whitening_examples td span::after {
  position: absolute;
  display: inline;
  content: "：";
  right: 0;
}

/* !we
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #we {
    margin-bottom: 21.27vw;
  }
}
@media screen and (min-width: 881px) {
  #we {
    margin-bottom: 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #we {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 1441px) {
  #we {
    margin-bottom: 6.94vw;
  }
}

/* !flow
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #flow {
    margin-bottom: 21.27vw;
  }
}
@media screen and (min-width: 881px) {
  #flow {
    margin-bottom: 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #flow {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 1441px) {
  #flow {
    margin-bottom: 6.94vw;
  }
}
@media screen and (max-width: 880px) {
  #flow .numTxt.txt2 {
    margin-bottom: 8.43vw;
    padding-left: 13.09vw;
    line-height: 1.5;
  }
  #flow .numTxt.txt2::before {
    position: absolute;
    display: block;
    top: -5.57vw;
    left: 0;
  }
}
@media screen and (min-width: 881px) {
  #flow .numTxt {
    text-align: center;
  }
}
@media screen and (max-width: 880px) {
  #flow .flow01,
#flow .flow02 {
    font-size: 1em;
    margin-bottom: 10.63vw;
  }
}
@media screen and (min-width: 881px) {
  #flow .flow01,
#flow .flow02 {
    margin-bottom: 5.46vw;
  }
}
@media screen and (min-width: 1281px) {
  #flow .flow01,
#flow .flow02 {
    margin-bottom: 70px;
  }
}
@media screen and (min-width: 1441px) {
  #flow .flow01,
#flow .flow02 {
    margin-bottom: 4.86vw;
  }
}
@media screen and (min-width: 881px) {
  #flow .flow01,
#flow .flow03 {
    text-align: center;
  }
}
#flow .flow01 ul,
#flow .flow03 ul {
  margin: 1em 0;
}
#flow .boxArea {
  margin: 1em 0;
}
@media screen and (min-width: 881px) {
  #flow .boxArea {
    padding: 3.12vw;
    border: 1px solid #DAD4A4;
  }
  #flow .boxArea .pointList {
    margin-top: 0;
  }
}
@media screen and (min-width: 1281px) {
  #flow .boxArea {
    padding: 40px;
  }
}
@media screen and (min-width: 1441px) {
  #flow .boxArea {
    padding: 2.77vw;
  }
}
@media screen and (min-width: 881px) {
  #flow .flow02 .imgWrap {
    width: 30vw;
  }
}
@media screen and (min-width: 1281px) {
  #flow .flow02 .imgWrap {
    width: 384px;
  }
}
@media screen and (min-width: 1441px) {
  #flow .flow02 .imgWrap {
    width: 26.66vw;
  }
}
@media screen and (min-width: 881px) {
  #flow .flow02 .txtWrap {
    width: 46.87vw;
  }
}
@media screen and (min-width: 1281px) {
  #flow .flow02 .txtWrap {
    width: 600px;
  }
}
@media screen and (min-width: 1441px) {
  #flow .flow02 .txtWrap {
    width: 41.66vw;
  }
}

/* !types
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #types {
    margin-bottom: 21.27vw;
  }
}
@media screen and (min-width: 881px) {
  #types {
    margin-bottom: 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #types {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 1441px) {
  #types {
    margin-bottom: 6.94vw;
  }
}
@media screen and (max-width: 880px) {
  #types .secBox01 {
    margin-top: 2.65vw;
  }
}
@media screen and (min-width: 881px) {
  #types .secBox01 {
    margin: 0.78vw auto 0;
    padding: 3.12vw;
  }
}
@media screen and (min-width: 1281px) {
  #types .secBox01 {
    margin: 10px auto 0;
    padding: 40px;
  }
}
@media screen and (min-width: 1441px) {
  #types .secBox01 {
    margin: 0.69vw auto 0;
    padding: 2.77vw;
  }
}
@media screen and (max-width: 880px) {
  #types .secBox01 .secBox .imgWrap {
    margin: 5.31vw 0;
  }
}
@media screen and (min-width: 881px) {
  #types .secBox01 .secBox {
    align-items: center;
    margin-bottom: 1.56vw;
  }
}
@media screen and (min-width: 1281px) {
  #types .secBox01 .secBox {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1441px) {
  #types .secBox01 .secBox {
    margin-bottom: 1.38vw;
  }
}
#types .secBox01 h3 {
  color: #00B3CD;
  background: url("../common/img/ico_point02.svg") no-repeat left top;
}
@media screen and (max-width: 880px) {
  #types .secBox01 h3 {
    min-height: 6.91vw;
    margin-bottom: 3.19vw;
    padding-left: 9.57vw;
    background-size: 6.38vw 6.91vw;
    font-size: 5.31vw;
    line-height: 1.4;
  }
}
@media screen and (min-width: 881px) {
  #types .secBox01 h3 {
    min-height: 2.34vw;
    margin-bottom: 1.56vw;
    padding-left: 3.43vw;
    background-size: 2.18vw 2.34vw;
    font-size: 2.18vw;
  }
}
@media screen and (min-width: 1281px) {
  #types .secBox01 h3 {
    min-height: 30px;
    margin-bottom: 20px;
    padding-left: 44px;
    background-size: 28px 30px;
    font-size: 28px;
  }
}
@media screen and (min-width: 1441px) {
  #types .secBox01 h3 {
    min-height: 2.08vw;
    margin-bottom: 1.38vw;
    padding-left: 3.05vw;
    background-size: 1.94vw 2.08vw;
    font-size: 1.94vw;
  }
}
@media screen and (max-width: 880px) {
  #types .secBox01 h3 + p {
    font-size: 3.72vw;
  }
}
@media screen and (min-width: 881px) {
  #types .secBox01 h3 + p {
    font-size: 1.25vw;
  }
}
@media screen and (min-width: 1281px) {
  #types .secBox01 h3 + p {
    font-size: 16px;
  }
}
@media screen and (min-width: 1441px) {
  #types .secBox01 h3 + p {
    font-size: 1.11vw;
  }
}
@media screen and (min-width: 881px) {
  #types .secBox01 p.mb40 {
    margin-bottom: 3.12vw;
  }
}
@media screen and (min-width: 1281px) {
  #types .secBox01 p.mb40 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1441px) {
  #types .secBox01 p.mb40 {
    margin-bottom: 2.77vw;
  }
}

/* !faq
---------------------------------------------------------- */
@media screen and (max-width: 880px) {
  #faq {
    margin-bottom: 21.27vw;
  }
}
@media screen and (min-width: 881px) {
  #faq {
    width: 64.06vw;
    margin: 0 auto 7.81vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq {
    width: 820px;
    margin: 0 auto 100px;
  }
}
@media screen and (min-width: 1441px) {
  #faq {
    width: 56.94vw;
    margin: 0 auto 6.94vw;
  }
}
#faq dl {
  position: relative;
  border-bottom: 2px dotted #BFB87D;
}
@media screen and (max-width: 880px) {
  #faq dl {
    margin-bottom: 7.97vw;
  }
}
@media screen and (min-width: 881px) {
  #faq dl {
    margin-bottom: 3.12vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq dl {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1441px) {
  #faq dl {
    margin-bottom: 2.77vw;
  }
}
#faq dl dt,
#faq dl dd {
  position: relative;
}
@media screen and (max-width: 880px) {
  #faq dl dt,
#faq dl dd {
    padding-left: 13.82vw;
    line-height: 1.4;
  }
}
@media screen and (min-width: 881px) {
  #faq dl dt,
#faq dl dd {
    padding-left: 4.29vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq dl dt,
#faq dl dd {
    padding-left: 55px;
  }
}
@media screen and (min-width: 1441px) {
  #faq dl dt,
#faq dl dd {
    padding-left: 3.81vw;
  }
}
#faq dl dt::before,
#faq dl dd::before {
  position: absolute;
  display: inline-block;
  left: 0;
  font-family: "Cardo", sans-serif;
}
@media screen and (max-width: 880px) {
  #faq dl dt::before,
#faq dl dd::before {
    top: -0.2em;
    font-size: 11.7vw;
  }
}
@media screen and (min-width: 881px) {
  #faq dl dt::before,
#faq dl dd::before {
    font-size: 3.12vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq dl dt::before,
#faq dl dd::before {
    font-size: 40px;
  }
}
@media screen and (min-width: 1441px) {
  #faq dl dt::before,
#faq dl dd::before {
    font-size: 2.77vw;
  }
}
#faq dl dt {
  color: #BFB87D;
}
@media screen and (max-width: 880px) {
  #faq dl dt {
    min-height: 11.7vw;
    margin-bottom: 5.31vw;
    font-size: 5.31vw;
  }
}
@media screen and (min-width: 881px) {
  #faq dl dt {
    min-height: 3.12vw;
    margin-bottom: 1.64vw;
    font-size: 1.87vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq dl dt {
    min-height: 40px;
    margin-bottom: 21px;
    font-size: 24px;
  }
}
@media screen and (min-width: 1441px) {
  #faq dl dt {
    min-height: 2.77vw;
    margin-bottom: 1.45vw;
    font-size: 1.66vw;
  }
}
#faq dl dt::before {
  content: "Q";
}
@media screen and (max-width: 880px) {
  #faq dl dd {
    margin-bottom: 7.97vw;
    font-size: 4.25vw;
  }
}
@media screen and (min-width: 881px) {
  #faq dl dd {
    margin-bottom: 3.12vw;
    font-size: 1.4vw;
  }
}
@media screen and (min-width: 1281px) {
  #faq dl dd {
    margin-bottom: 40px;
    font-size: 18px;
  }
}
@media screen and (min-width: 1441px) {
  #faq dl dd {
    margin-bottom: 2.77vw;
    font-size: 1.25vw;
  }
}
#faq dl dd::before {
  content: "A";
  color: #00B3CD;
}

/* !message
---------------------------------------------------------- */
#message {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (max-width: 880px) {
  #message {
    overflow: hidden;
    height: 129.25vw;
    margin: 0 -3.72vw;
  }
  #message::before {
    position: absolute;
    display: block;
    content: "";
    width: 129.25vw;
    height: 129.25vw;
    border: 1px solid #BFB87D;
    border-radius: 50%;
  }
  #message .wrap {
    width: 92.55vw;
  }
}
@media screen and (min-width: 881px) {
  #message {
    margin: 5.15vw auto 0;
    width: 54.68vw;
    height: 54.68vw;
    border: 1px solid #BFB87D;
    border-radius: 50%;
  }
}
@media screen and (min-width: 1281px) {
  #message {
    margin: 66px auto 0;
    width: 700px;
    height: 700px;
  }
}
@media screen and (min-width: 1441px) {
  #message {
    margin: 4.58vw auto 0;
    width: 48.61vw;
    height: 48.61vw;
  }
}
#message h2 {
  color: #00B3CD;
}
@media screen and (max-width: 880px) {
  #message h2 {
    margin-bottom: 10.63vw;
    font-size: 6.91vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 881px) {
  #message h2 {
    margin-bottom: 3.12vw;
    font-size: 2.5vw;
  }
}
@media screen and (min-width: 1281px) {
  #message h2 {
    margin-bottom: 40px;
    font-size: 32px;
  }
}
@media screen and (min-width: 1441px) {
  #message h2 {
    margin-bottom: 2.77vw;
    font-size: 2.22vw;
  }
}
/*# sourceMappingURL=service_whitening.css.map */