@charset "utf-8";
/*==========================================
 下層ページ
===========================================*/
/*アクセス診療時間
----------------------------------------------*/
/*医院情報*/
table.tb_access th,
table.tb_access td {
	border: 1px solid #ddd;
}
table.tb_access td {
	padding: 20px 10px;
}
/*診療時間*/
table.access_hours thead th {
	font-weight: bold;
	background: #f7f7ee;
	border-bottom: none;
}
table.access_hours thead th:first-child {
	width: 25%;
}
table.access_hours th,
table.access_hours td {
	color: #333;
	font-size: 16px;
	text-align:center;
	vertical-align:middle;
	border-bottom: 1px solid #ddd;
	background: #fff;
	padding: 16px 0;
}
/*交通手段*/
#access .access_train {
	background: url(../img/low/ico-train.png) no-repeat left center;
	padding: 24px 0 16px 90px;
}
#access .access_car {
	background: url(../img/low/ico-car.png) no-repeat left center;
	padding: 24px 0 16px 90px;
}
@media screen and (min-width: 0px) and (max-width:768px) {
table.access_hours th,
table.access_hours td {
	font-size: 14px;
	padding: 10px 0;
}
}

/*料金表
----------------------------------------------*/
table.tb_price img{max-width: 200px;}
table.tb_price th, table.tb_price tr{border: 1px solid #ddd;}
table.tb_price th, table.tb_price td{padding: 10px;}
table.tb_price td .price{padding-left: 1em;}

/*院内設備
----------------------------------------------*/
.grid2.barrier-free>li{padding: 0 2%;}

/*よくある質問
----------------------------------------------*/
.qa_list li{
	margin: 12px auto;
	padding-left:1.3em;
	text-indent:-1.3em;
}
.qa_list li:before, .qa_area li:before, .qa_area h3:before{
	content: "Q.";
	color: #00b1da;
	font-weight: bold;
	margin-right: .3em;
}
.qa_area h3+p:before{
	content: "A.";
	color: #d94568;
	font-weight: bold;
	margin-right: .3em;
}

/*院長プロフィールなど
----------------------------------------------*/
.kome1, .kome1 {display: block; overflow: hidden;}
.kome1>.dt {width: 1em;}
.kome1>dt, .kome1>.dt,.kome1>.dt{display:block;float:left;}
.kome1>.dd, .kome1>.dd {display: block;overflow: hidden;}
.kome3, .kome3 {display: block; overflow: hidden;}
.kome3>.dt {width: 5em;}
.kome3>dt, .kome3>.dt,.kome3>.dt{display:block;float:left;}
.kome3>.dd, .kome3>.dd {display: block;overflow: hidden;}
.kome5, .kome5 {display: block; overflow: hidden;}
.kome5>.dt {width: 8em;}
.kome5>dt, .kome5>.dt,.kome5>.dt{display:block;float:left;}
.kome5>.dd, .kome5>.dd {display: block;overflow: hidden;}

/*==========================================
追加分
===========================================*/
/*内部リンクボタン*/
.linkBox {
	margin-top: 20px !important;
}
.list-arrow {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-block;
}
.list-arrow li {
	text-indent: -1em;
	padding-left: 1em;
	padding: 0 0 0 1em !important;
}
.list-arrow li:before {
	font-family: "FontAwesome";
	content: "\f138"; /* 空の要素作成 */
	display: inline-block; /* インラインブロックにする */
	border-radius: 50%; /* 要素を丸くする */
	position: relative;
	top: -1px;
	margin-right: 5px;
	padding-left: 1rem;
}
.list-arrow li a:hover{color:#997a45;}
.linkBox{margin-top:20px !important;}
.linkArea{padding:5px !important; background: #efefef;}
.link-arrow:before {
	font-family: "FontAwesome";
	content: "\f138"; /* 空の要素作成 */
	display: inline-block; /* インラインブロックにする */
	border-radius: 50%; /* 要素を丸くする */
	position: relative;
	top: -1px;
	margin-right: 5px;
}
/*ステップフローのCSS*/
ul.stepflow {
	border: none;
	margin: 1em 0.5em;
	padding: 0;
	list-style: none;
}
ul.stepflow > li:before, ol.stepflow > li:before {
	background-color:#ccc!important;
}
.stepflow li {
	position: relative;
	padding: 0 0 1.5em 1.8em;
}
.stepflow>li:before {
	content: "";
	width: 2px;
	background: #ccc;
	display: block;
	position: absolute;
	top: 28px;
	bottom: 0;
	left: 5px;
}
.stepflow-white {
	content: '';
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: solid 3px #fcc63d;
}
.stepflow-black {
	content: '';
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: solid 3px #fcc63d;
	background-color: #fff;
}
.stepflow_label {
	color: #ccc;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: .1rem;
}
.stepflow_title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 5px;
	color:#ae9373;
}
.stepflow_content {
	padding: 0 0 1.5em;
	border-bottom: dashed 1px #ccc;
}
/*ステップフローのCSSここまで*/

/*メリットデメリット*/
.merit {
	background:rgba(174,147,115,0.1);
	padding:10px 15px;
	display:block;
	border: 1px solid #ae9373;
	box-shadow: 1px 1px 0 #fff inset;
	margin-top: 6px;
}
.merit p{
	color:#75550d;
}
.demerit {
	background:rgba(170,170,170,0.1);
	padding:10px 15px;
	display:block;
	border: 1px solid #aaa;
	box-shadow: 1px 1px 0 #fff inset;
	margin-top: 6px;
}
.demerit p{
	color:#aaa;
}

/*画像右レイアウト30%*/
.img_right20p{padding: 20px 0; overflow:hidden;}
.img_right20p img, img_right20p .img_box{display:block; float:right; width:30%;}
.img_right20p .txt_box{float:left; width:68%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right20p img, img_right20p .img_box{float:none; width:100%; margin-bottom: 20px;}
.img_right20p .txt_box{float:none; width:100%; padding-bottom: 20px;}
}

/*チェックリスト*/
ul.list-check{
	list-style-position: inside;
	list-style-type : none;
	margin-left: 1em;
	padding-left: 1em;
	text-indent: -1em;
}
ul.list-check li:before {
	font-family: "FontAwesome";
	content: "\f14a"; /* 空の要素作成 */
	margin-right:.5rem;
	color:#c1272D;
}
.ico-arrowAccess{
	color: #ae9373;
}
.year dt{
	float: left;
}
.year dd{
	margin-left: 80px;
}

/*==========================================
他の医院
===========================================*/
.other-clinic{
	border-top: 3px solid #ae9373;
	padding-top: 80px;
}
@media screen and (min-width: 0px) and (max-width:480px) {
.other-clinic{
	padding-top: 30px;
}
}

/*==========================================
料金
===========================================*/
.price01,.price-outline{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.price01{
	border-bottom: 1px solid rgba(174,147,115,0.7);
	border-top: 1px solid rgba(174,147,115,0.7);
	align-items: center;
}
.price-outline{
	border-bottom: 1px solid #ddd;
	align-items: center;
	padding: 5px 0;
}
li.price_ttl{
	font-size: 18px;
	font-weight: 700;
	position: relative;
	padding: 5px 35px 5px;
	color:#3d1408;
	background:rgba(174,147,115,0.1);
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}
.price_ttlW50{
	width:50%;
	min-height: 55px;
}
.price_ttlW30{
	width:30%;
	min-height: 55px;
}
.price_ttlW100{
	width:100%;
}
.price_line{
	margin-top: -1px;
}
li.price_ttl:before{
	position: absolute;content: '';/*何も入れない*/
	display: inline-block;/*忘れずに！*/
	width: 20px;/*画像の幅*/
	height: 20px;/*画像の高さ*/
	background-image: url(../img/index/logo_h2.png);
	background-size: cover;
	vertical-align: middle;
	left : 0.5rem; /*左端からのアイコンまでの距離*/
	top: 10px;
	opacity: 0.9;
}
li.fee{
	margin-left: auto;
	text-align: right;
	font-weight: 700;
}
li.price_img{
	width: 15%;
	padding: 5px;
}
li.price_img img{
	filter: drop-shadow(2px 2px 2px rgba(160, 160, 160, 0.8));
}
li.outline-txt{
	font-weight: 500;
	margin-left:10px;
}
.outline-txtW300{
	width: 300px;
}
@media screen and (min-width: 0px) and (max-width:480px) {
li.price_ttl{
	font-size: 16px;
}
li.outline-txt{
	font-size:14px;
	padding: 5px;
}
li.price_img{
	width: 20%;
}
.price_ttlW50,.price_ttlW30 {
	width:100%;
	border-bottom: 1px solid rgba(174,147,115,0.7);
	min-height: 30px;
}
.outline-txtW300{
	width:100%;
}
}

/*==========================================
 img-layout
===========================================*/
/*画像左レイアウト300px*/
.img_left2{padding: 20px 0; overflow:hidden;}
.img_left2 img, .img_left2 .img_box{display:block; float:left; width:25%;}
.img_left2 .txt_box{ float:right; width:70%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_left2 img, .img_left2 .img_box{ float:none; margin: 0 auto;}
.img_left2 .txt_box{float:none; width:100%;}
}
/*画像右レイアウト300px*/
.img_right2{padding: 20px 0; overflow:hidden;}
.img_right2 img, img_right2 .img_box{display:block; float:right; width:25%;}
.img_right2 .txt_box{float:left; width:70%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right2 img, img_right2 .img_box{float:none; margin: 0 auto; width:100%;}
.img_right2 .txt_box{float:none; width:100%;}
}
/*画像左レイアウト200px*/
.img_left3{padding: 20px 0; overflow:hidden;}
.img_left3 img, .img_left3 .img_box{display:block; float:left; width:15%;}
.img_left3 .txt_box{ float:right; width:80%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_left3 img, .img_left3 .img_box{ float:none; margin: 0 auto;}
.img_left3 .txt_box{float:none; width:100%;}
}
/*画像右レイアウト200px*/
.img_right3{padding: 20px 0; overflow:hidden;}
.img_right3 img, img_right3 .img_box{display:block; float:right; width:15%;}
.img_right3 .txt_box{float:left; width:80%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right3 img, img_right3 .img_box{float:none; margin: 0 auto;}
.img_right3 .txt_box{float:none; width:100%;}
}
/*画像左レイアウト150px*/
.img_left4{padding: 20px 0; overflow:hidden;}
.img_left4 img, .img_left4 .img_box{display:block; float:left; width:10%;}
.img_left4 .txt_box{ float:right; width:85%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_left4 img, .img_left4 .img_box{ float:none; margin: 0 auto;}
.img_left4 .txt_box{float:none; width:100%;}
}
/*画像右レイアウト150px*/
.img_right4{padding: 20px 0; overflow:hidden;}
.img_right4 img, img_right4 .img_box{display:block; float:right; width:20%;}
.img_right4 .txt_box{float:left; width:75%; line-height: 1.8;}
@media screen and (min-width: 0px) and (max-width:768px) {
.img_right4 img, img_right4 .img_box{float:none; margin: 0 auto;}
.img_right4 .txt_box{float:none; width:100%;}
}
/* h3見出し */
.Text-Span {
	position: relative;
	z-index: 1;
}
.Text-Span:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -14px;
	width: 0;
	height: 4px;
	background: #37322f;
	z-index: -1;
	transition: all 0.8s;
}
.Text-Span.isActive:after {
	width: 100%;
}
.Text-Span-w {
	position: relative;
	z-index: 1;
}
.Text-Span-w:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -14px;
	width: 0;
	height: 4px;
	background: #fff;
	z-index: -1;
	transition: all 0.8s;
}
.Text-Span.isActive:after {
	width: 100%;
}

/*===アコーディオンメニュー===*/
.cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	color: #000;
	padding:3px 0;
}
.cp_actab input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.cp_actab label {
	font-weight: bold;
	line-height: 3;
	position: relative;
	display: block;
	padding: 0 2em 0 1em;
	cursor: pointer;
	margin: 0;
	background:rgba(222,218,215,0.8);
}
.cp_actab .cp_actab-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.35s;
	transition: max-height 0.35s;
	color: #333;
	background:rgba(222,218,215,0.2);
}
.cp_actab .cp_actab-content p {
	margin: 1em;
}
/* :checked */
.cp_actab input:checked ~ .cp_actab-content {
	max-height: 20em;
	border-left:1px solid rgba(222,218,215,0.8);
	border-right:1px solid rgba(222,218,215,0.8);
	border-bottom:1px solid rgba(222,218,215,0.8);
}
/* Icon */
.cp_actab label::after {
	line-height: 3;
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 3em;
	height: 3em;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
	text-align: center;
}
.cp_actab input[type=checkbox] + label::after {
	content: '+';
}
.cp_actab input[type=checkbox]:checked + label::after {
	transform: rotate(315deg);
}
@media screen and (max-width: 640px) {
.cp_actab label {
	line-height: 2;
	padding: .25em 2em .25em 1em;
}
.cp_actab label::after {
	line-height: 2;
	width: 2em;
	height: 2em;
}
}
/* staff */
.staffArea{
	display: flex;
	flex-wrap: wrap;
}
.staffPct{
	width: 28%;
	margin-right: 2%;
	text-align : center;
}
.staffPct img{
	margin:15px auto;padding:15px;background-repeat:no-repeat;background-position:left top,left top,right bottom,right bottom;background-size:40px 2px,2px 40px,40px 2px,2px 40px;background-image:linear-gradient(rgba(222,218,215,1),rgba(222,218,215,1)),linear-gradient(rgba(222,218,215,1),rgba(222,218,215,1)),linear-gradient(rgba(222,218,215,1),rgba(222,218,215,1)),linear-gradient(rgba(222,218,215,1),rgba(222,218,215,1));
}
.staffintro{
	width: 68%;
    margin: 5% 0 0 1%;
}
.staff-ttl{
	font-size:1.25rem;
	letter-spacing: .25rem;
	display: block;
}
.staffintro h3{
	font-size: 2rem;
	line-height: 1.1;
	border-bottom: transparent;
	padding: 0;
	margin: 0;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
	color:rgba(55,50,47,0.9);
	letter-spacing: .25rem;
}
.staff-name{
	color:rgba(55,50,47,0.7);
	font-size:.9rem;
	letter-spacing: .25rem;
}
.staffintro h4{
	font-size: 1.1rem;
	font-weight: 700;
	margin: 3% 0 0;
	border-left: transparent;
	padding: 0;
}
.staff-senmon{
	padding: 1rem .5rem;
	margin: 0;
	border-top: solid 1px rgba(55,50,47,0.3);
	border-bottom: solid 1px rgba(55,50,47,0.3);
}
.staff-senmon p {
	margin: 0; 
	padding: 0;
	font-size: 1.25rem;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.staffArea {
	flex-flow: column;
}
.staffPct {
	width: 98%;
	margin-right: 1%;
	margin-left: 1%;
}
.staffintro{
	width: 98%;
	margin: 2% 1% 1% 1%;
}
.staffPct img{
	max-width: 350px;
	width: 100%;
}
}
.staffintro-h4{
	font-size: 1.5rem !important;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: 700;
	margin: 3% 0 0;
	border-left: transparent;
	padding: 0;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.staffintro-h4{
	font-size: 1.1rem;
}
}
/*単独型歯科医師臨床研修プログラム*/
table.tb_mi {
	width:100%;
	border-right:#514246 solid 1px;
	border-collapse: collapse;
}
table.tb_mi thead th {
	background:#514246;
	color:#fff;
	padding:10px 15px;
	border-right:#fff solid 1px;
	border-bottom:#fff solid 1px;
}
table.tb_mi thead th:last-child {
	border-right:#514246 solid 1px;
}
table.tb_mi tbody th {
	background:#514246;
	color:#fff;
	padding:10px 15px;
	border-bottom:#fff solid 1px;
	vertical-align:top;
	text-align:left;
}
table.tb_mi tbody th.top {
	vertical-align:middle;
	text-align:center !important;
}
table.tb_mi tbody tr:last-child th {
	border-bottom:#514246 solid 1px;
}
table.tb_mi tbody td {
	background:#fff;
	padding:10px 15px;
	border-left:#514246 solid 1px;
	border-bottom:#514246 solid 1px;
	vertical-align:top;
	text-align:center;
}
.tb_mi15{
	width:15%;
}
.tb_mi70{
	width:70%;
}
.intern_mokuji {
	width: 100%;
	max-width: 800px;
	margin: 0 auto ;
}
.mi_clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.mi_clearfix:before {
	content: "";
	display: block;
	clear: both;
}
.mi_clearfix {
	display: block;
}
.intern_mokuji .intern_mokuji_list {
	padding: 0 20px 20px;
}
.intern_mokuji .intern_mokuji_list li {
	width: 50%;
	float: left;
}
.intern_mokuji .intern_mokuji_list li a {
	display: block;
	color: #222;
	margin-top: 10px;
}
.intern_mokuji .intern_mokuji_list li a:hover {
	color: #fc9356;
	-webkit-transition: all .6s;
	transition: all .6s;
}
@media screen and (min-width: 0px) and (max-width:768px) {
.intern_mokuji .intern_mokuji_list {
	float: none;
}
.intern_mokuji .intern_mokuji_list li {
	width: 100%;
	float: none;
}
}
.index_banner {
	text-align:center;
	margin-bottom:20px;
}
.low_banner {
	width:100%;
	text-align:center;
	margin-top:40px;
}
.low_banner img {
	width:100%;
	max-width:600px;
}
@media all and (min-width: 768px) {
.index_banner {
	margin-bottom:20px;
}
}