@charset "utf-8";

/*-------------------------------
	メインビジュアル
-------------------------------*/

.Mainvisual{
	width: 100%;
    height: 100vh;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}
.Mainvisual::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,.2);
	z-index: 4000;
}
.Mainvisual__inner{
	height: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	position: relative;
	z-index: 5000;
}
.Mainvisual__title{
	font-size: 7.5rem;
	padding-bottom: 4.5rem;
	line-height: calc(10.8 / 7.5);
	font-weight: 700;
	padding-left: calc(6.2rem - var(--padding-leftright));
    background-image: linear-gradient(90deg, #fff 0%, #fff 35%, #00e0ff 47.5%, #00e0ff 52.5%, #fff 65%, #fff 100%);
    background-image: radial-gradient(circle at 50% 50%, #00e0ff 0%, #00e0ff 10%, #fff 20%, #fff 100%);
    background-position: 15% 50%;
    background-size: 250% 200%;
    color: transparent;
    background-clip: text;
    transform-origin: center 50%;
	animation: SpotLight 7.5s infinite linear;
}
@keyframes SpotLight {
    5% {
        background-position: 15% 50%;
    }
    20% {
        background-position: 50% 50%;
    }
    45% {
        background-position: 85% 50%;
    }
    55% {
        background-position: 85% 50%;
    }
    80% {
        background-position: 50% 50%;
    }
    95% {
        background-position: 15% 50%;
    }
}
.Mainvisual__scroll{
	font-family: var(--en1);
	line-height: 1;
	padding-right: calc(4rem - var(--padding-leftright));
	display: block;
	color: #fff;
	writing-mode: vertical-rl;
	position: relative;
	z-index: 6000;
}
.Mainvisual__scroll span{
	line-height: 1;
	padding-bottom: 7.6rem;
	position: relative;
	display: block;
}
.Mainvisual__scroll span::before{
	content: "";
	display: block;
	width: 1px;
	height: 6rem;
	background: #fff;
	position: absolute;
	left: 50%;
	bottom: 0;
	animation: sdl01 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl01 {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}
	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}
	50.1% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}
.Mainvisual-video{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.Mainvisual-video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.Mainvisual__bg,
.Mainvisual__blur{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	z-index: 0;
	opacity: 0;
	z-index: 6000;
}
.Mainvisual__bg{
	background: var(--maincolor);
}
.Mainvisual__blur{
	backdrop-filter: blur(6rem);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Mainvisual{
		height: 42rem;
		position: relative;
	}
	.Mainvisual__bg,
	.Mainvisual__blur{
		display: none;
	}

}



/*-------------------------------
	ベース
-------------------------------*/

.main{
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
}
.sec:has(.Index-block-wrap){
	overflow: hidden;
}

/*----- レイアウト */
.Index-block{
	width: 100%;
	padding-top: 12.8rem;
	position: relative;
	z-index: 5000;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.Index-block__body{
	width: 100%;
	max-width: 57.8rem;
	padding: 6.8rem 11.4rem 6.2rem 6rem;
	background: #fff;
	position: absolute;
	right: -11.4rem;
	top: 0;
	z-index: 6000;
}
.Index-block__text{
	margin-bottom: 5.5rem;
}
.Index-block__image{
	width: calc(100% - 20rem);
	transform: translateX(-11.4rem);
}
.Index-block__image__inner{
	width: calc(100% + 11.4rem);
}
.Index-block__image__inner img{
	width: 100%;
}
/* 反転 */
.Index-block.-reverse{
	justify-content: flex-end;
}
.Index-block.-reverse .Index-block__body{
	padding: 6.8rem 6rem 6.2rem 11.4rem;
	right: unset;
	left: -11.4rem;
}
.Index-block.-reverse .Index-block__image{
	transform: translateX(0);
}

/*----- タイトル */
.Index-title{
	width: 100%;
	margin-bottom: 4.5rem;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
}
.Index-title__en{
	font-family: var(--en1);
	font-size: 6.4rem;
	letter-spacing: .025em;
	font-weight: 700;
	line-height: 1;
	display: block;
}
.Index-title__en span{
	line-height: 1;
	padding-bottom: 1.25rem;
	letter-spacing: .025em;
	display: block;
}
.Index-title__jp{
	font-size: 1.8rem;
	margin-top: .5rem;
	font-weight: 700;
	line-height: 1;
	display: block;
}

/*----- View More */
.Index-more{
	width: 24rem;
}
.Index-more a{
	border-bottom: 1px solid var(--graycolor);
	color: var(--maincolor);
	font-family: var(--en1);
	font-size: 1.8rem;
	padding-bottom: 1.8rem;
	line-height: 1;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	opacity: 1 !important;
}
.Index-more a::before{
	background: var(--maincolor);
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -1px;
    transition: transform .6s cubic-bezier(0.1, 0.7, 0.4, 1);
    transform: scaleX(0);
    transform-origin: right;
}
.Index-more__text{
	width: calc(100% - 1.8rem);
	line-height: 1;
}
.Index-more__arrow{
	width: 1.8rem;
	height: 1.4rem;
	display: block;
	position: relative;
    top: 0;
    right: 0;
}
.Index-more__arrow::before,
.Index-more__arrow::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 50%;
	transform: translateY(-50%);
}
.Index-more__arrow::before{
	background-image: url(../images/common/icon_arrow.svg);
}
.Index-more__arrow::after{
	transition: var(--transition);
	background-image: url(../images/common/icon_arrow.svg);
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    transition-delay: .5s;
}
.Index-more a:hover .Index-more__arrow::before{
	opacity: 0;
}
.Index-more a:hover .Index-more__arrow::after{
	animation: C-hover-animation-x .3s forwards .15s;
}
.Index-more a:hover::before{
	transform: scaleX(1);
    transform-origin: left;
}

/* 白ボタン */
.Index-more.-white a{
	color: #fff;
	border-color: #fff;
	transition-duration: 0s;
}
.Index-more.-white a::before{
	background: #fff;
}
.Index-more.-white .Index-more__arrow::before,
.Index-more.-white .Index-more__arrow::after{
	background-image: url(../images/common/icon_arrow--white.svg);
}
.Index-more.-white:hover a{
	border-color: transparent;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	body{
		padding-top: 12rem;
	}
	.main{
		margin-top: -1px;
	}
	.header__inner{
		background: var(--maincolor);
	}

	/*----- レイアウト */
	.Index-block{
		padding-top: 0;
		flex-direction: column;
	}
	.Index-block__body{
		max-width: 100%;
		margin-bottom: 7.5rem;
		padding: 0;
		position: static;
	}
	.Index-block__text{
		margin-bottom: 5.5rem;
		text-align: center;
	}
	.Index-block__image{
		width: 100%;
		transform: translateX(0);
	}
	.Index-block__image__inner{
		width: calc(100% + var(--padding-leftright) * 2);
		margin-left: calc(var(--padding-leftright) * -1);
	}
	/* 反転 */
	.Index-block.-reverse{
		justify-content: flex-end;
	}
	.Index-block.-reverse .Index-block__body{
		padding: 0;
	}
	.Index-block.-reverse .Index-block__image{
		transform: translateX(0);
	}
	
	/*----- タイトル */
	.Index-title{
		margin-bottom: 3rem;
		align-items: center;
	}
	.Index-title__en{
		font-family: var(--en1);
		font-size: 8.4rem;
	}
	.Index-title__jp{
		font-size: 3rem;
		margin-top: 1.5rem;
	}
	
	/*----- View More */
	.Index-more{
		width: 48rem;
		margin-left: auto;
		margin-right: auto;
	}
	.Index-more a{
		border-bottom: 2px solid var(--graycolor);
		font-size: 3rem;
		padding-bottom: 3.8rem;
	}
	.Index-more a::before{
		height: 2px;
		bottom: -2px;
	}
	.Index-more span{
		line-height: 1;
		display: block;
	}
	.Index-more__text{
		width: calc(100% - 3.6rem);
	}
	.Index-more__arrow{
		width: 3.6rem;
		height: 2.8rem;
	}

}



/*-------------------------------
	MISSION
-------------------------------*/

.Mission-Company-wrap{
	padding-top: calc(100vh + 30rem);
	position: relative;
	overflow: hidden;
}
.Mission-Company-wrap.on{
	background: var(--maincolor);
}
.Mission-Company-wrap::after{
	content: "";
	display: block;
	width: 100%;
	height: calc((64rem / 2) + 7rem + 4.5rem);
	background: #fff;
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
}

.Mission{
	padding-bottom: 18rem;
	position: relative;
}
.Mission-block{
	width: 100%;
	margin-bottom: 4.5rem;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.Mission-block__body{
	/* width: calc(100% - 52rem); */
	width: 50%;
	display: flex;
	align-items: flex-end;
	flex-direction: column;
}
.Mission-block__text{
	width: 100%;
	font-size: 2rem;
	margin-bottom: 5rem;
	font-weight: 500;
	line-height: calc(5.2 / 2);
	color: #fff;
	text-align: right;
	position: relative;
	z-index: 6000;
}
.Mission-block__image{
	/* width: 52rem;
	margin-left: -11.2rem; */
	/* width: 50%;
	padding-right: 16.2rem; */
	width: calc(50% + ((100vw - 100%) / 2));
	margin-left: calc(((100vw - 100%) / 2) * -1);
	z-index: 4000;
}
.Mission-block__image img{
	width: calc(100% - 16.2rem);
	height: 68rem;
	object-fit: cover;
	object-position: top center;
}
.Mission-image{
	width: 100%;
	height: 82.6rem;
	position: relative;
}
.Mission-image__item{
	position: absolute;
	z-index: 4000;
}
.Mission-image__item img{
	width: 100%;
}
.Mission-image__item:nth-of-type(1){
	width: 25rem;
	top: 0;
	left: 55.6rem;
}
.Mission-image__item:nth-of-type(2){
	width: 16rem;
	top: 22rem;
	left: 34.5rem;
}
.Mission-image__item:nth-of-type(3){
	width: 26rem;
	top: 33.5rem;
	left: 3.2rem;
}
.Mission-image__item:nth-of-type(4){
	/* width: 80rem; */
	width: calc(50% + 11.4rem + ((100vw - 100%) / 2));
	bottom: 0;
	right: calc(((100vw - 100%) / 2) * -1);
	/* right: -11.2rem; */
}
.Mission-image__item:nth-of-type(4) img{
	height: 35rem;
	object-fit: cover;
	object-position: top center;
}
.Mission-title{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0;
	z-index: 5000;
}
.Mission-title.-mission{
	top: -11.5rem;
}
.Mission-title.-responsibility{
	bottom: 73.5rem;
}
.Mission-title__item{
	font-family: var(--en1);
	font-size: 20rem;
	padding-left: 15rem;
	padding-right: 15rem;
	font-weight: 700;
	letter-spacing: .025em;
	padding-bottom: .05em;
	line-height: 1;
	text-stroke: 1px #8096a6;
	-webkit-text-stroke: 1px #8096a6;
	/* text-stroke: 1px rgba(0,46,78,.5);
	-webkit-text-stroke: 1px rgba(0,46,78,.5); */
	paint-order: stroke;
	color: transparent;
	white-space: nowrap;
	display: inline-block;
}
.Mission-title.-mission .Mission-title__item{
	animation: scrollText_mission 20s linear infinite;
}
.Mission-title.-responsibility .Mission-title__item{
	animation: scrollText_responsibility 40s linear infinite;
}
@keyframes scrollText_mission {
	0% { transform:translateX(0); }
	100% { transform:translateX(100%); }
}
@keyframes scrollText_responsibility {
	0% { transform:translateX(0); }
	100% { transform:translateX(-100%); }
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

	.Mission-block__image{
		width: 50%;
		margin-left: calc(var(--padding-leftright) * -1);
	}
	.Mission-block__image img{
		width: 100%;
	}
	.Mission-image__item:nth-of-type(4){
		width: calc(50% + 11.4rem);
		right: calc(var(--padding-leftright) * -1);
	}

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Mission-image__item:nth-of-type(4){
		width: 50%;
	}

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

	.Mission-Company-wrap{
		background: var(--maincolor);
		padding-top: 7rem;
	}
	.Mission-Company-wrap__title{
		font-size: 7.5rem;
		margin-bottom: 6.5rem;
		line-height: calc(11.8 / 7.5);
		font-weight: 700;
		letter-spacing: 0;
		padding-left: .5em;
		text-align: center;
		background-image: linear-gradient(90deg, #fff 0%, #fff 35%, #00e0ff 47.5%, #00e0ff 52.5%, #fff 65%, #fff 100%);
		background-image: radial-gradient(circle at 50% 50%, #00e0ff 0%, #00e0ff 10%, #fff 20%, #fff 100%);
		background-position: 15% 50%;
		background-size: 250% 200%;
		color: transparent;
		background-clip: text;
		transform-origin: center 50%;
		animation: SpotLight 7.5s infinite linear;
	}
	.Mission-Company-wrap::after{
		height: calc((75.8rem / 2) + 9rem + 7.5rem);
	}
	
	.Mission{
		padding-bottom: 20rem;
	}
	.Mission-block{
		margin-bottom: 0;
		flex-direction: column;
	}
	.Mission-block__body{
		width: 100%;
		margin-bottom: 15rem;
		align-items: flex-start;
	}
	.Mission-block__text{
		font-size: 3rem;
		margin-bottom: 10rem;
		line-height: calc(7.5 / 3);
		letter-spacing: .15em;
		text-align: center;
	}
	.Mission-block__image{
		margin-left: calc(var(--padding-leftright) * -1);
		width: 40rem;
	}
	.Mission-block__image img{
		width: 100%;
		height: 52rem;
	}
	.Mission-image{
		width: calc(100% + (var(--padding-leftright) * 2));
		margin-left: calc(var(--padding-leftright) * -1);
		height: auto;
		z-index: 6000;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		flex-wrap: wrap;
		flex-direction: row-reverse;
	}
	.Mission-image__item{
		margin-top: -5.5rem;
		position: static;
	}
	.Mission-image__item img{
		width: 100%;
	}
	.Mission-image__item:nth-of-type(1){
		width: 25.8rem;
	}
	.Mission-image__item:nth-of-type(2){
		width: 16.2rem;
		margin-top: 22.4rem;
	}
	.Mission-image__item:nth-of-type(3){
		width: 26.5rem;
		margin-top: 34rem;
	}
	.Mission-image__item:nth-of-type(4){
		width: 61.5rem;
		margin-top: 10rem;
	}
	.Mission-image__item:nth-of-type(4) img{
		height: 27rem;
	}
	.Mission-title.-mission{
		top: -7.5rem;
	}
	.Mission-title.-responsibility{
		bottom: 86rem;
	}
	.Mission-title__item{
		padding-left: 7.5rem;
		padding-right: 7.5rem;
	}

}



/*-------------------------------
	会社案内
-------------------------------*/

.Company{
	padding-bottom: 0;
	overflow: hidden;
}
.Company *{
	color: #fff;
}
.Company__text{
	margin-bottom: 7.2rem;
}
.Company-slider-wrap{
	position: relative;
}
.Company-slider{
	margin-bottom: 4.5rem;
	overflow: unset;
}
.Company-slider__item{
	width: 50rem;
	position: relative;
	z-index: 5000;
}
.Company-slider__item:not(:last-child){
	margin-right: 2rem;
}
.Company-slider__item a{
	width: 100%;
	height: 64rem;
	padding: 0 4rem 4.2rem;
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	flex-direction: column;
	opacity: 1 !important;
}
.Company-slider__title{
	width: 100%;
	margin-bottom: 3.8rem;
	line-height: 1;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
}
.Company-slider__title__en{
	font-size: 4.6rem;
	font-weight: 700;
	letter-spacing: .025em;
	margin-bottom: 1.5rem;
	line-height: 1;
	display: block;
}
.Company-slider__title__jp{
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	display: block;
}
.Company-slider__text{
	margin-bottom: 4rem;
	font-weight: 500;
}
.Company-slider__arrow{
	position: static;
	transform: translateY(0);
}
.Company-slider__arrow::before{
	background-image: url(../images/common/icon_arrow--white.svg);
}
.Company-slider__arrow::after{
	background-image: url(../images/common/icon_arrow.svg);
}
.Company-slider__image{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	overflow: hidden;
}
.Company-slider__image::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 6000;
	background: rgba(0,0,0,.3);
}
.Company-slider__image img{
	transition: var(--transition);
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.Company-slider__item a:hover + .Company-slider__image img{
	transform: scale(1.1);
}
.Company-slider__item a:hover .Company-slider__arrow{
	background: #fff;
	border-color: #fff;
}

.Company-slider-controller{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.Company-slider-wrap .Company-slider-scrollbar{
	width: calc(100% - (15.6rem + 5.8rem));
	height: 3px;
	position: static;
	background: #ddd;
}
.Company-slider-wrap .Company-slider-scrollbar .swiper-scrollbar-drag{
	background: var(--maincolor);
	border-radius: 0;
}
.Company-slider-arrow{
	width: 15.6rem;
	position: static;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.Company-slider-arrow__item{
	width: 7rem;
	height: 7rem;
	margin-top: 0;
	position: static;
}
.Company-slider-arrow__item.swiper-button-prev{
	transform: scale(-1,1);
}
.Company-slider-arrow__item.swiper-button-disabled{
	opacity: 1;
}
.Company-slider-arrow__item::after{
	display: none;
}
.Company-slider-arrow__item__arrow{
	position: static;
	transform: translate(0,0);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Company__text{
		margin-bottom: 8.5rem;
		text-align: center;
	}
	.Company-slider{
		margin-bottom: 7.5rem;
	}
	.Company-slider__item{
		width: 59rem;
	}
	.Company-slider__item:not(:last-child){
		margin-right: 2rem;
	}
	.Company-slider__item a{
		height: 75.8rem;
		padding: 2rem 4.5rem 0;
		justify-content: center;
	}
	.Company-slider__title{
		margin-bottom: 2.8rem;
		align-items: center;
	}
	.Company-slider__title__en{
		font-size: 6.2rem;
		margin-bottom: 2rem;
	}
	.Company-slider__title__jp{
		font-size: 2.8rem;
	}
	.Company-slider__text{
		margin-bottom: 3rem;
		font-weight: 400;
		letter-spacing: -.025em;
		text-align: left;
	}
	.Company-slider__arrow{
		width: 9rem;
		height: 9rem;
		margin-left: auto;
		margin-right: auto;
	}
	.Company-slider__item a,
	.Company-slider__image{
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%) !important;
	}
	
	.Company-slider-arrow{
		width: 100%;
		position: static;
		justify-content: center;
	}
	.Company-slider-arrow__item,
	.Company-slider-arrow__item__arrow{
		width: 9rem;
		height: 9rem;
	}
	
	.Company-slider-scrollbar-sp{
		width: 20rem;
		height: .4rem;
		margin-left: 4.8rem;
		margin-right: 4.8rem;
		display: block;
		background: #ddd;
		position: relative;
        z-index: 5000;
	}
	.Company-slider-scrollbar-sp__active{
		transition: var(--transition);
		background: var(--maincolor);
		width: calc(100% / 3);
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		bottom: 0;
	}
	.Company-slider-scrollbar-sp__active.on1{
		left: 0;
	}
	.Company-slider-scrollbar-sp__active.on2{
		left: calc((100% / 3) * 1);
	}
	.Company-slider-scrollbar-sp__active.on3{
		left: calc((100% / 3) * 2);
	}

}



/*-------------------------------
	事業内容
-------------------------------*/

.Business{
	padding-top: 12.2rem;
	padding-bottom: 13.2rem;
	background: #fff;
	position: relative;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Business{
		padding-top: 20rem;
		padding-bottom: 20rem;
		margin-top: -1px;
	}

}



/*-------------------------------
	サステナビリティ／CSR
-------------------------------*/

.Sustainability{
	padding-bottom: 20rem;
	background: #fff;
	position: relative;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Sustainability{
		padding-top: 0;
		padding-bottom: 20rem;
		margin-top: -1px;
	}

}



/*-------------------------------
	採用情報
-------------------------------*/

.Recruitment{
	background: var(--maincolor);
	padding-bottom: 0;
	overflow: hidden;
}
.Recruitment *{
	color: #fff;
}
.Recruitment__inner{
	position: relative;
	display: flex;
	justify-content: flex-end;
}
.Recruitment__body{
	padding-bottom: var(--padding-topbottom);
	width: 49.2rem;
	padding-top: 16rem;
}
.Recruitment-title{
	margin-bottom: 4.6rem;
}
.Recruitment__text{
	margin-bottom: 5.5rem;
}
.Recruitment-slider-wrap{
	width: 62.4rem;
	height: 200%;
	position: absolute;
	left: 25%;
	top: 25%;
	display: flex;
	transform: translate(-50%,-50%);
}
.Recruitment-slider{
	width: calc(100% / 2);
	rotate: 20deg;
    transform-origin: right center;
	overflow: unset;
}
.Recruitment-slider:not(:last-child){
	margin-right: calc(2rem + 2.4rem);
}
.Recruitment-slider__inner{
	width: 100%;
	transition-timing-function: linear;
}
.Recruitment-slider__item{
	width: 30rem;
	height: 30rem;
}
.Recruitment-slider__item{
	margin-bottom: 2rem;
}
.Recruitment-slider__item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Recruitment__inner{
		flex-direction: column-reverse;
	}
	.Recruitment__body{
		padding-bottom: 14.5rem;
		width: 100%;
		padding-top: 94.5rem;
	}
	.Recruitment-title{
		margin-bottom: 3rem;
	}
	.Recruitment__text{
		margin-bottom: 8.5rem;
		text-align: center;
	}
	.Recruitment-slider-wrap{
		width: calc(100% + (var(--padding-leftright) * 2));
		transform: translate(calc(var(--padding-leftright) * -1),0);
		height: auto;
		flex-direction: column;
		position: static;
		height: 0;
	}
	.Recruitment-slider{
		width: 200%;
		rotate: -20deg;
		transform: translate(-50%,-7.5rem);
	}
	.Recruitment-slider:not(:last-child){
		margin-right: 0;
		margin-bottom: calc(2.2rem + 2rem);
	}
	.Recruitment-slider__item{
		margin-bottom: 0;
		margin-right: 2rem;
	}

}



/*-------------------------------
	お知らせ
-------------------------------*/

.Information{
	padding-top: 18.5rem;
	background: #fff;
	position: relative;
}
.Information:last-child{
	padding-bottom: 34.5rem;
}
.Information-title{
	margin-bottom: 7rem;
}

.Information-header{
	width: 100%;
	margin-bottom: 4.8rem;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.Information-category{
	width: calc(100% - 24rem);
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.Information-category__item{
	border: 1px solid var(--graycolor);
	transition: var(--transition);
	width: 13rem;
	height: 3rem;
	letter-spacing: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.Information-category__item.-current,
.Information-category__item:hover{
	background: var(--maincolor);
	color: #fff;
}
.Information-category__item:not(:first-child){
	border-left: none;
}

.Information-block-wrap{
	display: none;
}
.Information-block-wrap.-current{
	display: block;
}
.Information-block a{
	border-bottom: 1px solid var(--graycolor);
	width: 100%;
	padding: 2.4rem 2rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	opacity: 1 !important;
}
.Information-block a::before{
	background: var(--maincolor);
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: -1px;
	transition: transform .6s cubic-bezier(0.1, 0.7, 0.4, 1);
	transform: scaleX(0);
    transform-origin: right;
}
.Information-block a:hover::before{
	transform: scaleX(1);
    transform-origin: left;
}
.Information-block__category{
	border: 1px solid var(--blackcolor);
	width: 13rem;
	height: 3rem;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.Information-block__content{
	width: calc(100% - (13rem + 5rem));
	padding-left: 3.2rem;
	padding-right: 3.5rem;
}
.Information-block__title{
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	display: inline-block;
	position: relative;
}
.Information-block__time{
	font-size: 1.2rem;
	margin-bottom: .5rem;
	line-height: 1;
	display: block;
}
.Information-block__arrow{
	width: 5rem;
	height: 5rem;
	transform: translateY(0);
	position: relative;
	top: 0;
	right: 0;
}
.Information-block__arrow::before,
.Information-block__arrow::after{
	width: 1.2rem;
	height: 1rem;
}
.Information-block.-report .Information-block__content{
	padding-right: calc(3.5rem + 3.3rem);
}
.Information-block.-report .Information-block__title::after{
	content: "";
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	background-image: url(../images/common/icon_pdf.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(calc(2.5rem + .8rem),-50%);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Information-block__content{
		padding-left: 2.5rem;
	}
	
}
@media screen and (max-width:768px){

	.Information{
		padding-top: 20rem;
	}
	.Information:last-child{
		padding-bottom: 20rem;
	}
	.Information-title{
		margin-bottom: 3rem;
	}
	.Information__text{
		margin-bottom: 8rem;
		text-align: center;
	}
	.Information-header{
		margin-bottom: calc(10rem - 3.8rem);
	}
	.Information-category{
		width: 100%;
		flex-wrap: wrap;
	}
	.Information-category__item{
		border: 2px solid var(--graycolor);
		width: calc(100% / 3);
        font-size: 2.4rem;
        letter-spacing: 0;
        height: 8rem;
	}
	.Information-category__item:not(:first-child){
		border: 2px solid var(--graycolor);
	}
	.Information-category__item:not(:nth-of-type(3n + 1)){
		border-left: none;
	}
	.Information-category__item:nth-of-type(n + 4){
		border-top: none;
	}
	.Information-category__item.-current,
	.Information-category__item:hover{
		border: 2px solid var(--maincolor);
	}

	.Information-block-wrap{
		margin-bottom: 10rem;
	}
	.Information-block a{
		border-bottom: 2px solid var(--graycolor);
		padding: 3.8rem 0 2.8rem;
		flex-wrap: wrap;
		align-items: center;
	}
	.Information-block a::before{
		height: 2px;
		bottom: -2px;
	}
	.Information-block__category{
		border: 2px solid var(--blackcolor);
		width: 22rem;
		height: 5rem;
		font-size: 2.4rem;
		letter-spacing: 0;
	}
	.Information-block__content{
		width: calc(100% - 7rem);
		padding-top: 1.5rem;
		padding-left: 0;
		padding-right: 3.5rem;
		position: relative;
	}
	.Information-block__title{
		font-size: 2.8rem;
		line-height: calc(5.4 / 2.8);
	}
	.Information-block__time{
		font-size: 2.4rem;
		height: 5rem;
		margin-bottom: 0;
		padding-left: 3.6rem;
		position: absolute;
		left: 22rem;
		top: -5rem;
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.Information-block__arrow{
		width: 7rem;
		height: 7rem;
	}
	.Information-block__arrow::before,
	.Information-block__arrow::after{
		width: 1.7rem;
		height: 1.3rem;
	}
	.Information-block.-report .Information-block__content{
		padding-right: calc(5.5rem + 3.3rem);
	}
	.Information-block.-report .Information-block__title::after{
		width: 5rem;
		height: 5rem;
		transform: translate(calc(5rem + .8rem),-50%);
	}
	
}