:root{
  --bg:#050505;
  --bg2:#090806;
  --panel:#0d0b09;
  --panel2:#12100c;
  --ink:#f4eee5;
  --soft:#c8bbaa;
  --muted:#827568;
  --line:#262626;
  --line2:#4a4a4a;
  --gold:#f2f2f2;
  --amber:#d8d8d8;
  --amber2:#f0f0f0;
  --max:1120px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 50% -10%,rgba(255,255,255,.045),transparent 30%),
    var(--bg);
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  line-height:1.95;
  letter-spacing:.035em;
}

a{color:inherit}

img{display:block;max-width:100%}

.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}

header{
  position:sticky;top:0;z-index:50;
  background:rgba(5,5,5,.93);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #202020;
}

.header-inner{
  min-height:60px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}

.brand-link{
  text-decoration:none;
  font-size:15px;
  letter-spacing:.28em;
}

nav{display:flex;gap:22px;align-items:center}

nav a{text-decoration:none;color:#9a9a9a;font-size:11px}

nav a:hover{color:#fff}

.hero{
  min-height:78vh;
  display:grid;
  place-items:center;
  border-bottom:1px solid var(--line);
  overflow:hidden;
}

.hero-inner{
  width:min(1180px,94vw);
  padding:86px 0 76px;
  text-align:center;
}

.hero-logo{
  width:min(980px,92vw);
  margin:0 auto 30px;
}

.hero-logo img{
  width:100%;
  border:0;
}

.hero-copy{
  max-width:760px;
  margin:0 auto;
  color:#b8b8b8;
  font-size:clamp(14px,1.7vw,18px);
  line-height:2;
}

.hero-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:30px;
}

.btn{
  min-height:46px;
  padding:12px 20px;
  border:1px solid var(--line2);
  background:#0a0907;
  color:#d9cec0;
  text-decoration:none;
  font-size:12px;
  display:inline-flex;align-items:center;justify-content:center;
}

.btn:hover{border-color:#fff;color:#fff;background:#141414}

.btn.primary{
  border-color:#f1f1f1;
  background:#f1f1f1;
  color:#090909;
}

section{padding:86px 0;border-bottom:1px solid var(--line)}

.section-label{
  color:#f0f0f0;
  font-size:11px;
  letter-spacing:.16em;
  margin-bottom:8px;
}

h1,h2,h3{font-weight:500}

h2{
  margin:0 0 22px;
  font-size:clamp(30px,4vw,46px);
  line-height:1.35;
}

.lead{
  margin:0;
  max-width:780px;
  color:#a5a5a5;
  font-size:14px;
}

.about-grid{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:56px;
  align-items:center;
}

.about-symbol{
  border:1px solid #271f19;
  background:#030303;
  padding:22px;
}

.about-symbol img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:contain;
}

.about-copy p{
  color:#b5b5b5;
  font-size:14px;
  margin:0 0 1.3em;
}

.relation-note{
  margin-top:24px;
  padding:18px 20px;
  border:1px solid #363636;
  border-left:3px solid #f0f0f0;
  background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.008));
}

.relation-note strong{
  display:block;
  margin-bottom:6px;
  color:#efefef;
  font-size:13px;
}

.relation-note span{
  color:#8d8d8d;
  font-size:12px;
}

.works{
  background:var(--bg2);
}

.news-list{
  margin-top:30px;
  border-top:1px solid #3d3d3d;
}

.news-row{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:20px;
  padding:14px 2px;
  border-bottom:1px solid var(--line);
}

