@charset "utf-8";


/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 1300px */
@media screen and (max-width:1300px){
	.treatment_fig{
		position: absolute;
		width: 54%;
		right: -9%;
	}
	.treatment_text{
		clear: both;
		float: left;
		width: 52%;
		margin: 74px 0 0 0;
	}
	#item2 .treatment_fig,
	#item4 .treatment_fig{
		right: 0;
		left: -9%;
	}
}


/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 1230px */
@media screen and (max-width:1230px){
	.home_slider_triger {
		width: 80%;
	}
}

/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 1200px */
@media screen and (max-width:1200px){

	/* header */
	.detail header{
		height: 480px;
	}

	/* footer */
	.footer_base{
		width: 100%;
		padding: 70px 5%;
		box-sizing: border-box;
	}

	/* contents */
	
	
	
	
	/* ====================================================== */
	/* 2.home ----------------------------------------------- */
	.home_head_copy{
		width: 100%;
		box-sizing: border-box;
		padding: 0 4.375%;
	}
	.home_head_copy .home_copy1,
	.home_head_copy h3,
	.home_head_copy h4{
		font-size: 28px;
	}
	.home_head_copy h4{
		font-size: 29px;
	}
	.home_detail{
		width: 86.7%;
	}
	/* greeting ----------------------- */
	#home #greeting .detail_left h3{
		font-size: 1.8vw;
	}



	/* treatment ---------------------- */
	#treatment .home_detail{
		width: 80%;
		margin: 0 auto;
	}
	.tdetail_btn a span{
		width: 10%;
		top: 31%;
		right: 19.5%;
	}


	/* information -------------------- */

	/* access ------------------------- */
	.map iframe{
		width: 100%;
	}

	#access.contents .home_detail{
		width: 86.7%;
	}
	#access.contents .home_detail .home_detail{
		width: 100%;
	}
	/*
	#access.contents .detail_left{
		width: 43.37%;
	}
	#access.contents .detail_right{
		width: 48.9%;
	}
	#access.contents table td{
		padding: 31px 0;
	}
	#access.contents table th{
		width: 7em;
		padding: 31px 0;
	}
	*/
	
	.contact_wrap{
		clear: both;
		background: #F8F5F2;
		padding: 40px 50px 40px 50px;
		margin-bottom: 124px;
	}
	.access_detail{
		width: 48%;
	}
	.acc_table2 th,
	.acc_table2 td{
		padding: 10px 5px 10px 5px;
	}
	.acc_table2 td{
		font-size: 14px;
		min-width: inherit;
	}
	.acc_table2 td strong{
		font-size: 14px;
	}

	.access_fig{
		width: 48%;
	}
	
	.contact_wrap{
		padding: 55px 85px 55px 75px;
	}
	.contact_wrap figure{
		width: 25%;
	}
	.contact_wrap p{
		width: 67.22%;
	}
	
	
	/* ====================================================== */
	/* 03.treatment ----------------------------------------- */
	.contents_base{
		width: 100%;
		padding: 0 4.375%;
		box-sizing: border-box;
	}
	.detail #access.contents{
		background: #FFF;
		padding-top: 155px;
	}

	.page_copy{
		position: relative;
		clear: both;
		width: 92%;
		margin: 0 auto;
		padding: 120px 0 105px 0;
	}
	.page_copy figure{
		float:right;
		width: 44.7%;
		line-height: 0;
		font-size: 0;
	}
	.page_copy_text{
		width: 50%;
		float: left;
	}
	.page_copy_text h2{
		font-size: 34px;
		margin-bottom: 1em;
	}


	/* treatment_item */
	.treatment_fig{
		position: absolute;
		width: 48%;
		right: -4.8%;
	}
	.treatment_text{
		clear: both;
		float: left;
		width: 52%;
		margin: 74px 0 0 0;
	}
	#item2 .treatment_fig,
	#item4 .treatment_fig{
		right: 0;
		left: -4.8%;
	}
	
	.home_treatment_base article{
		padding-bottom: 80px;
	}
	.treatment_detail{
		padding-bottom: 140px;
	}
	.htreatment2 .treatment_detail{
		padding-bottom: 151px;
	}
	.htreatment4 .treatment_detail{
		padding-bottom: 170px;
	}
	
	
	/* ====================================================== */
	/* 04.information ----------------------------------------- */
	.entry{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
		padding: 45px 33px 20px 33px;
	}

}



