@charset "utf-8";
html, body, div, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, tt, var,
b, u, i, center, sup,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
  font-weight: normal;
	font-size: 100%;
	vertical-align: middle;
}

a, span{
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
  font-weight: normal;
	font-size: 100%;
}

article, aside, details, figcaption, figure, main,
footer, header, hgroup, menu, nav, section { display: block;}

blockquote, q { quotes: none;}

blockquote:before, blockquote:after,
q:before, q:after { content: ''; content: none;}
input, textarea{ margin: 0; padding: 0;}

ol, ul{ list-style:none;}
table{ border-collapse: collapse; border-spacing:0;}
caption, th{ text-align: left;}
a:focus { outline:none;}
.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}

.clearfix { min-height: 1px;}
* html .clearfix { height: 1px; /*¥*//*/ height: auto; overflow: hidden; /**/}

.both{ clear:both;}
img { vertical-align:bottom;}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/*----------------------------------------------------------------------------------------------
	base
----------------------------------------------------------------------------------------------*/
html {
  overflow-y: scroll;
  font-size:62.5%;
  padding:0;
  margin:0;
  width:100%;
  height:100%;
  -webkit-text-size-adjust: none;
}
body {
  font-family: Roboto, "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  width:100%;
  overflow-x:hidden;/* はみ出し対策 */
  line-height:1.6;
  color:#333;
  text-align: center;
  background: #e3f3ef;
}
.sp {
 display: none;
}
@media screen and (max-width: 767px) {
 body {
  font-size: 15px;
 }
 .sp {
  display: block;
 }
 .pc {
  display: none;
 }
}
a {
  -webkit-transition: .4s;
  transition: .4s;
}
a:link, a:visited {
  color: #333;
  text-decoration: none;
}
a:hover {
}
img {
  max-width: 100%;
  height: auto;
}
a.hover img {
  -webkit-transition: .4s;
  transition: .4s;
}
a.hover:hover img {
  opacity: 0.7;
}
/*----------------------------------------------------------------------------------------------
	common
----------------------------------------------------------------------------------------------*/
#wrap {
 max-width: 750px;
 margin: 0 auto;
 background: #fff;
}
.l-mv {
 position: relative;
}
.mv_btn {
 position: absolute;
 width: 86.666%;
 left: 6.667%;
 bottom: 2%;
}
/* section01 セルフホワイトニングとは */
.l-sec01 {
 padding: 30px 0 0;
 background: url(../../img/whitening/bg_dot01.jpg);
 background-repeat: no-repeat;
 background-position: center top 10%;
 background-size: 100%;
}
.l-inner {
 padding: 0 6.667%;
}
.p-sec-ttl01 {
 margin-bottom: 30px;
}
.p-lead01 {
 text-align: justify;
}
p + .p-lead01 {
 margin-top: 1em;
}
.sec01_img01 {
 margin-top: 2em;
}
.youtube_video {
 position: relative;
 padding-bottom: 56.25%;
 height: 0;
 overflow: hidden;
 max-width: 100%;
 border-radius: 20px;
 margin-top: 20px;
}
@media screen and (max-width: 767px) {
 .youtube_video {
  padding-bottom: 126%;
  border-radius: 10px;
 }
}
.youtube_video iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
.notes {
  font-size: 0.8em;
  text-align: justify;
}
/* sec02  歯科ホワイトニングとの違い*/
.l-sec02 {
 padding: 30px 0;
 background: url(../../img/whitening/bg_dot02.jpg);
 background-repeat: no-repeat;
 background-position: center top 70%;
 background-size: 100%;
}
.p-lead01 {
 margin-top: 1em;
}
p + .sec02_img01 {
 margin-top: 30px;
}
.sec02_ttl02 {
 font-size: 120%;
 font-weight: bold;
 margin-top: 20px;
}
.sec02_img02 {
 margin-top: 30px;
}

/* sec03  歯科ホワイトニングとの違い*/
.l-sec03 {
 padding: 30px 0;
 background: url(../../img/whitening/bg_green_pattern.jpg);
 background-repeat: repeat;
}
.sec03_img01 {
 border-radius: 20px;
 overflow: hidden;
}
.sec03_photos {
 display: flex;
 gap: 20px;
 margin-top: 20px;
 flex-wrap: wrap;
}
.sec03_photo {
 overflow: hidden;
 border-radius: 20px;
 width: calc(50% - 10px);
}
.p-sec03_01 {
  position: relative;
}
.caption_wh {
  position: absolute;
  bottom: 5px;
  right: 5px;
  font-size: 10px;
  color: rgb(33, 33, 33);
}
@media screen and (max-width: 767px) {
 .sec03_img01 {
  border-radius: 10px;
  overflow: hidden;
 }
 .sec03_photos {
  display: flex;
  gap: 10px;
  margin-top: 10px;
  flex-wrap: wrap;
 }
 .sec03_photo {
  overflow: hidden;
  border-radius: 10px;
  width: calc(50% - 5px);
 }
}
/* sec04  セルフホワイトニングの特徴*/
.l-sec04 {
 padding: 30px 0;
 background: url(../../img/whitening/bg_dot03.jpg);
 background-repeat: no-repeat;
 background-position: center top 70%;
 background-size: 100%;
}
.sec04_ttl02 {
 margin-top: 30px;
}
@media screen and (max-width: 767px) {
 .sec04_ttl02 img {
  height: 34vw;
  width: auto;
 }
}

