@charset "UTF-8";
/*
 * design-override.css
 * recruit/index.html のデザインをコーポレートサイト(index.html)に統一するためのオーバーライド
 * カラー: #eca3a6 (ピンク) → #E46B57 (コーラル)
 */

/* ============================================
   ナビゲーション
   ============================================ */
header .headerInner nav .navInner ul li a span.en {
  color: #E46B57 !important;
}
header .headerInner nav .navInner ul li a span.en:after {
  background: #E46B57 !important;
}
header .headerInner nav .navInner ul li a span.jp {
  color: #E46B57 !important;
}
header .headerInner nav .navInner ul li a:after {
  background: #E46B57 !important;
}
header .headerInner nav .navInner ul li a.activeBtn span.en {
  background: #E46B57 !important;
  border-color: #E46B57 !important;
}
header .headerInner nav .navInner ul li a.activeBtn:hover span.en {
  color: #E46B57 !important;
  background: #fff !important;
}

/* ============================================
   セクションタイトル (.pink クラス)
   ============================================ */
.ttlBox h2 span.en.pink {
  color: #E46B57 !important;
}
.ttlBox h2 span.en.pink:before,
.ttlBox h2 span.en.pink:after {
  background: #E46B57 !important;
}

/* ============================================
   BRANDセクション (contents_02)
   ============================================ */
/* オリエンタルキッチン US: 店舗・料理画像を縦積み */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner {
  font-size: 0;
}
/* 店舗画像: APizzaのcomposite画像と同じく自然サイズで表示 */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner img:first-child {
  display: block;
  width: 100%;
  height: auto;
}
/* 店舗画像ラッパー: スタッフ円形の基準点 */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner .us-store-wrap {
  position: relative;
  display: block;
}
/* 店舗画像: 全幅表示 */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner .us-store-wrap img:first-child {
  display: block;
  width: 100%;
  height: auto;
}
/* スタッフ円形: us-inner全体の右端下に配置（APizzaと同位置） */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner {
  position: relative;
}
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner > .circle {
  position: absolute;
  right: -32px;
  bottom: -43px;
}
/* 料理画像: 小さめサイズで左揃え */
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner .us-food-wrap {
  display: block;
}
.contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner .us-food-wrap img {
  display: block;
  width: auto;
  height: auto;
  max-width: 60%;
}
/* オリエンタルキッチン US ロゴをPC版で拡大・下に移動 */
.contents_bg_02 .contents_02 .boxWrapper .box:nth-child(3) .txtBox .logo img {
  width: 300px;
  margin-top: 40px;
}
/* PC版: オリエンタルキッチンのJOB LISTをAPizzaと同じ縦位置に配置
   APizzaはJOB LIST + WEB SITEの2項目分ulの高さがあるため、
   1項目分(約34px) + 項目間margin(22px) = 56px のpadding-bottomで位置を合わせる */
@media screen and (min-width: 769px) {
  .contents_bg_02 .contents_02 .boxWrapper .box:nth-child(3) .txtBox ul {
    padding-bottom: 56px;
  }
}

.contents_bg_02 .contents_02 .boxWrapper .box .txtBox ul li {
  border-bottom-color: #E46B57 !important;
}
.contents_bg_02 .contents_02 .boxWrapper .box .txtBox ul li a {
  color: #E46B57 !important;
}

/* ============================================
   NEW TOPICS タグ (contents_05)
   ============================================ */
.contents_bg_05 .contents_05 .boxWrapper dl dt span {
  background: #E46B57 !important;
  border-color: #E46B57 !important;
}

/* ============================================
   SEARCH セクション (contents_06)
   ============================================ */
.contents_06 .searchBox .boxLR h4 > span.en {
  color: #E46B57 !important;
}
.contents_06 .searchBox .boxLR h4 > span.en:after {
  background: #E46B57 !important;
}

/* ============================================
   フッター: メインサイトと統一したスタイル
   ============================================ */
footer {
  background: none !important;
  padding: 0 !important;
}

footer .bottomMenu {
  padding: 60px 0;
  background: #B1B1B1;
}

footer .bottomMenu .links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

footer .bottomMenu .links li {
  font-size: 14px;
  font-weight: 400;
  color: #FFF;
}

footer .bottomMenu .links li:not(:last-child):after {
  content: "｜";
  display: inline-block;
  padding: 0 1em;
  color: #FFF;
}

footer .bottomMenu .links li a {
  color: #FFF;
  text-decoration: none;
}

footer .bottomMenu .links li a:hover {
  text-decoration: underline;
}

footer .bottomBox {
  padding: 30px;
  background: #322C2E;
}

footer .bottomBox .boxLR {
  max-width: 975px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

footer .bottomBox .boxLR ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

footer .bottomBox .boxLR ul li {
  font-size: 14px;
  font-weight: 400;
  color: #FFF;
}

footer .bottomBox .boxLR ul li:not(:last-child):after {
  content: "｜";
  display: inline-block;
  padding: 0 1em;
}

footer .bottomBox .boxLR ul li a {
  color: #FFF;
  text-decoration: none;
}

footer .bottomBox .boxLR ul li a:hover {
  text-decoration: underline;
}

footer .bottomBox .boxLR #copy small {
  font-size: 12px;
  font-weight: 400;
  color: #FFF;
}

/* NEW TOPICS 背景画像 */
.bg_con_05_06 {
  background: url("https://beans-one-recruit.jp/-/top/img/bg_01.png") repeat center top / 82.5px !important;
}

