/* ========================================
COMPANY PAGE
======================================== */
.company-page{
  background:#f5f5f5;
  color:#111;
}
.company-page-hero{
  padding:180px 0 110px;
  background:#111;
  color:#fff;
}
.company-page-eyebrow,
.company-page-section-label{
  color:#00c853;
  font-size:13px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.company-page-hero h1{
  font-size:72px;
  line-height:1.1;
  margin:0 0 28px;
  font-weight:900;
}
.company-page-lead{
  max-width:780px;
  font-size:20px;
  line-height:2;
  color:rgba(255,255,255,.86);
}
.company-page-section{
  padding:100px 0;
}
.company-page-two-col{
  display:grid;
  grid-template-columns:0.8fr 1.2fr;
  gap:60px;
  align-items:start;
}
.company-page-section h2{
  font-size:44px;
  line-height:1.35;
  margin:0;
  font-weight:900;
}
.company-page-text-box,
.company-page-content-card,
.company-page-table-wrap,
.company-page-card,
.company-page-recruit-box{
  background:#fff;
  border-radius:24px;
  box-shadow:0 12px 35px rgba(0,0,0,.06);
}
.company-page-text-box{
  padding:42px;
  font-size:17px;
  line-height:2.1;
}
.company-page-editor-content{
  background:#fff;
}
.company-page-content-card{
  padding:46px;
  line-height:2;
}
.company-page-content-card h2,
.company-page-content-card h3{
  margin:1.4em 0 .7em;
}
.company-page-content-card ul{
  list-style:disc;
  padding-left:1.4em;
}
.company-page-heading-row{
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:end;
  margin-bottom:42px;
}
.company-page-heading-row p{
  max-width:440px;
  color:#666;
  line-height:1.8;
}
.company-page-card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.company-page-card{
  padding:34px;
}
.company-page-card span{
  display:block;
  width:42px;
  height:4px;
  border-radius:999px;
  background:#00c853;
  margin-bottom:24px;
}
.company-page-card h3{
  font-size:22px;
  margin:0 0 12px;
}
.company-page-card p{
  color:#666;
  line-height:1.85;
}
.company-page-profile{
  background:#fff;
}
.company-page-muted{
  color:#666;
  line-height:1.8;
  margin-top:22px;
}
.company-page-table-wrap{
  overflow:hidden;
}
.company-page-table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}
.company-page-table th,
.company-page-table td{
  padding:22px 26px;
  border-bottom:1px solid #eee;
  text-align:left;
  vertical-align:top;
  line-height:1.8;
}
.company-page-table th{
  width:160px;
  color:#555;
  font-weight:800;
  background:#fafafa;
}
.company-page-recruit{
  background:#111;
  color:#fff;
}
.company-page-recruit-main{
  max-width:840px;
  margin-bottom:42px;
}
.company-page-recruit-main h2{
  font-size:52px;
  margin:0 0 22px;
}
.company-page-recruit-main p{
  color:rgba(255,255,255,.78);
  line-height:2;
  font-size:17px;
}
.company-page-recruit-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.company-page-recruit-box{
  background:#1a1a1a;
  border:1px solid #252525;
  padding:32px;
  box-shadow:none;
}
.company-page-recruit-box h3{
  font-size:22px;
  margin:0 0 18px;
}
.company-page-recruit-box ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.company-page-recruit-box li{
  color:rgba(255,255,255,.78);
  line-height:1.7;
  padding-left:18px;
  position:relative;
}
.company-page-recruit-box li::before{
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:#00c853;
  position:absolute;
  left:0;
  top:.75em;
}
.company-page-recruit-cta{
  margin-top:42px;
}
.company-page-recruit-cta .kenkaku-btn,
.company-page-final-cta .kenkaku-btn{
  background:#00c853;
  color:#fff;
}
.company-page-final-cta{
  text-align:center;
  background:#fff;
}
.company-page-final-cta h2{
  font-size:48px;
  margin:0 0 18px;
}
.company-page-final-cta p{
  color:#666;
  margin-bottom:34px;
  line-height:1.8;
}
@media(max-width:900px){
  .company-page-hero{padding:140px 0 80px;}
  .company-page-hero h1{font-size:46px;}
  .company-page-lead{font-size:16px;}
  .company-page-section{padding:70px 0;}
  .company-page-two-col,
  .company-page-card-grid,
  .company-page-recruit-grid{grid-template-columns:1fr;}
  .company-page-section h2,
  .company-page-recruit-main h2,
  .company-page-final-cta h2{font-size:34px;}
  .company-page-heading-row{display:block;}
  .company-page-text-box,
  .company-page-content-card,
  .company-page-card,
  .company-page-recruit-box{padding:28px;}
  .company-page-table th,
  .company-page-table td{display:block;width:100%;padding:16px 20px;}
  .company-page-table th{border-bottom:none;padding-bottom:4px;}
  .company-page-table td{padding-top:4px;}
}
