/*
 * 推し韓（kpop.entame-plus.jp）の記事の見た目。
 * 共通の子テーマ（shared/base-theme/style.css）の後に、記事ページでだけ読まれる（functions.php）。
 *
 * 紙色の背景・明朝の見出し・朱色を、SWELL のブロックのクラス（swell-block-*・wp-block-*）に掛けて出す。
 * 🚨 !important は使わない。#main_content から書いて、詳細度で勝たせる（共通側と同じ方針）。
 * 🚨 サイトの記事の見た目を直すときは、ここを直す。記事の HTML には見た目を書かない。
 * 🚨 このコメントの中に、コメントの終わりの記号を書かない。そこでコメントが閉じ、続きの文字が次のルール
 *    （@import と :root の変数）の前置きとして読まれて、そのルールごと捨てられる。
 * 🚨 WordPress の投稿に <style> で載せるときは、コメントを全部外す（ConoHa の WAF がコメントを弾く）。
 */
@import url("https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,500;0,6..96,700;1,6..96,500&family=Shippori+Mincho+B1:wght@600;800&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
:root{--lm-paper:#ffffff;--lm-paper2:#fbf4f7;--lm-ink:#23282d;--lm-soft:#745866;--lm-rule:#eddee6;--lm-accent:#d81b7a;--lm-accent-ink:#a8155f;--lm-card:#ffffff;--lm-serif:"Shippori Mincho B1",serif;--lm-roman:"Bodoni Moda",serif;--lm-sans:"Zen Kaku Gothic New",sans-serif}
body{background-color:var(--lm-paper)}
#content,.l-content,.l-mainContent,.l-mainContent__inner,#main_content .post_content{background:transparent}
#main_content .post_content{counter-reset:lmh2 lmprofile;font-family:var(--lm-sans);color:var(--lm-ink);font-size:17px;line-height:1.95;letter-spacing:.02em}
#main_content .post_content p{margin:0 0 1.15em}
#main_content .post_content strong{font-weight:700;background:linear-gradient(transparent 62%,rgba(223,175,199,.55) 62%)}
#main_content .post_content a{color:var(--lm-accent-ink);text-underline-offset:3px}
#main_content .post_content>p:first-of-type{font-family:var(--lm-serif);font-weight:600;font-size:1.2rem;line-height:1.9;border-left:3px solid var(--lm-accent);padding:4px 0 4px 20px;margin:0 0 56px}
#main_content .post_content h2.wp-block-heading{counter-increment:lmh2;position:relative;font-family:var(--lm-serif);font-weight:800;font-size:clamp(1.45rem,4.6vw,1.9rem);line-height:1.45;color:var(--lm-ink);background:none;border:0;border-top:1px solid var(--lm-ink);border-radius:0;box-shadow:none;padding:22px 0 0;margin:76px 0 22px;margin-left:0;margin-right:0}
#main_content .post_content h2.wp-block-heading::after{display:none}
#main_content .post_content h2.wp-block-heading::before{content:counter(lmh2,decimal-leading-zero);display:block;position:absolute;top:-1px;right:0;left:auto;bottom:auto;width:auto;height:auto;background:none;border:0;transform:translateY(-100%);font-family:var(--lm-roman);font-style:italic;font-weight:500;font-size:.9rem;color:var(--lm-soft);letter-spacing:.08em}
#main_content .post_content h3.wp-block-heading{font-family:var(--lm-serif);font-weight:800;font-size:1.3rem;color:var(--lm-ink);background:none;border:0;border-left:4px solid var(--lm-accent);padding:2px 0 2px 14px;margin:44px 0 10px}
#main_content .post_content h3.wp-block-heading::before,#main_content .post_content h3.wp-block-heading::after{display:none}
#main_content .post_content .wp-block-table{margin:8px 0 18px;overflow-x:auto}
#main_content .post_content .wp-block-table table{width:100%;border-collapse:collapse;font-size:.95rem;background:var(--lm-card);border:0}
#main_content .post_content .wp-block-table thead th{background:var(--lm-ink);color:var(--lm-paper);text-align:left;font-size:.82rem;letter-spacing:.06em;padding:10px 14px;border:0}
#main_content .post_content .wp-block-table tbody th{background:none;color:var(--lm-ink);text-align:left;font-weight:700;white-space:nowrap;padding:11px 14px;border:0;border-bottom:1px solid var(--lm-rule)}
#main_content .post_content .wp-block-table td{text-align:left;padding:11px 14px;border:0;border-bottom:1px solid var(--lm-rule)}
#main_content .post_content .swell-block-dl{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin:6px 0 14px;font-size:.9rem;line-height:1.6;border:0;background:none}
#main_content .post_content .swell-block-dl__dt{float:none;width:auto;background:none;color:var(--lm-soft);font-weight:700;font-size:.8rem;letter-spacing:.06em;padding:.15em 0;margin:0;border:0}
#main_content .post_content .swell-block-dl__dd{margin:0;padding:0;border:0;background:none}
#main_content .post_content .swell-block-dl__dd p{margin:0}
#main_content .post_content .wp-block-media-text{background:var(--lm-card);border:1px solid var(--lm-rule);padding:18px;gap:20px;margin:6px 0 22px}
#main_content .post_content .wp-block-media-text__media img{aspect-ratio:4/5;object-fit:cover;object-position:50% 15%;width:100%;height:auto;display:block}
#main_content .post_content .wp-block-media-text__media figcaption{font-size:.65rem;color:var(--lm-soft);margin-top:4px}
#main_content .post_content .wp-block-media-text__content{padding:0}
#main_content .post_content .wp-block-media-text__content p:last-child{margin-bottom:0}
#main_content .post_content .swell-block-faq__item{border-top:1px solid var(--lm-ink);padding:16px 0;margin:0}
#main_content .post_content .swell-block-faq__item:last-child{border-bottom:1px solid var(--lm-ink)}
#main_content .post_content .faq_q{display:flex;gap:12px;font-weight:700;background:none;padding:0;margin:0}
#main_content .post_content .faq_q::before{content:"Q";position:static;background:none;width:auto;height:auto;color:var(--lm-accent);font-family:var(--lm-roman);font-style:italic;font-size:1.3rem;line-height:1.5}
#main_content .post_content .faq_a{margin:6px 0 0 28px;padding:0;background:none;color:var(--lm-soft)}
#main_content .post_content .faq_a::before{display:none}
#main_content .post_content .faq_a p{margin:0}
#main_content .post_content .swell-block-button__link{display:flex;justify-content:space-between;align-items:center;background:var(--lm-accent);color:#fff;border-radius:0;box-shadow:none;font-weight:700;padding:16px 22px;text-decoration:none}
#main_content .post_content .swell-block-button__link:hover{background:var(--lm-accent-ink)}
#main_content .post_content ul.wp-block-list{list-style:none;padding:0}
#main_content .post_content ul.wp-block-list>li{position:relative;padding:8px 0 8px 22px;border-bottom:1px dashed var(--lm-rule)}
#main_content .post_content ul.wp-block-list>li::before{content:"";position:absolute;left:2px;top:1.15em;width:9px;height:9px;background:var(--lm-accent);transform:rotate(45deg)}
@media (max-width:640px){#main_content .post_content{font-size:16px}#main_content .post_content .wp-block-media-text{padding:12px;gap:12px}}

#main_content .post_content .swell-block-dl__dt::before,#main_content .post_content .swell-block-dl__dt::after{display:none;content:none}
#main_content .post_content a:not(.swell-block-button__link){color:var(--lm-accent-ink)}
#main_content .post_content ul.lm-faces{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;margin:26px 0 30px;padding:0;list-style:none}
#main_content .post_content ul.lm-faces>li{padding:0;border:0;margin:0}
#main_content .post_content ul.lm-faces>li::before{display:none}
#main_content .post_content ul.lm-faces a{display:block;text-align:center;text-decoration:none;color:var(--lm-ink)}
#main_content .post_content ul.lm-faces figure{margin:0}
#main_content .post_content ul.lm-faces .ph{aspect-ratio:3/4;border-radius:999px 999px 10px 10px;overflow:hidden;background:var(--lm-paper2);box-shadow:0 0 0 1px var(--lm-rule)}
#main_content .post_content ul.lm-faces img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block;margin:0}
#main_content .post_content ul.lm-faces figcaption{font-weight:700;font-size:.74rem;margin-top:8px;line-height:1.3;overflow-wrap:anywhere}
#main_content .post_content ul.lm-faces figcaption small{display:block;font-family:var(--lm-roman);font-weight:500;font-size:.5rem;letter-spacing:.06em;color:var(--lm-soft)}
@media (max-width:640px){#main_content .post_content ul.lm-faces{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px}#main_content .post_content ul.lm-faces figcaption{font-size:.85rem}#main_content .post_content ul.lm-faces figcaption small{font-size:.58rem}}
#main_content .post_content .wp-block-embed{margin:0 0 22px}
#main_content .post_content .wp-block-embed iframe{display:block;width:100%;border:0}

#main_content .post_content ul.lm-faces .ph{transition:transform .35s ease,box-shadow .35s ease}
#main_content .post_content ul.lm-faces a:hover .ph{transform:translateY(-4px);box-shadow:0 0 0 2px var(--lm-accent)}
#main_content .post_content ul.lm-faces a:hover figcaption{color:var(--lm-accent-ink)}
#main_content .post_content h3.wp-block-heading{scroll-margin-top:24px}
@media (prefers-reduced-motion:reduce){#main_content .post_content ul.lm-faces .ph{transition:none}#main_content .post_content ul.lm-faces a:hover .ph{transform:none}}

#main_content .post_content .faq_q::before{box-shadow:none;border:0;border-radius:0;padding:0}
#main_content .post_content .wp-block-table td:last-child{white-space:nowrap}
@media (max-width:640px){
#main_content .post_content .wp-block-table thead th,#main_content .post_content .wp-block-table tbody th,#main_content .post_content .wp-block-table td{padding-left:8px;padding-right:8px}
#main_content .post_content .wp-block-table table{font-size:.88rem}
#main_content .post_content .wp-block-table tbody th{white-space:normal}
#main_content .post_content .swell-block-dl:not(.is-style-float){grid-template-columns:1fr;gap:2px 0}
#main_content .post_content .swell-block-dl:not(.is-style-float) > .swell-block-dl__dt{margin-top:10px}
}

#main_content .post_content .swell-block-dl:not(.is-style-float){font-size:inherit;line-height:inherit}

@media (min-width:641px){
#main_content .post_content ul.lm-faces{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 14px}
#main_content .post_content ul.lm-faces figcaption{font-size:.85rem}
#main_content .post_content ul.lm-faces figcaption small{font-size:.6rem;letter-spacing:.1em}
}

/* スマホ幅では、写真と文章を縦に積む。写真を左に置く指定（grid-template-columns）は、変換が HTML に直接書くので、
   CSS で上書きできるのは !important だけ（WordPress 本体の縦積みも同じ） */
@media (max-width:640px){
#main_content .post_content .wp-block-media-text{grid-template-columns:100% !important;gap:14px}
#main_content .post_content .wp-block-media-text > .wp-block-media-text__media{grid-column:1;grid-row:1;max-width:280px}
#main_content .post_content .wp-block-media-text > .wp-block-media-text__content{grid-column:1;grid-row:2}
}

#main_content .post_content .lm-profile{counter-increment:lmprofile;background:var(--lm-card);border-color:var(--lm-rule);scroll-margin-top:24px}
#main_content .post_content .lm-profile__photo{display:grid;grid-template-columns:minmax(0,1fr)}
#main_content .post_content .lm-profile__photo img{grid-area:1/1}
#main_content .post_content .lm-profile__photo figcaption{grid-area:2/1}
#main_content .post_content .lm-profile__photo::after{content:counter(lmprofile,decimal-leading-zero);grid-area:1/1;align-self:end;justify-self:start;margin-left:-10px;position:relative;z-index:1;pointer-events:none;font-family:var(--lm-roman);font-weight:700;font-style:italic;font-size:3.2rem;line-height:1;color:var(--lm-paper);-webkit-text-stroke:1.2px var(--lm-ink)}
#main_content .post_content .lm-profile__photo figcaption{color:var(--lm-accent-ink)}
#main_content .post_content .lm-profile .lm-profile__body :is(h2,h3){font-family:var(--lm-serif);font-weight:800;font-size:1.3rem;line-height:1.45;color:var(--lm-ink);margin-top:4px}
#main_content .post_content .lm-profile .lm-profile__body :is(h2,h3) small{font-family:var(--lm-roman);letter-spacing:.22em;font-size:.72rem;color:var(--lm-accent-ink)}
#main_content .post_content .lm-profile__lead{font-size:.9rem;color:var(--lm-soft);margin-bottom:10px}
#main_content .post_content .lm-profile__facts{font-size:.9rem}
#main_content .post_content .lm-profile__facts dt{font-size:.8rem;letter-spacing:.06em;color:var(--lm-soft)}
