@charset "utf-8";
/* ==========================================================================
   recruit
   ========================================================================== */
.dela{
	font-family: "Dela Gothic One", sans-serif;
	font-weight: 400;
}

.lexend-exa{
	font-family: "Lexend Exa", sans-serif;
}

#page-recruit .blue{
	color: #007EFD;
}

#page-recruit .orange{
	color: #FF6F01;
}


/* ==========================================================================
   header
   ========================================================================== */
#page-recruit header{
	width: 100vw;
	height: 70px;
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	box-sizing: border-box;
	padding: 0 5% 0;
	z-index: 100;
}
@media (min-width: 440px){
#page-recruit header{
	height: 100px;
}
}
@media (min-width: 960px){
#page-recruit header{
	height: 120px;
	align-items: center;
	justify-content: space-between;
	padding: 0 40px 0;
}
}


/* logo
========================*/
#page-recruit header .logo{
	width: 33vw;
	height: auto;
}
@media (min-width: 440px){
#page-recruit header .logo{
	width: 22vw;
}
}
@media (min-width: 960px){
#page-recruit header .logo{
	width: 184px;
	height: auto;
}
}

#page-recruit .logo img{
	width: 100%;
	height: auto;
}

@media (min-width: 960px){
.page header .logo{
	opacity: 0;
}
}


/* recruit-header-nav
========================*/
#page-recruit .recruit-header-nav{
	display:none;
}
@media (min-width: 960px){
#page-recruit .recruit-header-nav{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
}
}

#page-recruit .recruit-header-nav ul{
	width: 366px;
	height: 56px;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	background-color: #FFF;
	border-radius: 100px;
	gap: 18px;
	margin-left: 0;
}

#page-recruit.page-entry .recruit-header-nav ul{
	width: 366px;
	height: 56px;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	background-color: #FFF;
	border: 1px solid #111;
	border-radius: 100px;
	gap: 18px;
	margin-left: 0;
}

#page-recruit .recruit-header-nav ul li{
	height: auto;
	line-height: 1;
	display: block;
}

#page-recruit .recruit-header-nav ul li a{
	color: #111;
	width: auto;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.04em;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	transition: all 0.2s ease;
}

#page-recruit .recruit-header-nav ul li a:hover{
	color: var(--blue-color);
}

/* btn-join
========================*/
#page-recruit .recruit-header-nav .btn-join a{
	color: #FFF;
	width: 122px;
	height: 56px;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	background-color: #111;
	box-sizing: border-box;
	transition: all 0.3s ease;
	margin-left: 22px;
}

#page-recruit .recruit-header-nav .btn-join a:hover{
	color: var(--blue-color);
}

#page-recruit.page-entry .recruit-header-nav .btn-join a{
	color: #FFF;
	width: 122px;
	height: 56px;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	background-color: #111;
	border: 1px solid #111;
	box-sizing: border-box;
	transition: all 0.3s ease;
	margin-left: 22px;
}

#page-recruit.page-entry .recruit-header-nav .btn-join a:hover{
	color: var(--blue-color);
}

/* btn-entry
========================*/
#page-recruit .recruit-header-nav .btn-entry a{
	color: #FFF;
	width: 150px;
	height: 56px;
	font-size: 2.2rem;
	letter-spacing: -0.02em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	border: 1px solid #FFF;
	box-sizing: border-box;
	transition: all 0.3s ease;
	margin-left: 10px;
}

#page-recruit .recruit-header-nav .btn-entry a:hover{
	color: var(--blue-color);
	background-color: #FFF;
}

#page-recruit.page-entry .recruit-header-nav .btn-entry a{
	color: #FFF;
	width: 150px;
	height: 56px;
	font-size: 2.2rem;
	letter-spacing: -0.02em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	border: 1px solid var(--blue-color);
	background-color: var(--blue-color);
	box-sizing: border-box;
	transition: all 0.3s ease;
	margin-left: 10px;
}

#page-recruit.page-entry .recruit-header-nav .btn-entry a:hover{
	color: var(--blue-color);
	background-color: #FFF;
}


/* ==========================================================================
   floating-btn fixed
   ========================================================================== */
.floating-btn{
	position: fixed;
	bottom: 12px;
	right: 12px;
	z-index: 500;
}
@media (min-width: 960px){
.floating-btn{
	bottom: 26px;
	right: 26px;
}
}

.floating-btn a{
	color: #FFF;
	width: 90px;
	height: 90px;
	font-size: 1.7rem;
	line-height: 1;
	letter-spacing: -0.02em;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	background-color: #00a6ff;
	padding-top: 8px;
	box-sizing: border-box;
}
@media (min-width: 960px){
.floating-btn a{
	width: 120px;
	height: 120px;
	font-size: 2.2rem;
	gap: 7px;
	padding-top: 14px;
	transition: all 0.2s ease-in-out;
}
}

@media (min-width: 960px){
.floating-btn a:hover{
	background-color: #349DED;
	transform: scale(1.1);
}
}

.floating-btn a .arrow img{
	width: 14px;
	height: 14px;
}
@media (min-width: 960px){
.floating-btn a .arrow img{
	width: 16px;
	height: 16px;
}
}



/* ==========================================================================
   wrap,inner,block
   ========================================================================== */
@media (min-width: 440px) {
#page-recruit .contents_wrap .wrap{
  padding: 0 5vw;
}
}
@media (min-width: 960px){
#page-recruit .contents_wrap .wrap{
	max-width: calc(1300px + 5vw + 5vw);
	padding: 0 5vw;
}
}

#recruit-company .inner,
#recruit-people .inner,
#recruit-work .inner,
#recruit-join .inner{
	width: 100%;
	border-radius: 30px;
	background-color: #F2F2F2;
	box-sizing: border-box;
	padding: 0;
}
@media (min-width: 960px){
#recruit-company .inner,
#recruit-people .inner,
#recruit-work .inner,
#recruit-join .inner{
	border-radius: 80px;
}
}

#recruit-company .block,
#recruit-people .block,
#recruit-work .block,
#recruit-join .block{
	width: 100%;
	box-sizing: border-box;
	padding: 0 12px 12px 12px;
}
@media (min-width: 440px){
#recruit-company .block,
#recruit-people .block,
#recruit-work .block,
#recruit-join .block{
	border-radius: 60px;
	padding: 0 4.5vw 4.5vw 4.5vw;
}
}

@media (min-width: 960px){
#recruit-company .block,
#recruit-people .block,
#recruit-work .block,
#recruit-join .block{
	border-radius: 80px;
	padding: 0 60px 60px 60px;
}
}


/* ==========================================================================
   section_head_block
   ========================================================================== */
#page-recruit .section_head_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-start;
	gap: 10px;

}
@media (min-width: 960px){
#page-recruit .section_head_block{
	gap: 28px;
}
}

#recruit-people .section_head_block{
	align-items: flex-start;
}

#recruit-work .section_head_block,
#recruit-join .section_head_block{
	gap: 6px;
}
@media (min-width: 960px){
#recruit-work .section_head_block,
#recruit-join .section_head_block{
	gap: 6px;
}
}

#recruit-join .section_head_block{
	align-items: center;
}

