*{
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
    max-width: 100%;
    color: #555555;
}



h2{
    font-size: 1.6em;
    font-weight: 500;
    color: #184c3e;
    line-height: 70px;
}

h3{
    font-family: serif;
    font-size: 1.5em;
    margin-bottom: 20px;
	color: #157b60;
	text-align:center;
}
.br_sp{
    display: none;
}

.br_tbl{
    display: none;
}

.br_i5{
    display: none;
}

/*-------------------- ヘッダーフッター --------------------*/


 a { text-decoration: none; -webkit-transition: 0.6s;  -o-transition: 0.6s;  transition: 0.6s;}

a:hover {  opacity: 0.6;  text-decoration: none;}
    
a[href^="tel:"]:hover {  opacity: 1;}


/*-------------------- メインビジュアル --------------------*/


main{
    margin-top: 120px;
}

#main_visual{
    height: 34vw;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

#main_visual .main_title{
    position: absolute;
    /*親要素を起点に上から50%*//*親要素を起点に左から50%*/
    right: 0;
    bottom: 0;
    /*要素の大きさの半分ずつを戻す*/
   /* transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);*/
	background: #fff;
    min-width: 33%;
    padding: 80px 50px 50px ;
}

#main_visual .main_title h1{
    line-height: 1.5;
	font-size: 1.8em;
}
#main_visual .main_title p{
    color: #6dc294;
    line-height: 1.5;
	font-size: 0.9em;
	font-weight: 600;
}


.section_title{
    text-align: center;
    padding: 50px 0;
}
.section_title p{
    color: #6dc294;
    line-height: 1.5;
	font-size: 0.9em;
	font-weight: 600;
}
.container .back_p1{
    padding: 50px 0;
}

.container .back_p2{
    background-color: #f8f8f8;
    padding: 100px 0;
}
.text_c{
	text-align:center;
	padding:0 35px;
	max-width: 800px;
    margin: 0 auto;
}
.h03{
	margin-top: 30px;
	text-align: center;
	border-bottom: 1px solid #79b363;
	}

/*-------------------- クリニック --------------------*/




.mainv_about{
    background-image: url("../images/top_about.jpg") ;
}


.container .pa_top{
    padding-top: 30px !important;
}

.container .section_wrapper{
    background-color: #fff;
    border-radius: 15px;
    width: 100%;
	max-width: 1200px;
    margin: 0 auto;
    padding:40px 50px;
}
.container .section_wrapper.bg_gray{
	background-color: #f8f8f8;
}

.waku{
    border: solid 2px #f2f2f2;
    
}

.container .section_title .mini{
    color: #6dc294;
    font-size: 0.9em;
	line-height:0;
}

.container .section_wrapper .section_a1{
    display: flex;
    justify-content: center;
    max-width: 1100px;
/*    margin-bottom: 30px;*/
}

.container .section_wrapper .section_a1 .image{
    flex: 1;
    padding-right: 20px;
}


.container .section_wrapper .section_a1 .txt{
    flex: 1;
    max-width: 550px;
    padding-left: 20px;
}
.container .section_wrapper .section_a1 .txt img{
    text-align: center;
    width: 100px;
    margin: 0 auto;
    display: block;
}

.container .section_wrapper .section_a1r{
    display: flex;
    justify-content:space-between;
    max-width: 1100px;
}
.container .section_wrapper .section_a1r:first-of-type{
	margin-top:100px;
}

.container .section_wrapper .section_a1r .image{
    flex: 1;
    padding-left: 20px;
}

.container .section_wrapper .section_a1r .txt{
    flex: 1;
    max-width: 550px;
    padding-right: 20px;
}
.container .section_wrapper .section_a1r .txt img{
    text-align: center;
    width: 100px;
    margin: 0 auto;
    display: block;
}
.container .section_wrapper .section_a1r .c3box{
    width: 30%;
}



.container .section_wrapper .section_a2{
    margin: auto;
/*    width: 100%;*/
    max-width: 1100px;
}


