/*	===============================================================
	● CSSファイル
	---------------------------------------------------------------
	Release 2024.01.09                                Powered by TDR
	=============================================================== */

	/****************************
	 * レイアウト
	****************************/
	html
	{
		font-size: 57.5%;
		scroll-padding-top:160px;
		scroll-behavior: auto;
	}
	body {
		/* color:#58646f; */
		color:#333;
		font-size: 18px;
		font-size: 1.8rem;
		font-family: YakuHanRP, 'Zen Maru Gothic', 'Lato', sans-serif;
		font-weight: 400;
	}
	@media screen and (max-width: 767px)
	{
		body {
			font-size: 16px;
			font-size: 1.6rem;
		}
	}
	/* a:visited {
		color:#333;
	} */
	.pconly{display:inline-block;}
	.sponly{display:none;}
	@media screen and (max-width: 767px)
	{
		html
		{
			scroll-padding-top:80px;
		}
		.pconly{display:none;}
		.sponly{display:inline-block;}
	}

	/* aタグ無効 */
	.l-gnav_toggle
	{
		pointer-events:none;
	}
	.nolink
	{
		cursor:not-allowed!important;
	}
	.nolink a
	{
		pointer-events:none;
		opacity: 0.2;
	}
	.p-index_treatment a
	{
		pointer-events:none;
	}
	.l-box.first
	{
		padding-top:0;
	}
	.c-img_radius
	{
		border-radius: 0px;
	}
	.c-img_radius img
	{
		border-radius: 10px;
	}
	[class*="c-ttl__"]
	{
		line-height: 1.5;
	}
	@media screen and (min-width: 768px)
	{
		a[href^="tel:"]
		{
			pointer-events: none;
		}
	}

	.c-key__ttl {
		text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 20px #fff, 0 0 20px #fff, 0 0 30px #fff, 0 0 30px #fff, 0 0 40px #fff, 0 0 40px #fff, 0 0 50px #fff, 0 0 50px #fff;
	}
	.c-key__ttl__eng {
		margin-bottom: 15px;
	}
	.l-inner {
		padding: 0 15px 30px;
	}


	.sp_tel_add
	{
		width:30px;
		margin-left:auto;
		margin-right:15px;
		margin-top:-12px;
	}
	.sp_line_add
	{
		width:40px;
		margin-right:45px;
		margin-top:-12px;
	}
	.sp_youtube_add
	{
		width:45px;
		margin-right:10px;
		margin-left:auto;
		margin-top:-12px;
	}
	.sp_youtube_add p
	{
		color: #e5467d;
		font-weight: bold;
		font-size: 1.1rem;
		text-align: center;
		white-space: nowrap;
		letter-spacing: 0;
		margin-top: -9px;
	}
	.l-header
	{
		z-index: 999;
	}
	.l-header__side
	{
		z-index: 998;
	}
	@media screen and (max-width: 767px)
	{
		.l-header__logo
		{
			width: 200px;
			padding-right:10px;
		}
	}
	/****************************
	 * TOPページ
	****************************/
	.mv,.mv__inner,.mv__slider li figure
	{
		height: 600px;
	}
	.mv__slider li figure img
	{
		object-position: center 10%;
	}
	@media screen and (max-width:1200px)
	{
		.mv,.mv__inner,.mv__slider li figure
		{
			height: 600px;
		}
	}
	@media screen and (max-width:1100px)
	{
		.mv,.mv__inner,.mv__slider li figure
		{
			height: 450px;
		}
	}
	@media screen and (max-width:900px)
	{
		.mv,.mv__inner,.mv__slider li figure
		{
			height: 380px;
		}
		.mv__ttl {
			font-size: 35px;
    		font-size: 3.5rem;
		}
		.mv__slider li figure img
		{
			object-position: center 65%;
		}
	}
	@media screen and (max-width:768px)
	{
		.mv,.mv__inner,.mv__slider li figure
		{
			height: 450px;
		}
	}
	/* .mv__ttl {
		text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 20px #fff, 0 0 20px #fff, 0 0 30px #fff, 0 0 30px #fff, 0 0 40px #fff, 0 0 40px #fff, 0 0 50px #fff, 0 0 50px #fff;
	} */
	.mv__ttl {
		line-height: 1.4;
		text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 20px #fff, 0 0 20px #fff, 0 0 30px #fff, 0 0 30px #fff, 0 0 40px #fff, 0 0 40px #fff, 0 0 50px #fff, 0 0 50px #fff;
		font-weight:bold;
		font-weight: 700;
	}
	.mv__icon li.-large span
	{
		white-space: nowrap;
	}
	.top-clinic {
		background: url(../images/clinic-bg.webp) center top/cover;
	}
	.top-treatment__list:after {
		background: url(../images/tree.webp) center/cover;
	}
	.top-philosophy__list li .-read
	{
		text-align: left;
		white-space: normal;
		padding:0 23px;
		letter-spacing: normal;
	}
	.c-ttl__main__jp
	{
		line-height: 1.5;
	}
	.c-ttl__main__jp.-left
	{
		line-height: 1.5;
	}
	.top-message__box .-unit .-txt {
		line-height: 1.8;
		color:#333;
	}
	.contact-box {
		padding: 15px 25px 15px 24px;
	}
	.contact-box .-read {
		font-size: 20px;
		font-size: 2rem;
	}
	.top-treatment__list li.hide {
		background: transparent;
		box-shadow: none;
		padding: 30px 0;
		/* background: #fff;
		box-shadow: 0 0 10px rgba(0,0,0,.1);
		padding: 100px 55px 48px 60px; */
	}
	.l-header__side {
		top: 25%;
	}
	.l-header__side2
	{
		position: fixed;
    	right: 0;
		/* top: 68%; */
		top: 48%;
		z-index: 998;
	}
	.l-header__side2 a
	{
		text-decoration: unset;
	}
	.l-header__side3
	{
		position: fixed;
    	right: 0;
		top: 48%;
		z-index: 998;
	}
	.l-header__side3 a
	{
		text-decoration: unset;
	}
	.l-header__side3 .l-header__side__item a {
    background: #61b4f8;
}

	@media screen and (max-width: 768px)
	{
		.l-header__side2
		{
			position: fixed;
			right: 0;
			top:auto;
			bottom:65px;
			z-index: 998;
		}
		.l-header__side2 a
		{
			width: 45px;
			border-radius: 10px 0 0 10px;
		}
		.l-header__side3
		{
			display: block;
			margin-bottom: unset;
			width: calc(100%/2);
			top:unset;
		}
		.l-header__side3 .l-header__side__item {
			width: 100%;
		}
		.l-header__side3 .l-header__side__item a {
			color:#fff;
			background: #61b4f8;
		}
	}

	.mv__icon li.-large .-icon.ct {
		width: 100px;
		display: block;
		margin-bottom: 5px;
	}
	.top-news__box .-content .-unit .-list li a .-read {
		font-size: 20px;
		font-size: 2rem;
		line-height: 1.2;
		width: calc(100% - 100px);
		color:#000;
	}

	.top-banner
	{
		background: #ffffed;
    	padding-top: 50px;
	}
	.top-banner .l-inner
	{
		display: flex;
		justify-content:center;
		width:calc( 450px * 2 + 30px);
		max-width: 100%;
		margin:auto;
		gap:30px;
	}
	.top-banner a
	{
		width:100%;
		max-width:450px;
		margin:auto;
		display:block;
		box-shadow:0 0 10px #88885c;
	}
	@media screen and (max-width: 767px)
	{
		.mv__ttl
		{
			text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 10px #fff;
			font-weight:bold;
			letter-spacing: -1px;
			white-space: nowrap;
			font-size: 3.3rem;
		}
		.top-news__box .-content .-unit {
			margin-top: 0px;
			margin-bottom: 10px;
		}
		.mv__content
		{
			padding: 30px 0;
		}
		.mv
		{
			max-height: 427px;
		}
		.mv__slider .u-only_sp
		{
			max-height: 427px;
		}
		.l-header__side {
			top: unset;
		}

		.top-news__box .-content .-unit .-list li a .-read {
			font-size: 17px;
			font-size: 1.7rem;
			line-height: 1.2;
			width: 100%;
			color:#000;
		}

		.mv__icon li.-large .-icon.ct {
			width: 55px;
			display: block;
			margin-bottom: 5px;
		}

		.top-banner .l-inner
		{
			display: flex;
			flex-direction: column;
			justify-content:center;
			width:100%;
			margin:auto;
			gap:30px;
		}

		.c-ttl__line__main {
			letter-spacing:0;
		}

		.c-ttl__main__jp.-left
		{
			letter-spacing:0;
		}
	}

	/****************************
	* ヘッダー
	****************************/
	.l-header__nav ul li a
	{
		text-align: center;
	}
	.l-header__nav ul li span
	{
		display: block;
		padding: 10px 9px;
		font-weight: 700;
		font-size: 20px;
		font-size: 2rem;
		letter-spacing: .1em;
		text-align: center;
	}
	.l-header__nav ul li span:hover
	{
		color: #a9e15e;
		opacity: .8;
	}
	.l-header__nav ul li p.new
	{
		font-size: 1.2rem;
		color: #fff;
		background: #ec2424;
		letter-spacing: .1em;
		text-align: center;
		border-radius: 5px;
	}

	.l-header__tel__nav li.-access a:after {
		position: absolute;
		content: "";
		width: 17px;
		height: 17px;
		background: url(/common/images/ico-map.png) no-repeat center/contain;
		top: 57%;
		left: 0;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	.l-header__insta {
		width: 44px;
		height: 44px;
		margin-left: 15px;
		margin-right: 10px;
	}
	.l-header__insta a {
		width: 100%;
		height: 100%;
	}
	.l-header__youtube
	{
		width: 54px;
		height: 44px;
		margin-left: 10px;
	}
	.l-header__youtube a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 80%;
		height: 100%;
		text-align: center;
	}
	.l-header__youtube a p
	{
		color: #e5467d;
		font-weight: bold;
		font-size: 1.2rem;
		text-align: center;
		white-space: nowrap;
		letter-spacing: 0;
		margin-top:-5px;
	}
	.l-header__side__item.-recruitment a
	{
		margin-top:30px;
		color: #ec2424;
		border-top:2px solid #ec2424;
		border-left:2px solid #ec2424;
		border-bottom:2px solid #ec2424;
		background: #fce3ec;
	}
	.l-header__side__item.-recruitment a .-recruitment
	{
		color: #ec2424;
	}

	@media screen and (max-width: 1100px)
	{
		.l-header__insta {
			margin-left: 5px;
		}
	}
	.l-header__side__item a {
		background: #0079D0;
	}

	@media screen and (max-width: 1280px)
	{
		.l-header__nav ul li span
		{
			font-size: 16px;
			font-size: 1.6rem;
		}
	}
	@media screen and (max-width: 767px)
	{
		.l-header__nav ul li span
		{
			font-size: 15px;
			font-size: 1.5rem;
			padding-bottom:0;
			text-align: center;
		}
		.l-header__nav ul
		{
			padding-top: 8px;
		}
		.l-header__nav ul li.has-child .sub-menu li a
		{
			text-align: center;
			color:#a9e15e;
		}
		.l-header__nav ul li.has-child .sub-menu li a:after
		{
			content:none;
		}
		.l-header__top
		{
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: center;
			margin-top: 30px;
			gap:30px;
		}
		.l-header__top .l-header__tel
		{
			width:100%;
			margin-bottom:0;
		}
		.l-header__side__item
		{
			margin-bottom: unset;
			width: calc(100%/2);
		}
		.l-header__right {
			padding-bottom: 130px;
		}

		.l-header__insta {
			margin-left: 0px;
		}
		.l-header__side__item.-recruitment a .-recruitment
		{
			font-size: 1.8rem;
			line-height: 1.1;
		}
		.l-header__nav ul li p.new
		{
			width:fit-content;
			padding:1px 10px;
			margin:3px auto 0;
		}
	}
	/****************************
	 * フッター
	****************************/
	.l-footer__nav > ul
	{
		align-items: flex-start;
	}
	.l-footer__nav > ul > li > span {
		display: block;
		padding: 7px 12px;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
	}
	.l-footer__nav > ul > li > ul
	{
		flex-direction: column;
		align-items: flex-start;
	}
	.l-footer__nav > ul > li > ul > li > a {
		display: block;
		padding: 7px 0px;
		font-size: 15px;
		font-size: 1.5rem;
		font-weight: 700;
		color: #a9e15e;
		position: relative;
	}
	.l-footer__nav > ul > li > ul > li > a::before {
		content:"-";
		color:#a9e15e;
		padding-right:0.3em;
	}
	.l-footer__nav > ul > li > ul > li > a:hover {
		opacity: 0.6;
	}

	/* 診療時間 */

	@media screen and (max-width: 767px)
	{
		.l-footer {
			padding: 0 0 0px;
		}
		.l-footer__nav > ul {
			display: block;
			columns: 2;
		}
		.l-footer__nav > ul > li > ul
		{
			display: block;
		}
		.l-footer__nav > ul > li > ul > li > a {
			display: block;
			padding: 0px 0px 5px 15px;
			font-size: 15px;
			font-size: 1.5rem;
			font-weight: 700;
			color: #a9e15e;
		}
		.l-footer__nav > ul > li {
			position: relative;
		}
		.l-footer__nav ul li a:after {
			content:none;
		}
		.l-footer__nav > ul > li > span
		{
			font-size: 14px;
			font-size: 1.4rem;
			padding: 5px 20px;
			position: relative;
		}
		.l-footer__nav > ul > li > a:after,
		.l-footer__nav > ul > li > span:after
		{
			position: absolute;
			content: "";
			width: 7px;
			height: 7px;
			background: #a9e15e;
			border-radius: 50%;
			left: 7px;
			top: 50%;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
	}
	.footer_sns
	{
		margin-top:30px;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap:20px;
	}

	/****************************
	 * treatment
	****************************/
	.p-treatment__top
	{
		padding: 90px 0 30px;
	}
	.p-treatment__top .-unit > p
	{
		font-size:1.8rem;
		line-height: 1.8;
	}

	.p-treatment__top__inner .-unit
	{
		position: absolute;
		right: 0;
		bottom: 0;
		background: #fff;
		border-radius: 24px;
		width: 50%;
		padding: 45px;
		box-shadow: 0 0 8px rgba(0,0,0,.2);
		letter-spacing: .075em;
	}

	.p-treatment__content
	{
		padding: 30px 0 45px;
	}

	.flex_container
	{
		display: flex;
		justify-content: space-between;
		gap:20px;
	}
	.box_container
	{
		width: 46%;
		border-width: 2px;
		border-color: #ccc;
		border-style: dashed;
		border-radius: 10px;
		position: relative;
		padding: 12px 23px 21px 28px;
		margin-top: 50px;
		margin-bottom: 57px;
	}

	.flex_container.disease
	{
		display: block;
	}
	.flex_container.disease .box_container
	{
		width:100%;
	}

	@media screen and (max-width: 767px)
	{
		.p-treatment__content #internal,
		.p-treatment__content #urology
		{
			padding-top:100px;
			margin-top:-100px;
			display: block;
		}
	}


	.box_container-ttl
	{
		display: inline-block;
		background: #fff;
		padding: 0 10px;
		color: #ffbd56;
		font-weight: 700;
		font-family: dnp-shuei-gothic-gin-std,sans-serif;
		letter-spacing: .1em;
		line-height: 1.2;
		text-align: center;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		position: relative;
		-webkit-transform: unset;
		-ms-transform: unset;
		transform: unset;
		left: unset;
		top: -28px;
		left: 50%;
		transform: translateX(-50%);
		font-size: 24px;
		font-size: 2.4rem;
	}

	.flex_container.disease .box_container .box_container-ttl
	{
		color: #A9E15F;
	}

	.box_container .c-list__maru
	{
		margin-top:-10px;
	}
	.box_container h4
	{
		text-align: left;
		color: #000;
		font-weight: 700;
		font-size: 15px;
		font-size: 1.5rem;
		line-height: 1.2;
		letter-spacing: unset;
		display: flex;
		top:-0.3em;
		position: relative;
		margin-top: 20px;
	}
	.box_container h4:after {
		content: "";
		margin-top:0.5em;
		height: 1px;
		flex-grow: 1;
		background-color: #ccc;
	}
	.box_container h4:after {
		margin-left: 1rem;
	}

	.flex_container.disease .c-list__search
	{
		margin:10px auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.uninsured .l-inner__cont
	{
		margin: 40px 0 50px;
	}
	@media screen and (max-width: 768px)
	{
		.p-treatment__top
		{
			padding: 50px 0 30px;
		}
		.c-box__one .-unit
		{
			margin-top:30px;
		}
		.flex_container
		{
			display: block;
		}
		.box_container
		{
			width: 100%;
			margin-top: 20px;
			margin-bottom: 47px;
		}
		.c-list__search li
		{
			margin-right: 30px;
		}
		.uninsured .l-inner__cont
		{
			margin: 20px 0;
		}
		.p-treatment__top__inner .-unit
		{
			position: relative;
			right: unset;
			bottom: unset;
			width: 90%;
			margin-left: auto;
			margin-top: -30px;
			padding: 20px 15px;
		}
		.p-treatment__top .-unit > p
		{
			font-size:1.6rem;
			line-height: 1.8;
		}
	}

	/****************************
	 * 症状・病名・自費診療
	****************************/
	.p-blog.symptom
	{
		padding: 80px 0 70px;
	}

	.p-blog__content .-top .-cate.treatment
	{
		width: auto;
		padding:0 10px;
		white-space: nowrap;
		background:#5ea81b;
	}
	#post_detail
	{
		display:block;
		width:100%;
		height:auto;
		padding:20px 0 0px;
		margin-bottom:30px;
		background:rgba(255, 255, 255, 0.6);
		border-radius: 10px;
		box-sizing: border-box;
		font-size: 17px;
		font-size: 1.7rem;
	}
	@media screen and (max-width: 767px) {
		.p-blog.symptom
		{
			padding: 50px 0;
		}
		#post_detail
		{
			display:block;
			width:100%;
			height:auto;
			font-size: 16px;
			padding:0px 0 0px;
			margin-bottom:30px;
			background:rgba(255, 255, 255, 0.6);
			border-radius: 10px;
			box-sizing: border-box;
			font-size: 14px;
			font-size: 1.4rem;
		}
	}

	#post_detail h4
	{
		padding-left: 18px;
		font-size: 20px;
		font-size: 2rem;
		font-weight: 700;
		letter-spacing: .075em;
		margin: 20px 0;
		position: relative;
		margin-top: 40px;
	}
	#post_detail h4:after
	{
		position: absolute;
		content: "";
		width: 10px;
		height: 100%;
		background: #a9e15e;
		top: 0;
		left: 0;
	}
	#post_detail h5
	{
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: .075em;
		padding:5px 10px;
		background:#a9e15e;
		color:#fff;
		border-radius:3px;
	}
	#post_detail h6
	{
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: .075em;
		margin: 20px 0 0px;
		color:#a9e15e;
	}

	#post_detail p
	{
		font-size: 17px;
		font-size: 1.7rem;
		font-family: dnp-shuei-gothic-gin-std,sans-serif;
		line-height: 1.75;
		letter-spacing: .075em;
		margin: 0px 0 15px;
	}

	@media screen and (max-width: 767px)
	{
		#post_detail h4
		{
			padding-left: 18px;
			font-size: 18px;
			font-size: 1.8rem;
			margin: 10px 0;
			margin-top: 20px;
		}
		#post_detail h4:after
		{
			position: absolute;
			content: "";
			width: 10px;
			height: 100%;
			background: #a9e15e;
			top: 0;
			left: 0;
		}
		#post_detail h5
		{
			font-size: 16px;
			font-size: 1.6rem;
			padding:3px 5px;
		}
		#post_detail h6
		{
			font-size: 16px;
			font-size: 1.6rem;
			margin: 10px 0 0px;
		}

		#post_detail p
		{
			font-size: 14px;
			font-size: 1.4rem;
		}
		#post_detail iframe
		{
			width:100%;
			height:52vw;
		}
	}



	#post_detail img
	{
		/* width:auto; */
		max-width:100%!Important;
		height:auto!Important;
		margin:0em auto 1em;
	}
	#post_detail strong,
	#post_detail b
	{
		font-weight: bold;
	}
	#post_detail em,
	#post_detail i
	{
		-webkit-transform: skewX(-15deg);
		-moz-transform: skewX(-15deg);
		-o-transform: skewX(-15deg);
		transform: skewX(-15deg);
		-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=1, M12=-0.26794919243112214, M21=0, M22=1, SizingMethod='auto expand')";
	}
	#post_detail.cke_editable em,
	#post_detail.cke_editable i
	{
		font-style: italic;
		font-style: oblique;
	}
	#post_detail u
	{
		text-decoration: underline;
	}
	#post_detail s
	{
		text-decoration: line-through;
	}
	#post_detail a
	{
		text-decoration: none;
		display: inline;
		line-height: 1;
	}
	#post_detail a[target="_blank"]:after
	{
		content:"\f35d";
		font-family:"Font Awesome 6 Free";
		font-weight:900;
		display: inline;
		padding:0 0.5em;
	}
	#post_detail a.pdf:after
	{
		content:"\f1c1";
		font-family:"Font Awesome 6 Free";
		font-weight:400;
		display: inline;
		padding:0 0.5em;
		color:#CF0000;
	}
	#post_detail a.doc:after
	{
		content:"\f1c2";
		font-family:"Font Awesome 6 Free";
		font-weight:400;
		display: inline;
		padding:0 0.5em;
		color:#002dcf;
	}


	#post_detail a:hover
	{
		border-bottom:dotted 1px #000
	}

	#post_detail hr
	{
		border-color:#eee;
		margin-top:30px;
	}

	/* ul */
	#post_detail ul
	{
		padding: 10px 0 10px;
		list-style: none;
		margin: 16px auto 20px;
		width:100%;
		padding:0 1rem;
		counter-reset: number 0;
	}
	#post_detail ul li
	{
		position: relative;
		z-index: 0;
		padding-left: 1.5em;
		margin-bottom: 5px;
	}
	#post_detail ul li:before
	{
		position: absolute;
		z-index: 0;
		top: 0.5em;
		left: 0;
		width: 10px;
		height: 10px;
		border-radius: 50%;
		content: "";
	}

	/* ol */
	#post_detail ol
	{
		padding: 10px 0 10px;
		list-style: none;
		margin: 16px auto 20px;
		width:100%;
		padding:0 1rem;
		counter-reset: number 0;
	}
	#post_detail ol li
	{
		position: relative;
		z-index: 0;
		padding-left: 1.5em;
		margin-bottom: 10px;
	}
	#post_detail ol li:before
	{
		counter-increment: number 1;
		content: counter(number) ". ";
		position: absolute;
		z-index: 0;
		top: 0;
		left: -0em;
		color:var(--primary-color);
		font-weight: bold;
	}

	#post_detail p:last-child
	{
		margin-bottom:0;
	}

	#post_detail div
	{
		padding: 0 0rem;
		text-align: justify;
	}

	#post_detail table
	{
		border-collapse: collapse;
		border-spacing: 0;
		border-top: 1px solid #ccc;
		border-left: 1px solid #ccc;
		width:100%;
		margin:0 0 20px;
		table-layout: fixed;
		padding-top:16px;
	}
	#post_detail table th
	{
		text-align: left;
		vertical-align: middle;
		font-weight: bold;
		background: #eee;
		border-bottom: 1px solid #ccc;
		border-right: 1px solid #ccc;
		/* padding: 16px; */
		padding: 10px;
		width:30%;
	}
	#post_detail table td
	{
		text-align: left;
		font-weight: normal;
		vertical-align: middle;
		background: #fff;
		border-bottom: 1px solid #ccc;
		border-right: 1px solid #ccc;
		/* padding: 16px; */
		padding: 10px;
	}
	#post_detail table td.font_s
	{
		font-size:1.3rem;
	}
	@media screen and (max-width: 767px) {
		#post_detail ul,
		#post_detail ol,
		#post_detail table
		{
			width:100%;
		}
		#post_detail div.overflow_tbl
		{
			overflow-x: auto;
			padding-top:1.8rem;
		}
		#post_detail div.overflow_tbl > table
		{
			min-width: 850px;
			margin: 10px 0px 10px;
		}
		#post_detail div.overflow_tbl:before
		{
			content:"※この表は横にスクロールできます。";
			color:#90c31f;
			position: absolute;
			margin-top:-18px
		}
	}




	/****************************
	 * clinic
	****************************/
	.p-treatment__top.clinic_top
	{
		padding: 90px 0 50px;
	}
	.p-treatment__content.clinic_content
	{
		padding: 70px 0 50px;
	}
	.c-key.-first {
		background: url(../images/clinic/key_first.jpg) center/cover;
	}
	.p-treatment__top.first
	{
		padding-top:10px;
	}

	.p-treatment__content__data.first_flow dl dt
	{
		width: 7em;
	}
	.p-treatment__content__data.first_flow dl dd {
		width: calc(100% - 8em);
	}


	.first .l-inner__cont > div
	{
		display: flex;
		justify-content: space-between;
	}
	.first .l-inner__cont > div figure
	{
		max-width:380px;
		margin-top:-50px;
		position: relative;
	}
	.first .l-inner__cont > div figure img
	{
		border-radius: 24px;
	}

	@media screen and (max-width: 768px)
	{
		.p-treatment__top.clinic_top
		{
			padding: 50px 0 30px;
		}
		.p-treatment__content.clinic_content
		{
			padding: 30px 0 45px;
		}
		.first .l-inner > div h3,
		.first .l-inner > div p
		{
			text-align: left;
		}
		.first .l-inner__cont > div
		{
			display: block;
		}
		.first .l-inner__cont > div figure
		{
			margin:10px auto 0;
		}
		.p-treatment__content__data.first_flow dl
		{
			display: block;
		}
		.p-treatment__content__data.first_flow dl dt
		{
			width: 100%;
			padding-bottom:0;
		}
		.p-treatment__content__data.first_flow dl dd {
			width: 100%;
		}
	}

	/****************************
	 * calendar
	****************************/
	aside.calendar_time
	{
		text-align: left;
		color:#444;
		font-weight: bold;
		margin-bottom:1em;
	}
	.calendar_wrap
	{
		background-color: #fff;
		margin-bottom:100px;
	}
	.table_calendar
	{
		width:100%;
		table-layout:fixed;
		border-right:1px solid #bbb;
		border-bottom:1px solid #bbb;
		outline: 10px solid #fff;
		margin-top:20px;
	}
	.table_calendar th,
	.table_calendar td
	{
		border:1px solid #bbb;
		text-align: center;
		vertical-align:top;
	}
	.table_calendar th
	{
		color:#444;
		background: #fdfde7;
		font-weight: bold;
		padding:0;
		vertical-align: middle;
		font-size:11px
	}
	.table_calendar .date_line th:nth-child(7)
	{
		color:#1f59e5;
		background:#dfe8fe;
	}
	.table_calendar .date_line th:nth-child(8)
	{
		color:#d00740;
		background:#fde1ee;
	}
	.table_calendar th.time
	{
		background:#a9e15e;
		color:#fff;
		font-size:1.2rem;
		padding-top:10px;
		padding-bottom:10px
	}
	.table_calendar th.blank
	{
		background:#fff;
		border:none;
	}
	.week_line th
	{
		background:#a9e15e;
		width:12.5%;
		font-size:1.2rem;
		color:#fff;
	}
	.week_line th.blank
	{
		/* width:50px; */
		width:12.5%;
	}

	.table_calendar td
	{
		background:#fff;
		font-size:1.5rem;
		padding:5px 10px;
		vertical-align: middle;
		min-height:20px;
		color:#444;
	}
	.table_calendar td.holiday
	{
		background:#F2F2F2;
		border-top:none;
		border-bottom:none;
		word-break: break-all;

	}
	@media screen and (max-width: 767px)
	{
		.table_calendar th.time
		{
			font-size:1.0rem;
		}
		.week_line th
		{
			font-size:1.0rem;
		}
		.table_calendar td
		{
			font-size:10px;
			padding:5px 5px;
		}
	}

	/****************************
	 * recruitment
	****************************/
	.p-recruit__top__list li:nth-last-child(2) a
	{
		border-radius: 0;
	}
	.tab-list-wrap li:first-child .tab-list
	{
		border-right: 2px solid #a9e15e;
	}
	.tab-list-wrap
	{
		border-top:2px solid #a9e15e;
		border-left:2px solid #a9e15e;
		border-bottom:2px solid #a9e15e;
		border-radius: 13px;
	}
	.tab-list-wrap li .tab-list
	{
		border:none;
		border-right:2px solid #a9e15e;
	}
	.tab-list-wrap:has(#tab-list4) li
	{
		width: calc(100%/4);
		position: relative;
	}

	.recruitment_visit
	{
		padding: 30px 0 30px;
	}
	.recruitment_visit .visit_img
	{
		/* width:calc(40% - 2em); */
		/* margin:0 0 2em 2em; */
		/* float: right; */
		width:80%;
		max-width: 400px;
		margin:1em auto;
		height:auto;
		aspect-ratio: 4 / 3;
	}
	.recruitment_visit .visit_img img
	{
		width:100%;
	}

	@media screen and (max-width: 767px)
	{
		.p-recruit__top__list li:nth-last-child(2) a
		{
			border-radius: 0 0 0 20px;
		}

		.tab-list-wrap
		{
			border:none;
			border: 1px solid #a9e15e;
			border-radius: 12px 12px 0 0;
		}
		.tab-list-wrap li:not(:last-child)
		{
			border-bottom: none;
		}
		.tab-list-wrap li .tab-list
		{
			border:none;
			border-bottom: 1px solid #a9e15e;
		}
		.tab-list-wrap li:last-child .tab-list
		{
			border-bottom: none;
		}
		.tab-list-wrap li:first-child .tab-list
		{
			border-right:none
		}
		.tab-list-wrap:has(#tab-list4) li
		{
			width: 100%;
			position: relative;
		}
	}

	/****************************
	 * staff
	****************************/
	.p-staff__doctor__inner .-unit > p
	{
		margin-bottom:0.8em;
	}
	.p-staff__doctor__content.profile
	{
		margin-top:50px;
	}
	.p-staff__doctor__content.profile dl
	{
		border-bottom: 1px dotted #ccc;
	}
	.p-staff__doctor__content.profile dl dt
	{
		width: 18%;
		font-weight: 700;
		color: #a9e15e;
		font-size: 17px;
		font-size: 1.7rem;
		padding: 17px 0;
		font-weight: normal;
	}
	.p-staff__doctor__content.profile dl dd
	{
		width: 82%;
		font-size: 17px;
		font-size: 1.7rem;
		padding: 17px 5px;
	}
	.p-staff__doctor__content.profile dl dd span
	{
		display: inline-block;
		margin-left:0.3em;
	}
	.p-staff__doctor__content.profile dl dd .profile_hobby span
	{
		display: inline;
	}
	.p-staff__doctor__content.profile dl dd span.blank i
	{
		color:#a9e15e;
	}
	.p-staff__doctor__content.profile dl dd span.youtube i
	{
		color:#FC091B;
		font-size:1.1em;
	}
	@media screen and (max-width: 767px)
	{
		.p-staff__doctor__content .-item .-data dl dt
		{
			padding-left:0.5em;
			width:5em;
			margin-right:1.5em;
		}
		.p-staff__doctor__content .-item .-data dl dd
		{
			width:calc(100% - 5em);
		}
		.p-staff__doctor__content.profile
		{
			margin-top: 0px;
		}
	}

	.p-staff__recommend
	{
		padding: 90px 0 126px;
	}
	.p-treatment__top__inner .-unit.recommendation
	{
		position: static;
		right: auto;
		bottom: auto;
		background: #fff;
		border-radius: 24px;
		width: 100%;
		padding: 40px 45px;
		box-shadow: 0 0 8px rgba(0,0,0,.2);
		letter-spacing: .075em;
		line-height: 1.8;
	}
	.p-treatment__top__inner .-unit.recommendation p:not(.c-ttl__page__subttl)
	{
		margin-bottom: 30px;
	}
	.p-treatment__top__inner .-unit.recommendation p.c-ttl__page__subttl
	{
		text-align: right;
	}
	.p-treatment__top__inner .-unit.recommendation h2.c-ttl__page__ttl
	{
		margin-bottom:0;
		text-align: right;
	}
	@media screen and (max-width: 767px)
	{
		.p-staff__recommend
		{
			padding: 50px 0;
		}
		.c-txt__center.recommend_read
		{
			text-align: justify;
		}
		.p-treatment__top__inner .-unit.recommendation
		{
			padding: 20px 30px;
			margin-top:20px;
		}
	}
	.c-box__two
	{
		margin-top: 0px;
	}
	.p-staff__other__item
	{
		align-items: flex-start;
		margin-bottom: 70px;
	}
	.p-staff__other__item .-image
	{
		width: 31%;
		position: static;
		padding-top: 0;
	}
	.p-staff__other__item .-image img
	{
		position: static;
		object-fit: cover;
		width:100%;
		aspect-ratio: 40 / 47;
		transform: translate(0,0);
		border-radius: 10px;
	}

	@media screen and (max-width: 768px)
	{
		.p-staff__other__item .-image
		{
			width: 60%;
			margin-bottom:2em;
		}
	}

	.doctor_profile
	{
		margin:30px auto 20px;
	}
	.doctor_profile dl
	{
		display: flex;
		justify-content: space-between;
   		border-top: 1px dotted #ccc;
	}
	.doctor_profile dl:last-child
	{
		border-bottom: 1px dotted #ccc;
	}
	.doctor_profile dl dt
	{
		width:4em;
		font-weight: 700;
		color: #a9e15e;
		font-size: 1.7rem;
		padding: 10px 5px;
	}
	.doctor_profile dl dd
	{
		width: calc(100% - 5em);
		font-size: 1.7rem;
		padding: 10px 5px;
	}

	/****************************
	 * facility
	****************************/


	/****************************
	 * general
	****************************/

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

	}

	/****************************
	 * hospitalize
	****************************/


	/****************************
	 * home-visit
	****************************/

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

	}

	/****************************
	 * access
	****************************/
	.access_map
	{
		max-width:600px;
		margin:30px auto 30px;
	}
	@media screen and (max-width: 767px)
	{
		.gmap
		{
			height:250px;
		}
	}

	/****************************
	 * link
	****************************/
	.c-list__search.link_clinic
	{
		display:block;
		columns: 2;
	}
	.c-list__search.link_clinic li
	{
		width:100%;
	}

	@media screen and (max-width: 767px)
	{
		.c-list__search.link_clinic
		{
			columns: 1;
		}
	}

	/****************************
	 * news
	****************************/
	.p-blog__content .-unit
	{
		font-size: 17px;
		font-size: 1.7rem;
		font-family: dnp-shuei-gothic-gin-std,sans-serif;
		line-height: 1.75;
		letter-spacing: .075em;
		margin: 14px 0;
	}
	.p-blog__list li a .-unit .-top .-cate.cate2,
	.p-blog__content .-top .-cate.cate2
	{
		background:red;
	}
	@media screen and (max-width: 767px)
	{
		.p-blog__content .-unit
		{
			font-size: 14px;
			font-size: 1.4rem;
			margin: 10px 0;
		}
	}

	.p-blog__list li
	{
		margin-bottom: 20px;
	}
	.p-blog__list li a
	{
		padding: 0px 0 20px;
	}
	.p-blog__list li a .-image
	{
		padding-top: 18%;
	}

	.p-blog__new__ttl
	{
		padding-bottom: 10px;
		border-bottom:1px solid #88885c;
	}
	.p-blog__new .-list.category li a .-ttl
	{
		color:#a9e15e;
		position: relative;
	}
	.p-blog__new .-list.category li a .-ttl::before
	{
		content: "-";
		color: #a9e15e;
		padding-right: 0.3em;
	}
	.p-blog__btn.center
	{
		justify-content: center;
	}
	.p-blog__content .post_img
	{
		display: flex;
		flex-wrap: wrap;
		margin-top: 10px;
		gap: 10px;
		width: 100%;
	}
	.p-blog__content .post_img figure
	{
		display: block;
		width: calc( ( 100% - 10% ) / 2 );
	}
	.p-blog__content .post_img figure img
	{
		width: 100%!important;
		margin: 0;
		height: 25vw;
		max-height: 300px;
		object-fit: contain;
		cursor: pointer;
	}
	.p-column_article_author
	{
		display: flex;
		align-items: flex-start;
		align-items: center;
		position: relative;
		margin-top: 20px;
	}
	.p-column_article_author dt
	{
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.p-column_article_author dt img
	{
		width: auto;
		height: 30px;
		object-fit: contain;
	}

	.blog_sns
	{
		margin:30px auto;
		text-align: center;
		padding-top:30px;
		border-top:1px dotted #dadada;
	}
	.blog_sns > div
	{
		display: flex;
		justify-content: center;
		align-items: center;
		gap:40px;
		margin-top:20px
	}
	.blog_sns > div a
	{
		width:50px;
		text-decoration: none;
		text-align: center;
	}
	.blog_sns > div a p
	{
		font-weight: bold;
		font-size: 1.2rem;
		text-align: center;
		white-space: nowrap;
		letter-spacing: 0;
		margin-top: -5px;
	}

	@media screen and (max-width: 768px)
	{
		.p-blog
		{
			padding: 10px 0;
		}
		.p-blog__content .post_img figure
		{
			display: block;
			width: 100%;
		}
		.p-blog__content .post_img figure img
		{
			height: auto;
		}
		.p-blog__list li a .-image
		{
			padding-top: 45%;
		}
	}
	/****************************
	 * 健康診断
	****************************/
	.c-tbl.checkup tr th,
	.c-tbl.checkup tr td,
	.c-tbl.checkup2 tr th,
	.c-tbl.checkup2 tr td
	{
		width:auto;
	}
	.c-tbl.checkup tr th.-left,
	.c-tbl.checkup tr td.-left,
	.c-tbl.checkup2 tr th.-left,
	.c-tbl.checkup2 tr td.-left
	{
    	width: 40%;
		max-width:500px;
	}
	.c-tbl.checkup tr .head,
	.c-tbl.checkup2 tr .head
	{
		background: #346435;
		color:#fff
	}
	.c-tbl.checkup tr th span,
	.c-tbl.checkup2 tr th span
	{
		display: block;
		font-weight: normal;
		font-size:1.5rem;
	}

	@media screen and (max-width: 767px)
	{
		.c-tbl.checkup tr th span,
		.c-tbl.checkup2 tr th span
		{
			font-size:1.3rem;
		}
	}

	/****************************
	 * Youtube
	****************************/
	.youtube
	{
		width:100%;
		max-width:560px;
		margin:50px auto 0;
	}
	.clinic_top .youtube
	{
		max-width:800px;
	}
	.clinic_top .youtube iframe
	{
		width:100%;
		height:430px;
	}
	.access_map .youtube iframe
	{
		width:100%;
		height:310px;
	}
	@media screen and (max-width: 768px)
	{
		.youtube
		{
			margin:30px auto 0;
		}
		.youtube iframe
		{
			height:48vw;
		}
	}

	.faq dl
	{
	position: relative;
		margin: 0 0 1em;
		padding: 0.3em 0.3em;
		background: #ffffed;
		border-radius: 10px;
	}
	.faq dt
	{
		position: relative;
		padding: 10px 10px 10px 58px;
		color: #454545;
		border-radius: 10px;
		line-height: 1.8;
		font-weight: bold;
		cursor: pointer;
	}
	.faq dt > span
	{
		display: inline-block;
		line-height: 26px;
		position: absolute;
		padding: 0em;
		color: #fff;
		background: #a9e15e;
		font-weight: bold;
		font-size: 1.2em;
		width: 33px;
		text-align: center;
		height: 33px;
		top:3px;
		left: 10px;
		border: solid 3px white;
		border-radius: 50%;
	}
	.faq dd
	{
		background: #fff;
		padding: 20px 10px 15px 58px;
		margin: 0;
		line-height: 1.8;
		position: relative;
		display: flex;
	}
	.faq dd > span
	{
		display: inline-block;
		line-height: 26px;
		position: absolute;
		padding: 0em;
		color: #fff;
		background: #ffc163;
		font-weight: bold;
		font-size: 1.2em;
		width: 33px;
		text-align: center;
		height: 33px;
		left: 10px;
		border: solid 3px white;
		border-radius: 50%;
	}