/* 幅1120px以下からcss適応 */
@media only screen and (max-width: 1120px){
	.recommend_ttl01 br{
		display: none;
	}
}

/* 幅960px以下からcss適応 */
@media only screen and (max-width: 960px){
	#header,
	#scroll_menu{
		display: none;
	}
	
	#sp_head{
		display: block;
		width: 100%;
		padding: 10px 0;
		border-bottom: 3px solid #e85599;
		
		position: fixed;
		top: 0;
		background: #fff;
		z-index: 999999;
	}
	
	.sp_head_wrap{
		width: 95%;
		padding: 0 2.5%;
		margin: 0 auto;
		
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		align-items: center;
	}
	
	.sp_head_logo p{
		line-height: 0;
	}
	
	.sp_head_logo img{
		width: auto;
		max-width: 100%;
		height: auto;
		max-height: 55px;
	}
	
	.sp_head_btn{
		display: -webkit-flex;
		display: flex;
	}
	
	.sp_btn_wrap{
		margin-right: 5px;
		line-height: 0;
		margin-top: 1px;
	}
	
	.res_btn img{
		height: 55px;
	}
	
	.sp_btn{
		display: none;
	}
	
	/* ハンバーガーメニュー */
	.sp_hummenu{
		position: relative;
		top: 0;
		height: 100%;
	}
	
	.hum_menu_obtn{
		background: #e85599;
		
		border: none;
		color: #fff;
		padding: 10px;
		border-radius: 5px;
		font-weight: bold;
		letter-spacing: 0.05em;
		display: block;
		position: relative;
		top: 0;
	}
	
	.hum_menu_obtn_bar{
		position: relative;
		width: 100%;
		border-top: 3px solid #fff;
		padding: 5px 0px 0;
	}
	
	.hum_menu_obtn_bar:before,
	.hum_menu_obtn_bar:after{
		content: "";
		display: block;
		border-top: 3px solid #fff;
		padding: 5px 0 0;
	}
	
	.hum_menu_obtn span{
		position: relative;
		width: 100%;
		display: block;
		top: 0;
		line-height: 1;
		color: #fff);
	}
	
	.hum_menu_nav{
		background: rgba(252,231,237,0.95);
	    height: 100%;
	    left: 100%;
	    position: fixed;
	    top: 0;
	    transition-duration: 0.3s;
	    transition-property: left;
	    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	    width: 100%;
	    color: #000;
	}
	
	.hum_menu_nav.clicked{
		left: 0;
		overflow: scroll;
		z-index: 9999;
	}
	
	.hum_menu_nav_close{
		padding: 15px 0;
	}
	
	.hum_menu_cbtn{
		background: rgba(64,166,41,0);
		border: none;
		color: #000;
		padding: 0;
		font-weight: bold;
		letter-spacing: 0.05em;
		display: block;
		position: absolute;
		top: 25px;
		right: 17px;
	}
	
	.hum_menu_cbtn_bar{
		position: relative;
		top: 0;
		width: 100%;
		padding: 5px 0 0;
	}
	
	.hum_menu_cbtn_bar:before,
	.hum_menu_cbtn_bar:after{
		content: "";
		display: block;
		border-top: 3px solid #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		margin-top: 3px;
	}
	
	.hum_menu_cbtn_bar:after{
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		margin-top: -3px;
		margin-bottom: 15px;
	}
	
	.hum_menu_nav_menu{
		margin-top: 55px;
		margin-bottom: 30px;
	}
	
	.hum_menu_nav_menu ul{
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		border-top: 1px solid #000;
	}
	
	.hum_menu_nav_menu li{
		color: #000;
		width: 100%;
		text-align: center;
		border-bottom: 1px solid #000;
		line-height: 1.5;
		font-size: 0.85em;
		font-weight: bold;
		position: relative;
		text-align: center;
	}
	
	.hum_menu_nav_menu li:nth-child(2n+1){
		width: 100%;
		border-bottom: 1px solid #000;
	}
	
	.hum_menu_nav_menu li a:after{
		content: "";
	    position: absolute;
	    right: 15px;
	    width: 8px;
	    height: 8px;
	    margin-top: 3px;
	    border-top: 2px solid #000;
	    border-right: 2px solid #000;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    -webkit-transition: transform 0.3s linear 0s;
	    transition: transform 0.3s linear 0s;
	}
	
	.hum_menu_nav_menu li a.more_on:after{
		-webkit-transform: rotate(135deg);
	    transform: rotate(135deg);
	}
	
	.hum_menu_nav_menu li.sp_nav_more_wrap a{
		padding: 18px 0; 
	}
	
	.hum_menu_nav_menu ul.sp_nav_more{
		border-top: none;	
	}
	
	.hum_menu_nav_menu ul.sp_nav_more li{
		text-align: right;
		padding: 10px 15px 0;
		font-size: 1.05em;
		border-bottom: none;
		background: rgba(0,0,0,0.05);
	}
	
	.hum_menu_nav_menu ul.sp_nav_more li:last-child{
		border-bottom: none;
		padding-bottom: 10px;
	}
	
	.hum_menu_nav_menu ul.sp_nav_more li:after{
	    content: none;
	}
	
	.hum_menu_nav_menu ul.sp_nav_more li a{
		padding: 5px 0;
		text-align: center;
	}
	
	.hum_menu_nav_menu ul.sp_nav_more li a:after{
		content: none;
	}
	
	.sp_nav_more_o{
		display: none;
		width: calc(200% + 2px);
	}
	
	.sp_nav_more_r{
		position: relative;
		left: -100%;
		width: 200%;
	}
	
	.sp_nav_more_o ul{
		position: relative;
	    top: 15px;
	    background: #6fbd5f;
	    z-index: 9999;
	}
	
	.sp_nav_more_o ul li{
		border-bottom: 1px solid rgba(0,0,0,0.6);
		font-size: 1em;
		position: relative;
		z-index: 99999;
		font-size: 0.9em;
	}
	
	.sp_nav_more_o ul li:last-child{
		border-bottom: none;
	}
	
	.hum_menu_nav_menu li a{
		display: block;
		color: #000;
		margin-left: 5px;
		text-align: center;
		text-decoration: none;
		padding: 18px 0;
	}
	
	.hum_menu_nav_menu li span{
		display: block;
		font-weight: normal;
		font-size: 0.8em;
	}
	
	.hum_menu_contact{
		color: #fff;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin:50px 20px 20px;
	}
	
	.hum_menu_contact a{
		margin: 0 auto;
		font-weight: bold;
		border-radius: 4px;
		text-decoration: none;
		font-size: 0.85em;
		padding: 5px 0;
		display: block;
		width: 100%;
		max-width: 200px;
	}
	
	.hum_menu_contact a.h_menu_contact{
		text-align: center;
		background: #ff7930;
		color: #fff;
	}
	
	
	.hum_menu_contact p{
		 margin-bottom: 15px;
		 width: 100%;
	}
	
	.hum_menu_contact p:last-of-type{
		margin-bottom: 0;
	}
	
	.hum_menu_contact .fa{
		margin-right: 5px;
	}
	
	.hum_open_bg_display.active{
		position: fixed;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.45);
		left: 0;
		top: 0;
		z-index: 1000;
	}
	
	.hum_menu_info{
	}
	
	.hum_menu_info_ttl{
		font-size: 1em;
		text-align: center;
		font-weight: bold;
		padding-bottom: 5px;
	}
	
	
	.hum_menu_info_wrap{
		width: calc(100% - 20px);
		padding: 15px 10px;
		border-bottom: 1px solid;
		text-align: center;
	}
	
	.hum_menu_info_name{
		font-size: 1em;
		font-weight: bold;
		line-height: 1.5;
	}
	
	.hum_menu_info_tel{
		margin:  0;
		font-size: 1.3em;
		line-height: 1.5;
		position: relative;
		font-style: italic;
	}
	
	.hum_menu_info_tel i{
		font-size: 1em;
		transform: rotate(-45deg);
		margin-right: 3px;
		line-height: 1;
		position: relative;
		top: -2px;
		
	}
	
	.hum_menu_info_open{
		font-size: 0.8em;
		line-height: 1.5;
	}
	
	.hum_menu_sns ul{
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		border-top: none !important;
	}
	
	.hum_menu_sns ul li{
		width: auto !important;
		border-bottom: none !important;		
	}
	
	.hum_menu_sns ul li a{
		padding: 10px 5px;
	}
	
	.hum_menu_sns ul li a:after{
		content: none !important;
	}
	
	/* ここまで */
	
	#mainimage{
		margin-top: 80px;
	}
	
	
	.profile_recommend_ttl br{
		display: none;
	}
	
	.ttl05 span:before,
	.ttl05 span:after{
		content: none;
	}
	
	.cc_ttl01{
		text-align: left;
	}
	
	.cc_ttl01 br{
		display: none;
	}
	
	
	/* 下層ページ */
	#second #main{
		margin-top: 86px;
		display: block;
	}
}

