header .logo a{letter-spacing:1px;color:#fff;font-size:24px;font-weight:700;text-decoration:none}.blog-grid{grid-template-columns:repeat(3,1fr);gap:30px;padding:0 5%;display:grid}.blog-card{color:#fff;background-color:#0c0c0c;border:1px solid #222;flex-direction:column;justify-content:space-between;min-height:280px;padding:30px;text-decoration:none;transition:transform .3s,border-color .3s,opacity .5s;display:flex}.blog-card:hover{border-color:#444;transform:translateY(-5px)}.blog-card.hidden-card{opacity:0;display:none}.card-meta{align-items:center;gap:12px;margin-bottom:15px;display:flex}.user-icon{background-color:#444;border-radius:50%;width:35px;height:35px;display:inline-block}.meta-text{color:#888;font-size:12px;line-height:1.4}.meta-text .author{color:#aaa}.card-title{margin:0 0 15px;font-size:20px;font-weight:700;line-height:1.4}.card-excerpt{color:#666;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 20px;font-size:14px;display:-webkit-box;overflow:hidden}.card-footer{color:#555;border-top:1px solid #1a1a1a;justify-content:space-between;align-items:center;padding-top:15px;font-size:13px;display:flex}.footer-left{gap:15px;display:flex}.heart-icon{color:#c33}.blog-section{background:radial-gradient(circle at 100% 0,#2a1212 0%,#000 60%);max-width:1200px;margin:0 auto;padding:60px 5% 50px}.blog-header{align-items:center;gap:30px;margin-bottom:60px;padding-left:5%;display:flex}.blog-title-text{color:#fff;margin:0;font-family:Georgia,serif;font-size:55px;font-weight:700}.blog-video-container{align-items:center;width:auto;height:90px;display:flex}.blog-hero-video{object-fit:contain;width:auto;height:100%}@media screen and (width<=768px){header{flex-direction:column;gap:15px;padding:20px}header nav a{margin:0 10px}.page-title-area h1{text-align:center;font-size:42px}.info-row-item{text-align:center;border-bottom:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:10px;padding:30px 0}.info-label{color:#888;font-size:14px;text-align:center!important;width:100%!important;padding-right:0!important}.info-value-ja{font-size:18px;font-weight:700;text-align:center!important;width:100%!important}.info-value-en{color:#ccc;font-size:14px;text-align:center!important;width:100%!important;padding-left:0!important}.partner-list{gap:12px;text-align:center!important;width:100%!important}.partner-list p{font-size:16px}.grid-container{grid-template-columns:repeat(2,1fr);gap:40px 20px}.access-container{flex-direction:column;gap:40px}.info-side,.map-side{width:100%}.map-side{height:300px}.modal-content{margin:60px auto;padding:0 20px}.modal-body h2{font-size:30px}.modal-close-btn{right:20px}.blog-header{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:40px;padding-left:5%}.blog-title-text{font-size:40px}.blog-video-container{height:60px}.blog-grid{grid-template-columns:1fr;padding:0 5%}}@media screen and (width<=480px){.grid-container{grid-template-columns:1fr}}:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}body{color:#fff;background-color:#000;margin:0;padding:0;font-family:Helvetica Neue,Arial,sans-serif;line-height:1.8}header{box-sizing:border-box;background-color:#000;justify-content:space-between;align-items:center;width:100%;padding:30px 50px;display:flex}header .logo{letter-spacing:1px;align-items:center;gap:10px;font-size:24px;font-weight:700;display:flex}header .logo img{width:auto;height:24px}header .logo a{color:#fff;text-decoration:none}header nav a{color:#fff;margin-left:25px;font-size:14px;text-decoration:none;transition:opacity .3s}header nav a:hover{opacity:.7}.company-main{background:radial-gradient(circle at 0 100%,#2a1515,#000 60%);padding-bottom:100px}.page-title-area{max-width:1200px;margin:0 auto;padding:60px 5% 40px}.page-title-area h1{letter-spacing:1px;margin:0;font-family:Georgia,serif;font-size:56px;font-weight:400}.section-title{text-align:center;letter-spacing:2px;margin:60px 0 40px;font-size:32px;font-weight:400}.info-table-container{flex-direction:column;align-items:center;max-width:950px;margin:0 auto;padding:0 5%;display:flex}.info-row-item{justify-content:center;align-items:flex-start;width:100%;max-width:850px;padding:20px 0;font-size:15px;display:flex}.info-label{color:#fff;text-align:right;box-sizing:border-box;width:25%;padding-right:50px;font-weight:400}.info-value-ja{color:#fff;text-align:left;width:45%}.info-value-en{color:#ccc;text-align:left;box-sizing:border-box;width:30%;padding-left:20px}.partner-list{text-align:left;flex-direction:column;gap:15px;width:75%;display:flex}.partner-list p{color:#fff;margin:0;font-size:15px}.achievement-text-block{color:#ddd;max-width:800px;margin:0 auto 60px;padding:0 5%;font-size:15px}.achievement-text-block p{margin-bottom:30px}.achievement-text-block h3{color:#fff;margin:40px 0 15px;font-size:18px;font-weight:700}.grid-container{grid-template-columns:repeat(3,1fr);gap:60px 30px;max-width:1000px;margin:0 auto;padding:0 5%;display:grid}.grid-item{text-align:center;flex-direction:column;align-items:center;display:flex}.circle-icon{box-sizing:border-box;cursor:pointer;border:1px solid #6495ed4d;border-radius:50%;justify-content:center;align-items:center;width:140px;height:140px;margin-bottom:20px;padding:15px;transition:background-color .3s,border-color .3s;display:flex;position:relative}.circle-icon:hover{background-color:#6495ed1a;border-color:#6495ed99}.circle-icon:before{content:"";border:1px solid #6495ed80;border-radius:50%;width:120px;height:120px;position:absolute}.circle-icon:after{content:"";border:2px solid #6495edcc;border-radius:50%;width:100px;height:100px;position:absolute}.grid-text{color:#fff;z-index:2;word-break:break-all;margin:0;font-size:13px;line-height:1.4}.modal-overlay{z-index:1000;background-color:#000000d9;width:100%;height:100%;display:none;position:fixed;top:0;left:0;overflow-y:auto}.modal-content{box-sizing:border-box;max-width:900px;margin:80px auto;padding:0 40px;position:relative}.modal-close-btn{color:#fff;cursor:pointer;opacity:.7;font-size:36px;transition:opacity .3s;position:absolute;top:-40px;right:40px}.modal-close-btn:hover{opacity:1}.modal-body h2{text-align:center;letter-spacing:1px;margin-bottom:30px;font-family:Georgia,serif;font-size:42px;font-weight:400}.modal-body .intro-text{color:#ddd;text-align:center;max-width:700px;margin:0 auto 50px;font-size:16px;line-height:1.8}.modal-body .image-placeholder{border:1px solid #ffffff1a;width:100%;max-width:500px;margin:0 auto 50px;display:block}.modal-body h3.sub-title{letter-spacing:1px;border-bottom:1px solid #333;margin-top:40px;margin-bottom:25px;padding-bottom:10px;font-size:24px;font-weight:400}.modal-body .scene-list{margin:0 0 60px;padding:0;list-style:none}.modal-body .scene-list li{color:#ccc;margin-bottom:20px;padding-left:25px;font-size:15px;line-height:1.7;position:relative}.modal-body .scene-list li:before{content:"◆";color:#6495ed;font-size:12px;position:absolute;top:0;left:0}.modal-image{border-radius:4px;max-width:100%;height:auto;display:inline-block}#access-section{color:#fff;background-color:#3a3a3a;width:100%;padding:80px 0}.access-container{box-sizing:border-box;justify-content:space-between;align-items:flex-start;max-width:1200px;margin:0 auto;padding:0 5%;display:flex}.info-side{width:50%}.info-side h2{margin:0 0 40px;font-family:Georgia,serif;font-size:36px;font-weight:400}.info-row{margin-bottom:35px;display:flex}.info-icon{text-align:center;opacity:.8;width:30px;margin-right:25px;font-size:24px}.info-text p{margin:0 0 6px;font-size:15px}.info-text .email{letter-spacing:.5px;font-size:16px}.info-text .caption{color:#b0b0b0;margin-bottom:15px;font-size:13px}.info-text .sub-text{color:#ccc;font-size:14px}.map-side{width:45%;height:400px}.map-side iframe{border:0;border-radius:2px;width:100%;height:100%}footer{color:#888;background-color:#3a3a3a;border-top:1px solid #4a4a4a;padding:20px 5%;font-size:12px}footer p{margin:0}@media screen and (width<=768px){header{flex-direction:column;gap:15px;padding:20px}header nav a{margin:0 10px}.page-title-area h1{text-align:center;font-size:42px}.info-row-item{text-align:center;border-bottom:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:10px;padding:30px 0}.info-label{color:#888;font-size:14px;text-align:center!important;width:100%!important;padding-right:0!important}.info-value-ja{font-size:18px;font-weight:700;text-align:center!important;width:100%!important}.info-value-en{color:#ccc;font-size:14px;text-align:center!important;width:100%!important;padding-left:0!important}.partner-list{gap:12px;text-align:center!important;width:100%!important}.partner-list p{font-size:16px}.grid-container{grid-template-columns:repeat(2,1fr);gap:40px 20px}.access-container{flex-direction:column;gap:40px}.info-side,.map-side{width:100%}.map-side{height:300px}.modal-content{margin:60px auto;padding:0 20px}.modal-body h2{font-size:30px}.modal-close-btn{right:20px}}@media screen and (width<=480px){.grid-container{grid-template-columns:1fr}}
