@charset "utf-8";

#header {
	background-color:transparent;
	box-shadow:none;
	position:fixed;
	.header {
		padding-top:20px;
		.header_inner {
			box-shadow:0 3px 6px rgba(0,0,0,.16);
		}
	}
}

section {
	.wrap {
		padding:90px 0;
		overflow: hidden;
		.contents {
            h2 {
                font-size:2.0rem;
                line-height:1;
                margin-bottom:3em;
                display:grid;
				grid-row-gap:.5em;
                span {
                    font-size:5em;
                    font-weight:500;
                    font-style:italic;
                    color:var(--color_main);
                }
            }
			.btn {
				height:55px;
				font-size:1.6rem;
				line-height:1;
				background-color:var(--color_main);
				display:grid;
				grid-template-columns:repeat(2,auto);
				align-items:center;
				justify-content:space-between;
				grid-column-gap:1em;
				color:#FFFFFF;
				position:relative;
				padding:0 1.2em;
				img {
					width:1.25em;
				}
			}
		}
	}
}

#mv {
	overflow: clip;
	.wrap {
		.slider_wrap,.contents {
			transition-duration:1s;
			transition-delay: 1s;
			opacity: 0;
		}
		padding:0;
		position:relative;
		.mv_slider {
			position:absolute;
			z-index:-1;
			left:0;
			top:0;
			width:100%;
			height:100%;
			overflow:clip;
			.slide {
				img {
					display:block;
					width:100%;
					height:720px;
					object-fit:cover;
				}
			}
		}
		.contents {
			max-width:1200px;
			height:720px;
			aspect-ratio:1.66;
			max-height:100vh;
			max-height:100dh;
			position:relative;
			display:grid;
			align-items:end;
			z-index:5;
			&.scrollwrap {
				height: auto;
				aspect-ratio: unset;
				display: block;
				z-index: 5;
			}
			h1 {
				font-size:2.4rem;
				color:#FFFFFF;
				display:grid;
				grid-row-gap:1em;
				line-height:1.5;
				text-shadow:4px 4px 4px rgba(0,0,0,.4);
				letter-spacing:.05em;
				padding-bottom:50px;
				span {
					font-size:7.0rem;
					font-style:italic;
					line-height:1.2;
				}
			}
			.scroll {
				position:absolute;
				width:140px;
				height:140px;
				right:20px;
				bottom:40px;
				z-index: 90;
				opacity: 0;
				transition-property: opacity;
				transition-delay: 2s;
				transition-duration: 1s;
				.arrow {
					position:absolute;
					width:100%;
					height:100%;
					top:0;
					left:0;
				}
				.rotate {
					animation:6s linear infinite rotation;
				}
			}
		}
		&:has(.slick-initialized) {
			.slider_wrap,.contents {
				opacity:1;
			}
			.obj {
				left:0;
			}
			.scroll {
				opacity: 1;
			}
		}
		.obj {
			display:block;
			position:absolute;
			left:-400px;
			top:0px;
			height:100%;
			transition-duration:.5s;
			&.obj1 {
				width:380px;
				background-color:#4cb2f2;
				clip-path:polygon(0 0,100% 0,0 100%);
				z-index:3;
			}
			&.obj2 {
				width:240px;
				height:78%;
				top:22%;
				background-color:#1a5fb2;
				clip-path:polygon(0 0,100% 100%,0 100%);
				z-index:4;
				transition-delay:.2s;
			}
			&.obj3 {
				width:380px;
				background-color:#19376a;
				clip-path:polygon(0 0,100% 0,45% 100%,0 100%);
				z-index:2;
				transition-delay:.4s;
			}
		}
	}
}

@keyframes rotation {
	0% {
		transform:rotate(0);
	}
	100% {
		transform:rotate(360deg);
	}
}

