@charset "utf-8";
/* 202508renew */
.renew{
	font-family: '游ゴシック', Yu Gothic, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS Pゴシック", MS PGothic, sans-serif;
	background-image:url(/-/media/recruiting/voice/image/renew/deco.png),url(/-/media/recruiting/voice/image/renew/deco.png);
	background-position: calc(50% + 470px) top, calc(50% - 470px) 1000px;
  background-repeat: no-repeat, no-repeat;
}
.JS #Contents {
  padding-left: 0;
  padding-right: 0;
}
.JS .GridSet{
	max-width:inherit;
}
.renew .voiceBtn{
	text-align:center;
}
.renew .voiceBtn a{
	padding:1.5rem 5rem;
	background:#333;
	color:#fff;
	font-weight:bold;
	display:inline-block;
}
.renew .voiceBtn a:hover{
	opacity:0.7;
	text-decoration:none;
}
.JS #Contents.renew {
    padding-left: 0;
    padding-right: 0;
}
/* 一覧＆個別＆カルーセル共通 */
.renew [class^="heading"] .photo,
.renew .voiceSlider .photo{
	overflow:hidden;
	display:flex;
	justify-content:center;
}
.renew [class^="heading"] .photo img{
	height:100% !important;
	max-width:inherit !important;
	margin:auto;
}
.renew .headData,
.renew .voiceSlider headData{
	z-index:1;
	position:absolute;
	width:100%;
	bottom:0;
}
.renew .category dt,
.renew [class^="heading"] .job,
.renew .voiceSlider .job{
	position:relative;
  font-size:0.875rem;
	font-weight:bold;
  color: #fff;
	/*background-color:#333;*/
  padding: 0.25rem 3rem 0.25rem 1rem;
	display:inline-block;
	white-space:nowrap;
  /*min-width: 140px;*/
	background-image:url(/-/media/recruiting/voice/image/renew/cat.svg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:right;
}
.renew .category dt{
	margin-bottom:0.5rem;
}
.renew .voiceSlider .job{
  font-size:0.75rem;
}
/*
.renew .category dt{
	margin:0 2rem 0.5rem 0;
}
.renew .category dt:after,
.renew [class^="heading"] .job:after,
.renew .voiceSlider .job:after{
	position: absolute;
	content: "";
	display: block;
	border-style: solid;
	border-top: 29px solid transparent;
	border-bottom: 1px solid #333;
	border-left: 40px solid #333;
	right: -40px;
	top: 0;
	border-right: 0;
}
*/
.renew [class^="heading"] h1,
.renew .voiceSlider h1{
	font-weight:bold;
	top:50%;
	bottom:50%;
}
.renew [class^="heading"] h1 span,
.renew .voiceSlider h1 span{
	background-color:#fff;
	display:inline-block;
	margin-top:0.2rem;
  position:relative;
	z-index:2;
}
.renew [class^="heading"] .profile,
.renew .voiceSlider .profile{
	font-weight:bold;
  box-sizing: border-box;
	position:relative;
	background:#68E5FF;
	background:linear-gradient(144deg,rgba(129, 255, 216, 0.88) 56%, rgba(104, 229, 255, 1) 100%);
}

/* ---------- 一覧 ---------- */
.renew .headingList .mem{
	position:relative;
}
.renew .headingList .mem:hover{
	opacity:0.7;
}
.renew .headingList a:link,.renew .headingList a:visited{
	color:inherit;
}
.renew .headingList{
	display:flex;
	flex-wrap:wrap;
	gap:2rem;
	margin-top:3rem;
}
.renew .headingList .profile{
	margin-left:1rem;
	padding:2rem 3rem 1rem 1rem;
	top:-1rem;
}
.renew .headingList .profile .profile_dep,
.renew .headingList .profile .profile_dat{
	font-size:0.875rem;
}
.renew .headingList h1{
	font-size:1.25rem;
}
.renew .headingList h1 span{
	padding:0.5rem;
}
.renew .headingList .profile:after{
	content:url(/-/media/recruiting/voice/image/renew/arrow.svg);
	position:absolute;
	right:1rem;
	top:40%;
}
.renew .category{
	margin: 0 auto 1rem;
}
/* ---------- 個別 ---------- */
.renew .heading,
.renew .heading .photo{
	height:740px;
	position:relative;
}
.renew .heading .headData{
	width:100%;
	max-width:965px;
}
.renew .heading .profile{
	width:100%;
	top:-1rem;
}
.renew .heading .profile_nam{
	font-size:1.25rem;
}
.renew .heading .profile_dep{
	font-size:0.75rem;
}
.renew .heading .profile_dat{
	font-size:0.875rem;
}
.renew .heading .profile_nam span{
	font-size:0.875rem;
	font-weight:normal;
}
.renew .heading h1 span{
	padding:0.5rem 1rem;
}

/* ---------- カルーセル ---------- */
.renew .voiceSlider .mem{
	position:relative;
}
.renew .voiceSlider .mem:hover{
	opacity:0.7;
}
.renew .voiceSlider a:link,.renew .voiceSlider a:visited{
	color:inherit;
}
.renew .voiceSlider .profile{
	margin-left:1rem;
	padding:1.25rem 1rem 0.5rem 1rem;
	top:-0.75rem;
	font-size:0.75rem;
}
.renew .voiceSlider h1 span{
	padding:0.25rem 0.5rem;
}
.renew .voiceSlider .profile_nam,.renew .voiceSlider .profile_dat{
	display:none;
}
.renew .voiceSlider .job{
  padding:0.2rem 3rem 0.2rem 0.7rem;
}
.renew .voiceSlider .job:after{
  right: -35px;
  border-top: 27px solid transparent;
  border-left: 35px solid #333;
}


/* 各ブロック */
.renew [class^="block"]{
	display:flex;
	justify-content:space-between;
	position:relative;
}
.renew .blockRev{
	flex-direction:row-reverse;
}
.renew h2{
	font-size:1.625rem;
	font-weight:bold;
	margin-bottom:1rem;
}
.renew h2:after{
	content:"";
	display:block;
	width:70px;
	height:2px;
	background:#333;
	margin-top:0.5rem;
}
.renew [class^="block"] h2{
	font-weight:bold;
}
.renew [class^="block"] .photo{
	overflow:hidden;
	display:flex;
	justify-content:center;
}


/* スケジュール、キャリア */
.renew .bg{
	overflow-x:clip;
	background:#68E5FF;
	background:linear-gradient(144deg, rgb(104 229 255 / 41%) 56%, rgb(129 255 216 / 41%) 100%);;
}
.renew .schedule,.renew .career{
  position: relative;
}
.renew .schedule:after{
	content: "";
	position: absolute;
	width: 40vw;
	height: 120%;
	top: 0;
	left:0;
	background:#ffffff7a;
	transform: translateX(-50%);
}
.renew .career:after{
	content: "";
	position: absolute;
	width: 50vw;
	height: 50%;
	bottom: 0;
	right:0;
	background:#ffffff7a;
	transform: translateX(50%);
}
.renew .careerTimeline{
	position:relative;
	margin-top: 3rem;
}
/*
.renew .careerTimeline:before{
	content:url(/-/media/recruiting/voice/image/renew/time.svg);
	width: 300px;
  display: block;
	margin:auto;
	position: relative;
	top: 1rem;
	z-index: 2;
}
*/
.renew .careerTimeline .item:first-of-type .life:after,
.renew .careerTimeline .item:first-of-type .work:before{
	width: 100%;
	display: block;
	margin:auto;
	position: absolute;
	z-index: 2;
	top:-1rem;
}
.renew .careerTimeline .item:first-of-type .life:after{
	content:url(/-/media/recruiting/voice/image/renew/time_l.svg);
	right: -1.4rem;
	text-align:right;
}
.renew .careerTimeline .item:first-of-type .work:before{
	content:url(/-/media/recruiting/voice/image/renew/time_w.svg);
	left: -1.4rem;
}

.renew .schedule .Grid4,.renew .careerTimeline > div{
	display:flex;
	justify-content:space-between;
  z-index: 1;
  position: relative;
}
.renew .schedule .Grid4{
  gap: 1rem;
}
.renew .schedule h2,.renew .career h2{
	text-align:center;
}
.renew .schedule h2:after,.renew .career h2:after{
  margin: 0.5rem auto 0;
}
.renew .schedule:before{
	background-image:url(/-/media/recruiting/voice/image/renew/sche.png);
	background-position:right;
}
.renew .career:before{
	background-image:url(/-/media/recruiting/voice/image/renew/care.png);
	background-position:left;
}
.renew .Container.Wide.schedule:before,.renew .Container.Wide.career:before{
	content:"";
	width:100%;
	max-width:1275px;
	display:block;
  position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
}
.renew .schedule,.renew .career{
	padding:40px 0;
	box-sizing: border-box;
	position:relative;
}
.renew .career{
	background-color:#fff;
}
.renew .schedule .detail dt,.renew .schedule .detail{
	display:flex;
}
.renew .schedule .detail dt{
	justify-content:space-between;
}
.renew .schedule .detail{
	margin-bottom:1rem;
	position:relative;
}
.renew .schedule .detail dd{
	display:flex;
	flex-direction:column;
	justify-content:center;
  width: calc(100% - 86px);
}
.renew .schedule .detail dt{
	width:62px;
	height:62px;
	background-color:#333;
	border-radius:100px;
	color:#fff;
	align-items:center;
	justify-content:center;
	margin-right:1.5rem;
	position:relative;
}
.renew .schedule .detail:nth-child(n+2) dt:before{
	content:"";
	display:block;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 9px solid #333;
  border-bottom: 0;
	position:absolute;
	top:-12px;
}
.renew .schedule .detail:not(:last-child) dd:before{
	content:"";
	width:2px;
	height:100%;
	background:#333;
	position:absolute;
	left: 1.85rem;
	z-index: -1;
	top: 12px;
}

.renew .schedule .detail dt,.renew .schedule .detail .title{
	font-weight:bold;
}
/*スケジュール部分の写真要調整*/
.renew .schedule .photo{
	position:relative;
}
.renew .schedule .photo img{
	box-shadow: 1px 1px 6px -5px #000000;
	width:100%;
}
.renew .schedule .photo:before{
	position:absolute;
	left:1rem;
	top:-57px;
	content:url(/-/media/recruiting/voice/image/renew/clip.svg);
}

/* キャリア */
.renew .careerTimeline .item > *{
	/*padding:1rem 0 0;*/
  position:relative;
	display:flex;
	flex-direction:column;
}
.renew .careerTimeline .item *{
	line-height:1.4rem;
	box-sizing: border-box;
}
.renew .careerTimeline .item > * > div{
  position:relative;
}
/*
.renew .careerTimeline .item:nth-child(n+2) > div:has(.point){
	top:-3rem;
}
.renew .careerTimeline .item:first-child:has(.point){
	top:-1rem;
}
.renew .careerTimeline .item > div > div:nth-child(n+2):has(.point){
	padding-bottom:1rem;
}
.renew .careerTimeline .item > div:first-child:has(.point){
	padding-top:1rem;
}*/

/* 最初のitem */
.renew .careerTimeline .item:first-child > *{
	padding-top:3rem;
}
/* item内にターニングポイントがある場合 */
.renew .careerTimeline .item > div > *:has(.point){
	top:-3rem;
}
/* item内にターニングポイントがある場合のtitle */
.renew .careerTimeline .item :has(.point) > .title{
	padding-top:3rem;
}
/* 最初のitemにターニングポイントがある場合 */
.renew .careerTimeline .item > *:first-child:has(.point){
	padding-top:4rem;
}
/* 最初のitemにターニングポイントがある場合の1番目 */
/*.renew .careerTimeline .item > div > *:nth-child(1):has(.point){
	padding-top:4rem;
}*/
/* item内の連続するdiv（同じ年代に属する出来事）で複数のターニングポイントが複数あるケースの2つめ以降に対して */
.renew .careerTimeline .item > div > *:nth-child(n+2):has(.point){
	top:0;
}
/* 最後のitem内の全要素 */
.renew .careerTimeline .item:last-child > *{
	padding-bottom: 0 !important;
}
.renew .careerTimeline .title{
	font-weight:bold;
}
.renew .careerTimeline .item .life{
	order:1;
	width:45%;
	padding-left:1rem;
	padding-right:1rem;
	padding-bottom:1rem;
	align-items:end;
}
.renew .careerTimeline .item .work{
	order:3;
	width:45%;
	padding-left:1rem;
	padding-right:1rem;
	padding-bottom:2rem;
  position:relative;
}
.renew .careerTimeline .item .life .title{
	text-align:right;
}
.renew .careerTimeline .item .age{
	order:2;
	width:13%;
	font-weight:bold;
	text-align:center;
	border-left:1rem solid #EFF29B;
	border-right:1rem solid #C5DBEE;
	/*padding:2rem 0.5rem 0;*/
}
.renew .careerTimeline .item .life .title:before,.renew .careerTimeline .item .work .title:before{
	content:"";
	display:block;
	width:1rem;
	height:2px;
	background:#333;
  position: absolute;
  top:0.7rem;
	z-index:1;
}
.renew .careerTimeline .item :has(.point) > .title:before{
	top:3.7rem;
}
.renew .careerTimeline .item .life .title:before{
  right: -1rem;
}
.renew .careerTimeline .item .work .title:before{
  left: -1rem;
}
.renew .careerTimeline .item .life div .title:before{
  right: -2rem;
}
.renew .careerTimeline .item .work div .title:before{
  left: -2rem;
}
.renew .careerTimeline .item .point{
	font-size:0.875rem;
	font-weight:bold;
	color:#fff;
	position: absolute;
  top:1rem;
	background:#E60027;
	padding:0.1rem 0.5rem;
  display: flex;
  justify-content: center;
	white-space: nowrap;
}
.renew .careerTimeline .item .point:before{
  content: "";
  display: block;
  border-style: solid;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 5px solid #E60027;
  border-bottom: 0;
  position: absolute;
  bottom: -5px;
}
.renew .careerTimeline .item .text{
	padding-bottom:1rem;
}
.renew .careerTimeline .item .life .point{
	right:0;
}
/* Q&A */
.renew .qa{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.renew .qa > div{
	background-image:url(/-/media/recruiting/voice/image/renew/spot.png);
	background-position:left top;
	background-repeat:no-repeat;
	background-size:100px;
	box-sizing:border-box;
}
.renew .qa .title{
	font-size:1.25rem;
	font-weight:bold;
}

/* 他の社員を知る（slick） */
.renew .voiceSlider{
	margin-bottom:3rem;
}
.renew .voiceSlider .slick-slide {
	box-sizing:border-box;
  margin: 0 7px;
}
.renew .voiceSlider .dots-voice{
  display: flex;
  justify-content: center;
	margin:1rem;
}
.renew .voiceSlider .dots-voice li {
  width:15px;
  height:15px;
  margin:0 5px;
  background:#fff;
	border:2px solid #333;
  border-radius:50%;
  cursor: pointer;
	box-sizing:border-box;
}
.renew .voiceSlider .dots-voice li:hover,
.renew .voiceSlider .dots-voice li.slick-active {
  background:#333;
}
.renew .voiceSlider .dots-voice li button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}
.renew .voiceSlider .autoplay-buttons[data-play="stop"]:before,
.renew .voiceSlider .autoplay-buttons[data-play="play"]:before {
  content: url(/-/media/recruiting/voice/image/renew/stop.svg);
  top: -0.2rem;
  position: relative;
}
.renew .voiceSlider .autoplay-buttons[data-play="play"]:before {
  opacity: 0.7;
}
.renew .voiceSlider .dots-voice .autoplay-buttons,
.renew .voiceSlider .dots-voice .autoplay-buttons:hover{
	border:none;
	background:none;
}
.renew .voiceSlider .slick-prev,
.renew .voiceSlider .slick-next{
  z-index:1;
  position: absolute;
  top: 25%;
  display: block;
  width: 30px;
  height: 60px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
}
.renew .voiceSlider .slick-prev{
	left:6px;
	background:url(/-/media/recruiting/voice/image/renew/prev.svg);
}
.renew .voiceSlider .slick-next{
	right:6px;
	background:url(/-/media/recruiting/voice/image/renew/next.svg);
}

@media screen and (max-width: 1304px) {}
@media screen and (min-width: 995px) and (max-width: 1010px) {
	.JS .GridSet{
		box-sizing:border-box;
		overflow: hidden;
	}
}
@media screen and (min-width: 995px) {
	.renew .voiceSlider .photo{
		height:390px;
	}
	.renew [class^="heading"] .photo{
		border-radius:4px;
	}
}
@media screen and (max-width: 994px) {
	.renew{
		background-position: right -50px top, left center;
	}
}
@media screen and (min-width: 768px) {
	.renew .headingList > *{
		width:calc((100% - 2rem) / 2);
	}
	.renew .headingList .photo{
		height:600px;
	}
	.renew .category{
		display:flex;
		gap:1rem;
		max-width: 825px;
		align-items: center;
	}
	.renew .heading .headData{
		bottom:1rem;
	}
	.renew .heading h1{
		font-size:1.625rem;
	}
	.renew .heading .profile{
		max-width:450px;
		padding:2rem;
		left:2rem;
	}
	.renew .heading .profile:after,.renew .heading .profile:before{
		content:url(/-/media/recruiting/voice/image/renew/cros.svg);
		width:40px;
		height:40px;
	  position: absolute;
		opacity: 0.6;
	}
	.renew .heading .profile:after{
	  right:-1.5rem;
	  top:-1.5rem;
	}
	.renew .heading .profile:before{
	  left:-1.5rem;
	  bottom:-1.5rem;
		transform: rotate(180deg);
	}
	.renew .voiceSlider .photo{
		border-radius:4px;
	}
	.renew .bg{
		margin:150px 0 95px;
	}
	.renew h2{
		margin-left:1rem;
	}
	.renew .block h2{
		text-align:right;
	}
	.renew .block h2:after{
		position:absolute;
		right:0;
	}
	.renew [class^="block"] h2{
		margin-left:inherit;
		font-size:1.375rem;
	}
	.renew [class^="block"]{
		margin:4rem 1rem;
	}
	.renew [class^="block"] .photo{
		max-height:460px;
		border-radius:4px;
		width:40%;
	}
	.renew [class^="block"] .photo img{
		max-width:inherit !important;
		height:100% !important;
		margin:auto;
	}
	.renew [class^="block"] .text {
    width:55%;
	}
	.renew .Container.Wide.schedule:before,.renew .Container.Wide.career:before{
		height:68px;
		top:-66px;
	}
	.renew .schedule:before{
		background-position:top right 1rem;
	}
	.renew .schedule .photo{
		max-width: 400px;
	}
	.renew .career,.renew .qa{
		width:95%;
		margin:auto;
	}
	.renew .schedule .detail{
		max-width:515px;
		margin-right:1rem;
		margin-left:1rem;
	}
	.renew .career .item {
		margin-right:1rem;
		margin-left:1rem;
	}
/*
	.renew .careerTimeline{
		margin:1rem;
	}
*/
	.renew .qa > div{
		width:46%;
		padding:2rem 0 0 2rem;
		gap:3rem;
	}
	.renew .other{
		margin-top:90px;
	}
}
@media screen and (max-width: 767px) {
	#Contents{
		padding-bottom:inherit;
	}
	.renew .headingList{
		margin: 3rem auto 0;
	  max-width: 533px;
	}
	.renew .heading .headData{
		bottom:-1rem;
	}
	.renew .headingList > *{
		width:100%;
	}
	.renew .headingList .photo{
		height:600px;
	}
	.renew .heading h1{
		font-size:1.25rem;
	}
	.renew .heading .profile{
		padding:2rem 1rem 1rem;
	}
  .renew [class^="block"] {
		flex-direction: column-reverse;
  }
	.renew .bg{
		margin-top:75px;
	}
  .renew .schedule .Grid4 {
		flex-direction: column;
  }
	.renew .schedule dl{
		margin:0 1rem;
	}
	.renew [class^="block"] .photo{
		/*max-height:350px;*/
		overflow: hidden;
		margin-top:1rem;
	}
	.renew .Container.Wide.schedule:before,.renew .Container.Wide.career:before{
		height:48px;
		top:-46px;
	}
	.renew .schedule .photo img{
    width: 100%;
	}
	.renew [class^="block"] .text,.renew h2{
		margin:0 1rem;
	}
	.renew [class^="block"] h2{
		text-align:center;
		margin:2rem 0 0 0;
		font-size:1.25rem;
	}
	.renew [class^="block"] h2:after {
		margin:0.5rem auto;
	}
	.renew .careerTimeline .item .age{
		width:17%;
	}
	.renew .career .careerTimeline .item{
		font-size:0.875rem;
	}
	.renew .qa > div{
		padding: 1rem 1rem 0;
    margin: 1rem;
	}
	.renew .other{
		margin-top:3rem;
		margin-bottom:3rem;
	}
}
@media screen and (min-width: 580px) {
	.renew .voiceSlider .photo img{

	}
}
@media screen and (max-width: 579px) {
	.renew h2{
		font-size:1.375rem;
		padding-bottom:1rem;
	}
	.renew .other{
		margin-top:2rem;
	}
	.renew .voiceSlider .slick-prev{
		left:0;
	}
	.renew .voiceSlider .slick-next{
		right:0;
	}
}
@media screen and (max-width: 399px) {
	.renew [class^="heading"] .job{
	  padding-left:0.5rem;
	}
	.renew .voiceSlider .photo img{
    width:100%;
	}
	.renew .voiceSlider .slick-slide{
    margin: 0 1px;
	}
	.renew .heading h1 span{
		padding:0.5rem;
	}
	.renew .headingList h1 {
	    font-size: 1.125rem;
	}
	.renew .voiceSlider h1 {
		font-size:0.875rem;
	}
	.renew .careerTimeline .item .age{
    width: 13%;
		border-left: 0.5rem solid #EFF29B;
    border-right: 0.5rem solid #C5DBEE;
		padding-left:0.3rem;
		padding-right:0.3rem;
	}
	.renew .careerTimeline .item .life .title:before,
	.renew .careerTimeline .item .work .title:before{
		width:0.5rem;
	}
	.renew .careerTimeline .item .work div .title:before {
    left: -1.5rem;
	}
	.renew .careerTimeline .item .life div .title:before {
    right: -1.5rem;
	}
	.renew .careerTimeline .item:first-of-type .work:before{
		left: -1.1rem;
	}
	.renew .careerTimeline .item:first-of-type .life:after{
		right: -1.1rem;
	}
}
