/* CSS Document */

@media screen and (max-width:768px){
	

    /* パンくず--------------------------- */
    .breadcrumb {
        margin: 10px 0 10px;
        padding-left: 15px;
        width: 100%;
        box-sizing:border-box;
    }
    .breadcrumb ul li{
        line-height:180%;
    }

    .breadcrumb li {
        margin-right: 7px;
    }
    .breadcrumb li:not(:last-child):after {
        margin-left:2px;
        font-size: 10px;
    }
    i { padding-right: 5px;}
    .breadcrumb li a { font-size: 11px; letter-spacing: 0;}

    #sub .mb{
        margin-bottom:-30px !important;
    }
    #access .mb{
        margin-bottom: -0px !important;
    }
    .tel_text a {
        line-height: 300%;
    }
    .t_l{font-size:0.8em;}
    
        #sub .main_btn a {
        width: 90%;
    }


    /* サブMV--------------------------- */
    .sub_nav {
        border-radius: 15px;
        margin-bottom: 0;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .sub_mv{
        position:relative;
        box-sizing:border-box;
    }
    .sub_mv img {
        border-bottom-left-radius: 15px;
        border-bottom-right-radius: 15px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
    .sub_mv .logo{
        position:absolute;
        top:-60px;
        left:15px;
        width:200px;
    }
    .sub_mv .white_pc{
        position:absolute;
        top:0;
        left:0;
        height:100%;
    }
    #sub header{
        padding:65px 0 0 0;
    }
        #sub section{ margin-bottom: 4rem;}
        #sub section + section{ margin-top: 4rem;}

    /* サブページの見出し--------------------------- */
    #sub p{
        font-size:14px;
        line-height:2;
        margin-bottom:15px; letter-spacing: 0.2px;
    }
    #sub h1{
        font-size:6.5vw;
        margin:25px 0 20px;
        letter-spacing: 0;
    }
    .column_css h1{ margin-top: 0 !important;}
        
#sub h1 img {
    width: auto;
	height:1.9em;
}
#sub h2{
	font-size:5vw;
	margin: 0 0 25px;
    padding: 20px 0 15px;
    border-top-left-radius: 13px;
    border-top-right-radius: 13px;
	line-height:150%;
	
}
#sub h2.mb{
	margin-bottom:0;
}
#sub h2.mt{
	margin-top:50px !important;
}
#sub h3{
	margin:30px 0 20px;
	font-size:4.6vw;
	letter-spacing:0.5px;
	padding:0px 0 5px 7px;
	line-height: 160%;
}

#sub .age_css h3 span{ padding: 2px; margin-right: 10px; font-size: 12px; letter-spacing: 0; margin: 5px 10px 5px 0; display:inline-block;}
#sub h4{
	margin:30px 0 20px;
	font-size:4.0vw;
	letter-spacing:0.5px;
	line-height:normal;
}
    #sub h5{ margin:  20px 0 15px;}
.flot_box {
    margin-bottom: 0;
}
.flot_box img {
    float: none;
    margin-left: 0;
	margin-bottom:10px;
    width: 100%;
}
#wrap007 .jidv img {
    margin: 17px auto 0;
    width: 90%;
}

/* サブページの装飾--------------------------- */
#sub_main{
	padding-bottom:20px;
}

#sub .box_01,
#sub .box_02{
	width:100%;
	margin:30px 0 15px;
	padding:25px 20px 10px;
}
#sub .box_01 p.text_01{
	margin-bottom:10px !important;
}
.img_center{
	margin:20px 0;
	width:100%;
}
.photo img{
	width:100%;
	padding:8px 0px;
}
#sub .box1 p{
	margin-bottom:0;
	line-height:100%;
	padding:14px 0 12px 0;
	margin-top:-13px;
}
#sub .price_text{
	font-size: 16px;
	    margin: 40px 0 20px;
}
#sub .price_text span{
	font-size:150%;
	padding:0 5px;
}
.wrap{
	border-top:#84C925 2px solid;
	padding: 0 0 0;
	margin:50px 0;
}
.wrap_mb0{
	margin:50px 0 0;
}
ul.lisit li {
    list-style: square;
    margin-left: 20px;
    padding-left: 5px;
    line-height: 150%;
    font-size: 13px;
    margin-bottom: 15px;
}
    ul.lisit li:last-child{ margin-bottom: 0;}
