@charset "UTF-8";
/* =========================================================================
   弁慶グループ 採用サイト（/saiyo）専用スタイル
   Ownd版をクリーン再現。page-saiyo.php から読み込む。
   ========================================================================= */

:root{
	--text:#1C1C1C;
	--main:#595959;
	--sub:#D6D6D6;
	--bg:#FFFFFF;
	--bg-gray:#F3F3F3;
	--serif:"YuMincho","Yu Mincho","Hiragino Mincho ProN","Times New Roman",serif;
	--sans:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","メイリオ",Meiryo,sans-serif;
	--wrap:1120px;
	--head-h:120px;
}

*,*::before,*::after{box-sizing:border-box}
.saiyo-body{margin:0;color:var(--text);background:var(--bg);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased;text-align:justify}
.saiyo-body img{max-width:100%;height:auto;display:block}
.saiyo-body a{color:inherit}
.saiyo-wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* ---- ヘッダー ---- */
.saiyo-header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.05)}
.saiyo-header__inner{max-width:var(--wrap);margin:0 auto;padding:16px 24px;
	display:flex;align-items:center;justify-content:space-between;gap:24px}
.saiyo-header__logo img{height:76px;width:auto;display:block}
.saiyo-header__right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.saiyo-header__sub{margin:0;font-size:12px;color:var(--main);letter-spacing:.05em}
.saiyo-nav{display:flex;align-items:center;flex-wrap:nowrap;justify-content:flex-end;
	font-family:var(--serif);font-size:19px;letter-spacing:.03em;white-space:nowrap}
.saiyo-nav a{display:inline-block;padding:0 14px;text-decoration:none;transition:opacity .2s;border-left:1px solid var(--sub)}
.saiyo-nav a:first-child{border-left:none}
.saiyo-nav a:hover{opacity:.55}

/* ---- ヒーロー ---- */
.saiyo-hero{position:relative;margin-top:var(--head-h);height:min(72vh,720px);min-height:420px;
	background:#333 center/cover no-repeat;display:flex;align-items:center;justify-content:center}
.saiyo-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.28))}
.saiyo-hero__title{position:relative;z-index:1;margin:0;color:#fff;font-family:var(--serif);
	font-size:clamp(2.4rem,4.6vw,4rem);letter-spacing:.12em;text-shadow:0 2px 20px rgba(0,0,0,.4)}
.saiyo-hero__brk{display:none} /* PC/タブレットは1行。モバイルのみ改行を有効化 */

/* ---- 汎用セクション ---- */
.saiyo-section,.saiyo-hero{scroll-margin-top:var(--head-h)}
.saiyo-section{padding:7rem 0}
.saiyo-band{background:var(--bg-gray)}
.saiyo-head{position:relative;margin:0 0 4.5rem;padding-left:140px}
.saiyo-head::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--text)}
.saiyo-head h2{position:relative;display:inline-block;margin:0;padding:0 22px 0 0;background:var(--bg);
	font-family:var(--serif);font-size:2rem;font-weight:600;letter-spacing:.18em}
.saiyo-band .saiyo-head h2{background:var(--bg-gray)}

/* ---- お仕事紹介 ---- */
.saiyo-jobs{display:flex;flex-direction:column;gap:5rem}
.saiyo-job{display:grid;grid-template-columns:1.05fr .95fr;align-items:center}
.saiyo-job__img{position:relative;z-index:1}
.saiyo-job__img img{aspect-ratio:4/3;object-fit:cover;width:100%}
.saiyo-job__body{background:var(--bg-gray);padding:3rem 3rem 3rem 4rem;margin-left:-2.5rem}
.saiyo-job__body h3{margin:0 0 1.2rem;font-family:var(--serif);font-size:1.6rem;letter-spacing:.1em}
.saiyo-job__body p{margin:0 0 1.4rem;font-size:.95rem}
.saiyo-job__note{color:var(--main);font-size:.9rem;margin:0}

