@charset "utf-8";

/* *****************************************************************************

  index.html

***************************************************************************** */
/* kv-img-top-sp */
.kv-img-top-sp{
  display: none;
}

@media print, screen and (max-width: 760px){
  /* kv-img-top-sp */
  .kv-img-top-sp{
    display: block;
    margin-bottom: 6rem;
  }
  .kv-img-top-sp > img{
    width: 100%;
  }
}

@media print, screen and (max-width: 546px){
  /* kv-img-top-sp */
  .kv-img-top-sp{
    margin-bottom: 11.5%;
  }
}

/* kv */
.kv{
  padding-left: 6rem;
  padding-right: 6rem;
  margin-bottom: 5.6rem;
  position: relative;
  overflow: hidden;
}
.kv > .-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (max-width: 1418px){
  /* kv */
  .kv::after{
    content: "";
    width: 700px;
    height: 1571px;
    position: absolute;
    background: url(/recruit/assets/images/home/img-kv-right-tablet-fluid.png) center center no-repeat;
    background-size: 700px auto;
    position: absolute;
    top: 2rem;
    right: 0;
    z-index: 1;
  }
}

@media print, screen and (max-width: 1273px){
  /* kv */
  .kv::before{
    content: "";
    width: 200px;
    height: 198px;
    position: absolute;
    background: url(/recruit/assets/images/home/img-kv-left-tablet.jpg) center center no-repeat;
    background-size: 200px auto;
    position: absolute;
    top: 2rem;
    left: 0;
  }
}

@media print, screen and (max-width: 1000px){
  /* kv */
  .kv{
    padding-left: 4rem;
    padding-right: 4rem;
  }
  .kv::after{
    left: 26.6rem;
    right: auto;
  }
}

@media print, screen and (max-width: 760px){
  /* kv */
  .kv{
    padding-left: 2rem;
    padding-right: 2rem;
    margin-bottom: 0;
  }
  .kv::before,
  .kv::after{
    display: none;
  }
}

/* kv-box */
.kv-box{
  padding-top: 33.5rem;
  padding-bottom: 15.8rem;
  position: relative;
  z-index: 1;
}
.kv-box::before{
  content: "";
  width: 400px;
  height: 396px;
  position: absolute;
  background: url(/recruit/assets/images/home/img-kv-left.png) center center no-repeat;
  background-size: 400px auto;
  position: absolute;
  top: 2rem;
  left: -30rem;
}
.kv-box::after{
  content: "";
  width: 700px;
  height: 1571px;
  position: absolute;
  background: url(/recruit/assets/images/home/img-kv-right.png) center center no-repeat;
  background-size: 700px auto;
  position: absolute;
  top: 2rem;
  right: -17.2rem;
}

@media print, screen and (max-width: 1418px){
  .kv-box::after{
    background: url(/recruit/assets/images/home/img-kv-right-tablet-fixed.png) center center no-repeat;
    background-size: 700px auto;
  }
}

@media print, screen and (max-width: 1273px){
  /* kv-box */
  .kv-box::before{
    display: none;
  }
}

@media print, screen and (max-width: 1200px){
  /* kv-box */
  .kv-box::after{
    left: 53.2rem;
    right: auto
  }
}

@media print, screen and (max-width: 760px){
  /* kv */
  .kv-box{
    padding-top: 0;
    padding-bottom: 0;
  }
  .kv-box::after{
    display: none;
  }
}

/* kv-catch */
.kv-catch{
  z-index: 1;
  position: relative;
}
.kv-catch > .-text{
  width: 490px;
}
.kv-catch > .-text > img{
  width: 100%;
}
.kv-catch > .-en{
  margin-top: 3.5rem;
}
.kv-catch > .-en > p{
  font-size: 3.6rem;
  color: #002584;
  letter-spacing: 0.05em;
  font-family: "Marcellus", serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  white-space: nowrap;
}