/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 960 */
@media screen and (max-width:960px){
	/* header */
	header h1 img{
		width: 128px;
	}
	
	
	/* ====================================================== */
	/* 2.home ----------------------------------------------- */
	
	/* access ------------------------- */
	
	.tdetail_btn a span{
		width: 8%;
		top: 23%;
		right: 18%;
	}
	
	.home_treatment_base article{
		padding-bottom: 80px;
	}
	.treatment_detail{
		padding-bottom: 120px;
	}
	.htreatment2 .treatment_detail{
		padding-bottom: 162px;
	}
	.htreatment4 .treatment_detail{
		padding-bottom: 120px;
	}
	

	
	/* ====================================================== */
	/* 03.treatment ----------------------------------------- */
	.page_copy_text h2{
		font-size: 34px;
		margin-bottom: 1em;
	}
	
	.treatment_item{
		padding: 0;
	}
	
	/* treatment_item */
	.treatment_fig{
		display: none;
	}
	.treatment_text{
		width: 100%;
		float: none;
		box-sizing: border-box;
		padding: 0 32px 65px 32px;
		margin-top: 50px;
	}
	
	.treatment_item .pcv{
		display: none;
	}
	.treatment_item .spv{
		display: block;
	}
	
	.treatment_title{
		text-align: center;
	}
	.treatment_title figure{
		line-height: 0;
		font-size: 0;
	}
	.treatment_title h2{
		text-align: center;
		margin: 0 auto ;
		font-size: 34px;
		padding-bottom: 15px;
		line-height: 1.1em;
		border-bottom: 3px solid #282828;
		display: inline-block;
	}
	#item4 .treatment_title h2,
	#item3 .treatment_title h2,
	#item2 .treatment_title h2,
	#item1 .treatment_title h2{
		margin: 0;
	}
	.treatment_title h3{
		position: relative;
		float: none;
		margin: -64px auto 8.4375vw auto;
		padding-right: 15px;
		width: 46.5px;
		text-align: center;
	}
	#item1 .treatment_title h3{
		width: 6.5vw;
		margin-top: -8vw;
	}
	#item2 .treatment_title h3{
		width: 10.625vw;
		margin-top: -8vw;
		padding-right: 0;
	}
	#item3 .treatment_title h3{
		width: 10.625vw;
		margin-top: -8vw;
		padding-right: 0;
	}
	#item4 .treatment_title h3{
		width: 11.15625vw;
		margin-top: -8vw;
		padding-right: 0;
	}
	.treatment_text h5{
		width: 6em;
		font-size: 14px;
		margin: 0 auto 27px auto;
		padding: 7px 0 6px 0;
		text-align: center;
	}
	
	
	
	/* ====================================================== */
	/* 4.information ---------------------------------------- */
	.entry_title h2,
	.entry_title h1{
		width: 60%;
	}
	
}



/* ====================================================================== */
/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 880 */
@media screen and (max-width:880px){
	
	/* ====================================================== */
	/* 4.information ---------------------------------------- */
	.entry_title h2,
	.entry_title h1{
		width: 55%;
	}
	
}




