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

@media screen and (max-width:768px){
	/* mv---------------------------- */
	.mv_wrap .catch_text1{ font-size:24px; line-height:1.5; letter-spacing:0.13em; padding-right:10px; margin:45px 0 10px; text-align:right;}
	.mv_wrap .catch_text2{ font-size:15px; line-height:1.9; letter-spacing: 0.1em; padding-right:10px; margin:0 0 40px; text-align:right;}
	.mv_wrap{ padding:70px 0 10px;}
	.mv{ width:calc(100% - 20px); height:250px; border-radius: 10px 0 0 10px;}
	.mv img:not([src*="sp"]){display: none;}
	.mv img[src*="sp"]{display: block; }
	.mv .catch_text{ text-align:center; bottom:150px; left:0; right:0; margin:auto; font-size:28px; line-height:1.2;}
	.mv .catch_text span{ line-height:1.6; display:inline-block; margin-top:5px; text-align:center; letter-spacing:0;}

	.swiper-pagination{display:none;}
	.slide-img img{ display: block; width: calc(100% + 35px); max-width: none;}
	
	.info{width:100%; padding:0 20px; display:block; margin:0;}
	.info img{width:100%;}
	.info ul{ width:calc(100% - 50px); margin:15px auto; padding-left:20px;}
	.info ul:before{ left:0; width:1px; height:67.5px;}

	/* news---------------------------- */
	.news{width:100%; margin:35px 0 45px; padding:0 10px;}
	.news h2{ margin-bottom:15px;}
	.news dl{ width:100%; height:162.5px; padding:20px 0 0; display:block;}
	.news dl span{ top: 60%; transform: translateY(-50%); right:auto; left:50%; transform: translateX(-50%);}
	.news dt{margin-right:0;}
	.news dd{display: block; width: 310px; letter-spacing:0.02em; margin:0 auto; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}

	/* dr---------------------------- */
	.dr {padding:50px 0 60px; background-repeat:no-repeat; background-size:100% 100%; background-position:0 0;}
	.dr h2{ font-size:28px; margin:0 0 40px; padding:0 20px; line-height:1.5; letter-spacing:0.01em;}
	.dr h3{line-height:1.3; padding:0 20px; margin-bottom:5px;}
	.dr h4{ font-size:20px; margin-bottom:30px;}
	.dr p.text{ padding:0 20px; margin-bottom:35px;}
	.dr p{font-size:15px; line-height:1.95;}
	.dr .img_wrap{ margin-bottom:70px;}
	.dr .flex_wrap{ width:100%; margin:0 auto;}
	.dr .flex_wrap .box1{width:100%; margin-right:auto;}
	.dr .flex_wrap .box1 img{ width:calc(100% - 20px); margin:0 0 15px auto; border-radius:10px 0 0 10px;}
	.dr .flex_wrap .box1 p{padding:0 20px;}
	.dr .btn{ width:calc(100% - 40px); margin:30px auto 0;}
	.dr .box2{width:calc(100% - 40px); margin:0 auto; padding:50px 0 40px;}
	.dr .flex_wrap2{ width:100%; margin:0 auto; display:block;}
	.dr .flex_wrap2 .text_box{width:calc(100% - 40px); margin:0 auto 30px;}
	.dr .flex_wrap2 .img_box{width:calc(100% - 40px); margin:0 auto;}

	/* clinic---------------------------- */
	.clinic{ padding:60px 20px 10px;}
	.clinic h2{font-size:30px; margin:0 0 30px;}
	.clinic .box1{ width:100%; margin:0 0 50px; display:block;}
	.clinic .box1 p.text{font-size:22px; margin:0 0 40px;}
	.clinic .box1 .text_box{ width:100%; height:auto;}
	.clinic .box1 img{width:100%; margin-bottom:25px;}
	.clinic dl{ padding:18px 0 20px;}
	.clinic .btn{position:inherit; margin:20px 0 0;}
	.clinic .box1 p.text:before{content:none;}
	.clinic .box1 p.text:after{ left:210px; width:1000px;}
	.clinic .box1 p.text2:after{ left:167px; width:1000px;}

	/* tour---------------------------- */
	.tour{width:100%; height:125px; overflow:hidden;}
	.loop-slide li{width:235px !important; height:125px;}
    
    /* thoughts---------------------------- */
	.thoughts{ padding:50px 0 50px;}
	.thoughts p.text{ font-size:16px; margin:0 0 17vw;}
	.thoughts p.text:after{ top:40px; height:100px;}
	.thoughts .wrap{ width:100%; height:auto; padding:0 0 70px; background:#5B5557 no-repeat 140% 50%; background-size:238px 458px;}
	.thoughts .flex_wrap{ width:100%; margin:0; display:block;}
	.thoughts .box1{ width:100%; height:auto; padding-top:80px;}
	.thoughts .box1 p{ font-size:30px; text-align:center; margin-bottom:50px; text-shadow: 0px 0px 10px #e6cbd0;}
	.thoughts .box2{ width:100%; height:auto; padding:0 33px;}
    .thoughts .box2 h3{font-size: 6vw;}
	.thoughts .box2 p{ font-size:15px; letter-spacing:0.02em; line-height:1.8; margin-bottom:30px;}
	.thoughts .btn{ margin:70px auto 0;}

}
@media screen and (max-width:599px){
	.concept{ width:100%; margin:-20px auto 60px; padding:87vw 20px 0; }
	.concept .img_box{ bottom:auto; top:-90vw; left: 50%; transform: translateX(-50%); width:100%;}
}
@media screen and (max-width:320px){
	.treatment ul li{ font-size:12px; height: 134px;}
	.mv_wrap .catch_text2{ font-size:13px;}
	.info ul{ margin:10px auto 0;}
	.info ul li,.news dd,.concept .text_box p,.treatment .box p{font-size:13px;}
	.infection h2,.about .text_box p{ font-size:14px;}
	.movie{ padding:60px 20px 60px;}
	.about h3{font-size:20px;}
	.dr h2{ font-size:24px;}
	.about h2{ font-size:27px;}
}