/* メイン */
.main{
    height: 91vh;
    overflow-y: scroll;
	overflow-x:hidden;
	position: relative;
}
.main::-webkit-scrollbar{
  display: none;
}


/* ヒーローセクション */
.hero span{
	color: #0069E9;
}
.hero-image .swiper-slide{
	width:260px!important;
	margin-right: 8px;
}
.hero-image .swiper-wrapper img{
    aspect-ratio: 3/2;
    object-fit: cover;
}
.elementor-image-carousel {
	transition-timing-function: linear !important;
}
.hero-slider{
	transform: rotate(-7deg);
	scale: 130%;
}
/* 企業理念 */
#philosophy span{
	color: #0069E9;
}

/* 先輩の声 */
.talk-right,
.talk-left{
	position:relative;
}
.talk-right::before{
	content: "";
    position: absolute;
    top: 1rem;
    left: -17px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-right-color: #fff;
}

.talk-left::before{
	content: "";
    position: absolute;
    top: 1rem;
    left: 99%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left-color: #fff;
}

#voices .talk span{
    color: #0069E9;
    font-weight: bold;
    text-decoration: underline;
    text-decoration-style: dashed;
    text-underline-offset: 4px;
}
/* スケジュール */
.content::before {
    content: '';
    position: absolute;
    top: 5px;
    bottom: 0;
    left:0;
    width: 2px;
    height: 100%;
    background-color: #0055ff;
    z-index: 1;
  }
 .content h5::before {
    content: '';
    position: absolute;
    left: -25px;
    top:9px;
    width: 16px;
    height: 16px;
    background-color: #0055ff;
    border-radius: 50%;
    transform: translateX(-50%);
    z-index: 3;
  }

  .content h5::after {
    content: '';
    position: absolute;
    left: -25px;
    top:5px;
    width: 24px;
    height: 24px;
    background-color: #fff;
    border: 2px solid #0055ff;
    border-radius: 50%;
    transform: translateX(-50%);
    z-index: 2;
  }
  .timeline-item:last-child .content::before {
    display: none;
  }
/* ボタン */
.btn{
    position: relative
}
.btn-icon{
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    right: 1em;
}
/* 募集要項 */
#requirement .text ul{
	padding-left: 18px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* お応募の流れ */
.flow-container {
    overflow-x: scroll;
    scrollbar-width: none;  /* Firefox */
  -ms-overflow-style: none;
	cursor: grab;
    user-select: none;
}
.flow-container::-webkit-scrollbar {
    display: none;
}
.flow-container:active {
    cursor: grabbing;
}

/* .flow-container .swiper-wrapper{
	gap: 0;
}
.flow-container .elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide{
	width: fit-content!important;
}
.flow-container .elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide>.e-con{
	width: fit-content!important;
}
.flow-container .swiper-android .swiper-slide, .swiper-wrapper{
	width: fit-content!important;
}
.flow-container .e-con.e-flex>.e-con-inner{
	width: fit-content!important;
} */


.arrow-box {
	position: relative;
	width: 280px;
	padding: 2em 2em 2em 1.6em;
	color: #000;
	margin-right: -20px; 
	z-index: 1;
}
.arrow-box {
	position: relative;
	background-color: transparent;
	border: none;
	min-height: 148px;
}   
.arrow-box::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #D4DFEC;
	clip-path: polygon(0 0, calc(100% - 51px) 0, 100% 50%, calc(100% - 51px) 100%, 0 100%);
	z-index: -1;
	border-radius: 6px;
}
.arrow-box::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	right: 3px;
	bottom: 3px;
	background-color: #fff;
	clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 50%, calc(100% - 50px) 100%, 0 100%);
	z-index: -1;
	border-radius: 4px;
}  
     
.arrow-box.last{
	margin-right:1.6em;
}
.arrow-box.last::before {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
        
.arrow-box.last::after {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
        

@media screen and (max-width:640px) {
	.main{
		height: auto;
		overflow-y: visible;
		position: relative;
	}
	.hero-image .swiper-slide{
		width:280px!important;
}
	.talk-left::before{
		left: 99%;
	}
	.content::before {
    top: 8px;
  }
	.content h5::before {
    top:10px;
    width: 12px;
    height: 12px;
  }

  .content h5::after {
    top:6px;
    width: 20px;
    height: 20px;
  }
  .timeline-item:last-child .content::before {
    display: none;
  }
}


