
:root{--article-gutter:clamp(16px,5.1vw,22px);--wine:#7B2D3A;--ink:#242424;--muted:#666;--line:#e6e6e6;--paper:#fff;--cream:#FAF4E8}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:#f5f5f5;color-scheme:light;scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#f5f5f5;color:var(--ink);font-family:'Noto Sans JP';font-weight:400;line-height:1.9}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid var(--wine);outline-offset:4px}.site-header{background:white}.masthead{max-width:1080px;margin:auto;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 24px;min-height:78px;gap:12px;padding:12px var(--article-gutter);flex-wrap:wrap}.brand{display:flex;align-items:baseline;gap:15px;gap:10px}.brand-name{font-family:'EB Garamond';font-size:43px;line-height:1;color:#2A2017;font-weight:500;text-shadow:none;font-size:clamp(33px,9.5vw,37px)}.brand-name sup{font-size:12px;vertical-align:top;line-height:1.6;color:#7A6E58}.brand-sub{font-size:15px;font-weight:700;letter-spacing:.05em;font-size:13px}.back{font-size:13px;color:#666;display:flex;align-items:center;min-height:44px;font-size:12px}.nav-wrap{background:#333}.nav{max-width:1032px;margin:auto;display:flex;overflow-x:auto;white-space:nowrap;scrollbar-width:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;white-space:normal}.nav a{font-size:14px;color:white;padding:12px 22px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:10px 4px;font-size:clamp(12px,3.3vw,14px);line-height:1.5;min-width:0;min-height:48px;white-space:nowrap}.nav .active{background:var(--wine);font-weight:700}.layout{max-width:1080px;padding:22px 24px 60px;margin:auto;display:grid;grid-template-columns:minmax(0,704px) minmax(240px,288px);gap:24px;align-items:start;display:block;max-width:744px;padding:16px 0 38px}.breadcrumb{font-size:12px;color:#777;margin:0 0 17px;grid-column:1/-1;padding:0 var(--article-gutter);margin-bottom:14px;overflow-wrap:anywhere}.article{background:white;padding:32px 34px 36px;min-width:0;padding:25px var(--article-gutter) 30px;overflow-wrap:break-word}.category{display:inline-block;color:var(--wine);font-size:13px;font-weight:700;margin-bottom:10px}h1{font-size:30px;line-height:1.55;letter-spacing:.01em;margin:0 0 17px;font-weight:700;overflow-wrap:anywhere;font-size:clamp(24px,6.65vw,28px);line-height:1.6}.metadata{font-size:12px;color:#777;display:flex;gap:16px;flex-wrap:wrap;margin-bottom:23px;gap:10px}.byline{color:#444}.cover{margin:0 0 27px;margin-left:calc(-1 * var(--article-gutter));margin-right:calc(-1 * var(--article-gutter))}.cover img{width:100%;height:auto;aspect-ratio:1.75;object-fit:cover;object-position:50% 34%;display:block;background:#24190d;aspect-ratio:1.5;object-position:50% 32%}.cover figcaption{font-size:12px;color:#777;margin-top:7px;padding:0 var(--article-gutter)}.intro{font-size:17px;font-weight:500;margin:0 0 25px}.article p{font-size:16px;line-height:1.95;letter-spacing:.025em;margin:0 0 21px}.article h2{font-size:24px;line-height:1.6;margin:42px 0 20px;padding-bottom:11px;border-bottom:2px solid #333;scroll-margin-top:24px;font-size:23px;margin-top:35px}.article h3{font-size:18px;line-height:1.65;margin:24px 0 12px}.quote{margin:25px 0;padding:18px 23px;background:#f7f7f7;border-left:3px solid var(--wine);font-size:20px;font-weight:600;line-height:1.8;font-size:19px;padding:18px 16px}.article strong{font-weight:700}.text-link{color:var(--wine);text-decoration:underline;text-underline-offset:4px}.toc-mobile{display:none;display:block;background:#f7f7f7;padding:0 16px;margin:25px 0}.sidebar{display:grid;gap:22px;display:none}.side-panel{background:white;padding:21px 20px}.side-title{font-size:17px;margin:0 0 12px;padding-bottom:12px;border-bottom:2px solid #333}.toc{margin:0;padding:0;list-style:none;counter-reset:contents}.toc li{counter-increment:contents}.toc a{display:grid;grid-template-columns:23px 1fr;gap:8px;font-size:14px;padding:11px 0;line-height:1.6;border-bottom:1px solid var(--line);min-height:44px}.toc a:before{content:counter(contents,decimal-leading-zero);font-size:12px;color:#999;line-height:1.9}.editor-note{font-size:14px;line-height:1.85;margin:0;color:#555}.side-brand{font-family:'EB Garamond';font-size:30px;color:#2A2017;margin:0 0 9px;text-shadow:none}.steps{list-style:none;counter-reset:steps;padding:0;margin:20px 0}.steps li{counter-increment:steps;display:grid;grid-template-columns:32px 1fr;gap:12px;margin:0;padding:15px 0;border-bottom:1px solid var(--line);font-size:16px}.steps li:before{content:counter(steps);background:var(--cream);color:var(--wine);width:30px;height:30px;text-align:center;font-weight:700;line-height:30px;border-radius:50%}.steps small{display:block;color:#666;font-size:14px;margin-top:3px}.facts{background:#f7f7f7;padding:21px 23px;margin:20px 0}.facts ul{padding-left:1.25em;margin:0}.facts li{margin:8px 0;font-size:16px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:16px;font-weight:600;padding:18px 4px;line-height:1.7}.faq details p{padding:0 4px 10px;color:#555}.join{margin-top:38px;background:var(--cream);padding:29px 24px;text-align:center;padding:25px 17px}.join h3{margin:0 0 10px;font-size:22px}.join p{font-size:15px;margin:0 0 20px}.join-btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:12px 40px;color:white;background:linear-gradient(135deg,#B23344,#7B2D3A 55%,#6E2A5E);font-size:16px;font-weight:700;border-radius:4px;width:100%;padding-left:16px;padding-right:16px}.join .age{font-size:12px;color:#777;margin:12px 0 0}.ad-label{font-size:11px;color:#888;text-align:center;letter-spacing:.08em;margin:30px 0 8px}.cast-ad{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#EFE0CC;padding:25px 26px;min-height:130px;border:1px solid #E5CDAB;padding:22px 18px;gap:12px}.cast-ad .ad-overline{font-size:12px;color:#7A6E58;margin:0 0 4px}.cast-ad h3{font-size:24px;color:#3D2410;margin:0 0 5px;line-height:1.5;font-size:22px}.cast-ad p{font-size:14px;color:#3D2410;margin:0}.ad-arrow{font-size:23px;color:var(--wine);flex-shrink:0}.article-end{font-size:12px;color:#888;margin-top:28px;text-align:right}.footer{background:white;border-top:1px solid var(--line);padding:24px;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 24px}.footer a{font-size:12px;color:#666;min-height:44px;display:inline-flex;align-items:center}.footer p{font-size:12px;color:#888;margin:9px 0 0}
.toc-mobile summary{padding:14px 0;font-size:15px;font-weight:600;cursor:pointer;min-height:48px}.toc-mobile .toc{padding-bottom:10px}

@media(min-width:600px){:root{--article-gutter:28px}.join-btn{width:auto;padding-left:40px;padding-right:40px}}
@media(min-width:1024px){
.masthead{min-height:90px;gap:24px;padding:16px 24px}.brand{gap:15px}.brand-name{font-size:43px}.brand-sub{font-size:15px}.back{font-size:13px}
.nav{display:flex}.nav a{padding:12px 22px;font-size:14px}
.layout{max-width:1080px;display:grid;grid-template-columns:minmax(0,704px) minmax(240px,288px);gap:24px;padding:22px 24px 60px}
.breadcrumb{padding:0;margin-bottom:17px}.article{padding:32px 34px 36px}h1{font-size:30px;line-height:1.55}.metadata{gap:16px}
.cover{margin-left:0;margin-right:0}.cover figcaption{padding:0}.cover img{aspect-ratio:1.75;object-position:50% 34%}
.toc-mobile{display:none}.sidebar{display:grid}.article h2{font-size:24px;margin-top:42px}.quote{font-size:20px;padding:18px 23px}
.cast-ad{padding:25px 26px;gap:18px}.cast-ad h3{font-size:24px}.join{padding:29px 24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.guide-links{padding:0;list-style:none;margin:0 0 24px}.guide-links li{border-bottom:1px solid var(--line)}.guide-links a{display:block;padding:14px 0;font-size:16px;line-height:1.8;min-height:44px}
/* Adopted guest start page, scoped article embed */
.guest-entry{margin:32px 0 24px;}
.guest-entry .phone{
    position: relative;
    width: 100%;
    max-width: 430px;
    aspect-ratio: 941 / 1672;
    container-type: inline-size;
    overflow: hidden;
    background-color: #0a0704;
    
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  margin: 0 auto; line-height: normal;}
.guest-entry .line-btn:active{ filter: brightness(0.88); }
.guest-entry .about-link{ display: inline-flex; align-items: baseline; justify-content: center; gap: 5px; min-height: 44px; color: inherit; text-decoration: none; }
.guest-entry .about-suffix{ font-family: 'Noto Sans JP', sans-serif; font-size: 14px; font-weight: 500; color: #F5EFE7; text-decoration: underline; text-underline-offset: 4px; }
.guest-entry .lower-info{ margin: 0; white-space: nowrap; text-align: center; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-size: clamp(10px, 2.45cqw, 10.5px); line-height: 1.4; color: rgba(229,205,171,0.80); text-shadow: 0 1px 6px rgba(0,0,0,0.5); }
.guest-entry .entry-notes{ position: absolute; bottom: 4%; left: 2%; width: 96%; z-index: 2; display: flex; flex-direction: column; gap: 1px; }
.guest-entry .lower-info a{ color: rgba(229,205,171,0.80); text-decoration: underline; text-underline-offset: 0.22em; }
.guest-entry .cast-entry{ position: absolute; top: 0; padding-top: 2px; right: 4%; z-index: 3; display: flex; align-items: flex-start; min-height: 44px; font-family: 'Noto Sans JP', sans-serif; font-size: 11px; font-weight: 500; color: #E5CDAB; text-decoration: underline; text-underline-offset: 3px; text-shadow: 0 1px 6px rgba(0,0,0,0.5); }
.guest-entry .start-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.guest-entry .line-btn{min-height:44px;}
.guest-entry .lower-info{font-size:2.45cqw;}

/* Article illustrations retain the original screen without image modification. */
.guide-screen{margin:26px 0}.screen-window{max-width:390px;max-height:560px;overflow:auto;margin:0 auto;overscroll-behavior:contain}.screen-window img{display:block;width:100%;height:auto}.guide-screen figcaption{font-size:13px;line-height:1.7;margin:12px auto 0;max-width:440px}.guide-screen small{font-size:11px}.ai-button-example{display:block;width:217px;max-width:100%;height:auto;margin:20px 0}.table-wrap{overflow-x:auto}summary{cursor:pointer}
.screen-window{max-height:none;overflow:visible}.guest-entry{margin-left:0;margin-right:0}.guest-entry .cast-entry{font-size:2.8cqw}.guest-entry .about-suffix{font-size:3.3cqw}
@media(min-width:600px){.guest-entry .cast-entry{font-size:11px}.guest-entry .about-suffix{font-size:14px}}

/* Image menus: readable captions and crawlable article links share one card. */
.menu-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;list-style:none;padding:0;margin:24px 0 36px}.menu-grid>li{min-width:0}
.menu-card{display:block;height:100%;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper);text-decoration:none}
.menu-card:hover{text-decoration:none}.menu-card:hover .menu-read{text-decoration:underline;text-underline-offset:4px}
.menu-visual{position:relative;container-type:inline-size;aspect-ratio:3/2;overflow:hidden;background:#24190d;color:white}
.menu-visual img{display:block;width:100%;height:100%;object-fit:cover}
.menu-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 35%,rgba(0,0,0,.72));pointer-events:none}
.menu-overline{position:absolute;top:7%;left:7%;z-index:1;font-size:clamp(12px,4.2cqw,15px);font-weight:600;text-shadow:0 1px 8px rgba(0,0,0,.55)}
.menu-image-title{position:absolute;left:7%;right:5%;bottom:9%;z-index:1;font-size:clamp(24px,8.6cqw,36px);font-weight:700;line-height:1.45;letter-spacing:.025em;text-shadow:0 2px 14px rgba(0,0,0,.55)}
.menu-price-note{position:absolute;left:7%;bottom:3%;z-index:1;font-size:clamp(11px,3.6cqw,14px);line-height:1.5}
.menu-copy{padding:18px}.article .menu-copy h3{font-size:19px;line-height:1.65;margin:0 0 10px}.article .menu-copy p{font-size:15px;line-height:1.85;margin:0 0 14px;letter-spacing:.01em}
.menu-read{display:inline-flex;align-items:center;gap:12px;min-height:32px;color:var(--wine);font-size:14px;font-weight:600}
.article .menu-section-lead{font-size:16px;margin:0 0 18px}.menu-top-links{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 28px}.menu-top-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--wine);text-decoration:underline;text-underline-offset:4px}
.article-eyecatch{margin:24px 0}.article-eyecatch .menu-visual{border-radius:12px}.article-eyecatch figcaption{font-size:12px;color:var(--muted);margin-top:7px}
@media(min-width:600px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.menu-copy{padding:18px}.article .menu-copy h3{font-size:18px}}

.u-header .u-brand{display:inline-flex;align-items:baseline;gap:7px;white-space:nowrap}.mast-about-label{font-family:"Noto Sans JP",sans-serif;font-size:18px;font-weight:500;letter-spacing:0;line-height:1.4;color:#2A2017}.mast-about-label{font-size:16px}.u-header .u-brand{gap:5px}@media(min-width:421px){.mast-about-label{font-size:18px}.u-header .u-brand{gap:7px}}