/* recruit-lp base (all widths) — scoped reset, page neutralizers, header offset, marquee.
   Loaded only on the recruit top page (page-id 6527); all rules scoped to .recruit-lp / .page-id-6527. */

/* ---- scoped reset (from www3 style.css, limited to .recruit-lp) ---- */
.recruit-lp *, .recruit-lp *::before, .recruit-lp *::after { box-sizing: border-box; }
.recruit-lp * { font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, serif; }
.recruit-lp img { border: 0; margin: 0; padding: 0; vertical-align: bottom; width: 100%; }
.recruit-lp h1, .recruit-lp h2, .recruit-lp h3, .recruit-lp h4, .recruit-lp h5,
.recruit-lp p, .recruit-lp a, .recruit-lp td, .recruit-lp th { margin: 0; padding: 0; line-height: 100%; font-weight: 300; text-align: left; }
.recruit-lp span, .recruit-lp strong { margin: 0; padding: 0; line-height: 100%; }
.recruit-lp ul, .recruit-lp ol { list-style-type: none; margin: 0; padding: 0; line-height: 1; }
.recruit-lp br { line-height: 1; }
.recruit-lp a { text-decoration: none; }
.recruit-lp a:hover img { opacity: 0.6; }
/* サイト共通の style.css img{max-width:100%} が、カバー表示(min-width:100% + width:auto)の
   ヒーロー/about 画像を横方向に潰す(＝写真が細長くなる)のを打ち消す */
.recruit-lp .main_box .main_slide li img,
.recruit-lp .about_box .image_box p img { max-width: none; }
/* サイト共通 style.css が h3 等に緑の見出しバー(background:#106522)・枠線・白文字を付与するのを
   打ち消す。www3 側の見出し固有ルール(より高い詳細度)が色/枠線を再指定するので上書きされる。
   詳細度 0,2,1 で style.css の h3:not([class*="title_h"]) (0,1,1) に勝つ。 */
.recruit-lp-page .recruit-lp h1, .recruit-lp-page .recruit-lp h2, .recruit-lp-page .recruit-lp h3,
.recruit-lp-page .recruit-lp h4, .recruit-lp-page .recruit-lp h5, .recruit-lp-page .recruit-lp h6 {
  background: none; border: 0; color: #111111;
  /* style.css の h3{margin:20px 0 35px; padding:10px 20px} も打ち消す。
     残すと見出しの箱が横に膨らみ、NEWS の 3 カラム幅がずれる。
     www3 側の見出し固有ルールは詳細度が高いので余白は個別に再指定される。 */
  margin: 0; padding: 0;
}
.recruit-lp div::after, .recruit-lp ul::after, .recruit-lp nav::after,
.recruit-lp li::after, .recruit-lp section::after, .recruit-lp article::after { content: ""; display: block; height: 0; clear: both; }
/* サイト共通 style.css に同名 .title_box クラス(会社案内等の見出しバー用、height:170px 等を
   ブレークポイントごとに固定)が既に存在し衝突する。www3 移植側は padding-top + 子要素(h2)の
   auto height で高さを決める設計のため、共通側の固定 height が勝つと h2 がボックス外にはみ出し、
   直後の contents_box(position:static)が先に描画されて重なって見える(www3側にはこの衝突は無い)。
   !important で高さ系プロパティを解除し、www3 の意図した auto height に戻す。 */
.recruit-lp-page .recruit-lp .title_box {
  height: auto !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  background: none !important;
}

/* ---- neutralize page.php wrappers on recruit-lp pages (full-bleed like www3) ----
   body class 'recruit-lp-page' is added in functions.php for the top page and each
   migrated recruit sub-page. Only page.php's own title/breadcrumb (direct children of
   <main>) are hidden — a sub-page's own in-content .title_box is kept. */
.recruit-lp-page main > .title_box,
.recruit-lp-page main > .pankuzu { display: none !important; }
.recruit-lp-page .content_box { max-width: none !important; width: 100%; padding: 0 !important; margin: 0 !important; }

/* offset for the fixed site header (header {position:fixed;height:130px}, 49px on SP) */
.recruit-lp-page main { overflow: hidden; padding-top: 130px; }
@media screen and (max-width: 767px) {
  .recruit-lp-page main { padding-top: 49px; }
}

/* ---- logo loop: replace www3 simply-scroll(JS) with a dependency-free CSS marquee ---- */
.recruit-lp .comment_box .loop_box .simply-scroll,
.recruit-lp .comment_box .loop_box .simply-scroll-container { position: relative; overflow: hidden; }
.recruit-lp .comment_box .loop_box .simply-scroll-clip { overflow: hidden; }
.recruit-lp .comment_box .loop_box .simply-scroll-list {
  display: flex;
  width: max-content;
  animation: rlp-marquee 60s linear infinite;
}
.recruit-lp .comment_box .loop_box .simply-scroll-list li { flex: 0 0 auto; float: none; }
.recruit-lp .comment_box .loop_box:hover .simply-scroll-list { animation-play-state: paused; }
@keyframes rlp-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---- about heading rendered as text (www3 の text_about.svg は「60年」で画像化されているため、
       最新情報の「70年」を反映するテキスト見出しに置換。デザインは www3 に寄せる) ---- */
.recruit-lp .about_box .text_box h3.text_about_txt {
  max-width: 620px;
  margin-bottom: 45px;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.06em;
  color: #111111;
}
.recruit-lp .about_box .text_box h3.text_about_txt span { color: #0BA360; }
@media screen and (max-width: 767px) {
  .recruit-lp .about_box .text_box h3.text_about_txt {
    max-width: 100%;
    margin-bottom: 5.2vw;
    font-size: 5.8vw;
    line-height: 1.5;
  }
}
