/* Figma 1:2 — 390px mobile canvas; device status bar is browser chrome. */
html { scroll-behavior: smooth; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.mid { max-width:390px; border:0; overflow:clip; }
.header { height:68px; padding:10px 24px; display:flex; align-items:center; justify-content:space-between; }
.site-ttl { display:flex; flex-direction:column; gap:7px; line-height:1; }
.site-logo-small { display:block; margin-left:.34px; }
.site-logo-main { display:block; }
.hamburger { width:38px; height:36px; top:16px; right:24px; padding:0; }
.hamburger span:nth-child(1) { top:0; }
.hamburger span:nth-child(2) { top:12px; bottom:auto; }
.menu-label { position:absolute; top:24px; left:0; font:400 12px/12px 'Roboto Slab',serif; }
.hamburger.active span:nth-child(1), .hamburger.active span:nth-child(2) { top:6px; }
.head { font-weight:500; line-height:1.5; }
.head-sub { display:inline-block; font:400 12px/16px 'Roboto Slab',serif; letter-spacing:1.2px; vertical-align:top; margin-top:4px; }
.home .gallery { position:relative; }
.home .gallery-list { height:714px; grid-template-rows:repeat(7,minmax(0,1fr)); grid-template-columns:repeat(12,minmax(0,1fr)); }
.home .gallery-item { position:relative; overflow:hidden; min-width:0; }
.home .gallery-item img { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
.home .gallery-list .item1 { grid-column:1/13; grid-row:1/4; }
.home .gallery-list .item2 { grid-column:1/8; grid-row:4/6; }
.home .gallery-list .item3 { grid-column:8/13; grid-row:4; }
.home .gallery-list .item4 { grid-column:8/13; grid-row:5; }
.home .gallery-list .item5 { grid-column:2/6; grid-row:6; }
.home .gallery-list .item6 { grid-column:6/13; grid-row:6; }
.home .gallery-list .item7 { grid-column:2/6; grid-row:7; }
.home .gallery-list .item8 { grid-column:6/13; grid-row:7; }
.scroll-cue { position:absolute; left:10px; top:524px; height:160px; width:13px; font:400 10px/13px 'Roboto Slab',serif; letter-spacing:1px; writing-mode:vertical-rl; }
.scroll-cue span { position:absolute; top:86px; left:4px; height:60px; width:1px; background:#222; transform-origin:top; animation:scroll-line 2s ease-in-out infinite; }
.scroll-cue span::after { content:''; position:absolute; bottom:0; width:4px; height:8px; border-right:1px solid; transform:skewY(-35deg); }
.home .news { padding:80px 24px 102px; }
.home .news-list-wrap { margin-top:28px; }
.home .news-list { margin-top:24px; border-bottom-color:#deda1f; }
.home .news-list:first-child { margin-top:0; }
.home .news-list a { display:block; }
.home .news-day { font:400 12px/16px 'Roboto Slab',serif; }
.home .news-ttl { font-size:14px; line-height:20px; padding-right:22px; }
.home .news-list::after { background-image:url('../images/figma/imgGroup145.svg'); width:12.7071px; height:8.70711px; right:0; top:31px; pointer-events:none; }
.more-link { height:48px; padding:0; display:flex; align-items:center; justify-content:center; font-weight:500; }
.more-link::before { width:12px; right:12px; }
.more-link::after { width:6px; height:6px; right:12px; }
.home .about { height:1295px; padding:208px 0 0; }
.home .about .inner { width:calc(100% - 48px); position:relative; z-index:1; }
.home .about-cont-top { margin-top:28px; }
.home .about-cont-bottom { margin-top:10px; grid-template-columns:1fr 154px; }
.home .about-cont-txt { line-height:32px; font-size:14px; white-space:nowrap; }
.home .about .more-link { position:absolute; top:1197px; left:50%; transform:translateX(-50%); margin:0; }
.about-photo { position:absolute; overflow:hidden; }
.about-photo img { position:absolute; max-width:none; height:auto; }
.about-photo-1 { left:38.718%; top:-21px; width:55.128%; height:161px; }
.about-photo-1 img { width:100%; top:0; }
.about-photo-2 { left:3.077%; top:99px; width:29.744%; height:87px; }
.about-photo-2 img { width:207.759%; left:-70.54%; top:-37.29px; }
.about-photo-3 { right:24px; top:298px; width:33.333%; height:98px; }
.about-photo-3 img { width:103.077%; left:-1.538%; bottom:-1px; }
.about-photo-4 { right:0; top:433px; width:25.897%; height:76px; }
.about-photo-4 img { width:136.634%; left:-19.802%; top:-2px; }
.about-photo-5 { left:0; top:530px; width:47.949%; height:140px; }
.about-photo-5 img { width:102.139%; left:-1.069%; top:-32px; }
.about-photo-6 { left:14.359%; top:708px; width:27.949%; height:82px; }
.about-photo-6 img { width:152.294%; left:-29.358%; top:-16px; }
.about-photo-7 { right:0; top:840px; width:75.641%; height:154px; }
.about-photo-7 img { width:100%; top:-27px; }
.about-photo-8 { right:24px; top:1024px; width:57.949%; height:146px; }
.about-photo-8 img { width:101.327%; top:-23px; }
.about-mark { position:absolute; z-index:2; }
.about-mark-1 { left:18.7%; top:196px; }
.about-mark-2 { left:49.7%; top:147px; }
.about-mark-3 { left:63%; top:406px; transform:scaleX(-1); }
.about-mark-4 { left:24.36%; top:1004px; transform:scaleX(-1); }
.about-mark-5 { left:47.46%; top:675px; }
.about-mark-6 { left:66.4%; top:480px; }
.about-mark-7 { left:44.62%; top:772px; }
.about-marquee { position:absolute; inset:0 auto 0 1px; width:79px; overflow:hidden; pointer-events:none; color:#ebe867; }
.about-marquee div { font:300 60px/79px 'Roboto Slab',serif; writing-mode:vertical-rl; white-space:nowrap; animation:about-marquee 36s linear infinite; }
.back-to-top { position:fixed; z-index:100; right:max(0px,calc((100vw - 390px)/2)); bottom:30px; width:56px; height:60px; padding:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; background:#fff; box-shadow:0 4px 2px #0003; font:400 14px/14px 'Roboto Slab',serif; letter-spacing:1.4px; }
.back-to-top img { transform:rotate(-90deg); margin:4px 0; }
.footer-inner { width:100%; padding:80px 24px 50px; }
.footer-head { font-size:16px; font-weight:500; line-height:24px; white-space:nowrap; }
.footer-head .head-sub { font:inherit; letter-spacing:0; margin:0; }
.footer-logo { display:block; width:226px; height:auto; margin:50px auto 0; }
.mina-add { display:block; width:max-content; max-width:100%; margin:12px auto 0; line-height:20px; }
.footer-info { display:block; width:max-content; margin:20px auto 0; line-height:20px; }
.footer-info-list { margin-top:4px; grid-template-columns:auto auto; column-gap:10px; row-gap:0; font-family:'Roboto Slab',serif; }
.footer-info-list-time { text-align:right; }
.footer-link { display:flex; align-items:center; justify-content:center; gap:12px; font-size:14px; line-height:32px; font-weight:500; white-space:nowrap; }
.footer-link::after { content:''; display:block; position:static; width:16px; height:16px; background:url('../images/figma/imgGroup122.svg') center no-repeat; }
.sns-head { line-height:20px; }
.sns-list { align-items:center; }
.instagram-glyph { display:block; position:relative; width:40px; height:40px; }
.instagram-glyph img { position:absolute; width:62.404px; max-width:none; height:62.404px; left:-11.253px; top:-11.253px; mask:url('../images/figma/imgInstagramGlyph2500Px.svg') 11.253px 11.253px / 40px 40px no-repeat; }
.sns-icon.x-icon img { width:auto; height:auto; }
.copyright { font:400 11px/20px 'Roboto Slab',serif; padding:10px 0; }
@keyframes about-marquee { to { transform:translateY(-50%); } }
@keyframes scroll-line { 0% { transform:scaleY(0); } 60%,100% { transform:scaleY(1); } }
@media(max-width:374px) { .home .about-cont-txt { font-size:12px; } .home .about .head { font-size:21px; } .copyright { font-size:9px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .about-marquee div,.scroll-cue span { animation:none; } }
/* Preserve the intrinsic dimensions of exported vector assets. */
.site-ttl img,.about-mark,.back-to-top img { width:auto; height:auto; max-width:none; }
.site-ttl { align-items:flex-start; }
/* Both side columns are visible from this breakpoint. */
@media (min-width:1000px) {
 .mid > .header { display:none; }
}
.home .news { padding-bottom:80px; }
@media(max-width:389px) {
 .home .gallery-list { height:auto; aspect-ratio:390 / 714; }
 .home .gallery-item img { min-height:100%; object-fit:cover; }
 .scroll-cue { top:73.39%; }
 .about-photo img { min-height:calc(100% + 38px); object-fit:cover; }
}