#news {
	.wrap {
		background-color:#F9F9F9;
		.contents {
			.title_box {
				display:grid;
				grid-template-columns:repeat(2,auto);
				justify-content:space-between;
				grid-column-gap:5%;
				align-items:center;
				margin-bottom:30px;
				h2 {
					margin-bottom:0;
					grid-row-gap:0;
					span {
						font-size:3.5em;
					}
				}
				.btn {
					width:200px;
				}
			}
			.contents_inner {
				display:grid;
				grid-template-columns:150px 1fr;
				grid-column-gap:5%;
				.tabmenu {
					display:grid;
					align-content:start;
					grid-row-gap:15px;
					li {
						cursor:pointer;
						background-color:#FFFFFF;
						font-size:1.4rem;
						color:#999999;
						font-weight:500;
						text-align:center;
						line-height:2.6;
						&.active {
							background-color:var(--color_main);
							color:#FFFFFF;
						}
					}
				}
				.news_box {
					.tab {
						&:not(.active) {
							display:none;
						}
						dl {
							font-size:1.6rem;
							display:grid;
							grid-template-columns:auto 8em 1fr;
							align-items:center;
							padding:1.5em 0;
							&:first-child {
								padding-top:0;
							}
							&:last-child {
								padding-bottom:0;
							}
							&:not(:first-child) {
								border-top:2px solid #E8E8E8;
							}
							.cat {
								text-align:center;
								a {
									color:var(--color_main);
									font-weight:500;
								}
							}
							dt {
								line-height:1.5;
							}
						}
					}
				}
			}
		}
	}
}

#about {
	.wrap {
		background: var(--color_main);
		background:linear-gradient(90deg,rgba(8, 49, 115, 0) 0%, rgba(8, 49, 115, .95) 55%, rgba(8, 49, 115, 1) 100%),
			url(../img/top/about-bg.jpg) no-repeat center center/cover;
		.contents {
			 .contents_inner {
				 display:grid;
				 grid-template-columns:repeat(2,1fr);
				 align-items:center;
				 grid-column-gap:10%;
				 .img {
					 position:relative;
					 .logo {
						 width: 46%;
						 position:absolute;
						 left: 50%;
						 top:52.5%;
						 transform:translate(-50%,-50%);
						 
						 
						 
						 
						 
						 img {
							display: block;
						 }
					 }
					 .parts {
						 width: 35%;
						 position:absolute;
						 
						 dl {
							width: 100%;
							text-align:center;
							background-color:#FFFFFF;
							aspect-ratio:1;
							border-radius:50%;
							box-shadow:0 0 8px rgba(0,0,0,.16);
							display:grid;
							place-content:center;
							dt {
								color:var(--color_main);
								font-weight:600;
								font-size:min(1.5vw,1.7rem);
								margin-bottom:.66em;
								letter-spacing:.05em;
							}
							dd {
								font-size:min(1.1vw,1.3rem);
								line-height:1.4;
							}
						 }
						 &.mission {
							 top: 20%;
							 left: 50%;
							 transform:translate(-50%,-50%);
						}
						 &.vision {
							 top: 80%;
							 left: 21%;
							 transform:translate(-50%,-50%);
						}
						 &.value {
							 top: 80%;
							 right: 21%;
							 transform: translate(50%,-50%);
						}
					 }
				 }
				 .detail {
					 * {
						 white-space:nowrap;
					 }
					 h2 {
						 color:#FFFFFF;
						 span {
							 font-size:4em;
							 color:#FFFFFF;
						 }
					 }
					 h3 {
						 font-size:2.4rem;
						 color:#FFFFFF;
						 margin-bottom:.75em;
					 }
					 p {
						 &.body {
							 font-size:3.0rem;
							 color:#FFFFFF;
							 line-height:1.5;
							 margin-bottom:1.25em;
							 white-space: normal;
							 word-break: break-word;
						 }
					 }
					 h4 {
						 font-size:1.8rem;
						 color:#FFFFFF;
						 font-weight:400;
						 margin-bottom:1em;
					 }
					 dl {
						 display:grid;
						 grid-template-columns:7em 1fr;
						 grid-row-gap:.66em;
						 margin-bottom:3em;
						 dt {
							 font-size:2.4rem;
							 font-weight:600;
							 color:#FFFFFF;
						 }
						 dd {
							 font-size:1.8rem;
							 color:#FFFFFF;
						 }
						 &:last-child {
							 grid-template-columns:1fr;
							 margin-bottom:0;
							 dt {
								 font-family: 'Noto Sans JP';
							 }
						 }
					 }
					 a {
						 background-color:#FFFFFF;
						 color:var(--color_main);
						 font-weight:600;
						 max-width:15em;
						 margin-left:auto;
					 }
				 }
			 }
		}
	}
}

