@charset "UTF-8";
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;color:#2e302b;background:#f3f2eb;line-height:1.85}a{color:inherit;text-decoration:none}.site-header{height:92px;padding:0 max(24px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;background:#f3f2eb}.brand{width:260px}.brand img{display:block;width:100%;height:auto}.back-link{font-size:.82rem;font-weight:700;letter-spacing:.08em;border-bottom:1px solid #777;padding:4px 0}.back-link span{margin-left:8px}.recruit-hero{background:#16201a;color:#fff;padding:90px 24px 80px;position:relative;overflow:hidden}.recruit-hero:after{content:"SENDAI";position:absolute;right:-.03em;bottom:-.35em;color:rgba(255,255,255,.035);font-size:clamp(8rem,24vw,22rem);font-weight:800;letter-spacing:-.06em;line-height:1}.hero-inner{position:relative;z-index:1;max-width:1100px;margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.24em;color:#c4bda4;margin-bottom:22px}.location-label{font-size:.88rem;letter-spacing:.12em;margin-bottom:26px}.location-label span{display:inline-block;background:#c8632b;border-radius:999px;padding:5px 15px;margin-right:10px;font-weight:700}.recruit-hero h1{font-size:clamp(2rem,4.6vw,3.6rem);line-height:1.38;letter-spacing:.02em;font-weight:600}.hero-lead{font-size:clamp(0.95rem,1.4vw,1.14rem);margin-top:30px;color:rgba(255,255,255,.78)}.hero-summary{display:grid;grid-template-columns:repeat(3,1fr);max-width:780px;margin-top:55px;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.hero-summary div{padding:18px 25px;border-right:1px solid rgba(255,255,255,.25)}.hero-summary div:last-child{border:0}.hero-summary span,.hero-summary strong{display:block}.hero-summary span{font-size:.7rem;color:#c4bda4;letter-spacing:.12em}.hero-summary strong{font-size:1.1rem;letter-spacing:.05em;margin-top:2px}.content-wrap{max-width:1100px;margin:0 auto;padding:80px 20px}.section-card{background:#fff;border-radius:8px;padding:48px 54px;margin-bottom:28px;border:1px solid #e7e4da}.message-section{font-size:1.08rem;font-weight:500;padding-top:44px;padding-bottom:24px;border-top:4px solid #c8632b}.message-section p{margin-bottom:20px}.section-heading{display:flex;align-items:center;gap:15px;margin-bottom:30px}.section-heading span{font-family:Georgia,serif;font-size:.78rem;color:#c8632b;border:1px solid #c8632b;border-radius:50%;width:33px;height:33px;display:grid;place-items:center}.section-heading h2{font-size:1.45rem;letter-spacing:.08em}.detail-list>div{display:grid;grid-template-columns:180px 1fr;padding:22px 0;border-top:1px solid #e7e4da}.detail-list>div:last-child{border-bottom:1px solid #e7e4da}.detail-list dt{font-weight:700;font-size:.9rem}.detail-list dd{font-size:1rem}.detail-list small{color:#74766f}.check-grid{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px}.check-grid li{position:relative;padding:12px 12px 12px 35px;background:#f6f5ef;border-radius:5px}.check-grid li:before{content:"✓";position:absolute;left:14px;color:#c8632b;font-weight:800}.section-note{margin-top:-18px;margin-bottom:25px;color:#74766f;font-size:.9rem}.timeline{list-style:none}.timeline li{display:grid;grid-template-columns:145px 1fr 75px;align-items:center;gap:25px;padding:24px 0;border-top:1px solid #ddd9cd}.timeline li:last-child{border-bottom:1px solid #ddd9cd}.day span,.day strong,.time span,.time strong{display:block}.day span{font-size:.65rem;letter-spacing:.15em;color:#c8632b;font-weight:700}.day strong{font-size:1.5rem}.day small{font-size:.75rem}.time strong{font-size:1.3rem;letter-spacing:.04em}.time span{color:#65675f;font-size:.9rem}.timeline em{font-size:.78rem;font-style:normal;background:#16201a;color:#fff;border-radius:999px;text-align:center;padding:5px}.reward-card{text-align:center;background:#e3e1d4}.reward-card .section-heading{justify-content:center}.reward-label{font-size:.9rem;letter-spacing:.12em}.reward-price{color:#c8632b;line-height:1.2;margin:5px 0 20px}.reward-price strong{font-family:Georgia,serif;font-size:4.3rem;font-weight:400}.small-notes{list-style:none;font-size:.78rem;color:#65675f}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:28px}.accent-card{background:#16201a;color:#fff;border-color:#16201a}.accent-card .section-heading span{color:#d9875b;border-color:#d9875b}.text-list{padding-left:1.2em}.text-list li{margin-bottom:10px;padding-left:5px}.application-card{text-align:center}.application-card>.section-heading{justify-content:center}.application-fields{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0 30px}.application-fields span{background:#f3f2eb;border-radius:999px;font-size:.83rem;padding:6px 15px}.flow{display:flex;align-items:center;justify-content:center;margin:35px 0 45px}.flow div{width:145px;min-height:120px;border:1px solid #d7d4c8;border-radius:6px;padding:15px 8px}.flow b{display:grid;place-items:center;width:26px;height:26px;background:#c8632b;color:white;border-radius:50%;margin:0 auto 9px;font-size:.75rem}.flow span{font-size:.82rem;font-weight:700;line-height:1.6}.flow i{font-style:normal;color:#aaa;padding:0 12px}.apply-button{display:flex;align-items:center;justify-content:center;max-width:500px;min-height:66px;margin:auto;border-radius:6px;font-weight:700;letter-spacing:.08em}.apply-button.is-disabled{background:#cfcec6;color:#777;cursor:not-allowed}.closing{margin-top:40px}.closing strong{display:inline-block;margin-top:12px;font-size:1.1rem;letter-spacing:.08em}footer{background:#e8e9e2;text-align:center;padding:45px 20px;color:#888;font-size:.78rem}.pc-only{display:block}
@media(max-width:760px){.site-header{height:72px;padding:0 18px}.brand{width:180px}.back-link{font-size:.7rem}.recruit-hero{padding:60px 20px 50px}.recruit-hero h1{font-size:1.85rem}.hero-summary{grid-template-columns:1fr;margin-top:38px}.hero-summary div{display:grid;grid-template-columns:90px 1fr;align-items:center;padding:11px 14px;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.hero-summary div:last-child{border:0}.hero-summary strong{margin:0}.content-wrap{padding:42px 15px}.section-card{padding:32px 22px;margin-bottom:18px}.message-section{font-size:1rem}.section-heading{margin-bottom:23px}.section-heading h2{font-size:1.2rem}.detail-list>div{grid-template-columns:1fr;gap:6px}.detail-list dt{color:#c8632b}.check-grid{grid-template-columns:1fr;gap:8px}.timeline li{grid-template-columns:92px 1fr;gap:12px}.timeline em{grid-column:2;width:60px;margin-top:-8px}.day strong{font-size:1.2rem}.time strong{font-size:1.05rem}.two-column{grid-template-columns:1fr;gap:0}.reward-price strong{font-size:3.4rem}.flow{align-items:stretch;flex-direction:column;gap:8px}.flow div{width:100%;min-height:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px}.flow b{margin:0}.flow br{display:none}.flow i{transform:rotate(90deg);height:18px;line-height:18px}.application-fields{justify-content:flex-start}.pc-only{display:none}}

/* 有効な応募フォームボタン */
.apply-button:not(.is-disabled){justify-content:space-between;padding:0 25px;background:#c8632b;color:#fff;transition:background-color .2s ease,transform .2s ease}
.apply-button:not(.is-disabled):hover{background:#a94f20;transform:translateY(-2px)}
.apply-button:not(.is-disabled) span{font-size:1.2rem}

/* ヒーロー内の展示会ページ導線 */
.hero-back-link{display:inline-flex;align-items:center;gap:9px;margin-bottom:48px;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.55);color:rgba(255,255,255,.86);font-size:.8rem;font-weight:700;letter-spacing:.08em;transition:color .2s ease,border-color .2s ease}
.hero-back-link:hover{color:#fff;border-color:#fff}

/* 勤務日程と報酬 */
.schedule-reward-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:28px;align-items:stretch}
.schedule-reward-row .section-card{margin-bottom:28px}
.schedule-reward-row .reward-card{display:flex;flex-direction:column;text-align:left}
.schedule-reward-row .reward-card .section-heading{justify-content:flex-start}
.reward-content{margin:auto 0;text-align:center}
.schedule-reward-row .reward-price strong{font-size:3.2rem}

@media(max-width:900px){
    .schedule-reward-row{grid-template-columns:1fr}
    .schedule-reward-row .reward-card{text-align:center}
    .schedule-reward-row .reward-card .section-heading{justify-content:center}
}

@media(max-width:760px){
    .hero-back-link{margin-bottom:35px}
}

/* カードの質感と募集情報の表示調整 */
.section-card{box-shadow:0 5px 18px rgba(22,32,26,.065)}
.message-section{border-top:0}
.check-grid li,.flow div{box-shadow:0 3px 10px rgba(22,32,26,.045)}

.schedule-reward-row .reward-card,
.schedule-reward-row .reward-card .section-heading,
.reward-content{text-align:left;justify-content:flex-start}
.reward-content{margin:auto 0}
.schedule-reward-row .reward-price{color:#3f433d;margin:8px 0 24px;padding-bottom:18px;border-bottom:1px solid rgba(63,67,61,.2)}
.schedule-reward-row .reward-price strong{font-size:2.65rem;font-weight:400;letter-spacing:.02em}

@media(max-width:760px){
    .timeline em{width:auto;max-width:max-content;white-space:nowrap;justify-self:start;padding:5px 11px}
    .application-card .flow{text-align:left;align-items:stretch}
    .application-card .flow div{justify-content:flex-start;text-align:left}
    .application-card .flow b{flex:0 0 26px}
}

/* 仙台会場情報 */
.venue-info{margin:15px 0 13px;padding:17px 20px;background:#f6f5ef;border-radius:6px;font-size:.9rem}
.venue-info p{display:grid;grid-template-columns:72px 1fr;gap:10px;padding:4px 0}
.venue-info p>span{color:#77786f;font-size:.75rem;font-weight:700;letter-spacing:.06em}
.venue-info a{display:inline-block;font-weight:700;border-bottom:1px solid #77786f;width:max-content;max-width:100%}
.venue-info a:hover{opacity:.65}
.venue-info i{font-style:normal;font-size:.75rem;margin-left:4px}

@media(max-width:760px){
    .venue-info{padding:15px}
    .venue-info p{grid-template-columns:1fr;gap:0;padding:7px 0}
}

/* スマートフォン版：応募方法と募集フロー */
@media(max-width:760px){
    .application-card{text-align:left}
    .application-card>.section-heading{justify-content:flex-start}
    .application-card .flow i{align-self:flex-start;height:auto;margin:0 0 0 18px;padding:0;line-height:1;transform:none;font-size:0}
    .application-card .flow i::after{content:"↓";font-size:1rem;color:#8d8e87}
    .application-card .apply-button{margin-left:0;margin-right:0}
}

/* 報酬・応募方法の最終調整 */
.schedule-reward-row .reward-card{background:#fff}
.schedule-reward-row .reward-price strong{font-size:2.15rem}

.application-card{text-align:left}
.application-card>.section-heading{justify-content:flex-start}
.application-card .application-fields{justify-content:flex-start;gap:6px}
.application-card .application-fields span{padding:4px 8px;font-size:.68rem}
.application-card .flow{justify-content:flex-start}
.application-card .apply-button{margin-left:0;margin-right:0}

.flow-title{margin-top:34px;font-size:1rem;letter-spacing:.08em}
.application-card .flow div{width:auto;max-width:250px;flex:1}
.application-card .flow span small{display:inline-block;margin-top:4px;color:#77786f;font-size:.72rem;font-weight:400}
@media(max-width:760px){
    .application-card .flow div{width:100%;max-width:none;flex:none}
    .flow-title{font-size:.95rem}
}

/* PC版：採用までの流れを横長カード3段に */
@media(min-width:761px){
    .application-card .flow{flex-direction:column;align-items:center;width:100%;max-width:760px;margin-left:auto;margin-right:auto;gap:8px}
    .application-card .flow div{display:grid;grid-template-columns:42px 1fr;align-items:center;width:100%;max-width:none;min-height:92px;padding:18px 24px;text-align:left}
    .application-card .flow b{margin:0}
    .application-card .flow i{height:18px;padding:0;line-height:18px;transform:none;font-size:0}
    .application-card .flow i::after{content:"↓";font-size:1rem;color:#8d8e87}
    .application-card .flow span{line-height:1.75}
    .application-card .flow span br{display:none}
}

/* PC版：応募項目タグを1行に */
@media(min-width:761px){
    .application-card .application-fields{flex-wrap:nowrap;gap:3px}
    .application-card .application-fields span{flex:0 0 auto;padding:3px 7px;font-size:.72rem;white-space:nowrap}
}

/* ヒーロー主見出しをコンパクトに */
.recruit-hero h1{font-size:clamp(1.65rem,3.2vw,2.65rem)}
@media(max-width:760px){
    .recruit-hero h1{font-size:1.45rem;line-height:1.5}
}

/* PC版：応募方法を中央揃え */
@media(min-width:761px){
    .application-card{text-align:center}
    .application-card>.section-heading{justify-content:center}
    .application-card .application-fields{justify-content:center}
    .application-card .flow{justify-content:center}
    .application-card .apply-button{margin-left:auto;margin-right:auto}
}

/* スマートフォン版の基準文字サイズ */
@media(max-width:760px){
    html{font-size:15px}
    .check-grid li,
    .text-list li{font-size:.87rem;line-height:1.7}
    .application-card>p{font-size:.89rem}
    .application-card .application-fields span{font-size:.98rem}
    .application-card .flow span{font-size:.82rem}
    .application-card .apply-button{font-size:.9rem}
    .application-card .closing strong{font-size:1rem}
}

/* ヒーロー右上のmomijiロゴ */
.recruit-hero::after{display:none}
.hero-logo{position:absolute;top:0;right:0;width:82px;height:auto;object-fit:contain}

.ticket-refund-note{color:#c8632b}
.ticket-refund-note span{color:#2e302b}

/* お問い合わせ */
.contact-card{text-align:center;padding:70px 20px 35px}
.contact-card h2{margin-bottom:28px;font-size:2rem;line-height:1.4;letter-spacing:.04em}
.contact-card>p{font-size:1rem;line-height:1.9}
.contact-email{margin:32px 0 28px;font-size:1.55rem!important;font-weight:800;letter-spacing:.02em}
.contact-email a{border-bottom:1px solid #2e302b;transition:opacity .2s ease}
.contact-email a:hover{opacity:.6}
.contact-note{color:#2e302b;font-size:.9rem!important}

@media(max-width:760px){
    .hero-logo{width:58px;top:2px;right:0}
    .contact-card{display:flex;flex-direction:column;align-items:center;padding:55px 8px 25px;text-align:center!important}
    .contact-card h2{width:100%;margin-bottom:24px;font-size:1.7rem;text-align:center!important}
    .contact-card>p{width:100%;font-size:.92rem;text-align:center!important}
    .contact-email{margin:26px 0 24px;font-size:1.18rem!important;font-weight:800;overflow-wrap:anywhere;text-align:center!important}
    .contact-note{font-size:.82rem!important;text-align:center!important}
}
