@media(max-width: 768px){
	.mv{ height: 15rem; padding-top: 2rem; }
	.mv .main-slide{ width: 32rem; }
	.mv .main-slide .slick-arrow{ width: 1.25rem; height: 1.25rem; }
	.mv .main-slide .slick-arrow.slick-next{ right: .5rem; }
	.mv .main-slide .slick-arrow.slick-prev{ left: .5rem }

	    .sec-intro .bg {
        background: url(../images/index/intro-bg01-sp.jpg) top / 45rem;
    }
	.sec-intro .bg .wrap{ padding-top: 3.5rem; padding-bottom: 3rem; }
	.sec-intro .bg .wrap:after{ width: 6.5rem; height: 6.5rem; bottom: -4.2rem; left: 1.75rem; }
	.sec-intro:nth-of-type(n+2) .bg .wrap:after{ content: none; }
	.sec-intro .bg h2{ font-size: 3.3rem; text-align: center; }
	.sec-intro .bg h2:before{ width: 3rem; height: 3rem; top: 0; left: 1rem; }
	.sec-intro .bg h2 small{ font-size: 2.6rem; }
	.sec-intro .bg h2 + p{ font-size: 1.3rem; width: 33.5rem; height: 5.8rem; text-align: center; margin: 0 auto 1.5rem; }
    .sec-intro .bg .wrap .campaign_img{ position: absolute; bottom: 5px; right: 10px;}
    .sec-intro .bg .wrap .campaign_img img{ width: 150px; height: auto;}    
	.sec-intro .bg h2 + p strong{ font-size: 1.5rem; }
	.sec-intro .bg h2 + p:after{ content: none; }
	.sec-intro .item01{ width: 100%; right: 0; }
	.sec-intro .item01:before{ width: 4.2rem; height: 4.2rem; right: 2rem; top: 24.5rem; }
	.sec-intro .bg .main01{ margin-left: -1rem; }
	.sec-intro .bg + .wrap{ margin-top: 7.5rem; }
	.sec-intro .intro-list li{ width: 16.25rem; }
    .sec-intro .intro-list li:first-child h3{ line-height: 1.2; padding-bottom:18px; }
	.sec-intro .intro-list li:nth-of-type(n+3){ margin-top: 4.5rem; }
	.sec-intro .intro-list li:after{ width: 4.9rem; height: 5.1rem; top: -2.7rem; }
	.sec-intro .intro-list li h3{ font-size: 2rem; width: 100%; height: 9.35rem; display: flex; justify-content: center; align-items: center; line-height: 1.3; padding: 2.25rem 0 0; }
	.sec-intro .intro-list li p{ font-size: 1.3rem; line-height: 1.6; width: 100%; height: 7rem; display: flex; justify-content: center; align-items: center; }
    .sec-intro .intro-list li span.text{ top:72px; left:17px; color: #FFF; font-size: 10px;}
    
	h2.bottom-border{ font-size: 3rem; letter-spacing: 0; }

	.sec-imprint .bg-white{ padding: 0 2.5rem 4.3rem; border-width: .3rem; }

	.sec-imprint{ margin-top: 5rem; padding: 5rem 0; }
	.sec-imprint h2{ margin-bottom: 2rem; }
	.sec-imprint h2 span{ font-size: 2.1rem; }
	.sec-imprint .comp-row{ width: 100%; margin-bottom: 6.5rem; }
	.sec-imprint .comp-row picture{ display: block; width: 100%; line-height: 0; }
	.sec-imprint .comp-row picture + picture{ margin-top: 2rem; }
	.sec-imprint .comp-row img{ width: 100%; }
	.sec-imprint .bg-white:after{ width: 10.6rem; height: 10.6rem; }
	.sec-imprint .bg-white h3{ font-size: 3rem; width: calc(100% + 5rem); margin-left: -2.5rem; margin-bottom: 2rem; line-height: 1.5; }
	.sec-imprint .bg-white h3 span{ font-size: 2.1rem; background-size: auto 5.9rem; }
	.sec-imprint .bg-white h3 strong{ font-size: 4rem; }
	.sec-imprint .merit-row img{ width: 100%; display: block; margin-bottom: 2rem; }
	.sec-imprint .merit-row ol{ width: 100%; }
	.sec-imprint .merit-row ol li{ font-size: 1.2rem; height: 2.5rem; padding-left: 4.1rem; letter-spacing: .04em; white-space: nowrap; }
	.sec-imprint .merit-row ol li:before{ width: 2.5rem; height: 2.5rem; }
	.sec-imprint .merit-row ol li:after{ width: 3.5rem; height: 3.5rem; font-size: 1.4rem; left: .3rem; top: -.5rem; }
	.sec-imprint .merit-row ol li strong{ font-size: 1.7rem; }
	.sec-imprint .merit-row ol li + li{ margin-top: 2.6rem; }

	.sec-difference{ padding: 5rem 0; }
	.sec-difference h2{ margin-bottom: 2.1rem; }
	.sec-difference h2 small{ font-size: 2.15rem; }
	.sec-difference h2 + p{ margin-bottom: 1.4rem; }
	.sec-difference .difference-row .left{ width: 100%; padding: 3.35rem 3.9rem 26.5rem; }
	.sec-difference .difference-row .left dl{ width: 11.5rem; }
	.sec-difference .difference-row .left dl dt{ text-align: left; margin-bottom: .3rem; }
	.sec-difference .difference-row .left dl dd{ letter-spacing: 0; }
	.sec-difference .difference-row .right{ width: 100%; }
	.sec-difference .difference-row .left .item01{ width: 19rem; top: auto; bottom: 3rem; }
	.sec-difference .difference-row .left .item01 img{ width: 100%; }

	.sec-feature{ margin-bottom: 0; }
	.sec-feature .wrap{ padding-top: 3.5rem; }
	.sec-feature h2 strong{ font-size: 4rem; }
	.sec-feature .feature-content{ padding: 0 0 2.5rem; }
	.sec-feature .feature-content:nth-of-type(n+2){ margin-top: 4rem; }
	.sec-feature .feature-content:nth-of-type(2){ padding-bottom: 5rem; }
	.sec-feature .feature-content:before{ width: 100vw; height: calc(100% - 8.5rem); left: -1.75rem }
    .sec-feature .feature-content2:before{left:0;}
	.sec-feature .feature-content:nth-of-type(2):before{ right: -1.75rem; }
    .sec-feature .feature-content2:nth-of-type(2):before{ right: 0; }
	.sec-feature .feature-content .image{ position: static; width: 32.5rem; margin-left: -1.75rem; display: block; }
	.sec-feature .feature-content:nth-of-type(2) .image{ margin-left: auto; margin-right: -1.75rem; }
	.sec-feature .feature-content .txt{ width: 32.5rem; margin-left: -1.75rem; padding: 3.2rem 2.5rem 2.5rem; }
    .sec-feature .feature-content .txt.txt2{width: 100%; margin-left:0; padding: 5.2rem 2rem 6rem 2rem;}
	.sec-feature .feature-content:nth-of-type(2) .txt{ margin-right: -1.75rem; }
	.sec-feature .feature-content .txt:before{ width: 100%; }
	.sec-feature .feature-content .txt:after,.sec-feature .feature-content .txt .number{ font-size: 6.5rem; top: -4rem; }
	.sec-feature .feature-content .txt h3{ font-size: 1.9rem; margin-bottom: 0; }
	.sec-feature .feature-content .txt + p{ font-size: 2.1rem; line-height: 1.5; margin-top: 2.5rem; }
	.sec-feature .feature-content .txt + p small{ font-size: 1.5rem; }
	.sec-feature .feature-content:last-of-type .txt + p span[class*="border-"]{ width: 4.6rem !important; }
	.sec-feature .bg-gray{ padding: 5rem 0; }
	.sec-feature .bg-gray:before{ width: 100vw; right: -1.75rem; }
	.sec-feature .bg-gray:after{ content: none; }
	.sec-feature .bg-gray h4{ font-size: 1.5rem; letter-spacing: .04em; margin-bottom: 2.6rem; }
	.sec-feature .bg-gray h4 span{ width: 100vw; display: block; margin-left: -1.75rem; }
	.sec-feature .bg-gray h4 span:after{ width: 1.8rem; height: 1.8rem; right: 3.5rem; top: auto; transform: none; bottom: 3rem; }
	.sec-feature .bg-gray h4 strong{ font-size: 3rem; line-height: 1.3; margin-top: 1rem; display: block; }
	.sec-feature .bg-gray h4 strong small{ font-size: 2.4rem; }
	.sec-feature .bg-gray * + h4{ margin-top: 4rem; }
    .sec-feature .bg-gray picture + h4{ margin-top: 70px;}
    .sec-feature .bg-gray .img-row{ padding: 0; margin-bottom: 1.7rem; }
	.sec-feature .bg-gray .img-row .txt{ width: 100%; }
	.sec-feature .bg-gray .img-row .txt h5 + picture img{ width: 32.5rem; }
	.sec-feature .bg-gray .img-row > picture{ width: 100%; margin-bottom: 2.25rem; }
	.sec-feature .bg-gray .img-row > picture img{ width: 24.75rem; }
	.sec-feature .bg-gray .img-row:nth-of-type(1) > picture:before{ width: 27.15rem; height: 10.5rem; right: 0; bottom: -2rem; }
	.sec-feature .bg-gray .img-row:nth-of-type(2) > picture:before{ width: 19.6rem; height: 16.5rem; right: -1rem; bottom: -1rem; }
	.sec-feature .bg-gray .boost-list{ padding: 0; flex-wrap: wrap; }
	.sec-feature .bg-gray .boost-list li{ width: 16.5rem; height: 10.2rem; font-size: 1.1rem; }
	.sec-feature .bg-gray .boost-list li strong{ font-size: 1.55rem; }
	.sec-feature .bg-gray .boost-list li:nth-of-type(1){ font-size: 1.4rem; }
	.sec-feature .bg-gray .boost-list li:nth-of-type(1) strong{ font-size: 3.9rem; }
	.sec-feature .bg-gray .boost-list li:nth-of-type(n+3){ margin-top: 1rem; }
	.sec-feature .bg-gray .point-list{ padding: 0; }
	.sec-feature .bg-gray .point-list li{ width: 100%; }
	.sec-feature .bg-gray .point-list li:nth-of-type(n+2){ margin-top: 1rem; }
    
    .sec-feature .feature-content .point-list{ margin-top: 20px;}

	.img-box01{ height: 16rem; }

	.sec-case{ padding: 4rem 0 4.5rem; }
	.sec-case h2{ margin-bottom: 1.8rem; }
	.sec-case h2 + picture{ margin-bottom: 2.5rem; }
	.sec-case h2 + picture img{ width: 100; }
	.sec-case table, .sec-case table tbody, .sec-case table tr, .sec-case table th, .sec-case table td{ display: block; width: 100%; }
	.sec-case table{ padding-left: 1.4rem; border-left: solid .5rem #0058a1; }
	.sec-case table th{ white-space: normal; padding: 0; border: none; line-height: 1; margin-bottom: .6rem; }
	.sec-case table td{ font-size: 1.5rem; line-height: 1.5; }
	.sec-case table tr + tr{ margin-top: 1.8rem; }
    .sec-case h3,.sec-flow h4{ font-size:24px; line-height: 1.6; margin: 60px 0 20px;}
    .sec-case h4{ font-size: 18px; margin: 40px 0 30px;}
    .check_list{ margin-bottom: 20px;}
    .check_list li{padding-left:60px; font-size: 16px; line-height: 1.6;}
    .check_list li + li{ margin-top: 30px;}
    .check_list li:before{ top: -3px; left: 5px; }

	.sec-flow{ padding: 3.8rem 0 5rem; }
	.sec-flow .flow-list li{ background: transparent; padding-top: 14.4rem; }
	.sec-flow .flow-list li + li{ margin-top: 3.5rem; }
	.sec-flow .flow-list li .img{ width: 100vw; height: 19.65rem; left: -1.75rem }
	.sec-flow .flow-list li:nth-of-type(even) .img{ left: -1.75rem }
	.sec-flow .flow-list li .txt{ width: 32.5rem; background: #0058a1; margin: 0 auto; position: relative; padding: 2.75rem 2.5rem 1.75rem; }
    
    .sec-flow h4 + p{ font-size: 14px;}
    .sec-flow picture + p{ font-size: 13px; letter-spacing: 0;}
    .sec-flow .schedule_list li{ font-size:18px;}    

	.sec-price{ padding: 3.75rem 0 4.5rem; margin-bottom: 3.6rem; }
	.sec-price h2{ margin-bottom: 3rem; }
	.sec-price .bg-white{ padding: 3.35rem 2rem 4.5rem; }
	.sec-price .bg-white + .bg-white{ margin-top: 6rem; }
	.sec-price .method h3{ font-size: 2.7rem; margin-bottom: .6rem; }
	.sec-price .method h3 + p{ font-size: 2rem; letter-spacing: .04em; line-height: 1.5; }
	.sec-price .bg-white.method table{ letter-spacing: .04em; line-height: 1.5; }
	.sec-price .bg-white.method table th{ width: 10rem; font-size: 1.4rem; padding: .5em 1em; }
	.sec-price .bg-white.method table td{ font-size: 1.3rem; }
	.sec-price .office{ padding-top: 6.2rem; }
	.sec-price .office h3, .sec-price .home h3{ height: 8.85rem; font-size: 2.1rem; line-height: 1.3; background-image: url(../images/index/price-ttl01-sp.png); }
	.sec-price .office h3:before{ width: 11rem; height: 10rem; top: -3rem; left: -1rem; }
	.sec-price .office h4{ padding: 0; font-size: 3rem; line-height: 1.3; display: block; background-image: url(../images/index/price-ttl03-sp.png), url(../images/index/price-ttl04-sp.png); background-size: 2.75rem, 2.75rem; background-position: bottom left 1rem, bottom right 1rem; }
	.sec-price .office h4 small{ font-size: 2rem; margin-bottom: 1rem; }
	.sec-price .office .campain-row dl{ height: 11.75rem; }
	.sec-price .office .campain-row dl:nth-of-type(1){ width: 100%; }
	.sec-price .office .campain-row dl:nth-of-type(1):after{ width: 2.2rem; height: .8rem; top: auto; bottom: -.4rem; left: 50%; transform: translateX(-50%) rotate(90deg); }
	.sec-price .office .campain-row dl:nth-of-type(2){ width: 100%; }
	.sec-price .office .campain-row dl dt{ font-size: 1.3rem; }
	.sec-price .office .campain-row dl:nth-of-type(2) dt{ font-size: 1.3rem; text-align: center; }
	.sec-price .office .campain-row dl:nth-of-type(1) dd{ font-size: 3.85rem; }
	.sec-price .office .campain-row dl:nth-of-type(1) dd small{ font-size: 1.2rem; }
	.sec-price .office .campain-row dl:nth-of-type(2) dd{ font-size: 5rem; }
	.sec-price .office .campain-row dl:nth-of-type(2) dd small{ font-size: 1.1rem; }
	.sec-price .office .campain-row + small{ font-size: 1.2rem; margin-bottom: 2.5rem; }
    
	/*.sec-price .bg-white:not(.method) table, .sec-price .bg-white:not(.method) table tbody, .sec-price .bg-white:not(.method) table tr, .sec-price .bg-white:not(.method) table th, .sec-price .bg-white:not(.method) table td{ display: block; width: 100%; }*/
    
	.sec-price .bg-white:not(.method) table th{ text-align: center; padding: .3em; font-size: 1.4rem; border-width: .4rem; border-top: none; border-right: none; }
	.sec-price .bg-white:not(.method) table th strong{ font-size: 2rem; display: inline-block; margin-top: 0; margin-right: .6em; }
	.sec-price .bg-white:not(.method) table td{ text-align: left; font-size:12px; line-height: 1.6; border-width: .4rem; border-top: none; border-left: none; letter-spacing: 0; }
	.sec-price .bg-white:not(.method) table td.mincho{ text-align: center; }
	.sec-price .bg-white table + table{ margin-top: .8rem; }
	.sec-price .office .image{ margin-top: 1.6rem; }
	.sec-price .bg-white.home{ margin-top: 12rem; padding-top: 6rem; }
	.sec-price .home h3{ background-image: url(../images/index/price-ttl01-sp02.png); height: 5.75rem; padding-top: 1rem; top: -3rem; }
	.sec-price .home h3 span{ font-size: 1.8rem; top: -6rem; background-size: 1.8rem; background-position: top 2rem right; padding: 0 2rem; }	
	.sec-price .home .home-list{ margin-bottom: 3.2rem; }
	.sec-price .home .home-list:before{ width: 9.5rem; height: 9.5rem; bottom: -3rem; z-index: -1; }
	.sec-price .home .home-list li{ letter-spacing: .05em; }
	.sec-price .home .home-list li:nth-of-type(n+2){ margin-top: 2.5rem; }
	.sec-price .home .home-list li img{ width: 100%; }
	.sec-price .bg-white table th.mincho{ font-size: 2rem; line-height: 1.3; }
	.sec-price .home table + small.right{ font-size: 1.2rem; text-align: left; letter-spacing: .05em; line-height: 1.6; }
	.sec-price .home .image{ margin: 1.75rem 0 3.5rem; }
	.sec-price .home > h4{ font-size: 1.6rem; padding: 2rem 0; margin-bottom: 2.7rem; }
	.sec-price .home > h4 span{ display: inline-block; }
	.sec-price .home > h4 span:after{ width: 1.8rem; height: 1.8rem; top: -0.6rem; right: -2rem; }
	.sec-price .home .toothpaste .left{ width: 100%; }
	.sec-price .home .toothpaste .left img.img{ width: 100%; display: block; margin-bottom: 2.6rem; }
	.sec-price .home .toothpaste .left img.logo{ width: 21.8rem; margin: 0 auto 1.8rem; }
	.sec-price .home .toothpaste .left ul{ margin-bottom: 2.5rem; }
	.sec-price .home .toothpaste .left ul li{ font-size: 1.3rem; letter-spacing: 0; }
	.sec-price .home .toothpaste .right{ width: 100%; }
	.sec-price .home .toothpaste .right dl{ width: 100%; display: flex; justify-content: space-between; }
	.sec-price .home .toothpaste .right dl + dl{ margin-top: .4rem; }
	.sec-price .home .toothpaste .right dl dt{ width: 10rem; height: 4rem; margin-bottom: 0; }
	.sec-price .home .toothpaste .right dl dd{ width: calc(100% - 10.4rem); }
	
    .sec-price2 .bg-white table th.mincho{ font-size: 14px; letter-spacing: 0; width: 30%;}
    .sec-price2 .bg-white:not(.method) table td.mincho{ font-size: 20px;}
    .sec-price2 .bg-white table td{ padding: .8rem 1rem; }
    
	.sec-dr{ margin-bottom: 4.8rem; }
	.sec-dr h2{ margin-bottom: 10.25rem; }
	.sec-dr .president-box{ padding: 0 2.5rem 4rem; }
	.sec-dr .president-box > .row:nth-of-type(1){ margin-bottom: 0; }
	.sec-dr .president-box > .row:nth-of-type(1) .left{ width: 100%; margin-bottom: 1.2rem; }
	.sec-dr .president-box > .row:nth-of-type(1) .left img{ width: 100%; margin: -7.25rem 0 1.75rem; }
	.sec-dr .president-box > .row:nth-of-type(1) .left h3{ display: block; text-align: center; }
	.sec-dr .president-box > .row:nth-of-type(1) .left h3 small{ display: block; margin-bottom: .6rem; }
	.sec-dr .president-box > .row:nth-of-type(1) .left h3 strong{ font-size: 3rem; margin-left: 0; }
	.sec-dr .president-box > .row:nth-of-type(1) .right{ width: 100%; }
	.sec-dr .president-box > .row:nth-of-type(1) .right p + p{ margin-top: 1.1rem; }
	.sec-dr .dr-box{ padding: 13.5rem 3.75rem 2.5rem; margin-top: 12.5rem; }
	.sec-dr .dr-box:after{ width: 5rem; height: 5rem; top: auto; bottom: 1.7rem; right: 2.4remd; }
	.sec-dr .dr-box img{ width: 26.5rem; top: -9.25rem; left: 50%; transform: translateX(-50%); }	
	.sec-dr .dr-box .txt{ width: 100%; }
	.sec-dr .dr-box .txt h3{ background-image: none; margin-bottom: 0; padding-bottom: 0; text-align: center; line-height: 1.5; }
	.sec-dr .dr-box .txt h3 strong{ font-size: 3rem; }
    
    .sec-feature .feature-content .txt p.sp-mt {
        margin-top: 1.5rem;
    }
    .text_center{ text-align: left;}
    .point_text + .point_text{ margin-top:0;}
    .point_text{ margin-bottom: 10px;}
    .table_merit th{ font-size: 14px;}
    .table_merit td{ font-size: 13px; padding: 10px; letter-spacing: 0.1px; }
    .poririn_wrap dl{ width: 100%; background:url(../images/index/feature-item01.png) no-repeat left 2rem center/3.8rem; padding: 1.7rem 2rem 2rem 8rem; margin-bottom: 0;}
    
    .small_text{ font-size: 14px; letter-spacing:0.1px;}
    
    .menu{ width:calc(100% - 40px); margin:50px auto; padding: 0 0 35px; margin: 5rem auto 2rem;}
    .menu h2{ font-size:26px; padding: 65px 0 25px; line-height: 1.3; }
    .menu h2 span img{left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%);}
    .menu p{ font-size:18px; margin: 22px 0;}
    .menu .flex_wrap,.flex_wrap{ display: block;}
    .menu .flex_wrap .box,.flex_wrap div{ width:100%; }
    .menu .flex_wrap .box + .box,.flex_wrap div + div{ margin-top: 25px;}
    
    .sec-feature .wrap.qa {padding-top: 5rem;}
    .qa h2.bottom-border{ margin-bottom: 3rem;}
    .qa h3{ font-size: 100%;}
    .white_wrap{ padding: 25px 20px;}
    
    .sec-price .bg-white:not(.method) table.price_table tr{ margin-top: 0;}
    .sec-price .bg-white:not(.method) table.price_table th,.sec-price .bg-white:not(.method) table.price_table td{ font-size: 13px; letter-spacing: 0; width:10rem; vertical-align: top; padding: 5px 5px;}
    .sec-price .bg-white:not(.method) table.price_table th{padding: 5px 15px; vertical-align: middle; line-height: 1.3; font-size: 12px;}
    .sec-price .bg-white:not(.method) table.price_table{ width:100%;}
    .table-wrap { overflow-x: scroll;}
    .sec-price .bg-white:not(.method) table.price_table td .yajirushi{ font-size: 2.5rem; top:-2px;}
    
    #whitening-price.table-wrap table.price_table td u{font-size: 1.5rem;}
    
}



/*
@media screen and (max-width: 599px) {
    
    .navs {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 90px;
    z-index: 1200;
}
    .bottom-navi {
    padding: 2px 0;
    width: 100%;
    height: 90px;
    background-color: #cfe8f5;
    float: right;
}
    .bottom-navi li {
    width: calc(100% / 2);
    height: 86px;
    float: left;
    display: flex;
    justify-content: center;
    align-items: center;
}
    .bottom-navi li:first-child {
    border-right: 1px #fff solid;
}
    .bottom-link {
    width: calc(100% / 2);
    display: none;
    position: fixed;
    bottom: 90px;
    float: left;
}
    .bottom-link span {
    margin: 0;
    width: 100%;
    height: 64px;
    background-color: #0B58A7;
    display: block;
    box-shadow: 0px 1px 1px rgb(0 0 0 / 16%);
    border-bottom: 1px solid #ccc;
}
    .bottom-link span a {
    width: 100%;
    line-height: 64px;
    font-size: 17px;
    font-family: 'Noto Serif JP', serif;
    color: #fff;
    font-weight: 700;
    display: block;
    text-align: center;
}

   
    
}*/