.container .section_wrapper .section_a2 .txt{
    max-width: 800px;
    padding-right: 20px;
}
.container .section_wrapper .section_a2 .txt .name{
	text-align:right;
}
.container .section_wrapper .section_a2 .txt .name span{
	color:#34a587;
	font-size:0.8em;
}

.container .section_wrapper .section_a2 .image{
    padding-left: 20px;
}

.container .section_wrapper .section_a2 img{
    border: solid 1.5px #f8f8f8;
   
}

.container .section_wrapper .section_a2 .txt .greeting{
    margin: 20px 0;
}

.container .section_wrapper .section_a2 .history, .history_switch{
    display: flex;
    flex-direction: column;
    background-color: #e6f6ec;
    padding: 20px;
}

.container .section_wrapper .section_a2 .history ul, .history_switch ul{
    list-style: none;
    font-size: 0.9em;
    margin-bottom: 15px;
}

.container .section_wrapper .section_a2 .history .name, .history_switch .name{
    align-self: flex-end;
    font-family: serif;
    font-size: 1.2em;
}

.container .section_wrapper .section_a2 .history_switch{
    display: none;
}
.container .leadbox{
	border: 2px dotted #ccc;
    margin: 30px 0;
    padding: 20px;
	text-align: center;
}
.container .historybox{
	border: 2px dotted #ccc;
    margin: 30px 0;
    padding: 20px;
	text-align: left;
}
.container .historybox .name{
	text-indent: 25px;
    margin-bottom: 10px;
	}
.container .historybox .name span{
	background: #34a587;
	padding: 3px 8px;
    color: #fff;
	}
.container .historybox ul{
	display: flex;
    flex-wrap: wrap;
}
.container .historybox ul li{
	list-style-type:disc;
	text-indent: 30px;
	font-size: 0.8em;
}
.container .conts h3{
    text-align: center;
}

.container .point_bkg_pa{
    background-position: center center;
    background-size: contain;
    background-image: url(../images/_point_ari.png);
    background-repeat: no-repeat;
}

/*.container .point{
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2;
}

.container .point ul li,.point >p{
    list-style: none;
    text-align: center;
    line-height: 3;
    font-weight: 600;
    color: #105d07;
}
*/
.container .section_wrapper_2{
    border: solid 2px #f2f2f2;
    background-color: #afdbc5;
    border-radius: 15px;
    max-width: 1130px;
    margin: 0 auto;
    padding:0 50px;
}

.container .section_b1 {
    max-width: 1100px;
    margin: auto;
    background-color:;
}

.container .section_b1 h3{
    background-color: #fff;
    text-align: center;
    margin: 10px 0;
    padding: 10px;
}

.container .section_b1 p{
    width: 800px;
    margin: auto;
    text-align: center;
}

.container .section_b1 .image{
    width: 800px;
    margin: auto;
}

.container .section_b1 .image_switch{
    display: none;
}






/*-------------------- 診療内容 --------------------*/
.mainv_medical{
    background-image: url("../images/top_medical.png");
}

.container .section_wrapper .section_a2 .inner{
    display: flex;
    justify-content: space-between;
}

.container .back_p2 >p {
    text-align: center;
    font-family: serif;
    font-size: 1.2em;
    color: #333333;
    margin-bottom: 30px;
}

.container .wrapper_box{
    width: 100%;
    margin: auto;
}

.container .col_box,.container .col_box2{
    display: flex;
	justify-content: space-between;
}


.container .wrapper_box .box{
    width: 48%;
    height: ;
    padding: 50px;
    border: 3px solid #b2d2a3;
    border-radius: 15px;
	margin-bottom:4%;
	
}
.container .wrapper_box .box img{
	text-align: center;
    width: 100px;
    margin: 0 auto;
    display: block;
}

.container .wrapper_box .box2{
    width: 48%;
    height: ;
    padding: 50px;
    border-radius: 15px;
	border: 3px solid #b2d2a3;
	margin-bottom:4%;
	
}
.container .wrapper_box .box2 img{
	text-align: center;
    width: 100px;
    margin: 0 auto;
    display: block;
}

.wrapper_box .box_p{
    padding-top: 10px;
}

.container .wrapper_box .box >h3, .box2 >h3{
    text-align: center;
   
}