#page-recruit .section_head_en{
	color: var(--blue-color);
	font-size: 4.2em;
	line-height: 1;
	font-weight: 900!important;
	letter-spacing: -0.1em;
	text-align: right;
	overflow: hidden;
	padding: 8px 6px 0 0;
	margin: -36px 0 0 0;
}
@media (min-width: 960px){
#page-recruit .section_head_en{
	font-size: 16.2rem;
	padding: 20px 10px 0 0;
	margin: -98px 0 0 0;
}
}

#recruit-people .section_head_en{
	color: var(--orange-color);
	text-align: left;
	margin-left: -6px;
}
@media (min-width: 960px){
#recruit-people .section_head_en{
	margin-left: -18px;
}
}

#recruit-join .section_head_en{
	color: var(--orange-color);
	text-align: center;
	margin-left: -6px;
}

#page-recruit .section_head{
	font-size: 2.2em;
	line-height: 1.0;
	letter-spacing: 0.06em;
}
@media (min-width: 960px){
#page-recruit .section_head{
	font-size: 5.6rem;
}
}

#recruit-join .section_head{
	text-align: center;
}


/* ==========================================================================
   head_block
   ========================================================================== */
#page-recruit .head_block{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
}
@media (min-width: 960px){
#page-recruit .head_block{
	gap: 12px;
}
}

#page-recruit .head_block h3.head{
	font-size: 3.2rem;
	line-height: 1.1;
	letter-spacing: 0.02em;
	text-align: center;
}
@media (min-width: 960px){
#page-recruit .head_block h3.head{
	font-size: 6.0rem;
	line-height: 1;
}
}

#page-recruit .head_block .article{
	font-size: 1.5rem;
	font-weight: 700;
	text-align: center;
}
@media (min-width: 960px){
#page-recruit .head_block .article{
	font-size: 1.8rem;
}
}


/* ==========================================================================
   hero-bg
   ========================================================================== */
#recruit-hero-bg{
	width: 100vw;
	height: 82vh!important;
	min-height: 670px;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-image: url(../img/recruit/recruit-hero-sp.webp);
}
@media (min-width: 440px){
#recruit-hero-bg{
	height: 100vh!important;
	background-image: url(../img/recruit/recruit-hero-tb.webp);
}
}
@media (min-width: 960px){
#recruit-hero-bg{
	height: 100vh!important;
	background-size: cover;
	background-position: center;
	background-image: url(../img/recruit/recruit-hero.webp);
}
}

#recruit-hero-bg-b{
	width: 100vw;
	height: 82vh!important;
	min-height: 660px;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -2;
	background: linear-gradient(104deg, rgba(255, 111, 1, 1) 50%, rgba(0, 126, 253, 1) 50%);
}
@media (min-width: 440px){
#recruit-hero-bg-b{
	height: 100vh!important;
}
}


/* ==========================================================================
   recruit-hero
   ========================================================================== */
#recruit-hero{
	width: 100vw;
	height: 82vh;
	min-height: 670px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: -1;
}
@media (min-width: 440px){
#recruit-hero{
	height: 100vh;
}
}

#recruit-hero .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#recruit-hero .section-head{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 1;
	overflow: hidden;
}
@media (min-width: 960px){
#recruit-hero .section-head{
	width: 100%;
}
}

#recruit-hero .first-head{
	color: #FFF;
	width: 100%;
	font-size: 2.3rem;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
	overflow: hidden;
	margin-top: 22vw;
}
@media (min-width: 440px){
#recruit-hero .first-head{
	font-size: 4.8rem;
	margin-top: 15vw;
}
}
@media (min-width: 960px){
#recruit-hero .first-head{
	font-size: 5.4rem;
	font-size: clamp(2.6rem, 3.7vw, 9.5rem);
	margin-top: 100px;
}
}

#recruit-hero .main-head{
	width: 81%;
	height: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding-top: 20px;
}
@media (min-width: 440px){
#recruit-hero .main-head{
	padding-top: 32px;
}
}
@media (min-width: 960px){
#recruit-hero .main-head{
	width: 800px;
	width: 55vw;
	padding-top: 32px;
}
}

#recruit-hero .main-head svg{
	width: 100%;
	height: auto;
	overflow: visible;
}
@media (min-width: 960px){
#recruit-hero .main-head svg{
	width: 800px;
	width: 55vw;
}
}

#recruit-hero .end-head{
	color: #FFF;
	width: 100%;
	font-size: 4.5rem;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
	overflow: hidden;
	padding-top: 8px;
}
@media (min-width: 440px){
#recruit-hero .end-head{
	font-size: 8rem;
	padding-top: 20px;
}
}
@media (min-width: 960px){
#recruit-hero .end-head{
	font-size: 9.7rem;
	font-size: clamp(5.0rem, 6.7vw, 17.0rem);
	padding-top: 0.8vw;
}
}

#recruit-hero .article{
	color: #111;
	font-size: 3.0rem;
	line-height: 1.05;
	letter-spacing: 0.02em;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0px;
	z-index: 1;
	margin-top: 14px;
}
@media (min-width: 440px){
#recruit-hero .article{
	font-size: 4.8rem;
	gap: 8px;
	margin-top: 40px;
}
}
@media (min-width: 960px){
#recruit-hero .article{
	font-size: 4.8rem;
	font-size: clamp(2.3rem, 3.4vw, 8.5rem);
	line-height: 1.1;
	text-align: left;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0;
	margin-top: 13px;
}
}

#recruit-hero .article img{
	width: 34vw;
	height: auto;
}
@media (min-width: 440px){
#recruit-hero .article img{
	width: 28vw;
	height: auto;
}
}
@media (min-width: 960px){
#recruit-hero .article img{
	width: 158px;
	width: 11vw;
	margin: 0 0 -5px -2vw;
}
}

#recruit-hero .c-name{
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	margin-top: 80px;
}
@media (min-width: 440px){
#recruit-hero .c-name{
	margin-top: 120px;
}
}
@media (min-width: 960px){
#recruit-hero .c-name{
	margin-top: 32px;
}
}

#recruit-hero .c-name img{
	width: 54%;
	height: auto;
}
@media (min-width: 440px){
#recruit-hero .c-name img{
	width: 40%;
}
}
@media (min-width: 960px){
#recruit-hero .c-name img{
	width: 312px;
	width: 21vw;
}
}


/* ==========================================================================
   intro
   ========================================================================== */
#page-recruit #intro{
	background-color: #FFF;
	padding: 60px 0 0 0;
}
@media (min-width: 960px){
#page-recruit #intro{
	padding: 120px 0 0 0;
}
}

#page-recruit #intro .text_block{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 34px;
}
@media (min-width: 960px){
#page-recruit #intro .text_block{
	flex-direction: row;
	align-items: flex-end;
	justify-content: center;
	gap: 80px;
}
}

#page-recruit #intro .text_block .head{
	width: 100%;
}
@media (min-width: 960px){
#page-recruit #intro .text_block .head{
	width: 758px;
}
}

#page-recruit #intro .text_block .head img{
	width: 100%;
	height: auto;
	display: block;
}

