@charset "utf-8";

.mainImg {
	background-image: url(../img/town.svg), url(../img/sky.jpg);
	background-repeat: repeat-x, no-repeat;
	background-position: bottom center, bottom center;
	background-size: 1500px auto, cover;
	background-color: rgba(17,79,204,1);
	margin-bottom: 30px;
	padding: 90px 10px 170px;
}
.mainImg .txt1 {
	text-align: center;
	font-size: 2em;
	font-family: 'Noto Serif JP', sans-serif;
	font-weight: 600;
	color: #fff;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
	margin-bottom: 10px;
}
.mainImg .txt2 {
	max-width: 960px;
	background: rgba(0,0,0,0.3);
	border-radius: 6px;
	margin: 0 auto;
	padding: 15px 10px 20px;
}
.mainImg .txt2 p {
	text-align: center;
	font-size: 2.875em;
	font-family: 'Noto Serif JP', sans-serif;
	font-weight: 600;
	color: #fff;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.mainImg .txt2 p span {
	font-size: 4rem;
	color: #fffc0a;
}
@media only screen and (max-width: 960px) {
	.mainImg {
		background-size: 1000px auto, cover;
		padding: 60px 10px 120px;
	}
	.mainImg .txt1 {font-size: 1.75em;}
	.mainImg .txt2 p {font-size: 2em;}
	.mainImg .txt2 p span {font-size: 3rem;}
}
@media only screen and (max-width: 768px) {
	.mainImg {padding: 40px 10px 80px;}
	.mainImg .txt1 {font-size: 1.375em;}
	.mainImg .txt2 p {font-size: 1.75em;}
	.mainImg .txt2 p span {font-size: 2.5rem;}
}

