/* ==========================================================
   採用情報 (recruit.html) ページ固有スタイル
   基準: PC 1920px / SP 390px  (1rem = 10px @基準幅)
   ========================================================== */
.page-recruit .page-body{background:var(--beige);}
.pc-br{display:inline;}
@media (max-width:1023px){.pc-br{display:none;}}

/* 共通ボタン(採用ページ版: 380x70) */
.rc-btn{display:flex;align-items:center;justify-content:space-between;width:38rem;height:7rem;padding:0 3.3rem 0 3.5rem;border-radius:2rem;font-size:2.2rem;font-weight:700;letter-spacing:.04em;line-height:1;transition:opacity .25s,background .25s;}
.rc-btn:hover{opacity:.8;}
.rc-btn__ico{width:2.4rem;height:2.2rem;fill:currentColor;flex:none;}
.rc-btn--outline{background:var(--white);border:.2rem solid var(--ochre);color:var(--ochre);}
.rc-btn--fill{background:var(--ochre);color:var(--white);}
@media (max-width:1023px){
  .rc-btn{width:24rem;height:4.2rem;padding:0 2.4rem 0 2.4rem;border-radius:1rem;font-size:1.5rem;}
  .rc-btn--outline{border-width:.1rem;}
  .rc-btn__ico{width:1.6rem;height:1.5rem;}
}

