@charset "UTF-8";
/*----------
	/rd/top
	研究開発トップ
----------*/
.p-kv {
	position: relative;
	margin-top: -48px !important;
	padding-block: 40px 292px;
	background: #F7F7F7 url(/sitemanage/assets/images/rd/top/kv_sp.jpg) no-repeat center bottom/100% auto;
}
@media (min-width: 768px), print {
	.p-kv {
		margin-top: -80px !important;
		padding-block: 80px 0;
		height: 740px;
		background: #F7F7F7 url(/sitemanage/assets/images/rd/top/kv_pc.jpg) no-repeat center center/cover;
	}
}
.p-kv::after {
	display: block;
	position: absolute;
	content: "";
	width: 100%;
	height: 31px;
	left: 0;
	bottom: 0;
	background: url(/sitemanage/assets/images/common/shape_curve.png) no-repeat center bottom/100% 31px;
}
@media (min-width: 768px), print {
	.p-kv::after {
		height: 120px;
		background-size: 100% 120px;
	}
}
.p-kv__lead {
	font-size: 2.2rem;
	text-align: center;
	font-weight: 500;
	color: var(--color-prim);
	line-height: var(--line-height-m);
	font-family: var(--font-mplus);
}
@media (min-width: 768px), print {
	.p-kv__lead {
		font-size: 3.2rem;
		text-align: left;
	}
}
.p-kv__text {
	margin-top: 20px;
}
@media (min-width: 768px), print {
	.p-kv__text {
		margin-top: 30px;
		font-size: 1.8rem;
	}
}
.p-kv__button {
	margin-top: 20px;
	max-width: 220px;
}
@media (min-width: 768px), print {
	.p-kv__button {
		margin-top: 50px;
		max-width: 300px;
	}
}

@media (max-width: 767px) {
	.p-news-section {
		padding-top: 40px;
	}
}

.p-news-item__link {
	position: relative;
	display: block;
	color: var(--color-txt);
}
@media (min-width: 768px), print {
	.p-news-item__link:hover figure img,
	.p-news-item__link:hover > div img {
		transform: scale(1.05);
	}
	.p-news-item__link:hover .p-news-item__title {
		color: var(--color-hover);
		text-decoration: underline;
	}
}
.p-news-item__figure {
	border-radius: 15px;
	padding: 10px;
	border: 1px solid var(--color-border);
}
@media (min-width: 768px), print {
	.p-news-item__figure {
		border-radius: 20px;
	}
}
.p-news-item__figure figure,
.p-news-item__figure > div {
	border-radius: 10px;
	overflow: hidden;
}
.p-news-item__figure figure img,
.p-news-item__figure > div img {
	transition: transform 0.3s;
	aspect-ratio: 353/243;
	object-fit: contain;
}
.p-news-item__content {
	padding: 16px 10px 0;
}
.p-news-item__date {
	font-weight: 500;
}
.p-news-item__tags {
	margin-top: 2px;
}
.p-news-item__title {
	margin-top: 10px;
	transition: color 0.2s;
}

