@charset "utf-8";

@media only screen and (max-device-width: 1169px) {
	body {
		width: 100%;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		font-size: 92%;
	}
}

@media only screen and (max-width: 767px) {
	body {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	.pc_obj,
	.pc_obj_inline {
		display: none;
	}

	.sp_obj {
		display: block;
	}

	.alignRight_pc {
		text-align: left !important;
	}

	.alignLeft_sp {
		text-align: left;
	}

	.f_left,
	.f_right {
		float: none;
	}

	.img_r {
		float: none;
		margin: 0 auto 1em auto;
		display: block;
		text-align: center;
	}

	.img_l {
		float: none;
		margin: 0 auto 1em auto;
		display: block;
		text-align: center;
	}

	.mr1 {
		margin-right: 0 !important;
	}

	.inner,
	.inner_indent {
		margin: 0 auto;
		width: 95%;
	}

	.column2 {
		width: 100%;
		margin: 0 auto;
	}

	.flex_wrap_sp {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.flex1,
	.flex2,
	.flex3,
	.flex4,
	.flex6,
	.flex7,
	.flex8 {
		padding: 0;
	}

	/* PCで左→右に配置／SPで上→下に配置 */
	.flex_LRTB,
	.flex_RLTB {
		flex-direction: column;
		-webkit-flex-direction: column;
	}

	/* テキスト＋挿絵専用コンポーネント float_TB */
	.L20,
	.L30,
	.L40,
	.L50,
	.L60,
	.L70,
	.L80,
	.R20,
	.R30,
	.R40,
	.R50,
	.R60,
	.R70,
	.R80 {
		width: 100%;
		float: none;
	}

	.LBP,
	.RBP {
		padding: 0 0 1rem 0 !important;
	}

	.text_frame_g {
		width: auto;
		margin: 0;
	}
}


@media only screen and (max-width: 767px) {

	.table001 th,
	.table001 td {
		padding: .2rem .2rem;
	}
}

@media only screen and (max-device-width: 1169px) {
	header {
		width: 100%;
	}

	article {
		margin: 0 1% 0 0;
	}

	#pageTop {
		bottom: 10px;
		right: 10px;
	}

	/*TOPページ 
	------------------------------------------------------------*/

	nav li:nth-child(5),
	nav li:nth-child(6) {
		letter-spacing: -2px;
	}

}

@media only screen and (max-width: 767px) {

	/* header Area -----------------------------------------------------*/
	header .yoyaku {
		margin: 0.5em auto;
		padding: 0;
		text-align: center;
	}

	.hdg_seo {
		text-align: center;
		font-size: 8px;
		padding: .2em 0;
		margin: .5em auto;
	}


	.h_content {
		width: 45%;
		display: block;
	}

	.h_logo {
		text-align: center;
		line-height: 0;
	}

	.h_info {
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.h_info li {
		width: 49%;
		margin: 0 0 0.6rem;
	}

	.h_info li.pc_n {
		display: inline-block;
	}

	/*-----Gnavi-----*/
	nav .inner {
		width: 100%;
	}

	nav ul.clearfix {
		display: flex;
		flex-wrap: wrap;
	}

	nav ul.clearfix:after {
		display: none;
	}

	nav ul li {
		display: flex;
		float: none;
		width: 22%;
		font-size: 13px;
		border-bottom: 2px solid #fff;
		border-right: 1px solid #fff;
		box-sizing: border-box;
		letter-spacing: 0;
	}

	nav li:nth-child(4n) {
		border-right: none;
	}

	nav li:nth-child(1) {
		width: 34%;
	}

	nav li:nth-child(5),
	nav li:nth-child(6) {
		width: 28%;
	}

	nav ul li a {
		flex: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0.8em 0;
		font-size: 1em;
		line-height: 1.4;
	}

	/* content Area -----------------------------------------------------*/
	main {}

	article {
		float: none;
		width: 100%;
		margin: 0 0 1em 0;
		max-width: inherit;
	}

	aside {
		float: none;
		width: 100%;
		text-align: center;
		max-width: inherit;
	}

	aside ul.aside_nav {}

	aside li {
		margin: 0 auto 0.5em;
		width: 65%;
		text-align: left;
	}

	/* FOOTER -----------------------------------------------------*/
	/* ----------- 医院概要 ------------*/
	footer {
		padding: 2em 0 0;
	}

	footer .logo {
		width: 95%;
		margin: 0 auto;
		text-align: center;
	}

	footer .f_info .f_logo {
		margin: 0 0 1em 0;
	}

	#follow_nav {
		display: none;
	}

	/* 共通style
------------------------------------------------------------*/
	section {
		margin: 0 auto 2em auto;
		width: 100%;
	}

	/*TOPページ 
------------------------------------------------------------*/
	.mainvisual {
		position: static;
	}

	.mainvisual .mv_txt {
		position: static;
		width: 90%;
		max-width: inherit;
		margin: 0 auto 0.5em auto;
	}

	/*医院概要
	------------------------------------------------------------*/
	.gaiyo {
		width: 98%;
	}

	.gaiyo dt {
		float: none;
	}

	.gaiyo dd {
		padding-left: 1.5em;
	}

	iframe {
		width: 100%;
	}

	/*下層ページ 
	------------------------------------------------------------*/
	#detail {
		padding-top: 1em;
	}

	#detail section {
		padding: 0.7em;
	}

	#detail section section {
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
	}

	section .textBk {
		padding: 0 0.5em;
	}

	#detail h1 {
		font-size: 21px;
	}

	#detail h2 {
		font-size: 20px;
		padding: 0.6em 0 0.5em 1.8em;
		margin-bottom: 0.4em;
	}

	#detail h2::before {
		width: 1.4em;
	}

	#detail h3 {
		font-size: 18px;
	}


	.pc_n {
		display: block;
	}


	.page_link {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}

	.page_link li a {
		padding: 0.2em 0.4em;
	}

	.dl_style dd {
		padding: 0;
	}

	.dl_style dd ul,
	.blue_lis {
		padding: 0.5em 0.5em 0.5em 1.5em;
	}

	/*ご挨拶
	------------------------------*/
	#detail .greeting .biography dl dt {
		float: none;
	}

	#detail .greeting .biography dl dd {
		padding-left: 0;
	}

	#detail dl.identity dd {
		padding-left: 0.5em;
	}

	/*------------------------------------------------------------------*/
	/* クリニック紹介 --------------------------------------------------*/
	/*------------------------------------------------------------------*/
	.thumb-item {
		width: 100%;
	}

	.thumb-item-nav {
		width: 100%;
	}

	/* 大腸カメラ table  .def-tbl > */
	.def-tbl.colonoscopy-tbl thead {
		display: none;
	}

	.def-tbl.colonoscopy-tbl tbody th {
		display: block;
		float: none;
		background: #65c15d;
		color: #fff;
		border-bottom: 1px solid #ccc;
		padding: 0.8em 0.2em 0.5em 0.5em;
	}

	.def-tbl.colonoscopy-tbl tbody td {
		display: block;
		float: none;
		padding: 0.2em 2em 0.2em 0;
	}

	.def-tbl.colonoscopy-tbl tbody tr td.f3:before {
		content: "３割負担";
		color: #00529f;
		display: inline-block;
		text-align: center;
		font-size: 80%;
		margin-right: 1em;
	}

	.def-tbl.colonoscopy-tbl tbody tr td.f1:before {
		content: "１割負担";
		color: #00529f;
		display: inline-block;
		font-size: 80%;
		margin-right: 1em;
	}

	/* 腹部超音波検査 table  .def-tbl > */
	.def-tbl.ultrasound-tbl thead {
		display: none;
	}

	.def-tbl.ultrasound-tbl tbody th {
		display: block;
		float: none;
		background: #65c15d;
		color: #fff;
		border-bottom: 1px solid #ccc;
		padding: 0.8em 0.2em 0.5em 0.5em;
	}

	.def-tbl.ultrasound-tbl tbody td {
		display: block;
		float: none;
		padding: 0.2em 2em 0.2em 0;
	}

	.def-tbl.ultrasound-tbl tbody tr td.f4:before {
		content: "自費検査※";
		color: #00529f;
		display: inline-block;
		text-align: center;
		font-size: 80%;
		margin-right: 1em;
	}

	.def-tbl.ultrasound-tbl tbody tr td.f3:before {
		content: "３割負担";
		color: #00529f;
		display: inline-block;
		text-align: center;
		font-size: 80%;
		margin-right: 1em;
	}

	.def-tbl.ultrasound-tbl tbody tr td.f1:before {
		content: "１割負担";
		color: #00529f;
		display: inline-block;
		font-size: 80%;
		margin-right: 1em;
	}


}