/* ---------- イントロ ---------- */
.rc-intro{position:relative;height:84.4rem;}
.rc-intro__box{position:absolute;left:12.4rem;top:22.5rem;width:179.6rem;height:61.9rem;background:var(--sand);border-radius:10rem 0 0 0;}
.rc-intro__ttl{position:absolute;left:24.5rem;top:17.5rem;font-size:6rem;font-weight:700;line-height:10rem;letter-spacing:.06em;white-space:nowrap;}
.rc-intro__ttl span{color:var(--ochre);}
.rc-intro__txt{position:absolute;left:24.4rem;top:32rem;width:82.1rem;font-size:2.2rem;line-height:7rem;letter-spacing:.06em;}
.rc-intro__ph1{position:absolute;left:115.5rem;top:25.7rem;width:36.9rem;height:23.7rem;object-fit:cover;border-radius:3rem;}
.rc-intro__ph2{position:absolute;left:127.8rem;top:51.6rem;width:46.2rem;height:29.7rem;object-fit:cover;border-radius:3rem;}
.rc-intro__btns{position:absolute;left:24.4rem;top:70.6rem;display:flex;gap:8rem;}
@media (max-width:1023px){
  .rc-intro{height:99.6rem;}
  .rc-intro__box{left:2.4rem;top:8.5rem;width:36.6rem;height:82.2rem;background:#E5DAC9;border-radius:6rem 0 0 0;}
  .rc-intro__ttl{left:4.2rem;top:6.1rem;font-size:2.8rem;line-height:5rem;letter-spacing:.06em;}
  .rc-intro__txt{left:4.2rem;top:18.5rem;width:31.8rem;font-size:1.5rem;line-height:3.5rem;letter-spacing:.05em;}
  .rc-intro__ph1{left:1.4rem;top:61rem;width:25.3rem;height:16.2rem;border-radius:1rem;object-position:50% 35%;}
  .rc-intro__ph2{left:5.9rem;top:79.1rem;width:31.8rem;height:20.5rem;border-radius:1rem;}
  .rc-intro__btns{left:7.5rem;top:48.1rem;flex-direction:column;gap:2rem;}
}

/* ---------- ABOUT US ---------- */
.rc-about{padding:15.6rem 0 14.2rem;text-align:center;}
.rc-about__en{font-size:12rem;font-weight:700;line-height:1;letter-spacing:.04em;color:var(--green2);}
.rc-about__label{display:inline-block;margin-top:-1rem;position:relative;z-index:1;width:38.1rem;height:4rem;line-height:4rem;background:var(--ochre);color:var(--white);font-size:2.7rem;font-weight:700;letter-spacing:.04em;text-align:center;}
.rc-about__list{display:flex;justify-content:center;gap:3.5rem;margin-top:8rem;}
.rc-about__card{width:48.5rem;height:50.5rem;padding-top:6.85rem;background:var(--white);border:.4rem solid var(--ochre);border-radius:3rem;}
.rc-about__ttl{font-size:3.5rem;font-weight:700;line-height:6rem;letter-spacing:.04em;color:var(--green2);}
.rc-about__num{display:block;font-size:1.71em;}
.rc-about__txt{display:flex;align-items:center;justify-content:center;width:43rem;height:22.2rem;margin:5rem auto 0;background:var(--beige2);border-radius:2rem;font-size:2.2rem;font-weight:700;line-height:6rem;letter-spacing:.06em;color:var(--green2);}
@media (max-width:1023px){
  .rc-about{padding:8.1rem 0 6.2rem;}
  .rc-about__en{font-size:5rem;}
  .rc-about__label{margin-top:-.9rem;width:22.9rem;height:2.6rem;line-height:2.6rem;font-size:1.5rem;}
  .rc-about__list{flex-direction:column;align-items:center;gap:2.5rem;margin-top:3.5rem;}
  .rc-about__card{width:35.6rem;height:21rem;padding-top:2.9rem;border-width:.3rem;}
  .rc-about__ttl{font-size:2rem;line-height:1;}
  .rc-about__num{display:inline;margin-right:.6em;font-size:1em;}
  .rc-about__txt{width:32rem;height:11.5rem;margin-top:2.2rem;border-radius:1rem;background:var(--beige);font-size:1.5rem;line-height:3.5rem;letter-spacing:.05em;}
}

/* ---------- 求める人物像 ---------- */
.rc-person{position:relative;width:186.4rem;height:108.4rem;padding-top:8.7rem;
  background-color:var(--green2);
  background-image:repeating-linear-gradient(90deg,var(--green3) 0 5.7rem,transparent 5.7rem 11.37rem);
  background-position:4.4rem 0;}
.rc-person__box{position:relative;width:167.2rem;height:93rem;margin-left:12.4rem;background:var(--white);border-radius:3rem;overflow:hidden;}
.rc-person__logo{position:absolute;left:5rem;top:2.6rem;width:22.7rem;}
.rc-person__ttl{position:absolute;left:0;top:0;width:89.2rem;height:20rem;font-size:5rem;font-weight:700;line-height:6.4rem;color:var(--green2);}
.rc-person__ttl1{position:absolute;left:42.7rem;top:5.5rem;transform:translateX(-50%);letter-spacing:.17em;white-space:nowrap;}
.rc-person__ttl2{position:absolute;left:54.7rem;top:11.9rem;transform:translateX(-50%);letter-spacing:.06em;white-space:nowrap;}
.rc-person__panel{position:absolute;left:12rem;width:67rem;height:28rem;padding:2.6rem 0 0;background:var(--green3);border-radius:2rem;color:var(--white);overflow:hidden;}
.rc-person__panel:nth-of-type(1){top:24.4rem;}
.rc-person__panel:nth-of-type(2){top:57.4rem;}
.rc-person__wm{position:absolute;left:50%;top:8rem;transform:translateX(-50%);font-size:12rem;font-weight:700;line-height:1;color:var(--green);pointer-events:none;white-space:nowrap;}
.rc-person__sub{position:relative;margin-left:4.4rem;font-size:3.5rem;font-weight:700;line-height:1;letter-spacing:.04em;}
.rc-person__list{position:relative;margin-top:1.4rem;}
.rc-person__list li{position:relative;padding-left:10.4rem;font-size:2.2rem;line-height:6rem;letter-spacing:.06em;white-space:nowrap;}
.rc-face{position:absolute;left:4.5rem;top:1rem;width:4rem;height:4rem;fill:var(--white);}
.rc-face .f{fill:var(--green3);}
.rc-face .s{fill:none;stroke:var(--green3);stroke-width:2.6;stroke-linecap:round;}
.rc-person__photo{position:absolute;right:0;top:0;width:78rem;height:93rem;object-fit:cover;border-radius:0 3rem 3rem 0;}
@media (max-width:1023px){
  .rc-person{width:auto;height:63.1rem;padding-top:2.4rem;
    background-image:repeating-linear-gradient(90deg,var(--green3) 0 1.2rem,transparent 1.2rem 2.3rem);background-position:.9rem 0;}
  .rc-person__box{width:36.2rem;height:57.6rem;margin:0 auto;border-radius:1rem;overflow:visible;}
  .rc-person__logo{left:1.1rem;top:2.6rem;width:12rem;}
  .rc-person__ttl{width:100%;height:16rem;font-size:2.8rem;line-height:3rem;}
  .rc-person__ttl1{left:20.6rem;top:5rem;letter-spacing:.1em;}
  .rc-person__ttl2{left:24.6rem;top:9rem;letter-spacing:.04em;}
  .rc-person__panel{left:1rem;width:34.2rem;height:17rem;padding-top:1.5rem;border-radius:1rem;}
  .rc-person__panel:nth-of-type(1){top:16rem;}
  .rc-person__panel:nth-of-type(2){top:35.3rem;}
  .rc-person__wm{top:6.2rem;font-size:5.8rem;}
  .rc-person__sub{margin-left:1.3rem;font-size:1.9rem;}
  .rc-person__list{margin-top:1.5rem;}
  .rc-person__list li{padding-left:3.5rem;font-size:1.5rem;line-height:3.5rem;letter-spacing:.05em;}
  .rc-face{left:1.2rem;top:.7rem;width:2.1rem;height:2.1rem;}
  .rc-person__photo{display:none;}
}

/* ---------- 支え合い ---------- */
.rc-grow{position:relative;height:65rem;margin-top:20.5rem;overflow:hidden;}
.rc-grow__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.rc-grow::before{content:"";position:absolute;inset:0;background:var(--sand);opacity:.7;}
.rc-grow__body{position:absolute;left:24.4rem;top:26.7rem;}
.rc-grow__ttl{font-size:6rem;font-weight:700;line-height:10rem;letter-spacing:.06em;}
.rc-grow__txt{margin-top:0.5rem;font-size:2.2rem;line-height:6rem;letter-spacing:.06em;}
@media (max-width:1023px){
  .rc-grow{height:25.8rem;margin-top:8.4rem;}
  .rc-grow__body{left:2.4rem;top:5.4rem;right:2.4rem;}
  .rc-grow__ttl{font-size:2.8rem;line-height:5rem;}
  .rc-grow__txt{margin-top:.3rem;width:29.8rem;font-size:1.5rem;line-height:3rem;letter-spacing:.05em;}
}

/* ---------- 働く環境・福利厚生 ---------- */
.rc-welfare{position:relative;margin-top:30.3rem;padding:16.4rem 0 8.5rem;background:var(--ochre);}
.rc-welfare__tab{position:absolute;left:-1.7rem;top:-9.3rem;width:164.5rem;height:18rem;background:var(--white);border:.5rem solid var(--ochre);border-radius:0 10rem 0 0;}
.rc-welfare__ttl{position:absolute;left:25.6rem;top:5.5rem;font-size:6rem;font-weight:700;line-height:1;letter-spacing:.06em;color:var(--ochre);white-space:nowrap;}
.rc-welfare__lead{position:absolute;left:89.9rem;top:4.6rem;width:68.8rem;font-size:2.2rem;line-height:5rem;letter-spacing:.06em;}
.rc-welfare__list{display:grid;grid-template-columns:repeat(4,33rem);gap:5.2rem 5rem;justify-content:center;}
.rc-welfare__item{display:flex;flex-direction:column;align-items:center;height:33rem;padding-top:4.5rem;background:var(--white);border-radius:3rem;}
.rc-welfare__ico{width:13.4rem;height:13.4rem;display:grid;place-items:center;}
.rc-welfare__ico img{width:12rem;height:12rem;object-fit:contain;}
.rc-welfare__item p{margin-top:2.85rem;font-size:2.5rem;line-height:5rem;letter-spacing:.06em;text-align:center;}
@media (max-width:1023px){
  .rc-welfare{margin-top:33.5rem;padding:2.5rem 0 2.5rem;}
  .rc-welfare__tab{left:0;top:-12.3rem;width:37.6rem;height:12.7rem;border-width:.3rem;border-radius:0 6rem 0 0;}
  .rc-welfare__ttl{left:2.4rem;top:1.4rem;font-size:2.8rem;}
  .rc-welfare__lead{left:2.4rem;top:4.8rem;width:auto;font-size:1.5rem;line-height:3.3rem;letter-spacing:.05em;}
  .rc-welfare__list{grid-template-columns:34.2rem;gap:1.5rem;}
  .rc-welfare__item{position:relative;flex-direction:row;height:9rem;padding:0;border-radius:1rem;}
  .rc-welfare__ico{position:absolute;left:3rem;top:1.3rem;width:6.6rem;height:6.6rem;}
  .rc-welfare__ico img{width:6rem;height:6rem;}
  .rc-welfare__item p{margin:0 0 0 13rem;width:18.5rem;font-size:1.5rem;line-height:3rem;}
}

/* ---------- WOMEN × FUTURE ---------- */
.rc-women{position:relative;height:56.8rem;margin-top:16rem;background:linear-gradient(0deg,#F5F0E8 0%,#FBFAF7 50%,#FFFFFF 100%);}
.rc-women__deco{position:absolute;left:47.4rem;top:0;width:0;height:100%;font-family:"Khmer MN","Times New Roman","Hiragino Mincho ProN",serif;font-weight:400;color:var(--ochre-d);}
.rc-women__deco span{position:absolute;left:0;transform:translateX(-50%);line-height:1;white-space:nowrap;}
.rc-women__w1{top:13.1rem;font-size:9.3rem;}
.rc-women__w2{top:34.1rem;font-size:9.3rem;}
.rc-women__x{top:20.6rem;font-size:16.7rem;color:var(--sand);}
.rc-women__body{position:absolute;left:71.1rem;top:13.2rem;width:110rem;}
.rc-women__label{font-size:2.5rem;line-height:1;letter-spacing:.06em;color:var(--ochre);}
.rc-women__ttl{margin-top:2.8rem;font-size:4rem;font-weight:700;line-height:1;letter-spacing:.06em;color:#151515;white-space:nowrap;}
.rc-women__txt{margin-top:2.6rem;font-size:2.2rem;line-height:7rem;letter-spacing:.06em;}
@media (max-width:1023px){
  .rc-women{height:calc(69.8rem + 1.5em);margin-top:0;background:linear-gradient(180deg,#E5DAC9 0%,rgba(240,234,225,.7) 30%,#FFFFFF 100%);}
  .rc-women__deco{left:19.5rem;top:1.5em;}
  .rc-women__w1{top:6.5rem;font-size:6rem;}
  .rc-women__w2{top:18.5rem;font-size:6rem;}
  .rc-women__x{top:10rem;font-size:11.6rem;}
  .rc-women__body{left:2.4rem;right:2.4rem;top:calc(30rem + 1.5em);width:auto;}
  .rc-women__label{font-size:1.3rem;letter-spacing:.06em;}
  .rc-women__ttl{margin-top:1.8rem;font-size:2.8rem;line-height:5rem;}
  .rc-women__txt{margin-top:1.4rem;font-size:1.5rem;line-height:3.5rem;letter-spacing:.05em;}
}

/* ---------- Q&A ---------- */
.rc-qa{padding-top:18rem;}
.rc-qa__list{display:grid;grid-template-columns:repeat(2,82rem);gap:7.5rem 3.2rem;justify-content:center;}
.rc-qa__item{position:relative;height:44.5rem;border-radius:3rem;border:.3rem solid transparent;overflow:hidden;}
.rc-qa__item::before{content:"";position:absolute;inset:0;background:url(../img/25126191.png) center/cover;pointer-events:none;}
.rc-qa__item--line-g{background:var(--beige2);border-color:var(--green);}
.rc-qa__item--line-o{background:var(--beige2);border-color:var(--ochre);}
.rc-qa__item--fill-g{background:var(--green);border-color:var(--green);color:var(--white);}
.rc-qa__item--fill-o{background:var(--ochre);border-color:var(--ochre);color:var(--white);}
.rc-qa__item--line-g::before,.rc-qa__item--line-o::before{opacity:.63;}
.rc-qa__item--fill-g::before,.rc-qa__item--fill-o::before{opacity:.1;}
.rc-qa__q{position:absolute;left:0;top:3.2rem;width:30.4rem;text-align:center;}
.rc-qa__ico{width:6.8rem;height:6.8rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;}
.rc-qa__ico .s{stroke-linecap:round;}
.rc-qa__ico .f{fill:currentColor;stroke:none;}
.rc-qa__q p{margin-top:3.4rem;font-size:3rem;line-height:5.5rem;letter-spacing:.06em;}
.rc-qa__a{position:absolute;left:32.6rem;top:13.8rem;width:44.2rem;font-size:2.2rem;line-height:5.5rem;letter-spacing:.06em;}
@media (max-width:1023px){
  .rc-qa{padding-top:5rem;}
  .rc-qa__list{grid-template-columns:35.1rem;gap:2rem;}
  .rc-qa__item{height:auto;min-height:23.5rem;padding:8.1rem 2.2rem 2.2rem;border-radius:1.5rem;}
  .rc-qa__item--pc2{order:3;}
  .rc-qa__q{left:0;top:1.7rem;width:100%;}
  .rc-qa__ico{position:absolute;left:2.4rem;top:.3rem;width:4.2rem;height:4.2rem;}
  .rc-qa__q p{margin:0;padding:0 1rem 0 7rem;font-size:1.7rem;line-height:2.4rem;letter-spacing:.04em;text-align:center;}
  .rc-qa__a{position:relative;left:auto;top:auto;width:auto;font-size:1.5rem;line-height:3.5rem;}
}

/* ---------- 募集要項 ---------- */
.rc-req{padding:18rem 0 16.8rem;}
.rc-req__ttl{font-size:6rem;font-weight:700;line-height:1;letter-spacing:.06em;text-align:center;color:var(--green);}
.rc-req__table{width:143rem;margin:6.8rem auto 0;border-top:.15rem solid var(--green);}
.rc-req__row{display:flex;padding:3rem 0;border-bottom:.15rem solid var(--green);}
.rc-req__row dt{flex:none;width:25.9rem;padding-left:10.1rem;font-size:2.2rem;line-height:5rem;letter-spacing:.1em;}
.rc-req__row dd{font-size:2.2rem;line-height:5rem;letter-spacing:.03em;}
@media (max-width:1023px){
  .rc-req{padding:7rem 0 10rem;}
  .rc-req__ttl{font-size:2.8rem;}
  .rc-req__table{width:36rem;margin-top:2.3rem;border-top-width:.1rem;}
  .rc-req__row{padding:1.55rem 0;border-bottom-width:.1rem;}
  .rc-req__row dt{width:10.2rem;padding-left:1rem;font-size:1.5rem;line-height:2.5rem;letter-spacing:.02em;}
  .rc-req__row dd{font-size:1.5rem;line-height:2.5rem;letter-spacing:.02em;}
  .rc-req__list li{padding-left:1em;text-indent:-1em;}
}