#movie {
	.wrap {
		padding-bottom:0;
		.contents {
			.movie {
				position: relative;
				&::before {
					content:'';
					display: block;
					width: 100%;
					height: 100%;
					position: absolute;
					z-index: 1;
					top:0;
					left:0;
					transition: .3s;
					background: url(../img/top/play.jpg) no-repeat center center/cover;
					pointer-events: none;
					opacity: 0;
				}
				&:not(.play) {
					&::before {
						opacity: 1;
					}
				}
				#mvvideo {
					width:100%;
					height:auto;
					display:block;
					aspect-ratio:16/9;
					cursor: pointer;
					box-shadow:0 2px 4px rgba(0,0,0,.15);
				}
			}
		}
	}
}

#business {
	.wrap {
		position:relative;
		&::before,&::after {
			content:'';
			display:block;
			width:530px;
			height:530px;
			background-color:var(--color_main);
			border-radius:50%;
			position:absolute;
			z-index:-2;
			top:-100px;
			left:63%;
		}
		&::after {
			background:url(../img/top/business-bg.svg);
			z-index:-1;
			transform:translate(120px,150px);
		}
		.contents {
			h2 {
				margin-bottom:2em;
			}
			 p {
				 &.body {
					 font-size:2.0rem;
					 line-height:1.66;
					 letter-spacing:.1em;
					 font-weight:600;
					 margin-bottom:1.5em;
					 text-shadow:1px 1px 0 #FFFFFF,
								 1px -1px 0 #FFFFFF,
								 -1px 1px 0 #FFFFFF,
								 -1px -1px 0 #FFFFFF,
								 0px 0px 2px #FFFFFF,
								 0px 0px 2px #FFFFFF,
								 0px 0px 2px #FFFFFF,
								 0px 0px 2px #FFFFFF,
								 0px 0px 2px #FFFFFF,
								 0px 0px 2px #FFFFFF;
				 }
			 }
			 .contents_inner {
				 display:grid;
				 grid-template-columns:repeat(2,1fr);
				 grid-column-gap:6%;
				h3 {
					font-size:2.0rem;
					display:grid;
					padding:1em 0 .66em;
					grid-row-gap:.5em;
					span {
						font-size:1.4rem;
						color:var(--color_main);
						font-style:italic;
						font-weight:400;
					}
				}
				 .left_box {
					 position:relative;
					 z-index:1;
					 height:100%;
					 p {
						 &.body {
							 font-size:3.2rem;
							 line-height:1.66;
							 letter-spacing:.1em;
							 font-weight:600;
							 margin-right:-5em;
							 margin-bottom:1.5em;
						 }
					 }
					 .inner_box {
						 display:grid;
						 grid-template-columns:repeat(2,1fr);
						 grid-gap:40px 5%;
						 .item {
							 display:grid;
							 grid-template-rows:auto auto 1fr auto;
							 align-content:start;
							 p {
								 font-size:1.5rem;
								 line-height:1.66;
								 margin-bottom:1.5em;
								 letter-spacing:.05em;
							 }
							 .btn {
								 height:45px;
								 font-size:1.4rem;
							 }
						 }
					 }
				 }
				 .right_box {
					 order:1;
					 display:grid;
					 grid-template-rows:1fr auto auto auto;
					 align-content:start;
					 .img {
						 img {
							 width:100%;
							 height:100%;
							 object-fit:cover;
						 }
					 }
					 h3 {
						 font-size:2.4rem;
					 }
					 p {
						 line-height:1.66;
						 margin-bottom:1.5em;
					 }
					 .btn {
						 max-width:250px;
					 }
				 }
			 }
		}
	}
}

#company {
	.wrap {
		.contents {
			position:relative;
			&::before {
				content:'';
				display:block;
				width:50vw;
				height:100%;
				background-color:#FFFFFF;
				position:absolute;
				position:absolute;
				z-index:1;
				top:0;
				right:100%;
			}
			.slider_wrap {
				.company_slider {
					margin-bottom:0;
					.slick-list {
						overflow:visible;
					}
					.slick-slide {
						width: 370px;
						padding-right:25px;
						a {
							display:block;
							position:relative;
							h3 {
								font-size:1.6rem;
								background-color:#FFFFFF;
								position:absolute;
								left:-1px;
								bottom:0;
								padding:.75em 1.5em;
							}
						}
					}
					.slick-arrow {
						width:40px;
						height:40px;
						background:url(../img/common/icon-arrow-blue-circle.svg) no-repeat center center/contain;
						right:0;
						top:auto;
						left:auto;
						bottom:0;
						transform:translate(0,0);
						&.slick-prev {
							transform:rotate(-180deg);
							right:50px;
						}
						&.slick-next {
						}
						&::before {
							content:none;
						}
					}
					.slick-dots {
						position: relative;
						width:calc(100% - 120px);
						bottom: 0;
						display:flex;
						margin-top:30px;
						li {
							margin:0;
							width:auto;
							padding:25px 0;
							flex-grow:1;
							&.slick-active {
								button {
									background-color:var(--color_main);
								}
							}
						}
						button {
							width:100%;
							height:2px;
							padding:0;
							background-color:#D5D5D5;
							&::before {
								content:none;
							}
						}
					}
				}
			}
		}
	}
}

