@charset "UTF-8";
/* CSS Document */

.link-block {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 10px 1fr;
	grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.link-box {
	text-align:center;
}
.link-box:nth-of-type(even) {
 
}
.link-box:nth-of-type(n+3) {
	margin-top:30px;
}
.link-box a {
	display:table;
	width:535px;
	height:140px;
	background:rgba(247,246,246,.85);
	border-left:20px solid #AAA;
}
.link-box.red a {
	display:table;
	width:535px;
	height:140px;
	background:rgba(247,246,246,.85);
	border-left:20px solid #FA0000;
}
.link-box a > span {
	display:table-cell;
	vertical-align:middle;
	padding-top:2px;
}
.link-box a > span > h2 {
	font-size:20px;
	font-weight:200;
}
.link-box a > span > span {
	display:inline-block;
	margin-top:17px;
	font-size:15px;
}
.president-photo {
	float:right;
	margin-left:30px;
}
.president-name {
	margin-top:15px;
	font-size:15px;
	text-align:center;
	line-height:1.6;
}
.president-name span {
	font-size:13px;
}

h3.rinen {
	margin-top:-10px;
	margin-bottom:10px;
	font-size:28px;
	font-weight:300;
	line-height:2.0;
}

.shishin-box {
	margin-top:2em;
	padding-top:2em;
	border-top:1px solid #CCC;
}

.overview-block-l {
	float:left;
	width:510px;
}
.overview-block-r {
	float:right;
	width:510px;
}
.overview-block-l dl,
.overview-block-r dl {
}
.overview-block-l dl dt,
.overview-block-r dl dt {
	float:left;
	font-weight:600;
}
.overview-block-l dl dd,
.overview-block-r dl dd {
	padding-left:7em;
}
.overview-block-l dl + dl,
.overview-block-r dl + dl {
	margin-top:2em;
}
.overview-block-l dl:nth-of-type(6) {
	font-feature-settings:normal;
}

.history-block {
}
.history-block .history-box {
}
.history-block .history-box dt {
	float:left;
	width:8em;
	font-weight:600;
}
.history-block .history-box dt span {
	float:left;
}
.history-block .history-box dt span + span {
	float:right;
	font-weight:300;
}
.history-block .history-box dd {
	padding-left:11em;
}


.client-block {
}
.client-block + .client-block {
	margin-top:2.5em;
	padding-top:2.5em;
	border-top:1px solid #CCC;
}
.client-block .client-box {
}
.client-block .client-box dt {
	float:left;
	font-weight:600;
}
.client-block .client-box dd {
	padding-left:13em;
}
.client-block .client-box dd ul {
	-webkit-columns: 3;
	-moz-columns: 3;
	-ms-columns: 3;
	columns: 3;
	margin-right:-40px;
}
.client-block .client-box dd ul li {
}


.organization-block {
	position:relative;
}
.organization-box {
	position:static;
}
/* kkc edit   position:absolute; */
.organization-box h3 {
	font-size:15px;
	font-weight:600;
	line-height:2.0;
}
.organization-box h3 span {
	font-size:13px;
	font-weight:300;
}
.organization-box dl {
	margin-top:1em;
}
.organization-box dl + dl {
	margin-top:1.6em;
}
.organization-box dl dt {
	float:left;
}
.organization-box dl dd {
	padding-left:9em;
}
.organization-img {
	text-align:center;
	margin-top:1.6em;
}
/* kkc edit   text-align:right; */


.qualification-block {
}
.qualification-block + .qualification-block {
	margin-top:2.5em;
	padding-top:2.5em;
	border-top:1px solid #CCC;
}
.qualification-block .qualification-box {
}
.qualification-block .qualification-box dt {
	float:left;
	font-weight:600;
}
.qualification-block .qualification-box dd {
	padding-left:15em;
}

.qualification + .qualification {
	margin-top:2em;
}
.qualification h3 {
	font-size:15px;
	font-weight:600;
	line-height:2.0;
}
.qualification div {
	float:right;
	margin-left:20px;
}
.qualification table {
	width:540px;
	font-size:15px;
	font-weight:300;
	line-height:2.0;
}
.qualification table thead th,
.qualification table thead td {
	font-weight:600;
}
.qualification table tbody th,
.qualification table tbody td {
	font-weight:300;
}
.qualification table th {
	text-align:left;
}
.qualification table td {
	text-align:right;
}


.access-block {
}
.access-block + .access-block {
	margin-top:20px;
}
.map-box {
	float:left;
	text-align:center;
	font-size:15px;
	font-weight:300;
}
.map-box img {
	margin-bottom:20px;
}
.access-text {
	float:right;
	width:495px;
}
#contents .access-text dl {
	font-size:15px;
	font-weight:300;
	line-height:1.6;
}
.access-text dl + dl {
	margin-top:1.6em;
}
.access-text dl dt {
	float:left;
	font-weight:600;
}
.access-text dl dd {
	padding-left:10em;
}
#contents .access-block h3 {
	font-size:15px;
	font-weight:600;
	line-height:1.6;
	text-align:center;
}
#contents .access-block p {
	line-height:1.6;
	text-align:center;
}
/* 2025/08/28追加 */
#contents .facility-block p {
	line-height:1.6;
	text-align:center;
	padding: 34px 0;
}
.facility-pic{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap:10px;
}
.facility-l{
	margin-bottom: 10px;
}
.facility-r{
	margin-bottom: 10px;
}
#contents .access-block p {
	line-height:1.6;
	text-align:center;
}

