.container > *:first-child,
.container .side-img .content > *:first-child{ margin-top: 0 !important; }
.container > *:last-child,
.container .side-img .content > *:last-child{ margin-bottom: 0 !important; }

h1,dl.number_list dt::before{font-family: source-han-serif-japanese, serif; font-weight:400;}

header{ position:relative;} 
.pankuzu{ width:1000px; margin:10px auto 0; display: flex;}
.pankuzu li{ position:relative; display: inline-block; font-size:12px; border-bottom:#F1EBE5 1px solid; margin-right:30px; transition: .5s;}
.pankuzu li:not(:last-of-type):after{ position:absolute; top:0; right:-30px; content: '〉'; }
.pankuzu li:hover{ border-color:#554B4F;}

.sub_mv_01,.sub_mv_02,.sub_mv_03,.sub_mv_04,.sub_mv_05,.sub_mv_06,.bruxism,.caries,.denture,.engage,.esthetic,.kids,.perio,.prevention,.root,.whitening,.wisdom,.mail, .recruit
{ width:100%; height:400px; overflow:hidden;  position:relative; background:url(../images/sub_mv/001.jpg) no-repeat center/cover;}
.sub_mv_02{ background-image:url(../images/sub_mv/002.jpg);}
.sub_mv_03{ background-image:url(../images/sub_mv/003.jpg);}
.sub_mv_04{ background-image:url(../images/sub_mv/004.jpg);}
.sub_mv_05{ background-image:url(../images/sub_mv/005.jpg);}
.sub_mv_06{ background-image:url(../images/sub_mv/006.jpg);}
.caries{ background-image:url(../images/sub_mv/caries.jpg);}
.denture{ background-image:url(../images/sub_mv/denture.jpg);}
.engage{ background-image:url(../images/sub_mv/engage.jpg);}
.esthetic{ background-image:url(../images/sub_mv/esthetic.jpg);}
.bruxism{ background-image:url(../images/sub_mv/bruxism.jpg);}
.kids{ background-image:url(../images/sub_mv/kids.jpg);}
.perio{ background-image:url(../images/sub_mv/perio.jpg);}
.prevention{ background-image:url(../images/sub_mv/prevention.jpg);}
.root{ background-image:url(../images/sub_mv/root.jpg);}
.whitening{ background-image:url(../images/sub_mv/whitening.jpg);}
.wisdom{ background-image:url(../images/sub_mv/wisdom.jpg);}
.mail{ background-image:url("../images/sub_mv/mail.jpg");}
.recruit{ background-image:url("../images/sub_mv/recruit.jpg");}

.container_wrap{padding:70px 0 200px;}
.container_wrap.post{padding:70px 0 70px;}
.container{ width:1000px; margin:0 auto; padding:0 100px; overflow: hidden;}
.container + .container{ margin-top:100px;}
.hover{ border-bottom:#F1EBE7 1px solid;}
.hover:hover{ border-bottom-color:#554B4F;}

h1{ position:absolute; top: 45%; left: 50%; transform: translateX(-50%); font-size:40px; line-height:1; text-align:center;}
h1 span{ font-size:20px; line-height:1;}
.container h2{ font-size:25px; font-weight:800; border-radius:10px; background:#DDCDBE; padding:14px 0 11px 18px; margin:60px auto 45px; text-align:center;}
.container h3{ font-size:24px; font-weight:800; margin:35px 0 15px; line-height:1.5; border-bottom:#554B4F 1px solid; padding-bottom:5px; }
.container h3 span{ font-size:45px; color:#518BCC;}
.container h4{ position:relative; font-size:20px; font-weight:800; padding-left:25px; margin:30px 0 5px; line-height:1.6;}
.container h4:before{ position:absolute; top: 53%; transform: translateY(-50%); left:0; content:""; width:14px; height:14px; background:#554B4F;}
.container h5{ position:relative; font-size:16px; font-weight:800; color:#554B4F; margin:30px 0 10px 20px; line-height:1; padding-left:20px;}
.container h5:before{ position:absolute; top: 50%; transform: translateY(-50%); left:0; content:"●"; color:#BB9B7D;}
.container h5 + p,.container h5 + p + p,.container h5 + p + p + p{ margin-left:20px;}

.container p{ margin-bottom: 1em; line-height:1.9; }
.container strong{ color:#518BCC; font-weight:800;}
.container em{ font-weight:800;}


.container .side-img .btn{ margin-left:0; margin-right:0;}
.container .side-img.img_right,.container .side-img.img_left{ position:relative; margin: 40px 0 60px; }
.container .side-img.img_left .content{ margin-left:auto;}
.container .side-img .content{ width:350px; min-height:250px;}
.container .side-img.img_left .img{ position:absolute; top:0; left:0; width:400px; }
.container .side-img.img_right .img{ position:absolute; top:0; right:0; width:400px; }
.container .side-img .img img{ display: block; width: 100%; }
.container .side-img + p{margin-top:-25px;}

.container table{ width:100%; margin:15px 0 60px; }
.container table.fixed{ table-layout: fixed; }
.container table th,
.container table td{ letter-spacing:0.5px; box-sizing:border-box; padding:9.5px 15px; border-bottom:#554B4F 1px solid;  border-top:#554B4F 1px solid; font-size: 15px; vertical-align: middle; }
.container table th{ width:400px; border-right:none; background:#F8F5F2; letter-spacing:0;}
.container table th.center{text-align:center;}

.white_wrap{ position:relative; border-radius:40px; padding:75px 100px; z-index:0; border-radius:40px;}
.white_wrap:before{ position:absolute; top:0; left:0; background:#F8F5F2; border-radius:40px; content:""; width:100%; height:100%; z-index:-1;}
.white_wrap dt{ font-size:20px; font-weight:800; margin-bottom:10px;}

.list_wrap{ position:relative; min-height:219px; margin:50px 0 125px;}
.list_wrap:after{ position:absolute; bottom:-87px; left: 50%; transform: translateX(-50%); content:""; background:url(../images/sub/list_bg.png) no-repeat center/800px 25px; width:800px; height:25px;}
.list_wrap:last-child:after{ content:none;}
.list_wrap + .list_wrap{ margin-top:50px;}
.list_wrap .img_box{ width:350px; height:220px; display:block;}
.list_wrap .img_box img{ width:100%; height:auto;}
.list_wrap .left_img{ position:absolute; top:0; left:0;}
.list_wrap .text_box{ width:400px;}
.list_wrap .right{ margin-left:auto;}
.list_wrap dt{ position:relative; font-size:20px; font-weight:800; margin:0 0 40px 0; padding:12px 0 0 75px;}
.list_wrap dt span{ position:absolute; top:0; left:0; font-size:40px; line-height:1; width:60px; height:60px; border:#554B4F 1px solid; border-radius:90px; text-align:center; letter-spacing:0; padding:7px 0 0;}

dl.number_list{counter-reset: number; margin:50px 0 80px;}
dl.number_list dt{position:relative; padding:15px 0 5px 85px; font-size:20px; font-weight:800; }
dl.number_list dt::before{ position:absolute; top:0; left:0px; counter-increment: number; content:counter(number); font-size:40px; font-weight:400;  width:60px; height:55px; border:#554B4F 1px solid; border-radius:90px; text-align:center; line-height:1; padding-bottom:5px; letter-spacing:0; display:flex; justify-content:center; align-items:center;}
dl.number_list dd{ padding-left:85px; line-height:2;}
dl.number_list dd + dd{ margin-bottom:1em;}
dl.number_list dd + dt{ margin-top:70px;}

.main_list{ width:710px; margin:0 auto;}
.main_list dt{ position:relative; font-size:20px; font-weight:700; margin-bottom:10px; padding-left:50px;}
.main_list dt:before{ position:absolute; top: 50%; transform: translateY(-50%); left:0; content:"●"; font-size:}
.main_list dd{margin-bottom:40px; padding-left:50px; letter-spacing:0.05em; line-height:2;}
.main_list dd:last-child{ margin-bottom:0;}

.container table.price th{
		padding:10px 15px; text-align: center;
	}
.container table.price td{
		width: 25%;
	}
.container table.price td.font_08{
		font-size: 0.8em;
	}
.container.price table th {width: 50%;}
.container.price table td {width: 25%;}
table.fix.price.sp-break.td-gray.wi50 th {
    width: 50%;
}
table.fix.price.sp-break.td-gray.wi50 td {
    width: 50%;
}
table.fix.price.sp-break.td-gray.wi50 td.wi25 {
    width: 25%;
}

/* sub ページ */

.container .btn{ margin:30px auto 0;}

.staff{ overflow:visible;}
.staff .side-img.img_left{ margin-bottom:20px;}
.staff .side-img.img_left .img{ position:absolute; top:-150px; left:0; width:320px;}
.staff .side-img .content{ width:445px; min-height:auto;}
.staff .side-img .content h2{ padding:0; margin:30px 0 0; background:none; font-size:24px; text-align:left;}
.staff .side-img .content h2 span{ font-size:15px; font-weight:300;}
.staff .side-img .content .text{ font-size:24px; letter-spacing:0.02em;}
.staff h4{ font-size:12px; border-top:#554B4F 1px solid; border-bottom:#554B4F 1px solid; padding:10px 0; margin-bottom:10px;}
.staff h4:before{ content:none;}
.staff h4 + ul li{ font-size:12px; line-height:2;}

.container .box50{ display:flex; justify-content:space-between; flex-wrap:wrap;}
.container .box50 div{width:calc(50% - 15px);}
.container .box50 div img{ margin-bottom:20px;}

.container ul.list li{ position:relative; padding-left:20px;}
.container ul.list li:before{ position:absolute; top:0; left:0; content:"・";}

.container table.access_table{ width:70%; margin:30px auto 50px;}
.container table.access_table th{ background:#F1EBE5;}
.container table.access_table td{ padding:0 22px; text-align:center;}

.container .map_img,#corona img{ width:450px; margin:30px auto; display:block;}

.treatment{ padding:0;}
.treatment ul.menu{ margin:0;}

.container .point_text{ font-size:24px; font-weight:800; text-align:center;}
.container .clinic_logo{ width:200px; margin:30px auto; display:block;}
.clinic .side-img.img_right{ margin-bottom:40px;}
.clinic .side-img.img_right .img{ width:350px;}
.clinic .side-img .content{ width:400px;}

.caries_css .list_wrap .img_box{ width:250px; height:auto;}
.caries_css .list_wrap .text_box{ width:500px;}
h1.cat {
    position: initial;
    top: 0;
    left: 0;
    transform: initial;
    font-size: 40px;
    line-height: 2;
    margin: 0 auto;
    text-align: center;
	margin-bottom: 30px;
}


#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
}

table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}

table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}

table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}

.container p.contact{
	margin-bottom: 3em;
    line-height: 1.9;
    margin-top: 2em;
    text-align: center;
}


/*20211214 追加*/
.container table.recruit__table{
	 border-collapse: collapse;
}
.container table.recruit__table th{
	background-color: #F8F5F2;
    width: 50%;
    text-align: center;
    padding: 15px;
	font-weight: bold;
}
.container table.recruit__table td{
	padding: 15px;
	width: 50%;
	text-align: left;
}




/*20211214 ここまで*/