#csr {
	.wrap {
		padding-top:0;
		.contents {
			a {
				display:grid;
				grid-template-columns:44% 1fr auto;
				align-items:center;
				box-shadow:0 2px 10px rgba(0,0,0,.15);
				grid-column-gap:2em;
				h3 {
					font-size:1.6rem;
					display:grid;
					font-weight:400;
					span {
						font-size:5rem;
						color:var(--color_main);
						line-height:1.3;
						font-weight:500;
					}
				}
				& > img {
					&:last-child {
						width:40px;
						margin-right:15px;
					}
				}
			}
			.contents_inner {
				display:grid;
				grid-template-columns:repeat(3,1fr);
				grid-column-gap:2.5%;
				margin-top:25px;
				a {
					grid-template-columns:35% 1fr auto;
					grid-column-gap:1em;
					h3 {
						font-size:1.6rem;
						grid-row-gap:.5em;
						span {
							font-size:2.4rem;
						}
					}
					& > img {
						&:last-child {
							width:20px;
						}
					}
				}
			}
		}
	}
}

#recruit {
	.wrap {
		padding:60px 0 0;
		background-color:var(--color_sub2);
		position:relative;
		& > img {
			position:absolute;
			top:0;
			left:0;
			width:50%;
			height:100%;
			object-fit:cover;
			object-position:right center;
		}
		.contents {
			position:relative;
			&:before {
				content:'';
				display:block;
				width:55%;
				aspect-ratio:2;
				background:url(../img/top/recruit.svg) no-repeat center center/contain;
				position:absolute;
				z-index:0;
				right:-10%;
				top:50px;
			}
			.contents_inner {
				padding-left:calc(50% + 50px);
				position:relative;
				z-index:1;
				h2 {
					color:#FFFFFF;
					margin-bottom:2em;
					span {
						color:#FFFFFF;
					}
				}
				p {
					font-size:1.8rem;
					line-height:1.66;
					margin-bottom:1em;
					color:#FFFFFF;
					& + p {
						margin-bottom:2em;
					}
				}
				.btn {
					background-color:#FFFFFF;
					grid-template-columns:1fr auto;
					text-align:center;
					padding-left:2.5em;
					color:var(--color_sub2);
					max-width:250px;
					margin-bottom:3em;
				}
				.under_text {
					display:flex;
					font-size:6.5rem;
					margin-left:-1.4em;
					span {
						color:#FFFFFF;
						font-weight:600;
						padding:.5em 1.2em .4em;
						white-space:nowrap;
						position:relative;
						background-color:rgba(0,0,0,.7);
						clip-path:polygon(1em 0,100% 0,calc(100% - 1em) 100%, 0 100%);
						&:last-child {
							margin-left:-.5em;
						}
					}
				}
			}
		}
	}
}

@media (hover:hover) {
	
}

@media screen and (max-width:1200px) {

}

