:root{--bg:#f2f1ed;--bg2:#ebe8e1;--ink:#292a27;--muted:#5f625b;--line:#d2cfc8;--accent:#9d8a73;--dark:#292b29;--white:#fff;--wide:1320px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-weight:400;line-height:1.95;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}::selection{background:#e4d9c7;color:#252522}
.container{width:min(100%,var(--wide));margin:0 auto;padding-inline:clamp(24px,5vw,74px)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;top:-80px;left:10px;padding:9px 14px;background:#fff;z-index:200}.skip-link:focus{top:8px}
a:focus-visible,button:focus-visible{outline:2px solid #a18a67;outline-offset:5px}
.site-header{height:91px;position:sticky;top:0;z-index:100;background:rgba(242,241,237,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-layout{height:100%;display:flex;justify-content:space-between;align-items:center;gap:22px}
.site-brand{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}
.site-brand .jp{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:27px;letter-spacing:.09em;white-space:nowrap}
.site-brand .en{font-size:11px;letter-spacing:.20em;margin-top:9px;line-height:1.6}
.site-brand.paw-brand .jp{font-family:Arial,"Helvetica Neue",sans-serif;font-size:27px;letter-spacing:-.07em;font-weight:300}
.site-brand.paw-brand .en{letter-spacing:.17em}
.nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,32px)}
.nav a{font-size:12px;font-weight:600;letter-spacing:.12em;white-space:nowrap;transition:opacity .2s}
.nav a:hover{opacity:.6}.nav .nav-out{padding:10px 15px;border:1px solid var(--ink)}
.nav .active{color:#8c775f}
.menu-btn{display:none;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;width:42px;height:42px;cursor:pointer}
.menu-btn svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.5}
.kicker{display:flex;align-items:baseline;gap:20px;font:600 12px/1.5 Arial,sans-serif;letter-spacing:.17em}
.kicker .n{color:#a18e76;font-size:12px}
.small-label{font:600 11px/1.6 Arial,sans-serif;letter-spacing:.18em}
.tag{display:inline-flex;align-items:center;gap:10px;font:600 11px/1.6 Arial,sans-serif;letter-spacing:.15em;color:#696960}
.tag::before{content:"";width:7px;height:7px;border-radius:50%;background:#b4a087}
.text-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid currentColor;padding:0 0 9px;font-size:13px;line-height:1.8;letter-spacing:.09em;font-weight:500;transition:gap .2s}
.text-link:hover{gap:39px}.arrow{font-style:normal;font-family:Arial,sans-serif;font-size:21px;line-height:1}
.note{font-size:12px;color:var(--muted);line-height:2.05}
.hero-home{display:grid;grid-template-columns:42% 58%;min-height:620px;height:min(760px,calc(100svh - 91px));max-height:790px;border-bottom:1px solid var(--line)}
.hero-home .hero-copy{padding:85px 45px 70px max(24px,calc((100vw - var(--wide))/2 + 74px));display:flex;flex-direction:column;justify-content:center;align-items:start}
.hero-home h1{font-size:clamp(33px,3.5vw,54px);line-height:1.63;letter-spacing:.075em;margin:43px 0 26px;white-space:nowrap}
.hero-home .lead{font-size:14px;letter-spacing:.06em;line-height:2.5;color:#55574e;margin-bottom:43px}
.hero-photo{position:relative;min-width:0;overflow:hidden;background:#c9c5bd}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 51%}
.photo-stamp{position:absolute;bottom:24px;right:24px;font:600 10px/1.5 Arial,sans-serif;letter-spacing:.16em;color:white;text-shadow:0 1px 7px rgba(0,0,0,.7)}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.facts div{text-align:center;padding:25px 10px;border-right:1px solid var(--line);font:600 12px/1.7 Arial,sans-serif;letter-spacing:.15em}.facts div:last-child{border:0}
.section{padding-block:clamp(90px,11vw,148px)}
.section-head{display:grid;grid-template-columns:26% 1fr;gap:32px;align-items:start}
.section-title{font-size:clamp(29px,3.2vw,45px);letter-spacing:.07em;line-height:1.65;margin-bottom:30px}
.section-text{max-width:690px;color:#54574f;font-size:15px;letter-spacing:.03em;line-height:2.55}.section-text p+p{margin-top:18px}
.about-photo{display:grid;grid-template-columns:56% 1fr;gap:6.3%;margin-top:70px;align-items:center}
.about-photo figure{margin:0}.about-photo img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:center 49%}.photo-caption{font-size:12px;letter-spacing:.05em;line-height:1.9;color:var(--muted);margin-top:13px}
.side-story{border-top:1px solid var(--line);padding-top:25px}.side-story h3{font-size:22px;line-height:1.8;letter-spacing:.09em;margin:20px 0}.side-story p{font-size:14px;line-height:2.5;color:var(--muted)}
.stay-section{background:var(--bg2)}.stay-visual{margin-top:55px;display:grid;grid-template-columns:59% 1fr;gap:5%;align-items:center}.stay-visual img{width:100%;height:100%;max-height:610px;min-height:360px;object-fit:cover}.stay-visual .visual-copy{padding-block:15px}.stay-visual .visual-copy h3{font-size:clamp(24px,2.3vw,33px);letter-spacing:.08em;line-height:1.75;margin:19px 0}.stay-visual .visual-copy p{font-size:14px;color:var(--muted);line-height:2.55}
.room-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:70px}.room-fact{border-top:1px solid #aaa69e;padding-top:21px}.room-fact h3{font-size:19px;letter-spacing:.06em;margin:20px 0 9px}.room-fact p{font-size:13px;line-height:2.35;color:var(--muted)}.disclosure{border-left:2px solid var(--accent);padding-left:18px;margin-top:40px;font-size:13px;color:#5a5b55}
.archive-head{margin-bottom:40px}.archive-head .section-title{margin-bottom:0}
.archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.archive-grid img{aspect-ratio:1.5;object-fit:cover;width:100%}
.art-section{background:var(--dark);color:#f8f6f0}.art-section .kicker .n{color:#c3b49c}.art-section .section-text{color:#c5c7be}
.art-facts{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:60px}.art-stat{padding-top:25px;border-top:1px solid #73766e}.art-stat strong{font-size:clamp(74px,9vw,128px);letter-spacing:-.07em;font-weight:300;font-family:Arial,sans-serif;line-height:1.15}.art-stat p{font-size:13px;letter-spacing:.05em;line-height:2.05;color:#e0dfd6;max-width:300px}.art-stat .secondary-value{font-size:clamp(57px,7vw,102px);letter-spacing:-.06em}.art-section .text-link{margin-top:55px}
.access-grid{display:grid;grid-template-columns:50% 1fr;gap:7%;margin-top:48px;align-items:center}.map-graphic{background:#e8e4da;min-height:335px;position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden}.map-graphic::before,.map-graphic::after{content:"";display:block;position:absolute;z-index:-1;border:1px solid rgba(99,98,88,.22);border-radius:50%;width:210px;height:210px}.map-graphic::after{width:420px;height:420px}.map-graphic span{font:300 29px/1.2 Arial,sans-serif;letter-spacing:.38em;margin-right:-.38em}.access-copy h3{font-size:23px;line-height:1.8;letter-spacing:.09em;margin:15px 0 25px}.access-copy p{font-size:14px;line-height:2.45;color:var(--muted)}
.updates{padding-block:80px;border-top:1px solid var(--line)}.update-flex{display:flex;align-items:center;justify-content:space-between;gap:35px}.update-flex h2{font-size:27px;letter-spacing:.08em;line-height:1.6;margin:14px 0 11px}.update-flex p{font-size:14px;color:var(--muted)}.outline-link{display:inline-flex;border:1px solid var(--ink);padding:17px 23px;gap:28px;font:600 13px Arial,sans-serif;letter-spacing:.06em;align-items:center;white-space:nowrap;transition:background .2s,color .2s}.outline-link:hover{background:var(--ink);color:#fff}
.footer{background:#e7e4dd;padding-block:45px 25px}.footer-top{display:flex;align-items:end;justify-content:space-between;gap:30px}.footer-company{text-align:right;font:600 12px/1.8 Arial,sans-serif;letter-spacing:.09em}.footer-company a{border-bottom:1px solid #8b857c}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #d1cdc4;padding-top:19px;margin-top:50px;font-size:11px;color:#77776f;line-height:1.8}
/* Paw page */
.paw-hero{min-height:620px;display:grid;grid-template-columns:56% 44%;border-bottom:1px solid var(--line)}.paw-hero-copy{padding:110px 60px 90px max(24px,calc((100vw - var(--wide))/2 + 74px));display:flex;flex-direction:column;justify-content:center}.paw-hero h1{font-size:clamp(55px,7vw,112px);font-family:Arial,sans-serif;font-weight:300;letter-spacing:-.085em;line-height:1.12;margin:31px 0 20px}.paw-hero .business-full{font:600 12px/2 Arial,sans-serif;letter-spacing:.22em;margin-bottom:43px}.paw-hero .mission{font-size:clamp(21px,2.5vw,32px);line-height:1.9;letter-spacing:.08em;margin-bottom:22px}.paw-hero .mission-sub{font-size:14px;color:var(--muted);line-height:2.55;max-width:480px}
.paw-hero-art{background:#e8e2d7;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.paw-hero-art::before,.paw-hero-art::after{content:"";position:absolute;width:470px;height:470px;border:1px solid rgba(103,98,86,.24);border-radius:50%;transform:translate(15%,-12%)}.paw-hero-art::after{width:700px;height:700px;transform:translate(15%,-12%)}.paw-hero-art span{font:300 clamp(95px,15vw,245px)/1 Arial,sans-serif;letter-spacing:-.09em;color:#9e9383;transform:translateX(-.05em)}
.philosophy-section{background:var(--dark);color:#f8f7f2;padding-block:135px}.philosophy-section .small-label{color:#d0c2a8}.philosophy-quote{font-size:clamp(33px,4.5vw,68px);letter-spacing:.07em;line-height:1.75;margin:30px 0 33px}.philosophy-section p{font-size:15px;max-width:800px;line-height:2.7;color:#cecec7}
.pillars-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:66px}.pillar{border-top:1px solid #a9a79f;padding-top:28px}.pillar h3{font-size:clamp(29px,3vw,39px);letter-spacing:.08em;margin-top:24px;margin-bottom:19px}.pillar p{font-size:15px;line-height:2.6;color:var(--muted);max-width:500px}.pillar .small-label{color:#93836c}
.model-section{background:var(--bg2)}.model-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:62px}.model-card{padding-top:21px;border-top:1px solid #a7a399}.model-card .figure{font:300 clamp(76px,9vw,136px)/1.2 Arial,sans-serif;letter-spacing:-.06em;margin:20px 0 15px}.model-card .figure.smaller{font-size:clamp(64px,7.5vw,112px)}.model-card h3{font-size:20px;line-height:1.65;letter-spacing:.04em;margin-bottom:15px}.model-card p{font-size:14px;line-height:2.5;color:var(--muted);max-width:490px}.model-disclaimer{border-left:2px solid var(--accent);padding-left:15px;color:#62635d;font-size:13px;line-height:2.25;margin-top:42px}
.project-grid{display:grid;grid-template-columns:56% 1fr;gap:6%;align-items:center;margin-top:60px}.project-grid img{width:100%;aspect-ratio:1.5;object-fit:cover}.project-grid h3{font-size:clamp(23px,2.7vw,34px);letter-spacing:.06em;line-height:1.65;margin:17px 0}.project-grid p{font-size:14px;line-height:2.5;color:var(--muted);margin-bottom:26px}
.company-block{padding-block:55px 80px;border-top:1px solid var(--line)}.company-details{display:grid;grid-template-columns:27% 1fr;gap:20px}.company-details dl{margin:0;max-width:720px}.company-details dl>div{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid var(--line);padding:14px 0;gap:15px;font-size:14px}.company-details dt{color:#7c7d74}.company-details dd{margin:0}
@media(max-width:1040px){.nav{gap:17px}.nav a{font-size:11px}.hero-home .hero-copy,.paw-hero-copy{padding-left:40px}.hero-home h1{font-size:38px}.section-head{grid-template-columns:23% 1fr}}
@media(max-width:760px){html{scroll-padding-top:77px}.site-header{height:76px}.site-brand .jp{font-size:23px}.site-brand .en{font-size:8px;letter-spacing:.15em}.menu-btn{display:flex}.nav{position:absolute;top:76px;left:0;right:0;padding:14px 24px 23px;background:var(--bg);border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:0;align-items:stretch;box-shadow:0 10px 18px rgba(0,0,0,.04)}.nav.open{display:flex}.nav a{font-size:12px;padding:12px 4px}.nav .nav-out{text-align:center;margin-top:10px;padding:12px}.hero-home{display:flex;flex-direction:column;height:auto;min-height:0}.hero-home .hero-copy{padding:68px 25px 63px}.hero-home h1{font-size:clamp(33px,8.3vw,47px);white-space:normal;margin:30px 0 23px}.hero-home .lead{font-size:13px;margin-bottom:30px}.hero-photo{height:350px;flex-shrink:0}.hero-photo img{object-position:center center}.facts{grid-template-columns:1fr 1fr}.facts div{font-size:10px;padding:16px 4px}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}.section{padding-block:76px}.section-head{display:block}.section-head .kicker{margin-bottom:27px}.section-title{font-size:29px;margin-bottom:20px}.section-text{font-size:13px;line-height:2.5}.about-photo,.stay-visual,.access-grid,.project-grid{display:block;margin-top:35px}.about-photo figure,.stay-visual img,.project-grid img{margin-bottom:25px}.about-photo .side-story{margin-top:33px}.side-story h3{font-size:20px}.stay-visual img{min-height:0;aspect-ratio:1.5;height:auto}.room-facts{grid-template-columns:1fr;margin-top:40px;gap:23px}.room-fact h3{margin-top:14px}.archive-grid{grid-template-columns:1fr;gap:30px}.art-facts{grid-template-columns:1fr;margin-top:35px;gap:30px}.art-stat strong{font-size:76px}.art-stat .secondary-value{font-size:70px}.art-section .text-link{margin-top:42px}.access-grid .map-graphic{min-height:255px;margin-bottom:26px}.update-flex{align-items:flex-start;flex-direction:column}.update-flex h2{font-size:23px}.updates{padding-block:66px}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-company{text-align:left}.footer-bottom{gap:10px;margin-top:32px}.paw-hero{display:flex;flex-direction:column;min-height:0}.paw-hero-copy{padding:75px 25px 75px}.paw-hero h1{font-size:88px;margin:25px 0 16px}.paw-hero .business-full{margin-bottom:30px}.paw-hero .mission{font-size:24px}.paw-hero-art{height:300px}.paw-hero-art span{font-size:156px}.philosophy-section{padding-block:80px}.philosophy-quote{font-size:37px}.philosophy-section p{font-size:13px}.pillars-grid,.model-grid{grid-template-columns:1fr;gap:40px;margin-top:40px}.company-details{display:block}.company-details .kicker{margin-bottom:20px}.company-details dl>div{grid-template-columns:100px 1fr;font-size:12px}}
@media(max-width:370px){.hero-home h1{font-size:31px}.paw-hero h1{font-size:76px}.philosophy-quote{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.text-link,.nav a,.outline-link{transition:none}}

/* Official original logo artwork – transparent-cropped, never redrawn. */
.brand-logo{width:auto;height:auto;max-width:none;object-fit:contain;object-position:left center}
.header-layout .brand-logo{width:174px;max-height:66px}
.header-layout .hikarito-logo{width:164px}
.footer .brand-logo{width:183px;max-height:72px}
.footer .hikarito-logo{width:174px}
.paw-hero-art{background:#e7e4dd}
.paw-hero-art::before,.paw-hero-art::after{display:none}
.paw-hero-official{display:block;width:min(79%,540px);height:auto;object-fit:contain}
@media(max-width:760px){
.header-layout .brand-logo{width:145px;max-height:53px}
.header-layout .hikarito-logo{width:141px}
.paw-hero-art{height:290px}
.paw-hero-official{width:min(79%,440px)}
}


/* Paw page v5: future work vision + founder portrait; larger accessible desktop text */
.future-section{background:#e9e7e1}
.future-eyebrow{display:inline-block;color:#6c645a;font:600 12px/1.7 Arial,sans-serif;letter-spacing:.12em;margin-bottom:15px}
.work-schedule{margin-top:63px}
.work-schedule-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #aaa69e;padding:15px 0 22px}
.work-schedule-intro p{font-size:14px;color:var(--muted)}
.work-schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.work-time{background:#f2f1ed;padding:30px 34px 36px;min-width:0}
.work-time-art{background:#e1dcd3}
.work-time-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.work-time .small-label{color:#625d54}
.work-time-number{font:300 clamp(68px,7vw,112px)/1 Arial,sans-serif;letter-spacing:-.065em;white-space:nowrap}
.work-time-number small{font-size:.3em;letter-spacing:0;margin-left:5px}
.work-time h3{font-size:clamp(21px,2vw,27px);letter-spacing:.07em;margin:12px 0 15px;line-height:1.6}
.work-time p{max-width:370px;font-size:15px;line-height:2.3;color:#50534d}
.future-details{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:43px;padding-top:25px;border-top:1px solid #aaa69e}
.future-details h3{font-size:22px;letter-spacing:.055em;line-height:1.7;margin-bottom:12px}
.future-details p{font-size:14px;line-height:2.45;color:#53564f}
.future-status .small-label{display:block;margin:8px 0 17px}
.representative-section{background:var(--bg)}
.representative-grid{display:grid;grid-template-columns:47% 1fr;gap:8%;align-items:start;margin-top:61px}
.representative-portrait img{width:100%;aspect-ratio:1.06;object-fit:cover;object-position:50% 53%}
.representative-copy{padding-top:12px}
.representative-copy h3{font-size:clamp(32px,3.4vw,48px);font-weight:400;line-height:1.4;letter-spacing:.09em;margin:16px 0 5px}
.representative-roman{display:block;font:500 13px/1.8 Arial,sans-serif;letter-spacing:.16em;margin-top:10px}
.representative-role{font-size:16px;line-height:1.9;margin-bottom:29px}
.representative-copy>p:not(.representative-role){font-size:15px;line-height:2.45;color:#50534d;margin-bottom:19px}
@media(max-width:760px){
  .future-eyebrow{font-size:11px}
  .work-schedule{margin-top:35px}
  .work-schedule-intro{align-items:start;flex-direction:column;gap:5px}
  .work-schedule-grid{grid-template-columns:1fr;gap:10px}
  .work-time{padding:26px 25px 30px}
  .work-time-number{font-size:77px}
  .work-time p{font-size:14px}
  .future-details{grid-template-columns:1fr;gap:27px;margin-top:32px}
  .representative-grid{grid-template-columns:1fr;gap:23px;margin-top:35px}
  .representative-portrait img{aspect-ratio:1.25}
  .representative-copy{padding-top:0}
  .representative-copy h3{font-size:36px}
  .representative-copy>p:not(.representative-role){font-size:14px}
}

/* v6: use approved ORIGINAL Paw image. No recoloring, transparency, or image filters.
   The logo's natural white background is preserved as supplied. */
.header-layout .paw-logo{width:218px;height:74px;max-height:none;object-fit:cover;object-position:center center;filter:none;opacity:1}
.footer .paw-logo{width:235px;height:79px;max-height:none;object-fit:cover;object-position:center center;filter:none;opacity:1}
.paw-hero-art{background:#e7e4dd}
.paw-hero-official{width:min(88%,650px);height:auto;max-height:none;object-fit:contain;filter:none;opacity:1}
@media(max-width:1220px) and (min-width:761px){
 .header-layout .paw-logo{width:176px;height:62px}
 .paw-brand{flex-shrink:0}
 .header-layout:has(.paw-logo) .nav{gap:clamp(10px,1.15vw,18px)}
 .header-layout:has(.paw-logo) .nav a{font-size:11px;letter-spacing:.06em}
}
@media(max-width:760px){
 .header-layout .paw-logo{width:165px;height:55px;max-height:none}
 .footer .paw-logo{width:211px;height:72px;max-height:none}
 .paw-hero-official{width:min(92%,550px)}
}