#page-recruit #intro .text_block .article{
	width: 100%;
	font-size: 1.9rem;
	font-weight: 900;
	letter-spacing: 0;
	text-align: justify;
	line-height: 1.5;
}
@media (min-width: 960px){
#page-recruit #intro .text_block .article{
	width: 432px;
	font-size: 2.65rem;
	line-height: 1.7;
}
}


/* ==========================================================================
   recruit-company
   ========================================================================== */
#recruit-company{
	padding: 60px 0 0 0;
}
@media (min-width: 960px){
#recruit-company{
	padding: 200px 0 0 0;
}
}


/* company-message
   ========================================================================== */
.company-message{
	padding: 0 0 0 0;
}
@media (min-width: 960px){
.company-message{
	padding: 0 0 0 0;
}
}

.company-message .section-head{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 8px;
	position: absolute;
	top: 0;
	left: 5vw;
	z-index: 1;
}
@media (min-width: 960px){
.company-message .section-head{
	gap: 2px;
}
}

.company-message .head-en{
	width: 100%;
	height: auto;
	overflow: hidden;
}
@media (min-width: 960px){
.company-message .head-en{
	width: 1280px;
}
}

.company-message .head-en svg{
	width: 100%;
	height: auto;
	overflow: visible;
	padding-top: 10px;
}
@media (min-width: 960px){
.company-message .head-en svg{
	width: 100%;
	padding-top: 20px;
}
}

.company-message h2.head{
	width: 100%;
	font-size: 1.2rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0.02em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
}
@media (min-width: 960px){
.company-message h2.head{
	font-size: 1.5rem;
	letter-spacing: 0.06em;
	gap: 6px;
}
}

/* text_wrap
========================*/
.company-message .text_wrap{
	width: 100%; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 34px;
	position: relative;
	border-radius: 26px;
	box-sizing: border-box;
	padding: 0 0 0 0;
}
@media (min-width: 440px){
.company-message .text_wrap{
	padding: 40px 0 0 0;
}
}
@media (min-width: 960px){
.company-message .text_wrap{
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0;
	padding: 0 0 0 0;
}
}

/* text_block
========================*/
.company-message .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	order: 2;
}
@media (min-width: 960px){
.company-message .text_block{
	width: 520px;
	order: 1;
}
}

.company-message .s-head_en{
	width: 100%;
	font-size: 2.8rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: -0.04em;
}
@media (min-width: 960px){
.company-message .s-head_en{
	font-size: 5.0rem;
}
}

.company-message .s-head{
	width: 100%;
	font-size: 1.2rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0.02em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
	margin: 10px 0 26px 0;
}
@media (min-width: 960px){
.company-message .s-head{
	font-size: 1.5rem;
	letter-spacing: 0.06em;
	gap: 4px;
	margin: 10px 0 60px 0;
}
}

.company-message .s-head svg{
	width: 7px;
	height: 7px;
}

.company-message .text_block .head{
	width: 100%;
	font-size: 2.3rem;
	font-weight: 900;
	line-height: 1.6;
}
@media (min-width: 960px){
.company-message .text_block .head{
	font-size: 3.4rem;
	font-weight: 900;
	line-height: 1.5;
}
}

.company-message .text_block .article{
	font-size: 1.5rem;
	font-weight: 600;
	text-align: justify;
}
@media (min-width: 960px){
.company-message .text_block .article{
	font-size: 1.55rem;
	line-height: 1.8;
}
}

.company-message .text_block .article2{
	font-size: 1.8rem;
	font-weight: 700;
}
@media (min-width: 960px){
.company-message .text_block .article2{
	font-size: 1.8rem;
}
}

.company-message .text_block .post{
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 600;
}
@media (min-width: 960px){
.company-message .text_block .post{
	font-size: 1.4rem;
}
}

.company-message .text_block .name{
	font-size: 2.2rem;
	line-height: 1;
	font-weight: 700;
}
@media (min-width: 960px){
.company-message .text_block .name{
	font-size: 2.6rem;
}
}

/* img_block
========================*/
.company-message .img_block{
	width: 100%;
	height: auto;
	position: relative;
	order: 1;
}
@media (min-width: 960px){
.company-message .img_block{
	width: 49%;
	order: 2;
}
}

.company-message .img{
	height: 400px;
	border-radius: 30px 0 0 30px;
	overflow: hidden;
	background-color: #fafafa;
	background-image: url(../img/home/home-overview-img.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-left: 2vw;
	margin-right: calc(50% - 50vw);
}
@media (min-width: 960px){
.company-message .img{
	width: 52.0vw;
	max-width: 780px;
	height: 550px;
	border-radius: 40px;
	margin-left: 0;
	position: absolute;
	top: 78px;
}
}


/* interview
   ========================================================================== */
.interview{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.interview{
	padding: 60px 0 0 0;
}
}

#page-recruit .interview .head_block{
	flex-direction: row;
	gap: 14px;
}
@media (min-width: 960px){
#page-recruit .interview .head_block{
	gap: 34px;
}
}

.interview .head_block img{
	width: 90px;
	height: auto;
}
@media (min-width: 960px){
.interview .head_block img{
	width: 120px;
	height: auto;
}
}

.interview .head_block h3.head{
	text-align: left!important;
}
@media (min-width: 960px){
.interview .head_block h3.head{
	text-align: center;
}
}

/* interview-list
========================*/
.interview-list{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 16px;
	margin: 15px 0 0 0;
}
@media (min-width: 960px){
.interview-list{
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 40px;
	margin: 20px 0 0 0;
}
}

.interview-list ul{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 16px;
}
@media (min-width: 960px){
.interview-list ul{
	width: calc((100% - 40px * 1) / 2); 
	gap: 20px;
}
}

.interview-list ul li.card{
	width: 100%; 
	height: auto;
	background-color: var(--blue-color);
	border-radius: 16px;
	box-sizing: border-box;
	display: inline-block;
	padding: 20px 16px 16px 16px;
}
@media (min-width: 960px){
.interview-list ul li.card{
	border-radius: 30px;
	padding: 36px 30px 26px 30px;
}
}

.interview-list ul li.card .q_block{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
}

.interview-list ul li.card .q_block img{
	width: 44px;
	height: 44px;
}
@media (min-width: 960px){
.interview-list ul li.card .q_block img{
	width: 50px;
	height: 50px;
}
}