.point {
	max-width: 1280px;
	margin: 0 auto;
	padding: 40px 10px;
	background: rgba(255, 254, 238, 1);
}
.point p {
	font-size: 1.06em;
}
.point-ttl {
	max-width: 560px;
	margin: 0 auto 20px;
}
.point .start {
	text-align: center;
	font-size: 1.5em;
	font-weight: 600;
	line-height: 1.3;
	color: #2d8000;
	margin-bottom: 30px;
}
.point .ptitle {
	display: block;
	position: relative;
	margin: 0 auto 15px;
	cursor: pointer;
	max-width: 960px;
}
.point .ptitle .sp {
	display: none;
}
.point .opcls {
	display: none;
	padding: 0;
	margin: 0;
}
.point .box1 {
	max-width: 940px;
	margin: 0 auto 40px;
}
.point .box1 .txt1 {
	color: #3ab483;
	font-size: 1.12em;
	font-weight: 700;
	margin-top: 20px;
	margin-bottom: 10px;
}
.point-red {
	color: #ea5550;
}
.point-blue {
	color: #0086cd;
}
.point-source {
	font-size: 14px !important;
	text-align: right;
	margin-top: 5px;
}
.point-img1 .sp {
	display: none;
}
.point1-bg {
	background: rgba(58, 180, 131, 0.1);
	padding: 10px;
	border-radius: 8px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.point1-list ul {
	margin-left: 1.5em;
}
.point1-list ul li {
	list-style: disc;
	font-size: 1.06em;
	margin-bottom: 5px;
}
.point1-arrow {
	width: 30px;
	margin: 0 20px;
}
.point1-txt p {
	font-size: 1.25em;
	font-weight: 700;
	color: #ea5550;
}

.point2-tbl {
	width: 100%;
	margin-bottom: 30px;
}
.point2-tbl th {
	text-align: center;
	font-weight: 700;
	white-space: nowrap;
	padding: 5px;
	border: 1px solid #999;
}
.point2-tbl td {
	padding: 5px;
	border: 1px solid #999;
	background-color: #fff;
}
.point2-tbl th:nth-child(1) {
	background-color: rgba(58, 180, 131, 0.3);
	color: #3ab483;
}
.point2-tbl th:nth-child(2) {
	background-color: #f9d2c7;
	color: #ea5550;
}
.point2-tbl th:nth-child(3) {
	background-color: #c2d9f1;
	color: #0086cd;
}
.point2-tbl td:nth-child(1) {
	text-align: center;
}
.merit-list li::before {
	content: "●";
	color: #ea5550;
	margin-right: 0.2em;
}
.demerit-list li::before {
	content: "●";
	color: #0086cd;
	margin-right: 0.2em;
}
.merit-list li,
.demerit-list li {
	text-indent: -1.2em;
	padding-left: 1.2em;
	margin-bottom: 5px;
}
.ma-support {
	border: 2px solid #7fc2e6;
	border-radius: 8px;
	background-color: #e5f3fa;
}
.ma-support-ttl {
	text-align: center;
	font-size: 20px !important;
	font-weight: 700;
	color: #0068b7;
	background-color: #b2daf0;
	padding: 10px;
	border-radius: 8px 8px 0 0;
}
.ma-support ul {
	display: flex;
	width: 100%;
	padding: 20px;
}
.ma-support ul li:nth-child(1) {
	width: 170px;
	margin-right: 20px;
}
.ma-support ul li:nth-child(2) {
	width: calc(100% - 190px);
}
.ma-support ul li:nth-child(1) img {
	margin-bottom: 10px;
}
.ma-support ul li:nth-child(1) p {
	margin-bottom: 5px;
	font-size: 0.94em;
}
.ma-support ul li:nth-child(1) p span {
	display: block;
	font-weight: 700;
}
.ma-support ul li:nth-child(1) p span::before {
	content: "●";
	color: #f18d00;
	margin-right: 0.2em;
}

@media only screen and (max-width: 768px) {
	.point p {
		font-size: 1em;
	}
	.point .ptitle .pc {
		display: none;
	}
	.point .ptitle .sp {
		display: block;
	}
	.point-img1 .pc {
		display: none;
	}
	.point-img1 .sp {
		display: block;
	}
	.point-source {
		font-size: 12px !important;
		text-align: left;
	}
	.point-ttl {
		max-width: 400px;
	}
	.point .start {
		font-size: 1.25em;
	}
	.point .box1 .txt1 {
		font-size: 1.06em;
	}
	.point1-bg {
		flex-wrap: wrap;
	}
	.point1-bg div {
		width: 100%;
	}
	.point1-list {
		display: flex;
		justify-content: center;
	}
	.point1-list ul {
		margin-left: 1.5em;
	}
	.point1-list ul li {
		font-size: 1em;
	}
	.point1-arrow img {
		width: 30px;
		margin: 5px auto;
		transform:rotate(90deg);
	}
	.point1-txt p {
		text-align: center;
		font-size: 1.12em;
	}
	.wrap-tbl {
		width: 100%;
		overflow-x: scroll;
		margin-bottom: 30px;
	}
	.point2-tbl {
		width: 720px;
		margin: 0 auto;
	}
	.point2-tbl th {
		font-size: 0.94em;
	}
	.point2-tbl td {
		font-size: 0.94em;
	}

}
@media only screen and (max-width: 640px) {
	.ma-support ul {
		flex-wrap: wrap;
	}
	.ma-support ul li:nth-child(1) {
		width: 170px;
		margin: 0 auto 20px;
	}
	.ma-support ul li:nth-child(2) {
		width: 100%;
	}

}




.aboutNetwork {
	max-width: 1280px;
	margin: 0 auto 40px;
	padding: 40px 10px;
	background: rgba(233,249,224,1);
}
/*
.aboutNetwork .start {
	text-align: center;
	font-size: 2em;
	font-weight: 600;
	line-height: 1.3;
	color: #2d8000;
	margin-bottom: 30px;
}
.aboutNetwork .start span {
	display: block;
	font-size: 1.5em;
	font-family: 'Noto Serif JP', sans-serif;
	font-weight: 600;
	color: #e25858;
}
.aboutNetwork .txt1 {
	max-width: 960px;
	margin: 0 auto 30px;
	font-size: 1.06em;
	text-align: center;
}
.aboutNetwork .point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1120px;
	margin: 30px auto 30px;
}
.aboutNetwork .point li {
	width: 19.1%;
	border: 3px solid rgba(67,189,0,1);
	border-radius: 6px;
	padding: 15px 15px 47px;
	background: #fff5c9;
	color: #71351a;
	font-size: 1.06em;
	font-weight: 600;
	position: relative;
}
.aboutNetwork .point li .more {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #fff;
	margin: 20px auto 0;
}
.aboutNetwork .point li .more a {
	display: block;
	padding: 5px 8px;
	font-size: 0.88em;
	font-weight: 400;
	color: #fff;
	background-image: url(../../img/arrow1.svg);
	background-repeat: no-repeat;
	background-size: 8px auto;
	background-position: 96% center;
	background-color: rgba(67,189,0,1);
}
.aboutNetwork .point li .more a:hover {background-color: rgba(67,189,0,0.8);}
*/
.help {
	max-width: 960px;
	margin: 0 auto;
}
@media only screen and (max-width: 768px) {
	.aboutNetwork .start {font-size: 1.5em;}
	.aboutNetwork .start span {font-size: 1.375em;}
	.aboutNetwork .txt1 {font-size: 1em;}
	.aboutNetwork .point li {
		width: 49%;
		margin-bottom: 15px;
		padding: 10px 10px 42px;
		font-size: 1em;
	}
}
@media only screen and (max-width: 640px) {
	.aboutNetwork {padding: 30px 10px;}
	.aboutNetwork .start {font-size: 1.375em;}
	.aboutNetwork .start span {margin-bottom: 5px;}
	.aboutNetwork .point {margin: 20px auto 30px;}
	.aboutNetwork .point li {
		width: 100%;
		margin-bottom: 10px;
	}
	.aboutNetwork .point li:last-child {margin-bottom: 0;}
}

.aboutDiagnosis {
	max-width: 1140px;
	margin: 0 auto 40px;
	padding: 0 10px;
}
.aboutDiagnosis > ul {
	display: flex;
	justify-content: space-between;
}
.aboutDiagnosis > ul > li:first-child {
	width: 40%;
	min-width: 360px;
}
.aboutDiagnosis > ul > li:last-child {
	width: 60%;
	padding-left: 40px;
}
.aboutDiagnosis > ul > li > ol {
	margin: -10px 0 20px 1.5em;
	list-style: decimal;
}
.aboutDiagnosis > ul > li > ol > li {
	font-size: 1.06em;
	margin-bottom: 5px;
}
.aboutDiagnosis .over60 {
	max-width: 360px;
	margin: 0 auto 15px;
}
@media only screen and (max-width: 768px) {
	.aboutDiagnosis > ul {flex-wrap: wrap;}
	.aboutDiagnosis > ul > li:first-child {
		width: 100%;
		max-width: 320px;
		min-width: auto;
		margin: 0 auto 30px;
	}
	.aboutDiagnosis > ul > li:last-child {
		width: 100%;
		padding-left: 0;
	}
	.aboutDiagnosis > ul > li > ol > li {font-size: 1em;}
}

.information {
	max-width: 980px;
	margin: 0 auto 40px;
	padding: 0 10px;
}
.information dl {border-top: 1px solid #ccc;}
.information dl dt {padding: 6px 0 0;font-size:11px;}
.information dl dt span {
	margin-left: 0.5em;
	padding: 2px 8px;
	font-size: 0.75rem;
	color: #fff;
	background: #999;
	border-radius: 4px;
}
.information dl dt span.catNews {background: #1f97ea;}
.information dl dt span.catCase {background: #82c32d;}
.information dl dt span.catSeminar {background: #ff9000;}
.information dl dt span.catSupport {background: #ff6c8b;}
.information dl dd {
	padding: 6px 0;
	border-bottom: 1px solid #ccc;
}
.information .more {
	max-width: 160px;
	background: #fff;
	margin: 20px auto 0;
}
.information .more a {
	display: block;
	padding: 5px 8px;
	font-size: 0.94em;
	color: #fff;
	background-image: url(../../img/arrow1.svg);
	background-repeat: no-repeat;
	background-size: 8px auto;
	background-position: 96% center;
	background-color: rgba(255,144,55,1);
}
.information .more a:hover {background-color: rgba(255,144,55,0.8);}

@media only screen and (max-width: 640px) {
	.information dl dt {font-size: 0.94em;}
	.information dl dd {font-size: 0.94em;}
}

.seminar {
	margin-bottom: 40px;
	padding: 40px 10px;
	background: rgba(233,249,224,1);
}
.seminarList {
	max-width: 1120px;
	margin: 0 auto;
}
.seminarList ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.seminarList ul li {
	width: 48%;
	margin-bottom: 30px;
	padding: 20px;
	background: #fff;
	box-shadow: 3px 3px 0 rgba(0,0,0,0.3);
}
.seminarList .seminarTTL {
	background: rgba(67,189,0,1);
	font-size: 1.12em;
	font-weight: 600;
	color: #fff;
	margin-bottom: 10px;
	padding: 6px 8px;
}
.seminarList table {
	width: 100%;
	margin-bottom: 10px;
}
.seminarList table th,
.seminarList table td {
	border: 1px solid #ccc;
	padding: 6px;
}
.seminarList table th {
	width: 6em;
	font-weight: 500;
	background: rgba(233,249,224,1);
	color: #2d8000;
	text-align: center;
}
.seminarList .seminarTxt {margin-bottom: 10px;}
.seminarList .more {
	max-width: 160px;
	margin: 0 auto;
	background-color: #fff;
}
.seminarList .more a {
	display: block;
	padding: 5px 8px;
	font-size: 0.94em;
	color: #fff;
	background-image: url(../../img/arrow1.svg);
	background-repeat: no-repeat;
	background-size: 8px auto;
	background-position: 96% center;
	background-color: rgba(255,144,55,1);
}
.seminarList .more a:hover {background-color: rgba(255,144,55,0.8);}
@media only screen and (max-width: 768px) {
	.seminarList ul {margin-bottom: 20px;}
	.seminarList ul li {
		width: 49%;
		margin-bottom: 15px;
		padding: 10px;
	}
	.seminarList .seminarTTL {font-size: 1.06em;}
	.seminarList .seminarTxt {font-size: 0.94em;}
}
@media only screen and (max-width: 640px) {
	.seminarList ul li {width: 100%;}
}

.dedicatedPage {
	max-width: 700px;
	margin: 0 auto 40px;
	padding: 40px 10px 0 10px;
}
.dedicatedPage ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.dedicatedPage ul li {
	width: 48%;
	margin: 0 1%;
	text-align: center;
	font-size: 1.375em;
	font-weight: 600;
	background: #fff;
}
.dedicatedPage ul li a {
	display: block;
	background: rgba(21,105,176,1);
	color: #fff;
	padding: 24px 10px;
}
.dedicatedPage ul li a:hover {background: rgba(21,105,176,0.8);}
@media only screen and (max-width: 640px) {
	.dedicatedPage ul li {font-size: 1.12em;}
	.dedicatedPage ul li a {padding: 18px 10px;}
}
@media only screen and (max-width: 480px) {
	.dedicatedPage ul li {
		width: 100%;
		margin-bottom: 15px;
	}
	.dedicatedPage ul li:last-child {margin-bottom: 0;}
}

.renkei{
	width:60%;
	margin: 0 auto;
}

.renkei-container {
	display: flex;      /* 横並びにする */
	gap: 20px;          /* 2要素の間に隙間をあける */
	padding-top:1rem;
	justify-content: center;
	align-items: flex-start;

	/* 必要に応じて flex-wrap: wrap; など */
  }
  
/* 1つ目のアイテム */
.renkei-item1 {
width: 30%;         /* 親コンテナ内で横幅 50% を占める */
box-sizing: border-box;
}

.renkei-item1 img {
width: 100%;         /* 元画像のサイズなどに応じて微調整 */
height: auto;
object-fit: cover;
display: block;
margin: 0 auto;     /* 画像自体を中央寄せしたい場合 */
}

/* 2つ目のアイテム */
.renkei-item2 {
width: 30%;
box-sizing: border-box;
}
.renkei-item2 p {
margin-top:0.6rem;
}

.renkei-item2 img {
padding-top:0.35rem;
width: 102%;      
height: auto;
object-fit: cover;
display: block;
}

@media screen and (max-width: 768px) {
	.renkei{
		width:80%;
	}
	.renkei-container {
	  flex-direction: column; /* 縦並びにする */
	}
	
	.renkei-item1,
	.renkei-item2 {
	  width: 100%;           /* 横幅100%に拡張（縦並び） */
	}
  }