.p-news-slider {
	overflow: hidden;
}
.p-news-slider .swiper-slide {
	overflow: hidden;
}
.p-news-slider .swiper-usability {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 45px;
}
.p-news-slider .swiper-button-prev,
.p-news-slider .swiper-button-next {
	flex: 0 0 45px;
	display: block;
	position: static;
	width: 45px;
	height: 45px;
	margin-top: 0;
	background-color: #fff;
	border: 1px solid var(--color-border);
	border-radius: 100%;
	cursor: pointer;
}
.p-news-slider .swiper-button-prev::after,
.p-news-slider .swiper-button-next::after {
	display: none;
}
.p-news-slider .swiper-button-prev::before,
.p-news-slider .swiper-button-next::before {
	font-family: iconfont !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	display: grid;
	place-content: center;
	color: #666666;
	font-size: 1.4rem;
	line-height: 43px;
	transition: transform 0.2s;
}
.p-news-slider .swiper-button-prev::before {
	content: var(--icon-arrow2-l);
}
.p-news-slider .swiper-button-next::before {
	content: var(--icon-arrow2-r);
}
.p-news-slider .swiper-pause {
	display: block;
	position: static;
	height: 18px;
	margin-left: 14px;
	line-height: 1;
	cursor: pointer;
}
.p-news-slider .swiper-pause::before {
	font-family: iconfont !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: var(--icon-pause);
	display: inline-block;
	color: var(--color-border);
	font-size: 1.8rem;
	line-height: 1;
}
.p-news-slider .swiper-pause.is-paused::before {
	color: var(--color-prim);
}
.p-news-slider .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background-color: var(--color-border);
	margin: 0 7px;
	opacity: 1;
}
.p-news-slider .swiper-pagination-bullet-active {
	background-color: var(--color-prim);
}
.p-news-slider.disabled-swiper {
	display: flex;
	justify-content: flex-start;
}
.p-news-slider.disabled-swiper .swiper-wrapper {
	display: flex;
	gap: 0 40px;
}
.p-news-slider.disabled-swiper .swiper-slide {
	max-width: auto;
}
.p-news-slider.disabled-swiper .swiper-button-prev,
.p-news-slider.disabled-swiper .swiper-button-next,
.p-news-slider.disabled-swiper .swiper-pagination,
.p-news-slider.disabled-swiper .swiper-usability {
	display: none;
}
@media (min-width: 768px), print {
	.p-news-slider {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}
	.p-news-slider .swiper-slide a img {
		transition: transform 0.3s;
	}
	.p-news-slider .swiper-slide a:hover img {
		transform: scale(1.05);
	}
	.p-news-slider .swiper-usability {
		margin-top: 40px;
	}
	.p-news-slider .swiper-pagination {
		line-height: 1;
		cursor: pointer;
	}
	.p-news-slider .swiper-button-prev::before,
	.p-news-slider .swiper-button-next::before {
		transform: opacity 0.2s;
	}
	.p-news-slider .swiper-button-prev:hover::before,
	.p-news-slider .swiper-button-next:hover::before {
		opacity: 0.7;
	}
	.p-news-slider .swiper-button-prev {
		margin-right: 20px;
	}
	.p-news-slider .swiper-button-next {
		margin-left: 24px;
	}
	.p-news-slider.disabled-swiper .swiper-wrapper {
		gap: 0 3%;
	}
	.p-news-slider.disabled-swiper .swiper-slide {
		max-width: 31.3333333%;
	}
}
@media (max-width: 767px) {
	.p-news-slider {
		width: 100%;
		margin: 0 auto;
	}
	.p-news-slider .swiper-slide:only-of-type {
		width: 100%;
	}
	.p-news-slider .swiper-usability {
		margin-top: 20px;
	}
	.p-news-slider .swiper-pagination-bullets {
		margin: 0 14px 0 17px;
	}
	.p-news-slider .swiper-pause {
		margin: 0 24px 0 0;
	}
}

.p-mission-section {
	position: relative;
	background-color: var(--color-bg-blue);
	margin-top: 91px;
	padding-top: 40px;
	padding-bottom: 60px;
}
@media (min-width: 768px), print {
	.p-mission-section {
		margin-top: 200px;
		padding-top: 0;
		padding-bottom: 80px;
	}
}
.p-mission-section::after {
	display: block;
	position: absolute;
	content: "";
	width: 100%;
	height: 31px;
	left: 0;
	top: -31px;
	background: url(/sitemanage/assets/images/common/shape_curve_blue.png) no-repeat center bottom/100% 31px;
}
@media (min-width: 768px), print {
	.p-mission-section::after {
		top: -120px;
		height: 120px;
		background-size: 100% 120px;
	}
}

.p-message-section {
	position: relative;
	padding-top: 71px;
	padding-bottom: 60px;
}
@media (min-width: 768px), print {
	.p-message-section {
		padding-top: 120px;
		padding-bottom: 80px;
	}
}
.p-message-section::after {
	display: block;
	position: absolute;
	content: "";
	width: 100%;
	height: 31px;
	left: 0;
	top: 0;
	background: var(--color-bg-blue) url(/sitemanage/assets/images/common/shape_curve.png) no-repeat center bottom/100% 31px;
}
@media (min-width: 768px), print {
	.p-message-section::after {
		height: 120px;
		background-size: 100% 120px;
	}
}

.p-action-section {
	position: relative;
	background-color: var(--color-bg-blue);
	padding-top: 71px;
	padding-bottom: 80px;
}
@media (min-width: 768px), print {
	.p-action-section {
		padding-top: 120px;
		padding-bottom: 100px;
	}
}
.p-action-section::after {
	display: block;
	position: absolute;
	content: "";
	width: 100%;
	height: 31px;
	left: 0;
	top: 0;
	background: #fff url(/sitemanage/assets/images/common/shape_curve_blue.png) no-repeat center bottom/100% 31px;
}
@media (min-width: 768px), print {
	.p-action-section::after {
		height: 120px;
		background-size: 100% 120px;
	}
}

.p-other-section {
	position: relative;
	padding-top: 71px;
}
@media (min-width: 768px), print {
	.p-other-section {
		padding-top: 120px;
	}
}
.p-other-section::after {
	display: block;
	position: absolute;
	content: "";
	width: 100%;
	height: 31px;
	left: 0;
	top: 0;
	background: var(--color-bg-blue) url(/sitemanage/assets/images/common/shape_curve.png) no-repeat center bottom/100% 31px;
}
@media (min-width: 768px), print {
	.p-other-section::after {
		height: 120px;
		background-size: 100% 120px;
	}
}