.interview-list ul li.card .q_block .question{
	color: var(--orange-color);
	width: 90%;
	height: 48px;
	font-size: 1.5rem;
	font-weight: 900;
	border-radius: 100px;
	position: relative;
	background-color: #FFF;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}
@media (min-width: 960px){
.interview-list ul li.card .q_block .question{
	width: 90%;
	height: 48px;
	font-size: 2.1rem;
}
}

.interview-list ul li.card .q_block .question::after{
	content: '';
	width: 14px;
	height: 14px;
	position: absolute;
	top: 50%;
	left: -8px;
	margin-top: -7px;
	background-image: url(../img/recruit/icon-triangle.svg);
  background-size: 14px 14px;
	background-position: bottom right;
	background-repeat: no-repeat;
}
@media (min-width: 960px){
.interview-list ul li.card .q_block .question::after{
	content: '';
	width: 14px;
	height: 14px;
	left: -8px;
	margin-top: -7px;
  background-size: 14px 14px;
}
}

.interview-list ul li.card .answer{
	color: #FFF;
	font-size: 1.45rem;
	font-weight: 400;
	text-align: justify;
	margin-top: 12px;
}
@media (min-width: 960px){
.interview-list ul li.card .answer{
	font-size: 1.55rem;
	line-height: 1.7;
	margin-top: 20px;
}
}

.interview-list ul li.card .answer2{
	font-size: 1.7rem;
	text-align: center;
}
@media (min-width: 960px){
.interview-list ul li.card .answer2{
	font-size: 2.2rem;
}
}


/* company-numbers
   ========================================================================== */
.company-numbers{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.company-numbers{
	padding: 70px 0 0 0;
}
}

#page-recruit .company-numbers .head_block h3.head{
	font-size: 4.0rem;
	line-height: 1;
	letter-spacing: 0.02em;
	text-align: center;
}
@media (min-width: 960px){
#page-recruit .company-numbers .head_block h3.head{
	font-size: 9.0rem;
}
}

.side-scroll-list {
	height: 360px;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
	gap: 0 20px 0 0;
}
@media (min-width: 960px){
.side-scroll-list {
	height: 410px;
	gap: 0 24px 0 0;
}
}

/* numbers-list
========================*/
.company-numbers ul.numbers-list {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
  margin-top: 30px;
}
@media (min-width: 960px){
.company-numbers ul.numbers-list {
	gap: 22px 24px;
  margin-top: 46px;
}
}

.company-numbers ul li.card{
	width: calc((100% - 10px * 1) / 2); 
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 26px 0 16px 0;
}
@media (min-width: 960px){
.company-numbers ul li.card{
	width: calc((100% - 24px * 3) / 4); 
	padding: 42px 0 32px 0;
}
}

.company-numbers ul li .head{
	color: var(--blue-color);
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 0 0 0 0;
}
@media (min-width: 960px){
.company-numbers ul li .head{
	font-size: 2.4rem;
	margin: 0 0 0 0;
}
}

.company-numbers ul li.orange .head{
	color: var(--orange-color);
}

.company-numbers ul li .icon{
	width: auto;
	height: 50px;
	margin: 18px 0 18px 0;
}
@media (min-width: 960px){
.company-numbers ul li .icon{
	width: auto;
	height: 76px;
	margin: 26px 0 16px 0;
}
}

.company-numbers ul li .icon img{
	width: auto;
	height: 100%;
}

.company-numbers ul li .text_block{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	flex-shrink: 0;
	gap: 6px;
}

.company-numbers ul li .value{
	color: var(--blue-color);
	font-size: 4.0rem;
	font-weight: 700;
	line-height: 1;
	font-feature-settings: "palt" 1;
	letter-spacing: -0.04em;
	text-align: center;
}
@media (min-width: 960px){
.company-numbers ul li .value{
	font-size: 7.6rem;
}
}

.company-numbers ul li.orange .value{
	color: var(--orange-color);
}

.company-numbers ul li .first-text{
	color: var(--blue-color);
	font-size: 1.7rem;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	margin: 0 -2px -10px 0;
}
@media (min-width: 960px){
.company-numbers ul li .first-text{
	font-size: 2.8rem;
	margin: 0 -2px -22px 0;
}
}

.company-numbers ul li:last-of-type .first-text{
	margin: 0 -9px -10px 0;
}
@media (min-width: 960px){
.company-numbers ul li:last-of-type .first-text{
	margin: 0 -9px -22px 0;
}
}

.company-numbers ul li.orange .first-text{
	color: var(--orange-color);
}

.company-numbers ul li .end-text{
	color: var(--blue-color);
	font-size: 2.0rem;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	margin: 0 0 -6px 0;
}
@media (min-width: 960px){
.company-numbers ul li .end-text{
	font-size: 3.2rem;
	margin: 0 0 -18px 0;
}
}

.company-numbers ul li:last-of-type .end-text{
	margin: 0 0 -6px -3px;
}
@media (min-width: 960px){
.company-numbers ul li:last-of-type .end-text{
	margin: 0 0 -18px -3px;
}
}

.company-numbers ul li.orange .end-text{
	color: var(--orange-color);
}



/* ==========================================================================
   recruit-people
   ========================================================================== */
#recruit-people{
	padding: 60px 0 0 0;
}
@media (min-width: 960px){
#recruit-people{
	padding: 170px 0 0 0;
}
}


/* people-img
   ========================================================================== */
#recruit-people img.people-1{
	width: 75px;
	height: auto;
	position: absolute;
	top: 13px;
	right: 46px;
}
@media (min-width: 440px){
#recruit-people img.people-1{
	top: 13px;
	right: 17vw;
}
}
@media (min-width: 960px){
#recruit-people img.people-1{
	width: 216px;
	top: -38px;
	right: 270px;
}
}


#recruit-people img.people-2{
	width: 74px;
	height: auto;
	position: absolute;
	top: -13px;
	right: 7px;
}
@media (min-width: 440px){
#recruit-people img.people-2{
	top: -13px;
	right: 9vw;
}
}
@media (min-width: 960px){
#recruit-people img.people-2{
	width: 209px;
	top: -94px;
	right: 100px;
}
}



/* loop-img
   ========================================================================== */
#recruit-people #loop-img{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
#recruit-people #loop-img{
	padding: 90px 0 0 0;
}
}

#recruit-people #loop-img .loop_inner{
	width: 600vw;
	display: flex;
}
@media (min-width: 440px){
#recruit-people #loop-img .loop_inner{
	width: 260vw;
}
}
@media (min-width: 960px){
#recruit-people #loop-img .loop_inner{
	width: 190vw;
}
}

#recruit-people #loop-img ul{
	width: 600vw;
	display: flex;
	gap: 20px;
}
@media (min-width: 440px){
#recruit-people #loop-img ul{
	width: 260vw;
}
}
@media (min-width: 960px){
#recruit-people #loop-img ul{
	width: 190vw;
}
}

#recruit-people #loop-img li{
	width: 64vw;
	height: auto;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 20px;
}
@media (min-width: 960px){
#recruit-people #loop-img li{
	width: 22vw;
	max-width: 420px;
	height: auto;
}
}

#recruit-people #loop-img li img{
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	display: block;
}

.loop_target + .loop_target {
  margin-left: 20px;
}


/* interview
   ========================================================================== */
#recruit-people .interview{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
#recruit-people .interview{
	padding: 70px 0 0 0;
}
}

/* interview-list
========================*/
#recruit-people .interview-list{
	margin: 30px 0 0 0;
}
@media (min-width: 960px){
#recruit-people .interview-list{
	margin: 50px 0 0 0;
}
}

.interview-list ul li.head{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 15px;
	border-radius: 16px;
	background-color: var(--orange-color);
	padding: 14px 10px 16px 10px;
}
@media (min-width: 960px){
.interview-list ul li.head{
	height: 151px;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 40px;
	border-radius: 100px;
	padding: 0;
}
}

