@charset "utf-8";

@media screen and (max-width : 640px) {
	/* ==================================================
	clearfix
	================================================== */
	#tmp_sma_lnavi_cnt .switch_menu .noicon_list:after {
		content: ""; /* 変更しない */
		display: table; /* 変更しない */
		clear: both; /* 変更しない */
	}

	/* 共通
	================================================== */
	#tmp_main .container {
		max-width: 100%;
		width: 100%;
		padding: 0 20px;
	}
	/* コンテンツタイトル */
	#tmp_main .sec_title {
		margin-bottom: 20px;
	}
	#tmp_main .sec_title h2 {
		font-size: 143%;
	}
	/* ボタン */
	.btn_default {
		margin-top: 19px;
	}
	.btn_default a {
		min-width: 200px;
	}

	/* メインイメージ
	================================================== */
	#tmp_main .mainvisual_carousel {
		margin-bottom: 11px;
	}
	#tmp_main .mainvisual_carousel .pc_disp {
		display: none;
	}
	#tmp_main .mainvisual_carousel .sp_disp {
		display: block;
	}
	#tmp_mainvisual_carousel .splide__controls {
		min-width: 72px;
	}
	#tmp_main .slider_link {
		max-width: calc(100% - 105px);
		padding: 4px 6px 4px;
		left: 95px;
		right: 0;
		bottom: 8px;
	}
	#tmp_mainvisual_carousel .splide__track {
		margin-right: 20px;
		border-radius: 0 20px 20px 0;
	}

	/* メニュー */
	#tmp_main .sec_mainvisual {
		padding-bottom: 25px;
	}
	#tmp_gnavi {
		margin-top: 0;
		margin-bottom: 29px;
	}
	#tmp_gnavi .gnavi_list {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 7px;
	}
	#tmp_gnavi .gnavi_list li {
		gap: 7px 0;
		width: calc(48% - 3.5px);
		min-height: 103px;
		padding: 13px 10px;
	}
	#tmp_gnavi .gnavi_list .icon {
		max-width: 30px;
	}

	/* 重要なお知らせ */
	.important_announce .label {
		padding: 6px 6px 6px 10px;
		min-width: 115px;
	}
	.important_announce .announce_list {
		padding: 5px 6px 7px 6px;
	}
	.important_announce .announce_list li {
		background-position: left top;
	}


	/* 外来受付のご案内
	================================================== */
	#tmp_main .sec_outpatient {
		padding-top: 0;
		padding-bottom: 36px;
	}
	#tmp_main .sec_outpatient .outpatient_wrap {
		flex-wrap: wrap;
		gap: 20px 0;
	}
	#tmp_main .sec_outpatient .outpatient_ttl {
		margin-bottom: 23px;
		font-size: 143%;
	}
	#tmp_main .sec_outpatient .outpatient_ttl span::before {
		width: 41px;
		height: 41px;
		background-size: 41px auto;
	}

	#tmp_main .sec_outpatient .clinic_cnt {
		width: 100%;
		padding: 34px 23px 27px 23px;
	}
	#tmp_main .sec_outpatient .clinic_cnt .outpatient_ttl span {
		margin-left: 5px;
		padding-left: 50px;
	}

	#tmp_main .sec_outpatient .inquiry_cnt {
		width: 100%;
		padding: 32px 18px 26px;
	}
	#tmp_main .sec_outpatient .inquiry_cnt .outpatient_ttl span {
		margin-left: 0;
		padding-left: 50px;
	}


	/* 診療時間・休診日、ご予約・お問い合わせ　表 */
	#tmp_main .sec_outpatient .outpatient_table th {
		width: 32%;
		padding: 6px;
		font-size: 128.6%;
	}
	#tmp_main .sec_outpatient .outpatient_table td {
		padding: 5px 5px 9px;
	}
	#tmp_main .sec_outpatient .outpatient_table td .emphasis {
		font-size: 128.6%;
	}

	/* 診療時間・休診日　表微調整 */
	/* 休診日 */
	#tmp_main .sec_outpatient .inquiry_cnt .outpatient_table th {
		width: 42%;
	}
	#tmp_main .sec_outpatient .outpatient_table .closed_day th {
		padding: 11px 7px;
	}
	#tmp_main .sec_outpatient .outpatient_table .closed_day td {
		padding: 15px 5px 11px 4px;
	}
	#tmp_main .sec_outpatient .outpatient_table .closed_day .day {
		margin-bottom: 6px;
		line-height: 1.5;
	}
	/* マイナンバーカード */
	#tmp_main .sec_outpatient .outpatient_table .card_about td {
		padding: 7px 0;
	}
	#tmp_main .sec_outpatient .outpatient_table .card_about .link {
		padding-left: 23px;
		background-position: left top 6px;
		background-size: 17px auto;
	}
	/* 禁煙 */
	#tmp_main .sec_outpatient .outpatient_table .smoking td {
		padding: 10px 0px;
	}
	#tmp_main .sec_outpatient .outpatient_table .smoking .smoking_text {
		padding: 9px 26px;
	}

	/* ご予約・お問い合わせ　表微調整 */
	/* 注意事項 */
	#tmp_main .sec_outpatient .outpatient_table .important th {
		padding: 6px 10px 13px;
	}
	#tmp_main .sec_outpatient .outpatient_table .important td {
		padding: 5px 13px 13px 4px;
	}
	/* 予約専用電話 */
	#tmp_main .sec_outpatient .outpatient_table .appointment th {
		padding: 14px 7px 10px 10px;
	}
	#tmp_main .sec_outpatient .outpatient_table .appointment td {
		padding: 17px 4px 11px;
	}
	#tmp_main .sec_outpatient .outpatient_table .tel_num {
		margin-bottom: 5px;
	}
	/* 代表 */
	#tmp_main .sec_outpatient .outpatient_table .representative th {
		padding: 8px 10px 11px;
	}
	#tmp_main .sec_outpatient .outpatient_table .representative td {
		padding: 11px 4px 11px;
	}
	#tmp_main .sec_outpatient .outpatient_table .representative .link {
		padding-left: 22px;
		background-position: left -1px top 8px;
		background-size: 19px auto;
	}


	/* 交通アクセス
	================================================== */
	#tmp_main .sec_access {
		flex-wrap: wrap;
	}

	/* google map */
	#tmp_main .sec_access .access_cnt {
		width: 100%;
		order: 1;
	}
	#tmp_main .sec_access .map_cnt {
		width: 100%;
		order: 2;
	}
	#tmp_main .sec_access .map_cnt iframe {
		aspect-ratio: 375 / 203;
	}

	/* 交通アクセス */
	#tmp_main .access_cnt .sec_title {
		margin-bottom: 5px;
	}
	#tmp_main .sec_access .access_cnt {
		padding: 32px 25px 50px 22px;
	}
	#tmp_main .sec_access .access_info th {
		width: 16%;
		padding: 12px 5px 12px 0;
		font-size: 128.6%;
	}
	#tmp_main .sec_access .access_info td .emphasis {
		font-size: 128.6%;
	}
	/* 電車 */
	#tmp_main .sec_access .access_info .train td {
		padding: 10px 4px 5px 4px;
	}
	/* バス */
	#tmp_main .sec_access .access_info .bus th {
		padding: 10px 5px 9px 0px;
	}
	#tmp_main .sec_access .access_info .bus td {
		padding: 5px 5px 5px 2px;
	}
	/* 車 */
	#tmp_main .sec_access .access_info .car th {
		padding: 4px 10px 12px 0;
	}
	#tmp_main .sec_access .access_info .car td {
		padding: 3px 5px 3px 1px;
	}
	/* 住所 */
	#tmp_main .sec_access .access_info .address th {
		padding: 5px 5px 12px 0;
	}
	#tmp_main .sec_access .access_info .address td {
		padding: 0px 1px;
	}

	/* お知らせ、研修会・セミナー
	================================================== */
	.sec_info {
		padding: 38px 0 46px;
	}

	.sec_info .info_wrap {
		flex-wrap: wrap;
		gap: 39px 0;
	}
	/* タイトル */
	.sec_info .sec_title {
		margin-bottom: 15px;
	}
	/* お知らせ */
	.sec_info .news_cnt {
		width: 100%;
	}
	.sec_info .news_cnt .news_list li {
		gap: 6px 0;
		padding: 11px 10px 13px;
		border-bottom: 2px solid #cccccc;
	}

	/* 研修会・セミナー */
	.sec_info .seminar_cnt {
		width: 100%;
	}
	.sec_info .seminar_cnt .seminar_list li {
		gap: 0;
		padding: 12px 9px 12px;
		border-bottom: 2px solid #cccccc;
	}


	/* TOPICS
	================================================== */
	#tmp_main .sec_topics {
		padding-bottom: 39px;
	}

	/* タイトル */
	#tmp_main .sec_topics .sec_title {
		margin-bottom: 21px;
	}

	/* TOPICS */
	#tmp_main .sec_topics .topics_list_warp {
		margin-bottom: 41px;
	}
	#tmp_main .sec_topics .topics_list {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 11px;
	}
	#tmp_main .sec_topics .topics_list li {
		width: calc(50% - 5.5px);
	}
	#tmp_main .sec_topics .topics_list .image img {
		aspect-ratio: 32 / 41;
	}
	#tmp_main .sec_topics .topics_list .text {
		padding: 0px 7px 8px;
		min-height: 127px;
	}

	/* 広報ライブラリーリンク */
	#tmp_main .sec_topics .link_single .btn_link {
		justify-content: flex-start;
		padding: 15px 45px 17px 25px;
		background-position: right 18px center;
	}
	#tmp_main .sec_topics .link_single .btn_link .image {
		margin-right: 15px;
		max-width: 41px;
	}
	#tmp_main .sec_topics .link_single .btn_link .text {
		line-height: 2;
	}
	#tmp_main .sec_topics .link_single .btn_link .sp_show {
		display: inline;
	}

	/* SNSリンク */
	#tmp_main .sec_topics .link_list {
		flex-direction: column;
		gap: 10px 0;
	}
	#tmp_main .sec_topics .link_list .btn_link {
		gap: 0 20px;
		padding: 14px 25px 13px 21px;
	}

	/* 研修会・セミナー
	================================================== */
	#tmp_main .sec_recruit {
		padding-bottom: 27px;
	}
	#tmp_main .sec_recruit::before {
		height: 40%;
		background-image: url(/shared/templates/gan_top_rn/images/recruit_sp_bg.png);
	}

	/* タイトル */
	#tmp_main .sec_recruit .ttl_wrap {
		margin-bottom: 18px;
	}

	#tmp_main .sec_recruit .recruit_warp {
		flex-wrap: wrap;
	}
	#tmp_main .sec_recruit .recruit_image_cnt {
		margin-bottom: 26px;
		width: 100%;
	}
	#tmp_main .sec_recruit .recruit_image_cnt img {
		max-width: 286px;
		border-radius: 15px;
		aspect-ratio: 143 / 107;
		object-fit: cover;
	}
	#tmp_main .sec_recruit .recruit_info_cnt {
		width: 100%;
	}

	#tmp_main .sec_recruit .recruit_list {
		padding: 27px 26px 25px;
		background-image: -moz-linear-gradient( -33.532deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
		background-image: -webkit-linear-gradient( -33.532deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
		background-image: -ms-linear-gradient( -33.532deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
		background-image: linear-gradient( -33.532deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
	}
	#tmp_main .sec_recruit .recruit_list li {
		background-position: left 13px top 10px;
	}
	#tmp_main .sec_recruit .recruit_list a {
		padding: 10px;
	}

	/* 関連施設
	================================================== */
	#tmp_main .sec_related {
		padding: 22px 0 37px;
	}
	#tmp_main .sec_related .related_ttl {
		margin-bottom: 16px;
	}
	#tmp_main .sec_related .related_ttl h3 {
		font-size: 128.7%;
	}

	#tmp_main .sec_related .facility_cnt,
	#tmp_main .sec_related .link_cnt {
		grid-template-columns: 1fr;
	}
	#tmp_main .sec_related .list_wrap {
		padding: 0;
	}
	#tmp_main .sec_related .facility_list li,
	#tmp_main .sec_related .link_list li {
		max-width: 100%;
		min-height: 88px;
	}
	#tmp_main .sec_related .facility_list .text,
	#tmp_main .sec_related .link_list .text {
		padding: 12px 20px 10px 14px;
		font-size: 100%;
	}
	#tmp_main .sec_related .facility_list .pc_show,
	#tmp_main .sec_related .link_list .pc_show {
		display: none;
	}

	/* 関連施設 */
	#tmp_main .sec_related .facility_cnt {
		margin-bottom: 21px;
	}

	/* 関連リンク */
	#tmp_main .sec_related .link_cnt .list_wrap {
		flex-direction: column;
	}

	#tmp_main .sec_related .big_link {
		margin-bottom: 12px;
	}
	#tmp_main .sec_related .big_link a {
		flex-direction: row;
		padding: 0;
		aspect-ratio: auto;
	}
	#tmp_main .sec_related .big_link .image {
		display: flex;
		justify-content: center;
		align-items: center;
		max-width: 90px;
		width: 100%;
		padding: 10px;
		aspect-ratio: 1 / 1;
	}
	#tmp_main .sec_related .big_link .image img {
		width: auto;
		height: auto;
	}
	#tmp_main .sec_related .big_link .text {
		display: flex;
		align-items: center;
		flex: 1;
		padding: 12px 20px 10px 4px;
	}

	#tmp_main .sec_related .link_list:not(.big_link) {
		gap: 10px 0;
	}
}