@charset "UTF-8";
/* CSS Document */
section {
	padding: 5vh 0;
}

h2 {
  font-size: 1.7rem;
  margin-bottom: 3vh;
	text-align: left;
	padding: 0 15px;
}
#main {
  padding:0;
  background:#3a3737;
}
#main .container {
	padding: 0;
}
#recommend {
	padding: 0;
	text-align: center;
}
#recommend img {
	margin: auto;
}
#about {
	background: none;
}
#about h2 {
	text-align: center;
}
#about h3 {
    font-size: 1.35rem;
    margin-bottom: 3vh;
	z-index:10;
}
#about .sp-photo {
	position: relative;
	
	padding: 3vh 0;
}
#about .sp-photo img {
	position: absolute;
	right:-100px;
	top:-30px;
	width: 80%;
	z-index: -10;
	
	
}
#usp h2 {
	text-align: center;
}
#usp .point .col-lg-4 {
	padding: 0;
	margin-bottom: 3vh;
}
#usp .text {
	padding: 0 1.5em 2em;
}

.point .icon {
	text-align: center;
}

.difference {
	padding: 5vh 0;
	background: #fff;
}
.difference h3,
.symptom h3{
	margin: 0 0 1em;
	font-size: 1.35rem;
}
.wrap_scroll_table {
  width: 100%;
  overflow-x: scroll;
  margin: 0 auto;
}

.scroll_table {
	width: 800px;
  margin-top: 10px;
  max-width: 800px;
  margin: 0 auto;
}

.tbl_toyotoha th, .tbl_toyotoha td {
	padding: 0.75em 0.3em;
	font-size: 1rem;
}
.tbl_toyotoha th {
	width: auto;
}
.difference .text {
	
}
.symptom {
	padding: 5vh 0;
}
#merit h2{
	text-align: center;
}
#merit h3 {
	font-size: 1.35rem;
}
#merit .box {
	padding: 1.5em;
}
.merit1,
.merit2,
.merit3{
	background:none;
}
.merit1,
.merit2{
	padding: 0 0 3vh;
}
.merit3 {
	padding: 0 0 ;
}

#voice h2 {
	text-align: center;
}
#voice .voice-box {
	padding: 1.5em;
}
#voice .photo {
	width: 100%;
	margin-bottom: 15px;
}
#voice h3 {
	font-size: 1.35rem;
	margin-bottom: 0.5em;
}
#voice h4 {
	font-size: 1.25rem;
}
#voice .user {
	text-align: center;
}
#voice .user-text {
	margin-bottom: 5vh;
}
#flow h2,
#tought h2{
	text-align: center;
}
#flow .title h3,
#flow .step{
	padding: 0.5em 0;
	position: relative;
	text-align: center;
}
#flow .title h3 {
	top: 0;
	font-size: 1.35rem;
	left: auto;
	text-align: center;
	transform: none;
}
#flow .text {
	padding: 1.5em 1.5em 0.5em;
}

#staff h2 {
	text-align: center;
}
#staff .detail {
	width: 100%;
	margin: auto;
	padding: 1.5em 1.5em 0.5em;
}
#staff .comment {
	width: 100%;
	margin: auto;
	padding: 0 0 1em;
}
#canpain .period {
	top:-60px;
}
#canpain h2 {
	padding: 60px 1em 20px;
	font-size: 1.75rem;
	text-align: center;
}
#qa h2 {
	text-align: center;
}
.first_price_cont .normal .price {
	margin-top: 0;
	margin-bottom: 2vh;
	padding: 1vh 0;
	font-size:1.35rem;
}
.first_price_cont .discount .price {
	margin-top: 0;
	margin-bottom: 2vh;
	padding: 1vh 0;
	font-size:1.35rem;
}
.first_price_cont .discount .price span {
	font-size: 1.5em;
}
.first_price_cont {
	margin-bottom: 3vh;
}
.tel .left {
	padding: 1em;
}
.tel .left .inner {
	position: relative;
	font-size: 1.35rem;
}
.tel .tel-btn {
	font-size: 2rem;
}
.caution-title h3 {
	position: relative;
	font-size: 1.35rem;
}

