|
1 | 1 | import Image from 'next/image'; |
2 | | -import MainImage from '@/assets/svg/main/main-image.svg'; |
3 | | -import MainIconPipe from '@/assets/svg/main/main-icon-pipe.svg'; |
4 | | -import MainCharacter from '@/assets/svg/main/main-character.svg'; |
5 | | -import MainIconArrow from '@/assets/svg/main/main-icon-arrow.svg'; |
6 | | -import MainIconPartner from '@/assets/svg/main/main-icon-partner.svg'; |
7 | | -import QnADropdown from '@/components/QnADropdown'; |
8 | | -import MentorSlider from '@/components/MentorSlider'; |
| 2 | +import dynamic from 'next/dynamic'; |
| 3 | +import { QnAData } from '@/static/main/QnA'; |
9 | 4 | import GlobalNavigationBar from '@/components/GlobalNavigationBar'; |
10 | 5 | import ApplyButton from '@/components/ApplyButton'; |
11 | 6 |
|
| 7 | +const MentorSlider = dynamic(() => import('@/components/MentorSlider')); |
| 8 | +const QnADropdown = dynamic(() => import('@/components/QnADropdown')); |
| 9 | + |
12 | 10 | export default function Home() { |
| 11 | + const faqStructuredData = { |
| 12 | + '@context': 'https://schema.org', |
| 13 | + '@type': 'FAQPage', |
| 14 | + mainEntity: QnAData.map((item) => ({ |
| 15 | + '@type': 'Question', |
| 16 | + name: item.question, |
| 17 | + acceptedAnswer: { |
| 18 | + '@type': 'Answer', |
| 19 | + text: item.answer, |
| 20 | + }, |
| 21 | + })), |
| 22 | + }; |
| 23 | + |
13 | 24 | return ( |
14 | | - <div className="hide-scrollbar w-full overflow-x-auto"> |
| 25 | + <main className="hide-scrollbar w-full overflow-x-auto"> |
| 26 | + <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(faqStructuredData) }} /> |
15 | 27 | <div className="min-w-360"> |
16 | | - <div className="relative aspect-1440/800 w-full"> |
| 28 | + <header className="relative aspect-1440/800 w-full"> |
17 | 29 | <Image |
18 | 30 | src="https://image.bcsdlab.com/bcsd_main_page_image.png" |
19 | | - alt="main Image" |
| 31 | + alt="BCSD 메인 대표 이미지" |
20 | 32 | fill |
21 | 33 | sizes="100vw" |
22 | 34 | className="object-cover" |
23 | 35 | priority |
24 | 36 | /> |
25 | 37 | <div className="absolute inset-0"> |
26 | 38 | <div className="font-inter absolute top-75 left-30 m-4 -translate-y-1/2 text-white min-[1440px]:top-75 min-[1440px]:left-35 min-[1440px]:translate-y-0"> |
27 | | - <p className="text-[40px] leading-[120%] font-semibold"> |
| 39 | + <h1 className="text-[40px] leading-[120%] font-semibold"> |
28 | 40 | 각자의 궤도를 그리며 |
29 | 41 | <br /> |
30 | 42 | BCSD와 함께 성장하세요. |
31 | | - </p> |
| 43 | + </h1> |
32 | 44 | <ApplyButton className="mt-6 rounded-[10px] bg-[#C360F3] px-5 py-3.25 text-white" /> |
33 | 45 | </div> |
34 | 46 | </div> |
35 | | - </div> |
| 47 | + </header> |
36 | 48 | <GlobalNavigationBar location="Main" /> |
37 | 49 |
|
38 | 50 | <div className="min-h-screen gap-16"> |
39 | 51 | <div className="space-y-20"> |
40 | | - <div className="flex justify-between px-30 pt-30"> |
| 52 | + <section className="flex justify-between px-30 pt-30"> |
41 | 53 | <div> |
42 | | - <p className="text-[34px] leading-[120%] font-medium text-neutral-100">열린 공간 BCSD</p> |
| 54 | + <h2 className="text-[34px] leading-[120%] font-medium text-neutral-100">열린 공간 BCSD</h2> |
43 | 55 | <p className="mt-3.25"> |
44 | 56 | 마치 은하계가 외부의 다른 천체들과 상호작용하듯, |
45 | 57 | <br /> BCSD는 구성원들 간의 교류뿐만 아니라 외부의 다양한 |
46 | 58 | <br /> 사람들과도 소통하고 지식을 공유할 수 있는 열린 공간입니다. |
47 | 59 | </p> |
48 | 60 | </div> |
49 | | - <MainImage /> |
50 | | - </div> |
51 | | - <div className="relative flex h-150 items-center justify-center bg-[linear-gradient(180deg,rgba(255,255,255,0.00)_-9.38%,#FEF2FF_67.06%,rgba(255,255,255,0.00)_90.62%)]"> |
| 61 | + <Image |
| 62 | + src="/images/main/main-image.svg" |
| 63 | + alt="BCSD 열린 공간 일러스트" |
| 64 | + width="540" |
| 65 | + height="237" |
| 66 | + loading="lazy" |
| 67 | + unoptimized |
| 68 | + /> |
| 69 | + </section> |
| 70 | + <section className="relative flex h-150 items-center justify-center bg-[linear-gradient(180deg,rgba(255,255,255,0.00)_-9.38%,#FEF2FF_67.06%,rgba(255,255,255,0.00)_90.62%)]"> |
52 | 71 | <div className="space-y-4 text-center"> |
53 | | - <p className="text-[34px] leading-[120%] font-medium text-neutral-100">함께 성장하는 BCSD</p> |
| 72 | + <h2 className="text-[34px] leading-[120%] font-medium text-neutral-100">함께 성장하는 BCSD</h2> |
54 | 73 | <p> |
55 | 74 | 행성들은 고유한 궤도를 따라 움직이며 하나의 체계를 유지하듯이, |
56 | 75 | <br /> BCSD 내에서 각자가 자신의 목표를 향해 나아가면서도, |
57 | 76 | <br /> 협력과 교류를 통해 함께 더 큰 성장을 이뤄나갑니다. |
58 | 77 | </p> |
59 | 78 | </div> |
60 | 79 | <div className="absolute top-0 left-100"> |
61 | | - <MainIconPartner /> |
| 80 | + <Image |
| 81 | + src="/images/main/main-icon-partner.svg" |
| 82 | + alt="" |
| 83 | + aria-hidden="true" |
| 84 | + width="242" |
| 85 | + height="242" |
| 86 | + loading="lazy" |
| 87 | + unoptimized |
| 88 | + /> |
62 | 89 | </div> |
63 | 90 | <div className="absolute top-16 left-0"> |
64 | | - <MainIconPipe /> |
| 91 | + <Image |
| 92 | + src="/images/main/main-icon-pipe.svg" |
| 93 | + alt="" |
| 94 | + aria-hidden="true" |
| 95 | + width="326" |
| 96 | + height="500" |
| 97 | + loading="lazy" |
| 98 | + unoptimized |
| 99 | + /> |
65 | 100 | </div> |
66 | 101 | <div className="absolute top-32 right-32"> |
67 | | - <MainIconArrow /> |
| 102 | + <Image |
| 103 | + src="/images/main/main-icon-arrow.svg" |
| 104 | + alt="" |
| 105 | + aria-hidden="true" |
| 106 | + width="475" |
| 107 | + height="478" |
| 108 | + loading="lazy" |
| 109 | + unoptimized |
| 110 | + /> |
68 | 111 | </div> |
69 | | - </div> |
| 112 | + </section> |
70 | 113 | <MentorSlider /> |
71 | 114 | </div> |
72 | | - <div className="relative flex h-245 flex-col items-center justify-center bg-linear-to-b from-white to-[#F5DBFF]"> |
| 115 | + <section className="relative flex h-245 flex-col items-center justify-center bg-linear-to-b from-white to-[#F5DBFF]"> |
73 | 116 | <div className="text-center"> |
74 | | - <p className="title">중력과 유대, BCSD에서의 원동력.</p> |
| 117 | + <h2 className="title">중력과 유대, BCSD에서의 원동력.</h2> |
75 | 118 | <p className="mt-3.5 text-center text-[17px]"> |
76 | 119 | 행성들이 중력을 통해 서로 영향을 주고 받으며 균형을 유지하듯이, |
77 | 120 | <br /> BCSD에서는 비기너, 레귤러, 멘토가 각자의 위치에서 상호작용하며 |
78 | 121 | <br /> 서로를 성장시키는 원동력이 되어줍니다. |
79 | 122 | </p> |
80 | 123 | </div> |
81 | 124 | <div className="mt-16"> |
82 | | - <p className="text-center text-[34px] leading-[120%] font-medium">또 하나의 행성 할 사람?</p> |
| 125 | + <h2 className="text-center text-[34px] leading-[120%] font-medium">또 하나의 행성 할 사람?</h2> |
83 | 126 | <div className="text-center"> |
84 | 127 | <ApplyButton className="mt-6 rounded-[10px] bg-[#D365FD] p-2.5 text-[17px] text-[#FFF]" label="저요!" /> |
85 | 128 | </div> |
86 | 129 | </div> |
87 | | - <MainCharacter className="absolute bottom-0 left-0" /> |
88 | | - </div> |
| 130 | + <Image |
| 131 | + src="/images/main/main-character.svg" |
| 132 | + alt="" |
| 133 | + aria-hidden="true" |
| 134 | + width="528" |
| 135 | + height="297" |
| 136 | + loading="lazy" |
| 137 | + unoptimized |
| 138 | + className="absolute bottom-0 left-0" |
| 139 | + /> |
| 140 | + </section> |
89 | 141 | <QnADropdown /> |
90 | 142 | </div> |
91 | 143 | </div> |
92 | | - </div> |
| 144 | + </main> |
93 | 145 | ); |
94 | 146 | } |
0 commit comments