@media screen and (max-width:1024px) {

	section {
		.wrap {
			.contents {
	            h2 {
	                span {
	                    font-size:4em;
	                }
	            }
			}
		}
	}

	#mv {
		.wrap {
			.contents {
				h1 {
					span {
						font-size:6.0rem;
					}
				}
			}
		}
	}

	#about {
		.wrap {
			.contents {
				 .contents_inner {
					 grid-column-gap:5%;
					 .img {
						.parts {
							dl {
								dt {
									font-size:min(1.7vw,1.7rem);
								}
								dd {
									font-size:min(1.2vw,1.3rem);
								}
							}
						}
					 }
					 .detail {
						 h3 {
							 font-size:2.0rem;
						 }
						 p {
							 &.body {
								 font-size:2.4rem;
							 }
						 }
						 dl {
							 grid-template-columns:1fr;
						 }
					 }
				 }
			}
		}
	}
	
	#business {
		.wrap {
			&::before,&::after {
				width:430px;
				height:430px;
			}
			.contents {
				 p {
					 &.body {
						 font-size:1.8rem;
					 }
				 }
				 .contents_inner {
					 grid-column-gap:3%;
					 .left_box {
						.inner_box {
							.item {
								p {
									font-size: 1.4rem;
								}
							}
						}
					 }
				 }
			}
		}
	}

	#company {
		.wrap {
			.contents {
				.slider_wrap {
					.company_slider {
						.slick-slide {
							width: 320px;
						}
					}
				}
			}
		}
	}

	#csr {
		.wrap {
			.contents {
				.contents_inner {
					a {
						grid-column-gap:.5em;
						h3 {
							font-size:1.2rem;
							span {
								font-size:1.8rem;
							}
						}
						& > img {
							&:last-child {
								margin-right:10px;
							}
						}
					}
				}
			}
		}
	}

	#recruit {
		.wrap {
			& > img {
				width:40%;
			}
			.contents {
				&:before {
					width:55%;
					right:0;
				}
				.contents_inner {
					padding-left:calc(40% + 50px);
					.under_text {
						font-size:5.5rem;
					}
				}
			}
		}
	}
	
}

