/* =========================================================
 * 美容医療掲示板 スタイル（忖度なし子ブランド／スマホ最優先）
 * トークン: 紙#FBF3E0 黒#171215 黄#FFD426 桃#FF3D74 水#00C0D8
 * ======================================================= */

.sn-bbs{
	--pap:#FBF3E0; --ink:#171215; --yel:#FFD426; --pnk:#FF3D74; --cyn:#00C0D8;
	--gray:#6B6065; --line:#171215;
	max-width:760px; margin:0 auto; padding:14px 14px 60px;
	font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;
	color:var(--ink);
}
.sn-bbs *{box-sizing:border-box}
.sn-bbs a{color:var(--ink)}

/* パンくず */
.sn-bbs-crumbs{font-size:12px;color:var(--gray);margin:2px 0 12px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.sn-bbs-crumbs ol{list-style:none;display:flex;gap:6px;margin:0;padding:0}
.sn-bbs-crumbs li:not(:first-child)::before{content:"›";margin-right:6px;color:var(--gray)}
.sn-bbs-crumbs a{color:var(--gray);text-decoration:none}
.sn-bbs-crumbs [aria-current]{font-weight:900;color:var(--ink)}

/* フラッシュ */
.sn-bbs-flash{border:3px solid var(--ink);padding:11px 14px;margin:0 0 14px;font-weight:700;font-size:14px;box-shadow:4px 4px 0 var(--ink)}
.sn-bbs-flash-ok{background:#E7FBEF}
.sn-bbs-flash-warn{background:#FFF0D8}

/* ヒーロー */
.sn-bbs-hero{margin:2px 0 16px}
.sn-bbs-hero-title{font-size:24px;font-weight:900;margin:0 0 6px;display:inline-block;background:var(--ink);color:var(--yel);padding:5px 14px;transform:rotate(-1deg)}
.sn-bbs-hero-lead{font-size:14px;margin:8px 0 4px;line-height:1.7}
.sn-bbs-hero-note{font-size:12px;color:var(--gray);margin:4px 0 0;line-height:1.6}

/* 検索 */
.sn-bbs-search{display:flex;gap:8px;margin:0 0 18px}
.sn-bbs-search input{flex:1;min-width:0;border:3px solid var(--ink);padding:11px 12px;font-size:16px;background:#fff;font-family:inherit}
.sn-bbs-search button{border:3px solid var(--ink);background:var(--yel);font-weight:900;padding:0 16px;font-size:15px;cursor:pointer;font-family:inherit;box-shadow:3px 3px 0 var(--ink)}
.sn-bbs-search button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}

/* セクション */
.sn-bbs-sec{margin:0 0 22px}
.sn-bbs-sec-h{font-size:16px;font-weight:900;margin:0 0 10px;display:inline-block;background:var(--yel);border:2px solid var(--ink);padding:3px 12px;transform:rotate(-.5deg)}

/* スレッド一覧 行 */
.sn-bbs-list{display:flex;flex-direction:column;gap:8px}
.sn-bbs-row{display:flex;align-items:stretch;gap:10px;border:3px solid var(--ink);background:#fff;text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform .05s}
.sn-bbs-row:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.sn-bbs-row-main{flex:1;min-width:0;padding:11px 12px}
.sn-bbs-row-title{display:block;font-weight:900;font-size:15px;line-height:1.5;margin:0 0 6px;word-break:break-word}
.sn-bbs-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.sn-bbs-tag{display:inline-block;font-size:11px;font-weight:700;background:var(--cyn);border:2px solid var(--ink);padding:0 7px;line-height:1.6;text-decoration:none;color:var(--ink)}
.sn-bbs-tag-area{background:#FFE3EC}
.sn-bbs-tag-clinic{background:#fff}
.sn-bbs-tag-doctor{background:#E9F7E7}
.sn-bbs-row-ago{font-size:11px;color:var(--gray)}
/* レス数は控えめに（タイトル・タグを主役に。「6レス」は一目で分かる程度に残す）。 */
.sn-bbs-row-count{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ink);color:#fff;padding:0 9px;min-width:42px}
.sn-bbs-count-n{font-size:14px;font-weight:900;line-height:1.15}
.sn-bbs-count-l{font-size:9px;color:var(--yel)}

.sn-bbs-empty{font-size:14px;color:var(--gray);border:2px dashed var(--gray);padding:16px;text-align:center}

/* PCは3列を維持。スマホは縦積みで「人気→新着→最近更新」の順に並べ替え。 */
.sn-bbs-cols{display:flex;flex-direction:column}
.sn-bbs-cols > .sn-bbs-sec:nth-child(2){order:-1} /* 人気を先頭へ（スマホ） */
.sn-bbs-cols > .sn-bbs-sec:nth-child(3){order:1}  /* 最近更新を最後へ（スマホ） */
@media(min-width:900px){
	.sn-bbs{max-width:1000px}
	.sn-bbs-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}
	.sn-bbs-cols > .sn-bbs-sec{order:0} /* PCは現状の並び（新着|人気|最近更新）を維持 */
}

/* カテゴリ */
.sn-bbs-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.sn-bbs-cat-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;border:3px solid var(--ink);background:#fff;padding:11px 13px;text-decoration:none;font-weight:900;font-size:14px;box-shadow:3px 3px 0 var(--ink)}
.sn-bbs-cat-chip:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.sn-bbs-cat-count{font-size:12px;font-weight:700;background:var(--yel);border:2px solid var(--ink);padding:0 7px}

/* 新規トピック */
.sn-bbs-new{margin:0 0 22px}
.sn-bbs-new-toggle{width:100%;border:3px solid var(--ink);background:var(--pnk);color:#fff;font-weight:900;font-size:16px;padding:13px;cursor:pointer;font-family:inherit;box-shadow:4px 4px 0 var(--ink)}
.sn-bbs-new-toggle:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.sn-bbs-new-form{display:none;border:3px solid var(--ink);border-top:none;background:#fff;padding:16px 14px}
.sn-bbs-new.is-open .sn-bbs-new-form{display:block}
.sn-bbs-new.is-open .sn-bbs-new-toggle{background:var(--ink);color:var(--yel)}

/* フォーム共通 */
.sn-bbs-field{display:block;margin:0 0 12px}
.sn-bbs-field>span{display:block;font-weight:900;font-size:13px;margin:0 0 5px}
.sn-bbs-field em{font-style:normal;font-size:11px;color:#fff;background:var(--pnk);padding:0 6px;margin-left:6px;border-radius:2px}
.sn-bbs-field input[type=text],.sn-bbs-field input[type=search],.sn-bbs-field select,.sn-bbs-field textarea{
	width:100%;border:2px solid var(--ink);padding:10px 11px;font-size:16px;background:#fff;font-family:inherit
}
.sn-bbs-field textarea{resize:vertical;line-height:1.6}
.sn-bbs-optional{margin:0 0 12px;border:2px dashed var(--gray);padding:8px 12px}
.sn-bbs-optional summary{font-weight:700;font-size:13px;cursor:pointer;color:var(--gray)}
.sn-bbs-optional[open]{padding-bottom:2px}
.sn-bbs-note{font-size:12px;color:var(--gray);margin:0 0 12px;line-height:1.6}
.sn-bbs-submit{border:3px solid var(--ink);background:var(--yel);font-weight:900;font-size:16px;padding:12px 22px;cursor:pointer;font-family:inherit;box-shadow:4px 4px 0 var(--ink)}
.sn-bbs-submit:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
/* ハニーポット（人には見せない） */
.sn-bbs-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ===== スレッド詳細 ===== */
.sn-bbs-thread-head{margin:2px 0 14px}
.sn-bbs-thread-tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}
.sn-bbs-thread-title{font-size:21px;font-weight:900;line-height:1.5;margin:0 0 6px;word-break:break-word}
.sn-bbs-thread-sub{font-size:12px;color:var(--gray);margin:0}

.sn-bbs-posts{display:flex;flex-direction:column;gap:10px;margin:0 0 26px}
.sn-bbs-post{border:3px solid var(--ink);background:#fff;box-shadow:3px 3px 0 var(--ink);padding:11px 13px}
.sn-bbs-op{background:#FFFDF3;border-color:var(--ink)}
.sn-bbs-post.is-flash{animation:snbbsflash 1.4s ease}
@keyframes snbbsflash{0%,40%{background:var(--yel)}100%{background:#fff}}
.sn-bbs-post-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px;font-size:12px}
.sn-bbs-resno{font-weight:900;background:var(--ink);color:var(--yel);padding:1px 8px;font-size:12px}
.sn-bbs-op .sn-bbs-resno{background:var(--pnk);color:#fff}
.sn-bbs-author{font-weight:900;font-size:13px}
.sn-bbs-date{color:var(--gray);margin-left:auto}
.sn-bbs-post-body{font-size:15px;line-height:1.8;word-break:break-word;white-space:normal}
.sn-bbs-anchor{color:#0a63c9;font-weight:700;text-decoration:none}
.sn-bbs-post-foot{display:flex;gap:8px;margin:9px 0 0}
.sn-bbs-act{border:2px solid var(--ink);background:#fff;font-size:12px;font-weight:700;padding:3px 12px;cursor:pointer;font-family:inherit}
.sn-bbs-act:active{background:var(--yel)}

/* 返信ボックス */
.sn-bbs-replybox{border:3px solid var(--ink);background:#fff;padding:16px 14px;margin:0 0 26px;box-shadow:4px 4px 0 var(--ink)}

/* 通報モーダル */
.sn-bbs-report-modal{position:fixed;inset:0;background:rgba(23,18,21,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999}
.sn-bbs-report-modal[hidden]{display:none}
.sn-bbs-report-inner{background:#fff;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:18px 16px;max-width:360px;width:100%}
.sn-bbs-report-h{font-weight:900;font-size:16px;margin:0 0 12px}
.sn-bbs-report-actions{display:flex;gap:10px;justify-content:flex-end;margin:14px 0 0}
.sn-bbs-report-cancel{border:2px solid var(--gray);background:#fff;color:var(--gray);font-weight:700;padding:8px 16px;cursor:pointer;font-family:inherit}
.sn-bbs-report-send{background:var(--pnk);color:#fff}

/* 関連・導線 */
.sn-bbs-related{border:3px solid var(--ink);background:#FFFDF3;padding:14px;margin:22px 0;box-shadow:4px 4px 0 var(--ink)}
.sn-bbs-related-h{font-weight:900;font-size:15px;margin:0 0 10px}
.sn-bbs-related-list{display:flex;flex-direction:column;gap:6px}
.sn-bbs-related-item{display:flex;justify-content:space-between;gap:10px;border:2px solid var(--ink);background:#fff;padding:9px 11px;text-decoration:none;font-size:14px;font-weight:700}
.sn-bbs-related-count{flex:0 0 auto;font-size:12px;color:var(--gray)}
.sn-bbs-related-more{margin:10px 0 0}
.sn-bbs-related-more a{font-weight:900;font-size:14px;color:var(--pnk);text-decoration:none}
.sn-bbs-related-cta{display:inline-block;background:var(--pnk);color:#fff!important;border:2px solid var(--ink);padding:8px 14px;box-shadow:3px 3px 0 var(--ink)}
.sn-bbs-related-empty{font-size:13px;color:var(--gray);margin:0 0 10px}

.sn-bbs-to-treatment{font-size:14px;font-weight:700;margin:18px 0;padding:12px;border:2px dashed var(--ink);background:#fff}
.sn-bbs-to-treatment a{color:var(--pnk);text-decoration:none;font-weight:900}

/* カテゴリページ ツールバー */
.sn-bbs-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.sn-bbs-sorts{display:flex;gap:6px}
.sn-bbs-sort{font-size:13px;font-weight:700;border:2px solid var(--ink);padding:4px 12px;text-decoration:none;background:#fff}
.sn-bbs-sort.is-active{background:var(--ink);color:var(--yel)}
.sn-bbs-newlink{font-size:13px;font-weight:900;border:2px solid var(--ink);background:var(--pnk);color:#fff!important;padding:5px 12px;text-decoration:none;box-shadow:3px 3px 0 var(--ink)}

/* ===== 訂正・削除申立て ===== */
.sn-bbs-req-link{color:#6B6065;border-color:#9AA0A6!important}
.sn-bbs-req-link:active{background:#F0E9D6}
.sn-bbs-req-notice{border:3px solid #171215;background:#FFFDF3;box-shadow:4px 4px 0 #171215;padding:14px;margin:20px 0}
.sn-bbs-req-notice-t{font-weight:900;font-size:13px;margin:0 0 6px;display:inline-block;background:#171215;color:#fff;padding:2px 10px}
.sn-bbs-req-notice-b{font-size:13px;line-height:1.7;margin:0 0 10px;color:#4a4247}
.sn-bbs-req-notice-cta{display:inline-block;background:#fff;border:2px solid #171215;font-weight:900;font-size:13.5px;padding:9px 14px;text-decoration:none;color:#171215;box-shadow:3px 3px 0 #171215}
.sn-bbs-req-notice-cta:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #171215}

.sn-req-policy{border:3px solid #171215;background:#fff;box-shadow:4px 4px 0 #171215;padding:14px 16px;margin:0 0 18px}
.sn-req-policy-h{font-weight:900;font-size:15px;margin:0 0 8px;display:inline-block;background:#FFD426;border:2px solid #171215;padding:2px 10px}
.sn-req-policy ul{margin:6px 0 0;padding-left:1.2em}
.sn-req-policy li{font-size:13px;line-height:1.8;margin:0 0 3px}
.sn-req-pagebody{font-size:14px;line-height:1.8;margin:0 0 18px}

.sn-req-form{border:3px solid #171215;background:#fff;box-shadow:5px 5px 0 #171215;padding:16px 14px;margin:0 0 22px}
.sn-req-target{border:2px dashed #171215;padding:10px 12px 2px;margin:0 0 14px;background:#FBF3E0}
.sn-req-target-h{font-weight:900;font-size:13px;margin:0 0 8px}
.sn-req-ids{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sn-req-cols{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:560px){.sn-req-cols{grid-template-columns:1fr 1fr;gap:12px}}
.sn-req-form input[type=file]{width:100%;border:2px solid #171215;padding:9px;background:#fff;font-family:inherit;font-size:13px}

.sn-bbs-backtop{margin:24px 0 0;text-align:center}
.sn-bbs-backtop a{display:inline-block;background:var(--ink);color:var(--yel);font-weight:900;font-size:14px;padding:10px 18px;text-decoration:none}

/* TOP（既存page-top）に置く入口バナー */
.sn-bbs-entry{max-width:800px;margin:0 auto;padding:0 16px}
.sn-bbs-entry-card{display:block;border:3px solid var(--ink);background:var(--pnk);color:#fff;text-decoration:none;padding:16px 18px;box-shadow:5px 5px 0 var(--ink);position:relative}
.sn-bbs-entry-card:active{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
.sn-bbs-entry-title{font-family:"Zen Maru Gothic",sans-serif;font-weight:900;font-size:19px;margin:0 0 4px}
.sn-bbs-entry-sub{font-size:12.5px;line-height:1.6;margin:0;opacity:.95}
.sn-bbs-entry-new{margin:10px 0 0;display:flex;flex-direction:column;gap:5px}
.sn-bbs-entry-new>span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.5);color:#fff;font-size:13px;font-weight:700;padding:7px 10px;display:flex;justify-content:space-between;gap:8px}
.sn-bbs-entry-new .n{flex:0 0 auto;font-size:11px;opacity:.85}
