/* Only the managed recruitment areas. Keep legacy page widths and surrounding design. */
.rc-fluid-image { display:block; width:100% !important; max-width:100%; height:auto !important; }
.rc-events { margin:4px 15px 32px; padding-top:25px; border-top:1px solid #735d41; }
.rc-events h2 { margin:0 0 22px; color:#dfc69e; font-size:18px; font-weight:600; line-height:1.65; text-align:center; letter-spacing:.04em; }
.rc-event { margin-bottom:24px; border:1px solid #65543c; border-radius:5px; overflow:hidden; background:#25251f; }
.rc-event-date { margin:0; padding:15px 15px 0; color:#d9c29b; font-size:12px; }
.rc-event h3 { margin:6px 15px 13px; font-size:15px; font-weight:600; line-height:1.6; overflow-wrap:anywhere; }
.rc-event-description { margin:0; padding:15px; color:#d2cabe; font-size:12px; line-height:1.9; overflow-wrap:anywhere; }
.rc-events-empty { text-align:center; color:#c2b7a4; font-size:12px; }
.shop-details p, .shop-cta span, .intro h1, .intro-description { overflow-wrap:anywhere; }
#shop_top_img, #shop_pos, #pickupbig, #pickupv, #recgirl { height:auto !important; max-width:100%; }
.filbox { height:auto !important; min-height:0 !important; box-sizing:border-box; max-width:100%; }
.fil { height:auto !important; max-width:100%; box-sizing:border-box; }
.rc-video-link { display:block; max-width:100%; margin:0 auto; }
.rc-video-player { display:block; width:100%; height:auto; max-width:100%; max-height:80vh; margin:auto; background:#000; }
.rc-no-media { padding:25px 8px; background:#292929; color:#fff; text-align:center; }
.pickupber, .pickupberbig { height:auto !important; max-width:100%; box-sizing:border-box; }
.rc-benefits { max-width:100%; box-sizing:border-box; }
.rc-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; box-sizing:border-box; width:100%; padding:6px 10px; margin:0; list-style:none; }
.rc-benefit-grid li { width:auto; height:auto; padding:0; margin:0; list-style:none; }
.rc-benefit-open { display:block; width:100%; height:100%; min-height:44px; padding:0; border:0; background:transparent; font:inherit; cursor:pointer; }
.rc-benefit-open img { display:block; width:100%; height:auto; }
.rc-benefit-open>span { display:flex; align-items:center; justify-content:center; aspect-ratio:1; padding:8px; color:#84451f; background:#fff0d4; border:1px solid #e0bc86; font-size:12px; box-sizing:border-box; overflow-wrap:anywhere; }
.rc-benefit-open:focus-visible, .rc-video-link:focus-visible { outline:3px solid #de4893; outline-offset:2px; }
.rc-benefits-more summary { margin:6px 10px; padding:11px 8px; text-align:center; list-style:none; background:#fff0f7; border:1px solid #f0c6d8; color:#754951; cursor:pointer; font-size:13px; }
.rc-benefits-more summary::-webkit-details-marker { display:none; }
.rc-more-close, .rc-benefits-more[open] .rc-more-open { display:none; }
.rc-benefits-more[open] .rc-more-close { display:inline; }
.rc-benefit-dialog { box-sizing:border-box; width:calc(100% - 28px); max-width:560px; max-height:85vh; padding:22px 18px; margin:auto; border:2px solid #b6a39b; border-radius:5px; color:#44220d; background:#fff; overflow:auto; }
.rc-benefit-dialog::backdrop { background:rgba(0,0,0,.56); }
.rc-benefit-dialog.rc-dialog-fallback { position:fixed; inset:50% auto auto 50%; transform:translate(-50%,-50%); z-index:10000; box-shadow:0 0 0 100vmax #0008; }
.rc-dialog-close { position:absolute; top:3px; right:4px; width:36px; height:36px; border:0; background:transparent; color:#55362e; font:28px/1 sans-serif; cursor:pointer; }
.rc-dialog-number { display:inline-block; margin:0 32px 10px 0; padding:5px 10px; background:#ef9b24; color:#fff; font-size:12px; font-weight:bold; }
.rc-benefit-dialog h2 { margin:0 22px 15px 0; font-size:16px; line-height:1.7; overflow-wrap:anywhere; }
.rc-dialog-body { display:flex; align-items:flex-start; gap:14px; }
.rc-dialog-body img { width:32%; max-width:155px; height:auto; }
.rc-dialog-body p { flex:1; min-width:0; margin:0; font-size:13px; line-height:1.85; overflow-wrap:anywhere; }
.rc-dialog-body p span, .rc-dialog-body p strong { color:#dd5d96; font-weight:bold; }
.rc-benefit-title { height:auto !important; min-height:28px; line-height:1.7 !important; padding:5px 4px !important; box-sizing:border-box; overflow-wrap:anywhere; }
.rc-benefit-detail { height:auto !important; min-height:0 !important; padding-bottom:12px !important; }
.rc-benefit-detail .rightp, .rc-benefit-detail .rightp2 { height:auto !important; min-height:130px; box-sizing:border-box; overflow-wrap:anywhere; padding-bottom:8px !important; }
.rc-benefit-detail .leftph, .rc-benefit-detail .leftph2 { height:auto !important; }
.staffbox .itemm, .staffbox .box_center, .staffbox .prfint2 { height:auto !important; min-height:0 !important; }
.staffbox #girlint { height:auto !important; }
.staffbox .nameint2, .staffbox .uint2, .staffbox .bint2, .staffbox .titint2, .staffbox .pint { height:auto !important; overflow-wrap:anywhere; }
.staffbox .uint2, .staffbox .bint2 { min-height:27px; }
.staffbox .pint { padding-bottom:12px; }
@media(min-width:540px) { .rc-events { margin-left:24px; margin-right:24px; } .rc-event-description { font-size:14px; } }
@media(max-width:350px) { .rc-dialog-body { display:block; } .rc-dialog-body img { width:110px; margin:0 auto 12px; display:block; } }

/* Small display dates: banner watermark and inline video headings only. */
.rc-banner-stamp-wrap { position:relative; display:block; width:100%; max-width:100%; margin:0; padding:0; }
.rc-banner-date { position:absolute; left:8px; bottom:6px; z-index:1; display:block; max-width:calc(100% - 16px); color:rgba(255,255,255,.76); text-shadow:0 1px 2px rgba(0,0,0,.85); font:10px/1.4 -apple-system,BlinkMacSystemFont,"Yu Gothic",Meiryo,sans-serif; letter-spacing:.025em; font-variant-numeric:tabular-nums; white-space:nowrap; pointer-events:none; }
.orangebr.rc-timed-heading, .komidashi.rc-timed-heading { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:2px 8px; height:auto !important; min-height:34px; box-sizing:border-box; padding:4px 5px; line-height:1.5 !important; }
.komidashi.rc-timed-heading { justify-content:flex-start; min-height:24px; padding-left:10px; }
.rc-video-date { display:inline-block; flex:none; color:inherit; opacity:.88; font-size:10px; font-weight:400; line-height:1.5; letter-spacing:0; font-variant-numeric:tabular-nums; white-space:nowrap; }