.interview-list ul li.head .q_block .name{
	color: #FFF;
	font-size: 3.0rem;
	line-height: 1;
}
@media (min-width: 960px){
.interview-list ul li.head .q_block .name{
	font-size: 4.8rem;
}
}

.interview-list ul li.head .q_block .name span{
	font-size: 1.8rem;
	font-weight: 700;
}

.interview-list ul li.head .a_block{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 5px;
	margin: 0;
}

.interview-list ul li.head .a_block dl{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
}
@media (min-width: 960px){
.interview-list ul li.head .a_block dl{
	gap: 15px;
}
}

.interview-list ul li.head .a_block dt{
	width: 100px;
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 700;
	text-align: center;
	background-color: #FFF;
	border-radius: 6px;
	padding: 4px 0;
}
@media (min-width: 960px){
.interview-list ul li.head .a_block dt{
	width: 110px;
	font-size: 1.5rem;
	padding: 6px 0;
}
}

.interview-list ul li.head .a_block dd{
	color: #FFF;
	font-size: 1.4rem;
}
@media (min-width: 960px){
.interview-list ul li.head .a_block dd{
	font-size: 1.6rem;
}
}


/* people-point
   ========================================================================== */
#recruit-people .people-point{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
#recruit-people .people-point{
	padding: 70px 0 0 0;
}
}

/* people-point-list
========================*/
.people-point ul.people-point-list {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
  margin-top: 30px;
}
@media (min-width: 960px){
.people-point ul.people-point-list {
	gap: 22px 24px;
  margin-top: 46px;
}
}

.people-point ul li.card{
	width: calc((100% - 10px * 1) / 2); 
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 24px 0 20px 0;
}
@media (min-width: 960px){
.people-point ul li.card{
	width: calc((100% - 24px * 3) / 4); 
	padding: 45px 0 47px 0;
}
}

.people-point ul li .number{
	color: #FFF;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.02em;
	text-align: center;
	border-radius: 100px;
	background-color: var(--orange-color);
	padding: 6px 12px 5.4px 12px;
}
@media (min-width: 960px){
.people-point ul li .number{
	font-size: 1.5rem;
	padding: 8px 16px 7px 16px;
}
}

.people-point ul li .head{
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 14px 0 0 0;
}
@media (min-width: 960px){
.people-point ul li .head{
	font-size: 2.4rem;
	margin: 18px 0 0 0;
}
}

.people-point ul li .icon{
	width: auto;
	height: 50px;
	margin: 14px 0 12px 0;
}
@media (min-width: 960px){
.people-point ul li .icon{
	width: auto;
	height: 80px;
	margin: 20px 0 18px 0;
}
}

.people-point ul li .icon img{
	width: auto;
	height: 100%;
}

.people-point ul li .text_block{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	flex-shrink: 0;
	gap: 6px;
}

.people-point ul li .article{
	color: var(--orange-color);
	font-size: 1.7rem;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
}
@media (min-width: 960px){
.people-point ul li .article{
	font-size: 2.1rem;
}
}


/* ==========================================================================
   recruit-work
   ========================================================================== */
#recruit-work{
	padding: 60px 0 50px 0;
}
@media (min-width: 960px){
#recruit-work{
	padding: 170px 0 120px 0;
}
}


/* work-about
   ========================================================================== */
.work-about{
	padding: 30px 0 0 0;
}
@media (min-width: 960px){
.work-about{
	padding: 0 0 0 0;
}
}

/* text_wrap
========================*/
.work-about .text_wrap{
	width: 100%; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0;
	position: relative;
	border-radius: 26px;
	box-sizing: border-box;
	z-index: 0;
}
@media (min-width: 960px){
.work-about .text_wrap{
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0;
	margin-top: -40px;
}
}

.work-about .text_wrap .head{
	width: 100%;
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1.4;
}
@media (min-width: 960px){
.work-about .text_wrap .head{
	font-size: 5.4rem;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: 0.03em;
}
}

/* text_block
========================*/
.work-about .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	order: 2;
}
@media (min-width: 960px){
.work-about .text_block{
	width: 390px;
	height: 346px;
	order: 1;
}
}

.work-about .text_block .article{
	font-size: 1.5rem;
	font-weight: 600;
	text-align: justify;
}
@media (min-width: 960px){
.work-about .text_block .article{
	font-size: 1.7rem;
	line-height: 1.8;
}
}

/* img_block
========================*/
.work-about .img_block{
	width: 100%;
	height: auto;
	order: 1;
	z-index: -1;
}
@media (min-width: 960px){
.work-about .img_block{
	width: 78%;
	order: 2;
	position: absolute;
	top: 116px;
	left: 460px;
}
}

.work-about .img{
	height: 310px;
	border-radius: 30px 0 0 30px;
	overflow: hidden;
	background-color: #fafafa;
	background-image: url(../img/recruit/work-about-img.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-top: 20px;
	margin-left: 2.0vw;
	margin-right: calc(50% - 50vw);
}
@media (min-width: 960px){
.work-about .img{
	width: 100%;
	max-width: 1700px;
	height: 460px;
	border-radius: 40px;
	margin-left: 0;
	margin-top: 0;
}
}


/* work-service
   ========================================================================== */
#recruit-work .work-service{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
#recruit-work .work-service{
	padding: 70px 0 0 0;
}
}

/* service-list
========================*/
#recruit-work .service-list{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 18px;
	margin: 30px 0 0 0;
}
@media (min-width: 960px){
#recruit-work .service-list{
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 34px;
	margin: 40px 0 0 0;
}
}

#recruit-work .service-list li.card{
	color: #FFF;
	width: 100%; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 20px;
	background-color: var(--blue-color);
	position: relative;
	border-radius: 26px;
	box-sizing: border-box;
	padding: 14px;
}
@media (min-width: 960px){
#recruit-work .service-list li.card{
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	border-radius: 34px;
	gap: 0;
	padding: 20px 0 20px 20px;
}
}

@media (min-width: 960px){
#recruit-work .service-list li.card:nth-child(1){
	margin-right: 60px;
}
#recruit-work .service-list li.card:nth-child(2){
	margin-left: 60px;
}
}

#recruit-work .service-list li.card:nth-child(2){
	background-color: var(--orange-color);
}

#recruit-work .service-list li.card .number{
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	border-radius: 20px 0 20px 0;
	background-color: var(--blue-color);
	position: absolute;
	top: 0;
	left: 0;
	right: auto;
	z-index: 5;
	padding: 8px 22px;
}
@media (min-width: 960px){
#recruit-work .service-list li.card .number{
	font-size: 2.0rem;
	border-radius: 24px 0 20px 0;
	padding: 10px 30px;
}
}

#recruit-work .service-list li.card:nth-child(2) .number{
	background-color: var(--orange-color);
}

/* img_block
========================*/
#recruit-work .service-list li.card .img_block{
	width: 100%;
	height: auto;
	aspect-ratio: 60 / 40;
	background-color: #EEE;
	border-radius: 14px;
	overflow: hidden;
	position: relative;
}
@media (min-width: 960px){
#recruit-work .service-list li.card .img_block{
	width: 570px;
	width: 44%;
	aspect-ratio: 60 / 40;
	border-radius: 22px;
}
}