.news-date{color:#737373;font-size:11px}

.news-text{color:#aeaeae;font-size:13px}

.contact-card{
  max-width:760px;
  border:1px solid #303030;
  background:#0a0a0a;
  padding:30px;
}

.contact-card p{
  margin:0 0 18px;
  color:#999999;
  font-size:13px;
}

.contact-note{
  color:#6f6f6f !important;
  font-size:11px !important;
}

footer{
  padding:50px 0 36px;
  background:#030303;
}

.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:36px;
  padding-bottom:28px;
}

.footer-title{
  font-size:18px;
  letter-spacing:.2em;
  margin-bottom:8px;
}

.footer-copy{
  color:#6f6f6f;
  font-size:11px;
  max-width:420px;
}

.footer-group-title{
  color:#f0f0f0;
  font-size:10px;
  letter-spacing:.14em;
  margin-bottom:10px;
}

.footer-links{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.footer-links a{
  color:#888888;
  text-decoration:none;
  font-size:11px;
}

.footer-bottom{
  padding-top:22px;
  border-top:1px solid #1f1f1f;
  color:#5f5f5f;
  font-size:10px;
}

@media (max-width:840px){
nav{display:none}

.hero{min-height:64vh}

.about-grid{grid-template-columns:1fr}

.about-symbol{max-width:520px;margin:auto}

.footer-grid{grid-template-columns:1fr 1fr}

.footer-brand{grid-column:1/3}
}

@media (max-width:560px){
.wrap{width:calc(100% - 28px)}

section{padding:64px 0}

.hero-inner{padding:66px 0 60px}

.hero-actions{display:grid}

.hero-actions .btn{width:100%}

.news-row{grid-template-columns:110px 1fr}

.footer-grid{grid-template-columns:1fr}

.footer-brand{grid-column:auto}
}

.label-catalog{
  background:
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 24%),
    #080808;
}

.label-catalog .lead{
  max-width:760px;
}

.catalog-index{
  margin-top:42px;
  border-top:1px solid #4a4a4a;
  border-bottom:1px solid #252525;
}

.catalog-entry{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  min-height:350px;
}

.catalog-number{
  border-right:1px solid #2f2f2f;
  padding:32px 22px 28px 2px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  color:#777;
}

.catalog-number-label{
  display:block;
  margin-bottom:8px;
  font-size:9px;
  letter-spacing:.24em;
  color:#626262;
}

.catalog-number strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:48px;
  line-height:1;
  font-weight:400;
  color:#e7e7e7;
  letter-spacing:.04em;
}

.catalog-main{
  padding:30px 0 30px 42px;
}

.catalog-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px;
  gap:30px;
  align-items:start;
  padding-bottom:22px;
  border-bottom:1px solid #242424;
}

