@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap";:root{--paper:#f5f5ee;--ink:#183e2c;--muted:#6d776a;--line:#d7dccf;--lime:#d4e9a4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Noto Sans JP,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline-offset:7px;outline:3px solid #6c8c3b}::selection{background:var(--lime)}.header{border-bottom:1px solid var(--line);background:var(--paper);z-index:5;justify-content:space-between;align-items:center;height:105px;padding:0 5%;display:flex;position:relative}.logo{letter-spacing:-2.6px;align-items:baseline;font-family:Arial,sans-serif;font-size:39px;font-weight:600;display:inline-flex}.logo-dot{background:#8aa54e;border-radius:50%;width:7px;height:7px;margin-left:4px}.header nav{align-items:center;gap:35px;font-size:12px;font-weight:500;display:flex}.header nav a{transition:opacity .2s}.header nav a:hover{opacity:.6}.nav-contact{border:1px solid var(--ink);border-radius:50px;min-width:165px;padding:15px 22px}.nav-contact span{margin-left:23px}.menu-toggle{display:none}.hero{min-height:735px;padding:29px 5% 0;position:relative;overflow:hidden}.hero-meta{z-index:2;letter-spacing:1.5px;justify-content:space-between;font:10px Arial,sans-serif;display:flex;position:relative}.hero-copy{z-index:2;pointer-events:none;padding-top:110px;position:relative}.hero-copy a{pointer-events:auto}.eyebrow{letter-spacing:1.8px;align-items:center;gap:9px;font:10px Arial,sans-serif;display:flex}.tiny-dot{background:#83a35b;border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}h1{letter-spacing:.015em;margin:23px 0 25px;font-size:clamp(35px,4.15vw,66px);font-weight:500;line-height:1.55}.period{color:#8aa54e}.hero-description{letter-spacing:1px;font-size:13px;line-height:2.15}.text-link{align-items:center;gap:42px;margin-top:19px;font-size:12px;display:inline-flex}.circle-arrow{border:1px solid #a9b69b;border-radius:50%;place-items:center;width:43px;height:43px;font-size:20px;transition:background .2s,transform .2s;display:grid}.text-link:hover .circle-arrow{background:var(--lime);transform:translate(3px,-3px)}.hero-art{pointer-events:none;width:60%;height:660px;position:absolute;top:32px;right:-9%}.hero-art:before{content:"";filter:blur(40px);background:radial-gradient(#dce9b5aa,#0000 66%);position:absolute;inset:10% 20% 0 0}.hero-art svg{filter:drop-shadow(10px 26px 22px #1f472b1b);width:100%;height:100%;animation:15s ease-in-out infinite unfold;position:relative}.art-caption{transform-origin:100%;letter-spacing:2px;font:8px Arial;position:absolute;bottom:8px;right:30%;transform:rotate(-90deg)}.hero-bottom{border-top:1px solid var(--line);letter-spacing:1px;z-index:2;justify-content:space-between;align-items:center;margin-top:78px;padding:23px 0;font-size:10px;display:flex;position:relative}.hero-bottom a{letter-spacing:1.5px;font:9px Arial}.hero-bottom a span{margin-left:32px;font-size:18px}.section{padding:95px 7%}.section-label{letter-spacing:1.3px;align-items:center;gap:10px;font:11px Arial;display:flex}.section-no{color:#88927e;margin-left:auto;font-size:10px}.about{border-top:1px solid var(--line);padding-bottom:130px;position:relative;overflow:hidden}.about-content{grid-template-columns:1.15fr 1fr;gap:60px;margin-top:56px;display:grid}h2{letter-spacing:.035em;margin:0;font-size:35px;font-weight:500;line-height:1.75}.about-body{letter-spacing:.6px;font-size:13px;line-height:2.3}.about-body p{margin:0 0 24px}.about-statement{letter-spacing:-5px;color:#d4dcc9;margin-top:34px;font:clamp(50px,8vw,115px)/1.06 Arial,sans-serif}.about-statement span{color:#e2e7d8;padding-left:12%}.business{background:#e9eddf}.section-heading{justify-content:space-between;align-items:end;gap:32px;margin:40px 0 55px;display:flex}.section-heading p{margin:0;font-size:12px;line-height:2.1}.business-item{border-top:1px solid #c8d2be;grid-template-columns:65px 1fr 1.1fr 110px;align-items:center;gap:20px;padding:40px 0;display:grid}.business-item:last-child{border-bottom:1px solid #c8d2be}.item-number{color:#6d776a;align-self:start;padding-top:6px;font:11px Arial}.business-title h3{margin:0 0 12px;font-size:23px;font-weight:500}.business-title span{letter-spacing:1px;font:9px Arial}.business-item p{font-size:12px;line-height:2.2}.business-symbol{width:100px;height:82px;position:relative}.business-symbol i{background:#799a4c;display:block;position:absolute}.symbol-one i{background:#9dbb6d99;border-radius:50%;width:47px;height:47px;top:0;left:26px}.symbol-one i:nth-child(2){top:33px;left:6px}.symbol-one i:nth-child(3){background:#365b3eaa;top:33px;left:46px}.symbol-two i{background:#94b35d88;border:1px solid #355c3e;width:60px;height:60px;top:2px;left:8px;transform:rotate(-18deg)}.symbol-two i:nth-child(2){background:#48764a88;top:19px;left:29px}.symbol-three{align-items:end;gap:7px;padding:8px 10px;display:flex}.symbol-three i{background:#9ab86b;border-radius:20px 20px 0 0;width:21px;height:32px;position:static}.symbol-three i:nth-child(2){background:#6f914b;height:50px}.symbol-three i:nth-child(3){background:#355c3e;height:70px}.values{color:#f0f3e7;background:#244833}.values .tiny-dot{background:#c5de8c}.values-grid{grid-template-columns:1fr 1fr;gap:60px;margin-top:55px;display:grid}.values h2{font-size:39px}.values-en{letter-spacing:-1.5px;color:#d2e6ae;margin:0 0 30px;font:clamp(32px,4vw,58px)/1.25 Arial,sans-serif}.values-ja{color:#cad5bf;font-size:11px;line-height:2.3}.company-grid{grid-template-columns:1fr 1.3fr;gap:80px;margin-top:46px;display:grid}.company-note{color:var(--muted);margin-top:24px;font-size:11px;line-height:2}dl{margin:0}dl div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;padding:25px 0;font-size:12px;display:grid}dl div:first-child{border-top:1px solid var(--line)}dd{margin:0}.contact{background:#dce8c3;padding-bottom:125px;position:relative;overflow:hidden}.contact-content{z-index:1;margin-top:45px;position:relative}.contact h2{font-size:40px}.contact p{margin-top:23px;font-size:12px}.contact p a{text-underline-offset:4px;text-decoration:underline}.contact-watermark{letter-spacing:-6px;color:#c9d9ad;white-space:nowrap;font:150px Arial;position:absolute;bottom:-36px;right:5%}footer{align-items:center;gap:28px;padding:45px 5%;display:flex}footer .logo{font-size:32px}footer p{font-size:10px}footer>span{color:#74806c;margin-left:auto;font:10px Arial}.back-top{border:1px solid var(--line);border-radius:50%;place-items:center;width:40px;height:40px;display:grid}@keyframes unfold{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-12px)rotate(3deg)}}@media (width>=1550px){.hero,.header,.section,footer{padding-left:max(7%,50vw - 675px);padding-right:max(7%,50vw - 675px)}.hero-art{width:55%;right:0}}@media (width<=1000px){.header nav{gap:22px}.hero-art{opacity:.9;width:75%;right:-20%}.hero-copy{padding-top:100px}.hero h1{font-size:43px}.about-content{gap:30px}h2{font-size:29px}.business-item{grid-template-columns:35px 1fr 1fr 70px;gap:15px}.business-symbol{transform-origin:0;transform:scale(.75)}.business-title h3{font-size:20px}.company-grid{gap:30px}.contact h2{font-size:34px}}@media (width<=700px){html{scroll-padding-top:25px}.header{height:82px;padding:0 6%}.logo{font-size:33px}.menu-toggle{color:var(--ink);letter-spacing:1px;background:0 0;border:0;align-items:center;gap:20px;font-size:10px;display:flex}.menu-toggle span{font-size:24px}.header nav{background:var(--paper);border-bottom:1px solid var(--line);padding:28px 6%;display:none;position:absolute;top:82px;left:0;right:0;box-shadow:0 18px 25px #163a2a15}.header nav.open{flex-direction:column;align-items:stretch;gap:25px;display:flex}.nav-contact{justify-content:space-between;display:flex}.hero{min-height:800px;padding:24px 6% 0}.hero-meta{font-size:8px}.hero-meta span:last-child{display:none}.hero-copy{padding-top:60px}.hero h1{margin:22px 0;font-size:clamp(28px,6.8vw,42px);line-height:1.7}.eyebrow{letter-spacing:1.2px;font-size:8px}.hero-description{font-size:12px}.hero-art{width:100%;height:390px;top:375px;right:-29%}.hero-copy .text-link{margin-top:16px}.hero-bottom{margin-top:290px;font-size:8px}.hero-bottom a{letter-spacing:1px;font-size:8px}.hero-bottom a span{margin-left:12px}.art-caption{display:none}.section{padding:65px 7%}.section-label{font-size:10px}.about-content{grid-template-columns:1fr;gap:30px;margin-top:35px}h2{font-size:28px}.about-body{font-size:12px;line-height:2.2}.about-statement{letter-spacing:-2.8px;margin-top:20px;font-size:52px}.about-statement span{padding-left:5%}.section-heading{margin:35px 0;display:block}.section-heading p{margin-top:20px;font-size:11px}.business-item{grid-template-columns:25px 1fr 70px;gap:12px;padding:27px 0}.business-title h3{font-size:20px}.business-title span{font-size:8px}.business-item p{grid-area:2/2/auto/4;margin:0;font-size:11px}.business-symbol{grid-area:1/3;height:65px;transform:scale(.6)}.item-number{font-size:9px}.values-grid{grid-template-columns:1fr;gap:32px;margin-top:35px}.values h2{font-size:31px}.values-en{font-size:42px}.values-ja{font-size:10px}.company-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}.company-note{margin-top:12px}dl div{grid-template-columns:125px 1fr;padding:22px 0;font-size:11px}.contact-content{margin-top:32px}.contact h2{font-size:31px}.contact p{font-size:10px;line-height:2}.contact{padding-bottom:100px}.contact-watermark{letter-spacing:-4px;font-size:84px;bottom:-17px;right:4%}footer{flex-wrap:wrap;gap:18px;padding:35px 7%}footer .logo{font-size:30px}footer p{width:calc(100% - 125px);font-size:9px}footer>span{margin-left:0}.back-top{margin-left:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.business-title h3{font-size:clamp(18px,1.7vw,23px);line-height:1.65}.business-title span{line-height:1.7;display:block}.company dd{overflow-wrap:anywhere;line-height:2}.company dd a{text-underline-offset:4px;text-decoration:underline}.values-ja{max-width:440px}@media (width<=700px){.business-title h3{font-size:18px}.business-title span{font-size:7px}.business-item{grid-template-columns:25px minmax(0,1fr) 60px}.company dl div{grid-template-columns:100px minmax(0,1fr)}}