.shop {
	width: 90%;
	margin: auto;
}

#hygiene .col-4 {
	padding: 0;
	margin-bottom: 0.25em;
}
#hygiene h2 {
	text-align: center;
}
#tought h3 {
	font-size: 1.25rem;
	text-align: center;
}
#tought .detail {
	width: 94%;
	margin: auto;
	padding: 1.5em 1.5em 0.5em;
}

.bg-g {
	background: #F2F2F2;
}

.reason {
	padding: 0;
}
.reason .col {
	width: 100%!important;
	flex-basis:auto;
}
.reason .photo {
	height: 200px;
	overflow: hidden;
}

.reason h2,
.case h2,
.voice h2,
.price h2,
.flow h2,
.qa-box h2
{
	font-size: 2rem;
}
.case .text {
	margin-bottom: 1em;
}
.case .box {
	padding: 2em 1em;
}
.voice h3 {
	font-size: 1.5rem;
}
.voice .box {
	padding: 2em 1em;
}
.profile {
	padding: 5vh 0;
}
.profile .position{
	text-align: center;
	font-size: 1.2rem;
}
.profile .name {
	text-align: center;
	font-size: 2rem;
}
.profile li {
	font-size: 1.1rem;
}
.price {
	padding: 5vh 0;
}
.price .col {
	flex-basis:auto;
	margin-bottom: 3vh;
}

.price .title {
	padding: 0 1em 1em;
}
.price .col-8 {
	padding-left: 0;
}
.price .icon {
	width: 100%;
	margin: 0;
}
.price h3 {
	font-size: 1.65rem;
	text-align: center;
	margin-top: 0.5em;
}
.price .text {
	padding: 1em 1.5em 0;
}


.flow {
	padding: 5vh 0;
}


.flow .box {
	background: #0071bc;
	margin-bottom: 3vh;
	padding: 1em;
	border-radius: 10px;
	border: 3px solid #fff;
	box-shadow: 3px 3px 5px 3px #777777;
}
.flow .col-md-4 {
	position: relative;
}
.flow .box h3 {
	font-size: 1.65rem;
	text-align:center;
	position: relative;
	margin-bottom: 0.85em;
	top:0.75em;

}
.flow .icon {
	width: 25%;
	position: absolute;
	top:-40px;
	left:0;
	
}
.flow .text {
	background:#fff;
	padding: 1.5em;
	border-radius: 10px;
}
.flow .text p {
	font-size: 1.15rem;
}


.flow .text {
	padding: 1em;
}
.flow .text p {
	font-size: 1rem;
}
	.q_txt dl {margin-left: 0; margin-bottom: 15px; width: 100%;}
	.q_txt dt {width: 80px; height: 80px;}
	.q_txt dd {
		font-size: 1rem;
		width: 80%;
		margin: 0;

	}
	.a_txt dl {margin-left: 0; margin-bottom: 15px; width: 100%;}
	.a_txt dt {width: 80px; height: 80px;}
	.a_txt dd {
		font-size: 1rem;
		width: 80%;
		margin: 0;
	}
	.a_txt dd:after,.a_txt dd:before {top:30px;}
.contact {
	padding: 5vh 0;
}
.contact .box {
	padding: 2em 1em;
}
.contact h2 {
	font-size: 2rem;
}
.contact .read {
	font-size: 1.15rem;
	margin-bottom: 4vh;
}
.contact .tel {
	font-size:2rem;
	margin-bottom: 15px;
}
.contact .detail {
	margin: 4vh 0;
}
.note .text {
	padding: 1em;
}
.thought h2 {
	font-size: 2rem;
}
.thought h3 {
	font-size: 1.7rem;
}
#sp-fixed-menu li a {
	padding: 15px;
}
#sp-fixed-menu li{
   font-size: 18px;
}
#sp-fixed-menu .tel{
   font-size: 18px;
}
#sp-fixed-menu .tel {
  background: #d4145a;
  border-right: 1px solid #fff;
  font-size: 26px;
	margin-bottom: 0;
}