/*
Theme Name: Nakamuraya
Description: 淡いローズと余白で構成する、実績を非公開配信するポートフォリオ。
Version: 1.0.0
Requires PHP: 8.1
*/
:root{--paper:#fbf7f8;--ink:#383236;--rose:#ead8df;--line:#d8c5cd;--accent:#775260}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:18px/1.9 "Noto Sans JP","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:6px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{max-width:100%;height:auto;display:block}button,input{font:inherit}input{max-width:100%}.serif,h1,h2,.number{font-family:"Bodoni Moda",Didot,"Times New Roman",serif;font-weight:400;line-height:1.1}header{padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{font:30px "Bodoni Moda",Didot,serif;text-decoration:none}nav{display:flex;flex-wrap:wrap;gap:28px;font-size:16px}nav a{text-decoration:none}.wrap{max-width:1320px;margin:auto;padding:0 6%}.eyebrow{font-size:16px;letter-spacing:.12em;text-transform:uppercase}.hero{padding:110px 0 100px;position:relative}.hero:after{content:"";position:absolute;right:-2%;top:90px;width:36%;height:310px;background:var(--rose);border-radius:48% 48% 0 0;z-index:-1;transform:rotate(9deg)}h1{font-size:clamp(70px,10.5vw,150px);letter-spacing:-.055em;margin:34px 0 52px}.hero-bottom{margin-left:36%;max-width:590px}.hero-bottom h2{font:400 clamp(24px,3vw,34px)/1.8 "Yu Gothic",sans-serif;letter-spacing:.05em}.intro{max-width:530px}.arrow-link{display:inline-flex;align-items:center;gap:50px;border-bottom:1px solid var(--ink);padding:14px 0;text-decoration:none;font-size:16px}.section{padding:110px 0}.section-head{display:flex;gap:24px;align-items:baseline;margin-bottom:55px}h2{font-size:clamp(54px,7vw,90px);margin:0;letter-spacing:-.04em}.section-head span{font-size:16px}.works-invite{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.abstract{background:var(--rose);min-height:360px;display:flex;flex-direction:column;justify-content:space-between;padding:40px;transform:rotate(-3deg)}.abstract .serif{font-size:clamp(55px,7vw,90px)}.abstract span{font-size:16px}.invite-copy{padding-top:90px}.invite-copy h3{font-size:24px;font-weight:500}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;border-top:1px solid var(--line)}.about .section-head{display:block}.about .section-head span{display:block;margin-top:20px}.about-copy{padding-top:70px}.about-copy h3{font-size:30px;font-weight:400;margin-top:0}.services{margin:40px 0 0;padding:0;list-style:none}.services li{padding:20px 0;border-top:1px solid var(--line)}.services strong{display:block;font-weight:500}.services span{font-size:16px}.contact{background:var(--rose);padding:80px 6%;margin:70px 0 0}.contact-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact p{margin-top:0}footer{padding:35px 6%;display:flex;justify-content:space-between;gap:20px;font-size:16px}.page-heading{padding:90px 0 40px}.page-heading h1{font-size:clamp(65px,9vw,120px);margin:20px 0 35px}.lock-panel{padding:50px;background:#f1e5e9;max-width:720px;margin:30px auto 100px}.lock-panel h2{font-size:44px}.post-password-form label{display:block}.post-password-form input[type=password]{display:block;background:var(--paper);border:1px solid var(--accent);padding:12px;margin:12px 0 20px;width:100%}input[type=submit],button{cursor:pointer;background:var(--ink);color:white;padding:12px 28px;border:0;min-height:48px}.gallery{display:grid;grid-template-columns:1.1fr 1fr;column-gap:10%;row-gap:100px;padding:40px 0 100px;align-items:start}.work:nth-child(even){margin-top:130px}.work:nth-child(3n){width:90%}.work h2{font-family:inherit;font-size:23px;line-height:1.6;letter-spacing:0;margin:16px 0}.work p{font-size:16px}.number{font-size:34px;display:block;margin-bottom:18px}.work-cover{background:#ecdee3;padding:22px}.work-cover img{width:100%;max-height:440px;object-fit:cover;object-position:top}.work-cover a{display:block}.work details{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.work summary{cursor:pointer;font-size:16px}.variants{display:grid;gap:28px;padding-top:25px}.variants a{display:block}.variants img{max-height:500px;object-fit:contain;object-position:top;background:white;margin:auto}.note{font-size:16px}.generic{max-width:760px;margin:90px auto}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:white;z-index:100;padding:10px}@media(min-width:1600px){.hero:after{right:2%}}@media(max-width:700px){body{font-size:17px}header{padding:24px;align-items:flex-start;flex-direction:column;gap:18px}nav{gap:24px}.wrap{padding:0 24px}.hero{padding:65px 0 72px}.hero:after{top:80px;height:200px;right:0;width:45%}h1{font-size:clamp(53px,12vw,84px);margin:35px 0 55px}.hero-bottom{margin-left:8%}.hero-bottom h2{font-size:24px}.section{padding:72px 0}.section-head{margin-bottom:36px;gap:18px}.works-invite,.about,.contact-inner{grid-template-columns:1fr;gap:32px}.abstract{min-height:280px;margin:0 12px}.invite-copy,.about-copy{padding-top:16px}.about .section-head{margin:0}.contact{padding:60px 24px;margin-top:30px}.contact h2{margin-bottom:20px}footer{padding:30px 24px;flex-direction:column}.gallery{grid-template-columns:1fr;row-gap:64px;padding-top:20px}.work:nth-child(even){margin-top:0;margin-left:6%}.work:nth-child(3n){width:94%}.work-cover{padding:16px}.lock-panel{padding:28px 24px}.page-heading{padding-top:55px}.page-heading h1{font-size:65px}.work-cover img{max-height:380px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Portfolio front page */
.portfolio-home{max-width:1440px;padding-inline:clamp(24px,7vw,108px)}
.folio-intro{padding:clamp(75px,11vw,162px) 0 clamp(72px,10vw,140px)}
.folio-intro .eyebrow{margin:0;color:#775260;letter-spacing:.08em}
.folio-intro .eyebrow span{padding-inline:.35em}
.folio-intro h1{font-size:clamp(42px,12.3vw,178px);line-height:.98;letter-spacing:-.06em;margin:32px 0 36px}
.folio-intro h1 span{color:#9e687c}
.folio-lead{margin-left:33%;border-top:1px solid var(--line);padding-top:20px;display:flex;flex-wrap:wrap;gap:14px 32px;justify-content:space-between;align-items:baseline}
.folio-lead p{margin:0;font-size:clamp(17px,2vw,24px)}
.folio-lead a,.folio-link{display:inline-flex;gap:16px;align-items:center;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:16px}
.folio-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(24px,5vw,72px);padding:clamp(56px,8vw,112px) 0;border-top:1px solid var(--line)}
.folio-works{background:#eedde3;padding-inline:clamp(24px,4vw,64px);border-top:0}
.folio-label{display:flex;align-items:baseline;gap:16px}
.folio-label span{font-size:16px;color:#775260}
.folio-label h2{font-size:clamp(45px,6vw,88px);line-height:1}
.folio-content{max-width:560px;padding-top:24px}
.folio-content p{margin:0 0 20px}
.folio-content .folio-title{font-size:clamp(21px,2.2vw,28px);font-weight:500;line-height:1.45}
.folio-content .note{margin:16px 0 0}
.folio-spec{font-size:16px;margin:32px 0 0}
.folio-spec div{display:grid;grid-template-columns:9em minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding:14px 0}
.folio-spec dt{font-weight:600}
.folio-spec dd{margin:0}
@media(max-width:700px){
 .folio-intro h1{margin:24px 0 26px}
 .folio-lead{margin-left:8%}
 .folio-section{grid-template-columns:1fr;gap:24px}
 .folio-works{margin-right:12px}
 .folio-content{padding-top:0}
 .folio-spec div{grid-template-columns:1fr;gap:4px}
}
