/* ---------------------------
PAGE ABOUT
----------------------------*/
.page-about h2 {
	position: absolute;
	bottom: 5.7vw;
	left: 9%;
	line-height: 1;
	letter-spacing: .1em;
	font-family: 'Oswald', sans-serif;
	font-size: 3vw;
}
.page-about h2 span {
	display: block;
	margin-top: 1vw;
	letter-spacing: 0;
	font-family: "Yu Gothic Medium", sans-serif;
	font-size: 1vw;
	font-weight: normal;
}
.page-about-text {
	margin: 0 9%;
	text-align: center;
}
.page-about-text img {
	display: block;
	margin: 10% auto 3.1vw;
	width: 68%;
}
.page-about-text p {
	line-height: 1.6;
	font-size: 1.1vw;
}
.page-about-text p:nth-of-type(1) {
	margin-bottom: .6vw;
}
.page-about-text .mv-text {
	position: initial;
	margin-bottom: 4%;
	text-shadow: none;
	font-size: 1.5vw;
	color: #000;
}

/*member*/
.page-about-member {
	margin: 5vw 9% 0 9%;
}
.page-about-member h2 {
	font-family: 'Oswald', sans-serif;
	font-size: 1.8vw;
	letter-spacing: .1em;
}
.member-list-up {
	display: grid;
	gap: 0% 2%;
	grid-template-columns: repeat(3, calc(96% / 3));
}
.page-about-member ul:nth-of-type(1) {
	margin: -.2vw 0 6.9vw;
}
.member-list-up li {
	margin-top: 3.4vw;
	text-align: center;
}

/*プロフィール表示アニメーション*/
.js-slide-in {
	opacity: 0;
}
.img-wrap {
	overflow: hidden;
	position: relative;
}
.img-wrap:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	animation: img-wrap-key .5s cubic-bezier(.4, 0, .2, 1) forwards;
	background: #fff;
	pointer-events: none;
	z-index: 1;
}
@keyframes img-wrap-key {
	100% {
		transform: translateX(100%);
	}
}

.member-list-up dd:nth-of-type(1) {
	margin-top: 1.2vw;
	font-size: .83vw;
	letter-spacing: .05em;
}
.member-list-up dd:nth-of-type(2) {
	margin-top: .7vw;
	font-size: 1.14vw;
	font-weight: bold;
	letter-spacing: .05em;
}
.member-txt-line {
	color: #7e7e7e;
	font-size: .83em;
}
.member-txt-en {
	font-family: 'Oswald', sans-serif;
	color: #7e7e7e;
	font-size: .83em;
	font-weight: normal;
	letter-spacing: .1em;
}
.member-list-down {
	display: grid;
	gap: 0% 1%;
	grid-template-columns: repeat(5, calc(96% / 5));
}
.member-list-down li {
	margin-top: .78vw;
}

/*company*/
.page-about-company {
	margin: 10.4vw 9%;
	font-size: .83vw;
}
.company-inner {
	display: grid;
	gap: 0;
	grid-template-columns: 43.5% 56.5%;
}
.company-info {
	margin: 2.9vw 0 0 4vw;
}
.page-about-company h2 {
	margin: 0 0 1.5vw 1.3vw;	
}
.page-about-company dl {
	display: flex;
	flex-wrap: wrap;
	letter-spacing: .05em;
}
.page-about-company dl dt {
	display: flex;
	align-items: center;
	padding-left: 1.3vw;
	width: 23%;
	height: auto;
	min-height: 4vw;
	font-weight: bold;
}
.page-about-company dl dd {
	display: flex;
	align-items: center;
	padding-right: 1.3vw;
	width: 77%;
	height: auto;
	min-height: 4vw;
}
.page-about-company dl dt:nth-of-type(odd),
.page-about-company dl dd:nth-of-type(odd) {
	background: #f5f5f5;
}
.page-about-company a {
	margin-left: 1em;
}
.page-about-company a:hover {
	text-decoration: underline;
}
.page-about-company a.about-mail {
	margin: 0;
}

/*map*/
.map {
	margin: 0 9%;
	padding-bottom: calc(10.4vw - 3%);
}
.map iframe {
	height: 30vw;
}

/*office*/
.office {
	margin: 10% 9%;
}
.office h2 {
	font-family: 'Oswald', sans-serif;
	font-size: 2vw;
	letter-spacing: .1em;
}
.office ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
.office li {
	margin-top: 2.8vw;
	width: 39.2vw;
}
.office li img {
	width: 100%;
}

@media screen and (max-width: 559px) {
	.page-about h2 {
		bottom: 20vw;
		left: 7%;
		letter-spacing: .0em;
		font-size: 7.5vw;
	}
	.page-about h2 span {
		margin-top: .5em;
		letter-spacing: .05em;
		font-size: 3.5vw;
	}
	.page-about-text {
		margin: 0 7%;
	}
	.page-about-text img {
		margin: 15% auto 4.4vw;
		width: 100%;
	}
	.page-about-text p {
		font-size: 3.1vw;
	}
	.page-about-text p:nth-of-type(1) {
		margin-bottom: 2.6vw;
	}
	.page-about-text .mv-text {
		margin-bottom: 12%;
		font-size: 3.4vw;
	}

	/*member*/
	.page-about-member {
		margin: 14vw 7% 0 7%;
	}
	.page-about-member h2 {
		font-size: 4.7vw;
		letter-spacing: .1em;
	}
	.member-list-up {
		display: grid;
		grid-template-columns: 1fr;
	}
	.page-about-member ul:nth-of-type(1) {
		margin-bottom: calc(13vw - 8%);
	}
	.member-list-up li:nth-of-type(1) {
		margin-top: 9.6vw;
	}
	.member-list-up li:not(:nth-of-type(1)) {
		margin-top: 7.8vw;
	}
	.member-list-up dd:nth-of-type(1) {
	 	margin-top: 3.4vw;
	 	font-size: 3.1vw;
	}
	.member-list-up dd:nth-of-type(2) {
		margin-top: 1.6vw;
		font-size: 4.2vw;
	}
	.member-list-down {
		display: grid;
		gap: 0% 3.5vw;
		grid-template-columns: 1fr 1fr;
	}
	.member-list-down li {
		margin-top: 3.5vw;
		text-align: center;
	}

	/*company*/
	.page-about-company {
		margin: 21vw 0;
		font-size: 3.1vw;
	}
	.company-inner {
		grid-template-columns: 1fr;
	}
	.company-inner img {
		margin: 0 auto;
		width: calc(100% - 14%);
	}
	.company-info {
		margin-left: 0%;
	}
	.page-about-company h2 {
		margin: 5% 7% 5% 7%;
	}
	.page-about-company dl dt {
		padding: 5% 0 5% 7%;
		width: 31%;
		min-height: 15.8vw;
	}
	.company-item {
		align-items: normal !important;
	}
	.page-about-company dl dd {
		padding: 5% 6vw 5% 0;
		width: 69%;
		letter-spacing: 0;
		min-height: 15.8vw;
	}
	.company-affiliate p:first-of-type {
		margin-bottom: 1em;
	}
	.page-about-company a {
		margin-left: 0;
	}

	/*map*/
	.map {
		margin: 0 0;
	}
	.map iframe {
		height: 80vw;
	}

	/*office*/
	.office {
		margin: 20% 0;
	}
	.office h2 {
		margin: 0 0 7% 7%;
		font-size: 5vw;
		letter-spacing: .05em;
	}
	.office ul {
		display: block;
	}
	.office li {
		margin-top: 5vw;
		width: 100%;
	}
}
