/* ======================================
RECRUIT SINGLE
single-recruit_job
完全スコープ版
====================================== */

.recruit-single{

overflow:hidden;
position:relative;

}


/* ======================================
MAIN
====================================== */

.recruit-single .recruit-single-wrap{

display:grid;

grid-template-columns:

minmax(0,.95fr)
minmax(420px,1fr);

gap:90px;

align-items:start;

margin:100px 0 160px;

position:relative;

}


.recruit-single .recruit-single-wrap:before{

content:"";

position:absolute;

top:-50px;
left:50%;

transform:
translateX(-50%);

width:80px;
height:1px;

background:

linear-gradient(
90deg,

transparent,

rgba(188,158,120,.9),

transparent
);

}



/* ======================================
LEFT
====================================== */

.recruit-single .left{

display:flex;

flex-direction:column;

gap:70px;

}


/* ======================================
RIGHT IMAGE
====================================== */

.recruit-single .right{

position:relative;

overflow:hidden;

}


.recruit-single .right img{

display:block;

width:100%;

aspect-ratio:4/5;

object-fit:cover;

transition:

transform 1.8s cubic-bezier(
.19,
1,
.22,
1
);

}


.recruit-single .right:hover img{

transform:scale(1.05);

}


.recruit-single .right:after{

content:"";

position:absolute;

top:20px;
left:20px;

width:100%;
height:100%;

border:

1px solid
rgba(
188,
158,
120,
.25
);

pointer-events:none;

}



/* ======================================
求める人材
====================================== */

.recruit-single .recruit-person{

position:relative;

padding:0 0 0 40px;

}


.recruit-single .recruit-person:before{

content:"";

position:absolute;

top:12px;
left:0;

width:25px;
height:1px;

background:var(--accent);

}


.recruit-single .recruit-person h3{

font-size:13px;

letter-spacing:.35em;

color:var(--accent);

font-family:

BrilliantCutProMedium;

margin-bottom:30px;

text-transform:uppercase;

}


.recruit-single .recruit-person p{

font-size:14px;

line-height:2.6;

color:#555;

}



/* ======================================
FEATURE
====================================== */

.recruit-single .recruit-feature{

padding:80px;

position:relative;

isolation:isolate;

}


.recruit-single .recruit-feature:before{

content:"";

position:absolute;

inset:-30px;

z-index:-1;

background:

linear-gradient(

90deg,

transparent,

rgba(250,249,247,.94) 20%,

rgba(250,249,247,.94) 80%,

transparent

);

filter:blur(25px);

}


.recruit-single .recruit-feature h3{

font-size:13px;

letter-spacing:.35em;

color:var(--accent);

font-family:

BrilliantCutProMedium;

margin-bottom:50px;

text-align:center;

text-transform:uppercase;

}


.recruit-single .feature-grid{

display:grid;

grid-template-columns:

repeat(
2,
1fr
);

gap:25px;

}


.recruit-single .feature-card{

padding:35px;

border:

1px solid
rgba(
188,
158,
120,
.14
);

text-align:center;

background:#fff;

transition:.5s;

}


.recruit-single .feature-card:hover{

transform:
translateY(-6px);

}


.recruit-single .feature-card i{

font-size:20px;

color:var(--accent);

margin-bottom:20px;

display:block;

}


.recruit-single .feature-card h4{

font-size:15px;

margin-bottom:15px;

font-family:

'Cormorant Garamond',
serif;

font-weight:500;

}


.recruit-single .feature-card p{

font-size:13px;

line-height:2;

color:#666;

}



/* ======================================
募集内容
====================================== */

.recruit-single .job-pattern-area{

margin:140px auto;

max-width:1000px;

}


.recruit-single .job-pattern-area .catch-copy{

text-align:center;

margin-bottom:80px;

}


.recruit-single .job-card{

margin-bottom:60px;

padding:60px;

position:relative;

background:#fff;

border:

1px solid
rgba(
188,
158,
120,
.12
);

}


.recruit-single .job-card:before{

content:"";

position:absolute;

top:12px;
left:12px;
right:12px;
bottom:12px;

border:

1px solid
rgba(
188,
158,
120,
.1
);

pointer-events:none;

}


.recruit-single .job-head{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:35px;

padding-bottom:20px;

border-bottom:

1px solid
rgba(
188,
158,
120,
.15
);

}


.recruit-single .job-head h3{

font-size:30px;

font-family:

'Cormorant Garamond',
serif;

font-weight:400;

margin:0;

}


.recruit-single .job-head span{

font-size:11px;

letter-spacing:.25em;

color:var(--accent);

font-family:

BrilliantCutProMedium;

text-transform:uppercase;

}



/* ======================================
TABLE
====================================== */

.recruit-single .job-card table{

width:100%;

border-collapse:collapse;

}


.recruit-single .job-card tr{

border-bottom:

1px solid
rgba(
0,
0,
0,
.06
);

}


.recruit-single .job-card th{

width:180px;

padding:25px 0;

vertical-align:top;

font-size:12px;

letter-spacing:.18em;

font-family:

BrilliantCutProMedium;

color:#999;

font-weight:400;

text-align:left;

}


.recruit-single .job-card td{

padding:25px 0;

font-size:14px;

line-height:2.3;

color:#444;

}



/* ======================================
SP
====================================== */

@media(max-width:768px){

.recruit-single .recruit-single-wrap{

grid-template-columns:1fr;

gap:50px;

margin:70px 0 100px;

}


.recruit-single .right{

order:1;

}


.recruit-single .left{

order:2;

gap:50px;

}


.recruit-single .right:after{

top:10px;
left:10px;

}


.recruit-single .recruit-feature{

padding:40px 20px;

}


.recruit-single .feature-grid{

grid-template-columns:1fr;

gap:15px;

}


.recruit-single .job-pattern-area{

margin:90px auto;

}


.recruit-single .job-card{

padding:30px 25px;

}


.recruit-single .job-head{

display:block;

}


.recruit-single .job-head h3{

font-size:24px;

margin-bottom:10px;

}


.recruit-single .job-card th{

display:block;

width:auto;

padding:

20px 0 0;

}


.recruit-single .job-card td{

display:block;

padding:

10px 0 20px;

}


}