.container .back_p3{
    background-color: #e6f6ec;
    padding: 60px 15px;
}


.container .conts .point_bkg_pn{
    background-position: center center;
    background-size: contain;
    background-image: url(../images/_point_nashi.png);
    background-repeat: no-repeat;
}

.container .section_wrapper .pa_botm{
    padding-bottom: 40px;
}

.a_set{
    padding-bottom: 80px;
}


#care01, #care02, #care03, #care04, #care05, #care06 { margin-top: -120px; padding-top:120px; }


/*-------------------- 院内紹介 --------------------*/


.mainv_medical{
    background-image: url("../images/top_floor.png");
}

.container .section_wrapper .section_a1 .image2{
    flex: 1;
    max-width: 550px;
    padding-left: 20px;
}

.container .section_wrapper .fl_img_set{
    padding-bottom: 40px;
}

.container .section_wrapper .image_wide{
    margin-bottom: 40px;
}

.container .section_wrapper .message{
    line-height: 2.5;
    width: 700px;
    margin: 0 auto;
    text-align: center;
}




/*-------------------- アクセス --------------------*/

.pa_botm2{
    padding-bottom: 5px;
}

.mainv_access{
    background-image: url("../images/top_time.png");
}


.container .section_wrapper .sections{
    max-width: 1100px;
}

.container .section_wrapper .sections .table_set{
    margin: 0 auto 40px;
}

.container .section_wrapper .sections .table_set >p{
    text-align: center;
}

.container .section_wrapper .sections .table_wrapper{
    border-collapse: collapse;
    margin: 0 auto 40px;
	table-layout: fixed;
	width: 100%;
}
.container .section_wrapper .sections .table_wrapper th:first-child {
  width: 30%;
}
.container .section_wrapper .sections .table_wrapper th:first-child {
  width: 30%;
}
/* 
.container .section_wrapper .sections .table_set .table_wrapper  th,td{
    border: 1px gray solid;
} */



.container .section_wrapper .sections .btn_box{
    width: 180px;
    margin: auto;
}

.container .section_wrapper .sections .btn{
    color: #fff;
    background-color: #00442c;
    padding: 15px;
    border-radius: 50px;
    font-size: 1em;
    width: 180px;
    border: none;
}

.container .section_wrapper .sections .btn .fas{
    padding-right: 10px;
    color: #fff;
}

.container .section_wrapper .sections .set_wrapper{
    display: flex;
    max-width: 1100px;
    margin: 40px 0;
}

.container .section_wrapper .sections .set_c1{
    padding-right: 20px;
}

.container .section_wrapper .sections .guide_wrapper{
    margin-left: 20px;
    padding: 30px 30px;
    max-width: 550px;
    border-radius: 20px;
}

.sections .guide{
    display: flex;
}
.sections .guide p{
	line-height:1.5;
	
}
.guide_wrapper .line{
    border: dashed 1px #fff;
    margin: 20px 0 ;
}


.sections .guide .fas{
    color: #318c6e;
    
}

.sections .guide .txt{
    padding-left: 20px;
}


.sections .guide .txt .way{
    font-weight: 600;
    color: #318c6e;
    padding-bottom: 5px;
}

.section_wrapper .sections .map_link {
    text-align: center;
    margin: 30px 0 20px;
}

.section_wrapper .sections .map_link a{
    font-weight: 600;
    color: #105d07;
    padding: 15px;
}
#m_hours{
	margin-bottom:40px;
}

#m_hours .nest-schedule-table{
width: 100%;
border-collapse: collapse;
border: solid #34a587;
border-width: 1px;
table-layout: fixed;
}
#m_hours .nest-schedule-table tr th,
#m_hours .nest-schedule-table tr td{
padding: 1.5em 0.5em;
text-align: center;
vertical-align: middle;
border: solid #34a587;
border-width: 1px;
}
#m_hours .nest-schedule-table tr th{
background: #f8f8f8;
color: #66bb6a;
font-weight: 600;
}
#m_hours .nest-schedule-table tr th:first-child {
  width: 30%;
}

#m_hours .am td, #m_hours .pm td {
	font-weight:600;
	color:#0a6f4b;   
}