#recruit-work .service-list li.card .img_block img{
	width: auto;
	height: 100%;
}

/* text_block
========================*/
#recruit-work .service-list li.card .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
	z-index: 1;
	padding: 0 7px 6px;
}
@media (min-width: 960px){
#recruit-work .service-list li.card .text_block{
	width: 56%;
	align-items: flex-start;
	padding: 0 5.0%;
}
}

#recruit-work .service-list li.card .head{
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	border-bottom: 1px dashed #F1F1F1;
	padding-bottom: 14px;
}
@media (min-width: 960px){
#recruit-work .service-list li.card .head{
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 8px;
	padding-bottom: 24px;
}
}

#recruit-work .service-list li.card .article{
	font-size: 1.4rem;
	line-height: 1.7;
	text-align: justify;
	margin-top: 14px;
}
@media (min-width: 960px){
#recruit-work .service-list li.card .article{
	font-size: 1.6rem;
	line-height: 1.8;
	margin-top: 24px;
}
}

/* work-flow
============================================================ */
.work-flow{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.work-flow{
	padding: 70px 0 0 0;
}
}

/* list
========================*/
.work-flow .flow-list{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 16px;
	margin: 30px 0 0 0;
}
@media (min-width: 960px){
.work-flow .flow-list{
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin: 40px 0 0 0;
}
}

.work-flow .flow-list .card{
	width: 100%; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 18px;
	background-color: #FFF;
	position: relative;
	border-radius: 18px;
	box-sizing: border-box;
	padding: 12px 12px 14px 12px;
}
@media (min-width: 960px){
.work-flow .flow-list .card{
	width: calc((100% - 30px * 2) / 3); 
	gap: 26px;
	border-radius: 30px;
	padding: 16px 16px 20px 16px;
}
}

/* img_block
========================*/
.work-flow .flow-list .card .img_block{
	width: 100%;
	height: auto;
	aspect-ratio: 10 / 6.5;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #ddd;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
}
@media (min-width: 960px){
.work-flow .flow-list .card .img_block{
	width: 100%;
	aspect-ratio: 33.7 / 23;
	border-radius: 14px;
}
}

.work-flow .flow-list .card .img_block img{
	width: 100%;
	height: auto;
}

/* text_block
========================*/
.work-flow .flow-list .card .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
	padding: 0 10px;
}
@media (min-width: 960px){
.work-flow .flow-list .card .text_block{
	width: 100%;
	align-items: flex-start;
	padding: 0 8px;
}
}

.work-flow .flow-list .number{
	color: #FFF;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.02em;
	text-align: center;
	border-radius: 100px;
	background-color: var(--blue-color);
	padding: 6px 12px 5.4px 12px;
}
@media (min-width: 960px){
.work-flow .flow-list .number{
	font-size: 1.3rem;
	padding: 8px 14px 7px 14px;
}
}

.work-flow .flow-list .head{
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
	border-bottom: 1px dashed #CACACA;
	padding-top: 10px;
	padding-bottom: 15px;
}
@media (min-width: 960px){
.work-flow .flow-list .head{
	font-size: 2.4rem;
	font-weight: 700;
	padding-top: 15px;
	padding-bottom: 22px;
}
}

.work-flow .flow-list .article{
	font-size: 1.4rem;
	line-height: 1.7;
	margin-top: 10px;
}
@media (min-width: 960px){
.work-flow .flow-list .article{
	font-size: 1.55rem;
	margin-top: 16px;
}
}


/* ==========================================================================
   recruit-join
   ========================================================================== */
#recruit-join{
	padding: 60px 0 0 0;
}
@media (min-width: 960px){
#recruit-join{
	padding: 170px 0 0 0;
}
}

/* join-outline
   ========================================================================== */
.join-outline{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.join-outline{
	padding: 70px 0 0 0;
}
}

/* join-outline-list
========================*/
.join-outline ul.join-outline-list{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: enter;
	border-radius: 30px;
	background-color: #FFFFFF;
	gap: 20px;
	box-sizing: border-box;
	padding: 34px 20px 30px;
}
@media (min-width: 960px){
.join-outline ul.join-outline-list{
	gap: 9px;
	border-radius: 50px;
	padding: 36px 0;
}
}

.join-outline ul li.card{
	width: 100%; 
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
}
@media (min-width: 960px){
.join-outline ul li.card{
	width: 880px; 
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 28px;
}
}

.join-outline ul li.card .head{
	color: #FFF;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	border-radius: 100px;
	background-color: var(--orange-color);
	padding: 11.4px 30px 12px 30px;
}
@media (min-width: 960px){
.join-outline ul li.card .head{
	font-size: 2.0rem;
	padding: 11.4px 30px 12px 30px;
}
}

.join-outline ul li.card .article{
	font-size: 1.55rem;
	font-weight: 600;
	text-align: justify;
	text-align: center;
}
@media (min-width: 960px){
.join-outline ul li.card .article{
	font-size: 2.0rem;
	line-height: 1;
	text-align: left;
}
}


/* join-hope
   ========================================================================== */
.join-hope{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.join-hope{
	padding: 70px 0 0 0;
}
}

/* hope-list
========================*/
.join-hope ul.hope-list{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 12px;
  margin-top: 30px;
}
@media (min-width: 960px){
.join-hope ul.hope-list{
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
  margin-top: 40px;
}
}

.join-hope ul li.card{
	width: 100%; 
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 26px 0 22px 0;
}
@media (min-width: 960px){
.join-hope ul li.card{
	width: calc((100% - 20px * 2) / 3); 
	padding: 38px 0 40px 0;
}
}

.join-hope ul li .number{
	color: #FFF;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	border-radius: 100px;
	background-color: var(--orange-color);
	position: relative;
	padding: 13px 22px 13px 22px;
}
@media (min-width: 960px){
.join-hope ul li .number{
	font-size: 2.4rem;
	padding: 15px 26px 15px 26px;
}
}

.join-hope ul li .number::after{
	content: '';
	width: 12px;
	height: 11px;
	position: absolute;
	bottom: -10px;
	left: 24px;
	background-image: url(../img/recruit/icon-hope-triangle.svg);
  background-size: 12px 11px;
	background-position: bottom right;
	background-repeat: no-repeat;
}
@media (min-width: 960px){
.join-hope ul li .number::after{
	content: '';
	width: 14px;
	height: 14px;
	bottom: -10px;
	left: 24px;
  background-size: 12px 11px;
}
}

.join-hope ul li .head{
	font-size: 2.0rem;
	font-weight: 800;
	line-height: 1.5;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 20px 0 0 0;
}
@media (min-width: 960px){
.join-hope ul li .head{
	font-size: 2.4rem;
	margin: 26px 0 0 0;
}
}

.join-hope .answer{
	width: 100%;
	color: #FFF;
	font-size: 1.9rem;
	font-weight: 900;
	line-height: 1.5;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	background-color: var(--orange-color);
	box-sizing: border-box;
	padding: 20px 6px 22px 6px;
	margin: 36px 0 0 0;
}
@media (min-width: 960px){
.join-hope .answer{
	width: 870px;
	height: 110px;
	font-size: 2.9rem;
	line-height: 1.3;
	letter-spacing: 0.08em;
	padding: 0;
	margin: 40px auto 0;
}
}