.case_wrap{
	background:url(../images/top/w7_001.png) no-repeat 0% 0%;
	background-size:100% auto;
	padding-top:50px !important;
}






/* サブページのテーブル--------------------------- */
#sub table {
  border-collapse: separate;
  border-spacing: 0;
  margin: 20px 0 30px;
  box-sizing:border-box;
}
#sub table tbody th,
#sub table tbody td {
	padding: 10px 10px;
	font-size:13px;
	box-sizing:border-box;
    vertical-align:middle;
}

#sub table.price_table th, #sub table.price_table td {
    padding: 10px 12px 10px;
	vertical-align:middle;
	line-height:150%;
}
#sub table.price_table td {
    font-size: 1em;
}
#sub table.price_table {
	width:100%;
    margin: 20px auto 40px;
}
#sub table.price_table th {
    font-size: 13px;
    letter-spacing: 0.08em;
}
table.price_table td span {
    font-size: 60%;
    padding-left: 1px;
}
#sub table.time_table{
	border-radius:4px;
}
#sub table.time_table th, #sub table.time_table td {
    padding: 12px 5px 6px;
    text-align: center;
    vertical-align: middle;
    font-size: 0.7em;
    letter-spacing: 0.2px;
    line-height: normal;
	box-sizing:border-box;
}
    #sub table.cace_table{ width:100%;}
    #sub table.cace_table th,#sub table.cace_table td{ padding:10px; line-height:1; font-size:14px;}
    #sub table.cace_table th:nth-child(2){ border-left:none; background: #FDE2E3; border-bottom: #FFF 2px solid; border-top-right-radius: 20px; }
    
    #sub table.table_main tr th,#sub table.table_main tr td{ font-size: 14px; letter-spacing: 0; line-height: 1.7; padding: 15px 0;}
    #sub table.table_main tr th{ width: 25%;}
    
    #sub table.table_detail th,#sub table.table_detail td{ font-size: 12px; letter-spacing: 0; padding: 5px; }
    
/* 症例紹介ページ --------------------------- */
#case .box_case,
#schedule .box_case{
	width:100%;
	float:none;
	padding:0;
}
#case h3{
	margin:40px 0 15px;
}


/* 治療の流れ --------------------------- */
#schedule ul{
	margin-bottom:40px;
}
#schedule ul li {
    margin-bottom: 4px;
}
/* 初めての方へ --------------------------- */
    .point_list li{ font-size:14px; line-height: 1.4rem; letter-spacing: .7px;}
    .point_list li + li{ margin-top: 1rem;}
    .point_list{ margin-bottom: 10px;}
	#sub .can_not table.price_table th{ font-size:14px;}
	#sub table.price_table td{ font-size:15px;}


/* 強み・特徴 --------------------------- */
#concept .box_01{
	background:url(../images/concept/002.jpg) no-repeat 100% 100%;
	background-size:180px auto;
	padding:0 0 0;
	margin-bottom:30px;
}
#concept .box_01 p{
	font-size:0.9em;
	letter-spacing:0.5px;
}
#concept .box_01 p span{
	font-size: 1.18em;
}
#concept .box_01 img{
	width:90px;
	margin:0 0 15px;
}
#concept .img_001{
	margin:60px auto 50px;
	width:200px;
}
#concept .box_02,#sub .decoration_wrap .box_02{
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
	padding:20px 20px 20px;
	margin:0 0 100px;
}
#sub .decoration_wrap{ margin-top:6rem;}
#sub .decoration_wrap .box_02{ margin-bottom:3rem;}
#sub .concept_wrap h2,#sub .decoration_wrap h2{
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    padding: 38px 0 12px 0;
	font-size:2em;
	line-height:100%;
}
#concept .concept_wrap p.number,.decoration_wrap p.number{
	width:80px;
	height:80px;
	border-radius: 50%;
	position:absolute;
	top:-55px;
	left:5%;
	padding-top:20px;
	line-height:220%;
	font-size:0.6em;
}
#concept .concept_wrap p.number span{
	font-size:3em;
}
.decoration_wrap p.number span{ font-size:1.3rem; margin-top:0; line-height: 1;}
#sub .concept_wrap h3{
	border-bottom:0;
	font-weight:100;
	margin:0;
	line-height:160%;
	text-align:center;
	padding:0 0 10px;
}
#sub .concept_wrap h4{
	text-align:center;
	padding: 16px 5px 10px 5px;
}
#sub .concept_wrap .mb{
	margin-bottom:40px !important;
}