/* modal_01: 画像フル幅＋テキストoverlay */
.modalInner .box .contents.modal_01 .contentsInner .imgBox {
  position: relative;
  overflow: hidden;
  height: 700px;
  margin-bottom: 0;
}
.modalInner .box .contents.modal_01 .contentsInner .imgBox img {
  position: absolute;
  width: auto;
  max-width: none;
  height: 132%;
  right: -38%;
  top: -10%;
}
.modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-wrap {
  position: absolute;
  bottom: 130px;
  left: 100px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 10px;
}
.modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-main {
  writing-mode: vertical-rl;
  color: #fff;
  font-size: 52px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  border-left: 2px solid #fff;
  padding-left: 15px;
}
.modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-sub {
  writing-mode: vertical-rl;
  color: #fff;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 3em;
}

/* フッターtoTopボタン */
footer #toTop {
  position: absolute;
  right: 35px;
  top: -48px;
}

html {
  overflow-x: hidden;
}

/* BRAND フェードインアニメーション */
@media screen and (max-width: 768px) {
  .contents_bg_02 .contents_02 .ttlBox {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease, transform 0.7s ease;
  }
  .contents_bg_02 .contents_02 .ttlBox.is-show {
    opacity: 1;
    transform: translateY(0);
  }
  .contents_bg_02 .contents_02 .boxWrapper .box {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease, transform 0.7s ease;
  }
  .contents_bg_02 .contents_02 .boxWrapper .box.is-show {
    opacity: 1;
    transform: translateY(0);
  }
  .contents_bg_02 .contents_02 .boxWrapper .box.is-show:nth-child(2) {
    transition-delay: 0.15s;
  }
  .contents_bg_02 .contents_02 .boxWrapper .box.is-show:nth-child(3) {
    transition-delay: 0.3s;
  }
}

@media screen and (max-width: 768px) {
  /* 横スクロール防止 */
  html, body {
    overflow-x: hidden;
  }

  /* SP: ABOUT US セクション高さ・背景画像をSP用に調整 */
  .contents_bg_01 {
    min-height: 0 !important;
    padding-bottom: 580px !important;
    background: url("../img/uminosachi.png") no-repeat center bottom 50px / 780px, #212c39 !important;
  }

  /* SP: ABOUT USテキストサイズ拡大 */
  .contents_bg_01 .contents_01 .boxLR .boxR p {
    font-size: 16px !important;
  }

  /* SP: 円形ボタンを右下に配置 */
  .contents_bg_01 {
    position: relative !important;
  }
  .contents_bg_01 .contents_01,
  .contents_bg_01 .contents_01 .innerBox,
  .contents_bg_01 .contents_01 .boxLR,
  .contents_bg_01 .contents_01 .boxLR .innerBox,
  .contents_bg_01 .contents_01 .boxLR .boxR,
  .contents_bg_01 .contents_01 .boxLR .boxR .sp {
    position: static !important;
  }
  .contents_bg_01 .contents_01 .boxLR .boxR .sp {
    display: block !important;
    height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
  }
  .contents_bg_01 .contents_01 .boxLR .boxR .sp .btnBox {
    display: block !important;
    position: absolute !important;
    bottom: 160px !important;
    right: 20px !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
  }


  /* SP: モーダルテキスト縦書き・画像フル幅overlay */
  .modalInner .box .contents.modal_01 .contentsInner .imgBox {
    position: relative !important;
    display: block !important;
    padding: 0 !important;
    overflow: hidden !important;
    height: 260px !important;
  }
  .modalInner .box .contents.modal_01 .contentsInner .imgBox img {
    position: absolute !important;
    width: auto !important;
    height: 150% !important;
    left: 20px !important;
    right: auto !important;
    top: -20% !important;
  }
  .modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-wrap {
    position: absolute !important;
    bottom: 8px !important;
    left: 80px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    border-left: none !important;
    padding-left: 0 !important;
    gap: 6px !important;
  }
  .modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-main {
    writing-mode: vertical-rl !important;
    font-size: 22px !important;
    border-left: 2px solid #fff !important;
    padding-left: 10px !important;
  }
  .modalInner .box .contents.modal_01 .contentsInner .imgBox .modal-ttl-sub {
    writing-mode: vertical-rl !important;
    font-size: 6px !important;
    letter-spacing: 2em !important;
  }

  /* SPヘッダー: ロゴ・見出しサイズを本番と統一 */
  header .headerInner .logoBox img {
    max-width: 140px !important;
  }
  header .headerInner .logoBox h1 {
    font-size: 10px !important;
  }

  /* オリエンタルキッチン US ロゴをSPで拡大 */
  .contents_bg_02 .contents_02 .boxWrapper .box:nth-child(3) .txtBox .logo img {
    width: 300px;
    max-width: 80%;
  }

  /* オリエンタルキッチン US スタッフ円形 SP */
  .contents_bg_02 .contents_02 .boxWrapper .box .imgBox .inner.us-inner > .circle {
    width: 55vw !important;
    max-width: 280px !important;
    right: -5% !important;
  }
}

@media screen and (max-width: 768px) {
  footer .bottomMenu {
    padding: 40px 2.5%;
  }
  footer .bottomMenu .links {
    display: block;
    text-align: center;
  }
  footer .bottomMenu .links li:not(:last-child):after {
    content: none;
  }
  footer .bottomMenu .links li {
    margin-bottom: 12px;
  }
  footer .bottomBox {
    padding: 30px 2.5%;
  }
  footer .bottomBox .boxLR {
    display: block;
    text-align: center;
  }
  footer .bottomBox .boxLR ul {
    margin: 0 0 10px 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