@media print, screen and (max-width: 546px){
  /* kv-catch */
  .kv-catch > .-text{
    width: 100%;
  }
  .kv-catch > .-en{
    margin-top: 6.8%;
  }
  .kv-catch > .-en > p{
    font-size: 6.58vw;
  }
}

/* kv-text */
.kv-text{
  margin-top: 14.5rem;
}
.kv-text > p{
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 3.2rem;
}
.kv-text > p:nth-child(1){
  margin-top: 0;
}
.kv-text > p > br.-sp{
  display: none;
}

@media print, screen and (max-width: 760px){
  /* kv-text */
  .kv-text{
    margin-top: 10rem;
    text-align: center;
  }
}

@media print, screen and (max-width: 546px){
  /* kv-text */
  .kv-text{
    margin-top: 18.6vw;
    text-align: left;
  }
  .kv-text > p{
    letter-spacing: 0;
  }
  .kv-text > p > br.-sp{
    display: inline;
  }
}

/* kv-img-bottom-sp */
.kv-img-bottom-sp{
  display: none;
}

@media print, screen and (max-width: 760px){
  /* kv-img-bottom-sp */
  .kv-img-bottom-sp{
    margin-top: 8rem;
    margin-bottom: 8rem;
    display: block;
  }
  .kv-img-bottom-sp > img{
    width: 100%;
  }
}

@media print, screen and (max-width: 546px){
  /* kv-img-top-sp */
  .kv-img-bottom-sp{
    margin-top: 14.8%;
  }
}

/* contents-home */
.contents-home{
  overflow: hidden;
}