/* sec05  歯科ホワイトニングとの違い*/
.sec05 {
 margin-top: 30px;
}
/* sec06  セルフホワイトニング施術の流れ*/
.l-sec06 {
 padding: 30px 0;
}
.sec06_title02 {
 margin-top: 30px;
}
.sec06_02 {
 margin-top: 30px;
}
@media screen and (max-width: 767px) {
 .l-sec06 .p-sec-ttl01 img {
  height: 30vw;
  width: auto;
 }
}
/* sec07  よくある質問*/
.l-sec07 {
 padding: 30px 0;
 background: url(../../img/whitening/bg_yellow_pattern.jpg);
 background-repeat: repeat;
}
.qa_set {
 margin-top: 30px;
}
.q_ttl {
 position: relative;
 padding: 8px 20px 8px 10%;
 background: #f29c9f;
 color: #fff;
 font-size: 120%;
 font-weight: bold;
 text-align: justify;
 line-height: 1.4;
 border-radius: 10px 10px 0 0;
}
.q_ttl::before {
 content: "";
 display: block;
 position: absolute;
 top: -12px;
 left: 5px;
 width: 8.4%;
 height: 3em;
 background: url(../../img/whitening/midashi_q.png) no-repeat;
 background-size: contain;
}
.a_ttl {
 position: relative;
 padding: 20px 20px 20px 10%;
 background: #fff;
 border-radius: 0 0 10px 10px;
 text-align: justify;
}
.a_ttl::before {
 content: "";
 display: block;
 position: absolute;
 top: 15px;
 left: 5px;
 width: 8.2%;
 height: 3em;
 background: url(../../img/whitening/midashi_a.png) no-repeat;
 background-size: contain;
}
.cv_btn {
 margin-top: 30px;
}
@media screen and (max-width: 767px) {
 .l-sec07 .p-sec-ttl01 img {
  height: 22vw;
  width: auto;
 }
 .q_ttl {
  position: relative;
  padding: 8px 20px 8px 3em;
  background: #f29c9f;
  color: #fff;
  font-weight: bold;
  text-align: justify;
  line-height: 1.4;
  border-radius: 10px 10px 0 0;
 }
 .q_ttl::before {
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 11.6%;
  height: 3em;
  background: url(../../img/whitening/midashi_q.png) no-repeat;
  background-size: contain;
 }
 .a_ttl {
  position: relative;
  padding: 20px 20px 20px 3em;
  background: #fff;
  border-radius: 0 0 10px 10px;
  text-align: justify;
 }
 .a_ttl::before {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 5px;
  width: 10.6%;
  height: 3em;
  background: url(../../img/whitening/midashi_a.png) no-repeat;
  background-size: contain;
 }
}
/* sec08  歯科ホワイトニングとの違い*/
.l-sec08 {
 padding: 30px 0;
}
.map {
 width: 100%;
 height: 500px;
}
.map iframe {
 width: 100%;
 height: 100%;
}
.shop_info_tbl {
 width: 100%;
 margin-top: 30px;
 border: 1px solid #78c1c2;
}
.shop_info_tbl th {
 text-align: center;
 font-weight: bold;
 color: #fff;
 background: #78c1c2;
 padding: .2em .5em;
}
.shop_info_tbl td {
 padding: .8em .5em;
}
.shop_info_logo {
 max-width: 50%;
 margin: 20px auto;
}
.payment_ttl {
 font-size: 115%;
 font-weight: bold;
 background: #fff100;
 padding: .3em .5em;
 margin-top: 30px;
}
.payment_t01,
.payment_t02 {
 text-align: justify;
 margin-top: 1em;
}
@media screen and (max-width: 767px) {
 .l-sec08 .p-sec-ttl01 img {
  height: 22vw;
  width: auto;
 }
 .map {
  width: 100%;
  height: 100vw;
 }
}
/* footer */
.f_copy {
 padding: 1em 0 200px;
}
#flot_banner {
 position: fixed;
 max-width: 750px;
 bottom: 0;
 padding: 0;
}
.f_menu li {
  display: inline-block;
}
@media screen and (max-width: 767px) {
 .f_copy {
  padding: 1em 0 150px;
 }
 #flot_banner {
  position: fixed;
  bottom: 0;
  padding: 0;
 }
}