:root{font-family:"Yu Gothic",Meiryo,sans-serif;color:#262721;background:#f7f5f0;font-synthesis:none;--ink:#262721;--muted:#77786f;--line:#dcd9d0;--red:#8e4938;--paper:#f7f5f0;--serif:"Yu Mincho",YuMincho,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:12px;top:-60px;padding:12px 16px;background:#fff;z-index:10}.skip-link:focus{top:12px}.site-header{height:96px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #26272119;position:relative;z-index:5;background:var(--paper)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;background:var(--red);color:#f7f5f0;display:grid;place-items:center;font:23px var(--serif)}.brand-name{font:600 15px var(--serif);letter-spacing:.08em}.brand-name small{display:block;font:9px sans-serif;letter-spacing:.2em;color:#85857c;margin-top:4px}.main-nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,38px);font-size:12px;letter-spacing:.04em}.main-nav a:hover,.text-link:hover,.arrow-link:hover{color:var(--red)}.nav-contact{padding:15px 22px;border:1px solid #a6a398}.menu-toggle{display:none}.hero{min-height:630px;padding:95px 10vw 70px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,#f7f5f0 0%,#f7f5f0 53%,#efede6 53%)}.hero-copy{position:relative;z-index:1;padding-bottom:20px}.eyebrow{font-size:10px;letter-spacing:.2em;color:var(--red);font-weight:600;margin:0 0 20px}.hero h1,.section h2,.craft-section h2,.about-section h2,.contact-band h2{font-family:var(--serif);font-weight:500;letter-spacing:.12em;line-height:1.75}.hero h1{font-size:clamp(35px,4.1vw,57px);margin:0 0 24px}.hero-lead{font-size:14px;line-height:2.15;color:#686961}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}.button{display:inline-flex;align-items:center;gap:35px;padding:17px 21px;font-size:12px}.button-dark{background:var(--ink);color:#fff}.button-dark span{font-size:17px}.text-link,.arrow-link{font-size:12px;letter-spacing:.05em}.hero-art{height:400px;position:relative;display:grid;place-items:center}.art-frame{height:350px;width:min(100%,450px);background:#e6e1d6;position:relative;overflow:hidden}.art-sun{width:175px;height:175px;border-radius:50%;background:#b58168;position:absolute;top:44px;right:64px}.art-fold{position:absolute;bottom:-65px;height:260px;width:210px;transform:skewY(-17deg) rotate(5deg);background:linear-gradient(90deg,#252b2b,#46504d 42%,#252b2b);box-shadow:22px 0 20px #1d252426}.fold-one{left:45px}.fold-two{left:155px;background:linear-gradient(90deg,#343332,#675c52 48%,#332f2a);bottom:-90px}.fold-three{left:255px;background:linear-gradient(90deg,#282e2c,#5b6560 48%,#242b29);bottom:-67px}.art-caption{position:absolute;z-index:2;right:20px;bottom:20px;color:#f7f5f0;font:12px var(--serif);letter-spacing:.2em;writing-mode:vertical-rl}.vertical-note{position:absolute;right:-18px;top:10px;writing-mode:vertical-rl;font:12px var(--serif);letter-spacing:.2em;color:#77756c}.hero-foot{position:absolute;bottom:28px;left:10vw;right:10vw;display:flex;justify-content:space-between;color:#89877e;font-size:9px;letter-spacing:.15em}.section{padding:112px 10vw}.business-section{background:#fff}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:30px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:-18px}.section-heading h2,.section h2{font-size:30px;margin:0}.section-heading>p:last-child{font-size:13px;line-height:2;color:var(--muted);margin:0 0 5px}.business-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:62px;border-block:1px solid var(--line)}.business-grid article{padding:24px 20px 25px 0;position:relative;min-height:170px}.business-grid article+article{padding-left:24px;border-left:1px solid var(--line)}.item-no{font-size:10px;letter-spacing:.14em;color:var(--red)}.business-grid h3{font:500 17px var(--serif);letter-spacing:.08em;margin:24px 0 7px}.business-grid p{font-size:11px;color:var(--muted);margin:0}.item-line{position:absolute;width:28px;height:1px;background:#aaa59a;bottom:20px;left:0}.business-grid article+article .item-line{left:24px}.arrow-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid #c7c2b8;padding-bottom:10px;margin-top:30px}.arrow-link span{font-size:17px}.craft-section{padding:92px 10vw;background:#eeece5;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.craft-section h2{font-size:30px;margin:0 0 16px}.craft-intro>p:last-child{font-size:13px;line-height:2.1;color:#6e6e65}.craft-links{border-top:1px solid #d2cec4}.craft-links>a{display:grid;grid-template-columns:50px 1fr 38px;align-items:center;gap:12px;padding:22px 0;border-bottom:1px solid #d2cec4}.craft-number{font:13px var(--serif);color:var(--red)}.craft-links small{display:block;font-size:9px;color:#8a887e;letter-spacing:.16em;margin-bottom:5px}.craft-links strong{font:500 16px var(--serif);letter-spacing:.1em}.round-arrow{width:34px;height:34px;border:1px solid #c2bdb2;border-radius:50%;display:grid;place-items:center}.diary-section{background:var(--paper)}.diary-head{display:flex;align-items:end;justify-content:space-between}.diary-head h2{font-size:28px}.diary-head .arrow-link{margin:0 0 6px}.diary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:38px}.diary-card{position:relative}.card-image{height:220px;display:grid;place-items:center;overflow:hidden;position:relative;background:#e8e4da}.card-image:before,.card-image:after{content:"";position:absolute;width:50%;height:140%;bottom:-48%;transform:rotate(26deg);background:linear-gradient(90deg,#373c39,#69706a 50%,#373c39);box-shadow:0 0 20px #28282124}.card-image:before{left:16%}.card-image:after{left:49%;background:linear-gradient(90deg,#574d44,#8b7867 50%,#554a40)}.card-image-two{background:#d7dedb}.card-image-two:before{background:linear-gradient(90deg,#d3c8b3,#f1eee6 50%,#c5b99f);width:30%;left:23%}.card-image-two:after{background:linear-gradient(90deg,#53605a,#828c83 50%,#4b554f);width:30%;left:48%}.card-image-three{background:#e7d9ce}.card-image-three:before{background:linear-gradient(90deg,#703f37,#af6e58 50%,#703f37);width:26%;left:23%}.card-image-three:after{background:linear-gradient(90deg,#b4a180,#ded2b5 50%,#9c8968);width:26%;left:52%}.card-image>span{position:absolute;left:14px;top:14px;z-index:2;background:#f7f5f0d9;padding:7px 10px;font-size:9px;letter-spacing:.1em;color:#514e45}.diary-card time{display:block;margin-top:18px;font-size:10px;letter-spacing:.1em;color:#88877e}.diary-card h3{font:500 15px var(--serif);letter-spacing:.04em;margin:8px 30px 0 0}.card-arrow{position:absolute;right:0;bottom:1px;color:var(--red)}.about-section{padding:92px 15vw;display:grid;grid-template-columns:170px 1fr;gap:6vw;align-items:center;background:#fff}.about-mark{width:150px;height:150px;border:1px solid #ddd8ce;color:var(--red);display:grid;place-items:center;font:70px var(--serif)}.about-section h2{font-size:26px;margin:0 0 12px}.about-section>div:last-child>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted);margin:0}.about-section .arrow-link{margin-top:22px}.contact-band{padding:65px 10vw;background:#353832;color:#f6f4ee;display:flex;justify-content:space-between;align-items:center}.contact-band .eyebrow{color:#c8957f}.contact-band h2{font-size:24px;margin:0}.contact-band p:not(.eyebrow){font-size:12px;color:#c4c3bb;margin:8px 0 0}.contact-details{display:flex;flex-direction:column;gap:10px;text-align:right;font-size:13px}.contact-details .phone{font:24px var(--serif);letter-spacing:.08em}.contact-details span{margin-left:8px;color:#c8957f}.site-footer{padding:55px 10vw 24px;display:grid;grid-template-columns:1.2fr 1fr 1.4fr;gap:32px;background:#f0eee8}.footer-brand{align-self:start}.footer-address{font-size:11px;line-height:2;color:#66665e}.footer-address span{font-size:10px}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:10px;color:#65655e}.copyright{grid-column:1/-1;border-top:1px solid #d8d5cc;padding-top:18px;text-align:center;color:#99968d;font-size:9px;letter-spacing:.08em}.mobile-only{display:none}a:focus-visible,button:focus-visible{outline:3px solid #b45e48;outline-offset:4px}
@media(max-width:900px){.site-header{padding:0 5vw;height:82px}.main-nav{gap:14px;font-size:11px}.hero{padding-left:7vw;padding-right:7vw;min-height:590px}.hero-foot{left:7vw;right:7vw}.section{padding:85px 7vw}.craft-section{padding:75px 7vw;gap:4vw}.card-image{height:185px}.about-section{padding:75px 8vw}.contact-band{padding:55px 7vw}.site-footer{padding-left:7vw;padding-right:7vw}}
@media(max-width:680px){.site-header{height:72px;padding:0 20px}.brand-mark{width:36px;height:36px;font-size:21px}.brand-name{font-size:13px}.menu-toggle{width:44px;height:44px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:10px;z-index:2}.menu-toggle span{width:23px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:71px;left:0;right:0;background:#f7f5f0;padding:16px 22px 24px;border-bottom:1px solid var(--line);align-items:stretch;gap:0;box-shadow:0 12px 18px #25251d12}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a{padding:14px 4px;border-bottom:1px solid #e4e1d8}.main-nav .nav-contact{text-align:center;margin-top:14px;border:1px solid #a6a398}.hero{min-height:0;padding:55px 24px 50px;display:flex;flex-direction:column;align-items:stretch;background:linear-gradient(180deg,#f7f5f0 0 57%,#efede6 57%)}.hero-copy{padding:0}.eyebrow{font-size:9px;margin-bottom:14px}.hero h1{font-size:36px;line-height:1.65;margin-bottom:14px}.hero-lead{font-size:12px;line-height:2}.desktop-only{display:none}.hero-actions{margin-top:23px;gap:18px;flex-wrap:wrap}.button{padding:14px 16px;gap:24px;font-size:11px}.text-link{font-size:11px}.hero-art{height:260px;margin-top:30px}.art-frame{width:calc(100% - 20px);height:225px}.art-sun{width:110px;height:110px;top:25px;right:45px}.art-fold{height:175px;width:140px;bottom:-52px}.fold-one{left:8%}.fold-two{left:36%;bottom:-66px}.fold-three{left:64%;bottom:-49px}.art-caption{font-size:10px;right:12px;bottom:12px}.vertical-note{right:-9px;top:0;font-size:10px}.hero-foot{position:static;margin-top:20px;font-size:8px}.section{padding:66px 24px}.section-heading{display:block}.section-heading h2,.section h2{font-size:25px;line-height:1.65}.mobile-only{display:initial}.section-heading>p:last-child{font-size:12px;line-height:2;margin-top:12px}.business-grid{grid-template-columns:1fr 1fr;margin-top:32px}.business-grid article{min-height:139px;padding:18px 12px 20px 0}.business-grid article+article{padding-left:16px}.business-grid article:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--line)}.business-grid article:nth-child(4){border-top:1px solid var(--line)}.business-grid h3{font-size:15px;margin:18px 0 6px}.business-grid article+article .item-line{left:16px}.business-grid article:nth-child(3) .item-line{left:0}.business-grid article:nth-child(4) .item-line{left:16px}.craft-section{padding:62px 24px;display:block}.craft-section h2{font-size:25px}.craft-intro>p:last-child{font-size:12px}.craft-links{margin-top:26px}.craft-links>a{padding:19px 0}.diary-head{display:block}.diary-head h2{font-size:23px}.diary-head .arrow-link{margin-top:15px}.diary-grid{grid-template-columns:1fr;gap:28px;margin-top:27px}.card-image{height:220px}.diary-card time{margin-top:13px}.about-section{padding:60px 24px;display:block}.about-mark{width:75px;height:75px;font-size:36px;margin-bottom:26px}.about-section h2{font-size:23px}.about-section>div:last-child>p:not(.eyebrow){font-size:12px}.contact-band{padding:43px 24px;display:block}.contact-band h2{font-size:22px}.contact-band p:not(.eyebrow){font-size:11px}.contact-details{text-align:left;margin-top:25px}.contact-details .phone{font-size:21px}.site-footer{padding:38px 24px 20px;grid-template-columns:1fr 1fr;gap:23px 16px}.footer-address{font-size:10px}.footer-address span{font-size:9px}.site-footer nav{grid-column:1/-1;gap:13px;font-size:10px}.copyright{padding-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.brand-logo{display:block;width:260px;max-width:36vw;height:auto;object-fit:contain}.footer-brand .brand-logo{width:250px;max-width:100%}.hero-picture{display:block;width:min(100%,570px);overflow:hidden}.hero-picture img{display:block;width:100%;height:auto;object-fit:contain}.card-image{height:220px}.card-image img{display:block;width:100%;height:100%;object-fit:cover}.hero-art{height:auto;min-height:0}.art-frame{display:none}@media(max-width:680px){.brand-logo{width:220px;max-width:65vw}.hero-picture{width:100%}.hero-picture img{width:100%}}

.card-image:before,.card-image:after{display:none}
.hero-picture{width:min(100%,700px)}
.hero-art{width:calc(100% + 7vw);margin-left:-2vw}
@media(max-width:900px) and (min-width:681px){.hero-picture{width:min(100%,620px)}.hero-art{width:calc(100% + 4vw);margin-left:-1vw}}
@media(max-width:680px){.hero-art{width:calc(100% + 48px);margin:30px 0 0 -24px}.hero-picture{width:100%}.hero-picture img{width:100%}}
.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:0;overflow:hidden;background:var(--paper)}
.hero-art{order:0;display:block;width:100%;margin:0;min-height:0;height:auto}
.hero-picture{width:100%;max-width:none;margin:0}
.hero-picture{display:block;min-width:0}
.hero-picture img{display:block;width:100%;max-width:100%;min-width:0;height:auto;object-fit:contain}
.hero-copy{order:1;width:100%;padding:48px 10vw 34px;background:var(--paper)}
.hero-foot{order:2;position:static;margin:0;padding:0 10vw 26px;background:var(--paper)}
@media(max-width:900px) and (min-width:681px){.hero-copy{padding:42px 7vw 30px}.hero-foot{padding:0 7vw 24px}}
@media(max-width:680px){.hero{padding:0;min-height:0;background:var(--paper)}.hero-art{width:100%;margin:0}.hero-picture{width:100%}.hero-picture img{width:100%;height:auto}.hero-copy{padding:32px 24px 24px}.hero-foot{margin:0;padding:0 24px 22px}}
.vertical-note,.hero-foot{display:none}
.hero-art,.hero-picture{min-width:0}
.hero-picture img{display:block;width:100%;max-width:100%;min-width:0;height:auto}
.brand-logo{mix-blend-mode:multiply}

.news-notice{max-width:1120px;margin:0 auto;padding:38px 36px;display:grid;grid-template-columns:220px 1fr;align-items:center;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.news-heading .eyebrow{margin:0 0 7px}.news-heading h2{font:500 22px/1.6 var(--serif);letter-spacing:.08em;margin:0}.news-link{display:flex;align-items:center;gap:22px;padding:15px 0}.news-link time{font-size:14px;color:var(--muted);white-space:nowrap}.news-link strong{font-size:16px;font-weight:600}.news-link>span{margin-left:auto;color:var(--red)}.news-link:hover strong{text-decoration:underline;text-underline-offset:4px}@media(max-width:680px){.news-notice{padding:30px 24px;grid-template-columns:1fr;gap:8px}.news-heading h2{font-size:20px}.news-link{gap:12px;padding:12px 0}.news-link time{font-size:12px}.news-link strong{font-size:14px}}