/* ---- 募集中のお仕事一覧 ---- */
.saiyo-joblist__empty{background:#fff;text-align:center;padding:5rem 2rem}
.saiyo-joblist__empty p{margin:0}
.saiyo-joblist__empty .lead{font-family:var(--serif);font-size:2rem;letter-spacing:.1em;margin-bottom:1rem}
.saiyo-joblist__empty .sub{font-size:.95rem;color:var(--main)}

/* ---- お仕事のポイント ---- */
.saiyo-points{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5rem 2.5rem}
.saiyo-point{text-align:center}
.saiyo-point__icon{width:90px;height:90px;margin:0 auto 1rem}
.saiyo-point h3{margin:0 0 .8rem;font-family:var(--serif);font-size:1.35rem;letter-spacing:.08em}
.saiyo-point p{margin:0;font-size:.92rem;color:#333;text-align:left}

/* ---- 応募の流れ ---- */
.saiyo-flow{max-width:900px;margin:0 auto;list-style:none;padding:0}
.saiyo-flow__item{display:grid;grid-template-columns:130px 1fr;gap:1.5rem;position:relative;padding-bottom:2.5rem}
.saiyo-flow__item:not(:last-child)::before{content:"";position:absolute;left:64px;top:12px;bottom:-6px;
	border-left:1px dashed #bbb}
.saiyo-flow__step{font-family:var(--serif);font-size:1.05rem;letter-spacing:.1em;color:var(--main);position:relative;z-index:1}
.saiyo-flow__body h3{margin:0 0 .5rem;font-family:var(--serif);font-size:1.2rem;letter-spacing:.08em}
.saiyo-flow__body p{margin:0;font-size:.92rem}

/* ---- よくある質問 ---- */
.saiyo-faq{max-width:960px;margin:0 auto;display:flex;flex-direction:column;gap:1.2rem}
.saiyo-faq details{background:#fff}
.saiyo-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:1rem;
	padding:1.4rem 1.6rem;font-family:var(--serif);font-size:1.2rem;letter-spacing:.06em}
.saiyo-faq summary::-webkit-details-marker{display:none}
.saiyo-faq summary .q{font-family:var(--serif);font-size:1.8rem;font-weight:700;color:var(--main);line-height:1}
.saiyo-faq summary .txt{flex:1}
.saiyo-faq summary .chev{width:16px;height:16px;border-right:2px solid var(--main);border-bottom:2px solid var(--main);
	transform:rotate(45deg);transition:transform .25s;flex:0 0 auto;margin-top:-6px}
.saiyo-faq details[open] summary .chev{transform:rotate(-135deg);margin-top:2px}
.saiyo-faq__a{padding:0 1.6rem 1.6rem 4rem;margin:0;font-size:.95rem;color:#333}

/* ---- 会社概要 ---- */
.saiyo-about__table{border-collapse:collapse;width:100%;max-width:800px}
.saiyo-about__table th,.saiyo-about__table td{text-align:left;vertical-align:top;padding:1rem 0;font-weight:normal}
.saiyo-about__table th{width:220px;color:var(--text)}
.saiyo-about__table a{text-decoration:underline}

/* ---- フッター ---- */
.saiyo-footer{background:var(--text);color:#fff;text-align:center;padding:3rem 1.5rem}
.saiyo-footer a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:2px}
.saiyo-footer a:hover{border-color:transparent}
.saiyo-footer__copy{margin:2rem 0 0;font-size:.8rem;letter-spacing:.08em;color:#cfcfcf}

/* ---- 店舗ごとのグループ見出し ---- */
.saiyo-joblist__group{margin-bottom:2.8rem}
.saiyo-joblist__group:last-child{margin-bottom:0}
.saiyo-joblist__store{display:flex;align-items:center;gap:.55rem;font-family:var(--serif);font-size:1.4rem;letter-spacing:.08em;margin:0 0 1.1rem;padding-bottom:.55rem;border-bottom:2px solid var(--main)}
.saiyo-joblist__store .saiyo-ic{margin-right:0;color:var(--main)}
.saiyo-joblist__area{font-family:var(--sans);font-size:.78rem;color:var(--main);border:1px solid var(--sub);padding:.16em .7em;border-radius:2px;letter-spacing:.04em}

/* ---- 求人カード（募集中のお仕事一覧）---- */
.saiyo-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;list-style:none;padding:0;margin:0}
.saiyo-card{display:flex}
.saiyo-card__link{display:flex;flex-direction:column;width:100%;padding:1.3rem 1.5rem 1.2rem;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--sub);transition:box-shadow .2s,transform .2s}
.saiyo-card__link:hover{box-shadow:0 10px 26px rgba(0,0,0,.08);transform:translateY(-2px)}
.saiyo-card__badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.7rem}
.saiyo-badge{display:inline-block;font-family:var(--sans);font-size:.76rem;letter-spacing:.06em;padding:.22em .8em;border-radius:2px;white-space:nowrap}
.saiyo-badge--fulltime{background:var(--text);color:#fff}
.saiyo-badge--part{background:#e9e9e9;color:var(--text)}
.saiyo-badge--urgent{background:#c0392b;color:#fff}
.saiyo-card__title{font-family:var(--serif);font-size:1.3rem;letter-spacing:.06em;margin:0 0 .5rem}
.saiyo-card__meta,.saiyo-card__salary{margin:0 0 .3rem;font-size:.95rem}
.saiyo-card__salary{font-weight:bold}
.saiyo-ic{display:inline-block;width:1em;height:1em;margin-right:.55em;vertical-align:-.14em;flex:0 0 auto}
.saiyo-card__tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;padding:0;margin:.7rem 0 0}
.saiyo-card__tags li{font-size:.75rem;color:var(--main);border:1px solid var(--sub);padding:.16em .65em;border-radius:2px}
.saiyo-card__more{margin-top:auto;padding-top:.9rem;font-family:var(--serif);font-size:.95rem;letter-spacing:.06em;color:var(--main)}
.saiyo-card__more .arw,.saiyo-jobdetail__back .arw{margin:0 .35em}

/* ---- 求人詳細（個別ページ /saiyo/jobs/{slug}/）---- */
.saiyo-wrap--narrow{max-width:860px}
.saiyo-jobdetail{padding-top:calc(var(--head-h) + 3.5rem)}
.saiyo-jobdetail__back{display:inline-block;font-family:var(--serif);letter-spacing:.06em;color:var(--main);text-decoration:none;margin:0 0 2rem}
.saiyo-jobdetail__back:last-child{margin:2.5rem 0 0}
.saiyo-jobdetail__back:hover{opacity:.55}
.saiyo-jobdetail__head{border-bottom:1px solid var(--sub);padding-bottom:1.6rem;margin-bottom:2.5rem}
.saiyo-jobdetail__title{font-family:var(--serif);font-size:2.6rem;letter-spacing:.06em;margin:.6rem 0 .5rem;border:none;padding:0}
.saiyo-jobdetail__store{margin:0;color:var(--main)}
.saiyo-jobdetail__table{width:100%;border-collapse:collapse}
.saiyo-jobdetail__table th,.saiyo-jobdetail__table td{text-align:left;vertical-align:top;padding:1.1rem 0;border-bottom:1px solid #eee;font-weight:normal}
.saiyo-jobdetail__table th{width:8.5em;padding-right:1.5rem;font-family:var(--serif);letter-spacing:.06em;color:var(--text)}
.saiyo-jobdetail__table td{line-height:1.9}
.saiyo-jobdetail__table td .salary{display:block;font-size:1.2rem;font-weight:bold}
.saiyo-jobdetail__table td .note{display:block;font-size:.88rem;color:var(--main);margin-top:.3rem}
.saiyo-jobdetail__benefits{list-style:none;padding:0;margin:0 0 .9rem}
.saiyo-jobdetail__benefits li{position:relative;padding-left:1.1em}
.saiyo-jobdetail__benefits li::before{content:"・";position:absolute;left:0}
.saiyo-jobdetail__apply{background:var(--bg-gray);text-align:center;padding:2.6rem 1.5rem;margin:3rem 0 0}
.saiyo-jobdetail__apply h2{font-family:var(--serif);font-size:1.6rem;letter-spacing:.1em;margin:0 0 1rem}
.saiyo-jobdetail__apply p{margin:.4rem 0}
.saiyo-jobdetail__apply .tel{margin:1.3rem 0 .5rem}
.saiyo-jobdetail__apply .tel a{font-family:var(--serif);font-size:2rem;font-weight:bold;letter-spacing:.04em;color:var(--text);text-decoration:none}
.saiyo-jobdetail__apply .contact{font-size:.9rem;color:var(--main)}

/* =========================================================================
   レスポンシブ（〜767px）：ナビは非表示、各セクションは1列積み
   ========================================================================= */

@media (max-width:767.98px){
	.saiyo-header__inner{padding:12px 18px}
	.saiyo-header__logo img{height:44px}
	.saiyo-header__right{gap:0}
	.saiyo-header__sub{font-size:10px}
	.saiyo-nav{display:none}
	/* 画像は4:3。縦長ボックスにcoverで入れると左右が大きく切れるため、
	   ボックスの縦横比を画像に合わせて全体を見せる（左右の見切れを防ぐ） */
	.saiyo-hero{margin-top:68px;height:auto;aspect-ratio:4/3;min-height:0;max-height:78vh;background-position:center}
	.saiyo-hero__title{font-size:1.6rem;letter-spacing:.06em;padding:0 16px;line-height:1.75;text-align:center}
	.saiyo-hero__brk{display:inline} /* モバイルは「新鮮な寿司で、／笑顔をお届け。」の2行 */
	.saiyo-section{padding:4rem 0}
	.saiyo-head{padding-left:0;margin-bottom:2.5rem;text-align:center}
	.saiyo-head::before{display:none}
	.saiyo-head h2{padding:0;font-size:1.6rem;border-bottom:2px solid var(--text);padding-bottom:.4rem}
	.saiyo-jobs{gap:3rem}
	.saiyo-job{grid-template-columns:1fr;gap:0}
	.saiyo-job__body{margin-left:0;margin-top:-1.5rem;padding:2rem 1.5rem}
	.saiyo-points{grid-template-columns:1fr;gap:2.5rem;max-width:360px;margin:0 auto}
	.saiyo-point p{text-align:center}
	.saiyo-flow__item{grid-template-columns:80px 1fr;gap:1rem}
	.saiyo-flow__item:not(:last-child)::before{left:40px}
	.saiyo-faq summary{font-size:1rem;padding:1.1rem 1.2rem}
	.saiyo-faq__a{padding-left:1.2rem}
	.saiyo-about__table th{width:auto;display:block;padding-bottom:.2rem;color:var(--main);font-size:.9rem}
	.saiyo-about__table td{display:block;padding-top:0;padding-bottom:1.3rem}
	.saiyo-joblist__empty .lead{font-size:1.4rem}
	.saiyo-joblist__group{margin-bottom:2.2rem}
	.saiyo-joblist__store{font-size:1.2rem;margin-bottom:.9rem}
	.saiyo-cards{grid-template-columns:1fr;gap:1rem}
	.saiyo-card__link{padding:1.2rem 1.3rem}
	.saiyo-jobdetail{padding-top:calc(68px + 2.5rem)}
	.saiyo-jobdetail__title{font-size:2rem}
	.saiyo-jobdetail__table th{width:auto;display:block;padding:0;border:none;color:var(--main);font-size:.9rem}
	.saiyo-jobdetail__table td{display:block;padding:.3rem 0 1.2rem}
	.saiyo-jobdetail__apply{padding:2rem 1.2rem}
	.saiyo-jobdetail__apply .tel a{font-size:1.7rem}
}
