@charset "utf-8";
/*
 index.css
*/
/* -----------------------------------------------
= loading
----------------------------------------------- */
.loading {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
	width: 100%;
	height: 100vh;
	background: #fff;
}
.loading p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.loading img {
	width: 20rem;
	animation: scale-zoom 4s 0s forwards;
}
@keyframes scale-zoom {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}
/* -----------------------------------------------
= top_kv
----------------------------------------------- */
.top_kv {
	position: relative;
	width: 100%;
	height: 59rem;
	overflow: hidden;
}
.top_kv .copy {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	width: 49.3rem;
	transform: translate(-50%, -50%);
	filter: blur(min(.4081632653vw + 3.4693877551px,10px));
	opacity: 0;
	transition: filter 2s cubic-bezier(.39,.575,.565,1), opacity 1s cubic-bezier(.39,.575,.565,1);
}
.is-loaded .top_kv .copy {
	opacity: 1;
	filter: blur(0);
}
.top_kv .copy span {
	display: inline-block;
	-webkit-mask-image: linear-gradient(270deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 34%,hsla(0,0%,100%,.024) 0,hsla(0,0%,100%,.095) 38%,hsla(0,0%,100%,.206) 42%,hsla(0,0%,100%,.345) 46%,hsla(0,0%,100%,.5) 50%,hsla(0,0%,100%,.655) 54%,hsla(0,0%,100%,.794) 58%,hsla(0,0%,100%,.905) 62%,hsla(0,0%,100%,.976) 66%,#fff 0,#fff);
	-webkit-mask-size: 300% 100%;
	-webkit-mask-position: 100% center;
	transition: -webkit-mask-position 3s cubic-bezier(.39,.575,.565,1) 1s;
}
.is-loaded .top_kv .copy span {
	-webkit-mask-position: 0 center;
}
.slide-animation {
	animation: fadeZoom 5s 0s forwards;
}
@keyframes fadeZoom {
	0% {
		transform: scale(1.05);
		transform-origin: 50% 0;
	}
	100% {
		transform: scale(1);
		transform-origin: 50% 0;
	}
}
.top_kv .scroll_text {
	position: absolute;
	bottom: 11.4rem;
	width: 100%;
	color: #fff;
	font-size: 2.4rem;
	text-align: center;
}
.top_kv .scroll_line {
	position: absolute;
	bottom: 2.5rem;
	left: 50%;
	width: .1rem;
	height: 7.3rem;
	background: #fff;
	overflow: hidden;
}
.top_kv .scroll_line::after {
	content: '';
	position: absolute;
	width: .1rem;
	height: 7.3rem;
	background: rgba(0,0,0,.6);
	animation: scrollDown 1.4s ease-in-out infinite;
}
@keyframes scrollDown {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(100%);
	}
}
@media print, screen and (min-width: 768px) {/* PC */
.top_kv {
	height: calc(100vh - 8rem);
}
.top_kv .copy {
	width: 57.4rem;
}
.top_kv .slide img {
	height: calc(100vh - 8rem);
	object-fit: cover;
	object-position: 50% 10%;
}
}/* @media */
/* -----------------------------------------------
= top_job
----------------------------------------------- */
.top_job {
	color: #704535;
	background: #dbd3cf;
}
.top_job .block.type01 {
	padding: 10rem 0 10rem 3rem;
}
.top_job h2 {
	margin-bottom: 3rem;
}
.top_job h2 span {
	display: block;
	color: #fff;
	font-size: 5.8rem;
	letter-spacing: .24rem;
}
.top_job h2 span + span {
	margin-top: 2rem;
	padding-top: 1rem;
	color: #704535;
	border-top: .2rem solid #fff;
	font-size: 4.2rem;
}
.top_job .lead {
	padding-right: 3rem;
	font-size: 2.8rem;
	line-height: 5.2rem;
	letter-spacing: .24rem;
}
.top_job .set {
	position: relative;
	margin: -8.5rem 3rem 0;
	padding: 3rem 3rem .1rem;
	background: #dbd3cf;
}
.top_job .set p {
	margin-bottom: 8rem;
	font-size: 3.8rem;
	letter-spacing: .04em;
}
.top_job .set p a {
	display: block;
	margin-top: 5rem;
	padding: 3rem;
	color: #704535;
	border: .1rem solid #928080;
	font-family: 'Noto Sans CJK JP Regular', sans-serif;
	font-weight: 400;
	font-size: 2.6rem;
	text-align: center;
	letter-spacing: .32em;
	transition: .3s;
}
.top_job .set p a:hover {
	color: #fff;
	background: #928080;
	opacity: 1;
}
#js-slide_job {
	overflow: hidden;
}
#js-slide_job .slick-slide {
	position: relative;
}
#js-slide_job .slick-slide p {
	position: absolute;
	bottom: 15rem;
	right: 6rem;
	width: 100%;
	color: #fff;
	font-size: 3.2rem;
	text-align: right;
}
#js-slide_job .slick-slide p span {
	margin-right: 1em;
	font-size: 4rem;
	font-weight: 700;
}
@media print, screen and (min-width: 768px) {/* PC */
.top_job .block {
	display: flex;
	align-items: center;
	transition: background .3s;
}
.top_job .block.is-hover {
	background: #fff;
}
.top_job .block.type01 {
	display: block;
	padding: 13rem 0 13rem calc(660 / 1500 * 100%);
}
.top_job h2 span {
	font-size: 4.8rem;
}
.top_job h2 span + span {
	border-top-width: .1rem;
	font-size: 3.2rem;
}
.top_job .lead {
	font-size: 1.8rem;
	line-height: 3.6rem;
}
.top_job .block .img {
	width: 50%;
}
.top_job .block .img img {
	width: 100%;
}
.top_job .block .set {
	width: 50%;
	margin: 0;
	padding: 0;
	background: transparent;
}
.top_job .block.type02 .img,
.top_job .block.type04 .img {
	order: 2;
}
.top_job .block.type02 .set,
.top_job .block.type04 .set {
	order: 1;
}
.top_job .set p {
	margin-bottom: 0;
	padding: 0 calc(50 / 750 * 100%) 0 calc(150 / 750 * 100%);
	font-size: 2.8rem;
	line-height: 1.3;
}
.top_job .set p + p {
	margin-top: 6rem;
}
.top_job .set p a {
	margin-top: 3rem;
	width: 21.6rem;
	padding: 1rem 0;
	font-size: 1.2rem;
}
#js-slide_job .slick-slide p {
	right: 4rem;
	bottom: 4rem;
	font-size: 2.2rem;
}
#js-slide_job .slick-slide p span {
	font-size: 2.8rem;
}
}/* @media */
/* -----------------------------------------------
= top_culture
----------------------------------------------- */
.top_culture {
	color: #704535;
	background: #e7e3cf;
}
.top_culture .block.type01 {
	padding: 10rem 0 10rem 3rem;
}
.top_culture h2 {
	margin-bottom: 3rem;
}
.top_culture h2 span {
	display: block;
	color: #fff;
	font-size: 5.8rem;
	letter-spacing: .24rem;
}
.top_culture h2 span + span {
	margin-top: 2rem;
	padding-top: 1rem;
	color: #704535;
	border-top: .2rem solid #fff;
	font-size: 4.2rem;
}
.top_culture .lead {
	padding-right: 3rem;
	font-size: 2.8rem;
	line-height: 5.2rem;
	letter-spacing: .24rem;
}
.top_culture .item_wrap {
	padding: 0 0 3rem;
}
.top_culture .item {
	position: relative;
	margin: 0 3rem 6rem;
}
.top_culture .item a {
	display: block;
	color: #704535;
}
.top_culture .item p {
	position: absolute;
	right: 0;
	bottom: -.1rem;
	z-index: 1;
	width: 45rem;
	padding: 3rem 0 .1rem 3rem;
	background: #e7e3cf;
	font-size: 3.4rem;
	letter-spacing: .2em;
}
.top_culture .item p .more {
	display: block;
	margin-top: 3rem;
	padding: 3rem;
	color: #704535;
	border: .1rem solid #928080;
	font-family: 'Noto Sans CJK JP Regular', sans-serif;
	font-weight: 400;
	font-size: 2.6rem;
	text-align: center;
	letter-spacing: .32em;
}
@media print, screen and (min-width: 768px) {/* PC */
.top_culture .block.type01 {
	display: block;
	padding: 13rem 0 10rem calc(660 / 1500 * 100%);
}
.top_culture h2 span {
	font-size: 4.8rem;
}
.top_culture h2 span + span {
	border-top-width: .1rem;
	font-size: 3.2rem;
}
.top_culture .lead {
	font-size: 1.8rem;
	line-height: 3.6rem;
}
.top_culture .item_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0 0 3rem;
}
.top_culture .item {
	width: 50%;
	max-width: 64rem;
	margin: 0 3rem 6rem;
}
.top_culture .item p {
	bottom: 0;
	width: 27rem;
	padding: 2rem 0 0 2rem;
	font-size: 2.4rem;
	transition: .3s;
}
.top_culture .item p .more {
	float: right;
	width: 17.6rem;
	margin: 2rem 1rem 1rem;
	padding: .8rem 0;
	font-size: 1.6rem;
	transition: .3s;
}
.top_culture .item a:hover {
	opacity: 1;
}
.top_culture .item a:hover p {
	color: #928080;
	background: #fff;
}
.top_culture .item a:hover p .more {
	color: #fff;
	background: #928080;
}
}/* @media */
/* -----------------------------------------------
= top_recruit
----------------------------------------------- */
.top_recruit {
	padding: 10rem 3rem;
	color: #704535;
	background: #dbe3e3;
}
.top_recruit h2 {
	margin-bottom: 8rem;
}
.top_recruit h2 span {
	display: block;
	color: #fff;
	font-size: 5.8rem;
	letter-spacing: .24rem;
}
.top_recruit h2 span + span {
	margin-top: 2rem;
	padding-top: 1rem;
	color: #704535;
	border-top: .2rem solid #fff;
	font-size: 4.2rem;
}
.top_recruit .lead {
	padding-right: 3rem;
	font-size: 2.8rem;
	line-height: 5.2rem;
	letter-spacing: .24rem;
}
.top_recruit .item {
	height: 40rem;
	color: #fff;
	background: url(../img/index/recruit_img01.jpg) no-repeat 50% 65% / cover;
	text-align: center;
}
.top_recruit .item .jp {
	display: block;
	margin-bottom: 3rem;
	padding-top: 8rem;
	font-size: 3.8rem;
	letter-spacing: .24em;
}
.top_recruit .item .en {
	display: block;
	margin-bottom: 4rem;
	font-size: 2.8rem;
	letter-spacing: .12em;
}
.top_recruit .item a {
	display: inline-block;
	width: 45rem;
	padding: 3rem 0;
	color: #fff;
	border: .1rem solid #fff;
	font-family: 'Noto Sans CJK JP Regular', sans-serif;
	font-weight: 400;
	font-size: 2.6rem;
	letter-spacing: .32em;
}
@media print, screen and (min-width: 768px) {/* PC */
.top_recruit {
	padding: 13rem 0;
}
.top_recruit h2 span {
	font-size: 4.8rem;
	margin-left: calc(660 / 1500 * 100%);
}
.top_recruit h2 span + span {
	border-top-width: .1rem;
	font-size: 3.2rem;
}
.top_recruit .lead {
	font-size: 1.8rem;
	line-height: 3.6rem;
}
.top_recruit .item {
	max-width: 120rem;
	height: 28rem;
	margin: 0 auto;
}
.top_recruit .item .jp {
	margin-bottom: 2rem;
	padding-top: 6rem;
	font-size: 2.8rem;
}
.top_recruit .item .en {
	margin-bottom: 3rem;
	font-size: 1.8rem;
}
.top_recruit .item a {
	width: 21.6rem;
	padding: 1rem 0;
	font-size: 1.6rem;
}
}/* @media */
/* -----------------------------------------------
= print
----------------------------------------------- */
@media print {
}/* media */



