.p-mv {
	overflow-x: clip;
}

.p-mv__box {
	display: grid;
	grid-template-columns: 2.25rem 1fr;
	position: relative;
}

.p-mv__box::before {
	background-color: #0060b0;
	bottom: 0;
	content: "";
	height: 8.125rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.p-mv__imgBox {
	position: relative;
}

.p-mv__catch {
	left: 1.25rem;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: min(69.3333333333vw, 16.25rem);
	width: 69.3333333333vw;
	z-index: 10;
}

.p-mv__catch img {
	aspect-ratio: 699/200;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.p-mv__video {
	aspect-ratio: 9/16;
	height: calc(100svh - 4.3125rem);
	-o-object-fit: cover;
	   object-fit: cover;
	width: calc(100vw - 2.25rem);
	position: relative;
}
.p-mv__video:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #06061d;
	opacity: 0.2;
}
.p-mv__video video {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
}
.p-mv__video video.pc{
	display: block;
}
.p-mv__video video.smp{
	display: none;
}

.p-mv__newsBox {
	background: rgba(255, 255, 255, 0.8);
	bottom: 0;
	padding: 0.5rem 1.0625rem 0.5rem 1.375rem;
	position: absolute;
	right: 0;
}

/**********
** p-top-news
***********************************/

.p-top-news__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.p-top-news__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-top-news__title {
	flex-shrink: 0;
	font-family: "Jost", sans-serif;
	font-size: 1.25rem;
	font-weight: 500;
	text-transform: uppercase;
}

.p-top-news__linkBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.p-top-news__date {
	color: #656565;
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 700;
}

.p-top-news__link {
	font-size: 0.875rem;
	line-height: 1.7;
	position: relative;
}

.p-top-news__btn {
	align-items: center;
	color: #005492;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	font-size: 0.875rem;
	gap: 0.5rem;
	justify-content: flex-end;
}
.txtVertical h2{
	writing-mode:vertical-rl;
}

/**********
** p-one-team
***********************************/

.p-one-team {
	overflow-x: clip;
}

.p-one-team__bg {
	background-color: #0060b0;
	position: relative;
}

.p-one-team__bg::before {
	background: url(../../img/shape_bg_one-team.png) no-repeat bottom center/contain;
	bottom: 0;
	content: "";
	height: min(37.9861111111vw, 34.1875rem);
	left: -2.25rem;
	position: absolute;
	width: min(152.1527777778vw, 136.9375rem);
}

.p-one-team__inner {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: min(100%, 90rem);
}

.p-one-team__contents {
	display: grid;
}

.p-one-team__content {
	padding-top: 5rem;
	padding-bottom: 2.5rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.p-one-team__titleImg {
	margin-left: auto;
	margin-right: auto;
	width: min(100%, 18.75rem);
}

.p-one-team__titleImg img {
	aspect-ratio: 546/83;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

.p-one-team__text {
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.7;
	margin-top: 1.125rem;
	text-align: center;
	-webkit-text-decoration: underline;
	text-decoration: underline;
	text-decoration-color: #fff;
	text-decoration-thickness: 0.125rem;
	text-underline-offset: 0.5rem;
}

.p-one-team__lead {
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 2;
	margin-top: 2.4375rem;
}

.p-one-team__sliderBox {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.swiper {
	/* height: 62.4vw; */
	position: relative;
	width: 100%;
}

/* スライドの動き等速 */

.swiper-wrapper {
	transition-timing-function: linear;
}

/* 画像のサイズ調整 */

.swiper-slide {
	height: 11.71875rem !important;
	aspect-ratio: 1 / 1 !important;
}

.swiper-slide img {
	display: block;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
	aspect-ratio: 1 / 1 !important;
}

/**********
** p-top-strong
***********************************/

.p-top-strong {
	overflow-x: clip;
	padding-top: 6.25rem;
	padding-bottom: 3.75rem;
	position: relative;
}

.p-top-strong::before {
	background: url(../../img/shape_bg_strong.png) no-repeat top center/contain;
	content: "";
	height: min(213.3333333333vw, 50rem);
	left: calc(50% - 16.0625rem);
	position: absolute;
	top: 21.125rem;
	width: min(213.3333333333vw, 50rem);
}

.p-top-strong__cards {
	margin-top: 3.75rem;
}

/**********
** p-top-company
***********************************/

.p-top-company {
	overflow-x: clip;
	position: relative;
}

.p-top-company__bg {
	background: url(../../img/company_bg.jpg) no-repeat center center/cover;
	padding-top: 3.75rem;
	padding-bottom: 3.75rem;
	position: relative;
}

.p-top-company__bg::before {
	background: url(../../img/shape_bg_company.png) no-repeat center center/contain;
	content: "";
	height: min(46.1111111111vw, 41.5rem);
	left: 0;
	position: absolute;
	top: 0;
	width: min(46.3194444444vw, 41.6875rem);
}

.p-top-company__cards {
	display: grid;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.5rem;
	width: min(100%, 31.25rem);
}

.p-top-company__link {
	display: block;
	overflow: hidden;
}

.p-top-company__imgBox {
	position: relative;
}

.p-top-company__imgBox::before {
	background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 84, 146, 0.77)));
	background: linear-gradient(to bottom, transparent, rgba(0, 84, 146, 0.77));
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.p-top-company__img img {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	transition: scale 0.3s;
	width: 100%;
}

.p-top-company__btn {
	align-items: center;
	bottom: 1.25rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	justify-content: space-between;
	left: 0;
	padding-left: 2rem;
	padding-right: 0.9375rem;
	position: absolute;
	width: 100%;
	z-index: 2;
}

.p-top-company__btnText {
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.5;
}

.p-top-company__btnArrow {
	border: 0.125rem solid #fff;
	border-radius: 50%;
	height: 2.8125rem;
	line-height: 1;
	overflow: hidden;
	position: relative;
	width: 2.8125rem;
}

.p-top-company__btnArrow::before,
.p-top-company__btnArrow::after {
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
	background: url(../img/icon_arrow_right_white.svg) no-repeat center center/contain;
	content: "";
	height: 0.9375rem;
	left: 50%;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	width: 0.9375rem;
}

.p-top-company__btnArrow::after {
	transform: translateX(-200%);
}

.p-top-company__link:hover .p-top-company__btnArrow:before {
	animation-delay: 0s;
	animation-name: transformRightLeft2;
}

.p-top-company__link:hover .p-top-company__btnArrow:after {
	animation-delay: 0.2s;
	animation-name: transformLeftRight2;
}

/**********
** p-top-recruit
***********************************/

.p-top-recruit {
	overflow-x: clip;
	padding-top: 3.75rem;
	padding-bottom: 0px;
	position: relative;
}

.p-top-recruit__cards {
	display: grid;
	margin-top: 2.5rem;
	position: relative;
}

.p-top-recruit__cards::before {
	background: url(../../img/shape_bg_recruit.png) no-repeat center center/contain;
	content: "";
	height: min(123.4666666667vw, 28.9375rem);
	left: calc(50% - 2rem);
	position: absolute;
	top: -9.0625rem;
	width: min(80vw, 18.75rem);
}

.p-top-recruit__card {
	height: 100%;
}

.p-top-recruit__imgBox {
	display: grid;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.p-top-recruit__imgBox::before {
	background: rgba(0, 84, 146, 0.45);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	width: 100%;
	z-index: 1;
}

.p-top-recruit__img {
	grid-column: 1/2;
	grid-row: 1/2;
	min-height: 20.9375rem;
	overflow: hidden;
	position: relative;
}

.p-top-recruit__img img {
	aspect-ratio: 599/400;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	width: 100%;
}

.p-top-recruit__content {
	align-items: center;
	box-sizing: border-box;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	grid-column: 1/2;
	grid-row: 1/2;
	height: 100%;
	justify-content: center;
	padding: 1.25rem;
	width: 100%;
	z-index: 2;
}

.p-top-recruit__head {
	text-align: center;
}

.p-top-recruit__en {
	font-family: "Jost", sans-serif;
	font-size: 0.875rem;
	text-transform: uppercase;
}

.p-top-recruit__main {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.1666666667;
	padding-bottom: 1rem;
	position: relative;
}

.p-top-recruit__main::before {
	background-color: #fff;
	bottom: 0;
	content: "";
	height: 0.25rem;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 3.0625rem;
}

.p-top-recruit__imgBox:hover::before {
	background: rgba(0, 84, 146, 0.45);
}

.p-top-recruit__text {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.6666666667;
}

.p-top-recruit__btn {
	margin-top: 1rem;
	text-align: center;
}

.p-top-recruit__btnBox {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	justify-content: center;
}

.p-top-recruit__occupation {
	margin-top: 5rem;
}

/**********
** p-occupation
***********************************/

.p-occupation__inner {
	margin-left: auto;
	margin-right: auto;
	width: min(100%, 83.125rem);
}

.p-occupation__bg {
	background: url(../../img/occupation_bg.png) no-repeat right center/cover;
	padding: 2.5rem 1.25rem;
	position: relative;
}
.p-occupation__bg2 {
	position: relative;
}
.p-occupation__bg::before{
	background: url(../../img/shape_bg_occupation.png) no-repeat center center/contain;
	bottom: -1.5625rem;
	content: "";
	height: min(36.6666666667vw, 33rem);
	left: -2.5rem;
	position: absolute;
	width: min(53.3333333333vw, 12.5rem);
	z-index: 1;
}

.p-occupation__bg::after ,.p-occupation__bg2::after{
	-webkit-backdrop-filter: blur(0.3125rem);
	        backdrop-filter: blur(0.3125rem);
	background-color: rgba(0, 96, 176, 0.5);
	bottom: 0;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: 2;
}

.p-occupation__contents {
	position: relative;
	z-index: 3;
}

.p-occupation__cards {
	margin-top: 2.5rem;
	width: min(100%, 37.5rem);
}

.p-occupation__card {
	background-color: #fff;
	padding: 1rem;
}

.p-occupation__card + .p-occupation__card {
	margin-top: 1.375rem;
}

.p-occupation__title {
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.75rem;
	font-weight: 900;
	letter-spacing: 0.02em;
}

.p-occupation__head {
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	justify-content: space-between;
}

.p-occupation__subTitle {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1;
}

.p-occupation__text {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: 1.1875rem;
}

.p-occupation__btn {
	flex-shrink: 0;
}

.p-occupation__btnArrow {
	background-color: #005492;
	border-radius: 50%;
	display: block;
	height: 2.1875rem;
	line-height: 1;
	overflow: hidden;
	position: relative;
	width: 2.1875rem;
}

.p-occupation__btnArrow::before,
.p-occupation__btnArrow::after {
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
	background: url(../img/icon_arrow_right_white.svg) no-repeat center center/contain;
	content: "";
	height: 0.75rem;
	left: 50%;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	width: 0.75rem;
}

.p-occupation__btnArrow::after {
	transform: translateX(-200%);
}

.p-occupation__link:hover .p-occupation__btnArrow:before {
	animation-delay: 0s;
	animation-name: transformRightLeft2;
}

.p-occupation__link:hover .p-occupation__btnArrow:after {
	animation-delay: 0.2s;
	animation-name: transformLeftRight2;
}

/**********
** p-top-gallery
***********************************/

.p-top-gallery {
	overflow-x: clip;
	padding-top: 3.75rem;
	padding-bottom: 2.5rem;
	position: relative;
}

.p-top-gallery__bg {
	position: relative;
}

.p-top-gallery__bg::before {
	background: url(../../img/shape_bg_gallery.png) no-repeat top center/cover;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 5.625rem;
	width: 100vw;
}

.p-top-gallery__contents {
	margin-top: 1.4375rem;
	position: relative;
}

.p-top-gallery__content + .p-top-gallery__content {
	margin-top: 2.5rem;
}

.p-top-gallery__subTitle {
	color: #005492;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	text-align: center;
}

.p-top-gallery__cards {
	display: grid;
	grid-gap: 1.25rem;
	gap: 1.25rem;
	margin-top: 1.25rem;
}

.p-top-gallery__video iframe {
	aspect-ratio: 550/310;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	width: 100%;
}

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

.p-mv__box {
	grid-template-columns: 5.5rem 1fr;
}

.p-mv__catch {
	left: 3.75rem;
	top: 55%;
	width: min(48.5416666667vw, 43.6875rem);
}

.p-mv__video {
	aspect-ratio: 1352/759;
	height: 100%;
	width: 100%;
}

	
	
.p-mv__newsBox {
	width: 45rem;
}

.p-top-news__contents {
	align-items: center;
	flex-direction: row;
	gap: 0.625rem;
}

.p-top-news__content {
	align-items: center;
	flex-direction: row;
	gap: 0.625rem;
}

.p-top-news__linkBox {
	align-items: center;
	flex-direction: row;
	gap: 1.875rem;
}

.p-top-news__link::before {
	content: ":";
	left: -0.5rem;
	position: absolute;
	top: 0;
}

.p-top-news__btn {
	justify-content: start;
}

.p-one-team__contents {
	grid-template-columns: 50.75rem 1fr;
}

.p-one-team__content {
	padding-top: 9.5625rem;
	padding-bottom: 9.1875rem;
	padding-left: 7.3125rem;
	padding-right: 0;
}

.p-one-team__titleImg {
	margin-left: 0;
	margin-left: initial;
	margin-right: 0;
	margin-right: initial;
	width: min(100%, 34.125rem);
}

.p-one-team__text {
	font-size: 2.5rem;
	margin-top: 4.25rem;
	text-align: left;
}

.p-one-team__lead {
	font-size: 1.25rem;
}

.p-one-team__sliderBox {
	flex-direction: row;
}

.swiper {
	height: 100%;
	position: absolute !important;
	width: 19.625rem;
}

.swiper.swiper1 {
	left: 0;
	top: 0;
}

.swiper.swiper2 {
	left: 50%;
	top: 0;
}

.swiper-slide {
	height: 19.625rem !important;
	object-fit: contain;
}

.p-top-strong {
	padding-top: 10.9375rem;
	padding-bottom: 7.3125rem;
}

.p-top-strong::before {
	height: min(123.0555555556vw, 110.75rem);
	width: min(123.0555555556vw, 110.75rem);
}

.p-top-strong__cards {
	margin-top: 6.75rem;
}

.p-top-company__bg {
	padding-top: 8.375rem;
	padding-bottom: 8.75rem;
}

.p-top-company__cards {
	margin-left: 0;
	margin-left: initial;
	margin-right: 0;
	margin-right: initial;
	margin-top: 3.875rem;
	width: 100%;
}

.p-top-company__card {
	grid-column: 1/2;
	grid-row: 1/3;
	width: 25rem;
}

.p-top-company__card:nth-child(2) {
	grid-column: 2/3;
	grid-row: 1/3;
}

.p-top-company__card:nth-child(3) {
	grid-column: 3/4;
	grid-row: 1/2;
}

.p-top-company__card:nth-child(4) {
	grid-column: 3/4;
	grid-row: 2/3;
}

.p-top-company__link:hover {
	opacity: 1;
}

.p-top-company__link:hover .p-top-company__img img {
	scale: 1.1;
}

.p-top-recruit {
	padding-top: 8.4375rem;
	padding-bottom: 0px;
}

.p-top-recruit__cards {
	gap: 0.1875rem;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 3.875rem;
}

.p-top-recruit__cards::before {
	height: min(32.1527777778vw, 28.9375rem);
	left: calc(50% + 3.25rem);
	width: min(44.0277777778vw, 39.625rem);
}

.p-top-recruit__imgBox::before {
	background: transparent;
}

.p-top-recruit__content {
	gap: 0;
	padding: 2rem 2rem 1.5rem 2rem;
}

.p-top-recruit__en {
	font-size: 1.125rem;
}

.p-top-recruit__main {
	font-size: 2.25rem;
	padding-bottom: 0;
}

.p-top-recruit__main::before {
	opacity: 0;
}

.p-top-recruit__hoverContents {
	margin-top: 1.5rem;
	opacity: 0;
	pointer-events: none;
	transform: translateY(2.5rem);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity, transform;
}

.p-top-recruit__imgBox:hover .p-top-recruit__head {
	translate: 0 0;
}

.p-top-recruit__imgBox:hover .p-top-recruit__main {
	padding-bottom: 2rem;
}

.p-top-recruit__imgBox:hover .p-top-recruit__main::before {
	opacity: 1;
}

.p-top-recruit__imgBox:hover .p-top-recruit__hoverContents,
.p-top-recruit__imgBox:focus .p-top-recruit__hoverContents {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.p-top-recruit__imgBox:hover .p-top-recruit__img img {
	transform: scale(1.1);
}

.p-top-recruit__text {
	display: none;
	font-size: 1.125rem;
	margin-left: auto;
	margin-right: auto;
	width: min(100%, 26.1875rem);
}

.p-top-recruit__btn {
	display: none;
	margin-top: 2.8125rem;
}

.p-top-recruit__btnBox {
	display: none;
	flex-direction: row;
}

.p-top-recruit__imgBox:hover .p-top-recruit__text,
.p-top-recruit__imgBox:hover .p-top-recruit__btn {
	display: block;
}

.p-top-recruit__imgBox:hover .p-top-recruit__btnBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.p-occupation__bg {
	padding: 4.9375rem 4.0625rem 4rem 3.4375rem;
}

.p-occupation__bg::before{
	bottom: -9.6875rem;
	width: min(30.2777777778vw, 27.25rem);
}

.p-occupation__bg::after ,.p-occupation__bg2::after{
	-webkit-backdrop-filter: blur(1.25rem);
	        backdrop-filter: blur(1.25rem);
	height: 25rem;
	width: 31.25rem;
	max-height: 100%;
}

.p-occupation__contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2.9375rem;
}

.p-occupation__cards {
	margin-top: 0;
}

.p-occupation__card {
	padding: 1.75rem 3.375rem 2.25rem 2.3125rem;
}

.p-occupation__title {
	font-size: 2.5rem;
	writing-mode: vertical-rl;
}

.p-occupation__subTitle {
	font-size: 1.5rem;
}

.p-occupation__text {
	font-size: 1rem;
}

.p-occupation__btnArrow {
	height: 2.8125rem;
	width: 2.8125rem;
}

.p-occupation__btnArrow::before,
.p-occupation__btnArrow::after {
	height: 0.9375rem;
	width: 0.9375rem;
}
	
	

.p-top-gallery {
	padding-top: 8.9375rem;
	padding-bottom: 5.125rem;
}

.p-top-gallery__cards {
	gap: 2.625rem;
	grid-template-columns: repeat(2, 1fr);
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.1875rem;
	width: min(100%, 71.4375rem);
}

}
	.boshu_p{
		position:relative;
	}
	.boshu_button a,.boshu_button.elementor-widget-button{
		position:absolute;
		display:block;
		width:100%;
		height:100%;
		left:0;
		top:0;
		z-index:5;
	}

@media (min-width: 1920px) {

.p-mv__video {
	height: calc(100vh - 5.375rem);
	width: calc(100vw - 5.5rem);
}

}







@media screen and (max-width:767px){
	.p-mv__video video.smp{
	display: block;
}
.p-mv__video video.pc{
	display: none;
}
.txtVertical h2{
	writing-mode:horizontal-tb;
}
	
	
	
}
/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
	
	

}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){

}

@media (orientation: landscape) and (max-height: 450px) {
	
}












@keyframes transformLeftRight2 {

0% {
	transform: translateX(-200%);
}

100% {
	transform: translateX(0);
}

}

@keyframes transformRightLeft2 {

0% {
	transform: translateX(0);
}

100% {
	transform: translateX(200%);
}

}