/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 750 */
@media screen and (max-width:750px){
	.pcv{
		display: none;
	}
	.spv{
		display: block;
	}
	h1,h2,h3,h4,h5,h6,p,ul,ol,dl {
		/*font-size:5vw;*/
		font-size: 16px;
	}
	p,li,dt,dd,th,td,time ,address {
		/*font-size:4.1vw;*/
		font-size: 14px;
	}
	.f12{
		/*font-size: 3.75vw !important;*/
	}
	
	/* header */
	header h1{
		width: 26%;
		margin-left: 6%;
	}
	header h1 img{
		width: 100%;
	}
	header #global-nav article{
		display: none;
	}
	.header_base{
		padding-top: 19px;
		top: 0;
		left: 0;
		width: 100%;
	}
	
	#menu {
		display: block !important;
		width: 11.875vw;
		height: 11.875vw;
		right: 15px;
		top: 15px;

		border-radius: 5.94vw;
		-webkit-border-radius: 5.94vw;
		-moz-border-radius: 5.94vw;
	}
	#menu::before,
	#menu span {
		position: absolute;
		top: 4.9vw;
		left: 3.35vw;
		width: 5vw;
		height: 2px;
	}
	#menu::before {
		content: "";
		top: 6.9vw;
	}
	#menu.on{
		background: none;
	}
	#menu.on::before {
		-webkit-transform: translateY(-2.1vw) rotate(-45deg);
		transform: translateY(-2.1vw) rotate(-45deg);
		background-color: #282828;
	}
	#menu.on span {
		-webkit-transform: translateY(0vw) rotate(45deg);
		transform: translateY(0vw) rotate(45deg);
		background-color: #282828;
	}
	
	/* contents */
	#home #treatment .title_wrap,
	.title_wrap{
		width: 210px;
		margin: 54px auto 54px auto;
	}
	
	.title_wrap h2{
		/*font-size: 5.625vw;*/
		font-size: 18px;
		padding-bottom: 6.375vw;
		margin-bottom: 4.5625vw;
	}
	.title_wrap h3{
		/*font-size: 4.375vw;*/
		font-size: 14px;
	}
	.home_detail{
		width: 100%;
		padding: 0 4.375%;
		box-sizing: border-box;
		margin-bottom: 18.75vw;
	}
	.home_detail .home_detail{
		padding: 0;
	}
	
	
	/* footer */
	footer{
		text-align: center;
	}
	.footer_base{
		padding: 0 0 34px 0;
	}
	.footer_base p a,
	.footer_base p{
		font-size: 11px;
		text-align: center;
	}
	.footer_base p br{
		display: block;
	}
	.footer_base address{
		font-size: 10px;
		text-align: center;
	}
	.footer_base address br{
		display: block;
	}
	.footer_base .copyright{
		font-size: 10px;
		text-align: center;
	}
	.pagetop{
		position: relative;
		bottom: inherit;
		top: inherit;
		right: inherit;
		text-align: center;
		margin: 25px auto;
		width: 10.16vw;
	}
	
	
	/* loader */
	.sk-circle{
		margin-top: 30px;
	}
	.loading_logo{
		width: 145px;
		margin: -40px 0 0 -41px;
	}
	
	
	/* ====================================================== */
	/* 2.home ----------------------------------------------- */
	/*
	#home header{
		background: url(../images/home/main_image1_sp.png) no-repeat center center;
		background-size: cover;
	}
	*/
	#home header,
	.swiper-container,
	.swiper-container ul,
	.swiper-container ul li{
		height: 100vw;
	}
	.swiper-container ul li.slider1{
		background: url(../images/home/main_image1_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider2{
		background: url(../images/home/main_image2_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider3{
		background: url(../images/home/main_image3_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider4{
		background: url(../images/home/main_image4_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider5{
		background: url(../images/home/main_image5_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider6{
		background: url(../images/home/main_image6_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider7{
		background: url(../images/home/main_image7_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider8{
		background: url(../images/home/main_image8_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container ul li.slider9{
		background: url(../images/home/main_image9_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.swiper-container-horizontal>.swiper-pagination-bullets{
		text-align: center;
	}
	.swiper-container-horizontal>.swiper-pagination-bullets span:last-child{
		margin-right: 0;
	}
	
	.home_head_copy h2{
		text-align: center;
		width: 78.75vw;
		margin: 0 auto;
	}
	
	/* greeting ----------------------- */
	#home #greeting .detail_right,
	#home #greeting .detail_left{
		width: 100%;
		float: none;
	}
	#home #greeting .detail_left{
		padding-top: 1em;
	}
	#home #greeting .detail_wrap h3{
		/*font-size: 5vw;*/
		font-size: 14px;
		margin-bottom: 5vw;
		text-align: left;
	}
	#home #greeting .detail_right h4{
		/*font-size: 3.75vw;*/
		font-size: 12px;
	}
	#home #greeting .detail_left{
		width: 100%;
		float: none;
		margin-bottom: 8.75vw;
	}
	#home #greeting .detail_left.greeting_pd{
		padding-bottom: 0;
	}

	
	
	
	/* treatment ---------------------- */
	.slick-dots {
		bottom: -8vw;
	}
	.home_slider_triger {
		width: 91.25%;
	}
	/*
	.next,
	.prev{
		display: none !important;
	}
	*/
	.prev,
	.next{
		width: 15px;
		height: 30px;
		
		top: 35vw;
		margin-top: 0;
	}
	.prev{
		left: 11vw;
	}
	.next{
		right: 11vw;
	}
	
	#treatment .home_detail{
		width: 100%;
		margin-bottom: 0;
	}
	.home_treatment_base{
		position: relative;
		clear: both;
		padding-bottom: 100px;
	}
	.home_treatment_base article{
		background: #FFF;
		padding-bottom: 12.5vw;
		text-align: center;
	}
	.home_treatment_base article figure{
		line-height: 0;
		font-size: 0;
	}

	.treatment_title h2,
	.home_treatment_base article h2{
		/*font-size: 6.25vw;*/
		font-size: 20px;
		padding-bottom: 9px;
		margin-bottom: 30px;
	}
	.treatment_detail{
		height: auto;
		width: 77%;
		padding-bottom: 12vw;
	}
	.treatment_detail h5{
		/*font-size: 4.375vw;*/
		font-size: 14px;
	}
	.tdetail_btn{
		/*font-size: 4.375vw;*/
		font-size: 14px;
	}
	.tdetail_btn a{
		padding: 4.875% 0;
		border-radius: 80px;
		-webkit-border-radius: 80px;
		-moz-border-radius: 80px;
	}


	.home_treatment_base article h3{
		margin: -5vw auto 5vw auto;
		padding-right: 1vw;
		width: 4.375vw;
	}
	.home_treatment_base .htreatment2 h3{
		width: 7.5vw;
		margin: -6.5vw auto 5vw auto;
		padding-right: 0;
	}
	.home_treatment_base .htreatment3 h3{
		width: 7.5vw;
		margin: -6vw auto 5vw auto;
		padding-right: 0;
	}
	.home_treatment_base .htreatment4 h3{
		width: 8.5vw;
		margin: -7vw auto 5vw auto;
		padding-right: 0;
	}

	.tdetail_btn a span{
		width: 30px;
		top: 26%;
		right: 21%;
	}
	
	.home_treatment_base article{
		padding-bottom: 40px;
		margin-bottom: 20px;
	}
	.treatment_detail{
		padding-bottom: 62px;
	}
	.htreatment2 .treatment_detail{
		padding-bottom: 62px;
	}
	.htreatment4 .treatment_detail{
		padding-bottom: 62px;
	}
	
	.treatment_detail .ht4_title{
		position: relative;
		width:4.5em;
		margin: 0 auto;
		padding: 10px 1em 9px 1em;
	}
	.treatment_detail .ht4_detail{
		padding-left: 0;
		margin: 1em 0 0 0;
	}
	
	
	/* information -------------------- */
	#home #information{
		padding-bottom: 1px;
	}
	#information .title_wrap{
		margin: 18.125vw auto 13.4375vw auto;
	}
	

	/* access ------------------------- */
	#access.contents .title_wrap{
		margin:18.125vw auto 8.75vw auto; 

	}
	.map{
		text-align: center;
		height: 75vw;
		margin: 0 auto 40px auto;
	}
	.map iframe{
		height: 75vw;
	}

	#access.contents .home_detail{
		width: 100%;
		margin: 0 auto;
	}
	
	.access_detail{
		width: 100%;
		float: none;
		margin-bottom: 40px;
	}
	.acc_table1 th,
	.acc_table1 td{
		display: list-item;
		list-style: none;
		width: 100%;
	}
	.acc_table1 th{
		margin-bottom: 0;
		padding: 20px 0 0 0;
	}
	.acc_table1 td{
		margin-bottom: 0;
		padding-top: 0;
	}
	.acc_table2 th,
	.acc_table2 td{
		padding: 10px 5px 10px 5px;
	}
	.access_detail p strong{
		display: block;
	}

	.access_fig{
		width: 100%;
		float: none;
		margin-bottom: 40px;
	}
	.access_fig p{
		margin: 0;
	}
	

	.contact_wrap{
		clear: both;
		background: #F8F5F2;
		padding: 42px 28px 34px 30px;
		margin-bottom: 47px;
	}
	.contact_wrap figure{
		width: 60%;
		float: none;
		margin: 0 auto 40px auto;
	}
	.contact_wrap p{
		float: none;
		width: 100%;
	}
	/*
	#access.contents .detail_left{
		width: 100%;
		float: none;
	}
	#access.contents .detail_right{
		width: 100%;
		float: none;
	}
	#access.contents table{
		width: 100%;
		margin-bottom: 9.375vw;
	}
	#access.contents table tr{
		border-bottom: 1px solid #AFAFAF;
	}
	#access.contents table tr:last-child{
		border-bottom: none;
	}
	#access.contents table td{
		padding: 6.25vw 0;
	}
	#access.contents table th{
		width: 6.5em;
		padding: 6.25vw 0;
	}
	*/
	
	
	/*
	.tel{
		float: none;
	}
	.tel h3{
		font-size: 15px;
	}
	.tel h3 br{
		display: block;
	}
	.tel p{
		float: none;
	}
	.tel .tel_title{
		font-size: 12px;
		padding: 10px 0 9px 0;
		width:7em;
	    margin-right: 6.25vw;
		text-align: center;
	}
	.tel p img{
		width: 308px;
		margin-top: 3px;
	}
	.reserve{
		text-align: center;
	}
	.reserve h4{
		font-size: 12px;
		margin-bottom: 0.8em;
	}
	.res_detail{
		display: inline-block;
		margin: 0 auto;
		width: auto;
	}
	.reserve p{
		font-size: 12px;
		text-align: left;
	}
	.reserve p .spv{
		display: inline;
	}
	.reserve .time{
		text-align: left;
	}
	*/
	
	
	
	
	/* ====================================================== */
	/* 03.treatment ----------------------------------------- */
	#treatment header{
		background:url(../treatment/images/header_image_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	#information.detail .title_wrap,
	.detail .title_wrap{
		position: absolute;
		top: 40%;
		left: 50%;
		padding: 0;
		margin: 0 0 0 -105px;
	}
	.detail .title_wrap h2{
		font-size: 18px;
		padding-bottom: 20px;
		margin-bottom: 11px;
	}
	
	/*
	.detail .contents{
		background: #F8F5F2;
	}
	.contents_base{
		width: 980px;
		padding-bottom: 140px;
	}
	.detail #access.contents{
		background: #FFF;
		padding-top: 125px;
	}
	*/

	.page_copy{
		width: 100%;
		padding: 60px 0 40px 0;
	}
	
	.page_copy figure{
		float:none;
		width: 100%;
		margin-bottom: 15px;
	}
	.page_copy_text{
		width: 100%;
		float: none;
	}
	.page_copy h2{
		font-size: 16px;
		margin-bottom: 1em;
		text-align: left;
	}
	.detail #access.contents,
	.detail .contents{
		padding-top: 47px;
	}
	
	
	
	/* ====================================================== */
	/* 04.information ----------------------------------------- */
	.info404 header,
	#information header{
		background: url(/images/information/main_image_sp.jpg) no-repeat center center;
		background-size: cover;
		height: 50vh;
	}
	#information .contents_base{
		padding: 3px 0 70px 0;
	}
	.entry{
		width: 90%;
		margin: 0 auto 30px auto;
		box-sizing: border-box;
		padding: 45px 33px 20px 33px;
	}
	.entry_title{
		padding-bottom: 25px;
		margin-bottom: 32px;
	}
	
	.entry_title .entry_cat{
		font-size: 12px;
		margin-bottom: 13.5px;
	}
	.entry_title .entry_date{
		float: left;
		font-size: 12px;
		margin: 0 0 13.5px 15px;
	}
	.entry_title h2,
	.entry_title h1{
		clear: both;
		float: none;
		width: 100%;
		font-size: 14px;
		padding: 0 0 0 0;
	}
	
	.pagination{
		padding-top: 0;
	}
	.pagination .current ,
	.pagination a{
		padding: 4.5px 0;
		margin: 0 5px;
		line-height: 1.2em;
		width: 25px;
		font-size: 14px;
		border-radius: 12.5px;
		-webkit-border-radius: 12.5px;
		-moz-border-radius: 12.5px;
		transition: .5s;
	}
	.pagination .nextprev{
		padding-left: 20px;
	}
	.pagination .nextprev a{
		font-size: 14px;
		width: auto;
	}
	
}





/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 560px */
@media screen and (max-width:560px){
	.pcv{
		display: none;
	}
	.spv{
		display: block;
	}
	#teaser .header_base,
	#teaser .contents_base,
	#teaser .footer_base{
		width: 100%;
		box-sizing: border-box;
		padding: 0 5%;
	}
	#teaser h1{
		margin-top: 7vh;
		margin-bottom: 7vh;
	}
	#teaser h2{
		width: 85%;
		margin-bottom: 4vh;
	}
	#teaser h3{
		width: 85%;
		text-align: center;
		margin-bottom: 7vh;
	}
	
	.detail header{
		height: 100vw;
	}
}

/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 560px */
@media screen and (max-width:560px){
	.tel .tel_title{
		font-size: 3vw;
		margin-right: 3.5vw;
		padding: 11px 0 10px 0;
	}
	.tel h3{
		font-size: 3.6vw;
		text-align: justify;
		text-align: left;
	}
	.tel .tel_tel img{
		width: 280px;
	}
	.reserve h4{
		font-size: 3.5vw;
		margin-bottom: 0.8em;
		text-align: left;
		text-align: justify;
	}
	.reserve_wrap{
		text-align: justify;
	}
	.reserve p{
		font-size: 3.2vw;
		text-align: left;
		text-align: justify;
	}
}

/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 480px */
@media screen and (max-width:480px){
	.tdetail_btn a span{
		width: 25px;
		top: 22%;
		right: 14%;
	}
}

/* ====================================================================== */
/* ---------------------------------------------------------------------- */
/* 400px */
@media screen and (max-width:400px){
	.reserve p{
		font-size: 3.0vw;
	}
}
