@charset "UTF-8";

/*================================================

　mainvisual

=================================================*/
.mainvisual__wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 37.578125vw;
	max-height: 481px;
	overflow: hidden;
}
.mainvisual__wrap h1 {
	position: absolute;
}

/*================================================

　section-nav

=================================================*/
.section-nav ul {
	display: flex;
	justify-content: space-around;
	max-width: 830px;
	margin: 70px auto;
	padding: 0 20px;
}
.section-nav ul li {
	width: 230px;
	padding: 0;
}
@media screen and (max-width: 768px) {

	.section-nav ul { 
		margin: 9.114583333vw auto;
		padding: 0 2.60416666vw;
	}
	.section-nav ul li {
		width: 29.9479167vw;
	}

}

/*================================================

　management

=================================================*/
.management {
	width: 100%;
	margin: 0 auto 100px;
	padding: 0;
}
.management__content {
	position: relative;
	max-width: 1105px;
	margin: auto;
	padding: 0;
}
.management__content .management-card {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: flex-start;
	max-width: 920px;
	margin: 55px auto;
	padding: 0 20px;
}
.management-card .management-card__text {
	position: relative;
	width: 521px;
	margin: 0;
	padding: 35px 30px 40px;
	background: url("../images/company/management_box_02.gif") center center / 100% auto repeat-y;
}
.management-card .management-card__text::before,
.management-card .management-card__text::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 53px;
	background: url("../images/company/management_box_01.gif") center center / 100% auto no-repeat;
	z-index: 1;
}
.management-card .management-card__text::after {
	top: auto;
	bottom: 0;
	height: 78px;
	background: url("../images/company/management_box_03.gif") center center / 100% auto no-repeat;
}
.management-card .management-card__text p {
	position: relative;
	margin-bottom: 1.4em;
	font-size: 1.4rem;
	line-height: 1.4;
	z-index: 10;
}
.management-card .management-card__text p span {
	font-size: 1.1rem;
}
.management-card__text__header,
.management-card__text__body {
	padding: 0 18px;
}
.management-card__text__body {
	position: relative;
	padding-top: 20px;
}
.management-card__text .management-card__text__body p:last-child {
	margin-bottom: 0;
}
.management-card__text__body::after {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	width: 100%;
	height: 6px;
	background-color: #00709E;
	clip-path: polygon(0 0, calc(100% - 6px) 0, 100% 100%, 0 100%);
}
.management-card figure {
	width: 312px;
	text-align: center;
}
.management-card figure figcaption {
	margin-top: 12px;
	font-size: 1.8rem;
}
.management-card figure.ex img {
	width: 265px;
}

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

	.management {
		margin: 0 auto 10.8813928vw;
	}
	.management__content .management-card {
		margin: 5.98476605vw auto;
	}
	.management-card .management-card__text {
		width: 56.66920566vw;
		padding: 3.80848749vw 3.26441785vw 4.35255713vw;
	}
	.management-card .management-card__text::before,
	.management-card .management-card__text::after {
		height: 5.76713819vw;
	}
	.management-card .management-card__text::after {
		height: 8.4874864vw;
	}
	.management-card .management-card__text p {
		font-size: 1.4rem;
	}
	.management-card .management-card__text p span {
		font-size: 1.1rem;
	}
	.management-card__text__header,
	.management-card__text__body {
		padding: 0 1.95865071vw;
	}
	.management-card__text__body {
		padding-top: 2.17627856vw;
	}
	.management-card figure {
		width: 33.9499456vw;
	}
	.management-card figure figcaption {
		font-size: clamp(1.5rem, (100vw - 769px) * 3 / 150 + 15px, 1.8rem);
	}
	.management-card figure.ex img {
		width: 28.835691vw;
	}

}

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

	.management {
		margin: 0 auto 100px;
	}
	.management__content .title img {
		width: 30.9895833vw;
	}
	.management__content .management-card {
		flex-direction: column-reverse;
		align-items: center;
		margin: 7.16145833vw auto;
		padding: 0 2.60416666vw;
	}
	.management-card .management-card__text {
		width: 85vw;
		max-width: 521px;
		padding: min(5.55729167vw, 35px) 3.90625vw min(6.20833333vw, 40px);
	}
	.management-card .management-card__text::before,
	.management-card .management-card__text::after {
		height: 8.69358724vw;
		max-height: 53px;
	}
	.management-card .management-card__text::after {
		height: 12.7255273vw;
		max-height: 78px;
	}
	.management-card .management-card__text p {
		font-size: 1.4rem;
		font-size: clamp(1.2rem, (100vw - 375px) * 3 / 393 + 12px, 1.5rem);
	}
	.management-card .management-card__text p span {
		font-size: 1rem;
	}
	.management-card__text__header,
	.management-card__text__body {
		padding: 0 2.34375vw;
	}
	.management-card__text__body {
		padding-top: 2.60416666vw;
	}
	.management-card__text__body::after {
		height: 0.78125vw;
		clip-path: polygon(0 0, calc(100% - 0.78125vw) 0, 100% 100%, 0 100%);
	}
	.management-card figure {
		width: 41.625vw;
		max-width: 312px;
		margin-bottom: 3.90625vw;
	}
	.management-card figure figcaption {
		margin-top: 1.5625vw;
		font-size: clamp(1rem, (100vw - 375px) * 8.5 / 393 + 10px, 1.85rem);
	}
	.management-card figure.ex img {
		width: 34.5052083vw;
		max-width: 265px;
	}

}

