|
|
|
@ -1,5 +1,6 @@ |
|
|
|
import SubHero from "../../components/SubHero"; |
|
|
|
import SubHero from "../../components/SubHero"; |
|
|
|
import useFadeIn from "../../hooks/useFadeIn"; |
|
|
|
import useFadeIn from "../../hooks/useFadeIn"; |
|
|
|
|
|
|
|
import { motion } from "framer-motion"; |
|
|
|
|
|
|
|
|
|
|
|
const COMPANY_NAV = [ |
|
|
|
const COMPANY_NAV = [ |
|
|
|
{ label: "회사소개", to: "/company/about" }, |
|
|
|
{ label: "회사소개", to: "/company/about" }, |
|
|
|
@ -8,58 +9,14 @@ const COMPANY_NAV = [ |
|
|
|
{ label: "찾아오시는 길", to: "/company/location" }, |
|
|
|
{ label: "찾아오시는 길", to: "/company/location" }, |
|
|
|
]; |
|
|
|
]; |
|
|
|
|
|
|
|
|
|
|
|
// 아이콘 모음 |
|
|
|
|
|
|
|
function IconPin() { |
|
|
|
|
|
|
|
return ( |
|
|
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
|
|
<path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z" /> |
|
|
|
|
|
|
|
<circle cx="12" cy="10" r="3" /> |
|
|
|
|
|
|
|
</svg> |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function IconPhone() { |
|
|
|
|
|
|
|
return ( |
|
|
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
|
|
<path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07A19.5 19.5 0 0 1 4.69 13a19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 3.6 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L7.91 9.91a16 16 0 0 0 6.13 6.13l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z" /> |
|
|
|
|
|
|
|
</svg> |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function IconFax() { |
|
|
|
|
|
|
|
return ( |
|
|
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
|
|
<polyline points="22 17 22 11 16 11" /> |
|
|
|
|
|
|
|
<path d="M21.73 11l-5.73-7H2v18h12.27l5-7z" /> |
|
|
|
|
|
|
|
</svg> |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function IconMail() { |
|
|
|
|
|
|
|
return ( |
|
|
|
|
|
|
|
<svg viewBox="0 0 24 24"> |
|
|
|
|
|
|
|
<path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z" /> |
|
|
|
|
|
|
|
<polyline points="22,6 12,13 2,6" /> |
|
|
|
|
|
|
|
</svg> |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const INFO = [ |
|
|
|
const INFO = [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
icon: <IconPin />, |
|
|
|
|
|
|
|
label: "주소", |
|
|
|
label: "주소", |
|
|
|
value: "인천광역시 서구 로봇랜드로 155-11\n로봇랜드 14층 1401~2호", |
|
|
|
value: "인천광역시 서구 로봇랜드로 155-11\n로봇랜드 14층 1401~2호", |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
{ label: "전화", value: "032-727-5909", href: "tel:032-727-5909" }, |
|
|
|
|
|
|
|
{ label: "팩스", value: "032-727-5908" }, |
|
|
|
{ |
|
|
|
{ |
|
|
|
icon: <IconPhone />, |
|
|
|
|
|
|
|
label: "전화", |
|
|
|
|
|
|
|
value: "032-727-5909", |
|
|
|
|
|
|
|
href: "tel:032-727-5909", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
icon: <IconFax />, |
|
|
|
|
|
|
|
label: "팩스", |
|
|
|
|
|
|
|
value: "032-727-5908", |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
icon: <IconMail />, |
|
|
|
|
|
|
|
label: "이메일", |
|
|
|
label: "이메일", |
|
|
|
value: "help@palnet.co.kr", |
|
|
|
value: "help@palnet.co.kr", |
|
|
|
href: "mailto:help@palnet.co.kr", |
|
|
|
href: "mailto:help@palnet.co.kr", |
|
|
|
@ -70,19 +27,22 @@ const TRANSPORT = [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
badge: "지하철", |
|
|
|
badge: "지하철", |
|
|
|
text: "인천 1호선 검암역 하차 → 도보 약 15분 또는 택시 5분 (로봇랜드 방면)", |
|
|
|
text: "인천 1호선 검암역 하차 → 도보 약 15분 또는 택시 5분 (로봇랜드 방면)", |
|
|
|
|
|
|
|
icon: "/PALNetworks/images/subway.png", |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
badge: "버스", |
|
|
|
badge: "버스", |
|
|
|
text: "검암역 환승센터에서 서구 방면 버스 탑승 → 로봇랜드 하차", |
|
|
|
text: "검암역 환승센터에서 서구 방면 버스 탑승 → 로봇랜드 하차", |
|
|
|
|
|
|
|
icon: "/PALNetworks/images/bus.png", |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
badge: "자가용", |
|
|
|
badge: "자가용", |
|
|
|
text: "제2경인고속도로 검단IC 진출 → 로봇랜드로 방면 직진 약 5분", |
|
|
|
text: "제2경인고속도로 검단IC 진출 → 로봇랜드로 방면 직진 약 5분", |
|
|
|
|
|
|
|
icon: "/PALNetworks/images/car.png", |
|
|
|
}, |
|
|
|
}, |
|
|
|
]; |
|
|
|
]; |
|
|
|
|
|
|
|
|
|
|
|
// 카카오맵 위도/경도: 인천 로봇랜드 좌표 |
|
|
|
const MAP_SRC = |
|
|
|
const MAP_SRC = "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3161.8!2d126.6854!3d37.5613!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x357b7f6e5a5cfc7f%3A0x0!2z7Iuc7LKc7Jy87Lanb-qzoOq1rOyGjA!5e0!3m2!1sko!2skr!4v1700000000000"; |
|
|
|
"https://www.google.com/maps/embed?pb=!1m16!1m12!1m3!1d3164.5077769134846!2d126.60837056230932!3d37.51952592193411!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1z7J247LKcIOuhnOu0h-uenOuTnA!5e0!3m2!1sko!2skr!4v1779870074094!5m2!1sko!2skr"; |
|
|
|
|
|
|
|
|
|
|
|
export default function LocationPage() { |
|
|
|
export default function LocationPage() { |
|
|
|
const ref = useFadeIn(); |
|
|
|
const ref = useFadeIn(); |
|
|
|
@ -93,108 +53,140 @@ export default function LocationPage() { |
|
|
|
label="Company" |
|
|
|
label="Company" |
|
|
|
title={ |
|
|
|
title={ |
|
|
|
<> |
|
|
|
<> |
|
|
|
{/* <span style={{ color: "#111" }}>방문 안내</span> |
|
|
|
|
|
|
|
<br /> */} |
|
|
|
|
|
|
|
<em>Location</em> |
|
|
|
<em>Location</em> |
|
|
|
</> |
|
|
|
</> |
|
|
|
} |
|
|
|
} |
|
|
|
// desc="인천광역시 서구 로봇랜드에 위치한 팔네트웍스 본사입니다." |
|
|
|
|
|
|
|
navItems={COMPANY_NAV} |
|
|
|
navItems={COMPANY_NAV} |
|
|
|
/> |
|
|
|
/> |
|
|
|
|
|
|
|
|
|
|
|
<div className="sub-content"> |
|
|
|
<div className="sub-content"> |
|
|
|
|
|
|
|
<div className="inner-wrap"> |
|
|
|
|
|
|
|
<motion.div |
|
|
|
|
|
|
|
className="ht-header" |
|
|
|
|
|
|
|
initial={{ opacity: 0, y: 32 }} |
|
|
|
|
|
|
|
whileInView={{ opacity: 1, y: 0 }} |
|
|
|
|
|
|
|
viewport={{ once: true, margin: "-80px" }} |
|
|
|
|
|
|
|
transition={{ duration: 0.6, ease: [0.4, 0, 0.2, 1] }} |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<p className="ht-header-title"> |
|
|
|
|
|
|
|
Find Us, |
|
|
|
|
|
|
|
<br /> |
|
|
|
|
|
|
|
<em> |
|
|
|
|
|
|
|
<span>Here</span> <b>We Are</b> |
|
|
|
|
|
|
|
</em> |
|
|
|
|
|
|
|
</p> |
|
|
|
|
|
|
|
<em className="ht-header-sub"> |
|
|
|
|
|
|
|
인천광역시 서구 로봇랜드에 위치한 팔네트웍스 본사입니다 |
|
|
|
|
|
|
|
</em> |
|
|
|
|
|
|
|
</motion.div> |
|
|
|
|
|
|
|
|
|
|
|
<section className="sub-section"> |
|
|
|
<section className="sub-section"> |
|
|
|
<div className="location-wrap"> |
|
|
|
<div className="location-wrap"> |
|
|
|
{/* 지도 */} |
|
|
|
{/* 지도 + 교통편 */} |
|
|
|
<div className="sub-fade-in"> |
|
|
|
<motion.div |
|
|
|
|
|
|
|
initial={{ opacity: 0, y: 40 }} |
|
|
|
|
|
|
|
whileInView={{ opacity: 1, y: 0 }} |
|
|
|
|
|
|
|
viewport={{ once: true, margin: "-60px" }} |
|
|
|
|
|
|
|
transition={{ duration: 0.6, ease: [0.4, 0, 0.2, 1] }} |
|
|
|
|
|
|
|
> |
|
|
|
<div className="location-map"> |
|
|
|
<div className="location-map"> |
|
|
|
<iframe src={MAP_SRC} allowFullScreen loading="lazy" referrerPolicy="no-referrer-when-downgrade" title="팔네트웍스 본사 위치" /> |
|
|
|
<iframe |
|
|
|
|
|
|
|
src={MAP_SRC} |
|
|
|
|
|
|
|
allowFullScreen |
|
|
|
|
|
|
|
loading="lazy" |
|
|
|
|
|
|
|
referrerPolicy="no-referrer-when-downgrade" |
|
|
|
|
|
|
|
title="팔네트웍스 본사 위치" |
|
|
|
|
|
|
|
/> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
{/* 교통편 */} |
|
|
|
<div className="location-transport"> |
|
|
|
<div className="location-transport" style={{ marginTop: "28px" }}> |
|
|
|
|
|
|
|
<h3 className="location-transport-title">교통편 안내</h3> |
|
|
|
<h3 className="location-transport-title">교통편 안내</h3> |
|
|
|
<ul className="location-transport-list"> |
|
|
|
<ul className="location-transport-list"> |
|
|
|
{TRANSPORT.map((t) => ( |
|
|
|
{TRANSPORT.map((t, i) => ( |
|
|
|
<li key={t.badge} className="location-transport-item"> |
|
|
|
<motion.li |
|
|
|
<span className="location-transport-badge">{t.badge}</span> |
|
|
|
key={t.badge} |
|
|
|
<span className="location-transport-text">{t.text}</span> |
|
|
|
className="location-transport-item" |
|
|
|
</li> |
|
|
|
initial={{ opacity: 0, y: 24 }} |
|
|
|
|
|
|
|
whileInView={{ opacity: 1, y: 0 }} |
|
|
|
|
|
|
|
viewport={{ once: true }} |
|
|
|
|
|
|
|
transition={{ |
|
|
|
|
|
|
|
duration: 0.5, |
|
|
|
|
|
|
|
ease: [0.4, 0, 0.2, 1], |
|
|
|
|
|
|
|
delay: i * 0.1, |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<div className="location-transport-item-top"> |
|
|
|
|
|
|
|
<div className="location-transport-icon"> |
|
|
|
|
|
|
|
<img src={t.icon} alt={t.badge} /> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<span className="location-transport-badge"> |
|
|
|
|
|
|
|
{t.badge} |
|
|
|
|
|
|
|
</span> |
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<span className="location-transport-text"> |
|
|
|
|
|
|
|
{t.text} |
|
|
|
|
|
|
|
</span> |
|
|
|
|
|
|
|
</motion.li> |
|
|
|
))} |
|
|
|
))} |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</motion.div> |
|
|
|
|
|
|
|
|
|
|
|
{/* 연락처 카드 */} |
|
|
|
{/* 연락처 카드 */} |
|
|
|
<div className="location-info-card sub-fade-in" style={{ transitionDelay: "100ms" }}> |
|
|
|
<motion.div |
|
|
|
|
|
|
|
className="location-info-card" |
|
|
|
|
|
|
|
initial={{ opacity: 0, y: 40 }} |
|
|
|
|
|
|
|
whileInView={{ opacity: 1, y: 0 }} |
|
|
|
|
|
|
|
viewport={{ once: true, margin: "-60px" }} |
|
|
|
|
|
|
|
transition={{ |
|
|
|
|
|
|
|
duration: 0.6, |
|
|
|
|
|
|
|
ease: [0.4, 0, 0.2, 1], |
|
|
|
|
|
|
|
delay: 0.15, |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
> |
|
|
|
<h3>(주) PALNETWORKS</h3> |
|
|
|
<h3>(주) PALNETWORKS</h3> |
|
|
|
<ul className="location-info-list"> |
|
|
|
<ul className="location-info-list"> |
|
|
|
{INFO.map((item) => ( |
|
|
|
{INFO.map((item) => ( |
|
|
|
<li key={item.label} className="location-info-item"> |
|
|
|
<li key={item.label} className="location-info-item"> |
|
|
|
<div className="location-info-icon">{item.icon}</div> |
|
|
|
|
|
|
|
<div> |
|
|
|
|
|
|
|
<span className="location-info-label">{item.label}</span> |
|
|
|
<span className="location-info-label">{item.label}</span> |
|
|
|
{item.href ? ( |
|
|
|
{item.href ? ( |
|
|
|
<a className="location-info-value" href={item.href}> |
|
|
|
<a className="location-info-value" href={item.href}> |
|
|
|
{item.value} |
|
|
|
{item.value} |
|
|
|
</a> |
|
|
|
</a> |
|
|
|
) : ( |
|
|
|
) : ( |
|
|
|
<p className="location-info-value" style={{ margin: 0, whiteSpace: "pre-line" }}> |
|
|
|
<p |
|
|
|
|
|
|
|
className="location-info-value" |
|
|
|
|
|
|
|
style={{ margin: 0, whiteSpace: "pre-line" }} |
|
|
|
|
|
|
|
> |
|
|
|
{item.value} |
|
|
|
{item.value} |
|
|
|
</p> |
|
|
|
</p> |
|
|
|
)} |
|
|
|
)} |
|
|
|
</div> |
|
|
|
|
|
|
|
</li> |
|
|
|
</li> |
|
|
|
))} |
|
|
|
))} |
|
|
|
</ul> |
|
|
|
</ul> |
|
|
|
|
|
|
|
|
|
|
|
{/* 운영시간 */} |
|
|
|
|
|
|
|
<div className="location-hours"> |
|
|
|
<div className="location-hours"> |
|
|
|
<p |
|
|
|
<p className="location-hours-eyebrow">운영 시간</p> |
|
|
|
style={{ |
|
|
|
|
|
|
|
margin: "0 0 10px", |
|
|
|
|
|
|
|
fontSize: "11px", |
|
|
|
|
|
|
|
fontWeight: 700, |
|
|
|
|
|
|
|
letterSpacing: ".1em", |
|
|
|
|
|
|
|
textTransform: "uppercase", |
|
|
|
|
|
|
|
color: "rgba(17,17,17,.4)", |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
운영 시간 |
|
|
|
|
|
|
|
</p> |
|
|
|
|
|
|
|
<p className="location-hours-label"> |
|
|
|
<p className="location-hours-label"> |
|
|
|
평일 09:00 – 18:00 |
|
|
|
평일 09:00 – 18:00 |
|
|
|
<br /> |
|
|
|
<br /> |
|
|
|
<span className="location-hours-text">토·일·공휴일 휴무</span> |
|
|
|
<span className="location-hours-text"> |
|
|
|
|
|
|
|
토·일·공휴일 휴무 |
|
|
|
|
|
|
|
</span> |
|
|
|
</p> |
|
|
|
</p> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<a |
|
|
|
<a |
|
|
|
href="/contact/inquiry" |
|
|
|
href="/contact/inquiry" |
|
|
|
style={{ |
|
|
|
className="location-inquiry-btn" |
|
|
|
display: "flex", |
|
|
|
|
|
|
|
alignItems: "center", |
|
|
|
|
|
|
|
justifyContent: "center", |
|
|
|
|
|
|
|
marginTop: "20px", |
|
|
|
|
|
|
|
height: "50px", |
|
|
|
|
|
|
|
background: "var(--color-primary)", |
|
|
|
|
|
|
|
borderRadius: "12px", |
|
|
|
|
|
|
|
fontSize: "15px", |
|
|
|
|
|
|
|
fontWeight: 700, |
|
|
|
|
|
|
|
color: "#fff", |
|
|
|
|
|
|
|
textDecoration: "none", |
|
|
|
|
|
|
|
letterSpacing: "-.01em", |
|
|
|
|
|
|
|
transition: "opacity .2s", |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
onMouseEnter={(e) => (e.currentTarget.style.opacity = ".85")} |
|
|
|
onMouseEnter={(e) => (e.currentTarget.style.opacity = ".85")} |
|
|
|
onMouseLeave={(e) => (e.currentTarget.style.opacity = "1")} |
|
|
|
onMouseLeave={(e) => (e.currentTarget.style.opacity = "1")} |
|
|
|
> |
|
|
|
> |
|
|
|
문의하기 |
|
|
|
문의하기 |
|
|
|
</a> |
|
|
|
</a> |
|
|
|
</div> |
|
|
|
</motion.div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</section> |
|
|
|
</section> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
</article> |
|
|
|
</article> |
|
|
|
); |
|
|
|
); |
|
|
|
} |
|
|
|
} |
|
|
|
|