@charset "UTF-8";
/* v1.3.13 stylesheet manifest */
@import url("css/common.css?v=1.3.22");
@import url("css/editor.css?v=1.2.11");
@import url("css/post-detail.css?v=1.3.20");
@import url("css/account.css?v=1.3.22");
@import url("css/responsive.css?v=1.2.93");

/* 攻略投稿側の案内CTAには、攻略依頼ページから移した青緑パレットを使う。 */
.home-request-banner{background:linear-gradient(135deg,#083f43,#126c69);box-shadow:0 20px 45px rgba(8,63,67,.18)}
.home-request-banner .section-kicker{color:#20a59c}
.home-request-banner .button.button-primary{border-color:#137d78;background:linear-gradient(135deg,#198f88,#095e61);color:#fff}
html{scrollbar-gutter:stable}
body.dialog-open{width:auto}

/* 初回利用者向け案内。既存の金／青緑パレットと dialog 操作を共用する。 */
.info-guide-trigger{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:8px 0;border:0;border-bottom:1px solid color-mix(in srgb,var(--gold) 42%,transparent);background:transparent;color:var(--gold);font-weight:800;cursor:pointer}
.info-guide-trigger>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid currentColor;border-radius:50%;font-family:Georgia,serif;font-size:14px}
.info-guide-trigger:hover,.info-guide-trigger:focus-visible{color:var(--gold2);border-bottom-color:currentColor;outline:none}
.request-info-guide-trigger{color:#137d78;border-bottom-color:rgba(19,125,120,.38)}
.request-info-guide-trigger:hover,.request-info-guide-trigger:focus-visible{color:#095e61}
.info-guide-dialog{width:min(920px,calc(100vw - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:0;background:transparent;color:var(--ink)}
.info-guide-dialog::backdrop{background:rgba(20,17,12,.7);backdrop-filter:blur(4px)}
.info-guide-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:min(88dvh,820px);overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--panel,#fff);box-shadow:0 28px 80px rgba(31,22,12,.34)}
.info-guide-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:25px 28px 20px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,var(--paper2),var(--panel,#fff))}
.info-guide-header .section-kicker{margin:0 0 7px}.info-guide-header h2{margin:0;font:500 clamp(27px,4vw,38px) Georgia,"Yu Mincho",serif}
.info-guide-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--panel,#fff);font-size:23px;line-height:1;cursor:pointer}
.info-guide-close:hover,.info-guide-close:focus-visible{border-color:var(--gold);color:var(--gold);outline:2px solid color-mix(in srgb,var(--gold) 22%,transparent);outline-offset:2px}
.info-guide-scroll{min-height:0;padding:24px 28px 30px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.info-guide-lead{margin:0 0 22px;padding:18px 20px;border-left:4px solid var(--gold);background:var(--paper2);font-size:14px;line-height:1.9}.info-guide-lead strong{display:block;margin-bottom:2px;font:600 21px Georgia,"Yu Mincho",serif}
.info-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.info-guide-card{position:relative;min-height:168px;padding:20px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel,#fff) 96%,var(--paper2));box-shadow:0 7px 18px rgba(53,39,19,.04)}
.info-guide-card.is-featured{border-color:color-mix(in srgb,var(--gold) 62%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--gold) 8%,var(--panel,#fff)),var(--panel,#fff));box-shadow:inset 4px 0 var(--gold),0 7px 18px rgba(53,39,19,.05)}
.info-guide-card h3,.info-guide-steps h3{margin:4px 0 9px;font-size:16px}.info-guide-card p,.info-guide-steps p{margin:0;color:var(--muted);font-size:12px;line-height:1.85}
.info-guide-number{color:var(--gold);font:700 11px Georgia,serif;letter-spacing:.12em}.info-guide-badge{display:inline-block;padding:3px 7px;border-radius:999px;background:var(--gold);color:#fff;font-size:8px;font-weight:900;letter-spacing:.14em}
.info-guide-footer{display:flex;justify-content:flex-end;padding:15px 28px;border-top:1px solid var(--line);background:var(--paper2)}
.info-guide-footer .button{min-width:190px}
.request-info-guide-dialog .info-guide-header .section-kicker{color:#137d78}.request-info-guide-dialog .info-guide-lead{border-left-color:#137d78}
.info-guide-examples{margin:0 0 10px;padding:15px 18px;border:1px solid rgba(19,125,120,.3);border-radius:10px;background:rgba(19,125,120,.06);color:#0c6865}.info-guide-examples p{margin:3px 0;font:600 15px Georgia,"Yu Mincho",serif}
.info-guide-bridge{margin:0 0 20px;color:var(--muted);font-size:13px}
.info-guide-steps{display:grid;gap:11px;margin:0;padding:0;list-style:none}.info-guide-steps li{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:17px 18px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel,#fff) 96%,#dff2ef)}
.info-guide-steps li>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #137d78;border-radius:50%;color:#137d78;font:800 13px Georgia,serif}.info-guide-steps h3{margin-top:0}.info-guide-steps small{display:block;margin-top:9px;color:#a13c35;font-size:10px;line-height:1.6}.info-guide-steps .is-reward{border-color:color-mix(in srgb,var(--gold) 65%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--gold) 8%,var(--panel,#fff)),var(--panel,#fff))}.info-guide-steps .is-reward>span{border-color:var(--gold);color:var(--gold)}
.info-guide-closing{margin-top:22px;padding:20px;border-top:1px solid #7dbdb7;border-bottom:1px solid #7dbdb7;text-align:center}.info-guide-closing p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.9}.info-guide-closing strong{color:#0c706c;font-size:14px}
.request-info-guide-dialog .info-guide-footer .button{border-color:#137d78;background:linear-gradient(135deg,#198f88,#095e61)}
html[data-theme="dark"] .info-guide-shell{border-color:#3d3932;background:#171b20;color:#f5f1e9}html[data-theme="dark"] .info-guide-header{border-color:#3d3932;background:linear-gradient(120deg,#20252b,#171b20)}html[data-theme="dark"] .info-guide-close{border-color:#4a463e;background:#20252b;color:#f5f1e9}html[data-theme="dark"] .info-guide-lead,html[data-theme="dark"] .info-guide-footer{border-color:#3d3932;background:#20252b}html[data-theme="dark"] .info-guide-card,html[data-theme="dark"] .info-guide-steps li{border-color:#3d4748;background:#1b2226}html[data-theme="dark"] .info-guide-card.is-featured,html[data-theme="dark"] .info-guide-steps .is-reward{border-color:#8d6c2a;background:linear-gradient(145deg,#292519,#1b2025)}html[data-theme="dark"] .info-guide-examples{border-color:#2e7772;background:#112b2d;color:#85d8d1}html[data-theme="dark"] .info-guide-closing strong{color:#82d7d0}
@media(max-width:720px){.info-guide-trigger{margin-top:13px;font-size:13px}.info-guide-dialog{width:calc(100vw - 18px)}.info-guide-shell{max-height:calc(100dvh - 18px);border-radius:14px}.info-guide-header{padding:18px 17px 14px}.info-guide-header h2{font-size:25px}.info-guide-close{width:38px;height:38px;flex-basis:38px}.info-guide-scroll{padding:17px 15px 22px;scrollbar-gutter:auto}.info-guide-lead{padding:14px 15px;font-size:12px}.info-guide-lead strong{font-size:18px}.info-guide-grid{grid-template-columns:1fr;gap:9px}.info-guide-card{min-height:0;padding:16px}.info-guide-card h3,.info-guide-steps h3{font-size:15px}.info-guide-footer{padding:11px 15px}.info-guide-footer .button{width:100%;min-width:0}.info-guide-examples{padding:12px 14px}.info-guide-examples p{font-size:13px}.info-guide-steps li{grid-template-columns:34px 1fr;gap:11px;padding:14px 13px}.info-guide-steps li>span{width:32px;height:32px;font-size:11px}.info-guide-closing{padding:17px 10px}}

/* v1.2.45 スマホ固定導線を、展開式の共通サイトメニューへ変更。 */
.mobile-site-menu-panel{display:none}
@media(max-width:720px){
  .mobile-news-button.mobile-site-menu-button{border:1px solid var(--gold);background:var(--dark);color:#fff2d4;cursor:pointer;font-family:inherit}
  .mobile-site-menu-button .mobile-site-menu-icon{position:relative;display:block;width:18px;height:16px;flex:0 0 18px}
  .mobile-site-menu-button .mobile-site-menu-icon i{position:absolute;left:0;display:block;width:100%;height:2px;border-radius:2px;background:var(--gold);transition:opacity .15s ease}
  .mobile-site-menu-button .mobile-site-menu-icon i:nth-child(1){top:1px}.mobile-site-menu-button .mobile-site-menu-icon i:nth-child(2){top:7px}.mobile-site-menu-button .mobile-site-menu-icon i:nth-child(3){top:13px}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon i{opacity:0}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon::before,.mobile-site-menu-button.is-open .mobile-site-menu-icon::after{content:"";position:absolute;left:0;top:7px;width:18px;height:2px;border-radius:2px;background:var(--gold)}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon::before{transform:rotate(45deg)}.mobile-site-menu-button.is-open .mobile-site-menu-icon::after{transform:rotate(-45deg)}
  .mobile-site-menu-panel{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));z-index:90;display:grid;width:min(300px,calc(100vw - 28px));max-height:min(68vh,520px);padding:10px;overflow:auto;border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);border-radius:18px;background:color-mix(in srgb,var(--dark) 96%,transparent);box-shadow:0 20px 48px rgba(0,0,0,.34);opacity:0;visibility:hidden;transform:translateY(18px) scale(.96);transform-origin:bottom right;transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1),visibility 0s linear .28s}
  .mobile-site-menu-panel.is-open{opacity:1;visibility:visible;transform:translateY(0) scale(1);transition-delay:0s}
  .mobile-site-menu-panel a{display:flex;align-items:center;min-height:46px;padding:10px 14px;border-bottom:1px solid rgba(224,165,43,.2);color:#fff2d4;text-decoration:none;font-size:13px;font-weight:800;opacity:0;transform:translateX(14px);transition:color .18s ease,background .18s ease,opacity .2s ease calc(var(--mobile-menu-index)*35ms + 50ms),transform .24s ease calc(var(--mobile-menu-index)*35ms + 50ms)}
  .mobile-site-menu-panel a:last-child{border-bottom:0}
  .mobile-site-menu-panel.is-open a{opacity:1;transform:translateX(0)}
  .mobile-site-menu-panel a:hover,.mobile-site-menu-panel a:focus-visible{border-radius:10px;background:rgba(224,165,43,.14);color:#ffd86f;outline:none}
  body.news-page .mobile-news-button.mobile-site-menu-button{display:inline-flex!important}
  body:has(.post-workspace[open]) .mobile-site-menu-panel{display:none!important}
  .post-detail-page .mobile-site-menu-panel{bottom:calc(150px + env(safe-area-inset-bottom))}
  .post-detail-page.mobile-site-menu-open .detail-mobile-report-button{display:none!important;pointer-events:none!important}
}

/* ヘッダーの相互導線は、投稿＝金、依頼＝青緑で識別する。 */
.site-header .header-nav a[href="requests.html"]{color:#137d78}
.site-header .header-nav{gap:clamp(12px,1.45vw,24px)}

/* 攻略依頼用カテゴリ選択は、ページと同じ青緑パレットへ統一する。 */
body.request-editor-mode .category-picker{--request-picker-accent:#137d78;--request-picker-rgb:19,125,120;--request-picker-line:#9fcfc9}
body.request-editor-mode .category-picker-shell{border-color:var(--request-picker-line);background:#f7fcfb}
body.request-editor-mode .category-picker-header{border-color:var(--request-picker-line);background:linear-gradient(120deg,#e1f4f1,#f8fcfb)}
body.request-editor-mode .category-picker-header .section-kicker{color:var(--request-picker-accent)}
body.request-editor-mode .category-picker-header .modal-close{border-color:var(--request-picker-accent)!important;color:var(--request-picker-accent)!important;background:#f7fcfb!important}
body.request-editor-mode .category-picker-grid{background:#f0f8f6!important}
body.request-editor-mode .category-picker-option{border-color:#b7d8d3!important;background:#f8fcfb!important}
body.request-editor-mode .category-picker-option:hover:not(:disabled),body.request-editor-mode .category-picker-option.active{border-color:var(--category-accent)!important;background:rgba(var(--category-rgb),.13)!important;color:var(--category-accent)!important;box-shadow:inset 4px 0 var(--category-accent),0 0 12px rgba(var(--category-rgb),.28)!important}
body.request-editor-mode .category-picker-icon{color:var(--category-accent);border-color:var(--category-accent)}
body.request-editor-mode .category-picker-option.active .category-picker-icon{box-shadow:0 0 10px rgba(var(--category-rgb),.36)}
body.request-editor-mode .category-picker-actions{border-color:var(--request-picker-line)!important;background:#e8f5f2!important}
body.request-editor-mode .category-picker-actions .button{border-color:var(--request-picker-accent);color:var(--request-picker-accent);background:#f8fcfb}
body.request-editor-mode .category-picker-actions .button-primary{background:linear-gradient(135deg,#198f88,#095e61);color:#fff}
html[data-theme="dark"] body.request-editor-mode .category-picker-shell{border-color:#285b5a;background:#102426}
html[data-theme="dark"] body.request-editor-mode .category-picker-header{border-color:#285b5a;background:linear-gradient(120deg,#123536,#132426)}
html[data-theme="dark"] body.request-editor-mode .category-picker-header .modal-close{border-color:#4db8ae!important;color:#8cddd5!important;background:#102729!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-grid{background:#0f2022!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-option{border-color:#285b5a!important;background:#142a2c!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-option:hover:not(:disabled),html[data-theme="dark"] body.request-editor-mode .category-picker-option.active{border-color:var(--category-accent)!important;background:rgba(var(--category-rgb),.2)!important;color:color-mix(in srgb,var(--category-accent) 72%,white)!important;box-shadow:inset 4px 0 var(--category-accent),0 0 16px rgba(var(--category-rgb),.42)!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions{border-color:#285b5a!important;background:#102426!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions .button{border-color:#4db8ae;color:#8cddd5;background:#102729}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions .button-primary{background:linear-gradient(135deg,#198f88,#095e61);color:#fff}

/* v1.0.47 人格詳細・投稿詳細でのイサン画像 */
.detail-identity-card.has-identity-image,.detail-party-card.has-identity-image{background-size:cover!important;background-position:center!important;color:#fff!important}
.detail-identity-card.has-identity-image>*,.detail-party-card.has-identity-image>*{position:relative;z-index:1;color:#fff!important;text-shadow:0 1px 3px #000}
.railway-party-count-shell{width:min(560px,calc(100vw - 32px));padding:28px;background:var(--paper,#fffaf0)}
.railway-party-count-shell label{display:grid;gap:8px;margin:20px 0}.railway-party-count-shell input{min-height:52px;padding:12px 16px;border:1px solid #c98d19;background:var(--paper,#fff);font:700 1.1rem inherit}
.railway-party-step-links{display:grid;gap:8px}.railway-party-step-group{display:grid;gap:4px;padding:8px 0;border-top:1px solid rgba(201,141,25,.25)}.railway-party-step-group>small{padding-left:12px;color:#c98d19;letter-spacing:.14em}.railway-party-step-group .step-link{width:100%}
html[data-theme="dark"] .railway-party-count-shell{background:#171b21;color:#f5eee0}

/* ヒーロー操作は、依頼・投稿の下に検索CTAを置く2段構成にする。 */
.home-hero .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,520px)}
.home-hero .hero-actions .button{display:flex;align-items:center;justify-content:center;text-align:center}
.home-hero .hero-actions .button>span,.request-page .request-hero-actions .button>span{font-weight:800!important}
.home-hero .hero-actions .hero-search-action{grid-column:1/-1;min-height:50px}
.hero-actions .hero-auth-required-action,.request-hero-actions .hero-auth-required-action{flex-direction:column;gap:2px;line-height:1.25}
.hero-auth-required-action small{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.04em}
.hero-auth-required-action small[hidden]{display:none}
@media(max-width:600px){
  .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important}
  .hero-actions .button{width:100%!important;min-width:0!important;margin:0!important;padding:12px 7px!important;text-align:center!important;font-size:11px!important;white-space:nowrap!important}
  .hero-actions .hero-search-action{grid-column:1/-1;display:flex!important;align-items:center!important;justify-content:center!important;min-height:50px;padding:14px!important;font-size:13px!important}
  .submit-banner{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;margin:36px auto 52px!important;padding:24px 20px!important;align-items:start!important}
  .submit-banner>div{min-width:0!important}
  .submit-banner h2{font-size:clamp(26px,8vw,34px)!important;line-height:1.45!important;overflow-wrap:anywhere!important}
  .submit-banner p:not(.section-kicker){margin-bottom:0!important;line-height:1.65!important}
  .submit-banner .button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:48px!important;margin:0!important;padding:12px 14px!important;text-align:center!important}
}