/*================================================

　institute

=================================================*/
.institute {
	width: 100%;
	margin: 0 auto 60px;
	padding: 0;
}
.institute__content {
	position: relative;
	max-width: 1105px;
	margin: auto;
	padding: 0;
}
.institute-card {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 900px;
	margin: 40px auto 0;
	padding: 0;
}
.institute-card figure {
	width: 410px;
	margin-bottom: 60px;
	text-align: center;
}
.institute-card figure img {
	width: 312px;
	border: 0.5px solid #000;
}
.institute-card figure figcaption {
	margin-top: 12px;
	font-size: 1.8rem;
}

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

	.institute__content .title img {
		width: 42.4467099vw;
		margin-top: 0.2em;
	}

}

@media screen and (max-width: 919px) {
	
	.institute {
		margin: 0 auto 6.52883569vw;
	}
	.institute-card {
		margin: 4.35255713vw auto 0;
		padding: 0 2.17627856vw;
	}
	.institute-card figure {
		width: 44.6137106vw;
		margin-bottom: 6.52883569vw;
	}
	.institute-card figure img {
		width: 33.9499456vw;
	}
	.institute-card figure figcaption {
		font-size: clamp(1.5rem, (100vw - 769px) * 3 / 150 + 15px, 1.8rem);
	}

}

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

	.institute__content .title img {
		width: 41.5vw;
		margin-top: 0.7em;
	}
	.institute-card figure figcaption {
		margin-top: 1.5625vw;
		font-size: clamp(0.9rem, (100vw - 375px) * 9.5 / 393 + 9px, 1.85rem);
		line-height: 1.3;
	}

}

/*================================================

　company

=================================================*/
.company {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
.company__content {
	position: relative;
	max-width: 1105px;
	margin: auto;
	padding: 0;
}
.company-card {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 920px;
	margin: auto;
	padding: 0 20px;
}
.company-card table {
	position: relative;
	width: 100%;
	max-width: 870px;
	margin: 0 auto;
	color: #231815;
	text-align: left;
	font-size: 1.7rem;
	line-height: 1.5;
}
.company-card table th {
	width: 160px;
	padding: 20px 8px;
	border-bottom: 1px solid #9E9F9F;
}
.company-card table td {
	padding: 20px 8px;
	border-bottom: 1px solid #9E9F9F;
}
.company-card table tr:nth-of-type(3) th,
.company-card table tr:nth-of-type(3) td {
	padding: 20px 8px 4px;
	border-bottom: none;
}
.company-card table tr:nth-of-type(4) th,
.company-card table tr:nth-of-type(4) td {
	padding: 0 8px 4px;
	border-bottom: none;
}
.company-card table tr:nth-of-type(5) th,
.company-card table tr:nth-of-type(5) td {
	padding: 20px 8px;
}
.company-card table tr:nth-of-type(6) th,
.company-card table tr:nth-of-type(6) td {
	padding: 20px 8px 0;
	border-bottom: none;
}
.company-card table td dl {
	display: flex;
	flex-wrap: wrap;
}
.company-card table td dl dd {
	margin-left: 3em;
}
.company-card table td dl:last-child {
	margin-top: 1em;
}
.company-card table td dl:last-child dt {
	width: 100%;
}
.company-card table td dl:last-child dd {
	margin-left: 7em;
}

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

	.company__content .title img {
		width: 28.7760417vw;
		margin-top: 0.7em;
	}
	.company-card table {
		font-size: clamp(1.1rem, (100vw - 375px) * 11 / 393 + 6px, 1.7rem);
	}
	.company-card table th {
		width: 21.33333333vw;
		padding: 2.60416666vw 1.04166666vw;
	}
	.company-card table td {
		padding: 2.60416666vw 1.04166666vw;
	}
	.company-card table tr:nth-of-type(3) th,
	.company-card table tr:nth-of-type(3) td {
		padding: 2.60416666vw 1.04166666vw 0.520833333vw;
	}
	.company-card table tr:nth-of-type(4) th,
	.company-card table tr:nth-of-type(4) td {
		padding: 0 1.04166666vw 0.520833333vw;
	}
	.company-card table tr:nth-of-type(5) th,
	.company-card table tr:nth-of-type(5) td {
		padding: 2.60416666vw 1.04166666vw;
	}
	.company-card table tr:nth-of-type(6) th,
	.company-card table tr:nth-of-type(6) td {
		padding: 2.60416666vw 1.04166666vw 0;
	}

}