/* ドクター紹介 --------------------------- */
#dr p.text_01 {
    font-size: 1em;
    line-height: 2em;
    text-align: center;
    padding-top: 0;
	margin-bottom:10px;
}
#sub #dr .box_01, #sub #dr .box_02 {
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
}
#sub #dr table th, #sub #dr table td {
    background: #F6F6F6;
    padding: 10px 0 0px 10px;
    border: none;
    letter-spacing: 0.2px;
    font-size: 11px;
}
#dr p.text_01 span, #flow p.text_01 span {
    font-size: 1.25em !important;
}

/* 求人情報 --------------------------- */
	.link_box{ display:block; margin:30px 0;}
	.link_box div{ width:100%;}
	.link_box div + div{ margin-top:20px;}
	.link_box div:hover,.tel_text a:hover{ opacity:1;}
	#sub p.tel_text{ margin-bottom:30px;}
	#sub .recruit{ margin-top:50px;}
	
	
	#sub .number_list{ margin:0 0 50px;}
	#sub .number_list .number p{font-size:35px; line-height:0.7; margin-right:12px;}
	#sub .number_list dl{width:100%;  padding-left:20px;}
	#sub .number_list dt{ font-size:16px;}
	#sub .number_list dd{ font-size:15px; margin-bottom: 1rem;}
    #sub .number_list dt span{ font-size: 20px;}
	.policy{ line-height:1.7;}
	.submit_btnarea{ width:100%;}
    
	
	#sub .news_wrap{ margin-bottom:60px; width: 100%; padding: 2rem;}
	#sub .news_wrap h2{ font-size:20px; letter-spacing:0; margin-bottom:20px;}
	#sub .news_wrap img,#sub .news_wrap .btn_img{ width:100%;}
	#sub .news_wrap p{ font-size:14px;}
	#sub .text_point{ font-size:18px;}

    .box_so{ margin: 29px 0 50px; padding: 30px 20px;}
    #sub .box_so p{ margin-top: 20px; font-size: 16px;}
    #sub .box_so p span{ font-size:22px; padding: 5px 20px 0; }
    #sub .box_so table{ margin: 40px 0;}
    #sub .box_so table th,#sub .box_so table td{ display: block; width: 100%;border:none;}
    #sub .box_so table tr:nth-child(even) th{ border-bottom-left-radius: 0;}
    #sub .box_so table th,#sub .box_so table tr:nth-child(even) th{ border-bottom: #FFF 2px solid; color: #7A2424;  font-size: 16px; line-height: 1; padding: 20px 5px}
    #sub .box_so table td{ font-size: 14px;}
    
    #sub .box_bordeaux{ padding: 20px 20px 30px; margin-bottom: 30px;}
    #sub .box_bordeaux p span{ font-size: 16px;}
    #sub .list_white,#sub .list_white{ display:inline-block;}
    #sub .list_white li, #sub .list_pnk li{ font-size: 16px; padding:15px; border-radius: 30px; }
    #sub .list_white li + li{ margin-left: 0;margin-top:15px;}
    #sub .list_white{ margin-bottom: 30px;}
    
    #sub .text_big span,#sub .text_big{ font-size: 16px;}
    #sub .box_so p,#sub .box_so p.small_text{ font-size: 15px;}
    
    .age_link_wrap{ justify-content: space-around;}
    .age_link_wrap li{width:calc(95%/2);}
    
    #sub .img_lady{width: 50px; height: 50px; top:75px; right: 15px; padding: 10px;}
    #sub .news_wrap .img_lady img{ width: auto;}
    .flex_wrap,.flex_wrap_main{ display:block;}
    .flex_wrap .img,.flex_wrap .text{ width: 100%; }
    .flex_wrap_main div{ width: 100%;}
    
    #access_route .flex_wrap .box{ width: 100%; margin-bottom: 20px; padding: 60px 20px 20px;}
    #access_route .flex_wrap .box span.time, #access_route .flex_wrap .box span.prefectures{    padding: 15px 10px 12px; font-size:13px; top:12px; left: 20px;}
    #access_route .flex_wrap .box span.prefectures{ font-size: 18px; padding: 15px 0 10px; top:20px;  left: auto; right: 20px; width: 104px;}
    #access_route .box ul li{ font-size: 16px;}
    #access_route .box ul li:nth-child(2n):before{ width: 26px; height: 26px; top: -6px; left: 18px;}
    #access_route .box ul li:nth-child(2n):after{ height: 25px; top:-4px; left: 5px;}
    #access_route .box ul li + li{ margin-top: 10px;}
    #sub #access_route h4{ padding: 10px 20px 7px;}
    #access_route .box ul li:nth-child(2n){ font-size: 10px; padding-left: 48px;line-height: 1.5; letter-spacing: -0.7px;}
    #access_route .box ul li + li{ margin-top: 20px;}
    #access_route .box img{ width: 150px;}
    
    #concept.insta_wrap picture img{ width: 100%;}
    #concept.insta_wrap .flex_wrap{ display: block;}
    #concept.insta_wrap picture img{ padding: 0;}
    
    .white_wrap{padding: 20px 15px 20px; margin: 50px 0 0;}
    .white_wrap .img{ position:static; width:150px; margin: 0 auto 15px 19vw; display: block;}
    #sub .concept_wrap .white_wrap h3{ padding: 0; text-align: center;}
    #sub .white_wrap h4{ font-size: 13px; letter-spacing: 0; width: 100%;}
    #sub .total_amount h5{ font-size: 18px; margin-bottom: 5px;}
    #sub .total_amount table{ width: 100%;}
    #sub .total_amount table th, #sub .total_amount table td{ letter-spacing: 0; font-size: 10px; padding: 15px 10px 10px 10px;}
    #sub .white_wrap h4 + p{ font-size: 10px;}
    .total_amount{ padding:15px; }
    #sub .total_amount table + p{ font-size: 10px;}
    
    #sub .market_price_css table tbody th, #sub .market_price_css table tbody td{ font-size: 12px; letter-spacing: 0; padding-top: 15px;}
    .market_price_css ul.lisit li{ margin-bottom: 5px;}
    .market_price_css ul.lisit li:last-child{ margin-bottom: 0;}
    
