@charset "utf-8";
/*==================================================
	スマホのみに適用
==================================================*/
@media only screen and (max-width: 640px){
	body { font-size: 85%; }
	.dsp_hp, .dsp_hpt { display: none; }

	/* ヘッダ */
	#header h1.title img {
		max-height: 21px;
	}
	#page_title .toppage img {
		height: 200px;
	}
	#page_title .toppage:before,
	#page_title .toppage:after {
		height: 10px;
		background-size: auto 10px;
	}
	#page_title .toppage:before,
	#page_title .subpage:before {
		top: 10px;
	}
	#page_title .toppage:after,
	#page_title .subpage:after {
		bottom: 10px;
	}
	#page_title .subpage:before,
	#page_title .subpage:after {
		height: 10px;
	}
	/* コンテナ */
	#wrap, #footer {
		min-width: 320px;
	}
	#container h3.sub {
		margin-bottom: 20px;
		font-size: 17px;
	}
	/* フッター */
	#footer .contact .tel a {
		font-size: 30px;
	}
	#footer .box dt img {
		max-width: 250px;
	}
	#copyright {
		height: auto;
		line-height: 1.6;
		padding: 5px 0;
	}
	/* 枠のマージン・パディング */
	.mb { margin-bottom: 30px; }
	.pt { padding-top: 30px; }
	.pb { padding-bottom: 30px; }
	/*--------------------------------------------------
	  トップページ
	--------------------------------------------------*/
	/* メッセージ */
	#top_msg {
		padding-top: 55px;
		padding-bottom: 50px;
	}
	#top_msg .box {
		padding: 20px 25px 30px;
		box-sizing:border-box;
	}
	#top_msg .msg_img01 {
		top: -40px;
		width: 72px;
	}
	#top_msg .msg_img02 {
		float:none;
		width: 60%;
		display: block;
		margin:0 auto 20px;
	}
	#top_msg p {
		font-size: 14px;
	}
	/*top_prevention*/
	#top_prevention {
		padding-top: 45px;
		padding-bottom: 40px;
		background-position: left top 70px;
		background-size: 75px auto;
	}
	#top_prevention .prevention_txt01 {
		font-size: 14px;
		margin-bottom: 30px;
	}
	#top_prevention .flex {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	#top_prevention .prevention_dl01 {
		background: #fff;
		width: 32%;
		text-align: center;
		padding-top: 25px;
		margin-right: 2%;
		margin-bottom: 15px;
	}
	#top_prevention .prevention_dl01:nth-of-type(4) {
		margin-right: 2%;
	}
	#top_prevention .prevention_dl01:nth-of-type(3n) {
		margin-right: 0;
	}
	#top_prevention .prevention_dl01 dt img {
		width: 60%;
	}
	#top_prevention .prevention_dl01 dd {
		font-size: 14px;
	}
	/*top_about*/
	#top_about {
		padding-top: 45px;
		padding-bottom: 45px;
	}
	#top_about .box {
		padding: 25px 25px 30px;
	}
	#top_about .about_img01 {
		float:none;
		display: block;
		width: 60%;
		margin:0 auto 10px;
	}
	#top_about .about_txt01 {
		font-size: 14px;
	}
	/* お知らせ */
	#top_info {
		padding-top: 35px;
		padding-bottom: 50px;
	}
	#top_info dl {
		font-size: 14px;
	}
	/* お知らせ */
	#top_info dt {
		float: none;
		width: auto;
	}
	#top_info dd {
		margin-left: 0;
	}
	/*--------------------------------------------------
		タクティール®ケアについて
	--------------------------------------------------*/
	#about .top_txt {
		font-size: 17px;
		margin-bottom: 15px;
	}
	#about .flex {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#about .box {
		width: 48%;
		margin-bottom: 15px;
		padding: 15px 10px;
	}
	#about .box_img {
		height: 60px;
	}
	#about .box_txt {
		font-size: 14px;
	}
	/* 期待される効果 */
	#effect .effect_title {
		margin-bottom: 20px;
	}
	#effect .effect_title img {
		max-height: 18px;
	}
	#effect .img_sun {
		width: 60px;
		top: -30px;
	}
	#effect .in {
		background-size: 100% auto;
		padding: 20px 10px 60px;
	}
	#effect .tree .box {
		width: 100%;
		height: auto;
		min-height: auto;
		border-radius: 10px;
		margin-bottom: 15px;
		padding: 20px 15px;
		display: block;
	}
	#effect .tree .flex1,
	#effect .tree .flex2,
	#effect .tree .flex3 {
		-webkit-flex-flow: column;
		flex-flow: column;
		margin: 0;
	}
	#effect .tree .box::before {
		border-radius: 10px;
	}
	#effect .tree .flex1 .box:first-of-type,
	#effect .tree .flex2 .box:first-of-type,
	#effect .tree .flex2 .box:nth-of-type(2),
	#effect .tree .flex3 .box:first-of-type,
	#effect .tree .flex3 .box:nth-of-type(2),
	#effect .tree .flex3 .box:last-of-type  {
		top: auto;
	}
	#effect .tree .flex1 .box:nth-of-type(2) {
		margin: 0 auto 15px;
	}
	#effect .tree .box .box_txt {
		text-align: left;
	}
	#effect .tree_txt {
		font-size: 14px;
		text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.9);
	}
	#effect .rit_txt .txt1,
	#effect .rit_txt .txt2 {
		text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.9);
	}
	/*--------------------------------------------------
		このような方におすすめ
	--------------------------------------------------*/
	#reccommended {
		margin-bottom: 40px;
		background-size: 80px;
		background-position: top 127px right;
	}
	#reccommended .flex {
		display: block;
	}
	#reccommended .list {
		width: auto;
	}
	#reccommended .list li {
		margin-bottom: 15px;
		padding: 8px 10px 8px 35px;
	}
	/*--------------------------------------------------
		料金案内・アクセス・お問合せ
	--------------------------------------------------*/
	/* 料金 */
	#price .in {
		padding: 20px 15px 25px;
	}
	#price .in::after {
		background-size: 25px;
	}
	#price .in .list  {
		width: auto;
	}
	#price .in .list li {
		-webkit-flex-flow: column;
		flex-flow: column;
		background-position: top 12px left;
	}
	#price .in .list li .price {
		text-align: right;
		margin-top: 8px;
	}
	/* アクセス */
	#access_contents .access_tbl th, #access_contents .access_tbl td {
		display: block;
		font-size: 14px;
	}
	#access_contents .map {
		margin-top: 25px;
	}
	/* お問合せ */
	#contact_contents {
		margin-bottom: 40px;
	}
	#contact_contents .msg {
		font-size: 16px;
	}

/*------------------------------------------------*/
}