.catalog-kicker{
  margin-bottom:8px;
  color:#747474;
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.catalog-heading h3{
  margin:0;
  font-size:clamp(28px,3.4vw,42px);
  font-weight:500;
  letter-spacing:.08em;
}

.catalog-mark{
  min-height:112px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.catalog-mark img{
  width:118px;
  max-height:112px;
  object-fit:contain;
  filter:drop-shadow(0 12px 22px rgba(0,0,0,.38));
}

.catalog-description{
  max-width:760px;
  margin:25px 0 24px;
  color:#aaa;
  font-size:13px;
  line-height:2.05;
}

.catalog-links{
  display:flex;
  gap:28px;
  flex-wrap:wrap;
  margin-top:24px;
}

.catalog-links a{
  display:inline-flex;
  gap:10px;
  align-items:center;
  color:#e5e5e5;
  text-decoration:none;
  font-size:11px;
  border-bottom:1px solid #525252;
  padding-bottom:3px;
}

.catalog-links a:hover{
  border-color:#fff;
  color:#fff;
}

.catalog-links a span{
  color:#777;
}

.catalog-note{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  border-bottom:1px solid #242424;
  min-height:92px;
  align-items:center;
}

.catalog-note span{
  align-self:stretch;
  display:flex;
  align-items:center;
  border-right:1px solid #2f2f2f;
  color:#4f4f4f;
  font-size:9px;
  letter-spacing:.18em;
}

.catalog-note p{
  margin:0;
  padding-left:42px;
  color:#696969;
  font-size:11px;
}

@media (max-width:760px){
.catalog-entry{
    grid-template-columns:72px minmax(0,1fr);
  }

.catalog-number{
    padding-right:14px;
  }

.catalog-number strong{
    font-size:36px;
  }

.catalog-main{
    padding-left:24px;
  }

.catalog-heading{
    grid-template-columns:1fr;
    gap:16px;
  }

.catalog-mark{
    justify-content:flex-start;
    min-height:auto;
  }

.catalog-mark img{
    width:98px;
    max-height:96px;
  }

.catalog-note{
    grid-template-columns:72px minmax(0,1fr);
  }

.catalog-note p{
    padding:18px 0 18px 24px;
  }
}

@media (max-width:520px){
.catalog-entry{
    grid-template-columns:1fr;
  }

.catalog-number{
    border-right:0;
    border-bottom:1px solid #242424;
    padding:18px 0 14px;
    flex-direction:row;
    gap:12px;
    align-items:baseline;
  }

.catalog-number-label{
    margin:0;
  }

.catalog-number strong{
    font-size:30px;
  }

.catalog-main{
    padding:24px 0 28px;
  }

.catalog-note{
    grid-template-columns:1fr;
    padding:18px 0;
  }

.catalog-note span{
    border-right:0;
    margin-bottom:6px;
  }

.catalog-note p{
    padding:0;
  }
}

.catalog-description{
  margin: 25px 0 18px;
}

.catalog-links{
  margin-top: 18px;
}

body{
  line-height:1.9;
  letter-spacing:.025em;
}

nav a{font-size:12px;}

.hero-copy{
  max-width:780px;
  font-size:clamp(16px,2vw,21px);
  line-height:2;
}

.section-label{font-size:12px;}

.lead{font-size:14px;line-height:1.9;}

.about-copy p{font-size:15px;line-height:1.95;}

.relation-note strong{font-size:14px;}

.relation-note span{font-size:12px;line-height:1.8;}

.catalog-number-label{font-size:10px;}

.catalog-kicker{font-size:10px;}

.catalog-description{font-size:14px;line-height:2;}

.catalog-links a{font-size:12px;}

.catalog-note span{font-size:10px;}

.catalog-note p{font-size:12px;line-height:1.8;}

.news-date{font-size:12px;}

.news-text{font-size:14px;line-height:1.8;}

.contact-card p{font-size:14px;line-height:1.9;}

.contact-note{font-size:12px !important;line-height:1.8 !important;}

.footer-copy{font-size:12px;line-height:1.9;}

.footer-group-title{font-size:11px;}

.footer-links a{font-size:12px;line-height:1.75;}

@media (max-width:560px){
.hero-copy{font-size:16px;line-height:1.95;}

.about-copy p,.catalog-description,.news-text,.contact-card p{font-size:14px;}

.catalog-links a,.footer-links a{font-size:12px;}
}

:root{
  --bg:#050505 !important;
  --bg2:#070603 !important;
  --panel:#090806 !important;
  --panel2:#0d0b07 !important;
  --ink:#f7efd9 !important;
  --soft:#eadab7 !important;
  --muted:#b9a67d !important;
  --line:rgba(216,182,106,.18) !important;
  --line2:rgba(216,182,106,.42) !important;
  --gold:#D8B66A !important;
  --amber:#D8B66A !important;
  --amber2:#f0d28a !important;
}

body{
  color:var(--ink) !important;
  background:#050505 !important;
  background-image:none !important;
  font-size:17px;
  line-height:1.95;
  letter-spacing:.035em;
}

a{transition:color .2s ease,border-color .2s ease,background .2s ease}

header{
  background:rgba(5,5,5,.97) !important;
  border-bottom:1px solid rgba(216,182,106,.20) !important;
  backdrop-filter:blur(8px);
}

.header-inner{
  min-height:52px !important;
}

.brand-link{
  color:var(--gold) !important;
  font-size:16px !important;
  letter-spacing:.30em !important;
}

nav{gap:26px !important}

nav a{
  color:#d8c9a7 !important;
  font-size:14px !important;
}

nav a:hover{color:#f5d98f !important}

.hero{
  min-height:calc(100vh - 52px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-bottom:1px solid rgba(216,182,106,.18) !important;
  background:#050505 !important;
}

.hero-inner{
  width:min(1760px,100vw) !important;
  padding:42px 0 34px !important;
  text-align:center !important;
}

.hero-logo{
  width:min(1680px,96vw) !important;
  min-height:min(72vh,860px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 auto 22px !important;
  padding:20px 42px 10px !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}

.hero-logo img{
  display:block !important;
  width:min(1540px,100%) !important;
  max-width:100% !important;
  max-height:68vh !important;
  height:auto !important;
  object-fit:contain !important;
  transform:none !important;
  transform-origin:center center !important;
  border:0 !important;
}

.hero-copy{
  max-width:920px !important;
  margin:0 auto !important;
  color:#eadfca !important;
  font-size:clamp(18px,1.55vw,24px) !important;
  line-height:1.95 !important;
}

.hero-actions{
  margin-top:26px !important;
  gap:14px !important;
}

.btn{
  min-height:48px !important;
  padding:12px 22px !important;
  border:1px solid rgba(216,182,106,.48) !important;
  background:#070603 !important;
  color:#ead8ad !important;
  font-size:15px !important;
}

.btn:hover{
  border-color:#D8B66A !important;
  color:#fff3ce !important;
  background:#100d07 !important;
}

.btn.primary{
  border-color:#D8B66A !important;
  background:#D8B66A !important;
  color:#090806 !important;
}

section{
  padding:82px 0 !important;
  border-bottom:1px solid rgba(216,182,106,.16) !important;
}

.section-label{
  color:#D8B66A !important;
  font-size:13px !important;
  letter-spacing:.18em !important;
  margin-bottom:10px !important;
}

h1,h3{color:#f6ecd4 !important}

h2{color:var(--body-gold) !important}

h2{
  margin:0 0 24px !important;
  font-size:clamp(34px,4vw,50px) !important;
  line-height:1.35 !important;
}

.lead{
  max-width:820px !important;
  color:#e1d4b8 !important;
  font-size:18px !important;
  line-height:1.95 !important;
}

.about-grid{gap:58px !important}

.about-symbol{
  border:1px solid rgba(216,182,106,.28) !important;
  background:#070603 !important;
}

.about-copy p{
  color:#eadfca !important;
  font-size:18px !important;
  line-height:2 !important;
}

.relation-note{
  border:1px solid rgba(216,182,106,.28) !important;
  border-left:3px solid #D8B66A !important;
  background:rgba(216,182,106,.035) !important;
}

.relation-note strong{
  color:#f0d28a !important;
  font-size:16px !important;
}

.relation-note span{
  color:#d8c9a7 !important;
  font-size:15px !important;
  line-height:1.85 !important;
}

.works,
.label-catalog{
  background:#070603 !important;
  background-image:none !important;
}

.catalog-index{
  margin-top:40px !important;
  border-top:1px solid rgba(216,182,106,.34) !important;
  border-bottom:1px solid rgba(216,182,106,.20) !important;
}

.catalog-entry{min-height:350px !important}

.catalog-number{
  border-right:1px solid rgba(216,182,106,.18) !important;
  color:#b99b59 !important;
}

.catalog-number-label{
  color:#9e854e !important;
  font-size:12px !important;
}

.catalog-number strong{
  color:#D8B66A !important;
}

.catalog-heading{
  border-bottom:1px solid rgba(216,182,106,.16) !important;
}

.catalog-kicker{
  color:#bda76e !important;
  font-size:12px !important;
}

.catalog-heading h3{
  color:#f6ecd4 !important;
}

.catalog-description{
  color:#e4d8bd !important;
  font-size:18px !important;
  line-height:2 !important;
}

.catalog-links a{
  color:#ead8ad !important;
  font-size:15px !important;
  border-bottom:1px solid rgba(216,182,106,.50) !important;
}

.catalog-links a:hover{
  color:#fff3ce !important;
  border-color:#D8B66A !important;
}

.catalog-links a span{color:#bda76e !important}

.catalog-note{
  border-bottom:1px solid rgba(216,182,106,.14) !important;
}

.catalog-note span{
  border-right:1px solid rgba(216,182,106,.16) !important;
  color:#9e854e !important;
  font-size:12px !important;
}

.catalog-note p{
  color:#cdbd98 !important;
  font-size:14px !important;
  line-height:1.85 !important;
}

.news-list{border-top:1px solid rgba(216,182,106,.28) !important}

.news-row{border-bottom:1px solid rgba(216,182,106,.14) !important}

.news-date{
  color:#bda76e !important;
  font-size:14px !important;
}

.news-text{
  color:#eadfca !important;
  font-size:17px !important;
  line-height:1.85 !important;
}

.contact-card{
  border:1px solid rgba(216,182,106,.28) !important;
  background:#080704 !important;
  padding:32px !important;
}

.contact-card p{
  color:#eadfca !important;
  font-size:17px !important;
  line-height:1.9 !important;
}

.contact-note{
  color:#c9b991 !important;
  font-size:15px !important;
  line-height:1.85 !important;
}

footer{
  background:#030303 !important;
  border-top:1px solid rgba(216,182,106,.12);
}

.footer-title{
  color:#D8B66A !important;
  font-size:21px !important;
}

.footer-copy{
  color:#cdbd98 !important;
  font-size:14px !important;
  line-height:1.9 !important;
}

.footer-group-title{
  color:#D8B66A !important;
  font-size:12px !important;
}

.footer-links a{
  color:#d9c9a7 !important;
  font-size:14px !important;
}

.footer-links a:hover{color:#f5d98f !important}

.footer-bottom{
  border-top:1px solid rgba(216,182,106,.12) !important;
  color:#9d8a64 !important;
  font-size:12px !important;
}

@media (max-width:840px){
.hero{
    min-height:78vh !important;
  }

.hero-inner{
    padding:30px 0 28px !important;
  }

.hero-logo{
    width:100vw !important;
    min-height:56vh !important;
    padding:12px 22px 6px !important;
    margin-bottom:16px !important;
  }

.hero-logo img{
    width:min(100%, 1200px) !important;
    max-height:54vh !important;
  }

.hero-copy{
    width:calc(100% - 34px);
    font-size:18px !important;
  }
}

@media (max-width:560px){
body{font-size:16px}

section{padding:62px 0 !important}

.header-inner{min-height:48px !important}

.brand-link{font-size:14px !important}

.hero{
    min-height:74vh !important;
  }

.hero-inner{
    padding:22px 0 24px !important;
  }

.hero-logo{
    width:100vw !important;
    min-height:44vh !important;
    padding:8px 14px 2px !important;
    margin-bottom:10px !important;
  }

.hero-logo img{
    width:min(100%, 980px) !important;
    max-height:42vh !important;
  }

.hero-copy{
    font-size:16px !important;
    line-height:1.9 !important;
  }

.lead,
  .about-copy p,
  .catalog-description,
  .news-text,
  .contact-card p{
    font-size:16px !important;
  }

.catalog-links a,
  .footer-links a{
    font-size:14px !important;
  }
}

.hero{
  min-height:auto !important;
  display:block !important;
  background:#050505 !important;
}

.hero-inner{
  width:min(1920px,100vw) !important;
  padding:6px 0 26px !important;
  text-align:center !important;
}

.hero-logo{
  width:min(1820px,100vw) !important;
  min-height:auto !important;
  display:block !important;
  margin:0 auto 10px !important;
  padding:0 !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}

.hero-logo img{
  display:block !important;
  width:min(1820px,100vw) !important;
  max-width:100% !important;
  max-height:none !important;
  height:auto !important;
  object-fit:contain !important;
  transform:none !important;
  margin:0 auto !important;
  border:0 !important;
}

.hero-copy{
  max-width:980px !important;
  margin:0 auto !important;
}

.hero-actions{
  margin-top:20px !important;
}

@media (max-width:840px){
.hero{
    min-height:auto !important;
  }

.hero-inner{
    padding:4px 0 22px !important;
  }

.hero-logo{
    width:100vw !important;
    margin:0 auto 8px !important;
  }

.hero-logo img{
    width:100vw !important;
  }
}

@media (max-width:560px){
.hero{
    min-height:auto !important;
  }

.hero-inner{
    padding:2px 0 18px !important;
  }

.hero-logo{
    width:100vw !important;
    margin:0 auto 8px !important;
  }

.hero-logo img{
    width:100vw !important;
  }

.hero-copy{
    width:calc(100% - 28px) !important;
  }
}

.hero-inner{
  padding:0 0 18px !important;
}

.hero-logo{
  margin:-150px auto -86px !important;
}

.hero-logo img{
  display:block !important;
}

.hero-copy{
  margin:0 auto !important;
}

.hero-actions{
  margin-top:18px !important;
}

@media (max-width:1200px){
.hero-logo{
    margin:-100px auto -56px !important;
  }
}

@media (max-width:840px){
.hero-inner{
    padding:0 0 18px !important;
  }

.hero-logo{
    margin:-54px auto -22px !important;
  }
}

@media (max-width:560px){
.hero-inner{
    padding:0 0 14px !important;
  }

.hero-logo{
    margin:0px auto -10px !important;
  }
}

body{
  font-size:18px !important;
  line-height:2 !important;
}

.brand-link{
  font-size:18px !important;
  line-height:1.2 !important;
}

nav a{
  font-size:17px !important;
  line-height:1.35 !important;
  letter-spacing:.08em !important;
}

.hero-copy{
  font-size:clamp(19px,2.15vw,26px) !important;
  line-height:2.02 !important;
  max-width:920px !important;
}

.btn{
  font-size:16px !important;
  line-height:1.4 !important;
}

.section-label{
  font-size:clamp(18px,1.5vw,22px) !important;
  line-height:1.45 !important;
}

h2{
  font-size:clamp(40px,5.2vw,62px) !important;
  line-height:1.3 !important;
}

.lead{
  font-size:clamp(18px,1.55vw,22px) !important;
  line-height:1.95 !important;
  max-width:860px !important;
}

.about-copy p{
  font-size:clamp(18px,1.45vw,24px) !important;
  line-height:2.05 !important;
}

.relation-note strong{
  font-size:clamp(18px,1.5vw,22px) !important;
}

.relation-note span{
  font-size:clamp(16px,1.35vw,20px) !important;
  line-height:1.95 !important;
}

.catalog-number-label,
.catalog-kicker{
  font-size:14px !important;
}

.catalog-number strong{
  font-size:54px !important;
}

.catalog-heading h3{
  font-size:clamp(34px,4.2vw,50px) !important;
  line-height:1.3 !important;
}

.catalog-description{
  font-size:clamp(18px,1.45vw,24px) !important;
  line-height:2.05 !important;
}

.catalog-links a{
  font-size:16px !important;
}

.catalog-note span{
  font-size:14px !important;
}

.catalog-note p{
  font-size:16px !important;
  line-height:1.9 !important;
}

.news-date{
  font-size:16px !important;
}

.news-text{
  font-size:clamp(16px,1.35vw,20px) !important;
  line-height:1.95 !important;
}

.contact-card p{
  font-size:clamp(17px,1.4vw,21px) !important;
  line-height:1.95 !important;
}

.contact-note{
  font-size:15px !important;
  line-height:1.9 !important;
}

.footer-title{
  font-size:22px !important;
}

.footer-copy{
  font-size:16px !important;
  line-height:1.95 !important;
}

.footer-group-title{
  font-size:17px !important;
  letter-spacing:.16em !important;
}

.footer-links a{
  font-size:16px !important;
  line-height:1.9 !important;
}

.footer-bottom{
  font-size:15px !important;
  line-height:1.8 !important;
}

@media (max-width:860px){
nav a{font-size:15px !important;}

.hero-copy{font-size:19px !important;}

.section-label{font-size:17px !important;}

.lead{font-size:17px !important;}

.about-copy p,
  .catalog-description{font-size:17px !important;}
}

@media (max-width:560px){
body{font-size:16px !important;}

.brand-link{font-size:16px !important;}

.hero-copy{font-size:18px !important;}

.section-label{font-size:16px !important;}

h2{font-size:clamp(34px,9vw,42px) !important;}

.lead{font-size:16px !important;}

.about-copy p,
  .catalog-description,
  .news-text,
  .contact-card p{font-size:16px !important;}

.catalog-heading h3{font-size:30px !important;}

.catalog-meta dd,
  .catalog-links a,
  .footer-copy,
  .footer-links a{font-size:15px !important;}

.footer-group-title{font-size:16px !important;}
}

.hero{
  position:relative !important;
  isolation:isolate !important;
  background:#000000 !important;
}

.hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:340px;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,0) 24%,
    rgba(5,5,5,.10) 42%,
    rgba(5,5,5,.28) 58%,
    rgba(5,5,5,.52) 72%,
    rgba(5,5,5,.78) 86%,
    #050505 100%
  );
}

.hero-inner{
  position:relative !important;
  z-index:1 !important;
  background:transparent !important;
}

.hero-logo,
.hero-copy,
.hero-actions{
  position:relative !important;
  z-index:1 !important;
}

.hero-logo::after{
  content:none !important;
}

.hero-logo img{
  -webkit-mask-image:none !important;
  mask-image:none !important;
  opacity:1 !important;
}

.hero + section{
  background-color:#050505 !important;
}

@media (max-width:840px){
.hero::after{height:260px;}
}

@media (max-width:560px){
.hero::after{height:210px;}
}

:root{
  --body-gold:#e4c987;
  --body-gold-soft:#cdb47c;
  --body-gold-muted:#b59a63;
}

section h2{
  color:var(--body-gold) !important;
}

.hero-copy,
.lead,
.about-copy p,
.catalog-description,
.catalog-meta dd,
.catalog-note p,
.news-text,
.contact-card p{
  color:var(--body-gold) !important;
}

.relation-note span,
.contact-note,
.footer-copy{
  color:var(--body-gold-soft) !important;
}

.news-date,
.catalog-meta dt,
.catalog-note span{
  color:var(--body-gold-muted) !important;
}

.relation-note .relation-main strong{
  display:block;
  margin:0;
  font-size:16px !important;
  line-height:1.85 !important;
  color:#e1c77f !important;
}

.relation-note .relation-main strong + strong{
  margin-top:2px;
}

.relation-note .relation-sub{
  margin:11px 0 0 !important;
  padding-top:11px;
  border-top:1px solid rgba(216,182,106,.14);
  font-size:14px !important;
  line-height:1.9 !important;
  color:#bda76e !important;
}

.label-catalog .lead{
  color:#e1d4b8 !important;
}

.label-catalog .catalog-heading h3{
  color:#f6ecd4 !important;
}

.label-catalog .catalog-description{
  color:#e4d8bd !important;
}

.label-catalog .catalog-links a{
  color:#ead8ad !important;
}

.label-catalog .catalog-note p{
  color:#cdbd98 !important;
}

.label-catalog .catalog-number-label,
.label-catalog .catalog-kicker,
.label-catalog .catalog-meta dt,
.label-catalog .catalog-note span{
  color:#bda76e !important;
}

.label-catalog .catalog-number strong{
  color:#D8B66A !important;
}

@media (max-width:560px){
.relation-note .relation-main strong{
    font-size:15px !important;
  }

.relation-note .relation-sub{
    font-size:13px !important;
  }
}

#about .about-grid{
  align-items:center;
}

#about .relation-note-wide{
  width:100%;
  max-width:none;
  margin:26px 0 0 !important;
}

@media (max-width:840px){
#about .relation-note-wide{
    margin-top:22px !important;
  }
}

#about .about-symbol{
  margin-top:42px !important;
}

#about .relation-note-wide{
  padding:18px 22px 16px !important;
}

