@charset "UTF-8";
:root{--ink:#193d34;--text:#34483f;--muted:#67766c;--paper:#fbfbf7;--tint:#f0f2ea;--line:#cbd2c8;--gold:#ac8c43;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font:16px/1.9 var(--sans)}img{max-width:100%}a{color:var(--ink);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);font-family:var(--serif);font-weight:500}h1{font-size:clamp(36px,4vw,58px);line-height:1.55;letter-spacing:.035em}h2{font-size:clamp(28px,3vw,40px);line-height:1.65;letter-spacing:.025em}h3{font-size:25px;line-height:1.65}p{margin-bottom:22px}.wrap{max-width:1180px;padding-inline:40px;margin-inline:auto}.section{padding-block:88px}.tinted{background:var(--tint)}.eyebrow{font:11px/1.6 var(--sans);font-weight:700;letter-spacing:.16em;color:var(--muted);margin-bottom:22px}.english{font:16px/1.8 Georgia,serif;color:var(--muted)}.fine,.caption{font-size:13px;line-height:1.9;color:var(--muted)}.caption{margin-top:28px}.text-link{font-size:14px;font-weight:700;display:inline-block;padding-block:7px}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:var(--ink);color:white;padding:16px 25px;font-size:14px;font-weight:700;line-height:1.6;border:1px solid var(--ink);transition:background .15s}.button:hover{background:#285747;text-decoration:none}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.skip{position:absolute;left:12px;top:-100px;padding:10px;background:#fff;z-index:10}.skip:focus{top:12px}
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{max-width:1360px;margin:auto;padding:20px 40px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:block;flex-shrink:0;width:315px}.logo-frame{display:block;position:relative;overflow:hidden;aspect-ratio:1960/460}.logo-frame img{position:absolute;top:-39%;left:0;width:100%;height:auto;max-width:none}.brand-en{display:none}.site-header nav{display:flex;gap:32px;align-items:center;font-size:13px;white-space:nowrap}.site-header nav a{padding:12px 0}.site-header nav a[aria-current]{border-bottom:2px solid var(--ink);font-weight:700}
.hero{position:relative;max-width:1800px;margin:auto;overflow:hidden}.hero-art{display:block;width:100%;height:700px;object-fit:cover;object-position:center}.hero-copy{position:absolute;top:48px;left:max(5%,calc((100% - 1100px)/2));max-width:640px;width:51%;padding:12px}.hero-copy h1{font-size:clamp(40px,4vw,62px);font-weight:600;line-height:1.55;margin-bottom:20px}.hero-copy .eyebrow{color:#3e584d;margin-bottom:25px}.hero-lead{display:inline-block;font-size:14px;line-height:1.9;padding:11px 16px;background:rgba(251,251,247,.94);margin-bottom:22px}.hero-actions{display:flex;gap:20px;align-items:center}.hero-secondary{font-size:13px;font-weight:700;background:rgba(251,251,247,.94);padding:13px 17px}.motto-line{display:flex;gap:25px;justify-content:space-between;align-items:center;padding-block:25px;border-bottom:1px solid var(--line)}.motto-line strong{font:19px/1.6 var(--serif);letter-spacing:.14em}.motto-line p{margin:0;font-size:13px;color:var(--muted)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:38px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:12px}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px}.article{border-bottom:1px solid var(--line);padding-bottom:25px}.article-image{display:block;background:#f3eedf;overflow:hidden}.article-image img{display:block;width:100%;height:auto;aspect-ratio:1.91;object-fit:contain;transition:opacity .2s}.article-image:hover img{opacity:.9}.article h3{margin:15px 0;font-size:27px}.article p{font-size:15px;line-height:1.9}.article .article-meta{font-size:11px;color:var(--muted);margin:22px 0 10px;letter-spacing:.06em}.article-meta span{margin-left:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.prose p{max-width:600px}.home-about{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.home-about img{display:block;width:100%;height:auto}.home-about h2{font-size:36px}.home-about p{font-size:15px}.page-intro{padding-block:70px 60px;border-bottom:1px solid var(--line)}.page-intro h1{margin-bottom:22px}.page-intro>p:last-child{margin-bottom:0}.journal-section{padding-top:50px}.resource-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:center}.resource-feature>div>p{max-width:630px}.sheet-visual{background:#fffdf7;border:1px solid #c6cbbf;box-shadow:14px 14px 0 #e0e4d7;padding:35px 40px;max-width:330px;margin:auto;display:flex;flex-direction:column;align-items:flex-start;color:var(--ink)}.sheet-visual span{font:10px Arial;letter-spacing:.2em;color:var(--muted);margin-bottom:22px}.sheet-visual b{font:26px/1.6 var(--serif)}.sheet-visual strong{font:100px/1.2 Georgia;color:var(--gold)}.sheet-visual small{font-size:11px;margin-top:25px}.reading-links{display:grid;grid-template-columns:1fr 1fr;gap:70px}.reading-links h2{font-size:29px}.reading-links>div{border-top:1px solid var(--line);padding-top:25px}.wide-image{padding-top:42px}.wide-image img{display:block;width:100%;height:auto;aspect-ratio:2.3;object-fit:cover;object-position:center 55%}.question-list{margin-top:45px}.question-list article{display:grid;grid-template-columns:65px 1fr;gap:30px;padding:30px 0;border-top:1px solid var(--line)}.question-list article>span{font:28px/1.6 Georgia;color:var(--gold)}.question-list h3{margin-bottom:10px}.question-list p{max-width:760px;margin-bottom:10px;font-size:15px}.question-list small{font-size:11px;letter-spacing:.1em;color:var(--muted)}.process{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:45px 0 0}.process li{border-top:2px solid var(--ink);padding-top:18px}.process span{font:12px Arial;color:var(--gold)}.process h3{margin:13px 0}.process p{font-size:14px;line-height:1.8}.faq{padding-top:15px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;font-size:16px;padding:4px 0}.faq details p{font-size:15px;max-width:850px;margin:18px 0 0}
.philosophy-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.philosophy-section img{width:100%;max-width:440px;margin:auto;display:block}.philosophy-section p{max-width:510px}.motto{font-size:60px;line-height:1.6;letter-spacing:.16em}.representative{display:grid;grid-template-columns:340px 1fr;gap:90px;align-items:center}.portrait{width:100%;height:auto;display:block}.representative h2{font-size:36px;margin-bottom:10px}.representative-role{font-size:13px;color:var(--muted)}.representative .base{font-size:14px;margin-top:25px}.privacy-content{max-width:900px;padding-top:45px}.privacy-content h2{font-size:26px;margin:38px 0 15px}.privacy-content h2:first-child{margin-top:0}.privacy-content li{margin-bottom:16px}.privacy-content a:not(.text-link){text-decoration:underline}
.contact-band{background:var(--ink);color:#f3f4ec;padding:65px 0}.contact-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center}.contact-band h2{color:#fff;font-size:32px}.contact-band .eyebrow{color:#c6d3c4}.contact-band p{font-size:14px}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.plain-link{color:white;font-size:13px}.contact-band .fine{font-size:12px;color:#d0dbd0;margin:0}.site-footer{padding-block:35px 25px}.footer-top{display:flex;justify-content:space-between;gap:35px}.footer-top strong{font:19px/1.6 var(--serif);color:var(--ink)}.footer-top p{font:13px var(--serif);margin-top:10px;color:var(--muted)}.footer-nav{display:flex;gap:25px;align-items:start;font-size:12px;padding-top:5px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted)}.footer-bottom small{font-size:10px}.mobile-only{display:none}
@media(max-width:1050px){.header-inner{padding-inline:28px;gap:20px}.brand{width:280px}.site-header nav{gap:20px}.hero-art{height:680px}.hero-copy{left:4%;width:57%;top:35px}.hero-copy h1{font-size:46px}.hero-copy .eyebrow{font-size:10px}.hero-lead{font-size:13px}.hero-actions{gap:12px}.hero-actions .button{padding:14px 17px}.hero-secondary{padding:12px;font-size:12px}.split{gap:45px}.home-about{gap:40px}.resource-feature{gap:55px}.representative{grid-template-columns:280px 1fr;gap:55px}.contact-inner{gap:40px}}
@media(max-width:760px){body{font-size:15px}.wrap{padding-inline:24px}.section{padding-block:55px}h1{font-size:34px}h2{font-size:29px}.header-inner{display:block;padding:18px 24px 13px}.brand{width:290px;max-width:100%;margin:auto}.site-header nav{justify-content:center;gap:20px;font-size:12px;flex-wrap:wrap;margin-top:14px}.site-header nav a{padding:7px 0}.hero{display:flex;flex-direction:column}.hero-copy{position:static;order:0;width:100%;max-width:none;padding:35px 24px 30px}.hero-copy h1{font-size:37px;line-height:1.55;margin-bottom:18px}.hero-copy .eyebrow{font-size:9px;margin-bottom:20px;letter-spacing:.1em}.hero-lead{padding:0;background:transparent;font-size:14px}.hero-lead br{display:none}.hero-art{order:1;height:330px;object-position:75% center}.hero-actions{gap:20px;flex-wrap:wrap}.hero-actions .button{font-size:13px;padding:14px 18px}.hero-secondary{background:transparent;padding:10px 0;font-size:12px}.motto-line{display:block;padding-block:20px}.motto-line p{margin-top:8px;font-size:12px}.motto-line strong{font-size:18px}.section-heading{display:block;margin-bottom:28px}.section-heading .text-link{margin-top:12px}.article-grid,.split,.home-about,.resource-feature,.reading-links,.philosophy-section,.representative,.contact-inner{grid-template-columns:1fr;gap:35px}.article-grid{gap:36px}.article h3{font-size:25px}.article-meta span{display:block;margin:5px 0 0}.article p{font-size:14px}.home-about h2{font-size:30px}.page-intro{padding-block:42px 36px}.page-intro h1{font-size:33px}.page-intro p{font-size:14px}.page-intro p br{display:none}.journal-section{padding-top:35px}.resource-feature{gap:42px}.sheet-visual{padding:30px;width:270px}.reading-links{gap:35px}.wide-image{padding-top:26px}.wide-image img{aspect-ratio:1.35;object-position:65% center}.question-list{margin-top:28px}.question-list article{grid-template-columns:32px 1fr;gap:18px;padding:25px 0}.question-list article>span{font-size:23px}.question-list h3{font-size:22px}.question-list p{font-size:14px}.process{grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.process h3{font-size:24px}.faq{padding-top:5px}.faq summary{font-size:14px}.faq details p{font-size:14px}.motto{font-size:47px}.philosophy-section img{max-width:300px}.representative .portrait{max-width:280px;margin:auto}.representative h2{font-size:32px}.privacy-content h2{font-size:24px}.privacy-content ul{padding-left:20px}.contact-band{padding-block:45px}.contact-band h2{font-size:27px}.contact-inner{gap:22px}.contact-actions{gap:17px}.footer-top{display:block}.footer-nav{flex-wrap:wrap;gap:20px;margin:24px 0}.footer-bottom{display:block}.footer-bottom small{display:block;margin-bottom:8px}.mobile-only{display:inline}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.philosophy-section img{height:auto}
@media(max-width:760px){.page-intro h1{font-size:28px}.contact-band h2{font-size:24px;text-wrap:balance}.contact-band h2 br{display:none}}

/* 受付の説明をフォームの直近で確認できるようにする */
.privacy-link{text-decoration:underline;text-underline-offset:4px;padding-block:8px;line-height:1.8}.contact-actions .privacy-link{font-size:12px}
