@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--paper:#f5f3ec;--ink:#242522;--muted:#65655f;--red:#902a2f;--gold:#c9b294;--line:#d9d6cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-size:14px;line-height:1.95}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c49341;outline-offset:5px}.skip{position:absolute;top:-80px}.skip:focus{top:10px;z-index:100;background:white;padding:10px}header{height:92px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand strong{font-family:Georgia,serif;font-size:25px;letter-spacing:3px;line-height:1.1;display:block}.brand span{font-family:Arial,sans-serif;display:block;font-size:9px;letter-spacing:4.4px;margin-top:9px}nav{display:flex;gap:26px;align-items:center;font-size:12px}nav a:hover{color:var(--red)}.nav-cta{border-bottom:1px solid var(--red);padding:10px 0;color:var(--red)}#menu{display:none}.hero{height:min(790px,84vh);min-height:610px;position:relative;background:#171714;color:white;overflow:hidden}.hero>img{position:absolute;width:68%;height:100%;right:0;object-fit:cover;object-position:55% 38%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#171714 7%,rgba(23,23,20,.95) 25%,rgba(23,23,20,.25) 73%,rgba(23,23,20,.1)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 35%)}.hero-content{position:relative;padding:100px 8%;max-width:940px}.eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:2.5px;line-height:1.6;margin:0 0 26px;color:var(--gold)}.red{color:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-family:'Noto Serif JP',serif;font-weight:500;font-size:clamp(36px,4.3vw,65px);line-height:1.6;letter-spacing:.05em;margin-bottom:25px}.hero-sub{font-size:15px;line-height:2.1;color:#e3ddd3}.actions{display:flex;align-items:center;gap:30px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--red);color:white;padding:17px 25px;font-size:12px;letter-spacing:.05em;transition:background .2s}.button:hover{background:#b03d42}.button.dark{background:var(--ink)}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-block}.hero-bottom{position:absolute;bottom:28px;left:8%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#cfc4b4}.wrap{max-width:1320px;padding:90px 7%;margin:auto}h2{font-family:'Noto Serif JP',serif;font-weight:500;font-size:clamp(25px,2.8vw,39px);line-height:1.7;letter-spacing:.035em;margin-bottom:30px}h3{font-size:17px;font-weight:500;line-height:1.9}p{color:var(--muted);margin-bottom:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split p{font-size:14px}.assurances{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;padding:23px 0;font-size:11px;text-align:center}.assurances span+span{border-left:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading>p{font-size:12px}.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:28px}.occasion-grid article{border-top:1px solid var(--ink);padding-top:24px}.occasion-grid article>span{font-family:Georgia;font-size:26px;color:var(--red)}.occasion-grid h3{margin:20px 0 14px}.occasion-grid p{font-size:12px}.occasion-grid small{font-size:8px;letter-spacing:1.6px}.feature{height:480px;position:relative;background:#191919;color:white;overflow:hidden}.feature img{width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:.6}.feature:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75),transparent)}.feature>div{position:absolute;top:75px;left:8%;z-index:1}.feature p{color:#ddd2c0}.section-lead{max-width:690px}.plans{display:grid;grid-template-columns:1fr 1fr;margin-top:42px;gap:24px}.plans article{padding:44px;border:1px solid var(--line)}.plans article.premium{background:#222420;color:var(--paper);border-color:#222420}.plans h3{font-family:'Noto Serif JP',serif;font-size:25px}.plans .premium p,.plans .premium li{color:#d2cabb}.plans p,.plans li{font-size:12px}.plans ul{padding:20px 0 20px 18px;border-top:1px solid #7776;margin-top:25px}.note{font-size:11px;line-height:1.9;margin-top:20px}.extra{border-bottom:1px solid var(--line);padding:30px 0}.extra h3{margin-bottom:8px}.extra p{font-size:12px}.artist{display:grid;grid-template-columns:.85fr 1fr;gap:100px;align-items:center}.portrait img{display:block;width:100%;height:580px;object-fit:cover;object-position:center top}.artist-name{font-family:'Playfair Display',Georgia,serif;font-size:78px;line-height:1;letter-spacing:-2px;margin-bottom:26px}.artist-name em{font-weight:400}.artist-jp{color:var(--ink);font-size:13px;margin:0}.role{font-size:11px;letter-spacing:2px;margin:9px 0 25px}.artist p{max-width:450px}.films{display:grid;grid-template-columns:1fr 1fr;gap:32px}.films a{position:relative}.films img{width:100%;aspect-ratio:16/9;object-fit:cover;filter:saturate(.8)}.films small{display:block;font-size:9px;letter-spacing:2px;color:var(--red);margin-top:20px}.films h3{font-family:Georgia;font-size:29px;margin:4px 0}.films p{font-size:12px}.play{position:absolute;top:20px;left:20px;background:#181818cc;color:white;padding:8px 15px;font-size:11px}.guide{border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.steps span{font-family:Georgia;font-size:38px;color:var(--red)}.steps h3{font-size:15px;margin-top:15px}.steps p{font-size:12px}.technical{display:grid;grid-template-columns:1fr 1fr;gap:75px;background:#ebe8df;max-width:none;padding-left:max(7%,calc((100vw - 1135px)/2));padding-right:max(7%,calc((100vw - 1135px)/2))}.technical h2{font-size:29px}.tech-list article{border-top:1px solid #c9c5b9;padding:20px 0}.tech-list h3{font-size:14px;margin-bottom:8px}.tech-list p{font-size:12px;margin:0}.faq{margin-top:30px}details{border-top:1px solid var(--line);padding:22px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'＋';color:var(--red)}details[open] summary:after{content:'−'}details p{max-width:900px;font-size:13px;margin:22px 30px 5px 0}.contact{max-width:none;background:#242622;color:white;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-left:max(7%,calc((100vw - 1135px)/2));padding-right:max(7%,calc((100vw - 1135px)/2))}.contact p{color:#cec9bc}.contact-org{font-size:12px;margin-top:40px}.contact-panel{border:1px solid #6d6e60;padding:35px}.contact-panel h3{font-size:16px}.contact-panel ul{padding-left:18px;color:#d7d1c3;font-size:12px;margin-bottom:25px}.contact-panel .button{width:100%}.policy{font-size:11px;border-bottom:1px solid #999}footer{padding:50px 7% 22px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-top p{font-size:12px;margin:0}.footer-top>a:last-child{font-size:12px;color:var(--red)}.footer-bottom{font-size:9px;letter-spacing:1px;border-top:1px solid var(--line);margin-top:35px;padding-top:20px}
@media(min-width:1500px){.hero-content{padding-left:calc((100vw - 1250px)/2)}}@media(max-width:1050px){nav{gap:15px;font-size:10px}.brand strong{font-size:21px}.wrap{padding:70px 6%}.artist{gap:50px}.occasion-grid{grid-template-columns:1fr 1fr}.technical,.contact{gap:35px}.hero-content{padding-left:6%}.hero>img{width:85%}.steps{grid-template-columns:1fr 1fr}}@media(max-width:760px){header{height:78px;padding:0 6%}.brand strong{font-size:21px}.brand span{font-size:8px;letter-spacing:3.5px}#menu{display:block;background:none;border:1px solid #bbb;padding:7px 11px;font-size:11px}nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px 6% 28px;background:var(--paper);border-bottom:1px solid var(--line);font-size:14px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:12px}.hero{min-height:630px;height:calc(90svh - 78px);max-height:780px}.hero>img{width:100%;object-position:63% center}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.25)),linear-gradient(0deg,#191917,transparent 55%)}.hero-content{padding:90px 7% 40px}.hero .eyebrow{font-size:8px;letter-spacing:1.8px}h1{font-size:36px;line-height:1.65}.hero-sub{font-size:12px}.actions{align-items:start;flex-direction:column;gap:20px}.hero-bottom{left:7%;bottom:25px;font-size:8px}.hero-bottom span:nth-child(2){display:none}.wrap{padding:58px 7%}.split,.plans,.artist,.technical,.contact{grid-template-columns:1fr;gap:25px}.split h2{margin-bottom:5px}.assurances{grid-template-columns:1fr 1fr;row-gap:17px;font-size:10px}.assurances span:nth-child(3){border:0}.section-heading{display:block}.section-heading>p{margin-top:-10px}.occasion-grid{gap:22px}.occasion-grid h3{font-size:15px}.feature{height:390px}.feature>div{top:70px;right:7%}.feature p{font-size:12px}.plans article{padding:28px}.plans h3{font-size:23px}.portrait img{height:470px}.artist{gap:38px}.artist-name{font-size:67px}.films{grid-template-columns:1fr;gap:25px}.steps{gap:20px}.steps h3{font-size:14px}.technical h2{font-size:25px}.technical,.contact{padding:60px 7%}.contact-panel{padding:25px 20px}.contact h2{font-size:30px}summary{font-size:13px}footer{padding:40px 7% 20px}.footer-top{align-items:start;flex-direction:column}.footer-bottom{flex-wrap:wrap;gap:10px;font-size:8px}.eyebrow{font-size:9px}.button{font-size:11px}html{scroll-padding-top:90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.footer-nav{display:flex;position:static;gap:25px;margin-top:30px;flex-wrap:wrap;font-size:11px}.page-intro{padding-bottom:45px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(32px,4vw,56px);color:var(--ink);margin-top:25px}.breadcrumb{font:9px Arial;letter-spacing:2px;margin-bottom:45px;color:var(--muted)}.page-lead{max-width:740px;font-size:14px}.case-list{padding-top:35px}.case{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:start;padding:50px 0;border-bottom:1px solid var(--line)}.case-media{position:relative}.case-media img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.case-media>span{position:absolute;bottom:20px;left:20px;background:#171714d9;color:white;padding:12px 20px;font-size:11px}.case h2{font-family:'Playfair Display',Georgia,serif;font-size:40px;margin-bottom:5px}.case p{font-size:12px}.case-facts,.profile-facts{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--line);font-size:12px;margin:25px 0}.case-facts dt,.case-facts dd,.profile-facts dt,.profile-facts dd{padding:12px 0;border-bottom:1px solid var(--line);margin:0}.case-facts dt,.profile-facts dt{color:var(--muted)}.artist-profile{padding-top:50px}.three{grid-template-columns:repeat(3,1fr)}.casting-band{border-top:1px solid var(--line)}.casting-band p{max-width:750px}.casting-band .text-link{margin-right:35px}.sub-cta{max-width:none;background:#242622;color:white;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:65px 8%}.sub-cta h2{font-size:28px;margin-bottom:10px}.sub-cta p{color:#c9c4b8;font-size:12px}.sub-cta .button{flex-shrink:0}.company-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.company-facts{margin:0;display:grid;grid-template-columns:130px 1fr;font-size:12px}.company-facts dt,.company-facts dd{padding:20px 0;border-bottom:1px solid var(--line);margin:0}.company-facts dt{color:var(--muted)}.company-facts a{border-bottom:1px solid #aaa;word-break:break-word}.guide-index{padding-top:25px;padding-bottom:25px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:12px}.check-table>div{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line);padding:25px 0;gap:30px}.check-table h3{font-size:15px;margin:0}.check-table p{font-size:13px;margin:0}.scope-section{background:#ebe8df;max-width:none}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.scope-grid h3{font-size:15px}.scope-grid ul{padding-left:18px;font-size:12px;color:var(--muted);line-height:2.2}.brief-section>p{max-width:760px}.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 30px;margin:30px 0}.brief-grid label{font-size:12px;display:block}.brief-grid input,.brief-grid select,.brief-grid textarea,#brief-output{width:100%;padding:14px;background:#fffdf8;border:1px solid #c6c3b8;border-radius:0;color:var(--ink);font:13px 'Noto Sans JP',sans-serif;margin-top:8px;min-height:48px}.brief-grid input:focus,.brief-grid select:focus,.brief-grid textarea:focus,#brief-output:focus{outline:2px solid var(--red);outline-offset:2px}.brief-grid .wide{grid-column:1/-1}button.button{border:0;cursor:pointer}#brief-result{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}#brief-status{font-size:12px;color:var(--red);margin-top:18px}.print-button{border:0;border-bottom:1px solid currentColor;background:none;padding:10px 0;cursor:pointer}.artist div>.text-link{margin-bottom:18px}
@media(max-width:760px){.footer-nav{display:flex;background:none;border:0;padding:0;flex-direction:row;gap:15px}.footer-nav a{padding:0}.page-intro{padding-top:45px}.page-intro h1{font-size:32px}.case,.company-layout{grid-template-columns:1fr;gap:25px}.case{padding:35px 0}.case h2{font-size:33px}.three,.scope-grid{grid-template-columns:1fr}.sub-cta{display:block;padding:50px 7%}.sub-cta .button{margin-top:15px}.company-facts{grid-template-columns:100px 1fr;font-size:11px}.guide-index{flex-direction:column;gap:12px}.check-table>div{grid-template-columns:1fr;gap:8px}.brief-grid{grid-template-columns:1fr;gap:18px}.brief-grid .wide{grid-column:auto}.scope-grid{gap:20px}.breadcrumb{margin-bottom:30px}.case-media>span{bottom:12px;left:12px;padding:8px 15px}}
@media print{header,footer,.sub-cta,.guide-index,.print-button,#brief-form,.actions,.skip{display:none!important}body{background:white;color:black;font-size:11px}.wrap{padding:20px 0;max-width:none}.page-intro h1{font-size:28px}h2{font-size:21px}.scope-section{background:white}.check-table>div{break-inside:avoid}.scope-grid{gap:18px}#brief-output{border:0;background:white;min-height:280px}.brief-section{break-before:page}}
.form-progress{display:flex;gap:30px;list-style:none;padding:0;margin:40px 0 0;font-size:12px;color:var(--muted)}.form-progress li{border-bottom:2px solid var(--line);padding-bottom:10px}.form-progress li[aria-current]{color:var(--red);border-color:var(--red)}.form-wrap{max-width:1000px;padding-top:45px}.form-wrap fieldset{border:0;border-top:1px solid var(--line);padding:25px 0;margin:0}.form-wrap legend{font-size:17px;padding:0 20px 0 0;font-family:'Noto Serif JP',serif}.brief-grid label>small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.brief-grid label>span{color:var(--red)}.honeypot{position:absolute;left:-10000px;opacity:0}.consent{display:flex;align-items:start;gap:12px;font-size:12px;margin:20px 0}.consent input{margin-top:6px;width:17px;height:17px;flex-shrink:0}.consent a{border-bottom:1px solid}.form-error{color:#922127;border:1px solid #d2a0a0;padding:20px;margin-top:25px;font-size:13px}.form-wrap .company-facts{grid-template-columns:140px 1fr}.form-wrap dd{overflow-wrap:anywhere}.form-wrap button:disabled{opacity:.55;cursor:wait}.receipt-label{font-size:12px;margin:25px 0 5px}.receipt-reference{font-family:Arial;font-size:26px;letter-spacing:2px}.form-privacy{background:#ebe8df;max-width:none}.form-privacy p{max-width:850px;font-size:12px}.form-privacy h2{font-size:25px}[hidden]{display:none!important}@media(max-width:760px){.form-progress{gap:22px;font-size:11px}.form-wrap .company-facts{grid-template-columns:100px 1fr}.receipt-reference{font-size:23px}}

.brand{display:flex;align-items:center;gap:12px}.brand .agency-logo{width:74px;height:74px;object-fit:contain;background:white}.footer-top .agency-logo{width:100px;height:100px}@media(max-width:700px){header .brand strong{font-size:16px;letter-spacing:1px}header .brand span{font-size:8px}header .brand .agency-logo{width:58px;height:58px}.footer-top .agency-logo{width:80px;height:80px}}

/* Language menu stays visible when the main navigation is collapsed. */
header{gap:20px}.languages{position:relative;flex-shrink:0}.languages summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:3px;font:600 12px/1.5 sans-serif;padding:9px 12px;color:var(--ink)}.languages summary::-webkit-details-marker{display:none}.languages summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.language-list{position:absolute;right:0;top:calc(100% + 12px);min-width:160px;background:var(--paper);border:1px solid var(--line);padding:8px;box-shadow:0 12px 30px #0002;z-index:30}.language-list a{display:block;padding:10px 12px;line-height:1.4;font-size:14px}.language-list a:hover,.language-list a[aria-current]{background:#e8e2d8;color:var(--red)}
:lang(es) h1,:lang(en) h1{font-family:Georgia,serif;letter-spacing:0;line-height:1.2}:lang(es) h2,:lang(en) h2{font-family:Georgia,serif;letter-spacing:0;line-height:1.35}:lang(ko){word-break:keep-all}:lang(ko) body{font-family:'Apple SD Gothic Neo','Malgun Gothic',sans-serif}:lang(zh) body{font-family:'PingFang SC','Microsoft YaHei',sans-serif}
@media(max-width:1250px){header{justify-content:flex-end}header .brand{margin-right:auto}#menu{display:block;background:none;border:1px solid #bbb;padding:7px 11px;font-size:12px}#nav{display:none;position:absolute;top:92px;left:0;right:0;padding:20px 6%;background:var(--paper);border-bottom:1px solid var(--line);font-size:14px}#nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}#nav a{padding:12px}}
@media(max-width:760px){header{gap:12px}#nav{top:78px}.languages summary{padding:8px 10px}.hero-content{padding-top:65px}:lang(es) .hero h1,:lang(en) .hero h1{font-size:36px}}
@media(max-width:480px){header .brand strong{display:none}header .brand .agency-logo{width:60px;height:60px}.languages summary{font-size:12px}header{padding:0 5%}.form-progress{gap:14px;flex-wrap:wrap}.assurances span{padding:0 8px;overflow-wrap:anywhere}}