#about .relation-note .relation-main{
  white-space:nowrap;
}

#about .relation-note .relation-main strong{
  display:inline !important;
  font-size:18px !important;
  line-height:1.7 !important;
  color:#e1c77f !important;
}

#about .relation-note .relation-main strong + strong{
  margin-top:0 !important;
}

#about .relation-note .relation-sub{
  margin:10px 0 0 !important;
  padding-top:10px !important;
  font-size:13px !important;
  line-height:1.85 !important;
}

@media (max-width: 1100px){
#about .relation-note .relation-main{
    white-space:normal;
  }
}

@media (max-width: 840px){
#about .about-symbol{
    margin-top:18px !important;
  }

#about .relation-note .relation-main strong{
    font-size:16px !important;
  }

#about .relation-note .relation-sub{
    font-size:12.5px !important;
  }
}

#about .about-symbol{
  margin-top:77px !important;
}

#about .relation-note .relation-sub{
  font-size:15.5px !important;
  line-height:1.95 !important;
  color:#c9ae72 !important;
}

@media (max-width: 840px){
#about .about-symbol{
    margin-top:24px !important;
  }

#about .relation-note .relation-sub{
    font-size:14px !important;
    line-height:1.9 !important;
  }
}

#about .about-symbol{
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
}

#about .about-symbol img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  mix-blend-mode:screen;
}

