@charset "UTF-8";
:root{--paper:#f6f2e9;--white:#fffdf8;--ink:#303a32;--muted:#646a5d;--orange:#bd5d38;--orange-soft:#f0d4b9;--green:#53644e;--line:#d9d8c9;--serif:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif;--sans:"Yu Gothic","YuGothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;--mono:"Courier New",monospace}
*{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:15px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:7px}img,svg{display:block;max-width:100%}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:600}::selection{background:#eacb9d;color:#28342c}.wrap{max-width:1240px;margin:0 auto;width:calc(100% - 112px)}.mono{font-family:var(--mono);font-size:11px;letter-spacing:.07em}.skip-link{position:fixed;top:-100px;left:12px;padding:10px 20px;background:var(--white);z-index:100}.skip-link:focus{top:10px}.preparing-bar{background:var(--green);color:#fffdf4;min-height:35px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;letter-spacing:.08em}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#ebca86}.opening-date{border-left:1px solid #ffffff60;padding-left:13px;margin-left:3px;font-family:var(--mono);letter-spacing:.05em}.site-header{position:sticky;top:0;z-index:20;height:101px;display:flex;align-items:center;justify-content:space-between;padding:10px 4.1%;background:rgba(246,242,233,.96);border-bottom:1px solid transparent;transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 1px 0 var(--line)}.brand{display:block;width:145px;flex-shrink:0}.brand img{width:100%;height:auto;mix-blend-mode:multiply;opacity:.7}.site-header nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600;letter-spacing:.04em}.site-header nav>a{position:relative;padding:8px 0}.site-header nav>a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .22s}.site-header nav>a:hover:after{transform:scaleX(1)}.site-header nav .nav-contact{border:1px solid #8e9686;border-radius:100px;padding:9px 21px;min-width:116px;display:flex;justify-content:space-between;gap:26px}.site-header nav .nav-contact:after{display:none}.nav-contact:hover{background:#ebe9dd}.menu-toggle{display:none}.hero{padding-top:43px}.hero-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;padding-bottom:49px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em}.small-cross{font-size:18px;font-weight:400;margin-right:4px;color:var(--orange)}h1{font-size:clamp(42px,5.2vw,76px);font-family:var(--serif);line-height:1.48;letter-spacing:.035em;margin-top:16px}.orange{color:var(--orange)}.hero-aside{min-width:252px;font-size:13px;line-height:2.1;padding-bottom:5px}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:12px;font-weight:600;margin-top:20px}.round-arrow{border:1px solid #979e8b;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;transition:background .2s,transform .2s}.text-link:hover .round-arrow{background:var(--orange-soft);transform:translateY(3px)}.hero-figure{margin:0 23px;position:relative}.hero-figure>img{width:100%;height:auto;aspect-ratio:2.5/1;object-fit:cover}.hero-figure figcaption{display:flex;justify-content:space-between;padding:11px 0 0;font-size:10px;letter-spacing:.04em;color:var(--muted)}.figure-credit{font-family:var(--mono)}.launch-note{display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:25px 0 28px;font-size:11px}.launch-note .mono{color:var(--orange);flex-shrink:0}.launch-note p{flex:1}.launch-note p>span{padding:0 8px;color:#9a9e8d}.launch-note>a{font-size:11px;white-space:nowrap}.launch-note>a:hover{color:var(--orange)}.launch-note>a>span{padding-left:12px}.section{padding-top:112px;padding-bottom:112px}.section-label{display:flex;align-items:flex-start;gap:20px;font-size:13px;line-height:1.6;font-weight:600}.section-label p>span{display:block;font-family:var(--mono);font-weight:400;font-size:10px;letter-spacing:.05em;margin-top:5px;color:var(--muted)}.section-number{font-family:var(--mono);color:var(--orange);border-top:1px solid var(--orange);padding-top:1px;font-size:12px;line-height:1.55}.philosophy-body{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin:60px 0 63px;padding-left:110px}.philosophy-body h2{font-family:var(--serif);font-size:clamp(32px,3.7vw,52px);line-height:1.85;letter-spacing:.07em}.philosophy-text{padding-top:8px;font-size:13px;line-height:2.15}.philosophy-text p+p{margin-top:24px}.philosophy-text .lead{font-size:20px;line-height:1.9;margin-bottom:28px;font-weight:500}.underlined{text-decoration:underline;text-decoration-color:#d9aa75;text-decoration-thickness:5px;text-underline-offset:1px;text-decoration-skip-ink:none}.name-note{margin-left:110px;border-top:1px solid var(--line);padding-top:28px;display:flex;align-items:center;gap:65px}.name-word{font-family:var(--serif);font-size:35px;letter-spacing:.14em;white-space:nowrap}.name-plus{color:var(--orange);position:relative}.name-plus:before{content:"＋";font-family:var(--sans);position:absolute;left:1px;top:-16px;font-size:15px}.name-note p{font-size:12px;line-height:2;color:var(--muted)}.mobile-break{display:none}.activities{background:#ebece0}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:70px;margin-bottom:66px}.section-intro h2{font-family:var(--serif);font-size:clamp(28px,3.2vw,43px);line-height:1.75;letter-spacing:.04em}.section-intro>p{font-size:13px;margin-top:24px}.planning-label{display:inline-block;margin-top:22px;padding-left:12px;border-left:2px solid #a8af98;color:var(--muted);font-size:11px}.activity-row{border-top:1px solid #c7ccbb;padding:47px 0;display:grid;grid-template-columns:.85fr 1.65fr;gap:100px}.activity-row:last-child{padding-bottom:0}.activity-art{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:300px;justify-self:center;width:100%}.activity-art svg{width:230px;height:auto;transition:transform .5s}.activity-art span{font-family:var(--serif);font-size:17px;letter-spacing:.15em;margin-top:12px}.activity-row:hover .activity-art svg{transform:translateY(-5px)}.activity-meta{display:flex;align-items:center;justify-content:space-between;gap:15px}.activity-meta .mono{font-size:10px;color:var(--green)}.tag{font-size:10px;border:1px solid #aeb69f;border-radius:50px;padding:2px 12px;white-space:nowrap}.activity-content h3{font-family:var(--serif);font-size:30px;line-height:1.7;margin:19px 0 20px;letter-spacing:.04em}.activity-content>p{font-size:13px;line-height:2.15;max-width:590px}.activity-content details{margin-top:22px;border-top:1px solid #c7ccbb;max-width:590px}.activity-content summary{cursor:pointer;list-style:none;font-size:11px;font-weight:600;padding:15px 2px;display:flex;align-items:center;justify-content:space-between}.activity-content summary::-webkit-details-marker{display:none}.detail-icon{width:13px;height:13px;position:relative;display:block}.detail-icon:before,.detail-icon:after{content:"";position:absolute;background:var(--green);top:6px;left:0;width:13px;height:1px;transition:transform .2s}.detail-icon:after{transform:rotate(90deg)}details[open] .detail-icon:after{transform:rotate(0)}.detail-body{font-size:12px;color:var(--muted);padding:0 2px 15px}.inline-link{display:inline-block;margin-top:12px;color:var(--ink);border-bottom:1px solid #aeb69f}.local-section{background:#efe9da}.local-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center}.local-grid h2{font-family:var(--serif);font-size:36px;line-height:1.8;letter-spacing:.045em;margin:47px 0 31px}.local-grid>div>p{font-size:13px;line-height:2.2}.local-grid>div>p+p{margin-top:23px}.local-grid .local-lead{font-size:19px;line-height:1.9;font-weight:500}.relationship-art{position:relative;text-align:center;padding-top:25px}.relationship-art svg{max-width:500px;margin:auto}.relationship-art text{font-family:var(--serif);fill:var(--ink);font-size:19px}.relationship-art .svg-center{font-size:26px;letter-spacing:.08em}.relationship-art>p{font-family:var(--serif);font-size:20px!important;line-height:1.8!important;margin-top:-5px}.local-coordinate{display:block;font-size:9px;margin-top:28px;color:var(--muted)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:40px}.opening-large{font-size:79px;line-height:1.3;letter-spacing:-.075em;font-weight:400;color:var(--green)}.opening-large>span{color:var(--orange);padding:0 5px}.about-grid h2{font-family:var(--serif);font-size:26px;line-height:1.8;margin:16px 0 20px}.about-grid>div>p:last-child{font-size:13px;line-height:2.1}.organization{margin:17px 0 0;font-size:12px}.organization>div{border-top:1px solid var(--line);display:grid;grid-template-columns:100px 1fr;gap:16px;padding:16px 0}.organization>div:last-child{border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0}dd>span{display:block;font-size:10px;color:var(--muted);margin-top:1px}dd>a:hover{color:var(--orange)}.contact-section{background:#e9c69e;padding:78px 0 39px}.contact-section .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.1em}.contact-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;margin-top:28px}.contact-heading h2{font-family:var(--serif);font-size:40px;line-height:1.7;letter-spacing:.02em}.contact-heading>div>p{font-size:12px;line-height:2.1}.contact-button{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--ink);color:var(--white);padding:19px 25px;font-size:14px;margin-top:27px;transition:background .2s,transform .2s}.contact-button:hover{background:#475b45;transform:translateY(-2px)}.contact-button>span{font-size:23px;line-height:1}.contact-heading .contact-email{font-family:var(--mono);font-size:11px;margin-top:10px;display:flex;justify-content:space-between;gap:10px}.contact-email>span{font-family:var(--sans);font-size:9px}.contact-topics{border-top:1px solid #b18f6d;display:flex;gap:38px;font-size:11px;align-items:center;margin-top:50px;padding-top:24px}.contact-topics>span{color:#4e5546}.contact-topics i{font-style:normal;margin:0 14px;color:#987c5d}.site-footer{padding-top:40px;padding-bottom:24px}.footer-main{display:flex;align-items:center;gap:36px}.footer-main .brand{width:125px}.footer-main>p{font-size:11px;color:var(--muted)}.back-top{margin-left:auto;font-size:10px;display:flex;align-items:center;gap:22px}.back-top>span{border:1px solid #b8bbaa;width:31px;height:31px;border-radius:50%;display:grid;place-items:center}.back-top:hover{color:var(--orange)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:26px;padding-top:19px;color:var(--muted);font-size:9px}.footer-bottom small{font-family:var(--mono);font-size:10px}
@media(min-width:1550px){.hero-figure{max-width:1500px;margin:auto}.hero{padding-top:55px}.hero-heading{padding-bottom:59px}}
@media(max-width:1100px){.wrap{width:calc(100% - 80px)}.site-header nav{gap:22px;font-size:11px}.hero-heading{gap:20px}.hero-aside{min-width:220px;font-size:12px}.philosophy-body{padding-left:55px;gap:40px}.name-note{margin-left:55px;gap:40px}.section-top{gap:40px}.activity-row{gap:60px}.contact-heading{gap:40px}.local-grid h2{font-size:30px}.about-grid{gap:45px}.opening-large{font-size:70px}.contact-heading h2{font-size:34px}}
@media(max-width:800px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 48px)}.site-header{height:84px;padding:9px 24px}.brand{width:125px}.menu-toggle{border:1px solid #b9bba9;border-radius:50px;padding:8px 12px;background:transparent;display:flex;align-items:center;gap:13px;cursor:pointer;min-height:42px}.menu-label{font-size:10px}.menu-lines{position:relative;width:17px;height:10px}.menu-lines:before,.menu-lines:after{content:"";position:absolute;width:17px;height:1px;background:var(--ink);left:0;top:1px;transition:transform .2s,top .2s}.menu-lines:after{top:9px}.menu-toggle[aria-expanded=true] .menu-lines:before{top:5px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{top:5px;transform:rotate(-45deg)}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 10px 20px #303a3210;flex-direction:column;align-items:stretch;gap:0;font-size:14px}.site-header nav.is-open{display:flex}.site-header nav>a{padding:17px 5px;border-bottom:1px solid var(--line)}.site-header nav .nav-contact{margin-top:20px;padding:12px 18px}.hero{padding-top:30px}.hero-heading{display:block;padding-bottom:30px}.hero-heading h1{font-size:clamp(35px,6.8vw,58px);line-height:1.65;letter-spacing:.025em;margin-top:12px}.eyebrow{font-size:11px}.hero-aside{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:23px;padding-bottom:0}.hero-aside>p{font-size:11px;line-height:1.95}.hero-aside .text-link{font-size:10px;gap:12px;flex-shrink:0;margin-bottom:3px}.round-arrow{width:28px;height:28px}.hero-figure{margin:0 12px}.hero-figure>img{aspect-ratio:1.8/1;object-position:52% center}.hero-figure figcaption{font-size:9px;gap:15px}.figure-credit{font-size:8px}.launch-note{align-items:flex-start;flex-wrap:wrap;gap:9px;padding:22px 0;font-size:10px}.launch-note .mono{width:100%;font-size:9px}.launch-note p{flex:none;width:calc(100% - 95px);font-size:10px}.launch-note p>span{display:none}.launch-note a{font-size:10px;margin-left:auto}.section{padding-top:76px;padding-bottom:76px}.section-label{gap:14px;font-size:12px}.section-label p>span{font-size:9px}.philosophy-body{grid-template-columns:1fr 1.1fr;padding-left:0;gap:30px;margin:39px 0 37px}.philosophy-body h2{font-size:30px;line-height:1.95}.philosophy-text{font-size:11px}.philosophy-text .lead{font-size:17px;margin-bottom:23px}.philosophy-text p+p{margin-top:19px}.philosophy-text br.desktop-break{display:none}.name-note{margin-left:0;gap:30px}.name-word{font-size:29px}.name-note p{font-size:10px}.section-top{grid-template-columns:1fr;gap:32px;margin-bottom:40px}.section-intro h2{font-size:31px}.section-intro>p{font-size:12px}.activity-row{grid-template-columns:.7fr 1.6fr;gap:28px;padding:37px 0}.activity-art svg{width:170px}.activity-art span{font-size:15px}.activity-content h3{font-size:25px}.activity-content>p{font-size:12px}.activity-meta{align-items:flex-start;flex-direction:column;gap:7px}.activity-meta .mono{font-size:9px}.tag{font-size:9px}.local-grid{gap:22px}.local-grid h2{font-size:27px;margin-top:34px}.local-grid>div>p{font-size:12px}.local-grid .local-lead{font-size:17px}.relationship-art>p{font-size:17px!important}.local-coordinate{font-size:8px;line-height:1.8}.about-grid{grid-template-columns:1fr;gap:30px;margin-top:32px}.opening-large{font-size:69px}.about-grid h2{font-size:25px}.organization{margin-top:0}.organization>div{grid-template-columns:120px 1fr;padding:15px 0}.contact-section{padding-top:62px}.contact-heading{gap:30px;grid-template-columns:1fr}.contact-heading h2{font-size:37px}.contact-heading>div{max-width:450px}.contact-topics{flex-direction:column;align-items:flex-start;gap:8px;margin-top:35px;padding-top:20px}.footer-main{gap:25px;flex-wrap:wrap}.footer-main>p{font-size:10px}.back-top{width:100%;margin-top:5px;justify-content:flex-end}.site-footer{padding-top:29px}}
@media(max-width:540px){.preparing-bar{min-height:32px;font-size:9px;gap:6px;letter-spacing:.02em}.opening-date{padding-left:8px;margin-left:0}.site-header{height:76px}.brand{width:117px}.site-header nav{top:76px}.hero{padding-top:21px}.hero-heading h1{font-size:clamp(25px,7.6vw,42px);letter-spacing:.015em;line-height:1.7}.hero-aside{gap:10px;margin-top:19px}.hero-aside>p{font-size:12px}.hero-aside .text-link{gap:8px}.hero-figure>img{aspect-ratio:1.28/1;object-position:53% center}.hero-figure figcaption{font-size:8px;padding-top:8px}.figure-credit{font-size:7px}.launch-note{gap:9px}.launch-note p{line-height:1.85;width:calc(100% - 82px)}.launch-note>a>span{padding-left:5px}.philosophy-body{grid-template-columns:1fr;gap:30px}.philosophy-body h2{font-size:37px;line-height:1.75;letter-spacing:.06em}.philosophy-text{font-size:13px;padding-top:0}.philosophy-text .lead{font-size:20px}.philosophy-text p+p{margin-top:23px}.name-note{align-items:flex-start;gap:24px;padding-top:27px}.name-word{font-size:25px;padding-top:7px;letter-spacing:.08em}.name-note p{font-size:10px;line-height:2}.mobile-break{display:block}.section-top{gap:28px}.section-intro h2{font-size:28px;line-height:1.8;letter-spacing:.015em}.section-intro>p{font-size:11px;line-height:2}.planning-label{font-size:10px}.activity-row{grid-template-columns:1fr;gap:24px;padding:33px 0 39px}.activity-art{max-width:none;flex-direction:row;justify-content:flex-start;gap:19px}.activity-art svg{width:115px;height:96px}.activity-art span{font-size:18px;margin-top:0}.activity-meta{flex-direction:row;align-items:center;gap:10px}.activity-meta .mono{font-size:9px;letter-spacing:.02em}.tag{font-size:9px;padding:1px 9px}.activity-content h3{font-size:27px;margin-top:18px;margin-bottom:17px}.activity-content>p{font-size:12px;line-height:2.15}.activity-content details{margin-top:19px}.detail-body{font-size:11px}.local-grid{grid-template-columns:1fr;gap:20px}.local-grid h2{font-size:28px;line-height:1.8}.local-grid .local-lead{font-size:19px}.local-grid>div>p{font-size:13px}.relationship-art{padding-top:0;max-width:360px;margin:auto}.relationship-art>p{margin-top:0}.local-coordinate{margin-top:18px}.about-grid h2{font-size:23px}.opening-large{font-size:67px}.about-grid>div>p:last-child{font-size:12px}.organization{font-size:11px}.organization>div{grid-template-columns:84px 1fr;gap:10px}.contact-heading h2{font-size:clamp(20px,6.1vw,28px);letter-spacing:0}.contact-heading>div>p{font-size:12px}.contact-heading .contact-email{font-size:10px}.contact-email>span{font-size:8px}.contact-topics{font-size:10px}.contact-topics i{margin:0 7px}.footer-main{gap:16px;align-items:center}.footer-main .brand{width:104px}.footer-main>p{font-size:8px;letter-spacing:-.03em;max-width:166px}.footer-bottom{font-size:8px}.footer-bottom small{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{html{scroll-behavior:auto}body{font-size:11px}.site-header{position:static}.preparing-bar{color:var(--ink);border-bottom:1px solid var(--line)}.section{padding:40px 0}.contact-button{border:1px solid var(--ink);color:var(--ink);background:none}.menu-toggle,.back-top,.skip-link{display:none}.activity-row{break-inside:avoid}.wrap{width:90%}.hero-heading h1{font-size:40px}details .detail-body{display:block}.site-footer{padding-top:20px}}

/* 読みやすさの調整：PCの横幅、本文・図案の大きさ、控えめなロゴ */
body { font-size: 18px; font-weight: 500; }
.wrap { width: calc(100% - 96px); max-width: 1760px; }
.brand { width: 172px; }
.brand img { opacity: .34; }
.preparing-bar { font-size: 14px; min-height: 42px; }
.site-header { height: 110px; padding-left: 48px; padding-right: 48px; }
.site-header nav { font-size: 17px; gap: 32px; }
.site-header nav .nav-contact { min-width: 148px; padding: 12px 23px; }
.hero-heading { display: grid; grid-template-columns: 1.7fr 1fr; gap: clamp(30px, 4.5vw, 96px); align-items: end; }
.eyebrow { font-size: 17px; }
.hero-aside { font-size: 18px; min-width: 320px; line-height: 2; }
.text-link { font-size: 16px; gap: 26px; }
.round-arrow { width: 40px; height: 40px; }
.hero-figure { width: calc(100% - 48px); max-width: 1840px; margin: 0 auto; }
.hero-figure figcaption { font-size: 13px; padding-top: 14px; }
.figure-credit { font-size: 12px; }
.launch-note { font-size: 16px; gap: 28px; }
.launch-note .mono { font-size: 13px; }
.launch-note > a { font-size: 15px; }
.section { padding-top: 112px; padding-bottom: 112px; }
.section-label { font-size: 20px; gap: 22px; }
.section-label p > span { font-size: 13px; }
.section-number { font-size: 17px; }
.philosophy-body { padding-left: 0; gap: clamp(48px, 6vw, 112px); margin-top: 62px; }
.philosophy-body h2 { font-size: clamp(40px, 3.8vw, 64px); line-height: 1.8; }
.philosophy-text { font-size: 18px; line-height: 2.05; padding-top: 10px; }
.philosophy-text .lead { font-size: 27px; }
.philosophy-text p + p { margin-top: 28px; }
.name-note { margin-left: 0; padding-top: 35px; gap: 66px; }
.name-word { font-size: 45px; }
.name-note p { font-size: 16px; }
.section-top { grid-template-columns: .65fr 1.35fr; gap: 80px; }
.section-intro h2 { font-size: clamp(36px, 3.1vw, 54px); }
.section-intro > p { font-size: 18px; }
.planning-label { font-size: 15px; }
.activity-row { grid-template-columns: minmax(280px, .75fr) minmax(0, 1.35fr); gap: 80px; padding: 60px 0; }
.activity-art { max-width: 420px; }
.activity-art svg { width: 350px; height: auto; }
.activity-art span { font-size: 25px; margin-top: 20px; letter-spacing: .08em; }
.activity-meta .mono { font-size: 14px; }
.tag { font-size: 14px; padding: 4px 15px; }
.activity-content h3 { font-size: clamp(33px, 2.5vw, 44px); margin-top: 24px; }
.activity-content > p { font-size: 18px; line-height: 2.05; max-width: 900px; }
.activity-content details { max-width: 900px; margin-top: 28px; }
.activity-content summary { font-size: 16px; padding: 20px 2px; min-height: 52px; }
.detail-body { font-size: 17px; line-height: 2; }
.detail-icon { width: 18px; height: 18px; }
.detail-icon:before, .detail-icon:after { width: 18px; top: 8px; }
.local-grid { gap: 80px; }
.local-grid h2 { font-size: clamp(36px, 3vw, 50px); }
.local-grid > div > p { font-size: 18px; line-height: 2.05; }
.local-grid .local-lead { font-size: 26px; }
.relationship-art svg { max-width: 620px; width: 100%; }
.relationship-art text { font-size: 25px; }
.relationship-art .svg-center { font-size: 33px; }
.relationship-art > p { font-size: 26px !important; }
.local-coordinate { font-size: 12px; }
.about-grid { gap: 90px; }
.opening-large { font-size: 96px; }
.about-grid h2 { font-size: 33px; }
.about-grid > div > p:last-child { font-size: 18px; }
.organization { font-size: 17px; }
.organization > div { grid-template-columns: 130px 1fr; gap: 24px; padding: 21px 0; }
dd > span { font-size: 14px; }
.contact-section .eyebrow { font-size: 14px; }
.contact-heading { gap: 80px; }
.contact-heading h2 { font-size: clamp(38px, 3.1vw, 54px); }
.contact-heading > div { max-width: none; }
.contact-heading > div > p { font-size: 18px; }
.contact-button { padding: 23px 30px; font-size: 19px; }
.contact-heading .contact-email { font-size: 15px; margin-top: 14px; }
.contact-email > span { font-size: 13px; }
.contact-topics { font-size: 16px; gap: 32px; }
.footer-main .brand { width: 155px; }
.footer-main > p { font-size: 16px; max-width: none; }
.back-top { font-size: 15px; }
.back-top > span { width: 42px; height: 42px; }
.footer-bottom { font-size: 13px; padding-top: 24px; }
.footer-bottom small { font-size: 13px; }

@media (max-width: 1200px) {
  .hero-heading { gap: 30px; }
  h1 { font-size: clamp(42px, 5.1vw, 68px); }
  .hero-aside { min-width: 260px; font-size: 17px; }
  .philosophy-body h2 { font-size: 42px; }
  .section-top, .activity-row, .local-grid, .about-grid, .contact-heading { gap: 48px; }
  .activity-art svg { width: 300px; }
  .activity-meta { gap: 16px; flex-wrap: wrap; }
  .section-intro h2 { font-size: 38px; }
  .activity-content h3 { font-size: 34px; }
  .contact-heading h2 { font-size: 36px; }
  .contact-heading .contact-email { flex-wrap: wrap; gap: 4px 18px; }
}

@media (max-width: 960px) {
  html { scroll-padding-top: 96px; }
  .wrap { width: calc(100% - 64px); }
  .site-header { height: 92px; padding: 12px 32px; }
  .brand { width: 150px; }
  .menu-toggle { border: 1px solid #b9bba9; border-radius: 50px; padding: 9px 16px; background: transparent; display: flex; align-items: center; gap: 14px; cursor: pointer; min-height: 46px; color: var(--ink); }
  .menu-label { font-size: 14px; }
  .menu-lines { position: relative; width: 20px; height: 12px; }
  .menu-lines:before, .menu-lines:after { content: ""; position: absolute; width: 20px; height: 1px; background: var(--ink); left: 0; top: 1px; transition: transform .2s, top .2s; }
  .menu-lines:after { top: 11px; }
  .menu-toggle[aria-expanded=true] .menu-lines:before { top: 6px; transform: rotate(45deg); }
  .menu-toggle[aria-expanded=true] .menu-lines:after { top: 6px; transform: rotate(-45deg); }
  .site-header nav { display: none; position: absolute; top: 92px; left: 0; right: 0; background: var(--paper); padding: 24px 32px; flex-direction: column; align-items: stretch; gap: 0; font-size: 18px; box-shadow: 0 10px 20px #303a3210; }
  .site-header nav.is-open { display: flex; }
  .site-header nav > a { padding: 17px 5px; border-bottom: 1px solid var(--line); }
  .site-header nav .nav-contact { margin-top: 20px; padding: 12px 18px; }
  .hero-heading { display: block; }
  .hero-heading h1 { font-size: clamp(40px, 6vw, 58px); line-height: 1.65; }
  .hero-aside { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-top: 28px; min-width: 0; font-size: 17px; }
  .hero-aside > p { font-size: 17px; line-height: 2; }
  .hero-aside .text-link { font-size: 15px; gap: 15px; }
  .hero-figure { width: calc(100% - 32px); }
  .hero-figure > img { aspect-ratio: 1.9; object-position: 52% center; }
  .launch-note { flex-wrap: wrap; align-items: flex-start; font-size: 15px; gap: 15px 24px; }
  .launch-note .mono { width: 100%; font-size: 12px; }
  .launch-note p { flex: 1; width: auto; font-size: 15px; min-width: 0; }
  .launch-note > a { font-size: 14px; }
  .section { padding-top: 80px; padding-bottom: 80px; }
  .section-label { font-size: 18px; }
  .section-label p > span { font-size: 12px; }
  .section-number { font-size: 15px; }
  .philosophy-body { grid-template-columns: 1fr; gap: 35px; padding-left: 0; margin: 42px 0; }
  .philosophy-body h2 { font-size: 44px; line-height: 1.75; }
  .philosophy-text { font-size: 17px; }
  .philosophy-text .lead { font-size: 25px; }
  .philosophy-text br.desktop-break { display: none; }
  .name-note { margin-left: 0; gap: 36px; }
  .name-word { font-size: 37px; }
  .name-note p { font-size: 15px; }
  .section-top { grid-template-columns: 1fr; gap: 32px; margin-bottom: 46px; }
  .section-intro h2 { font-size: 37px; }
  .section-intro > p { font-size: 17px; }
  .planning-label { font-size: 14px; }
  .activity-row { grid-template-columns: .7fr 1.3fr; gap: 36px; padding: 44px 0; }
  .activity-art svg { width: 270px; }
  .activity-art span { font-size: 23px; }
  .activity-meta { flex-direction: row; flex-wrap: wrap; align-items: center; }
  .activity-meta .mono, .tag { font-size: 12px; }
  .activity-content h3 { font-size: 31px; }
  .activity-content > p { font-size: 17px; }
  .activity-content summary { font-size: 15px; }
  .detail-body { font-size: 16px; }
  .local-grid { grid-template-columns: 1fr; gap: 35px; }
  .local-grid h2 { font-size: 36px; }
  .local-grid > div > p { font-size: 17px; }
  .local-grid .local-lead { font-size: 24px; }
  .relationship-art { max-width: 600px; width: 100%; padding-top: 0; margin: 0 auto; }
  .relationship-art > p { font-size: 24px !important; }
  .local-coordinate { font-size: 11px; }
  .about-grid { grid-template-columns: 1fr; gap: 35px; }
  .about-grid h2 { font-size: 31px; }
  .about-grid > div > p:last-child { font-size: 17px; }
  .organization { margin-top: 0; font-size: 17px; }
  .contact-heading { grid-template-columns: 1fr; gap: 32px; }
  .contact-heading h2 { font-size: 40px; }
  .contact-heading > div > p { font-size: 17px; }
  .contact-topics { flex-direction: column; align-items: flex-start; gap: 10px; font-size: 15px; }
  .footer-main { flex-wrap: wrap; gap: 28px; }
  .footer-main > p { font-size: 15px; }
  .back-top { font-size: 14px; }
}

@media (max-width: 640px) {
  .wrap { width: calc(100% - 40px); }
  .preparing-bar { font-size: 12px; min-height: 39px; gap: 7px; letter-spacing: 0; }
  .opening-date { padding-left: 9px; margin-left: 0; }
  .site-header { height: 84px; padding: 10px 20px; }
  .brand { width: 135px; }
  .site-header nav { top: 84px; padding-left: 20px; padding-right: 20px; }
  .hero { padding-top: 23px; }
  .hero-heading { padding-bottom: 30px; }
  .eyebrow { font-size: 15px; letter-spacing: .04em; }
  .hero-heading h1 { font-size: clamp(25px, 7.7vw, 45px); line-height: 1.7; letter-spacing: .01em; }
  .hero-aside { display: block; margin-top: 24px; }
  .hero-aside > p { font-size: 16px; line-height: 1.95; }
  .hero-aside .text-link { font-size: 15px; margin-top: 18px; gap: 23px; }
  .hero-figure { width: calc(100% - 16px); }
  .hero-figure > img { aspect-ratio: 1.4; object-position: 53% center; }
  .hero-figure figcaption { font-size: 11px; line-height: 1.7; flex-wrap: wrap; gap: 2px 12px; padding: 9px 5px 0; }
  .figure-credit { font-size: 10px; }
  .launch-note { padding: 24px 0; gap: 12px; }
  .launch-note p { flex: none; width: 100%; font-size: 15px; line-height: 1.9; }
  .launch-note > a { font-size: 14px; margin-left: 0; min-height: 35px; display: inline-flex; align-items: center; }
  .launch-note .mono { font-size: 11px; }
  .section { padding-top: 65px; padding-bottom: 65px; }
  .section-label { font-size: 17px; gap: 17px; }
  .section-label p > span { font-size: 11px; }
  .philosophy-body { margin: 35px 0; gap: 28px; }
  .philosophy-body h2 { font-size: clamp(29px, 7.8vw, 39px); letter-spacing: .01em; }
  .philosophy-text { font-size: 16px; line-height: 2; }
  .philosophy-text .lead { font-size: 23px; }
  .philosophy-text p + p { margin-top: 24px; }
  .name-note { display: block; padding-top: 30px; }
  .name-word { display: block; font-size: 34px; margin-bottom: 16px; }
  .name-note p { font-size: 15px; line-height: 2; }
  .section-intro h2 { font-size: clamp(27px, 6.8vw, 34px); line-height: 1.8; }
  .section-intro > p { font-size: 16px; line-height: 2; }
  .planning-label { font-size: 13px; }
  .activity-row { grid-template-columns: 1fr; gap: 27px; padding: 37px 0 42px; }
  .activity-art { flex-direction: row; align-items: center; justify-content: flex-start; gap: 18px; max-width: none; }
  .activity-art svg { width: 148px; height: auto; flex: 0 0 148px; }
  .activity-art span { font-size: 22px; letter-spacing: .05em; line-height: 1.6; margin-top: 0; min-width: 0; }
  .activity-meta { gap: 10px; }
  .activity-meta .mono { font-size: 12px; letter-spacing: .015em; }
  .tag { font-size: 12px; padding: 3px 12px; }
  .activity-content h3 { font-size: clamp(26px, 7.7vw, 32px); margin: 20px 0; letter-spacing: .01em; }
  .activity-content > p { font-size: 16px; line-height: 2; }
  .activity-content details { margin-top: 23px; }
  .activity-content summary { font-size: 15px; }
  .detail-body { font-size: 15px; }
  .local-grid h2 { font-size: clamp(27px, 6.8vw, 34px); line-height: 1.85; margin-top: 36px; }
  .local-grid > div > p { font-size: 16px; line-height: 2; }
  .local-grid .local-lead { font-size: 23px; }
  .relationship-art { max-width: 440px; }
  .relationship-art text { font-size: 26px; }
  .relationship-art .svg-center { font-size: 35px; }
  .relationship-art > p { font-size: 23px !important; }
  .local-coordinate { font-size: 11px; }
  .opening-large { font-size: 78px; }
  .about-grid h2 { font-size: clamp(24px, 5.6vw, 30px); }
  .about-grid > div > p:last-child { font-size: 16px; }
  .organization { font-size: 15px; }
  .organization > div { grid-template-columns: 90px 1fr; gap: 14px; padding: 18px 0; }
  dd > span { font-size: 13px; }
  .contact-section { padding: 62px 0 34px; }
  .contact-section .eyebrow { font-size: 13px; }
  .contact-heading h2 { font-size: clamp(22px, 6vw, 35px); letter-spacing: 0; }
  .contact-heading > div > p { font-size: 16px; line-height: 2; }
  .contact-button { font-size: 17px; padding: 20px 22px; }
  .contact-heading .contact-email { font-size: 14px; gap: 2px; }
  .contact-email > span { font-size: 12px; }
  .contact-topics { font-size: 14px; line-height: 2; }
  .contact-topics i { margin: 0 6px; }
  .footer-main { gap: 20px; display: block; }
  .footer-main .brand { width: 140px; margin-bottom: 20px; }
  .footer-main > p { font-size: 14px; max-width: none; line-height: 2; }
  .back-top { width: 100%; font-size: 14px; justify-content: flex-end; margin-top: 18px; }
  .footer-bottom { font-size: 12px; flex-wrap: wrap; gap: 8px 18px; }
  .footer-bottom small { font-size: 12px; }
}

@media print {
  .wrap { width: 90%; }
  body { font-size: 12px; }
  .site-header { position: static; }
  .section { padding: 40px 0; }
}

@media (max-width: 640px) {
  .philosophy-text p:not(.lead) br,
  .contact-heading > div > p:not(.contact-email) br,
  .local-grid > div > p:not(.local-lead) br,
  .about-grid > div > p:last-child br { display: none; }
  .about-grid { grid-template-columns: minmax(0, 1fr); }
  .about-grid > div { min-width: 0; }
  .opening-large { font-size: clamp(64px, 20vw, 78px); }
  .organization > div { grid-template-columns: 90px minmax(0, 1fr); }
  .organization dd { overflow-wrap: anywhere; }
}

/* 白を基調に、色はボタンと図案に絞る */
:root { --paper: #fff; --white: #fff; --line: #dedfd9; --muted: #5e665b; }
body, .site-header, .activities, .local-section, .contact-section { background: #fff; }
.preparing-bar { background: #fff; color: var(--green); border-bottom: 1px solid var(--line); }
.status-dot { background: var(--orange); }
.opening-date { border-left-color: var(--line); }
.activities { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.local-section { border-bottom: 1px solid var(--line); }
.contact-section { border-top: 1px solid var(--line); }
.contact-topics { border-top-color: var(--line); }
.nav-contact:hover { background: #f5f6f2; }