@media screen and (max-width: 767px) {
	.link-block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: block;
		flex-wrap: initial;
	}
	.link-box:nth-of-type(even) {
		float:none;
	}
	.link-box:nth-of-type(n+2) {
		margin-top:3vw;
	}
	.link-box a {
		display:table;
		width:92vw;
		height:26vw;
	}
	.link-box.red a {
		display:table;
		width:92vw;
		height:26vw;
	}
	.link-box a > span > h2 {
		font-size: 4.800vw;
	}
	.link-box a > span > span {
		margin-top:2vw;
		font-size:3.466vw;
	}
	.cont-block {
		padding:8vw 4vw 6vw 4vw;
	}
	.cont-block + .cont-block {
		margin-top:10vw;
	}
	.cont-ttl h2 {
		font-size:4.800vw;
	}
	
	.cont-ttl + .cont-body {
		margin-top:7vw;
	}
	
	#contents .cont-block p,
	#contents .cont-block ul,
	#contents .cont-block dl {
		font-size:3.466vw;
		line-height:1.8;
	}
	#contents .cont-block p.small,
	#contents .cont-block dl dd span.small {
		font-size:2.933vw;
	}
	#contents .cont-block .shishin-box ul.list-hl li span.disc {
		font-feature-settings:initial;
		font-feature-settings:normal;
	}
	
	.president-photo {
		float:right;
		width:36vw;
		margin-left:4vw;
	}
	.president-name {
		margin-top:2vw;
		font-size:2.66vw;
		text-align:center;
		line-height:1.4;
	}
	.president-name span {
		font-size:2.13vw;
	}
	
	.pNavi {
		margin-top:5vw;
		text-align:center;
	}
	.pNavi ul {
	}
	.pNavi ul li {
		display:inline-block;
		width:44vw;
		font-size:2.933vw;
		line-height:5vw;
		text-align:left;
		margin:0;
		padding:0;
	}
	.pNavi ul li:nth-of-type(1) {
		text-align:left;
	}
	.pNavi ul li + li {
		margin-left:0;
		padding-left:0;
		border-left:none;
		text-align:right;
	}
	
	h3.rinen {
		margin-top:-2vw;
		margin-bottom:4vw;
		font-size:6.4vw;
		font-weight:300;
		line-height:2.0;
	}
	.alc {
		text-align:center;
	}
	
	.shishin-box {
		margin-top:2em;
		padding-top:2em;
		border-top:1px solid #CCC;
	}
	
	.overview-block-l {
		float:none;
		width:100%;
	}
	.overview-block-r {
		float:none;
		width:100%;
	}
	.overview-block-l dl,
	.overview-block-r dl {
	}
	.overview-block-l dl dt,
	.overview-block-r dl dt {
		float:none;
		font-weight:600;
	}
	.overview-block-l dl dd,
	.overview-block-r dl dd {
		padding-left:0;
	}
	.overview-block-l dl + dl,
	.overview-block-r dl + dl {
		margin-top:2em;
	}
	.overview-block-l dl:nth-of-type(6) {
		font-feature-settings:normal;
	}
	
	.history-block {
	}
	.history-block .history-box {
	}
	.history-block .history-box + .history-box {
		margin-top:1em;
	}
	.history-block .history-box dt {
		float:none;
		width:auto;
		font-weight:600;
	}
	.history-block .history-box dt span {
		float:none;
		display:inline-block;
	}
	.history-block .history-box dt span + span {
		float:none;
		display:inline-block;
		width:3em;
		text-align:right;
		font-weight:300;
	}
	.history-block .history-box dd {
		padding-left:0;
	}
	
	
	.client-block {
	}
	.client-block + .client-block {
		margin-top:2em;
		padding-top:2em;
		border-top:1px solid #CCC;
	}
	.client-block .client-box {
	}
	.client-block .client-box dt {
		float:none;
		font-weight:600;
	}
	.client-block .client-box dd {
		padding-left:0;
	}
	.client-block .client-box dd ul {
		-webkit-columns: 2;
		-moz-columns: 2;
		-ms-columns: 2;
		columns: 2;
		margin-right:0;
	}
	#contents .cont-block .client-block .client-box dd ul li {
		font-size:2.66vw;
	}
	
	
	.organization-block {
		position:relative;
	}
	.organization-box {
		position:static;
	}
	.organization-box h3 {
		font-size:3.466vw;
		font-weight:600;
		line-height:1.8;
	}
	.organization-box h3 span {
		font-size:2.933vw;
		font-weight:300;
	}
	#contents .cont-block .organization-box dl {
		margin-top:1em;
		font-size:2.66vw;
	}
	.organization-box dl + dl {
		margin-top:1.6em;
	}
	.organization-box dl dt {
		float:left;
	}
	.organization-box dl dd {
		padding-left:9em;
	}
	.organization-img {
		margin-top:4vw;
		text-align:left;
	}
	
	
	.qualification-block {
	}
	.qualification-block + .qualification-block {
		margin-top:2em;
		padding-top:2em;
		border-top:1px solid #CCC;
	}
	.qualification-block .qualification-box {
	}
	.qualification-block .qualification-box dt {
		float:none;
		font-weight:600;
	}
	.qualification-block .qualification-box dd {
		padding-left:0;
	}
	
	.qualification + .qualification {
		margin-top:2em;
	}
	.qualification h3 {
		font-size:3.466vw;
		font-weight:600;
		line-height:1.8;
	}
	.qualification div {
		float:right;
		width:20vw;
		margin-left:4vw;
	}
	.qualification table {
		width:100%;
		font-size:2.933vw;
		font-weight:300;
		line-height:1.8;
	}
	.qualification table thead th,
	.qualification table thead td {
		font-weight:600;
	}
	.qualification table tbody th,
	.qualification table tbody td {
		font-weight:300;
	}
	.qualification table th {
		text-align:left;
	}
	.qualification table td {
		text-align:right;
	}
	
	
	.access-block {
	}
	.access-block + .access-block {
		margin-top:5vw;
	}
	.map-box {
		float:none;
		text-align:center;
		font-size:3.466vw;
		font-weight:300;
	}
	.map-box img {
		margin-bottom:5vw;
	}
	.access-text {
		float:none;
		width:100%;
	}
	#contents .access-text dl {
		font-size:3.466vw;
		font-weight:300;
		line-height:1.6;
	}
	.access-text dl + dl {
		margin-top:1.6em;
	}
	.access-text dl dt {
		float:none;
		font-weight:600;
	}
	.access-text dl dd {
		padding-left:0;
	}
	#contents .access-block h3 {
		font-size:3.466vw;
		font-weight:600;
		line-height:1.6;
		text-align:center;
	}
	#contents .access-block p {
		line-height:1.6;
		text-align:center;
	}

	/* 2025/08/28追加 */
	#contents .facility-block p {
		line-height:1.6;
		text-align:center;
		padding: 25px 0;
	}
	.facility-pic{
		display: block;
	}
	.facility-l{
		margin-bottom: 6px;
	}
	.facility-r{
		margin-bottom: 6px;
	}
}