@media (hover: hover) {

	.pagination li a:hover {
		background: var(--color_main);
		opacity: 1;
		color: #fff;
	}
}


@media screen and (max-width: 767px) {
	.sp-only {
		display: block;
	}

	.pc-only {
		display: none;
	}

	.section-wrap {
		font-size: 14px;
	}

	.breadcrumbs-wrap {
		font-size: 0.8em;
	}

	.post-content .posts_viewmore a {
		min-width: 200px;
	}

	.normal_box,
	.summary_box,
	.research_box,
	.info_box,
	.img_slider,
	.voice {
		padding: 1.25em;
	}


	.img_side {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.down_arrow {
		margin: 2em auto;
	}

	.cite_box {
		padding: 1.25em 1.25em 1.25em 2.4em;
	}

	.cite_box::before {
		left: 1em;
	}

	.cite_box .img_full {
		width: 100%;
	}

	.quick_link {
		grid-template-columns: repeat(2, 1fr);
	}

	.highlight_name {
		font-size: 1.2em;
	}

	.recommend_post_wrap,
	.posts_list {
		grid-template-columns: repeat(2, 1fr);
	}

	.img_slider_list li {
		flex: 0 0 calc(50% - 16px);
		max-width: calc(50% - 16px);
	}

	.voice {
		width: 100%;
		min-width: 90%;
	}

	.voice_inner .img_side img {
		max-width: 370px;
		margin-right: auto;
		margin-left: auto;
	}

	.speech_bubble {
		font-size: 16px;
	}

	.summary_box_title span {
		font-size: 16px;
		padding: 0 .8em;
	}

	.sticky_top .cta_btn a {
		font-size: 0.9em;
	}

	.sub_title,
	.num_title,
	.pros_cons_title,
	.voice_name,
	.toggle_box_title {
		font-size: 16px;
	}
}

@media screen and (max-width: 400px) {

	.recommend_post_wrap,
	.posts_list {
		grid-template-columns: 1fr;
	}

	.cta_btn a {
		min-width: auto;
	}

	nav ul li {
		font-size: 12px;
	}
}

@media screen and (max-width: 340px) {

	nav li:nth-child(1) {
		letter-spacing: -0.08em;
	}
}