@media screen and (max-width:768px) {

	#header {
		.header {
			padding-top:10px;
		}
	}
	
	section {
		.wrap {
			padding:60px 0;
			.contents {
				h2 {
					font-size:min(4vw,1.4rem);
					justify-items:center;
					span {
						font-size:3.2em;
					}
				}
				.btn {
					height:50px;
					width:100%;
					max-width:280px;
					margin:0 auto;
					grid-template-columns:1fr auto;
					text-align:center;
					padding-right:.66em;
					padding-left:2em;
				}
			}
		}
	}

	#mv {
		.wrap {
			position:relative;
			.mv_slider {
				.slide {
					img {
						height:640px;
					}
				}
			}
			.contents {
				height:640px;
				aspect-ratio:unset;
				position:unset;
				h1 {
					font-size:min(4.6vw,1.6rem);
					text-shadow:2px 2px 2px rgba(0,0,0,.4);
					padding-bottom:100px;
					span {
						font-size:min(13vw,4.5rem);
					}
				}
				.scroll {
					width:84px;
					height:84px;
					bottom:20px;
				}
			}
			&:has(.slick-initialized) {
				.obj {
					left:0;
					bottom:0;
				}
			}
			.obj {
				left:0;
				top:auto;
				bottom:-100px;
				height:100%;
				transition-duration:.5s;
				&.obj1 {
					width:100%;
					height:100px;
					clip-path:polygon(0 85%,100% 0,100% 100%,0 100%);
				}
				&.obj2 {
					width:100%;
					height:70px;
					top:auto;
					clip-path:polygon(0 0,85% 100%,0 100%);
				}
				&.obj3 {
					width:100%;
					height:100px;
					clip-path:polygon(0 60%,100% 0,100% 100%,0 100%);
				}
			}
		}
	}

	#news {
		.wrap {
			.contents {
				display:grid;
				.title_box {
					display:contents;
					h2 {
						span {
							font-size:3.2em;
						}
						margin-bottom:2em;
					}
					.btn {
						width:100%;
						max-width:280px;
						order:3;
					}
				}
				.contents_inner {
					display:contents;
					.tabmenu {
						grid-template-columns:repeat(4,1fr);
						grid-column-gap:2%;
						margin-bottom:30px;
						li {
							font-size:1.2rem;
						}
					}
					.news_box {
						margin-bottom:30px;
						.tab {
							&:not(.active) {
								display:none;
							}
							dl {
								grid-template-columns:auto 1fr;
								justify-items:start;
								grid-column-gap:1.5em;
								grid-row-gap:.66em;
								padding:1em 0;
								font-size:1.5rem;
								&:last-child {
									border-bottom:2px solid #E8E8E8;
									padding-bottom:1em;
								}
								&:not(:first-child) {
									border-top:2px solid #E8E8E8;
								}
								dd {
									font-size:1.4rem;
								}
								dt {
									line-height:1.5;
									grid-area:2/1/3/3;
								}
							}
						}
					}
				}
			}
		}
	}

	#about {
		.wrap {
			background:linear-gradient(180deg,rgba(8, 49, 115, 0) 0%, rgba(8, 49, 115, .95) 25%, rgba(8, 49, 115, 1) 100%),
				url(../img/top/about-bg.jpg) no-repeat 25% -3%/170% auto;
			.contents {
				.contents_inner {
					grid-template-columns:1fr;
					.img {
						margin-bottom:30px;
						.parts {
							dl {
								dt {
									font-size:min(3.8vw,3rem);
								}
								dd {
									font-size:min(2.4vw,2rem);
								}
							}
						}
					 }
					.detail {
						display:contents;
						* {
							white-space:initial;
						}
						h2 {
							grid-area:1/1/2/2;
							span {
								font-size:3.2em;
							}
						}
						h3 {
							font-size:1.8rem;
							margin-bottom:.75em;
						}
						p {
							&.body {
								font-size:min(5.6vw,2.2rem);
								margin-bottom:1.5em;
							}
						}
						h4 {
							font-size:min(4.2vw,1.6rem);
						}
						dl {
							margin-bottom:2em;
							dt {
								font-size:2.2rem;
							}
							dd {
								font-size:min(4.2vw,1.6rem);
								margin-bottom:.5em;
							}
						}
					}
				}
			}
		}
	}

	#business {
		.wrap {
			&::before,&::after {
				content:none;
			}
			.contents {
				 p {
					 &.body {
						 font-size:1.6rem;
					 }
				 }
				.contents_inner {
					grid-template-columns:1fr;
					h3 {
						font-size:2.4rem;
						padding:.66em 0 .5em;
					}
					.left_box {
						display:contents;
						p {
							&.body {
								font-size:min(4.2vw,1.6rem);
								text-align:center;
								margin:0 auto 1.5em;
							}
						}
						.inner_box {
							grid-template-columns:1fr;
							grid-row-gap:40px;
							order:2;
							.item {
								p {
									font-size:1.4rem;
									margin-bottom:1em;
								}
								.btn {
									height:50px;
									font-size:1.6rem;
								}
							}
						}
					}
					.right_box {
						order:1;
						margin-bottom:40px;
						.btn {
							max-width:280px;
						}
						p {
							margin-bottom:1em;
						}
					}
				}
			}
		}
	}

	#company {
		.wrap {
			padding-top:0;
			.contents {
				.slider_wrap {
					.company_slider {
						.slick-slide {
							width: 270px;
							padding-right:15px;
							a {
								h3 {
									font-size:1.4rem;
									padding:.5em 1em;
								}
							}
						}
						.slick-arrow {
							width:30px;
							height:30px;
							&.slick-prev {
								right:40px;
							}
						}
						.slick-dots {
							width:calc(100% - 90px);
							li {
								padding:15px 0;
							}
						}
					}
				}
			}
		}
	}

	#csr {
		.wrap {
			.contents {
				max-width:500px;
				margin:0 auto;
				a {
					grid-template-columns:120px 1fr auto;
					grid-column-gap:1em;
					h3 {
						font-size:1.4rem;
						span {
							font-size:min(6.4vw,2.4rem);
						}
					}
					& > img {
						&:last-child {
							width:15px;
							margin-right:5px;
						}
					}
				}
				.contents_inner {
					grid-template-columns:1fr;
					grid-row-gap:10px;
					a {
						grid-template-columns:120px 1fr auto;
						h3 {
							font-size:1.4rem;
							span {
								font-size:min(6.4vw,2.4rem);
							}
						}
						& > img {
							&:last-child {
								width:15px;
								margin-right:5px;
							}
						}
					}
				}
			}
		}
	}

	#recruit {
		.wrap {
			padding:5px 0;
			& > img {
				position:relative;
				width:100%;
				height:auto;
				object-fit:unset;
			}
			.contents {
				&:before {
					width:96%;
					right:auto;
					left:50%;
					transform:translateX(-50%);
					top:25%;
				}
				.contents_inner {
					padding:30px 0;
					p {
						font-size:1.6rem;
					}
					.btn {
						max-width:280px;
						margin:0 auto 2.5em;
					}
					.under_text {
						font-size:4rem;
						margin-left:auto;
						justify-content:center;
					}
				}
			}
		}
	}
	.page-top-en {
		#recruit {
			.wrap {
				.contents {
					.contents_inner {
						.under_text {
							font-size:min(9vw,4rem);
							margin-left:auto;
							justify-content:center;
						}
					}
				}
			}
		}
	}
		
}

@media screen and (max-width:640px) {

}