/* section-link */
.section-link{
  padding-left: 6rem;
  padding-right: 6rem;
}
.section-link > .-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (max-width: 1000px){
  /* section-link */
  .section-link{
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

@media print, screen and (max-width: 760px){
  /* section-link */
  .section-link{
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* link-box */
.link-box-wrap{
  display: flex;
}
.link-box{
  width: 50%;
}
.link-box:nth-child(2){
  padding-top: 5rem;
}
.link-box > a{
  aspect-ratio: 530/480;
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.link-box > a::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition-duration: 0.5s;
}
.link-box-keyword > a::after{
  background: url(/recruit/assets/images/home/bg-link-keyword.jpg) center center no-repeat;
  background-size: cover;
}
.link-box-job > a::after{
  background: url(/recruit/assets/images/home/bg-link-job.jpg) center center no-repeat;
  background-size: cover;
}
.link-box > a:hover::after{
  transform: scale(1.1);
  transition-duration: 0.5s;
}

@media print, screen and (max-width: 640px){
  /* link-box */
  .link-box-wrap{
    display: block;
  }
  .link-box{
    width: 100%;
  }
  .link-box:nth-child(2){
    padding-top: 0;
  }
}

/* link-box-primary */
.link-box-primary{
  width: 100%;
  color: #fff;
  text-align: center;
  z-index: 1;
}
.link-box-primary > .-en{
  font-family: "Marcellus", serif;
	font-weight: 400;
	font-style: normal;
  font-size: 4.8rem;
  letter-spacing: 0.1em;
  line-height: 1;
  white-space: nowrap;
  position: relative;
  padding-bottom: 3.5rem;
}
.link-box-primary > .-en::after{
  content: "";
  background-color: rgba(255,255,255,0.5);
  width: 200px;
  height: 1px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
}
.link-box-primary > .-main{
  margin-top: 3.5rem;
}
.link-box-primary > .-main > .-catch{
  letter-spacing: 0.05em;
  font-size: 1.8rem;
  white-space: nowrap
}
.link-box-primary > .-main > .-text{
  margin-top: 3rem;
}
.link-box-primary > .-main > .-text > p{
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  line-height: 1.8571;
  white-space: nowrap;
}

@media print, screen and (max-width: 900px){
  /* link-box-primary */
  .link-box-primary > .-en{
    font-size: 5.35vw;
    padding-bottom: 3.7vw;
  }
  .link-box-primary > .-en::after{
    width: 49.7512%;
  }
  .link-box-primary > .-main{
    margin-top: 3.7vw;
  }
  .link-box-primary > .-main > .-catch{
    font-size: 2vw;
  }
  .link-box-primary > .-main > .-text{
    margin-top: 3.2vw;
  }
  .link-box-primary > .-main > .-text > p{
    font-size: 1.55vw;
  }
}

@media print, screen and (max-width: 760px){
  /* link-box-primary */
  .link-box-primary > .-en{
    font-size: 5.6vw;
  }
  .link-box-primary > .-main > .-catch{
    font-size: 2.4vw;
  }
  .link-box-primary > .-main > .-text > p{
    font-size: 1.8vw;
  }
}

@media print, screen and (max-width: 640px){
  /* link-box-primary */
  .link-box-primary > .-en{
    font-size: 11vw;
    padding-bottom: 7vw;
  }
  .link-box-primary > .-main{
    margin-top: 7vw;
  }
  .link-box-primary > .-main > .-catch{
    font-size: 4.2vw;
  }
  .link-box-primary > .-main > .-text{
    margin-top: 5vw;
  }
  .link-box-primary > .-main > .-text > p{
    font-size: 3.2vw;
  }
}

/* section-interview */
.section-interview{
  margin-top: 12rem;
  margin-bottom: 12rem;
  padding-left: 6rem;
  padding-right: 6rem;
}
.section-interview > .-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (max-width: 1000px){
  /* section-interview */
  .section-interview{
    margin-top: 10rem;
    margin-bottom: 10rem;
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

@media print, screen and (max-width: 760px){
  /* section-interview */
  .section-interview{
    margin-top: 8rem;
    margin-bottom: 8rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* section-interview-primary */
.section-interview-primary{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media print, screen and (max-width: 640px){
  /* section-interview-primary */
  .section-interview-primary{
    display: block;
    text-align: center;
  }
}

/* section-heading */
.section-heading{
  display: flex;
  align-items: flex-end;
}
.section-heading > .-en{
  font-size: 4.8rem;
  color: #002584;
  letter-spacing: 0.1em;
  font-family: "Marcellus", serif;
	font-weight: 400;
 	font-style: normal;
  line-height: 1;
  white-space: nowrap;
  margin-right: 2rem;
}
.section-heading > .-main{
  white-space: nowrap;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1;
  padding-bottom: 0.7rem;
}

@media print, screen and (max-width: 640px){
  /* section-heading */
  .section-heading{
    display: block;
    text-align: center;
  }
  .section-heading > .-en{
    font-size: 4.6rem;
    margin-right: 0;
    margin-bottom: 1.8rem;
  }
}

/* section-interview-text */
.section-interview-text,
.section-interview-text-sp{
  font-size: 1.4rem;
  line-height: 1.8571;
}
.section-interview-text-sp{
  display: none;
}

@media print, screen and (max-width: 1000px){
  /* section-interview-text */
  .section-interview-text{
    display: none;
  }
  .section-interview-text-sp{
    margin-top: 2.5rem;
    display: block;
  }
}

/* section-button */
.section-button > a{
  display: inline-block;
  line-height: 35px;
  font-size: 1.4rem;
  white-space: nowrap;
  padding-right: 5.2rem;
  background: url(/recruit/assets/images/arrow-circle-blue.svg) right center no-repeat;
  background-size: 3.5rem auto;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.section-button > a:hover{
  color: #002584;
}
.section-button > a > span{
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  position: relative;
}
.section-button > a > span::after{
    content: "";
    display: block;
    height: 2px;
    width: 100%;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transition-delay: 0;
    transition-delay: 0;
    background: #002584;
    position: absolute;
    left: 0;
    bottom: -6px;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
}
.section-button > a:hover > span::after{
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
}

@media print, screen and (max-width: 640px){
  /* section-button */
  .section-button{
    margin-top: 2.5rem;
  }
}

/* interview-img-list */
.interview-img-list{
  display: flex;
  margin-top: 5rem;
}
.interview-img-list > .-item{
  width: 25%;
}
.interview-img-list > .-item > img{
  width: 100%;
}

@media print, screen and (max-width: 760px){
  /* interview-img-list */
  .interview-img-list{
    flex-wrap: wrap;
    margin-top: 4rem;
  }
  .interview-img-list > .-item{
    width: 50%;
  }
}

/* section-story */
.section-story{
  background: #002584 url(/recruit/assets/images/home/bg-story.png) right center no-repeat;
  background-size: auto 540px;
  height: 540px;
  position: relative;
  overflow: hidden;
  color: #ffffff;
  padding-left: 6rem;
  padding-right: 6rem;
}
.section-story::before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #002584;
  opacity: 0.4;
}
.section-story > .-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}

@media print, screen and (max-width: 1080px){
  /* section-story */
  .section-story{
    background: #002584 url(/recruit/assets/images/home/bg-story.png) left 345px center no-repeat;
    background-size: auto 540px;
  }
}

@media print, screen and (max-width: 1000px){
  /* section-story */
  .section-story{
    padding-left: 4rem;
    padding-right: 4rem;
  }
}

@media print, screen and (max-width: 760px){
  /* section-story */
  .section-story{
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    height: auto;
    background-image: none;
  }
  .section-story-en{
    font-size: 7.7rem;
    bottom: -1.8rem;
  }
}

/* section-story-box */
.section-story-box{
  margin-top: 10rem;
}

@media print, screen and (max-width: 760px){
  /* section-story-box */
  .section-story-box{
    margin-top: 8rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* section-story-heading */
.section-story-heading{
  width: 200px;
}
.section-story-heading > .-en{
  font-size: 4.8rem;
  letter-spacing: 0.1em;
  line-height: 1;
  white-space: nowrap;
  font-family: "Marcellus", serif;
	font-weight: 400;
	font-style: normal;
  border-bottom: 1px solid #ffffff;
  padding-bottom: 4.2rem;
  margin-bottom: 3.8rem;
}
.section-story-heading > .-main{
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1;
  white-space: nowrap;
}

@media print, screen and (max-width: 760px){
  /* section-story-heading */
  .section-story-heading{
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .section-story-heading > .-en{
    font-size: 4.6rem;
    padding-bottom: 3.2rem;
    margin-bottom: 3.2rem;
  }
}

/* section-story-text */
.section-story-text{
  margin-top: 3.5rem;
}
.section-story-text > p{
  font-size: 1.4rem;
  line-height: 1.8571;
}

@media print, screen and (max-width: 760px){
  /* section-story-text */
  .section-story-text > p{
    text-align: center;
  }
}

/* section-button-story */
.section-button-story{
  margin-top: 2.8rem;
}
.section-button-story > a{
  color: #ffffff;
  background: url(/recruit/assets/images/arrow-circle-white.svg) right center no-repeat;
  background-size: 3.5rem auto;
}
.section-button-story > a:hover{
  color: #ffffff;
}
.section-button-story > a > span::after{
    background: #ffffff;
    bottom: -8px;
}

@media print, screen and (max-width: 760px){
  /* section-button-story */
  .section-button-story{
    text-align: center;
  }
}

/* section-story-img */
.section-story-img{
  display: none;
}

@media print, screen and (max-width: 760px){
  /* section-story-img */
  .section-story-img{
    margin-top: 4rem;
    display: block;
  }
  .section-story-img > img{
    width: 100%;
  }
}

/* section-story-en */
.section-story-en{
  width: 100%;
  text-align: center;
  font-family: "Marcellus", serif;
	font-weight: 400;
	font-style: normal;
  opacity: 0.3;
  font-size: 15rem;
  color: #ffffff;
  position: absolute;
  left: 0;
  bottom: -3.5rem;
  white-space: nowrap;
}

@media print, screen and (max-width: 760px){
  /* section-story-en */
  .section-story-en{
    font-size: 7.7rem;
    bottom: -1.8rem;
  }
}

/* recruit-link-block */
.recruit-link-block{
  padding-left: 6rem;
  padding-right: 6rem;
  background-color: #f4f4f4;
}
.recruit-link-block > .-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (max-width: 1000px){
	/* recruit-link-block */
  .recruit-link-block{
    padding-left: 4rem;
    padding-right: 4rem;
	}
}

@media print, screen and (max-width: 760px){
	/* recruit-link-block */
  .recruit-link-block{
    padding-left: 2rem;
    padding-right: 2rem;
	}
}

/* recruit-link-nav */
.recruit-link-nav{
	display: flex;
	column-gap: 3.2rem;
	padding-top: 12rem;
  padding-bottom: 12rem;
}
.recruit-link-nav > .-item{
	width: calc(100%/3);
	overflow: hidden;
}
.recruit-link-nav > .-item > a{
	display: block;
	aspect-ratio: 1/1;
	position: relative;
}

@media print, screen and (max-width: 1000px){
  /* recruit-link-nav */
  .recruit-link-nav{
	  column-gap: 2rem;
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}

@media print, screen and (max-width: 760px){
  /* recruit-link-nav */
  .recruit-link-nav{
    display: block;
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
  .recruit-link-nav > .-item{
	  width: 100%;
    margin-top: 2rem;
  }
  .recruit-link-nav > .-item:nth-child(1){
    margin-top: 0;
  }
}

/* recruit-link-main */
.recruit-link-main{
	position: absolute;
  top: 50%;
  left: 50%;
	-webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
	z-index: 1;
	text-align: center;
	width: 100%;
	padding-bottom: 6.5rem;
  color: #ffffff;
	background: url(/recruit/assets/images/arrow-circle-white.svg) center bottom no-repeat;
	background-size: 35px auto;
}
.recruit-link-main > .-en{
	font-family: "Marcellus", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.8rem;
	line-height: 1;
	white-space: nowrap;
	margin-bottom: 2rem;
  letter-spacing: 0.1em;
}
.recruit-link-main > .-main{
	font-size: 1.8rem;
	white-space: nowrap;
	line-height: 1;
  letter-spacing: 0.05em;
}

@media print, screen and (max-width: 1197px){
	/* recruit-link-main */
	.recruit-link-main{
		padding-bottom: 19.5%;
    background: url(/recruit/assets/images/arrow-circle-white.svg) center bottom no-repeat;
		background-size: 10.8438% auto;
	}
	.recruit-link-main > .-en{
		font-size: 1.5vw;
		margin-bottom: 6%;
	}
	.recruit-link-main > .-main{
		font-size: 1.5vw;
	}
}

@media print, screen and (max-width: 1000px){
	/* recruit-link-main */
	.recruit-link-main{
		padding-bottom: 20%;
    background: url(/recruit/assets/images/arrow-circle-white.svg) center bottom no-repeat;
		background-size: 11% auto;
	}
	.recruit-link-main > .-en{
		font-size: 1.8vw;
	}
	.recruit-link-main > .-main{
		font-size: 1.8vw;
	}
}

@media print, screen and (max-width: 760px){
	/* recruit-link-main */
	.recruit-link-main{
		padding-bottom: 20%;
    background: url(/recruit/assets/images/arrow-circle-white.svg) center bottom no-repeat;
		background-size: 10.4478% auto;
	}
	.recruit-link-main > .-en{
		font-size: 5.2vw;
	}
	.recruit-link-main > .-main{
		font-size: 5.2vw;
	}
}

/* recruit-link-img */
.recruit-link-img{
	aspect-ratio: 1/1;
	transition-duration: 0.5s;
}
.recruit-link-img.-career-path{
	background: url(/recruit/assets/images/home/img-link-career-path.jpg) center center no-repeat;
	background-size: cover;
}
.recruit-link-img.-welfare{
	background: url(/recruit/assets/images/home/img-link-welfare.jpg) center center no-repeat;
	background-size: cover;
}
.recruit-link-img.-number{
	background: url(/recruit/assets/images/home/img-link-number.jpg) center center no-repeat;
	background-size: cover;
}
a:hover > .recruit-link-img{
	transform: scale(1.1);
}