.join-hope .article{
	font-size: 1.5rem;
	font-weight: 600;
	text-align: justify;
	margin-top: 18px;
}
@media (min-width: 960px){
.join-hope .article{
	font-size: 1.7rem;
	line-height: 1.7;
	text-align: center;
	margin-top: 24px;
}
}


/* join-point
   ========================================================================== */
.join-point{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
.join-point{
	padding: 70px 0 0 0;
}
}

/* people-point-list
========================*/
.join-point ul.join-point-list {
	width: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 12px;
  margin-top: 30px;
}
@media (min-width: 960px){
.join-point ul.join-point-list {
	gap: 20px;
  margin-top: 40px;
}
}

.join-point ul li.card{
	width: 100%; 
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 34px 20px 34px 20px;
}
@media (min-width: 960px){
.join-point ul li.card{
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 30px;
	padding: 34px 32px 34px 40px;
}
}

.join-point ul li .number{
	color: #FFF;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.02em;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	order: 1;
	border-radius: 100px;
	background-color: var(--orange-color);
	padding: 6px 12px 5.4px 12px;
}
@media (min-width: 960px){
.join-point ul li .number{
	width: 136px;
	height: 54px;
	font-size: 1.9rem;
	padding: 0;
}
}

.join-point ul li .text_block{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
@media (min-width: 960px){
.join-point ul li .text_block{
	width: 760px;
}
}

.join-point ul li .head{
	font-size: 2.2rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 0 0 20px 0;
}
@media (min-width: 960px){
.join-point ul li .head{
	font-size: 2.4rem;
	line-height: 1;
	margin: 4px 0 15px 0;
}
}

.join-point ul li .icon{
	width: auto;
	height: 80px;
	order: 2;
}
@media (min-width: 960px){
.join-point ul li .icon{
	width: auto;
	height: 100px;
	order: 3;
}
}

.join-point ul li .icon img{
	width: auto;
	height: 100%;
}

.join-point ul li .text_block{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	gap: 6px;
	order: 3;
}
@media (min-width: 960px){
.join-point ul li .text_block{
	align-items: flex-start;
	justify-content: center;
	gap: 6px;
	order: 2;
}
}

.join-point ul li .text_box{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}
@media (min-width: 960px){
.join-point ul li .text_box{
	flex-direction: row;
	align-items: flex-start;
	justify-content: center;
}
}

.join-point ul li .text_box .article{
	line-height: 1.2;
	text-align: left;
}
@media (min-width: 960px){
.join-point ul li .text_box .article{
	line-height: 1.2;
	text-align: left;
}
}

.join-point ul li .head-sub{
	color: var(--orange-color);
	font-size: 1.6rem;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
}
@media (min-width: 960px){
.join-point ul li .head-sub{
	font-size: 1.8rem;
	line-height: 1;
	margin-right: 8px;
}
}

.join-point ul li .article{
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.7;
	text-align: justify;
}
@media (min-width: 960px){
.join-point ul li .article{
	font-size: 1.55rem;
	line-height: 1.7;
}
}

.join-point ul li .article span{
	font-size: 1.3rem;
	font-weight: 600;
}
@media (min-width: 960px){
.join-point ul li .article span{
	font-size: 1.3rem;
}
}

.join-point ul li ul.article {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 4px;
}
@media (min-width: 960px){
.join-point ul li ul.article{
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.8em;
}
}


/* join-judgment
   ========================================================================== */
.join-judgment{
	padding: 50px 0 40px 0;
}
@media (min-width: 960px){
.join-judgment{
	padding: 90px 0 0 0;
}
}

#page-recruit .join-judgment .head_block h3.head{
	font-size: 3.0rem;
	line-height: 1.2;
}
@media (min-width: 960px){
#page-recruit .join-judgment .head_block h3.head{
	font-size: 6.6rem;
	line-height: 1.1;
}
}


/* ==========================================================================
   job
   ========================================================================== */
#job{
	padding: 40px 0 0 0;
}
@media (min-width: 960px){
#job{
	padding: 130px 0 0 0;
}
}

/* section_head_block
========================*/
#job .section_head_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
}
@media (min-width: 960px){
#job .section_head_block{
	gap: 18px;
}
}

#job .section_head,
#requirements .section_head{
	font-size: 4.6rem;
	line-height: 1;
	text-align: center;
}
@media (min-width: 960px){
#job .section_head,
#requirements .section_head{
	font-size: 9.0rem;
}
}


/* job-list
========================*/
#job .job-list{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 26px;
	margin: 30px 0 0 0;
}
@media (min-width: 960px){
#job .job-list{
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	gap: 50px;
	padding: 0 50px;
	margin: 40px 0 0 0;
}
}

#job .job-list .card{
	color: #FFF;
	width: 100%; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 26px;
	background-color: var(--blue-color);
	position: relative;
	border-radius: 26px;
	box-sizing: border-box;
	padding: 14px 14px 18px 14px;
}
@media (min-width: 960px){
#job .job-list .card{
	width: calc((100% - 50px * 1) / 2); 
	gap: 36px;
	border-radius: 50px;
	padding: 22px 22px 38px 22px;
}
}

#job .job-list .card:nth-child(2){
	background-color: var(--orange-color);
}
@media (min-width: 960px){
#job .job-list .card:nth-child(2){
	margin-top: 50px;
}
}

#job .job-list .card .number{
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	border-radius: 20px 0 20px 0;
	background-color: var(--blue-color);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	padding: 8px 22px;
}
@media (min-width: 960px){
#job .job-list .card .number{
	font-size: 2.0rem;
	border-radius: 24px 0 20px 0;
	padding: 10px 30px;
}
}

#job .job-list .card:nth-child(2) .number{
	background-color: var(--orange-color);
}

/* img_block
========================*/
#job .job-list .card .img_block{
	width: 100%;
	height: auto;
	aspect-ratio: 60 / 46;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	background-color: #EEE;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}
@media (min-width: 960px){
#job .job-list .card .img_block{
	aspect-ratio: 60 / 40;
	border-radius: 30px;
}
}

#job .job-list .card .img_block img{
	width: auto;
	height: 100%;
}

/* text_block
========================*/
#job .job-list .card .text_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	position: relative;
	box-sizing: border-box;
	gap: 6px;
	padding: 0 7px 6px;
}
@media (min-width: 960px){
#job .job-list .card .text_block{
	gap: 10px;
	padding: 0 20px;
}
}

#job .job-list .card .shoulder{
	color: var(--blue-color);
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	border-radius: 100px;
	background-color: #FFF;
	padding: 6px 12px;
}
@media (min-width: 960px){
#job .job-list .card .shoulder{
	font-size: 1.4rem;
	padding: 9px 18px;
}
}

#job .job-list .card:nth-child(2) .shoulder{
	color: var(--orange-color);
}

#job .job-list .head{
	width: 100%;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.04em;
}
@media (min-width: 960px){
#job .job-list .head{
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.4;
}
}

