@charset "utf-8";

/* 疾患一覧
------------------------------------------------------------*/
.disease_li{margin-bottom: 60px;}
.disease_li > li{
	width: 30.3%;
	margin: 3% 1.5%;
}
.disease_li > li > a{display: block;}
.disease_img{margin-bottom: 25px;}
.disease_img,.disease_img img{
	width: 100%;
	height: 290px;
}
.disease_img img{
	display: block;
	border-radius: 20px;
	object-fit: cover;
}
.cat{
	width: 140px;
	background-color: #ffc83e;
	border-radius: 80px;
	padding: 8px 0;
	text-align: center;
}
.disease_li .cat{margin-bottom: 10px;}
.disease_li h3{
	text-decoration: underline;
	border-bottom: 2px #ddddd3 dashed;
	padding-bottom: 25px;
	margin-bottom: 25px;
	transition: all .5s ease;
}

/* お知らせ一覧
------------------------------------------------------------*/
.news_li{margin-bottom: 70px;}
.news_li > li:first-child{border-top: 1px #474240 solid;}
.news_li > li{border-bottom: 1px #474240 solid;}
.news_li > li a{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 50px 60px 50px 25px;
	background: url("../images/arrow_b.webp") no-repeat 97% center / 27px;
}
.news_li > li a p{width: 125px;}
.news_li > li a h3{width: calc(100% - 125px);}
@media (any-hover: hover){
	.news_li > li a:hover{
		background-position: 97.8% center;
		padding-left: 40px;
	}
}

/* ページャー
------------------------------------------------------------*/
.pagination .nav-links{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.pagination .nav-links a,.pagination .nav-links span{
	width: 55px;
	height: 40px;
	margin: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 7px 5px 5px;
	font-family: 'Cabin';
	font-weight: 700;
}
.pagination .nav-links span.current{color: #cc4640;}
.pagination .nav-links .prev,.pagination .nav-links .next{
	background-color: #cc4640;
	color: #fff!important;
	border-radius: 5px;
}
@media (any-hover: hover){
	.disease_li > li > a:hover h3,.pagination .nav-links a:hover{color: #cc4640;}
	.pagination .nav-links a.prev:hover,.pagination .nav-links a.next:hover{background-color: #474240;}
}

/* 詳細
------------------------------------------------------------*/
.detail{
	border-bottom: 2px #cc4640 solid;
	padding-bottom: 100px;
}
.news_con.detail{padding-bottom: 80px;}
.detail_title{
	border-bottom: 2px #cc4640 solid;
	padding-bottom: 40px;
	margin-bottom: 60px;
}
.detail_title .cat{margin-bottom: 15px;}
.title_img img{
	display: block;
	border-radius: 20px;
}
.title_img{
	max-width: 700px;
	width: 100%;
	margin: 0 auto 60px;
}
#toc{
	background-color: #fff;
	padding: 60px 50px;
	border-radius: 30px;
	counter-reset: number 0;
	margin-bottom: 90px;
}
#toc::before{
	content: "もくじ";
	display: block;
	font-size: 26px;
	font-weight: bold;
	color: #cc4640;
}
#toc::before,#toc > ul > li:not(:last-child){
	border-bottom: 1px #ddddd3 dashed;
	padding-bottom: 35px;
	margin-bottom: 35px;
}
#toc a{
	text-decoration: none;
	font-weight: 400;
	color: #474240 !important;
}
#toc > ul > li::before{
	content: counter(number) ".";  
	counter-increment: number 1;
	font-weight: 400!important;
	margin-right: 5px;
	color: #cc4640;
}
#toc > ul > li::before,#toc > ul > li > a{
	font-size: clamp(16px, 1.2vw, 20px);
	font-weight: bold;
}
#toc > ul > li{list-style: none;}

#toc ul ul{
	display: block;
	width: 100%;
	padding-left: 1.5em;
	padding-top: 15px;
}
#toc li li a{
	display: flex;
	align-items: flex-start;
}
#toc li li:not(:last-child){margin-bottom: 10px;}
#toc li li a::before{
	content: '';
	width: 5px!important;
	height: 5px!important;
	background-color: #ffc83e;
	border-radius: 50%;
	flex-shrink: 0;
	margin: 0.5em 10px 0 0;
}