.label-catalog .catalog-heading h3{
  color:#f2eee6 !important;
}

.label-catalog .catalog-description{
  color:#e6e2db !important;
}

.label-catalog .catalog-links a,
.label-catalog .catalog-links a span{
  color:#f0ece4 !important;
  border-color:rgba(240,236,228,.44) !important;
}

.label-catalog .catalog-links a:hover,
.label-catalog .catalog-links a:hover span{
  color:#ffffff !important;
  border-color:#ffffff !important;
}


/* =========================================================
   ★ Nocrel HERO 最終調整 / ここだけ触ればOK
   ---------------------------------------------------------
   ロゴ位置はこの4組だけで調整できます。
   ・数字を0に近づけるほどロゴは下へ
   ・よりマイナスにするとロゴは上へ
   ・bottom側は、ロゴ下の説明文との距離を調整
   ========================================================= */
:root{
  --hero-logo-top: -100px;
  --hero-logo-bottom: -136px;

  --hero-logo-top-1200: -80px;
  --hero-logo-bottom-1200: -76px;

  --hero-logo-top-840: -40px;
  --hero-logo-bottom-840: -36px;

  --hero-logo-top-560: 0px;
  --hero-logo-bottom-560: -10px;
}

.hero-logo{
  margin:var(--hero-logo-top) auto var(--hero-logo-bottom) !important;
}

/* 作品 / X ボタン下の追加文言 */
.hero-note{
  max-width:920px;
  margin:18px auto 0;
  color:var(--body-gold-soft);
  font-size:16px;
  line-height:1.9;
  text-align:center;
}

/* 文言未入力時は余白も出さない */
.hero-note:empty{
  display:none;
}

@media (max-width:1200px){
  .hero-logo{
    margin:var(--hero-logo-top-1200) auto var(--hero-logo-bottom-1200) !important;
  }
}

@media (max-width:840px){
  .hero-logo{
    margin:var(--hero-logo-top-840) auto var(--hero-logo-bottom-840) !important;
  }

  .hero-note{
    width:calc(100% - 34px);
    font-size:15px;
  }
}

@media (max-width:560px){
  .hero-logo{
    margin:var(--hero-logo-top-560) auto var(--hero-logo-bottom-560) !important;
  }

  .hero-note{
    width:calc(100% - 28px);
    margin-top:14px;
    font-size:14px;
  }
}

.hero-copy{
  margin-top: 110px !important;
}