#job table{
	width: 100%;
	padding: 0;
	margin: 8px 0 0 0;
}
@media (min-width: 960px){
#job table{
	margin: 12px 0 0 0;
}
}

#job tr th{
	color: #FFF;
	width: 30%;
	font-size: 1.35rem;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0;
	vertical-align: middle;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding: 7px 0 7px 2px;
}
@media (min-width: 960px){
#job tr th{
	width: 24%;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	padding: 8px 0 8px 2px;
}
}

#job tr td{
	color: #FFF;
	width: 70%;
	font-size: 1.35rem;
	font-weight: 400;
	line-height: 1.3;
	vertical-align: middle;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	padding: 7px 0 7px 0;
}
@media (min-width: 960px){
#job tr td{
	width: 76%;
	font-size: 1.4rem;
	padding: 8px 0 8px 0;
}
}


/* ==========================================================================
   requirements
   ========================================================================== */
#requirements{
	padding: 60px 0 0 0;
}
@media (min-width: 960px){
#requirements{
	padding: 140px 0 0 0;
}
}

#requirements .wrap{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}

#requirements .inner{
	width: 100%;
	border-radius: 30px;
	background-color: #F2F2F2;
	box-sizing: border-box;
	padding: 0 5vw 30px 5vw;
}
@media (min-width: 960px){
#requirements .inner{
	border-radius: 80px;
	padding: 0 120px 80px 120px;
}
}


/* section_head_block
========================*/
#requirements .section_head_block{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin: -20px 0 0 0;
}
@media (min-width: 960px){
#requirements .section_head_block{
	gap: 18px;
	margin: -40px 0 0 0;
}
}


/* requirements-list
========================*/
.requirements-list{
	display: flex;
	flex-direction: column;
	margin: 36px 0 0 0;
}
@media (min-width: 960px){
.requirements-list{
	margin: 50px 0 0 0;
}
}

.requirements-list table{
	width: 100%;
	padding: 0;
	margin: 0;
}

.requirements-list tr th{
	width: 24%;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.6;
	vertical-align: middle;
	vertical-align: top;
	border-top: 1px solid #ddd;
	padding: 10px 0 10px 0;
}
@media (min-width: 960px){
.requirements-list tr th{
	width: 20%;
	font-size: 1.4rem;
	padding: 12px 0 12px 2px;
}
}

.requirements-list tr td{
	width: 76%;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.6;
	vertical-align: middle;
	border-top: 1px solid #ddd;
	padding: 10px 0 10px 14px;
}
@media (min-width: 960px){
.requirements-list tr td{
	width: 80%;
	font-size: 1.4rem;
	padding: 12px 20px 12px 20px;
}
}

.requirements-list tr:last-of-type th{
	border-bottom: 1px solid #ddd;
}

.requirements-list tr:last-of-type td{
	border-bottom: 1px solid #ddd;
}


/* ==========================================================================
   entry-btn
   ========================================================================== */
#entry-btn{
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 50px 0 50px 0;
}
@media (min-width: 960px){
#entry-btn{
	padding: 60px 0 140px 0;
}
}

#entry-btn .entry-btn{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

#entry-btn .entry-btn a{
	color: #FFF;
	width: 90%;
	max-width: 340px;
	height: 62px;
	font-size: 1.7rem;
	font-weight: 700;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	border-radius: 100px;
	background-color: var(--blue-color);
	box-sizing: border-box;
	padding: 0 10px 0 30px;
}
@media (min-width: 960px){
#entry-btn .entry-btn a{
	width: 460px;
	max-width: none;
	height: 96px;
	font-size: 2.6rem;
	letter-spacing: 0.08em;
	padding: 0 14px 0 40px;
}
}

/* arrow
========================*/
#entry-btn .entry-btn a .arrow{
	width: 44px;
	height: 44px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border-radius: 50%;
	background-color: #00A6FF;
	box-sizing: border-box;
}
@media (min-width: 960px){
#entry-btn .entry-btn a .arrow{
	width: 70px;
	height: 70px;
	transition: all 0.3s ease;
}
}

@media (min-width: 960px){
#entry-btn .entry-btn a:hover .arrow{
	transform: scale(1.14);
}
}

#entry-btn .entry-btn a .arrow img{
	width: 12px!important;
	height: 12px!important;
}
@media (min-width: 960px){
#entry-btn .entry-btn a .arrow img{
	width: 20px!important;
	height: 20px!important;
}
}


/* ==========================================================================
   footer-recruit
   ========================================================================== */
#page-recruit #footer{
	background-image: none;
	background-color: var(--blue-color);
	padding: 50px 0 30px 0;
	margin-top: 0;
}
@media (min-width: 960px){
#page-recruit #footer{
	padding: 90px 0 70px 0;
}
}

#page-recruit #footer .footer-logo{
	margin: 0 0 30px 0;
}
@media (min-width: 960px){
#page-recruit #footer .footer-logo{
	margin: 0 0 60px 0;
}
}

/* text_block
========================*/
#page-recruit #footer .content .text_block{
	width: 100%;
	height: auto;
	position: relative;
  display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	border-bottom: 0;
	padding: 0 0 28px 0;
	margin:  0;
}
@media (min-width: 960px){
#page-recruit #footer .content .text_block{
	width: auto;
	height: 280px;
	border-bottom: 0;
	padding: 0;
	margin: 0;
}
}

/* footer-nav
========================*/
#page-recruit #footer ul.footer-nav{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0;
	display: none;
}
@media (min-width: 960px){
#page-recruit #footer ul.footer-nav{
	width: auto;
	display: flex;
	margin: 0;
}
}

#page-recruit #footer .footer-nav li{
	width: 100%;
}
@media (min-width: 960px){
#page-recruit #footer .footer-nav li{
	width: auto;
	margin-left: 38px;
}
}

/* view-btn
========================*/
.link-btn{
	width: 100%;
	margin: 0px 0 130px 0;
}
@media (min-width: 960px){
.link-btn{
	width: auto;
	position: absolute;
	top: 56px;
	right: 0;
	margin: 0;
}
}

.link-btn a{
	font-size: 1.5rem;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
}
@media (min-width: 960px){
.link-btn a{
	height: 40px;
	font-size: 1.6rem;
	gap: 12px;
}
}

.link-btn a span{
	order: 2;
}
@media (min-width: 960px){
.link-btn a span{
	order: 1;
}
}

/* arrow
========================*/
.link-btn a .arrow{
	width: 36px;
	height: 36px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border-radius: 50%;
	background-color: #00A6FF;
	box-sizing: border-box;
	order: 1;
}
@media (min-width: 960px){
.link-btn a .arrow{
	width: 40px;
	height: 40px;
	order: 2;
	transition: all 0.3s ease;
}
}

@media (min-width: 960px){
.link-btn a:hover .arrow{
	transform: scale(1.2);
}
}

.link-btn a .arrow img{
	width: 12px!important;
	height: 12px!important;
}
@media (min-width: 960px){
.link-btn a .arrow img{
	width: 16px!important;
	height: 16px!important;
}
}


#page-recruit #footer .copyright{
  font-size: 1.0rem;
	font-family: "Noto Sans JP", sans-serif;
}