.detail_con > *{
	font-size: 100%;
	font-weight: inherit;
	color: inherit;
	font-family: inherit;
	line-height: 1.8;
}
.detail_con h3,.detail_con h4{font-weight: bold;}
.detail_con h3{
	font-size: clamp(20px, 1.7vw, 26px);
	border-top: 2px #cc4640 dashed;
	border-bottom: 2px #cc4640 dashed;
	padding: 30px 0;
	margin: 50px 0 40px;
}
.detail_con h4{
	font-size: clamp(18px, 1.5vw, 24px);
	position: relative;
	padding-left: 26px;
	margin: 50px 0 25px;
}
.detail_con h4::before{
	content: '';
	width: 15px;
	aspect-ratio: 1 / 1;
	background-color: #ffc83e;
	border-radius: 50%;
	position: absolute;
	top: 0.6em;
	left: 0;
}
.detail_con p{margin-bottom: 30px;}
.detail_con strong{
	font-weight: bold;
	color: #cc4640!important;
}
.detail_con img{
	display: block;
	margin: 60px auto!important;
}
.detail_con > ul,.detail_con > ol{
	border: 1px #ddddd3 solid;
	padding: 40px;
	border-radius: 20px;
	list-style-position: inside;
	margin-bottom: 30px;
}
.detail_con > ul > li:not(:last-child),.detail_con > ol > li:not(:last-child){margin-bottom: 10px;}
.detail_con > ul > li{
	position: relative;
	padding-left: 15px;
}
.detail_con > ul > li::before{
	content: '';
	width: 6px;
	aspect-ratio: 1 / 1;
	background-color: #ddddd3;
	position: absolute;
	top: 0.6em;
	left: 0;
	border-radius: 50%;
}
.detail_con > ol > li::marker{color: #cc4640!important;}
.author_box{
	background-color: #fff;
	padding: 60px 50px;
	border-radius: 30px;
}
.author_box > p{
	border-bottom: 2px #ddddd3 dashed;
	padding-bottom: 35px;
	margin-bottom: 40px;
}
.author_con,.author_name,.career dl > div{display: flex;}
.author_con,.career dl > div{align-items: flex-start;}
.author_con > img{
	display: block;
	flex-shrink: 0;
	margin-right: 50px;
}
.author_con > div{width: 100%;}
.author_name{align-items: center;}
.author_name p{line-height: 1;}
.author_name p.fs18{
	width: 130px;
	background-color: #ffc83e;
	text-align: center;
	padding: 5px 0 8px;
	border-radius: 80px;
}
.author_name p.fs30{
	width: calc(100% - 130px);
	padding-left: 10px;
}
.career > div:not(:last-child){margin-bottom: 40px;}
.career .flex_between > *:first-child{width: 43%;}
.career .flex_between > *:last-child{width: 55%;}
.career dl > div:not(:last-child),.career ul > li:not(:last-child){margin-bottom: 15px;}
.career dl > div *,.career ul > li{line-height: 1.5;}
.career dt{width: 85px;}
.career dd{width: calc(100% - 85px);}

/* 1025px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1025px){
	
	/* 疾患一覧
	--------------------------------------*/
	.disease_li{margin-bottom: 30px;}
	.disease_img{margin-bottom: 20px;}
	.disease_img,.disease_img img{height: 200px;}
	.disease_img img{border-radius: 15px;}
	.cat{
		width: 100px;
		font-size: 12px;
		padding: 5px 0;
	}
	.disease_li .cat{margin-bottom: 8px;}
	.disease_li h3{
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	
	/* お知らせ一覧
	--------------------------------------*/
	.news_li{margin-bottom: 40px;}
	.news_li > li a{
		padding: 35px 20px;
		background: none;
	}
	.news_li > li a p{width: 100px;}
	.news_li > li a h3{width: calc(100% - 100px);}

	/* ページャー
	--------------------------------------*/
	.pagination .nav-links a,.pagination .nav-links span{
		width: 40px;
		height: 30px;
		margin: 5px;
	}
	
	/* 詳細
	--------------------------------------*/
	.detail{padding-bottom: 60px;}
	.news_con.detail{padding-bottom: 50px;}
	.detail_title{
		padding-bottom: 30px;
		margin-bottom: 45px;
	}
	.detail_title .cat{margin-bottom: 10px;}
	.title_img{max-width: none;}
	.title_img img,#toc{border-radius: 15px;}
	.title_img,#toc{margin-bottom: 50px;}
	#toc{padding: 40px 30px;}
	#toc::before{
		font-size: 16px;
		padding-bottom: 20px;
		margin-bottom: 30px;
	}
	#toc > ul > li:not(:last-child){
		padding-bottom: 30px;
		margin-bottom: 30px;
	}
	#toc > ul > li::before,#toc > ul > li > a{font-size: 14px;}
	#toc li li a::before{margin: 0.4em 7px 0 0;}
	.detail_con.mb100{margin-bottom: 60px!important;}
	.detail_con h3{
		font-size: 16px;
		padding: 25px 0;
		margin: 40px 0 25px;
	}
	.detail_con h4{
		font-size: 15px;
		padding-left: 20px;
		margin: 40px 0 20px;
	}
	.detail_con h4::before{width: 10px;}
	.detail_con p{margin-bottom: 20px;}
	.detail_con img{
		width: 100%;
		margin: 40px auto!important;
	}
	.detail_con > ul,.detail_con > ol{
		padding: 25px 20px;
		border-radius: 10px;
		margin-bottom: 20px;
	}
	.author_box{
		padding: 40px 30px;
		border-radius: 15px;
	}
	.author_box > p{
		padding-bottom: 25px;
		margin-bottom: 30px;
	}
	.author_con > img{
		width: 130px;
		margin-right: 30px;
	}
	.author_name p.fs18{width: 100px;}
	.author_name p.fs30{
		width: calc(100% - 100px);
		font-size: 20px!important;
	}
	.career > div:not(:last-child){margin-bottom: 30px;}
	.career ul > li:not(:last-child){margin-bottom: 10px;}
	.career dl > div{flex-wrap: wrap;}
	.career dt,.career dd{width: 100%;}
	.career dt{
		color: #cc4640;
		font-weight: bold;
	}
}

