@charset "UTF-8";
/* CSS Document */

@media screen and (max-width:599px){
	
	.pc{display: none;}
	.sp{display: initial}
	
	.pc_fix > p{margin-right: 5px;}
	.pc_fix > .tel{font-size: 1rem;}
	.pc_fix > .tel a{display: block;padding: 15px 20px 10px;}
	.pc_fix > .tel a img{display: block;margin: 0 auto 8px;}
	
	header .mv{border-width: 28px 0 0;height: 300px;}
	header .logo{width: calc(100% - 50px);}
	header .logo img{width:100%;}
	
	nav .gnav .logo{margin-bottom: 30px;}
	nav .gnav .logo img{width: 80vw;}
	nav .gnav ul{padding: 0 25px;margin-bottom: 30px;}
	nav .gnav li{flex-basis: calc(100%/2 - 1px);margin-bottom: 2px;}
	nav .gnav li a{padding: 20px;}
	nav input:checked ~ label span:after{width: 50px;}

	footer{display: flex;flex-wrap: wrap;}
	footer > *{flex-basis: 100%;}
	footer .foot ul{display: table;}
	
	footer .tit{order: 0;}
	footer .logo{order: 1;}
	footer .map{order: 2;}
	footer .wrap_l{order: 3;}
	footer .foot{order: 4;}
	
	footer .logo{text-align: left;margin-bottom: 20px;padding: 0 25px;}
	footer .logo img[src*="_c"]{display: none;}
	footer .logo img[src*="_l"]{display: inline;}
	footer .wrap_l{flex-wrap: wrap;padding: 0 25px;}
	footer .wrap_l .left,footer .wrap_l .right{flex-basis: 100%;}
	footer .map {padding: 0 20px;margin: 0;margin-bottom: 20px;}
	footer .map iframe{height: 300px;}
	footer .foot{display: block; text-align: center; margin-left: 0;padding: 20px 25px;}
	
	footer article .left p{padding-left: 25px;}
	footer article .left p span{margin-left: -25px;}
	footer article .left p:nth-child(1),footer article .left p:nth-child(2){background: url("../img/common/line_dot.png")repeat-x bottom;background-size: 6px;padding-bottom: 10px;margin-bottom: 10px;}
	footer .wrap_l .left{margin-bottom: 20px;}
	footer .right .yoyaku{width: 100%;}
	footer .foot .copy{font-size: 0.8em;padding: 30px 0px 0px;}
	
	.pankuzu{padding: 40px 25px;}
	
	#sub main{width: 100%;padding:  0 25px;box-sizing: border-box;}
	#sub h2{padding: 20px;font-size: 1.714em;}
	
	#sub .h3area{padding: 20px;}
	
	#sub .block{flex-wrap: wrap;margin: 20px 0px;}
	
	#sub .block > *{flex-basis: 100%;}
	#sub .block > *:first-of-type{margin-right: 0;}
	
	#sub .block .photo{order: 0;margin-bottom: 30px;}
	#sub .block .txt{order: 1;}
	
	#sub .block .photo img{width: 100%;}
	
	#sub .txt_column{column-count: auto;}
	
	/* staff---------------------------------------------------- */
	#sub .staff_box{display: block;}
	#sub .staff_box .photo{width: 75vw;height: 75vw;overflow: hidden;text-align: center;margin:0 auto 30px;}
	#sub .staff_box .photo img{width: 100%;}
	#sub .staff_box .career{background: #f2f2f2;padding: 20px;margin-top: 20px;}

    ul.flow li {
    font-size: inherit;
    padding-left: 16vw;
    min-height: 17.3333vw;
    margin-bottom: 9.3333vw;
}
    
    ul.flow li:before {
    font-size: 5.8666vw;
    width: 10.6666vw;
    height: 17.3333vw;
}
    
    .right-img {
    flex-wrap: wrap;
    margin: 8vw 0;
}
    
    .right-img .left {
    width: 100%;
    order: 2;
}
    
    ul.flow .right-img .left p {
    padding-right: 0;
}
    
    .right-img .right {
    width: 100%;
        order: 1;
    margin-bottom: 6vw;
}
    
    .treatment{
        width: 100%;
    }
    
    .flex-clinic-double {flex-basis: calc(100%/1);}
    .harf_box{width: 100%;}
    .merit_list li{font-size: 1.1em;}
    section,.wrap_s,.wrap_l{width: 100%;}
    
    .treatment ul li a {width: 150px;height: 160px;display: flex;flex-direction: column;justify-content: center;border-radius: 100px;}
    
    .six-w{font-weight: normal;width: 60%!important;}
    #sub table th, #sub table td{padding: 10px;}
    
    .wrap_t{width: 100%;}
    
    
    header h1 {
    color: #fff;
    font-size: 1.714em;
    letter-spacing: 0.1em;
    font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
}
    
    .btn-sub{width: 100%;padding: 20px 0px;margin: 20px 0px;}
    
    #sub h3 {
    font-size: 1.68em;
    font-weight: normal;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
}
    
    header h1 span {
    display: block;
    font-size: 2em;
    font-weight: normal;
    font-family: copperplate, serif;
    letter-spacing: normal;
    line-height: 1.1;
}
    
    ol.check li {
    position: relative;
    line-height: 30px;
    margin: 7px 0 10px 30px;
    font-weight: bold;
    font-size: 1.1em;
    border-bottom: solid 1px #282828;
    padding: 10px 20px;
}
    
    
   
    
}

@media screen and (max-width:360px){
	nav .gnav li a{padding: 10px;}
	.btn{width: 250px;}
	footer .right .tel{font-size: 10.5vw;}
	#sub table th, #sub table td{padding: 10px;}
	
	#sub .staff_box .career table tr,#sub .staff_box .career table th{display: block;}
	#sub .staff_box .career table td{padding: 0;}
}