.p-mission-explain__item dt {
	font-size: 1.8rem;
	font-weight: 500;
	color: var(--color-prim);
	font-family: var(--font-mplus);
	text-align: center;
}
@media (min-width: 768px), print {
	.p-mission-explain__item dt {
		font-size: 2.4rem;
	}
}
.p-mission-explain__item dd {
	margin-top: 10px;
}
.p-mission-explain__figure {
	margin-top: 16px;
	max-width: 580px;
	margin-inline: auto;
}
.p-mission-explain__column {
	display: flex;
	gap: 15px;
	margin-top: 16px;
}
@media (min-width: 1025px) {
	.p-mission-explain__column {
		gap: 640px;
		margin-top: -160px;
	}
}

.p-accordion {
	border-bottom: solid 1px #DDD;
}
.p-accordion + .p-accordion {
	margin-top: 0;
}
.p-accordion + .p-accordion .p-accordion__title {
	border-top: none;
}
.p-accordion__title {
	border-top: solid 1px #DDD;
	padding: 10px 40px 10px 10px;
	font-size: 1.6rem;
	font-weight: 500;
	cursor: pointer;
	position: relative;
}
.p-accordion__title .p-accordion-title__icon {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	background-color: #fff;
	border: 1px solid var(--color-link);
	border-radius: 100%;
	z-index: 1;
	cursor: pointer;
}
.p-accordion__title .p-accordion-title__icon::before {
	content: var(--icon-plus);
	font-family: iconfont !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	display: grid;
	place-content: center;
	color: var(--color-link);
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 22px;
	text-align: center;
}
.p-accordion.is-active .p-accordion__title {
	background: #E8F4FF;
}
.p-accordion.is-active .p-accordion-title__icon::before {
	content: var(--icon-minus);
}
.p-accordion__child-inner {
	padding: 20px 20px;
}
.p-accordion:not(.is-disabled) .p-accordion__child {
	height: 0;
	position: relative;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
	transition: all 0.4s linear;
}
.p-accordion.is-active:not(.is-disabled) .p-accordion__child {
	height: auto;
	opacity: 1;
	pointer-events: visible;
}
@media (min-width: 768px), print {
	.p-accordion__title {
		display: flex;
		padding: 30px 50px 30px 20px;
		font-size: 2.4rem;
	}
	.p-accordion__title .p-accordion-title__icon {
		right: 20px;
		transition: background-color 0.3s;
	}
	.p-accordion__title .p-accordion-title__icon::before {
		transition: color 0.3s;
	}
	.p-accordion__title .p-accordion-title__icon:hover {
		background-color: var(--color-hover);
	}
	.p-accordion__title .p-accordion-title__icon:hover::before {
		color: #fff;
	}
	.p-accordion__child-inner {
		padding: 40px 20px;
	}
}

.p-interview-item__balloon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-bg-blue);
	border-radius: 15px;
	min-height: 115px;
	font-size: 1.6rem;
	color: var(--color-prim);
	font-family: var(--font-mplus);
	line-height: var(--line-height-s);
	text-align: center;
	padding: 20px;
}
.p-interview-item__balloon::before {
	content: "";
	display: block;
	position: absolute;
	width: 25px;
	height: 20px;
	background-color: var(--color-bg-blue);
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	clip-path: polygon(100% 0, 0 0, 50% 100%);
}
@media (min-width: 768px), print {
	.p-interview-item__balloon {
		border-radius: 20px;
		min-height: 130px;
		font-size: 2rem;
	}
}
.p-interview-item__figure {
	margin-top: 20px;
	max-width: 240px;
	margin-inline: auto;
}
.p-interview-item__department {
	margin-top: 10px;
	text-align: center;
}
@media (min-width: 768px), print {
	.p-interview-item__department {
		margin-top: 20px;
	}
}
.p-interview-item__name {
	text-align: center;
	font-size: 2rem;
	color: var(--color-prim);
	font-family: var(--font-mplus);
}