/* 750px以下から
------------------------------------------------------------*/
@media only screen and (max-width:750px){
	
	/* 疾患一覧
	--------------------------------------*/
	.disease_li{margin-bottom: 50px;}
	.disease_li > li{
		width: 100%;
		margin: 0;
	}
	.disease_li > li:not(:last-child){margin-bottom: 60px;}
	.disease_img{
		max-width: 275px;
		width: 100%;
		margin: 0 auto 20px;
	}
	
	/* お知らせ一覧
	--------------------------------------*/
	.news_li > li a{padding: 30px 15px;}
	.news_li > li a p,.news_li > li a h3{width: 100%;}
	.news_li > li a p{margin-bottom: 5px;}
	.news_li > li a h3{line-height: 1.5;}
	
	/* ページャー
	--------------------------------------*/
	.pagination .nav-links a,.pagination .nav-links span{width: 35px;}
	
	/* 詳細
	--------------------------------------*/
	.detail_title{
		padding-bottom: 25px;
		margin-bottom: 35px;
	}
	.title_img,#toc{margin-bottom: 35px;}
	#toc{padding: 25px 20px 35px;}
	#toc a{letter-spacing: -0.1em;}
	#toc ul ul{padding-left: 0;}
	#toc::before{
		padding-bottom: 15px;
		margin-bottom: 25px;
	}
	#toc > ul > li:not(:last-child){
		padding-bottom: 25px;
		margin-bottom: 25px;
	}
	.author_box{padding: 30px 20px 40px;}
	.author_box > p{text-align: center;}
	.author_con{flex-wrap: wrap;}
	.author_box > p{
		padding-bottom: 20px;
		margin-bottom: 25px;
	}
	.author_con > img{margin: 0 auto 20px;}
	.author_name{
		width: fit-content;
		margin: 0 auto 30px!important;
	}
	.author_con .square_title{font-size: 18px!important;}
	.career .flex_between > *{width: 100%!important;}
	.career dl:first-child{margin-bottom: 15px;}
	.career ul:first-child{margin-bottom: 10px;}


}