/* 幅900px以下からcss適応 */
@media only screen and (max-width: 900px){
	
	/* 推薦者の声 */
	.profile_recommend_ttl{
		font-size: 28px;
		margin-bottom: 50px;
	}
	
	.profile_recommend_ttl:after{
		bottom: -20px;
	}
	
	.profile_recoomend_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.profile_recommend_img{
		text-align: center;
		margin: 0 auto 40px;
	}
	
	.profile_recommend_text{
		width: 100%;
		margin: 0 auto;
	}
	
	
	/* アクセス */
	.access_info_wrap{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.access_map{
		width: 100%;
		max-width: 100%;
	}
	
	.access_map iframe{
		width: 95vw;
		max-width: 900px;
	}
	
	.access_mapinfo{
		width: 100%;
		margin: 0 auto;
	}
	
	.access_rootlist li{
		width: calc(100% / 3 - 34px);
		margin-left: 50px;
	}
	
	.access_rootlist li:before{
		content: "";
		display: block;
		width: 50px;
		height: 50px;
		background: url("../images/top/access_arrow.png") no-repeat center top;
		background-size: 60% auto;

		left: -50px;
		top: 60px;
	}
	
	/* wordpress */
	#second.blog #main .mainconts:first-of-type{
		padding-top: 0;
	}
	
	.blog_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.blog_main{
		width: 100%;
	}
	
	.blog_side{
		
		border-left: none;
		width: 100%;
		max-width: inherit;
		
		padding: 20px 0 0 0;
		margin: 0;
	}
	
	.side_menu ul{
		padding: 10px 0;
	}
}


