/* ==============================================
   Crambe Recruit LP — style.css (完全版)
   ============================================== */
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;overflow-x:hidden;max-width:100%;}
body{font-family:'Noto Sans JP',sans-serif;color:#333;background:#fff;font-size:15px;line-height:1.8;overflow-x:hidden;width:100%;max-width:100%;}
h1,h2,h3,h4,h5{font-family:'Noto Sans JP',sans-serif;line-height:1.6;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
.wrap{max-width:900px;margin:0 auto;padding:0 20px;}
.wrap-sm{max-width:700px;margin:0 auto;padding:0 20px;}
.sec{padding:56px 20px;}
.sec-ttl{text-align:center;margin-bottom:36px;}
.sec-ttl h2{font-size:clamp(20px,4vw,28px);color:#6b4c42;margin-bottom:6px;}
.sec-ttl p{font-size:13px;color:#9a8080;}
.btn-wrap{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
br.sp-only{display:none !important;}
.hero{background:linear-gradient(160deg,#fce8ed 0%,#f9f0e8 60%,#eef5f0 100%);text-align:center;}
.hero-img{width:100%;display:block;max-height:520px;object-fit:cover;}
.hero-text{padding:40px 20px 50px;}
.hero-text h1{font-size:clamp(26px,5vw,40px);color:#6b4c42;margin-bottom:16px;}
.hero-text h1 span{color:#d4687e;}
.hero-text p{font-size:14px;color:#6a5050;line-height:2;}
.anxiety-sec{background:#fff;}
.anxiety-title-row{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:32px;padding:0 20px;}
.anxiety-main-title{font-size:clamp(26px,5vw,40px);color:#6b4c42;line-height:1.4;}
.anxiety-main-title span{color:#d4687e;}
.ashirai-girl{width:90px;height:auto;flex-shrink:0;}
.anxiety-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:760px;margin:0 auto;}
.anxiety-item{background:#fff;border:none;border-radius:0;padding:12px 8px;font-size:14px;color:#333;display:flex;align-items:center;gap:12px;border-bottom:1px solid #f5e8ec;}
.anxiety-item::before{content:'✓';flex-shrink:0;width:28px;height:28px;background:#f8c8d4;color:#d4687e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;line-height:28px;text-align:center;}
.resolve-banner{background:linear-gradient(135deg,#d4687e 0%,#e8849a 50%,#d4687e 100%);padding:36px 20px 56px;text-align:center;}
.resolve-banner-inner{display:inline-flex;align-items:center;gap:20px;}
.resolve-banner-inner p{font-size:clamp(18px,4vw,26px);color:#fff;font-weight:700;letter-spacing:.05em;line-height:1.4;}
.resolve-banner-inner p strong{font-size:clamp(22px,5vw,32px);display:inline-block;}
.resolve-banner-deco{color:rgba(255,255,255,.8);font-size:22px;}
.torikumi-sec{background:#fff;padding-top:40px;}
.torikumi-heading{text-align:center;font-size:clamp(16px,3vw,22px);font-weight:700;color:#333;border:2px solid #c0a090;border-radius:50px;padding:14px 40px;margin:0 auto 32px;max-width:660px;width:fit-content;white-space:nowrap;background:#fff;}
.torikumi-box{background:#f9f9f9;border-radius:16px;padding:28px 32px;max-width:480px;margin:0 auto;}
.torikumi-label{color:#d4687e;font-size:15px;font-weight:700;margin-bottom:16px;text-align:center;}
.torikumi-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:12px;}
.torikumi-list li{font-size:14px;color:#333;padding-left:16px;position:relative;}
.torikumi-list li::before{content:'・';position:absolute;left:0;color:#333;}
.torikumi-note{font-size:13px;color:#6a5050;text-align:left;}
.torikumi-box--pink{background:linear-gradient(135deg,#e8849a,#d4687e);border-radius:16px;padding:24px 32px;max-width:480px;width:100%;margin:0 auto;overflow:hidden;}
.torikumi-label-white{color:#fff;font-size:14px;font-weight:700;text-align:center;line-height:2;word-break:break-all;overflow-wrap:break-word;white-space:normal;}
.torikumi-sec.shakai{background:#f7f0ea;}
.torikumi-sec.shakai.no-pb{padding-bottom:0;}
.torikumi-sec.shakai.no-pb + .welfare-sec{padding-top:16px;}
.torikumi-sec.kyuryo{background:#fff;}
.torikumi-sec.shukyaku{background:#fff;}
.torikumi-sec.shourai{background:#fff;}
.welfare-sec{background:#f7f0ea;}
.welfare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.welfare-card{background:#fff;border-radius:14px;padding:22px 20px;border-top:4px solid #eea8b8;box-shadow:0 2px 16px rgba(180,120,100,.07);}
.welfare-card .num{font-size:28px;color:#eea8b8;line-height:1;margin-bottom:8px;font-weight:700;}
.welfare-card h3{font-size:15px;color:#6b4c42;margin-bottom:8px;}
.welfare-card p{font-size:12px;color:#6a5050;line-height:1.8;}
.welfare-note{text-align:center;margin-top:22px;font-size:13px;color:#6a5050;background:#f8e4ea;padding:10px 24px;border-radius:50px;display:block;max-width:560px;margin-left:auto;margin-right:auto;}
.welfare-sub{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:20px;}
.welfare-sub .welfare-card{max-width:280px;text-align:center;border-top-color:#d4687e;}
.welfare-sub .welfare-card h3{color:#d4687e;}
.welfare-family-ttl{font-size:18px;color:#6b4c42;text-align:center;margin:40px 0 20px;padding:12px 0;border-top:1px dashed #eea8b8;border-bottom:1px dashed #eea8b8;}
.welfare-family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;}
.welfare-family-grid .welfare-card{border-top-color:#d4687e;text-align:center;}
.welfare-family-grid .welfare-card h3{color:#d4687e;}
.workhours-sec{background:#fdf0f3;position:relative;overflow:hidden;}
.workhours-sec::before{content:'';position:absolute;inset:0;background-image:url('../images/workhours.jpg');background-size:cover;background-position:center;opacity:.13;pointer-events:none;}
.workhours-sec > *{position:relative;z-index:1;}
.workhours-lead{text-align:center;font-size:13px;color:#6a5050;max-width:620px;margin:0 auto 28px;line-height:2;}
.work-list{display:flex;flex-direction:column;gap:12px;max-width:660px;margin:0 auto;}
.work-item{display:flex;align-items:flex-start;gap:14px;background:#fdf0f3;border-radius:12px;padding:15px 18px;}
.work-item .icon{width:34px;height:34px;flex-shrink:0;background:#d4687e;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;margin-top:1px;}
.work-item p{font-size:13px;color:#333;line-height:1.8;}
.work-item strong{color:#6b4c42;}
.maternity-sec{background:#fdf0f3;}
.maternity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;}
.maternity-card{background:#fff;border-radius:12px;padding:20px 18px;box-shadow:0 2px 12px rgba(180,120,100,.07);}
.maternity-card h3{font-size:14px;color:#d4687e;margin-bottom:10px;padding-bottom:8px;border-bottom:2px dashed #f8e4ea;}
.maternity-card p{font-size:13px;color:#6a5050;line-height:1.8;}
.ashirai--maternity-center{position:relative;display:block;width:80px;margin:16px auto 0;}
.holiday-sec{background:#e8f4f8;}
.holiday-img-wrap{max-width:860px;margin:0 auto 28px;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(212,104,126,.12);}
.holiday-img-wrap img{width:100%;display:block;max-height:340px;object-fit:cover;}
.holiday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;max-width:780px;margin:0 auto;}
.holiday-item{background:#fff;border-radius:10px;padding:16px;display:flex;align-items:flex-start;gap:12px;box-shadow:0 2px 10px rgba(212,104,126,.07);}
.holiday-item .dot{width:9px;height:9px;flex-shrink:0;background:#d4687e;border-radius:50%;margin-top:6px;}
.holiday-item p{font-size:13px;color:#333;}
.career-sec{background:#fff;}
.career-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;}
.career-card{background:#fdf0f3;border-radius:12px;padding:20px 16px;border-left:4px solid #d4687e;font-size:13px;color:#333;line-height:1.8;}
.career-card h3{display:none;}
.career-support{margin-top:28px;background:#f7f0ea;border-radius:12px;padding:24px 22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;}
.career-support-item{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#333;}
.career-support-item::before{content:'◆';color:#d4687e;flex-shrink:0;margin-top:2px;font-size:10px;}
.career-banner{background:linear-gradient(135deg,#d4687e,#e8849a);padding:24px 20px;text-align:center;margin-top:36px;}
.career-banner p{color:#fff;font-size:clamp(14px,3vw,17px);font-weight:700;line-height:1.9;}
.lifestyle-sec{background:#fdf0f3;}
.lifestyle-row{display:flex;gap:32px;align-items:center;flex-wrap:wrap;margin-bottom:48px;}
.lifestyle-row:last-child{margin-bottom:0;}
.lifestyle-row--reverse{flex-direction:row-reverse;}
.lifestyle-img{flex:1;min-width:240px;}
.lifestyle-img img{width:100%;border-radius:14px;box-shadow:0 4px 20px rgba(212,104,126,.13);}
.lifestyle-body{flex:1.2;min-width:240px;}
.lifestyle-ttl{font-size:18px;color:#6b4c42;margin-bottom:14px;border-left:4px solid #d4687e;padding-left:12px;}
.ashirai{position:absolute;pointer-events:none;z-index:0;}
.ashirai--kyuryo-left{width:440px;top:0;left:0;opacity:.9;}
.ashirai--shukyaku-right{width:560px;top:0;right:0;opacity:.9;}
.cta-mid{background:linear-gradient(135deg,#ffe0e8,#ffeedd);text-align:center;padding:46px 20px;}
.cta-mid .salary{font-size:14px;color:#6a5050;margin-bottom:18px;line-height:2;}
.prize{display:inline-block;background:#fff;color:#d4687e;font-size:clamp(15px,3vw,20px);font-weight:700;padding:10px 28px;border-radius:50px;margin-bottom:22px;box-shadow:0 4px 18px rgba(212,104,126,.18);}
.btn-line{display:inline-flex;align-items:center;gap:8px;background:#06c755;color:#fff;font-size:15px;font-weight:700;padding:15px 38px;border-radius:50px;box-shadow:0 5px 20px rgba(6,199,85,.3);transition:transform .2s;}
.btn-tel{display:inline-flex;align-items:center;gap:8px;background:#d4687e;color:#fff;font-size:15px;font-weight:700;padding:15px 38px;border-radius:50px;box-shadow:0 5px 20px rgba(212,104,126,.3);transition:transform .2s;}
.btn-line:hover,.btn-tel:hover{transform:translateY(-3px);}
.recruit-sec{background:#f7f0ea;}
.tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px;}
.tab{padding:9px 22px;border-radius:50px;border:2px solid #eea8b8;background:#fff;font-size:14px;font-weight:700;color:#6b4c42;cursor:pointer;transition:all .2s;}
.tab.active,.tab:hover{background:#d4687e;color:#fff;border-color:#d4687e;}
.panel{display:none;}
.panel.active{display:block;}
.recruit-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(180,120,100,.07);}
.recruit-table tr{border-bottom:1px solid #f0e0e6;}
.recruit-table tr:last-child{border-bottom:none;}
.recruit-table th{background:#fff;padding:13px 16px;font-size:13px;font-weight:700;color:#6b4c42;width:110px;min-width:90px;vertical-align:top;text-align:left;border-right:2px solid #f0e0e6;}
.recruit-table td{background:#fff;padding:13px 16px;font-size:13px;color:#333;line-height:1.8;vertical-align:top;}
.recruit-table small{font-size:11px;color:#9a8080;}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;}
.tag{background:#f8e4ea;color:#d4687e;font-size:11px;padding:3px 9px;border-radius:50px;font-weight:500;}
.flow-sec{background:#f7f0ea;}
.flow-list{max-width:620px;margin:0 auto;position:relative;}
.flow-list::before{content:'';position:absolute;left:19px;top:22px;bottom:22px;width:2px;background:linear-gradient(to bottom,#eea8b8,#ede0d4);}
.flow-item{display:flex;gap:18px;padding:14px 0 14px 6px;align-items:flex-start;position:relative;}
.flow-dot{flex-shrink:0;width:24px;height:24px;background:#d4687e;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px #eea8b8;z-index:1;margin-top:2px;}
.flow-item h3{font-size:14px;color:#6b4c42;margin-bottom:2px;}
.flow-item p{font-size:12px;color:#9a8080;}
.faq-sec{background:#fff;}
.faq-list{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.faq-item{border-radius:10px;overflow:hidden;border:1.5px solid #f0dde4;}
.faq-q{background:#fdf0f3;padding:14px 18px;font-size:14px;font-weight:500;color:#6b4c42;display:flex;align-items:flex-start;gap:10px;}
.faq-label-q{flex-shrink:0;width:26px;height:26px;background:#d4687e;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;margin-top:-1px;}
.faq-a{background:#fff;padding:14px 18px;font-size:13px;color:#333;line-height:1.9;display:flex;align-items:flex-start;gap:10px;}
.faq-label-a{flex-shrink:0;width:26px;height:26px;background:#ede0d4;color:#6b4c42;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;margin-top:-1px;}
.profile-sec{background:#fff;}
.profile-inner{max-width:800px;margin:0 auto;display:flex;gap:36px;align-items:flex-start;flex-wrap:wrap;}
.profile-photo{width:170px;flex-shrink:0;border-radius:14px;box-shadow:0 5px 24px rgba(212,104,126,.13);}
.profile-body{flex:1;min-width:220px;}
.profile-tag{display:inline-block;background:#f8e4ea;color:#d4687e;font-size:11px;padding:3px 12px;border-radius:50px;margin-bottom:10px;}
.profile-body h2{font-size:22px;color:#6b4c42;margin-bottom:14px;}
.profile-body p{font-size:13px;color:#333;line-height:2;margin-bottom:10px;}
.rinen{background:#f7f0ea;border-radius:12px;padding:20px 22px;margin-top:16px;}
.rinen h3{font-size:15px;color:#6b4c42;margin-bottom:10px;}
.rinen p{font-size:13px;color:#6a5050;line-height:1.9;}
.cta-final{background:linear-gradient(160deg,#f9e0e8,#fdf5ee);padding:64px 20px;text-align:center;}
.prize-big{display:inline-block;color:#fff;font-size:clamp(15px,3vw,19px);font-weight:700;background:linear-gradient(135deg,#e07848,#e05050);padding:12px 34px;border-radius:50px;margin-bottom:24px;box-shadow:0 5px 22px rgba(224,120,72,.28);}
footer{background:#6b4c42;color:rgba(255,255,255,.8);text-align:center;padding:28px 20px;font-size:12px;line-height:2;}
footer p + p{margin-top:6px;}
footer a{color:rgba(255,255,255,.6);margin:0 8px;}
#back-to-top{position:fixed;bottom:28px;right:28px;width:48px;height:48px;background:#d4687e;color:#fff;border:none;border-radius:50%;font-size:16px;cursor:pointer;box-shadow:0 4px 16px rgba(212,104,126,.4);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s,transform .2s;z-index:999;}
#back-to-top.show{opacity:1;visibility:visible;}
#back-to-top:hover{transform:translateY(-3px);}
@media(max-width:768px){
  br.sp-only{display:block !important;}
  section,div,header,footer{max-width:100%;}
  .anxiety-item{padding:10px;font-size:13px;}
  .ashirai--kyuryo-left,.ashirai--shukyaku-right{display:none;}
  .torikumi-heading{white-space:normal;padding:14px 24px;}
  .lifestyle-row,.lifestyle-row--reverse{flex-direction:column;}
  .welfare-family-grid{grid-template-columns:1fr;}
  .welfare-sub .welfare-card{max-width:100%;}
}
@media(max-width:600px){
  .profile-inner{flex-direction:column;align-items:center;}
  .profile-photo{width:140px;}
  .btn-wrap{flex-direction:column;align-items:center;}
  .btn-line,.btn-tel{width:100%;max-width:280px;justify-content:center;}
  .recruit-table{width:100%;}
  .recruit-table th{width:76px;min-width:66px;font-size:12px;padding:10px;}
  .recruit-table td{font-size:13px;padding:10px;}
  .wrap,.wrap-sm{padding:0 12px;}
  .recruit-sec .wrap{padding:0 12px;}
  .anxiety-grid{grid-template-columns:1fr 1fr;gap:8px;}
}
