@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--paper:#f7f5f0;--white:#fffefa;--ink:#32382f;--muted:#707267;--accent:#873c2c;--line:#dbd9ce;--tint:#efeee5;--serif:'Noto Serif JP','Yu Mincho',serif;--sans:'Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}figure{margin:0}figcaption{font-size:12px;color:var(--muted);padding-top:8px;text-align:right}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif)}h2{font-size:34px;line-height:1.8;letter-spacing:.05em;margin-bottom:24px}h3{font-size:20px;line-height:1.8}p{margin-bottom:22px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:3px}a:hover{color:var(--accent)}.wrap{width:min(1160px,calc(100% - 112px));margin-inline:auto}.section{padding-block:96px}.eyebrow{font-family:Georgia,serif;font-size:12px;letter-spacing:.19em;color:var(--accent);margin-bottom:20px;font-weight:400}.small,.note{font-size:13px;color:var(--muted);line-height:1.9}.note{margin-top:20px}.header{height:104px;padding-inline:4.1%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:rgba(247,245,240,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(219,217,206,.45)}.brand{font-family:Georgia,serif;letter-spacing:.16em;font-size:35px;line-height:1.1;display:inline-block}.brand span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.15em;padding-top:10px;color:var(--muted)}.header nav{display:flex;align-items:center;gap:29px;font-size:13px}.header nav a{padding-block:12px}.header nav a[aria-current=page]{color:var(--accent)}.header nav .nav-contact{background:var(--accent);color:white;padding:16px 22px;margin-left:5px;font-size:13px;display:flex;gap:25px}.nav-contact:hover,.button:hover{background:#6e3023;color:white}.nav-contact span{font-size:17px}.menu-toggle{display:none}.mobile-recruit,.mobile-only{display:none!important}.skip{position:fixed;top:-100px;z-index:100;background:var(--white);padding:10px}.skip:focus{top:0}.hero{position:relative;display:grid;grid-template-columns:45% 55%;min-height:630px;padding:20px 4.1% 32px;align-items:stretch}.hero-copy{padding:62px 12px 42px 25px;z-index:1}.hero .eyebrow{margin-bottom:25px}.hero-kicker{font-size:14px;letter-spacing:.06em;margin-bottom:17px}.hero h1{font-size:clamp(38px,3.55vw,56px);line-height:1.85;letter-spacing:.09em;white-space:nowrap;margin-bottom:25px}.hero-desc{font-size:15px;line-height:2.2;color:#65685f;margin-bottom:31px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:55px;padding:13px 25px;background:var(--accent);color:var(--white);font-size:14px;letter-spacing:.02em;border:1px solid var(--accent);transition:background .2s}.button span{font-size:19px;font-family:var(--sans)}.button.secondary{background:transparent;color:var(--accent)}.button.secondary:hover{background:var(--accent);color:white}.hero-area{font-family:Georgia,serif;font-size:11px;letter-spacing:.09em;color:var(--accent);margin-top:35px;margin-bottom:0}.hero-area span{font-family:var(--sans);font-size:11px;letter-spacing:0;color:var(--muted);margin-left:12px}.hero-visual{position:relative;min-height:590px}.hero-visual img{height:100%;position:absolute;inset:0;object-position:50% 50%;border-radius:2px 2px 70px 2px;background:#e7ddcf}.hero-visual figcaption{position:absolute;bottom:-28px;right:0;font-size:10px}.hero-photo-label{position:absolute;bottom:33px;left:30px;color:white;font-family:var(--serif);font-size:18px;letter-spacing:.12em;text-shadow:0 1px 10px #000;writing-mode:vertical-rl}.hero-side{position:absolute;right:1.5%;top:45%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.18em;color:var(--muted)}.promise-strip{width:calc(100% - 8.2%);margin:24px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;display:grid;grid-template-columns:repeat(3,1fr);text-align:center;font-size:14px;letter-spacing:.05em}.promise-strip span+span{border-left:1px solid var(--line)}.promise-strip span:before{content:'✧';color:var(--accent);margin-right:16px}.concept{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:108px}.concept>div:last-child{padding-top:18px}.concept p:not(.eyebrow){font-size:15px;line-height:2.25}.text-link{display:inline-flex;gap:35px;justify-content:space-between;align-items:center;border-bottom:1px solid #a8a99b;padding-bottom:9px;font-size:14px}.text-link span{font-size:19px}.philosophy{background:var(--tint)}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.split figure img{height:580px;border-radius:2px 2px 2px 72px}.split p:not(.eyebrow):not(.note){font-size:15px;color:#62675d;line-height:2.1}.number-list{list-style:none;padding:0;margin:30px 0}.number-list li{display:flex;gap:24px;margin-bottom:22px}.number-list li>span{font-family:Georgia,serif;font-size:17px;color:var(--accent);padding-top:3px}.number-list h3{font-family:var(--serif);font-size:18px;margin-bottom:5px}.number-list p{margin-bottom:0;font-size:14px!important}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:30px}.section-heading h2{margin-bottom:0}.section-heading .text-link{margin-bottom:7px}.food-feature{position:relative}.food-feature>img{height:520px;object-position:center 52%;border-radius:2px}.food-caption{position:absolute;left:40px;top:40px;padding:30px 35px;background:rgba(255,254,250,.95);width:280px}.food-caption h3{font-family:var(--serif);font-size:26px;line-height:1.8;margin-block:15px}.food-caption p{font-size:14px;line-height:2.1}.food-caption .small{font-size:11px}.center-heading{text-align:center;margin-bottom:45px}.section-desc{color:var(--muted)}.price-section{background:#efeee7}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:920px;margin:auto}.price-card{background:var(--white);padding:40px 44px;border:1px solid var(--line);position:relative}.price-card.featured{border-color:var(--accent)}.price-card .eyebrow{margin-bottom:18px}.price-card h3{font-family:var(--serif);font-size:25px;margin-bottom:20px}.price-card>p:not(.eyebrow){font-size:14px;margin-bottom:5px}.price{font-family:Georgia,serif;font-size:49px;letter-spacing:.025em;line-height:1.5}.price span{font-family:var(--sans);font-size:12px;margin-left:8px;letter-spacing:0}.price-card ul{list-style:none;border-top:1px solid var(--line);padding:24px 0 0;margin:22px 0 30px;font-size:14px}.price-card li{margin:6px 0}.price-card li:before{content:'✓';color:var(--accent);margin-right:12px}.price-card .button{width:100%}.price-label{position:absolute;right:-1px;top:-14px;background:var(--accent);color:white;padding:3px 15px;font-size:11px}.price-section .note{max-width:920px;margin-inline:auto}.area-section{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}.area-section>div>p:not(.eyebrow){font-size:15px}.area-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 0}.area-chips{display:flex;flex-wrap:wrap;gap:12px}.area-chips span{font-family:var(--serif);border:1px solid var(--line);background:var(--white);font-size:20px;padding:9px 18px}.journal-section{background:#efeee7}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.article-art{aspect-ratio:1.65;background:#dedccd;position:relative;overflow:hidden;padding:23px;color:#5d6658}.article-art>span{font-family:Georgia,serif;font-size:11px;letter-spacing:.17em}.article-art strong{position:absolute;right:20px;bottom:-28px;font-family:Georgia,serif;font-size:135px;font-weight:400;opacity:.21;line-height:1.3}.article-art em{position:absolute;left:23px;bottom:25px;font-family:var(--serif);font-style:normal;font-size:19px;writing-mode:vertical-rl;letter-spacing:.2em}.article-art.away{background:#e4d9cc;color:#84644d}.article-art.weekly{background:#d8ddda;color:#53645a}.article-meta{font-size:11px;color:var(--muted);margin:19px 0 10px;display:flex;justify-content:space-between;gap:10px}.article-card h3{font-family:var(--serif);font-size:21px;margin-bottom:13px}.article-card>p{font-size:14px;color:var(--muted);line-height:1.9}.read-more{font-size:12px;border-bottom:1px solid var(--line);display:block;padding-bottom:9px}.read-more span{float:right}.article-card:hover .article-art{filter:brightness(.97)}.faq-section{display:grid;grid-template-columns:1fr 1.7fr;gap:60px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;padding:23px 0;display:flex;gap:20px;align-items:baseline;list-style:none;font-size:15px}summary::-webkit-details-marker{display:none}.q{font-family:Georgia,serif;color:var(--accent);font-size:21px}.plus{margin-left:auto;font-size:20px;color:var(--muted);flex-shrink:0}details[open] .plus{transform:rotate(45deg)}.faq-answer{padding:0 30px 24px 37px;font-size:14px;color:#62675d}.recruit-band{padding:40px 48px;margin-bottom:90px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);gap:20px}.recruit-band h2{font-size:26px;margin-bottom:8px}.recruit-band p{font-size:14px;margin-bottom:0}.recruit-band .eyebrow{font-size:11px;margin-bottom:10px}.cta{background:#eae7dc;padding:65px max(6%,calc((100vw - 1160px)/2));display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{font-size:29px;margin-bottom:17px}.cta p:not(.eyebrow){font-size:14px;margin-bottom:0}.cta .eyebrow{font-size:11px}.cta .button{flex-shrink:0}.footer{padding:64px 5% 25px;background:#f5f3ed}.footer-top{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:50px;padding-bottom:45px}.footer-top>div>p{font-size:13px;color:var(--muted);margin-top:25px}.footer .brand{font-size:32px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;align-content:start;font-size:13px;padding-top:5px}.footer-area .eyebrow{margin-top:0!important}.footer-area>p:not(.eyebrow){font-size:12px!important}.footer-area>span{font-size:11px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;font-size:11px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.breadcrumbs{display:flex;gap:13px;color:var(--muted);font-size:12px;margin-bottom:45px}.page-intro{padding-top:25px;padding-bottom:65px}.page-intro h1{font-size:43px;line-height:1.7;letter-spacing:.06em;margin-bottom:24px}.page-intro>p:last-child{max-width:760px;color:#64685d;margin-bottom:0}.page-intro .eyebrow{margin-bottom:14px}.body-section{padding-block:70px}.body-section h2{font-size:29px}.inset{background:var(--tint)}.content-width{max-width:850px;margin:auto}.text-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.text-columns article{border-top:1px solid var(--line);padding-top:25px}.text-columns h3{font-family:var(--serif);font-size:22px}.text-columns p{font-size:15px}.large-no{font-family:Georgia,serif;color:var(--accent);font-size:27px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.timeline article{border-top:1px solid var(--line);padding-top:20px}.timeline h3{font-family:var(--serif);font-size:21px;margin:10px 0}.timeline p{font-size:14px}.info-table{width:100%;border-collapse:collapse;font-size:15px}.info-table th,.info-table td{text-align:left;padding:22px 20px;border-bottom:1px solid var(--line);vertical-align:top}.info-table th{font-weight:500;width:25%;background:var(--tint)}.info-table td{background:var(--white)}.notice{border-left:3px solid var(--accent);padding:17px 23px;background:var(--tint);font-size:14px;margin:20px 0 30px}.sample-label{display:inline-block;padding:3px 12px;font-size:12px;background:var(--tint);color:var(--accent);margin-bottom:18px}.example-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.example-layout img{height:430px}.example-layout h2{font-size:29px}.menu-list{padding-left:20px;font-size:15px}.sample-metrics{display:flex;flex-wrap:wrap;gap:20px;padding-block:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.sample-metrics strong{font-family:var(--serif);font-size:22px;font-weight:400}.journal-intro{padding-bottom:45px}.article-layout{display:grid;grid-template-columns:220px 1fr;gap:65px;align-items:start}.article-sidebar{position:sticky;top:140px;font-size:14px}.article-sidebar a{display:block;border-top:1px solid var(--line);padding:13px 0}.article-body{max-width:760px}.article-body h2{font-size:27px;margin-top:50px;scroll-margin-top:130px}.article-body>p{line-height:2.1}.article-body .answer-box{padding:30px;background:var(--tint);border-top:2px solid var(--accent)}.answer-box .eyebrow{margin-bottom:12px}.article-body ul{padding-left:22px}.article-byline{font-size:13px;color:var(--muted);margin-top:24px}.contact-layout{display:grid;grid-template-columns:280px 1fr;gap:85px;padding-bottom:90px}.contact-aside{font-size:14px}.contact-aside h2{font-size:25px}.contact-aside ul{padding-left:20px}.form-panel{max-width:700px}.field{margin-bottom:26px}.field label,.field legend{display:block;font-size:15px;font-weight:500;margin-bottom:10px}.required,.optional{display:inline-block;font-size:11px;font-weight:400;margin-left:10px;padding:1px 7px;vertical-align:middle}.required{background:#eee0d9;color:var(--accent)}.optional{background:var(--tint);color:var(--muted)}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;border:1px solid #c7c8bb;background:var(--white);border-radius:2px;min-height:52px;padding:12px 14px;color:var(--ink);font-size:16px}textarea{resize:vertical;min-height:150px}.field-help{font-size:12px;color:var(--muted);margin-top:7px;margin-bottom:0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.check-label{display:flex;align-items:start;gap:12px;font-size:14px}.check-label input{width:18px;height:18px;accent-color:var(--accent);margin-top:5px;flex-shrink:0}.check-label a{text-decoration:underline}.form-actions{display:flex;gap:16px;margin-top:30px;flex-wrap:wrap}.form-panel [hidden]{display:none!important}.confirmation{background:var(--white);border:1px solid var(--line);padding:30px}.confirmation h2{font-size:26px}.confirmation dl{margin:20px 0}.confirmation dt{font-size:13px;color:var(--muted);margin-top:20px}.confirmation dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.privacy h2{font-size:25px;margin-top:35px}.privacy p{font-size:15px}.recruit-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.recruit-hero img{height:440px}.recruit-hero h2{font-size:34px}::selection{background:#dfc7b7;color:#342f2b}
@media(min-width:1600px){.hero{max-width:1550px;margin:auto}.hero-copy{padding-top:75px}.hero-visual{min-height:665px}.header{padding-inline:max(4%,calc((100vw - 1440px)/2))}}
@media(max-width:1100px){.header{height:88px;padding-inline:30px}.header nav{gap:18px;font-size:12px}.header nav .nav-contact{padding:14px;font-size:12px;gap:12px}.brand{font-size:29px}.hero{padding-inline:30px}.hero-copy{padding-left:10px;padding-top:48px}.hero h1{font-size:36px;letter-spacing:.04em}.hero-kicker{font-size:12px}.hero-area span{display:block;margin-left:0}.hero-visual{min-height:565px}.wrap{width:calc(100% - 72px)}.concept,.split{gap:50px}.price-card{padding:36px 30px}.cta{padding-inline:36px}.footer-top{gap:25px}.area-section{gap:40px}.contact-layout{gap:45px;grid-template-columns:230px 1fr}}
@media(max-width:820px){.header{height:80px;padding-inline:24px}.header nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--paper);padding:24px;box-shadow:0 12px 20px #3331;border-top:1px solid var(--line);max-height:calc(100dvh - 80px);overflow:auto}.header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:4px}.header nav a{font-size:15px;padding:12px 0}.header nav .nav-contact{margin:10px 0;font-size:14px;padding:15px 20px}.mobile-recruit{display:block!important}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);width:44px;height:44px;padding:11px}.menu-toggle>span:not(.sr-only){height:1px;background:var(--ink);display:block;margin:6px 0}.hero{grid-template-columns:1fr 1fr;padding:18px 24px 30px;min-height:0}.hero-copy{padding:30px 10px 20px 0}.hero h1{font-size:30px}.hero-desc{font-size:13px}.hero .eyebrow{font-size:10px}.hero-kicker{font-size:11px}.hero-visual{min-height:520px}.hero-copy .button{font-size:12px;padding:12px 16px;gap:12px}.hero-area{margin-top:24px}.hero-area span{font-size:10px}.hero-side{display:none}.hero-photo-label{left:18px;font-size:14px}.promise-strip{font-size:12px}.promise-strip span:before{margin-right:6px}.wrap{width:calc(100% - 48px)}.section{padding-block:65px}h2{font-size:29px}.concept{gap:32px}.concept p:not(.eyebrow){font-size:14px}.split{gap:35px}.split figure img{height:550px}.split h2{font-size:28px}.split .number-list{margin-block:20px}.number-list li{gap:15px}.number-list p{font-size:12px!important}.split p:not(.eyebrow):not(.note){font-size:14px}.article-grid{gap:20px}.article-card h3{font-size:18px}.article-card>p{font-size:13px}.article-art{padding:15px}.article-art em{left:15px;bottom:15px;font-size:16px}.article-art strong{font-size:100px}.article-art>span{font-size:9px}.article-meta{display:block;font-size:10px}.article-meta>span{display:block}.section-heading{gap:20px}.section-heading .text-link{font-size:12px;gap:15px}.price-card{padding:30px 24px}.price-card h3{font-size:21px}.price{font-size:40px}.price-card .button{font-size:12px;gap:15px}.price-card ul{font-size:12px}.area-chips span{font-size:18px;padding:7px 12px}.faq-section{grid-template-columns:1fr 1.6fr;gap:30px}.faq-section h2{font-size:27px}.recruit-band{padding:30px;margin-bottom:60px}.recruit-band h2{font-size:23px}.cta{display:block;padding:50px 24px}.cta .button{margin-top:25px}.footer-top{grid-template-columns:1fr 1.4fr}.footer-area{grid-column:1/-1}.footer-area>p{margin-top:10px!important;margin-bottom:10px}.page-intro h1{font-size:36px}.text-columns{gap:22px}.timeline{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr}.article-sidebar{position:static;display:flex;gap:20px;flex-wrap:wrap}.article-sidebar .eyebrow{width:100%;margin-bottom:0}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-aside{max-width:650px}.contact-aside h2{display:none}.example-layout{gap:30px}.example-layout img{height:450px}.recruit-hero{gap:35px}.recruit-hero h2{font-size:28px}}
@media(max-width:600px){.mobile-only{display:block!important}.header{height:76px;padding-inline:20px}.brand{font-size:29px}.brand span{font-size:9px;padding-top:7px}.header nav{top:76px}.hero{display:flex;flex-direction:column;padding:15px 20px 20px}.hero-copy{padding:28px 4px 30px}.hero .eyebrow{font-size:11px;margin-bottom:18px}.hero-kicker{font-size:12px}.hero h1{font-size:38px;letter-spacing:.04em;line-height:1.7;margin-bottom:22px}.hero-desc{font-size:14px;line-height:2}.hero-copy .button{font-size:14px;padding:13px 22px;gap:30px}.hero-area{margin-top:24px;font-size:11px}.hero-area span{display:inline;font-size:10px;margin-left:8px}.hero-visual{min-height:0;aspect-ratio:1.25}.hero-visual img{border-radius:2px 2px 50px 2px}.hero-photo-label{bottom:20px;left:20px;font-size:15px}.hero-visual figcaption{bottom:-25px;font-size:10px}.promise-strip{margin-top:32px;width:calc(100% - 40px);font-size:11px;gap:0;padding-block:17px}.promise-strip span{padding-inline:9px;line-height:1.8}.promise-strip span:before{display:none}.wrap{width:calc(100% - 40px)}.section{padding-block:56px}.eyebrow{font-size:11px;margin-bottom:17px}h2{font-size:28px;line-height:1.8}.concept{grid-template-columns:1fr;gap:4px;padding-block:65px}.concept>div:last-child{padding-top:0}.concept p:not(.eyebrow){font-size:15px}.concept br{display:none}.concept h2 br{display:block}.split{grid-template-columns:1fr;gap:34px}.split figure img{height:340px;border-radius:2px 2px 2px 45px}.split h2{font-size:29px}.split p:not(.eyebrow):not(.note){font-size:15px}.number-list p{font-size:14px!important}.section-heading{display:block;margin-bottom:28px}.section-heading .text-link{margin-top:15px;font-size:14px}.food-feature>img{height:330px;object-position:50%}.food-caption{position:static;width:auto;padding:27px;background:var(--tint)}.food-caption h3{font-size:25px}.food-caption h3 br,.food-caption p br{display:none}.food-caption p{margin-bottom:10px}.food-feature figcaption{font-size:10px}.center-heading{text-align:left;margin-bottom:35px}.section-desc{font-size:14px}.pricing-grid{grid-template-columns:1fr;gap:34px}.price-card{padding:32px}.price-card h3{font-size:25px}.price{font-size:48px}.price-card ul{font-size:14px}.price-card .button{font-size:14px}.price-label{font-size:10px}.area-section{grid-template-columns:1fr;gap:10px}.area-panel{padding-block:25px}.area-chips span{font-size:19px;padding:7px 15px}.article-grid{grid-template-columns:1fr;gap:35px}.article-art{aspect-ratio:2.1;padding:23px}.article-art strong{font-size:140px;bottom:-32px;right:30px}.article-art em{font-size:20px;left:25px;bottom:22px}.article-art>span{font-size:11px}.article-card h3{font-size:23px}.article-card h3 br{display:none}.article-meta{display:flex;font-size:12px}.article-card>p{font-size:14px}.article-card .read-more{font-size:14px}.faq-section{grid-template-columns:1fr;gap:25px}.faq-section h2 br{display:none}summary{font-size:14px;gap:15px;padding-block:20px}.faq-answer{padding-left:30px}.recruit-band{display:block;padding:28px;margin-bottom:50px}.recruit-band h2{font-size:24px}.recruit-band .text-link{margin-top:25px}.cta h2{font-size:27px}.cta p:not(.eyebrow){font-size:13px}.cta .button{font-size:13px}.footer{padding:48px 24px 25px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-top>div>p{margin-bottom:0}.footer-links{font-size:13px;gap:15px 20px}.footer-area{grid-column:auto}.footer-bottom{flex-direction:column;gap:15px;font-size:10px}.page-intro{padding-top:20px;padding-bottom:40px}.breadcrumbs{font-size:11px;margin-bottom:30px}.page-intro h1{font-size:31px;line-height:1.7}.page-intro>p:last-child{font-size:15px}.body-section{padding-block:45px}.body-section h2{font-size:27px}.text-columns{grid-template-columns:1fr;gap:20px}.timeline{gap:20px}.timeline h3{font-size:19px}.timeline p{font-size:13px}.info-table th,.info-table td{display:block;width:100%;padding:16px 18px}.info-table th{padding-block:12px;border-bottom:none;font-size:14px}.info-table td{font-size:14px}.example-layout{grid-template-columns:1fr;gap:25px}.example-layout img{height:320px}.sample-metrics{font-size:13px;gap:16px}.sample-metrics strong{font-size:21px}.recruit-hero{grid-template-columns:1fr;gap:25px}.recruit-hero img{height:300px}.article-layout{gap:30px}.article-sidebar{gap:10px 20px}.article-sidebar a{font-size:13px}.article-body h2{font-size:25px}.article-body>p{font-size:15px}.article-body .answer-box{padding:24px}.article-body .answer-box p:last-child{font-size:15px}.contact-layout{padding-bottom:55px}.field-grid{grid-template-columns:1fr;gap:0}.confirmation{padding:22px}.form-actions .button{font-size:13px}.notice{font-size:13px}.text-link{font-size:14px}.note{font-size:12px}}
fieldset.conditional{border:0;margin:0;padding:0;min-width:0}.confirmation{scroll-margin-top:125px}.form-panel>section:focus{outline:none}
/* Readable Japanese type and resilient content widths across screen sizes. */
.hero-copy,.split>*,.concept>*,.article-card,.price-card,.area-section>*,.faq-section>*,.contact-layout>*{min-width:0}
.article-art em{writing-mode:horizontal-tb;max-width:75%;font-size:19px;line-height:1.8;letter-spacing:.06em;bottom:26px}
.hero-desc,.concept p:not(.eyebrow),.split p:not(.eyebrow):not(.note),.text-columns p,.section-desc,.article-body>p,.privacy p,.area-section>div>p:not(.eyebrow){font-size:16px}
.article-card>p,.number-list p,.timeline p,.faq-answer,.info-table,.footer-links,.check-label,.contact-aside,.food-caption p,.price-card ul,.read-more{font-size:14px!important}
.header nav{font-size:14px}.hero-area,.hero-area span,.brand span,.hero-side,.hero-visual figcaption,.footer-bottom,.footer-area>span,.footer-area>p:not(.eyebrow),.article-meta,.article-art>span,.food-caption .small,.price-label,.required,.optional{font-size:12px!important}
.hero-area{letter-spacing:.04em}.hero-area span{margin-left:9px}.brand span{letter-spacing:.08em}.price-label{top:-15px}.hero-kicker{font-size:14px}
@media(min-width:821px) and (max-width:1100px){.header nav{gap:14px;font-size:12px}.header nav .nav-contact{padding:12px;gap:8px}.brand{font-size:27px}}
@media(max-width:600px){.hero h1{font-size:clamp(28px,9.4vw,38px);white-space:normal}.hero-area span{display:block;margin-left:0}.hero-kicker{font-size:13px}.hero-desc{font-size:15px}.brand span{font-size:10px!important}.article-art em{max-width:70%;font-size:20px}.hero-visual figcaption{font-size:11px!important}.price-card .button{padding-inline:18px}.hero-copy{padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Four plans, in the existing KURIYA palette. */
.subscription-offer{display:grid;grid-template-columns:1fr auto;gap:4px 30px;align-items:center;padding:25px 32px;margin-bottom:40px;border:1px solid #b99180;background:#f8f0e7;color:var(--accent)}
.offer-eyebrow{font-family:var(--serif);font-size:16px;letter-spacing:.04em}
.subscription-offer p{font-size:15px;margin:5px 0 0;line-height:1.9}
.offer-deadline{font-weight:600;border-bottom:1px solid var(--accent);margin-inline:3px}
.subscription-offer strong{font-family:var(--serif);font-size:22px;font-weight:500;white-space:nowrap}
.subscription-offer strong>span{font-family:Georgia,serif;font-size:48px;letter-spacing:.01em;margin-inline:5px}
.subscription-offer .offer-terms{grid-column:1/-1;font-size:12px;color:#765e50}
.pricing-grid.four-plans{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;gap:18px;align-items:stretch}
.four-plans .price-card{padding:30px 22px 24px;display:flex;flex-direction:column}
.four-plans .price-card .eyebrow{margin-bottom:12px}
.four-plans .price-card h3{font-size:22px;margin-bottom:12px}
.four-plans .price-card .plan-frequency{font-size:14px;margin-bottom:13px}
.four-plans .price{font-size:37px;line-height:1.35;letter-spacing:.005em}
.four-plans .price>span{display:block;margin:6px 0 0;font-size:12px;line-height:1.6}
.four-plans .price-card .per-visit{font-size:13px;margin-top:14px;line-height:1.8}
.per-visit>span{display:inline-block;font-size:12px;color:var(--accent);border:1px solid #cbb5a9;padding:0 6px;margin-top:7px}
.four-plans .price-card ul{padding-top:18px;margin-top:20px;margin-bottom:25px;font-size:14px;flex:1}
.four-plans .price-card li{padding-left:16px;position:relative;line-height:1.9;margin-bottom:9px}
.four-plans .price-card li:before{position:absolute;left:0;margin:0;font-size:12px}
.four-plans .price-card .button{font-size:14px;padding:12px 12px;gap:10px;letter-spacing:0}
.four-plans .price-label{padding:3px 16px;font-size:12px}
.pricing-footnote{font-size:14px;line-height:2;margin-top:22px;color:#62675d}
.pricing-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:26px}
.comparison-section{margin-top:60px;scroll-margin-top:125px}
.comparison-section>h3{font-family:var(--serif);font-size:25px;margin-bottom:18px}
.comparison-hint{font-size:12px;color:var(--muted);margin-bottom:12px;display:none}
.comparison-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);background:var(--white);overscroll-behavior-inline:contain}
.comparison-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.plan-comparison{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.8}
.plan-comparison th,.plan-comparison td{padding:18px 15px;vertical-align:middle;border-bottom:1px solid var(--line);text-align:center}
.plan-comparison th{font-weight:500}
.plan-comparison tr>*:first-child{text-align:left;width:25%;min-width:185px;background:var(--white);position:sticky;left:0;z-index:1;border-right:1px solid var(--line)}
.plan-comparison thead th{height:98px;background:var(--tint);min-width:155px}
.plan-comparison thead th:first-child{background:var(--tint)}
.plan-comparison .recommended-column{background:#f5eae1}
.plan-comparison thead .recommended-column{background:var(--accent);color:white}
.table-recommendation{display:block;font-size:12px;margin-bottom:5px}
.plan-comparison tbody tr:last-child>*{border-bottom:0}
.included{color:var(--accent);font-size:19px}.not-included{color:#77796c}
.subscription-rules{scroll-margin-top:125px;max-width:1000px;margin:auto}
.subscription-rules dl{margin:30px 0 0;border-top:1px solid var(--line)}
.subscription-rules dl>div{display:grid;grid-template-columns:190px 1fr;gap:25px;padding:23px 0;border-bottom:1px solid var(--line)}
.subscription-rules dt{font-size:15px;font-weight:500}.subscription-rules dd{margin:0;font-size:16px;min-width:0}
@media(max-width:1100px){.pricing-grid.four-plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.four-plans .price-card{padding:32px}.four-plans .price{font-size:43px}.four-plans .price-card h3{font-size:25px}.four-plans .price-card .button{padding-inline:20px}.comparison-hint{display:block}}
@media(max-width:700px){.subscription-offer{grid-template-columns:1fr;padding:23px;gap:8px}.subscription-offer strong{font-size:21px}.subscription-offer strong>span{font-size:44px}.subscription-offer p{font-size:14px}.subscription-offer .offer-terms{grid-column:auto}.subscription-rules dl>div{grid-template-columns:1fr;gap:10px}.plan-comparison tr>*:first-child{min-width:135px;width:135px;max-width:135px}.plan-comparison th,.plan-comparison td{padding:15px 12px}.plan-comparison{min-width:795px}.comparison-section>h3{font-size:23px}}
@media(max-width:600px){.pricing-grid.four-plans{grid-template-columns:minmax(0,1fr);gap:30px}.four-plans .price-card{padding:30px}.four-plans .price{font-size:45px}.four-plans .price-card .per-visit{font-size:14px}.per-visit>span{margin:0 0 0 6px}.subscription-offer{margin-bottom:32px}.pricing-links{gap:19px}.pricing-links .text-link{font-size:14px;gap:20px}.comparison-section{margin-top:42px}.subscription-rules dd{font-size:15px}.pricing-footnote{font-size:14px}}

.article-thumb img{aspect-ratio:1.65;height:auto;object-fit:cover;border-radius:2px;transition:filter .2s}
.article-card:hover .article-thumb img{filter:brightness(.96)}
.article-thumb figcaption{font-size:12px;line-height:1.8;padding-top:6px}
.journal-cover{margin-bottom:15px}.journal-cover img{height:clamp(260px,37vw,460px);border-radius:2px 2px 48px 2px;object-position:center}
.service-gallery{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-bottom:65px}
.service-gallery img{height:350px;object-fit:cover;border-radius:2px}
.service-gallery figure:first-child img{border-bottom-left-radius:50px}
.service-gallery figcaption{text-align:left;padding-top:14px;font-size:14px;color:var(--ink)}
.service-gallery figcaption span{display:block;color:var(--muted);font-size:12px;margin-top:3px}
@media(max-width:820px){.service-gallery{gap:20px;margin-bottom:45px}.service-gallery img{height:290px}.service-gallery figcaption{font-size:13px}}
@media(max-width:600px){.article-thumb img{aspect-ratio:1.65}.journal-cover img{height:auto;aspect-ratio:1.5;border-bottom-right-radius:30px}.service-gallery{grid-template-columns:1fr;gap:26px;margin-bottom:40px}.service-gallery img{height:auto;aspect-ratio:1.5}.service-gallery figure:first-child img{border-bottom-left-radius:35px}.service-gallery figcaption{font-size:14px}}