/* 幅800px以下からcss適応 */
@media only screen and (max-width: 800px){
	
	/* common */
	.ttl05 br{
		display: none;
	}
	
	
	/* こんな悩みはありませんか？ */
	.nayami_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.nayami_list{
		margin-bottom: 25px;
	}
	
	.nayami_img{
		max-width: 300px;
		margin: 0 auto;
	}
	
	/* 全国の実績ある治療家から「太鼓判を押します！」と推薦をいただきました！ */
	.recommend_ttl01{
		font-size: 28px;
		background-size: 80px auto;
		padding: 10px 0;
		padding-left: 100px;
		
	}
	
	.recommend_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.reco_img{
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		
		width: 100%;
		max-width: 100%;
	}
	
	.reco_img img{
		max-height: 220px;
		width: auto;
		max-width: 100%;
	}
	
	.reco_img p{
		margin: 0 5px;
		margin-bottom: 0 !important;
	}
	
	.reco_text{
		margin: 15px 0;
		width: 100%;
	}
	
	.recommend_ttl02{
		font-size: 20px;
	}
	
	.recommend_ttl02:before{
		content: none;
	}
	
	.recommend_name{
		font-size: 18px;
	}
	
	/* その悩み、当院にお任せ下さい */
	.omakase_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.omakase_img{
		margin: 0 auto;
	}
	
	.omakase_img img{
		width: auto;
		max-width: 100%;
	}
	
	.omakase_text{
		width: calc(100% - 40px);
		
		padding: 20px;
		margin-top: 40px;
		margin-right: 0;
	}
	
	.omakase_text:before{
		top: -50px;
		right: 0;
		left: 0;
		margin: 0 auto;
		border: 25px solid transparent;
		border-bottom: 25px solid #fff;
	}
	
	
	/* 患者様の声 */
	.voice_list{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.voice_conts{
		width: 100% !important;
		margin: 30px auto 0 !important;
	}
	
	.voice_conts:nth-child(1){
		margin-top: 0 !important;
	}
	
	.voice_img iframe{
		height: 40vw;
		max-height: 300px;
	}
	
	
	/* 院長プロフィール */
	.profile_wrap{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.profile_img{
		width: 100%;
		max-width: 250px;
		margin: 0 auto 30px;
	}
	
	.profile_img img{
		width: auto;
		max-width: 250px;
	}
	
	.profile_text{
		width: 100%;
	}
	
	
	/* 当院の施術の流れ */
	.service_time_wrap{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.service_time{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.service_time_img{
		margin: 0 auto 20px;
	}
	
	.service_time{
		width: calc(100% - 60px);
		max-width: 100%;
		padding: 30px;
	}
	
	.service_time_ttl01{
		text-align: center;
		margin-bottom: 15px !important;
	}
	
	.service_time_text{
		width: 100%;
		margin: 0 auto;
	}
	
	.flow_conts_inline{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.flow_img{
		margin: 0 auto;
	}
	
	.flow_text{
		width: 100%;
		margin: 20px auto 0;
	}
	
	
	/* 当院が選ばれる理由 */
	.select_conts{
		margin-top: 40px;
	}
	
	.select_conts_lr{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.select_conts_rl{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.select_img{
		margin: 0 auto 15px;
	}
	
	.select_text{
		width: 100% !important;
		margin: 0 auto !important;
	}
	
	
	/* ばぜ初回は2,480円なのか？ */
	.conts_divide{
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-bottom: 0;
	}
	
	.conts_divide_l,
	.conts_divide_r{
		width: 100%;
	}
	
	.conts_divide_r{
		margin-top: 30px;
	}
	
	
	/* オファー */
	.offer_conts01{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.offer_conts01_l{
		width: 100%;
		margin: 0 auto;
		text-align: center;
	}
	
	.offer_conts01_img{
		margin: 15px auto 10px;
	}
	
	.offer_conts01_r{
		width: 100%;
		max-width: 450px;
		margin: 20px auto 0;
	}
	
	.offer_conts02{
		width: 100%;
		margin: 20px auto;
		padding: 20px 0;
	}
	
	.offer_conts02 p{
		font-size: 30px;
	}
	
	
	/* 最後に... */
	.last_conts{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.last_img{
		margin: 0 auto;
	}
	
	.last_text{
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
		
		font-size: 16px;
	}
	
	/* フッター */
	.f_conts_r{
		display: none;
	}
}


/* 幅640px以下からcss適応 */
@media only screen and (max-width: 640px){
	body{
		font-size: 14px;
	}
	
	.res_btn{
		display: none;
	}
	
	.sp_btn{
		display: -webkit-flex;
		display: flex;
	}
	
	.sp_btn li{
		margin-left: 5px;
		line-height: 0;
	}
	
	.sp_btn img{
		height: 50px;
	}
	
	.sp_head_logo{
		line-height: 0;
		margin-right: 0px;
	}
	
	.sp_head_logo img{
		max-height: 46px;
	}
	
	.hum_menu_obtn{
		padding: 7px;
	}
	
	
	/* common */
	.main_conts_wrap{
		width: 90%;
		padding: 0 5%;
	}
	
	.mainconts{
		padding: 30px 0;
	}
	
	.br{
		display: inline;
	}
	
	.t_br{
		display: block;
	}
	
	.ttl01,
	.ttl02,
	.ttl03,
	.ttl05,
	.ttl06,
	.ttl07{
		font-size: 21px;
	}
	
	.ttl01{
		margin-bottom: 30px;
	}
	
	.ttl01 br{
		display: none;
	}
	
	.ttl02{
		margin-bottom: 5px;
	}
	
	.ttl03{
		margin-bottom: 20px;
	}
	
	.ttl02_sub{
		font-size: 13px;
		text-align: left;
		line-height: 1.8;
	}
	
	.ttl04{
		width: calc(100% - 20px);
		font-size: 16px;
		padding: 5px 10px;
	}
	
	.ttl05{
		font-size: 20px;
		margin-bottom: 0;
	}
	
	.ttl06{
		margin-bottom: 20px;
	}
	
	.ttl07{
		margin-bottom: 10px;
	}
	
	.ttl08{
		font-size: 24px;
		margin-bottom: 20px;
	}
	
	.ttl08:before{
		top: 14px;
	}
	
	.ttl08 span{
		padding: 0 10px;
	}
	
	.ttl09{
		font-size: 18px;
		margin-bottom: 17px;
	}
	
	.ttl09 .ttl09_num{
		font-size: 1em;
		line-height: 1;
	}
	
	.ttl09 .ttl09_main{
		border-bottom: 3px solid #fff;
		display: inline;
		line-height: 2;
	}
	
	.strong02{
		font-size: 1.2em;
		text-align: left;
		line-height: 1.5;
	}
	
	/* メインイメージ */
	#mainimage{
		margin-top: 68px;
	}
	
	.mainimage_pc{
		display: none;
	}
	
	.mainimage_sp{
		display: block;
		padding: 10px 0 0;
	}
	
	/* 経営理念 */
	.pilosophy_text{
		margin-top: 25px;
	}
	
	.pilosophy_waku{
		padding: 15px;
	}
	
	.pilosophy_text p{
		font-size: 14px;
		text-align: left;
		color: #282828;
	}
	
	/* お知らせ */
	.top_news{
		font-size: 15px;
		margin-bottom: 24px;
	}

	.top_news-text p{
		font-size: 15px;
		text-align: left;
	}

	.top_news-ttl{
		font-size: 16px;
	}

	.top_news-text ul{
		margin: 0.5em auto;
		flex-direction: column;
	}

	.top_news-text ul li{
		width: 100%;
		margin: 0 0 8px;
		text-align: left;
		line-height: 1.5;
	}

	.top_news-text ul li:last-of-type{
		margin-bottom: 0;
	}
	
	/* メディアに取り上げられています！ */
	.media_img{
		display: none;
	}
	
	.media_img_sp{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-top: 20px;
	}
	
	.media_img_sp li{
		width: 47.5%;
		margin-bottom: 20px;
		margin-right: 5%;
	}
	
	.media_img_sp li:nth-child(2n){
		margin-right: 0;
	}
	
	.media_img_sp li figure{
		text-align: center;
		max-width: 130px;
		margin: 0 auto;
	}
	
	.media_img_sp li figure img{
		width: auto;
		width: 100%;
	}
	
	.media_img_text{
		line-height: 1.5;
		margin-top: 10px;
	}
	
	
	/* 推薦の声 */
	.recommend_ttl01{
		font-size: 18px;
		background-size: 50px auto;
		padding: 0 0 10px 60px;
		margin-bottom: 0;
		line-height: 1.5;
	}
	
	.recommend_conts{
		margin-top: 20px;
	}
	
	.recommend_ttl02:before{
		content: "";
		display: block;
	
		width: 0;
		height: 0;
		border: 20px solid transparent;
		border-bottom: 20px solid #e85599;
		
		position: absolute;
		left: 22vw;
		margin: 0 auto;
		top: -30px;
		
		z-index: -1;
	}
	
	
	/* 患者様の声　一番上 */
	.main_voice_wrap{
		padding: 15px;
	}
	
	.voice_mainimage{
		margin-bottom: 10px;
	}
	
	.voice_mainimage_pc{
		display: none;
	}
	
	.voice_mainimage_sp{
		display: block;
		margin-bottom: 30px;
		padding: 15px;
		border: 10px solid #f8f4e2;
		
	}
	
	.voice_mainimage_ttl01{
		text-align: center;
		font-size: 22px;
		font-weight: bold;
		margin: 10px auto 15px !important;
		color: #eb0011;
		line-height: 1;
	}
	
	.voice_mainimage_ttl01 span{
		position: relative;
	}
	
	.voice_mainimage_ttl01 span:before{
		content: "";
		display: block;
		
		height: 100%;
		
		position: absolute;
		top: 0;
		left: -20px;
		border-left: 3px solid;
		
		-webkit-transform: rotate(-15deg);
		transform: rotate(-15deg);
	}
	
	.voice_mainimage_ttl01 span:after{
		content: "";
		display: block;
		
		height: 100%;
		
		position: absolute;
		top: 0;
		right: -20px;
		border-left: 3px solid;
		
		-webkit-transform: rotate(15deg);
		transform: rotate(15deg);
	}
	
	.voice_mainimage_sp_photo{
		margin-bottom: 0 !important;
	}
	
	.voice_mainimage_sp_photo img{
		width: auto;
		max-width: 100%;
	}
	
	.voice_mainimage_sp_img01{
		text-align: center;
		margin-bottom: 10px !important;
	}
	
	.voice_mainimage_sp_img01 img{
		width: auto;
		max-width: 200px;
	}
	
	.voice_mainimage_sp_text01{
		font-size: 15px;
		font-weight: bold;
		margin-bottom: 0 !important;
	}
	
	.voice_mainimage_sp_text01 .strong01{
		font-size: 1.9em;
		color: #eb0011;
		text-decoration: underline;
	}
	
	.voice_mainimage_sp_text01 .strong02{
		font-size: 1.3em;
		color: #eb0011;
	}
	
	.voice_mainimage_sp_memo{
		font-size: 14px;
		margin-bottom: 10px !important;
	}
	
	.mainvoice_ttl{
		font-size: 18px;
		line-height: 1.6;
		text-align: left;
	}
	
	.mainvoice_movie{
		margin: 10px auto;
	}
	
	.mainvoice_movie iframe{
		height: 40vw;
		max-height: 300px;
	}
	
	.mainvoice dl{
		margin-bottom: 15px;
	}
	
	.mainvoice dl dt{
		font-size: 14px;
	}
	
	
	/* こんな悩みはありませんか？ */
	.nayami_list ul li{
		margin-bottom: 20px;
	}
	
	.nayami_list ul li:last-child{
		margin-bottom: 0;
	}
	
	.nayami_img{
		max-width: 250px;
	}
	
	/* このようなお悩みの方が来られています */
	.symptom_list{
		margin-top: 24px;
	}
	
	.symptom_list li{
		width: calc(100% / 2 - 8px);
		margin-right: 16px !important;
		margin-bottom: 24px;
	}
	
	.symptom_list li:nth-child(2n){
		margin-right: 0 !important;
	}
	
	
	/* 患者様の声 */
	.voice_ttl{
		font-size: 16px;
	}
	
	.voice_q{
		font-size: 14px;
	}
	
	/* 推薦者の声 */
	.profile_wrap{
		margin-top: 20px;
		padding: 15px;
		width: calc(100% - 30px);
	}
	
	.profile_img figure{
		text-align: center;
	}
	
	.profile_img img{
		max-width: 200px;
	}
	
	.profile_name,
	.profile_name span{
		font-size: 18px;
		line-height: 1.5;
	}
	
	.profile_strong01{
		font-size: 16px;
	}
	
	.profile_recommend{
		width: calc(100% - 6px);
		margin-top: 30px;
		border: 3px solid #64cccb;
	}
	
	.profile_recommend_wrap{
		padding: 20px;
		width: calc(100% - 40px);
	}
	
	
	.profile_recommend_ttl{
		font-size: 20px;
		margin-bottom: 30px;
	}
	
	.profile_recommend_ttl:after{
		border-bottom: 2px dashed;
		bottom: -12px;
	}
	
	.profile_recommend_ttl02{
		font-size: 18px;
		border-bottom: 2px solid;
		padding-bottom: 2px;
		margin-bottom: 8px;
	}
	
	.profile_recommend_img{
		margin-bottom: 20px;
	}
	
	.profile_recommend_img figure img{
		width: auto;
		max-width: 200px;
	}
	
	.profile_recommend_text p{
		margin-bottom: 15px;
	}
	
	
	/* 施術の流れ */
	.flow_conts{
		flex-direction: -webkit-column;
		flex-direction: column;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		
		margin-top: 20px;
	}
	
	.flow_conts_list{
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}
	
	.flow_conts_list:after{
		content: none;	
	}
	
	.flow_conts_list figure{
		text-align: center;
	}
	
	.service_time{
		width: calc(100% - 30px);
		padding: 15px;
	}
	
	.service_time_img,
	.service_time_img img{
		width: 60px;
	}
	
	.service_time_img{
		margin-bottom: 10px;
	}
	
	.service_time_ttl01{
		font-size: 20px;
		margin-bottom: 15px !important;
	}
	
	.service_time_ttl02{
		font-size: 18px;
	}
	
	.flow_ttl01{
		font-size: 16px;
	}
	
	.flow_ttl01:before{
		font-size: 1.6em;
	}
	
	.flow_conts_inline{
		margin-top: 10px;
	}
	
	.flow_img img{
		width: auto;
		max-width: 100%;
	}
	
	.flow_strongpoint{
		margin-top: 25px;
	}
	
	.flow_strongpoint p{
		font-size: 18px;
		text-align: left;
		line-height: 1.5;
	}
	
	
	
	
	
	/* 選ばれる８つの理由 */
	.select_conts{
		margin-top: 30px;
	}
	
	.select_conts:first-of-type{
		margin-top: 20px !important;
	}
	
	.select_ttl01{
		padding: 10px;
		font-size: 16px;
		margin-bottom: 10px;
	}
	
	.select_ttl01:before{
		display: block;
		width: calc(100% - 10px);
		margin: 0 auto;
		padding: 3px 5px;
		
		font-size: 18px;
		text-align: center;
		margin-bottom: 10px;
	}
	
	
	/* 施術料金について・初回特別特典 */
	.price_ttl01{
		font-size: 18px;
		background-size: 25px auto;
		padding: 10px 0 5px 35px;
	}
	
	.price_tbl tr{
		display: block;
		border-radius: 0;
		padding: 0;
		border: none;
		margin-bottom: 10px;
	}
	
	.price_tbl tr th,
	.price_tbl tr td{
		width: calc(100% - 10px);
		padding: 5px;
		line-height: 1.5;
		
		font-size: 15px;
	}
	
	.price_tbl tr th{
		border: none;
		text-align: left;
	}
	
	.price_tbl tr td{
		font-size: 14px;
	}

	.price_tbl tr td span{
		font-size: 1em;
	}
	
	.price_offer{
		margin-top: 25px;
	}
	
	.price_offer_text01{
		font-size: 18px;
		text-align: left;
	}
	
	.price_offer_limit01{
		margin-top: 20px;
		padding: 10px 0;
	}
	
	.price_offer_limit01 p{
		font-size: 15px;		
	}
	
	.price_offer_limit01 span{
		font-size: 26px;
		display: block;
		text-align: center;
	}
	
	.price_offer_mainimg{
		margin: 20px auto;
	}
	
	.price_offer_limit02{
		font-size: 16px;
		text-align: left;
	}
	
	.member_num_limit{
		font-size: 1.6em;	
	}
	
	
	/* なぜ初回は2,480円なのか？ */
	.conts_divide_ttl{
		font-size: 16px;
	}
	
	.conts_divide_ttl br{
		display: none;
	}

	.reason_message{
		width: 90%;
		flex-direction: column;
		padding: 16px;
		margin-top: 1.5em;
	}

	.reason_message-img{
		width: 45vw;
		max-width: 160px;
		text-align: center;
		margin: 0 auto 16px;
	} 

	.reason_message-text{
		width: 100%;
		margin: 0 auto;
	}
	
	.reason_text{
		font-size: 15px;
	}
	
	.reason_message-text p{
		font-size: 16px;
		line-height: 1.65;
	}
	
	/* 来院特典 */
	.specialgift_conts_wrap{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.specialgift_conts{
		width: 100%;
		padding: 0;
		margin-bottom: 30px;
		
		-webkit-flex-direction: column;
		flex-direction: column;
		
		margin-top: 30px;
	}
	
	.specialgift_conts:last-of-type{
		margin-bottom: 0;
	}
	
	.special_gift_image{
		text-align: center;
		margin-bottom: 15px;
	}
	
	.special_gift_text{
		margin: 0 auto;
		font-size: 15px;
	}
	
	.gift_ttl01{
		display: block;
		text-align: center;
		margin: 0 auto 0 -25px !important;
	}
	
	.specialgift_ttl01{
		max-width: 200px;
	}
	
	.gift_ttl02{
		font-size: 20px;
		text-align: center;
		margin-bottom: 5px;
	}
	
	.specialgift_ttl02{
		font-size: 16px;
		margin-bottom: 5px;
		text-decoration: underline;
	}
	
	
	/* オファー */
	.cc_ttl01{
		font-size: 20px;
		margin-bottom: 20px;
	}
	
	.offer_conts01_l{
		text-align: left;
		line-height: 1.5;
	}
	
	.offer_conts_ttl01{
		font-size: 18px;
		line-height: 1.5;
		margin-bottom: 0 !important;
		text-align: center !important;
	}
	
	.offer_conts01_img{
		margin: 15px auto;
	}
	
	.offer_conts02{
		border: none;
		margin: 0 auto;
		padding: 10px 5px;
		width: calc(100% - 10px);
	}
	
	.offer_conts02 p{
		font-size: 20px;
	}
	
	.offer_conts02 p span{
		display: block;
	}
	
	.offer_conts03_pc{
		display: none;
	}
	
	.offer_conts03_sp{
		display: block;
		width: calc(100% - 30px);
		
		background: #90ce5a;
		color: #fff;
		text-align: center;
		padding: 15px;
	}
	
	.offer_conts03_sp a{
		color: #fff;
	}
	
	.offer_conts03_sp p{
		margin-bottom: 0;
	}

	
	.offer_conts03_sp_ttl{
		font-size: 18px;
		font-weight: bold;
		text-align: left;
	}
	
	.offer_conts03_sp_tel{
		font-size: 5.5vw;
		
		margin: 10px auto !important;
		letter-spacing: -0.015em;
	}
	
	.offer_conts03_sp_tel a{
		font-size: 1.5em;
		font-weight: bold;
	}
	
	.offer_conts03_sp_open{
		font-size: 16px;
		margin-bottom: 10px !important;
		line-height: 1.5;
	}
	
	.offer_conts03_sp_open span{
		display: block;
	}
	
	.offer_conts03_sp_text{
		text-align: left;
	}
	
	.offer_conts03_sp_btn{
		margin-top: 10px;
	}
	
	.offer_conts03_sp_btn a{
		display: block;
		background: #f99f47;
		border-radius: 100px;
		
		color: #fff;
		
		font-size: 15px;
		font-weight: bold;
		line-height: 1.5;
		padding: 12px 10px;
		text-decoration: none;
		
		box-shadow: 0 3px 0 rgba(0,0,0,0.25);
	}
	
	.offer_conts03_sp_btn a .fa{
		margin-right: 5px;
	}
	
	.offer_conts04{
		margin-top: 15px;
	}
	
	.offer_last{
		padding-bottom: 80px;
	}
	
	.offer_ttl01{
		font-size: calc(16px + 3.5vw);
		line-height: 1.5;
	}
	
	.offer_conts02{
		margin-bottom: 15px;
	}
	
	.offer_conts_line_pc{
		display: none;
	}
	
	.offer_conts_line_sp{
		display: block;
		background: #1dcd00;
		padding: 15px 20px;
	}
	
	.offer_conts_line_sp p{
		margin-bottom: 0;
		line-height: 1.5;	
	}

	.sp_line_ttl{
		font-size: 20px;
		font-weight: bold;
		color: #fff;
		text-align: center;
	}
	
	.sp_line_ttl img{
		width: auto;
		max-width: 100%;
	}
	
	.sp_line_img{
		line-height: 1;
		text-align: center;
	}
	
	.sp_line_img img{
		width: 100%;
		max-width: 72px;
		margin: 10px 0;
	}
	
	.sp_line_text01{
		font-size: 13px;
		color: #fff;
	}
	
	.sp_line_reserve{
		margin-top: 20px;
		border-top: 2px solid #fff;
		padding-top: 20px;
		color: #fff;
	}
	
	.sp_line_reserveconts{
		margin-bottom: 20px;
	}
	
	.sp_line_reserve_ttl01{
		font-size: 20px;
		font-weight: bold;
		text-decoration: underline;
		text-align: center;
		margin-bottom: 15px;
	}
	
	.sp_line_reserve_ttl02{
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 5px;
		text-decoration: underline;
	}
	
	.sp_line_reservebtn{
		margin-top: 10px;
	}
	
	.sp_line_reservebtn a{
		border: 1px solid #fff;
		padding: 10px;
		border-radius: 5px;
		
		color: #fff;
		text-decoration: none;
		
		font-size: 16px;
		font-weight: bold;

		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;		
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
	}
	
	.sp_line_reservebtn a img{
		width: auto;
		max-width: 26px;
		vertical-align: middle;
		margin-right: 10px;
		line-height: 0;
	}
	
	
	/* アクセス */
	.access_info_wrap{
		margin-top: 20px;
	}
	
	.access_map iframe{
		width: 90vw;
		height: 20vw;
		min-height: 250px;
	}
	
	.access_rootlist{
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-top: 15px;
	}
	
	.access_rootlist li{
		width: 100%;
		margin: 0 auto 30px !important;
	}
	
	.access_rootlist li:before{
		content: none;
	}
	
	.access_rootlist li:last-child{
		margin-bottom: 0 !important;
	}
	
	.access_rootlist_text:before{
		left: calc(-1em - 16px);
	}
	
	
	/* 最後に... */	
	
	.last_catch_ttl{
		font-size: 18px;
	}
	
	.last_text{
		font-size: 14px;
	}
	
	.last_catch_conts{
		margin-top: 20px;
	}
	
	
	/* pagetop */
	#pagetop img{
		width: 60px;
	}
	
	/* お問い合わせ */
	.contact_form{
		width: calc(100% - 30px);
		padding: 15px;
	}
	
	.form_tbl tr th{
		font-size: 14px;
		font-weight: bold;
	}
	
	.form_tbl tr td{
		font-size: 14px;
	}
	
	.form_tbl tr td input{
		width: calc(100% - 8px);
		font-size: 16px !important;
	}
	
	.form_confirm{
		text-align: left;
	}
	
	.form_confirm input{
		width: 1em;
	}
	
	.form_confirm span.wpcf7-list-item{
		margin: 0 !important;
	}
	
	.form_submit input{
		font-size: 16px;
		padding: 13px 0;
	}
	
	/* キャンセルポリシー */
	.cancel_tbl01 tr{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.cancel_tbl01 tr th,
	.cancel_tbl01 tr td{
		width: calc(100% - 10px);
		max-width: 100%;
		padding: 5px;
		text-align: left;
		
		font-size: 15px;
		line-height: 1.5;
	}	
	
	.cancel_tbl01 tr th{
		padding: 10px 5px;
	}
	
	.open_tbl01 tbody tr th,
	.open_tbl01 tbody tr td{
		font-size: 13px;
	}
	


	
	/* wordpress */
	#second #main{
		margin-top: 76px;
	}
	
	#second.blog #main .mainconts:first-of-type{
		padding-top: 10px;
	}
	
	#breadcrumb ul{
		padding: 5px 0;
	}
	
	#breadcrumb ul li{
		line-height: 2;
	}
	
	.single_date{
		margin-top: 10px;
	}
	
	.blog_single img{
		width: auto;
		max-width: 100%;
		height: auto;
		max-height: 100%;
		display: block;
		margin: 0 auto 15px;
	}
	
		.blog_single .f-l, .blog_single .f-r {
		max-width: 50%!important;
	}
	
		.blog_single img.alignright{
		max-width: 40%;
}

.blog_single img.alignleft{
		max-width: 40%;
}

	.blog_single li{
		font-size: 15px;
		background-size: 23px auto;
		padding-left: 30px;
	}

	
	.s_ttl01{
		font-size: 20px;
		line-height: 1.5;
		margin: 10px auto;
	}
	
	.single_ttl{
		font-size: 30px;
		line-height: 1.5;
		margin: 10px 0;
	}
	
	.single_cat{
		margin-bottom: 20px;
	}
	
	.blog_single h3{
		font-size: 1.4em;
		padding: 5px 0 5px 10px;
		margin: 20px auto 10px;
	}
	
	.blog_single h4{
		font-size: 1.2em;
	}
	
	.side_menu li{
		font-size: 13px;
		line-height: 1.5;
		margin-top: 20px;
	}
	
	/* ページ下部 */
	#sp_pagebtm.on{
		bottom: 0;
	}
	
	#sp_pagebtm a{
		line-height: 0;
	}
	
	#sp_pagebtm img{
		width: auto;
		max-width: 100%;
	}
	
	/* フッター */
	#footer{
		margin-bottom: 16vw;
	}
	
	.f_wrap{
		width: 90%;
		padding: 20px 5%;
	}
	
	.f_wrap a{
		color: #fff;
	}
	
	.f_conts_l{
		width: 100%;
	}
	
	.f_logo{
		text-align: center;
		margin-bottom: 10px;
	}
	
	.f_logo img{
		width: 200px;
	}
	
	.f_cr{
		font-size: 11px;
		width: calc(100% - 10px);
		padding:10px 5px;
		line-height: 1.2;
	}
}