/*==================================================
	スマホのみに適用
==================================================*/
@media only screen and (max-width: 640px){
	body { font-size: 85%; }
	.dsp_hp, .dsp_hpt { display: none; }

	/* ヘッダ */
	#header p.title img {
		max-height: 30px;
	}
	/* コンテナ */
	#wrap, #footer {
		min-width: 320px;
	}
	#container h2.sub,
	#container h3.sub {
		margin-bottom: 20px;
		font-size: 18px;
	}
	#container h3.sub span {
		font-size: 16px;
	}
	/* フッター */
	#footer .in {
		flex-flow: column;
	}
	#footer .contact,
	#footer .box .schedule {
		padding: 0;
		width: auto;
		box-sizing: border-box;
	}
	#footer .box .schedule .txt, #footer .contact .txt2 {
		font-size: 13px;
	}
	#footer .contact .txt2 {
		line-height: 1.8em;
		margin-bottom: 20px;
	}
	#footer .contact .txt {
		font-size: 16px;
	}
	#footer .contact .tel a {
		font-size: 29px;
	}
	#footer .box .schedule table th, #footer .box .schedule table td {
		font-size: 13px;
		height: 31px;
	}
	#footer .box .schedule table th {
		width: 110px;
	}
	#footer .box .schedule table td {
		width: 26px;
	}
	#footer .box .schedule table td img {
		width: 15px;
	}
	#footer .box .schedule {
		border: none;
	}
	#copyright {
		font-size: 10px;
	}
	/* 枠のマージン・パディング */
	.mb { margin-bottom: 30px; }
	.pt { padding-top: 30px; }
	.pb { padding-bottom: 30px; }
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	/* トップメッセージ */
	#top_msg::before {
		background-size: 23% 100%;
	}
	#top_msg {
		padding-top: 70px;
		margin-top: -52px;
	}
	#top_msg ol {
		margin: 0 auto;
		width: 300px;
	}
	#top_msg ol li {
		font-size: 15px;
		line-height: 2.3em;
	}
	#top_msg ol li span {
		font-size: 15px;
		width: 25px;
		height: 25px;
		line-height: 25px;
		box-sizing:inherit;
	}
	#total p {
	font-size: 15px;
	padding: 0;
	}
	/* メニューコンテンツ */
	#top_menu .in {
		flex-flow: column;
	}
	#top_menu .box {
		margin-left: auto;
		margin-right: auto;
	}
	#top_menu .box+.box {
		margin-top: 40px;
	}
	#top_menu .in .box .btn {
		background-size: 100%;
	}
	#top_menu .in .box .btn a {
		width: 80px;
		height: 80px;
		font-size: 15px;
	}
	/* お知らせ */
	#top_info dt {
		float: none;
		width: auto;
	}
	#top_info dd {
		margin-left: 0;
	}
	#top_info .w70 {
		margin-bottom: 30px;
	}
	#top_info .w30 {
		width: 80%;
		margin: 0 auto;
	}
	
/*--------------------------------------------------
	診療案内
--------------------------------------------------*/
	#menu_page .box .in {
		padding: 10px;
	}
	#menu_page .box .in .list dl {
		width: 31%;
		margin: 0 0.5%;
	}
	#menu_page .box .in .list.w2 dl {
		width: 48%;
		max-width: 230px;
	}
	#menu_page .box .in .list dl.img3 {
		width: 100%;
	}
	#menu_page .box .in .list dl.img3 dt {
		font-size: 0;
	}
	#menu_page .box .in .list dl.img3 dt img {
		width: 32%;
	}
	#menu_page .box .in .in2 .img_rit {
		float: none;
		text-align: center;
		margin-left: 0;
	}
	#menu_page .box .in .list .smt_mr {
		margin-right: 10px;
	}
/*--------------------------------------------------
	院長のご紹介
--------------------------------------------------*/
	#doctor_msg h3.sub {
		margin-bottom: 50px;
	}
	#doctor_msg .wrap .box {
		padding: 10px;
	}
	#doctor_msg .wrap .box p.txt {
		text-align: left;
		margin-bottom: 0;
	}
	#doctor_msg .line_area {
		background-size: 100% auto;
	}
	#doctor_prf .prf dl, #doctor_prf .prf dl dt, #doctor_prf .prf dl dd {
		display: block;
	}
	#doctor_prf .prf dl dt, #doctor_prf .prf dl dd {
		padding: 10px;
	}
	#doctor_prf .prf dl dt {
		width: 100%;
	}
	#doctor_info table tr th, #doctor_info table tr td {
		display: block;
	}
	#doctor_info .img span {
		text-align: left;
	}
	#doctor_info .img .sp_cen span {
		text-align: center;
	}
	#doctor_info .img img {
		margin-bottom: 10px;
	}
/*--------------------------------------------------
	当院のご案内
--------------------------------------------------*/
	#room .list{
		margin-bottom: 5px;
	}
	#room .list dl {
		width: 49%;
		max-width: 263px;
		margin-bottom: 20px;
	}
	#room .list dl:nth-of-type(2n+1) {
		margin-left: 0;
		clear: both;
	}
	#room .bgm .txt {
		text-align: left;
	}
	#room .bgm .imgs p {
		width: 48%;
		vertical-align: top;
	}
	#room .bgm .imgs p img {
		height: 100px;
		width: auto;
	}
	#room .orange_box {
		padding: 5px;
	}
	#room .orange_box p{
		font-size: 13px;
	}
	
/*------------------------------------------------*/
}