/* 歯並びの知識 --------------------------- */    
    #sub .column_box{ display:block; border-width: 1px; padding: 20px; margin-bottom: 3rem;}
    #sub .column_box dt,#sub .column_box dd{ width: 100%;}
    #sub .column_box h3{ margin: 0 0 20px;}
    #sub .column_box p{ font-size: 13px;}
    #sub .keyword_text span{ font-size: 10px; letter-spacing: 0; line-height: 3; padding: 2px 10px; border-radius: 10px; margin-left:5px;}
    #sub .table_of_contents{ padding:20px;}
    #sub .table_of_contents p{ font-size: 20px; margin-bottom: 20px;}
    #sub .table_of_contents p:after{width: 20px; height: 20px; }
    #sub .table_of_contents ul{ justify-content:center;}
    #sub .table_of_contents ul li a{ font-size: 14px; padding: 10px 20px; line-height: 4; }
    
    #sub #case .box_so table th{ width: 100%; letter-spacing: 0;}
    #sub #case table tr:last-child th{ border-bottom: #FFF 2px solid; border-radius:0;}
    
    .online_qualification{ width: 100%; margin: 0 auto 20px;}
    .online_qualification .box{ width: 80%; margin: 0 auto;}
    #online_qualification table th,#online_qualification table td,#online_qualification table tr:last-child th:first-child{ display: block; width: 100%; padding: 15px;}
    #online_qualification table th{ border-bottom: none; }
    #online_qualification table th,#online_qualification table tr:last-child td:last-child,#online_qualification table tbody td{ padding: 15px; font-size: 14px;}
    
    .mokuji, .l-page section.default dl.mokuji{ width: 100%; padding: 30px 20px; margin:  30px auto 3rem; }
    #sub .mokuji dt{ font-size: 20px; margin-bottom: 25px;}
    #sub.column_css .mokuji dt{ margin-bottom: 0;}
    #sub .mokuji dd ul li{ font-size: 13px; letter-spacing: 0; padding-left:5px; margin-left: 30px;}
    #sub .mokuji dd ul li + li{ margin-top: 15px;}
    #sub .box_gray2{ padding: 20px;}
    
    .related_pages ul li{ width: 90%; padding-bottom: 5px;}
    .related_pages ul li img{ width: 65%; display: block; margin: 0 auto;}
    #sub .related_pages ul li p{ margin-top: 10px;}
    
    #sub .price_css table th,#sub .price_css table td{ width: 100%; display: block; font-size: 16px;}
    
    #sub .recommended_page{ margin: 3rem auto 2.5rem;}
    .recommended_page ul li{ width: 48%;}
    .recommended_page ul li a{ font-size: 13px;}
    #sub .sp_mb_none{ margin-bottom: 0;}
    #sub .sp_mt_none{ margin-top: 0;}
    
    .Introductory_wrap{ padding-bottom: 1.5rem;}
    .Introductory_wrap .point_list{ margin-bottom: .5rem; }
    .Introductory_wrap .flex_wrap{ padding: 0;}
    .Introductory_wrap .flex_wrap .img{ margin-bottom: 1.5rem;}
    .Introductory_wrap .flex_wrap .text{ padding: 0 1rem; }
    #sub .flex_wrap .price_css table th, #sub .flex_wrap .price_css table td{ padding: .5rem 1rem; font-size: 14px;}
    #sub .box_bordeaux.compact{ width: 90%; padding: 1.3rem 1rem; }
    #sub .box_bordeaux.compact p{ font-size: 13px; letter-spacing: 0; margin-top: 10px; }
    #sub .box_bordeaux.compact p span{ font-size: 13px;}
    
    
    .cta_wrap{ padding: 1rem 0 0; }
    .tell_link a{ padding-left: 2.5rem;}
    .yoyaku_wrap .point_list li{ width: 49%; font-size: 14px; margin: 5px 0 15px; }
    .yoyaku_wrap{ padding-top: 0rem;}
    #sub .yoyaku_wrap p { font-size: 14px; line-height: 1.7;}
    .yoyaku_wrap .point_text{ font-size: 17px;}
    .tell_link a{ padding-left: 2rem;}
    .cta_box .flex_wrap .img{ width: 100%; margin-bottom: 1rem; }
	.cta_wrap span.text{ top:-.8rem; font-size:2rem ; text-align: center; letter-spacing: 0; }
    .cta_box{ width: 100%; padding: 1.5rem 1rem 2.5rem; margin-bottom: 2rem; }
    #sub .cta_box h2{ font-size: 23px; line-height: 1.7; padding: 0; margin-bottom: 0; }
    .cta_box .flex_wrap{ display: block; margin: 1rem 0 0;}
    .cta_box .flex_wrap .text{ width: 100%; padding-left: 0; }
    #sub .cta_box .flex_wrap .text p{ font-size: 13px; line-height: 1.8; letter-spacing: .03rem; }
    #sub .cta_box .flex_wrap .img p{ top:1rem; left: 2.5rem; font-size: 1rem;}
    #sub .cta_box .flex_wrap .img p span{ padding: .2rem;}
    .cta_box .tell_link{ width: 90%;  margin: 1.5rem auto 1rem; padding-top: .8rem; padding-bottom: 0.2rem}
    .cta_box .tell_link span{ width: 100%; font-size: 13px; top:-.6rem; letter-spacing: .1rem; w}
    .cta_box .tell_link a{ font-size: 20px;}
    .cta_box .tell_link a:before{ width: 19px; height: 19px; top:23px; }
    .cta_box .yoyaku_wrap a.btn{ width: 90%; height: 47px; font-size: 17px; padding-left: 0; }
    .yoyaku_wrap a.btn:before{ width: 17px; height: 21px;}
    .yoyaku_wrap a.btn:after{ right: 2rem; }
    .cta_box.short{ width:100%; padding: 1.5rem; margin: 3rem auto 4rem; }
    .cta_box.short .yoyaku_wrap .point_text{ font-size: 15px; line-height: 1.5;}
    .cta_box.short .yoyaku_wrap a.btn{ font-size: 17px; letter-spacing: .04rem;}
    .short .yoyaku_wrap a.btn:after{ right: 1.5rem; top: 9px; background-size: 18px; }
    .cta_box.short .flex_wrap .img,.cta_box.short .flex_wrap .text{ width: 100%; margin-top: .5rem; }
    .cta_box.short .flex_wrap .img{ width: 100%; height: 150px;  margin: 0 auto .7rem;}
    .cta_box.short .flex_wrap .img img{ width: 100%; height: auto;}
    
    .flex-30_70 .text-box{ width: 100%; }
    .flex-30_70 .img-box{ width: 65%; margin: 0 auto 1rem;}
}