.p-interview-slider {
	overflow: hidden;
}
.p-interview-slider .swiper {
	width: 100%;
}
.p-interview-slider .swiper-slide {
	overflow: hidden;
}
.p-interview-slider .swiper-usability {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 45px;
}
.p-interview-slider .swiper-button-prev,
.p-interview-slider .swiper-button-next {
	flex: 0 0 45px;
	display: block;
	position: static;
	width: 45px;
	height: 45px;
	margin-top: 0;
	background-color: #fff;
	border: 1px solid var(--color-border);
	border-radius: 100%;
	cursor: pointer;
}
.p-interview-slider .swiper-button-prev::after,
.p-interview-slider .swiper-button-next::after {
	display: none;
}
.p-interview-slider .swiper-button-prev::before,
.p-interview-slider .swiper-button-next::before {
	font-family: iconfont !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	display: grid;
	place-content: center;
	color: #666666;
	font-size: 1.4rem;
	line-height: 43px;
	transition: transform 0.2s;
}
.p-interview-slider .swiper-button-prev::before {
	content: var(--icon-arrow2-l);
}
.p-interview-slider .swiper-button-next::before {
	content: var(--icon-arrow2-r);
}
.p-interview-slider .swiper-pause {
	display: block;
	position: static;
	height: 18px;
	margin-left: 14px;
	line-height: 1;
	cursor: pointer;
}
.p-interview-slider .swiper-pause::before {
	font-family: iconfont !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	content: var(--icon-pause);
	display: inline-block;
	color: var(--color-border);
	font-size: 1.8rem;
	line-height: 1;
}
.p-interview-slider .swiper-pause.is-paused::before {
	color: var(--color-prim);
}
.p-interview-slider .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background-color: var(--color-border);
	margin: 0 7px;
	opacity: 1;
}
.p-interview-slider .swiper-pagination-bullet-active {
	background-color: var(--color-prim);
}
.p-interview-slider.disabled-swiper {
	display: flex;
	justify-content: flex-start;
}
.p-interview-slider.disabled-swiper .swiper-wrapper {
	display: flex;
	gap: 0 40px;
}
.p-interview-slider.disabled-swiper .swiper-slide {
	max-width: auto;
}
.p-interview-slider.disabled-swiper .swiper-button-prev,
.p-interview-slider.disabled-swiper .swiper-button-next,
.p-interview-slider.disabled-swiper .swiper-pagination,
.p-interview-slider.disabled-swiper .swiper-usability {
	display: none;
}
@media (min-width: 768px), print {
	.p-interview-slider {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}
	.p-interview-slider .swiper-slide a img {
		transition: transform 0.3s;
	}
	.p-interview-slider .swiper-slide a:hover img {
		transform: scale(1.05);
	}
	.p-interview-slider .swiper-usability {
		margin-top: 40px;
	}
	.p-interview-slider .swiper-pagination {
		line-height: 1;
		cursor: pointer;
	}
	.p-interview-slider .swiper-button-prev::before,
	.p-interview-slider .swiper-button-next::before {
		transform: opacity 0.2s;
	}
	.p-interview-slider .swiper-button-prev:hover::before,
	.p-interview-slider .swiper-button-next:hover::before {
		opacity: 0.7;
	}
	.p-interview-slider .swiper-button-prev {
		margin-right: 20px;
	}
	.p-interview-slider .swiper-button-next {
		margin-left: 24px;
	}
	.p-interview-slider.disabled-swiper .swiper-wrapper {
		gap: 0 3%;
	}
	.p-interview-slider.disabled-swiper .swiper-slide {
		max-width: 31.3333333%;
	}
}
@media (max-width: 767px) {
	.p-interview-slider {
		width: 100%;
		margin: 0 auto;
	}
	.p-interview-slider .swiper-slide:only-of-type {
		width: 100%;
	}
	.p-interview-slider .swiper-usability {
		margin-top: 20px;
	}
	.p-interview-slider .swiper-pagination-bullets {
		margin: 0 14px 0 17px;
	}
	.p-interview-slider .swiper-pause {
		margin: 0 24px 0 0;
	}
}

.p-result-item {
	border-radius: 15px;
	padding: 24px;
	border: 6px solid #E8F4FF;
}
@media (min-width: 768px), print {
	.p-result-item {
		padding: 30px;
		border-radius: 20px;
		border-width: 10px;
	}
}
.p-result-item__title {
	text-align: center;
	color: var(--color-prim);
	font-family: var(--font-mplus);
	font-weight: 500;
	font-size: 1.8rem;
}
@media (min-width: 768px), print {
	.p-result-item__title {
		font-size: 2.4rem;
	}
}
.p-result-item__description {
	text-align: center;
	margin-top: 10px;
}
.p-result-item__column {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 15px;
	margin-top: 16px;
}
@media (min-width: 768px), print {
	.p-result-item__column {
		gap: 20px;
		margin-top: 20px;
	}
}
.p-result-item__column dt {
	font-weight: bold;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	background-color: var(--color-prim);
}
.p-result-item__column dd {
	text-align: center;
	font-weight: bold;
	color: var(--color-prim);
}
.p-result-item__column dd em {
	font-size: 4.4rem;
	font-family: var(--font-mplus);
	font-weight: 500;
	line-height: var(--line-height-s);
	margin-right: 6px;
}
@media (min-width: 768px), print {
	.p-result-item__column dd em {
		font-size: 6rem;
	}
}
.p-result-item__note {
	font-size: 1.4rem;
	color: var(--color-txt-caption);
}