:root {
  --momo: #D98C93;
  --momo-deep: #A85C63;
  --sumi: #4A3438;
  --washi: #FAF6F2;
  --line: #E8DAD5;
  --gray: #8C7A76;
  --serif: "Noto Serif JP", "Yu Mincho", "YuMincho", serif;
  --roman: "Cormorant Garamond", Georgia, serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--washi); }
body {
  margin: 0;
  background: var(--washi);
  color: var(--sumi);
  font-family: var(--serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.95;
  letter-spacing: .045em;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }
::selection { color: var(--washi); background: var(--momo-deep); }

.container { width: min(1040px, calc(100% - 96px)); margin-inline: auto; }
.narrow { max-width: 650px; }
.wordmark { font-family: var(--roman); font-weight: 500; letter-spacing: .3em; line-height: 1; }

.site-header { position: fixed; inset: 0 0 auto; z-index: 50; height: 82px; background: var(--washi); border-bottom: 1px solid var(--line); }
.header-inner { width: min(1200px, calc(100% - 64px)); height: 100%; margin: auto; display: flex; align-items: center; justify-content: space-between; }
.header-logo { padding-left: .3em; color: var(--sumi); font-size: 21px; }
.global-nav { display: flex; gap: 38px; }
.global-nav a { font-size: 13px; letter-spacing: .12em; transition: color .2s ease; }
.global-nav a:hover, .global-nav a:focus-visible { color: var(--momo-deep); }
.menu-button { display: none; }

main { min-height: 70vh; }
.hero {
  min-height: 100svh;
  padding-top: 82px;
  background: var(--washi);
  border-bottom: 1px solid var(--line);
}
.hero-inner {
  min-height: calc(100svh - 82px);
  display: grid;
  place-items: center;
  text-align: center;
}
.wordmark-hero {
  margin: 0;
  padding-left: .3em;
  color: var(--sumi);
  font-size: clamp(56px, 6vw, 82px);
  letter-spacing: .3em;
  white-space: nowrap;
}

.section { padding: 116px 0; }
.ruled { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.eyebrow { margin: 0 0 28px; color: var(--momo-deep); font-size: 12px; font-weight: 500; letter-spacing: .18em; }
h1, h2, h3, p { overflow-wrap: anywhere; }
h1, h2, h3 { font-weight: 500; }
h2 { margin: 0 0 38px; font-size: clamp(24px, 2.7vw, 32px); line-height: 1.8; letter-spacing: .07em; }
.prose { max-width: 32em; }
.prose p { margin: 0 0 28px; }
.text-link { display: inline-block; margin-top: 26px; padding-bottom: 2px; color: var(--momo-deep); border-bottom: 1px solid var(--momo); font-size: 14px; transition: color .2s ease; }
.text-link span { margin-left: 10px; }
.text-link:hover, .text-link:focus-visible { color: var(--sumi); }
.editorial-grid { max-width: 650px; }
.editorial-content { width: 100%; }
.product-preview { max-width: 650px; }
.section-body { margin-top: 48px; }
.simple-list { margin: 46px 0 0; }
.simple-list > div { display: grid; grid-template-columns: 1fr auto; gap: 28px; padding: 19px 0; border-top: 1px solid var(--line); }
.simple-list > div:last-child { border-bottom: 1px solid var(--line); }
.simple-list dt, .simple-list dd { margin: 0; }
.simple-list dd { color: var(--gray); font-size: 14px; white-space: nowrap; }
.culture-statement h2 { max-width: 22em; }
.culture-statement > p:not(.eyebrow) { margin: 0; }
.reservation-cta { padding: 94px 0; text-align: center; border-top: 1px solid var(--line); }
.reservation-cta p { margin: 0 0 36px; font-size: clamp(19px, 2vw, 24px); }
.button { display: inline-flex; min-width: 240px; min-height: 56px; align-items: center; justify-content: center; padding: 13px 30px; color: var(--washi); background: var(--sumi); border: 1px solid var(--sumi); border-radius: 0; font-size: 14px; letter-spacing: .13em; transition: background-color .2s ease, border-color .2s ease; }
.button:hover, .button:focus-visible { background: var(--momo-deep); border-color: var(--momo-deep); }

.page-hero { padding: 184px 0 100px; border-bottom: 1px solid var(--line); }
.page-title { margin: 0; font-size: clamp(32px, 4vw, 46px); line-height: 1.65; letter-spacing: .08em; }
.page-lead { margin: 42px 0 0; max-width: 32em; font-size: 16px; }
.content-section { padding: 106px 0; }
.content-section + .content-section { border-top: 1px solid var(--line); }
.product-item { max-width: 700px; margin-inline: auto; padding: 94px 0; border-top: 1px solid var(--line); }
.product-item:first-child { border-top: 0; }
.product-placeholder { display: none; }
.product-copy h2 { margin-bottom: 13px; font-size: clamp(23px, 2.6vw, 30px); }
.product-copy > p:last-child { max-width: 32em; margin-bottom: 0; }
.price { margin: 0 0 32px; color: var(--gray); font-size: 14px; font-variant-numeric: tabular-nums; }
.spec-list { max-width: 700px; margin: 0; }
.spec-list > div { display: grid; grid-template-columns: 145px 1fr; padding: 19px 0; border-top: 1px solid var(--line); }
.spec-list > div:last-child { border-bottom: 1px solid var(--line); }
.spec-list dt, .spec-list dd { margin: 0; }
.spec-list dt { color: var(--gray); }
.impossible { border-left: 1px solid var(--momo); padding-left: 46px; }
.story-beat { max-width: 650px; }
.story-beat p { margin: 0 0 30px; }
.story-beat.emphasis { font-size: clamp(17px, 1.7vw, 20px); line-height: 2.1; }
.annual-report { margin-top: 68px; display: flex; justify-content: space-between; gap: 30px; padding: 24px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.annual-report span:last-child { color: var(--gray); }
.order-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.order-table th, .order-table td { padding: 19px 0; text-align: left; border-top: 1px solid var(--line); font-weight: 400; }
.order-table tr:last-child th, .order-table tr:last-child td { border-bottom: 1px solid var(--line); }
.order-table .num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.notice { max-width: 650px; margin: 62px 0 0; padding-top: 40px; border-top: 1px solid var(--line); }
.notice h2 { margin-bottom: 24px; font-size: 21px; }
.notice p { margin: 0; }
.schedule { margin-top: 34px; }
.schedule > div { display: grid; grid-template-columns: 170px 1fr; padding: 9px 0; }
.schedule dt, .schedule dd { margin: 0; }
.schedule dt { color: var(--gray); }
.checkout { text-align: center; }
.checkout-note { margin: 0 0 20px; color: var(--gray); font-size: 13px; }
.button[aria-disabled="true"] { cursor: not-allowed; background: var(--gray); border-color: var(--gray); }
.pending-note { margin: 14px 0 0; color: var(--momo-deep); font-size: 12px; }
.fine-print { margin: 50px 0 0; padding: 0; list-style: none; color: var(--gray); font-size: 14px; text-align: left; }
.fine-print li { margin: 8px 0; }
.fine-print .text-link { margin: 0 0 0 8px; }
.legal-list { margin: 0; }
.legal-list > div { display: grid; grid-template-columns: 215px 1fr; gap: 38px; padding: 24px 0; border-top: 1px solid var(--line); }
.legal-list > div:last-child { border-bottom: 1px solid var(--line); }
.legal-list dt, .legal-list dd { margin: 0; }
.legal-list dt { color: var(--gray); }
.legal-pending { color: var(--momo-deep); }

.site-footer { padding: 70px 0 46px; border-top: 1px solid var(--line); }
.footer-inner { display: flex; justify-content: space-between; gap: 48px; }
.footer-logo { align-self: flex-start; padding-left: .3em; font-size: 21px; }
.footer-right { text-align: right; }
.footer-right nav { display: flex; gap: 26px; margin-bottom: 32px; font-size: 12px; }
.footer-right a:hover, .footer-right a:focus-visible { color: var(--momo-deep); }
.footer-right small { color: var(--gray); font-family: var(--roman); letter-spacing: .1em; }
.reveal { opacity: 1; transform: none; }
.sp-only { display: none; }

@media (max-width: 768px) {
  body { font-size: 15px; }
  body.menu-open { overflow: hidden; }
  .container { width: calc(100% - 48px); }
  .site-header { height: 68px; }
  .header-inner { width: calc(100% - 40px); }
  .header-logo { font-size: 18px; }
  .menu-button { position: relative; z-index: 2; display: block; width: 38px; height: 38px; padding: 0; color: var(--sumi); background: transparent; border: 0; }
  .menu-button span { position: absolute; left: 7px; width: 24px; height: 1px; background: currentColor; transition: transform .2s ease, top .2s ease; }
  .menu-button span:first-child { top: 14px; }
  .menu-button span:last-child { top: 23px; }
  .menu-button.is-open span:first-child { top: 19px; transform: rotate(45deg); }
  .menu-button.is-open span:last-child { top: 19px; transform: rotate(-45deg); }
  .global-nav { position: fixed; inset: 0; display: flex; flex-direction: column; justify-content: center; gap: 32px; background: var(--washi); opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease; }
  .global-nav.is-open { opacity: 1; visibility: visible; }
  .global-nav a { font-size: 17px; }
  .hero { min-height: 100svh; padding-top: 68px; }
  .hero-inner { min-height: calc(100svh - 68px); }
  .wordmark-hero { font-size: clamp(43px, 12vw, 54px); letter-spacing: .24em; }
  .section { padding: 80px 0; }
  h2 { margin-bottom: 32px; font-size: 24px; }
  .section-body { margin-top: 40px; }
  .simple-list > div { display: block; padding: 17px 0; }
  .simple-list dd { margin-top: 3px; }
  .reservation-cta { padding: 76px 0; }
  .reservation-cta p { font-size: 19px; }
  .button { width: 100%; min-width: 0; }
  .page-hero { padding: 140px 0 76px; }
  .page-title { font-size: 33px; }
  .page-lead { margin-top: 36px; }
  .content-section { padding: 78px 0; }
  .product-item { padding: 76px 0; }
  .product-copy h2 { font-size: 23px; }
  .spec-list > div { grid-template-columns: 105px 1fr; gap: 14px; }
  .impossible { padding-left: 22px; }
  .annual-report { flex-direction: column; gap: 6px; }
  .order-table { font-size: 13px; }
  .order-table th, .order-table td { padding: 16px 0; }
  .notice { margin-top: 52px; padding-top: 32px; }
  .schedule > div { grid-template-columns: 1fr; padding: 8px 0; }
  .legal-list > div { grid-template-columns: 1fr; gap: 6px; padding: 21px 0; }
  .site-footer { padding: 60px 0 40px; }
  .footer-inner { display: block; }
  .footer-right { margin-top: 48px; text-align: left; }
  .footer-right nav { flex-direction: column; gap: 8px; margin-bottom: 30px; }
  .sp-only { display: initial; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition-duration: .01ms !important; }
}

body:has(.kc)>.site-header,body:has(.kc)>.site-footer{display:none}html:has(.kc){scroll-padding-top:100px}.kc{--ink:#262823;--paper:#fcfbf8;--accent:#d3a2a1;background:var(--paper);color:var(--ink);font-size:16px;letter-spacing:.045em}.kc img{display:block;width:100%;height:auto}.kc a:focus-visible{outline:2px solid #a55e6c;outline-offset:6px}.kc-wrap{width:min(1320px,88%);margin:auto}.kc-label{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.19em;line-height:1.7}.kc-header{height:108px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #deded6;background:var(--paper)}.kc-brand{display:flex;align-items:center;gap:17px}.kc-brand img{width:58px;height:58px;object-fit:contain}.kc-brand>span{font-family:Arial,sans-serif;font-size:27px;letter-spacing:.25em;line-height:1.3}.kc-brand small{display:block;font-size:8px;letter-spacing:.18em;margin-top:7px}.kc-header nav{display:flex;align-items:center;gap:30px;font-size:14px}.kc-shop{margin-left:15px;border-bottom:1px solid #54554b;padding:10px 0}.kc-shop span{margin-left:22px}.kc-hero{display:grid;grid-template-columns:1fr 1fr;min-height:700px;height:calc(100svh - 108px);max-height:980px}.kc-hero-copy{padding:60px 10% 27px 12%;display:flex;flex-direction:column}.kc-hero h1{font-size:clamp(35px,3.7vw,62px);line-height:1.65;letter-spacing:.1em;margin:auto 0 23px;font-weight:400}.kc-hero-desc{line-height:2.2;margin:0 0 28px}.kc-link{display:inline-flex;justify-content:space-between;gap:55px;align-items:center;border-bottom:1px solid #a5a69c;padding:15px 0;font-size:14px;width:fit-content}.kc-hero-bottom{display:flex;justify-content:space-between;gap:15px;margin-top:auto;padding-top:50px;font-size:11px;color:#75766d}.kc-hero-bottom span:last-child{font-family:Arial,sans-serif;letter-spacing:.14em}.kc-hero-photo{position:relative;overflow:hidden;background:#2b2723}.kc-hero-photo>img{height:100%;object-fit:cover}.kc-photo-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(transparent,#0009);padding:70px 30px 25px;color:white;font-size:13px}.kc-photo-caption>span:first-child{font:10px Arial,sans-serif;letter-spacing:.17em}.kc-photo-caption a{margin-left:20px;font-size:23px}.kc-about{padding-top:145px;padding-bottom:150px;display:grid;grid-template-columns:1fr 2fr;gap:50px}.kc-section-index{font-size:13px;color:#777b70;margin-top:28px}.kc h2{font-weight:400;font-size:clamp(27px,3vw,43px);line-height:1.8;margin:15px 0 35px;letter-spacing:.07em}.kc-about-text{font-size:16px;line-height:2.25}.kc-about-text p+p{margin-top:28px}.kc-collection{background:#eeeee7;padding:100px 0}.kc-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.kc-section-head h2{margin-bottom:0}.kc-section-head>p{font-size:14px;line-height:2}.kc-section-head>p span{color:#717369}.kc-products{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.kc-product-image{aspect-ratio:4/5;position:relative;overflow:hidden}.kc-product-image img{height:100%;object-fit:cover;transition:transform .6s}.kc-product:hover img{transform:scale(1.035)}.kc-product-number{position:absolute;top:18px;left:20px;font:13px Arial,sans-serif;background:#fcfbf8dc;padding:3px 8px}.kc-product-arrow{position:absolute;bottom:18px;right:18px;background:#fcfbf8;width:39px;height:39px;display:grid;place-items:center;border-radius:50%}.kc-product-en{font:italic 23px var(--roman);margin:25px 0 10px}.kc-product h3{font-size:18px;margin:0 0 8px}.kc-product-note{font-size:14px;color:#66695f;margin:0}.kc-price{font-family:Arial,sans-serif;margin:15px 0}.kc-price small{font-family:var(--serif);margin-left:13px;font-size:12px;color:#6d7065}.kc-image-note{font-size:12px;color:#727469;margin:22px 0}.kc-collection-end{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #cccfc2;margin-top:35px;padding-top:25px;font-size:14px;line-height:2}.kc-roots{display:grid;grid-template-columns:1fr 1fr}.kc-roots-symbol{background:#dfb7b6;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:70px 40px}.kc-roots-symbol img{width:60%;max-width:300px;margin:40px 0}.kc-roots-symbol>span{font-size:14px;letter-spacing:.18em}.kc-roots-copy{background:#292d29;color:#f6f4ed;padding:95px 14%}.kc-roots-copy .kc-label{color:#c8b7a2}.kc-roots-copy p:not(.kc-label){font-size:15px;line-height:2.2;margin-bottom:24px}.kc-roots-copy .kc-link{color:#f4f1e9}.kc-gift{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-top:120px;padding-bottom:120px}.kc-gift-image{aspect-ratio:1;overflow:hidden}.kc-gift-image img{height:100%;object-fit:cover}.kc-gift p:not(.kc-label){line-height:2.2;font-size:15px}.kc-closing{text-align:center;padding:90px 6%;border-top:1px solid #d8dbcf;border-bottom:1px solid #d8dbcf}.kc-closing h2{margin:26px 0 35px}.kc-light-button{display:inline-flex;padding:18px 28px;background:var(--ink);color:white;gap:70px;font-size:14px}.kc-footer{padding-top:65px;padding-bottom:28px}.kc-footer-top{display:flex;justify-content:space-between;align-items:start;gap:25px;padding-bottom:65px}.kc-footer-top>p{font-size:14px}.kc-footer-top>div{display:grid;gap:12px;font-size:14px}.kc-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dddcd5;padding-top:25px;font-size:11px;color:#77796d}.kc-footer-bottom>div{display:flex;gap:20px}.kc-mobile{display:none}@media(min-width:1600px){.kc-hero-copy{padding-left:16%}}@media(max-width:1000px){.kc-header nav{gap:17px}.kc-header nav>a:first-child{display:none}.kc-hero{min-height:620px}.kc-hero-copy{padding:40px 8%}.kc-hero-bottom>span:first-child{display:none}.kc-photo-caption>span:first-child{display:none}.kc-about{gap:30px}.kc-roots-copy{padding:65px 10%}.kc-section-head{align-items:start;flex-direction:column}.kc-section-head>p{margin:0}.kc-product h3{font-size:16px}.kc-product-note{font-size:13px}.kc-footer-top>p{display:none}}@media(max-width:640px){.kc-header{height:86px;padding:0 6%}.kc-brand img{width:43px;height:43px}.kc-brand>span{font-size:21px}.kc-brand small{font-size:7px}.kc-header nav>a{display:none}.kc-header nav>.kc-shop{display:block;font-size:12px;margin:0}.kc-shop span{margin-left:8px}.kc-hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr}.kc-hero-copy{padding:35px 7% 32px}.kc-hero .kc-label{font-size:9px}.kc-hero h1{font-size:37px;margin:32px 0 20px}.kc-hero-desc{font-size:15px}.kc-hero-bottom{display:none}.kc-hero-photo{height:440px}.kc-hero-photo>img{object-position:center 56%}.kc-photo-caption{padding:40px 22px 20px}.kc-about{padding-top:75px;padding-bottom:80px;grid-template-columns:1fr;gap:15px}.kc-section-index{display:none}.kc h2{font-size:28px}.kc-about-text{font-size:15px}.kc-about-text br{display:none}.kc-collection{padding:65px 0}.kc-products{grid-template-columns:1fr;gap:36px}.kc-product-image{aspect-ratio:1}.kc-product h3{font-size:19px}.kc-product-note{font-size:14px}.kc-product-en{margin-top:18px}.kc-collection-end{align-items:start;flex-direction:column;gap:12px}.kc-roots{grid-template-columns:1fr}.kc-roots-symbol{padding:45px 30px}.kc-roots-symbol img{width:180px;margin:18px 0 25px}.kc-roots-copy{padding:60px 7%}.kc-gift{grid-template-columns:1fr;gap:35px;padding-top:70px;padding-bottom:70px}.kc-closing{padding:65px 6%}.kc-mobile{display:block}.kc-footer-top{flex-direction:column;gap:30px;padding-bottom:35px}.kc-footer-bottom{flex-direction:column;gap:14px}.kc-footer-bottom>div{flex-wrap:wrap;gap:12px}.kc-label{font-size:11px}}@media(prefers-reduced-motion:reduce){html:has(.kc){scroll-behavior:auto}.kc-product-image img{transition:none}}
.kc-header nav{gap:25px}.kc-header nav>a{font-family:var(--roman);font-size:21px;letter-spacing:.08em;text-align:center;line-height:1.4}.kc-header nav>a small{display:block;font-family:var(--serif);font-size:12px;letter-spacing:.03em;margin-top:4px}.kc-header nav>.kc-shop{background:var(--ink);color:white;padding:13px 22px;margin-left:0;border:0;font-size:18px;white-space:nowrap}.kc-shop span{margin-left:10px}.kc-business{padding-top:85px;padding-bottom:100px;border-top:1px solid #d8dbcf}.kc-business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.kc-business-grid article{border-top:1px solid #aaa99d;padding-top:25px}.kc-business-grid h3{font-size:23px}.kc-business-grid article>p:not(.kc-label){font-size:15px;line-height:2}.kc-line-note{font-size:14px;margin-top:28px}.kc-product h3{line-height:1.8;min-height:3.6em}@media(max-width:1150px){.kc-header{height:auto;min-height:108px;flex-wrap:wrap;gap:20px;padding-top:18px;padding-bottom:18px}.kc-header nav{flex:1;justify-content:flex-end;gap:18px}.kc-header nav>a:first-child{display:block}.kc-header nav>a{font-size:18px}.kc-header nav>a small{font-size:11px}}@media(max-width:800px){.kc-header{display:block}.kc-header nav{margin-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px 13px}.kc-header nav>a{display:block;font-size:18px;flex:1 0 25%}.kc-header nav>.kc-shop{display:block;font-size:18px;flex:1 0 25%;padding:9px 12px}.kc-business-grid{grid-template-columns:1fr}.kc-business{padding-top:60px;padding-bottom:65px}.kc-product h3{min-height:0}.kc-line-note{font-size:13px;line-height:2}}
.kc-culture{text-align:center;padding-top:85px;padding-bottom:75px}.kc-culture h2{font-size:30px;margin:18px 0 25px}.kc-culture>p:not(.kc-label){font-size:clamp(16px,1.6vw,21px);line-height:2.1}.kc-culture-rule{display:block;width:48px;height:2px;background:var(--accent);margin:38px auto 0}.kc-roots-copy{padding-top:75px;padding-bottom:75px}.kc-roots-copy p:not(.kc-label){font-size:16px}@media(max-width:640px){.kc-culture{padding-top:60px;padding-bottom:40px}.kc-desktop-break{display:none}.kc-roots-copy{padding-top:55px;padding-bottom:55px}}
.kc{font-family:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;line-height:1.9;letter-spacing:.025em}.kc h1,.kc h2,.kc h3{font-family:inherit;font-weight:500;letter-spacing:.055em}.kc-header nav>a small,.kc-price small{font-family:inherit}.kc-header nav>a small{font-size:14px;font-family:"Hiragino Sans","Yu Gothic",Meiryo,sans-serif}.kc-hero h1{font-weight:400}.kc-about{padding-top:95px;padding-bottom:95px}.kc-about-text,.kc-gift p:not(.kc-label),.kc-roots-copy p:not(.kc-label){font-size:16px;line-height:2}.kc-product-note,.kc-section-index{font-size:15px}.kc-about-heading{padding-top:70px;padding-bottom:60px}.kc-about-heading h1{font-size:clamp(28px,4vw,44px);margin:18px 0}.kc-about-footer{padding-bottom:60px}.kc-header nav{flex-wrap:wrap}.kc-header{height:auto;min-height:108px;padding-top:18px;padding-bottom:18px}.kc-about-text br{display:none}@media(max-width:640px){.kc-about{padding-top:55px;padding-bottom:55px}.kc-header nav>a small{font-size:13px}.kc-about-heading{padding-top:45px;padding-bottom:35px}.kc-hero-desc{font-size:16px}}
.kc-about{grid-template-columns:1fr 2fr;gap:50px;padding-top:65px;padding-bottom:65px;align-items:start}.kc-about>h2{font-size:22px;margin:0;line-height:2}.kc-about-text p{margin:0;line-height:2}.kc-about-text br{display:block}.kc-about-text .kc-link{margin-top:12px}.kc-collection-end{justify-content:flex-end}.kc-hero .kc-label{font-size:14px;letter-spacing:.08em}@media(max-width:640px){.kc-about{grid-template-columns:1fr;gap:20px;padding-top:40px;padding-bottom:40px}.kc-about-text br{display:none}}
.kc-hero-copy .kc-link{margin-top:12px;margin-bottom:auto}.kc-hero h1{margin-bottom:32px}.kc-collection{padding-top:90px}.kc-gift{border-bottom:1px solid #d8dbcf}@media(max-width:640px){.kc-hero-copy .kc-link{margin-bottom:12px}.kc-collection{padding-top:55px}}
.kc-hero-identity{margin:auto 0;text-align:center}.kc-hero-identity>img{width:140px;height:140px;object-fit:contain;margin:0 auto 28px}.kc-hero-identity h1{font-family:Arial,sans-serif;font-weight:400;font-size:clamp(54px,6vw,90px);letter-spacing:.22em;padding-left:.22em;line-height:1.2;margin:0}.kc-hero-identity>p{font:10px Arial,sans-serif;letter-spacing:.23em;margin-top:20px}.kc-hero-copy>.kc-label{margin-bottom:30px}.kc-hero-copy>.kc-link{align-self:center;margin:0 0 30px}.kc-home-story{padding-top:100px;padding-bottom:100px}.kc-home-story>h2,.kc-home-culture>h2{font-size:24px;margin:0 0 40px}.kc-home-story-copy{max-width:820px}.kc-home-story-copy p{font-size:16px;line-height:2.2;margin:0 0 26px}.kc-photo-studies{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:55px 0 70px}.kc-photo-studies>div{aspect-ratio:4/3;background:#eeeee9;display:grid;place-items:center;font:10px Arial,sans-serif;letter-spacing:.08em;color:#77796f;padding:15px;text-align:center}.kc-home-culture{border-top:1px solid #deded6;padding-top:45px}.kc-home-culture>h2{margin-bottom:22px}.kc-home-culture>p{font-size:16px;line-height:2}.kc-footer{border-top:1px solid #deded6}@media(max-width:640px){.kc-hero-identity{padding:28px 0 40px}.kc-hero-identity>img{width:100px;height:100px;margin-bottom:20px}.kc-hero-identity h1{font-size:57px}.kc-home-story{padding-top:55px;padding-bottom:55px}.kc-photo-studies{gap:10px;margin:35px 0 45px}.kc-photo-studies>div{font-size:9px;aspect-ratio:3/4;padding:8px;line-height:1.8}.kc-home-story>h2{margin-bottom:28px}}
/* White brand surfaces, with a soft peach-pink collection background. */
.kc{--paper:#fffefd;--accent:#cf9da5}.kc-header{border-bottom-color:#eee5e5}.kc-collection{background:#f7edef}.kc-product-number{background:#fffdfbf0}.kc-product-arrow{background:#fffefd}.kc-collection-end{border-top-color:#e4ced3}.kc-link{border-bottom-color:#c6a4ab}.kc-link:hover{color:#8d5664;border-bottom-color:#8d5664}.kc-gift{background:#fffefd}.kc-photo-studies>div{background:#f5f0f0;color:#776a6e}.kc-home-culture{border-top-color:#e8dadd}.kc-footer{border-top-color:#eee2e5}.kc-roots-symbol{background:#fffefd}.kc-roots-copy{background:#30292c}.kc-price small,.kc-image-note{color:#75666a}
.kc-footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 40px;font-size:14px}.kc-inner-heading{padding-top:65px;padding-bottom:55px}.kc-inner-heading h1{font-size:clamp(28px,3.4vw,44px);margin:18px 0 0}.kc-document{padding-bottom:90px;max-width:1000px}.kc-document .container,.kc-document .narrow,.kc-document .wrap{width:100%;max-width:none;margin:0;padding:0}.kc-document .section{padding:0}.kc-document h2{font-size:24px;margin:55px 0 24px}.kc-document h3{font-size:20px;margin:24px 0 15px}.kc-document p,.kc-document li{line-height:2;font-size:16px}.kc-document a:not(.button){color:#805460;text-decoration:underline;text-underline-offset:5px}.kc-document .button{background:#30292c;border-color:#30292c;color:white;font-family:inherit;letter-spacing:.03em}.kc-document table{width:100%;border-collapse:collapse;margin:25px 0;font-size:15px}.kc-document th,.kc-document td{padding:18px 12px;border-bottom:1px solid #e9dfe1;text-align:left;font-weight:400}.kc-document th{background:#f7edef}.kc-document .grid,.kc-document .features,.kc-document .cards{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.kc-document details{border-bottom:1px solid #e9dfe1;padding:20px 0}.kc-document summary{cursor:pointer;font-weight:500}.kc-document dl{margin:0}.kc-document .row{display:grid;grid-template-columns:200px 1fr;gap:25px;padding:24px 0;border-bottom:1px solid #e9dfe1}.kc-document dt{color:#75666a}.kc-document dd{margin:0}.kc-document .form{max-width:700px;margin:auto;padding:40px;background:#faf3f5}.kc-document label{display:block;margin:0 0 12px}.kc-document label small{display:block;font-size:14px;margin-top:8px}.kc-document .req{font-size:12px;color:#805460;margin-left:12px}.kc-document input:not([type=checkbox]):not([type=hidden]),.kc-document textarea{display:block;width:100%;font:inherit;background:white;border:1px solid #cab8bd;padding:14px;margin-bottom:28px;border-radius:0;color:#262823}.kc-document textarea{min-height:210px;resize:vertical}.kc-document input:focus-visible,.kc-document textarea:focus-visible,.kc-document button:focus-visible{outline:2px solid #8d5664;outline-offset:3px}.kc-document .hp{display:none}.kc-document .consent{display:flex;gap:12px;align-items:start;font-size:14px}.kc-document .consent input{margin-top:7px;width:18px;height:18px;flex-shrink:0}.kc-item-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-bottom:75px;margin-bottom:75px;border-bottom:1px solid #e9dfe1}.kc-item-detail>img{aspect-ratio:1;object-fit:cover}.kc-item-detail h2{font-size:clamp(24px,2.7vw,36px);line-height:1.6}.kc-item-detail .kc-price{font-size:22px;margin:25px 0}.kc-item-detail .kc-light-button{margin-top:16px}.kc-item-detail p{line-height:2}.kc-masu{background:#f7edef;padding:65px 0}.kc-masu h2{margin-top:12px}.kc-masu-grid,.kc-gift-services{display:grid;grid-template-columns:1fr 1fr;gap:50px}.kc-masu-grid article{padding:25px 0;border-top:1px solid #dfc9ce;margin:25px 0}.kc-masu-grid article>img{aspect-ratio:1;object-fit:cover;margin-bottom:22px}.kc-masu-grid .kc-product-en{line-height:1.5;height:1.5em}.kc-masu-grid h3{font-size:clamp(20px,2vw,26px);margin:6px 0 10px}.kc-masu-grid .kc-price{font-size:19px;margin:14px 0 18px}.kc-gift-services{padding-bottom:80px}.kc-gift-services h2{font-size:26px}.kc-about-heading+.kc-roots .kc-roots-copy{background:white;color:#262823}.kc-about-heading+.kc-roots .kc-roots-copy .kc-label{color:#805460}@media(max-width:700px){.kc-inner-heading{padding-top:40px;padding-bottom:35px}.kc-document{padding-bottom:55px}.kc-document .form{padding:24px 18px}.kc-document .row{grid-template-columns:1fr;gap:8px}.kc-document table{font-size:13px}.kc-document th,.kc-document td{padding:12px 5px;overflow-wrap:anywhere}.kc-document .grid,.kc-document .features,.kc-document .cards{grid-template-columns:1fr}.kc-item-detail{grid-template-columns:1fr;gap:25px;margin-bottom:40px;padding-bottom:40px}.kc-item-detail h2{font-size:25px}.kc-masu-grid,.kc-gift-services{grid-template-columns:1fr;gap:20px}.kc-footer-links{gap:12px 22px}.kc-document h2{margin-top:38px}.kc-gift-services{padding-bottom:45px}}
.kc-corporate-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center;padding-bottom:95px}.kc-corporate-intro figure{margin:0}.kc-corporate-intro img{aspect-ratio:1;object-fit:cover}.kc-corporate-intro figcaption{font-size:12px;color:#75666a;margin-top:12px}.kc-corporate-copy h2{font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.7;margin:0 0 35px}.kc-corporate-copy p{font-size:16px;line-height:2.1;margin:0 0 25px}.kc-corporate-copy .kc-light-button{margin-top:15px}.kc-corporate-service{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:60px;padding-bottom:65px;border-top:1px solid #e6e3df}.kc-corporate-service h2,.kc-corporate-contact h2{font-size:24px;margin:0 0 24px}.kc-corporate-service p,.kc-corporate-contact p{font-size:16px;line-height:2}.kc-corporate-contact{text-align:center;border-top:1px solid #e6e3df;padding-top:65px;padding-bottom:85px}.kc-corporate-contact .kc-light-button{margin-top:23px}@media(max-width:700px){.kc-corporate-intro{grid-template-columns:1fr;gap:35px;padding-bottom:45px}.kc-corporate-copy h2{font-size:29px;margin-bottom:25px}.kc-corporate-service{grid-template-columns:1fr;gap:40px;padding-top:40px;padding-bottom:45px}.kc-corporate-contact{padding-top:45px;padding-bottom:55px}.kc-corporate-intro br,.kc-corporate-service br,.kc-corporate-contact br{display:none}}
.kc-line-entry{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;padding-bottom:44px;margin-bottom:45px;border-bottom:1px solid #e6e3df}.kc-line-entry h2{font-size:20px;margin:0 0 8px}.kc-line-entry p{font-size:14px;margin:0;color:#655e60}.kc-line-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 34px;border:1px solid #06c755;background:#06c755;color:#fff;border-radius:6px;font-size:16px;font-weight:600;white-space:nowrap;transition:background .18s,border-color .18s}.kc-line-button:hover{background:#05b34c;border-color:#05b34c;color:#fff}.kc-line-button:focus-visible{outline:2px solid #087a36;outline-offset:4px}@media(max-width:640px){.kc-line-entry{gap:18px;padding-bottom:32px;margin-bottom:32px}.kc-line-button{min-height:48px;width:100%;max-width:320px}}
.kc-skip{position:fixed;left:16px;top:-90px;z-index:100;background:#fff;color:#262823;padding:14px 20px}.kc-skip:focus{top:12px}.kc-header{position:relative;gap:25px;flex-wrap:nowrap}.kc-navigation{display:flex;align-items:center;gap:26px}.kc-navigation>.kc-shop{order:2;display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;background:#262823;color:white;font-family:var(--roman);font-size:19px;letter-spacing:.1em;border:0;margin:0}.kc-header .kc-primary-nav{display:flex;gap:24px;margin:0;flex-wrap:nowrap}.kc-primary-nav>a[aria-current=page]{text-decoration:underline;text-underline-offset:8px;text-decoration-color:#b68e96}.kc-menu-toggle{display:none}.kc-line-button,.kc-light-button,.kc-link{min-height:48px}.kc-footer-links a{display:flex;align-items:center;min-height:36px}.kc-hero-photo img{aspect-ratio:1}.kc-hero-copy>.kc-label{font-size:14px}.kc-hero-identity>p,.kc-brand small{color:#514b4e}.kc-label{color:#63585c}.kc-photo-caption .kc-label{color:white}.kc-inner-heading{scroll-margin-top:90px}.kc-item-detail[id]{scroll-margin-top:30px}
@media(max-width:1100px){.kc-header{display:flex;min-height:84px;padding:12px 5%;gap:15px;flex-wrap:wrap}.kc-navigation{gap:12px;margin-left:auto}.kc-navigation>.kc-shop{padding:8px 14px;font-size:16px;min-height:44px;order:0}.kc-menu-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;font-family:inherit;font-size:14px;padding:10px 0 10px 8px;min-height:44px;color:#262823}.kc-header .kc-primary-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:40;padding:20px 6% 28px;background:#fffefd;border-bottom:1px solid #ddd5d7;box-shadow:0 15px 20px #26282308;margin:0;grid-template-columns:1fr 1fr;gap:0 25px}.kc-header .kc-primary-nav.is-open{display:grid}.kc-header .kc-primary-nav>a,.kc-header .kc-primary-nav>a:first-child{display:block;text-align:left;padding:15px 0;border-bottom:1px solid #ede7e8;flex:none;font-size:21px}.kc-header .kc-primary-nav>a small{font-size:14px}.kc-brand{gap:10px}.kc-brand>span{font-size:23px}.kc-brand img{width:45px;height:45px}}
@media(max-width:420px){.kc-header{padding:12px 4%;gap:8px}.kc-brand>span{font-size:18px;letter-spacing:.18em}.kc-brand small{font-size:7px}.kc-brand img{width:35px;height:35px}.kc-navigation{gap:6px}.kc-navigation>.kc-shop{padding:8px 10px;font-size:14px}.kc-menu-toggle{font-size:12px;gap:5px}.kc-menu-toggle span{font-size:18px}.kc-hero-copy{padding-top:24px}.kc-hero-identity{padding:12px 0 25px}.kc-hero-identity>img{width:85px;height:85px}.kc-hero-identity h1{font-size:49px}.kc-hero-photo{height:auto;aspect-ratio:1}.kc-hero-copy>.kc-link{margin-bottom:5px}.kc-photo-studies{grid-template-columns:1fr}.kc-photo-studies>div{aspect-ratio:2.5}}
.kc-breadcrumbs{display:flex;gap:12px;align-items:center;padding-top:22px;font-size:13px;flex-wrap:wrap;color:#655c60}.kc-breadcrumbs a{min-height:30px;display:flex;align-items:center}.kc-guide{max-width:850px;padding-bottom:70px}.kc-guide section{padding:35px 0;border-top:1px solid #e3dadd}.kc-guide h2{font-size:25px}.kc-guide p{font-size:16px;line-height:2}.kc-guide .kc-link{margin:18px 0;display:flex}.kc-guide details{border-top:1px solid #e3dadd;padding:18px 0}.kc-guide summary{cursor:pointer;min-height:35px}.kc-guide details a{text-decoration:underline;text-underline-offset:4px}
.kc-gift-context{padding-bottom:70px;max-width:850px}.kc-gift-context h2{font-size:24px}.kc-gift-context p{font-size:16px;line-height:2}.kc-item-category{padding-bottom:40px}.kc-item-category p{font-size:16px}.kc-item-category nav{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:22px}.kc-item-category nav a{font-size:14px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid #c6a4ab}.kc-item-category nav a:hover{color:#805460}
@media(max-width:350px){.kc-header{padding-inline:10px;gap:5px;flex-wrap:nowrap}.kc-brand{gap:7px}.kc-brand img{width:28px;height:28px}.kc-brand>span{font-size:16px;letter-spacing:.12em}.kc-brand small{font-size:6px;letter-spacing:.1em}.kc-navigation{gap:3px}.kc-navigation>.kc-shop{padding-inline:8px}.kc-menu-toggle{padding-left:5px;gap:3px;font-size:12px}}

.kc-document select{display:block;width:100%;min-height:52px;padding:12px 14px;border:1px solid #b5aaa9;border-radius:0;background:#fff;color:#262823;font:inherit;margin:10px 0 26px}.kc-document select:focus-visible{outline:2px solid #a55e6c;outline-offset:3px}
.kc-home-story-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(38px,4.5vw,78px);align-items:start}.kc-home-story-photo{margin:0}.kc-home-story-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.kc-home-story-photo figcaption{margin-top:14px;font-size:13px;line-height:1.9;letter-spacing:.06em;color:#75666a}.kc-home-story-text>h2{font-size:24px;margin:0 0 34px}.kc-home-story-grid .kc-home-story-copy{max-width:none}@media(max-width:900px){.kc-home-story-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:640px){.kc-home-story-text>h2{margin-bottom:24px}.kc-home-story-photo figcaption{font-size:12px;margin-top:11px}}
.kc-home-culture{display:block;text-align:center;padding-top:80px}.kc-home-culture>.kc-label{margin:0 0 18px}.kc-home-culture>h2{font-size:30px;margin:0 0 25px}.kc-home-culture>p{font-size:clamp(16px,1.6vw,21px);line-height:2.1;margin:0}.kc-home-culture>.kc-culture-rule{margin:38px auto 46px}.kc-home-culture-photo{margin:0 auto;max-width:880px}.kc-home-culture-photo img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}@media(max-width:640px){.kc-home-culture{padding-top:55px}.kc-home-culture>.kc-label{margin-bottom:14px}.kc-home-culture>h2{font-size:24px;margin-bottom:18px}.kc-home-culture>.kc-culture-rule{margin:30px auto 34px}}

@media(max-width:700px){.kc-home-masu .kc-gift-image{order:-1}}
@media(max-width:700px){.kc-footer-bottom{font-size:12px}.kc-footer-bottom small{font-size:12px}.kc-footer-bottom>div{gap:4px 20px}.kc-footer-bottom a{display:inline-block;padding:10px 0}}
.kc-guide p>a{color:#805460;text-decoration:underline;text-underline-offset:5px}
.kc-masu-spec span{display:inline-block;white-space:nowrap;margin-right:1.4em}
.kc-article{max-width:840px;padding-bottom:40px}.kc-article-head{padding:40px 0 34px}.kc-article-head h1{font-size:clamp(26px,3.2vw,40px);line-height:1.6;margin:16px 0 22px;font-weight:400}.kc-article-meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;color:#75666a}.kc-article-meta a{text-decoration:underline;text-underline-offset:4px}.kc-article-lead{font-size:17px;line-height:2.1;padding:26px 0 26px 22px;border-left:2px solid #c99aa6;margin:0 0 44px}.kc-article-figure{margin:0 0 56px}.kc-article-figure img{width:100%;height:auto;display:block}.kc-article-body h2{font-size:clamp(21px,2.2vw,26px);line-height:1.7;font-weight:400;margin:64px 0 24px;padding-top:30px;border-top:1px solid #e9dfe1}.kc-article-body p{font-size:16px;line-height:2.15;margin:0 0 26px}.kc-article-body a,.kc-article-sources a{color:#805460;text-decoration:underline;text-underline-offset:5px}.kc-article-sources{margin-top:72px;padding:34px 30px;background:#faf3f5}.kc-article-sources h2{font-size:16px;font-weight:500;margin:0 0 18px;letter-spacing:.08em}.kc-article-sources ul{list-style:none;margin:0;padding:0}.kc-article-sources li{padding:12px 0;border-top:1px solid #e9dfe1;font-size:14px;line-height:1.8}.kc-article-sources li span{display:block;font-size:12px;color:#75666a}.kc-article-sources>p{font-size:12px;color:#75666a;margin:18px 0 0;line-height:1.9}.kc-article-related{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:48px}.kc-article-related a{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;padding:24px 22px;border:1px solid #dfc9ce}.kc-article-related a:hover{background:#faf3f5}.kc-article-related span{grid-column:1/-1;font-size:11px;letter-spacing:.14em;color:#805460}.kc-article-related strong{font-weight:400;font-size:15px;line-height:1.8}.kc-article-back{padding:30px 0 90px;max-width:840px}.kc-journal-more{max-width:840px}.kc-journal-intro{padding-bottom:50px}.kc-journal-intro p{line-height:2.1}.kc-journal-index{padding-bottom:100px}.kc-journal-more{padding:60px 0 0}.kc-journal-more h2{font-size:20px;font-weight:400;margin:0 0 28px}.kc-journal-list{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 40px}.kc-journal-card{display:block}.kc-journal-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;margin-bottom:18px}.kc-journal-card time{font-size:12px;color:#75666a;letter-spacing:.06em}.kc-journal-card h3{font-size:18px;line-height:1.75;font-weight:400;margin:8px 0 10px}.kc-journal-card p{font-size:14px;line-height:1.95;color:#5c5054;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0}.kc-journal-card:hover h3{text-decoration:underline;text-underline-offset:6px}.kc-breadcrumbs a+span+a{white-space:nowrap}
@media(max-width:700px){.kc-article-head{padding:24px 0 26px}.kc-article-lead{font-size:16px;padding:18px 0 18px 16px;margin-bottom:32px}.kc-article-figure{margin-bottom:40px}.kc-article-body h2{margin:48px 0 20px;padding-top:24px}.kc-article-sources{padding:26px 20px;margin-top:52px}.kc-article-related{grid-template-columns:1fr}.kc-journal-list{grid-template-columns:1fr;gap:44px}.kc-article-back{padding-bottom:60px}.kc-journal-index{padding-bottom:70px}}
.kc-home-journal{padding-top:100px;padding-bottom:110px;border-top:1px solid #d8dbcf}.kc-home-journal .kc-section-head{margin-bottom:44px}.kc-article-figure img{aspect-ratio:3/2;object-fit:cover}
@media(max-width:700px){.kc-home-journal{padding-top:64px;padding-bottom:70px}}
.kc-winter-picks{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin:10px 0 26px}.kc-winter-picks article{padding:26px 0;border-top:1px solid #e3dadd}.kc-winter-picks h3{font-size:18px;font-weight:400;margin:4px 0 10px}.kc-winter-picks article p{font-size:15px;line-height:1.95;margin:0}.kc-winter-picks .kc-winter-price{font-size:21px;margin:0}.kc-winter-price small{font-size:12px;color:#75666a;margin-left:8px}.kc-winter-picks .kc-link{margin:14px 0 0}
@media(max-width:700px){.kc-winter-picks{grid-template-columns:1fr}}
.kc-item-detail .kc-light-button+.kc-link,.kc-item-detail .kc-link+.kc-link{display:flex;width:fit-content;margin-top:22px}
.kc-masu-textlink{color:#805460;text-decoration:underline;text-underline-offset:5px}
