@media (min-width: 769px){
	.sp{
		display:none;
	}
}
@media (max-width: 768px){
.menu-trigger.active span {
    background-color: #fff;
}
	input[type="submit"]{
-webkit-appearance: none;
}
	.wrap{
		width: 100%;
		padding: 0 20px;
	}
	.wrap.first{
		padding: 0; 
	}
	.tablet{
		display: block;
	}
	.main-wrap{
		margin-top:20px;
		height: 100%;
		overflow: hidden;
		
	}
	.mainV-img{
		left: 0;
		bottom: 0;
		width: 100%;
	}
	.mainV-img-bg{
		display: none;
	}
	.main-normal{
		display: none;
	}
	p.tablet-main-normal{
		font-size: 16px;
		text-align: center;
		margin: 50px 0;
	}
	.txt-box{
		top:30%;
		left:10%;
		width: 80%;
		text-align: center;
	}
	.main-big{
		font-size: 4.5vw;
		line-height:2em;
		margin-bottom: 0;
		color:#111;
		padding: 20px;
		background: rgba(255,255,255,0.5);
		width:100%;
		height:auto;
	}
	.spmenubtn{
		display: block;
		position: fixed;
		top: 20px;
		right: 10px;
		z-index: 9999;
	}
	.Gnav ul{
		display: none;
	}
	h2.layer-head{
		font-size: 80px;
		top: 0px;
		margin: 40px 0 30px;
	}
	h2.layer-head span{
		display: block;
		margin-right: 0;
	}
	.article-wrap{
		float: none;
		margin: 30px auto 0;
	}
	.article-wrap:first-of-type, .peace-article:first-of-type{
		margin: 0 auto;
	}
	.voice .row img:first-of-type, .voice .row img:last-of-type{
		float: none;
		margin: 30px auto 0;
		display: block;
	}
	.voice .row img:first-of-type{
		margin-top: 0;
	}
	.inprant-row.left-img img{
		position: static;
		margin-top: -30px;
	}
	.inprant-row.right-img img{
		position: static;
		float: right;
		margin-top: -30px;
	}
	.inprant-row{
		margin-top: 80px;
	}
	.dr .row img{
		float: none;
		display: block;
		margin: 0 auto 30px;
	}
	.dr-txt{
		width: auto;
	    max-width: 402px;
	    float: none;
	    margin: 0 auto;
	}
	.access .halfbox{
		float: none;
		width: auto;
		display: table;
		margin: 0 auto;
	}
	.access .halfbox:first-of-type{
		padding-bottom: 0;
	}
	.access .halfbox:nth-of-type(2){
		padding-top: 0;
	}
	.access .halfbox ul {
	    margin-bottom: 20px;
	}

	/*** page ***/

	.main-content{
		width: 100%;
		float: none;
		padding: 0;
	}
	.only-pc{
		display: none;
	}
	.consultation th, .consultation td{
		width: 100%;
		display:block;
		
	}
	.consultation tr:first-of-type > th{
		border:none;
	}
	.img_left{
	float:none;
	padding-right:0px;
}
.pc{
	display:none;
}
	.box300{
	width:100%;
	float:none;
	box-sizing:border-box;
	text-align:center;
	}
	.box410{
		width:100%;
		float:none;
		box-sizing:border-box;
	}
	.box410 table{
		margin-top:-20px;
	}
	.box410 table th{
		width:100% ;
		display:block !important;
		font-size:14px;
		vertical-align:middle;
		padding:10px !important;
		box-sizing:border-box;
	}
	.box410 table td{
		font-size:14px !important;
		padding-left:5px;
	}
	.box410 table td.td_02{
		border-top:none !important;
	}
	
/*-------インプラント治療費-------*/
	.sub-page .main-content .plan_01 h3{
		line-height:210%;
		margin-bottom:20px;
		border-bottom:#deca96 3px solid;
	}
	.sub-page .main-content h3 span{
		padding:6px 15px;
		margin-left:-13px;
		margin-right:15px;
		font-size:13px;
		font-weight:bold;
	}
	table.price_table th,
	table.price_table td{
		display:table-cell;
		font-size:11.5px;
		font-weight:500;
		padding:10px 5px;
		box-sizing:border-box;
		text-align:center;
	}
	table.price_table th{
		width:35%;
	}
	table.price_table th.bt{
		border-top:#deca96 3px solid;
	}
	table.price_table td{
		width:65%;
	}
	.sub-page p.mb_0 {
    margin-bottom: -5px;
    margin-top: -5px;
	}
	.plan_01{
		margin-bottom:30px;
	}
	.sub-page .main-content .price_wrap h3{
		margin-top:50px;
	}
	.sub-page p.img_70{
		width:60%;
		margin:0 auto 10px;
	}
	.sub-page .main-content h4{
		line-height:170%;
		margin-bottom: 40px;
	}
	table.table_01{
		border:#CCC 1px solid;
	}
	table.table_01 th,table.table_01 td{
		width:100%;
		display:block;
	}
	.catch_wrap{
	margin-bottom:50px;
	}
	.catch_wrap p.text_01{
		font-size:4.05vw;
		letter-spacing:0.2px;
		line-height:210%;
		padding:15px 5px 15px 15px;
	}
	.catch_wrap p.text_01 span{
		font-size:107%;
		letter-spacing:0;
		margin-right:0;
	}
	.catch_wrap .box_01{
		background: url(../images/price/003.jpg) no-repeat 0% 20%;
		background-size: 112% auto;
		padding:20px 15px 20px 10px;
		box-sizing:border-box;
		margin-top:0;
	}
	.catch_wrap .box_01 p{
		font-size:4.05vw;
		letter-spacing:0.3px;
		line-height:220%;
		margin-bottom:0;
	}
	.catch_wrap .box_01 p span{
		font-size:5.05vw;
		letter-spacing:0.5px;
		font-weight:bold;
		margin-left:-9px;
	}
    
    /*    スマホのフッターメニュー　　*/
    .float-btn.sp{ display: flex; position: fixed; bottom: 0; left: 0; width: 100%; z-index: 1001; }
    .float-btn li{ background: #81D8D0; width: 100%; height: 14.666vw; display: flex; justify-content: center; align-items: center; position: relative; font-size: 4.666vw; color: #fff; }
    .float-btn li + li{ border-left: solid 1px #fff; }
    .float-btn li span{ padding-left: 4.666vw; background-repeat: no-repeat; }
    .float-btn li:nth-of-type(1) span{ background-image: url("https://www.odc-all-on-4.com/invisalign/img/icon-tel.png"); background-position: top 50% left 0; background-size: 2.666vw; color: #fff;}
    .float-btn li a.linkwrap{width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 10;}
}

@media (max-width: 540px){
	header{
		margin-bottom: 20px;
	}
	.head-logo{
		width: 60px;
	}
	.head-description{
		margin-left: 10px;
	}
	.head-description dt{
		font-size: 10px;
		margin-bottom: 0;
	}
	.head-description dd span {
	    font-size: 10px;
	    margin-bottom: 2px;
	    padding: 0 7px;
	}
	h2.layer-head{
		top:0;
		font-size: 30px;
		margin: 30px 0;
	}
	h2.layer-head span{
		display: block;
		margin-right: 0;
		font-size: 16px;
	}
	.simplebtn{
		padding: 20px 0;
		width: 100%;
		text-align: center;
	}
	.paper{
		background-attachment: scroll;
		height: 150px;
	}
	.bg-dr{
		height: 220px;
		background-attachment: scroll;
	}
	.bg-dr p{
		font-size: 18px;
		padding-top: 78px;
	}
	h2.en-ja{
		font-size: 28px;
		margin: 40px 0 30px;
	}
	h2.en-ja span{
		display: block;
		margin-left: 0;
		font-size: 16px;
		margin-top: 10px;
	}
	h2.en-ja span:after{
		width: 100%;
		top: -40px;
		left: 0;
	}
	.inprant-big{
		font-size: 22px;
	}
	.inprant-description{
		font-size: 16px;
	}
	.inprant-description br{
		display: none;
	}
	.inprant-row.left-img img, .inprant-row.right-img img{
		width: 80%;
	}
	.knowledge-description{
		width: 90%;
		padding: 50px 20px;
	}
	.knowledge-description h3{
		width: 100%;
	}
	.knowledge-description h3 span{
		margin-right: 100px;
	}
	.knowledge-description h3 span:after{
		width: 60px;
		right: -80px;
	}
	.knowledge-description h4{
		font-size: 22px;
	}
	.wrap.knowledge-area{
		padding: 0;
	}
	.access .halfbox{
		display: block;
		padding-right: 0;
		padding-left: 0;
	}
	a.gold-btn, a.green-btn, .submitBtn{
		width: 100%;
	}
	.case-article, .peace-article{
		width: auto;
		max-width: 300px;
	}
	/*** add index ***/
	.sp-firstview{
		display: block;
	}
	.sp-firstview ul li{
		width: 50%;
		color: #fff;
		background: #81D8D0;
		float: left;
		position: relative;
		text-align: center;
		padding: 10px;
		font-size: 12px;
		border-bottom: solid 1px #fff;
	}
	.sp-firstview ul li:first-of-type, .sp-firstview ul li:nth-of-type(3), .sp-firstview ul li:nth-of-type(5),.sp-firstview ul li:nth-of-type(7),.sp-firstview ul li:nth-of-type(9){
		border-right: solid 1px #fff;
	}
	/*--
	.sp-firstview ul li:last-of-type{
		width: 100%;
	}--*/
	.wrap {
    position: relative;
	}
	footer .wrap{
		padding-left: 0;
		padding-right: 0; 
	}
	footer .sp-firstview{
		margin-bottom: 30px;
	}
	footer{
		padding: 0 0 10px;
	}
	
	
	/*** page ***/
	
	.page-mainV.wrap img{
		position: static;
		left: auto;
	}

	.page-mainV.wrap{
		margin-top: 0;
		height: 100%;
	}
	.page-mainV.wrap h1{
		font-size: 20px;
		top: 17px;
		width: 100%;
		position: static;
		background: none;
		padding:10px;
	}
	.breadcrumb p{
		font-size: 10px;
	}
	.sub-page .main-content h2{
		font-size: 22px;
	}
	.sub-page .main-content h2:after{
		bottom: -8px;
	}
	.consultation th{
		width: auto;
	}
	img.floatleft, img.floatright{
		float: none;
		margin: 0 auto 10px;
		display: block;
	}
	p.en-ja{
		font-size: 22px;	
	}
	p.en-ja span{
		margin-left: 0;
		display: block;
		font-size: 16px;
	}
	article.case-study .thumbnail{
		float: none;
		margin: 0 auto;
	}
	article.case-study .case-txt{
		width: 100%;
		float: none;
	}
	.sub-page:after{
		height: 100px;
		top: 102px;
	}
	.side-content{
		width: 100%;
	}
	dl.record{
		width: 100%;
		margin-top: 30px;
	}
	p.en-ja span:before{
		left: 0;
		top: -40px;
		width: 100%;
	}
	.simplebtn:after{
    	top: 20px;
	}
	.submitBtn{
		width:70%;
		background:#67D6C4 !important;
		border:#67D6C4 2px solid;
		padding:15px 0 !important;
		border-collapse:20px;
		box-sizing:border-box;
		font-weight:bold;
	}
	.submitBtn:hover{
		background:#FFF !important;
		color:#67D6C4;
	}
	/*  #picup_news-------------------------------------*/
	#picup_news{
		width:90%;
		border:#CCC 1px solid;
		border-top:#CCC 5px dashed;
		box-sizing:border-box;
		padding:10px;
		margin:0px auto 20px auto;
	}

	#picup_news h2{
		font-size:25px;
		text-align:left;
		margin-bottom:20px;
	}
	#picup_news p{
		font-size:15px;
		text-align:left;
		margin-bottom:15px;
		line-height:150%;
	}
	#picup_news .h2{font-size: 18px;}
	
	textarea.wpcf7-form-control.wpcf7-textarea {
		width: 100%;
		}
		_::-webkit-full-page-media, _:future, :root table.consultation {
		width: 100%;
			box-sizing: border-box;
		}
	_::-webkit-full-page-media, _:future, :root table.consultation th,table.consultation td,span.wpcf7-list-item-label,span.wpcf7-form-control-wrap.send-to,input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,input.wpcf7-form-control.wpcf7-text,textarea.wpcf7-form-control.wpcf7-textarea {
		width: 100%;
		box-sizing: border-box;
	}
	input.wpcf7-form-control.wpcf7-text {
		width: 90%;
		margin: 0 auto;
		/* display: inline-block; */
	}
	input.wpcf7-form-control.wpcf7-date.wpcf7-validates-as-date {
		width: 40%;
	}

	select.wpcf7-form-control.wpcf7-select {
		width: 40%;
	}
	div#guidelines {
		padding: 20px;
		width: 100%;
	}
	div#guidelines table th,
	div#guidelines table td{
		display: block;
		width: 100%;
	}
	div#guidelines table td{
		text-align: left;
	}
	.flex{margin: -35px auto 30px;}
	.flex .half{
		flex-basis: 100%;
		margin: 15px auto;
	}
	.item_img{
		flex-basis: 100%;
		order: 1;
		margin-bottom: 5vw;
	}
	.item_text{
		flex-basis: 100%;
		order: 2;
	}
	#lecture ul.half li{
		margin-bottom: .3em;
	}
}

/* 2021/12/17 */
div.spf_btm{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 1002;
}
div.spf_btm p{
	margin-bottom: 0;
}
p.spcall_btm{
    background-color: #03c1b0;
    text-align: center;
    width: 100%;
    padding: 1% 0;
    border-bottom: 2px solid #fff;
}
p.spcall_btm span{
	color: #fff;
	font-size: 1.1rem;
}
p.spcall_btm span.mintext{
	font-size: 0.8rem;
}
p.spf_btm_l,
p.spf_btm_r{
	width: 50%;
	float: left;
	text-align: center;
	padding: 3% 0;
	background-color: #81D8D0;
}
p.spf_btm_l span,
p.spf_btm_r span{
	color: #fff;
	font-size: 1.2rem;
}
p.spf_btm_l{
	border-right: 2px solid #fff;
}

div#guidelines{
	width: 100%;
}