Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
LINE x obnizハンズオン
Search
kido
August 29, 2018
Technology
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LINE x obnizハンズオン
kido
August 29, 2018
More Decks by kido
See All by kido
obnizテクニカルサポート
9wick
0
110
vonageハッカソン:obnizテクノロジーサポート
9wick
0
90
ハードウェアを動かすTypeScriptの世界
9wick
3
2.8k
HackRockFes2023テクニカルサポート obniz
9wick
0
150
極寒IoT
9wick
0
1.5k
ドミノ倒し.pdf
9wick
0
1.3k
sony MESHとKintoneとobnizでドミノ倒しIoT
9wick
0
290
bit.Connect 2021サポート
9wick
0
260
基礎代謝を測るIoT
9wick
0
670
Other Decks in Technology
See All in Technology
Patterns in AI Driven Software Development
akosma
PRO
0
480
Deep Data Security 機能解説
oracle4engineer
PRO
3
1k
生成AI時代のIAMのマニアックな話
takuros
3
320
現場を動かすAIエージェント#2_製造業現場でのAI活用から見た、ハマる罠と実践知
kintotechdev
2
140
リアクションエンジニア ― 小さなリアクションから、話しかけやすい組織をつくる ―
ryuguyana
1
120
公共システムAdventCalendar2026
toru_kubota
0
150
20261031_IoTLT_vol140_kitazaki_v1.pdf
kitazaki
0
170
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
280
企画からFlutter実装まで、1つの機能を一貫して開発したプロセスと成果物
khiroyuki1003
1
150
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
380
20261016_Nagoya Tech Talk #4 データ活用のリアル AIも人も間違える
bessaralink55
0
160
Technical Project Manager の役割とやりがい、少しだけ AI
yoshiiryo1
0
590
Featured
See All Featured
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Building Adaptive Systems
keathley
44
3.3k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
620
Tell your own story through comics
letsgokoyo
1
1.1k
Making Projects Easy
brettharned
120
6.8k
New Earth Scene 8
popppiees
4
2.8k
Balancing Empowerment & Direction
lara
6
1.4k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
560
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
How to Ace a Technical Interview
jacobian
280
24k
The agentic SEO stack - context over prompts
schlessera
0
1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
ՆͷऴΘΓͷۦ͚ࠐΈϋϯζΦϯ
ΞδΣϯμ 19:00ʙɹ͡Ίʹ ɹLINE BOOT AWARDSɹ/ Clovaʹ͍ͭͯ ɹobnizʹ͍ͭͯ 19:20ʙɹϋϯζΦϯ 21:20ʙɹ͘͘λΠϜʗ࣭λΠϜɹ
͡Ίʹ LINE BOOT AWARDS / Clova ʹ͍ͭͯ
obnizͬͯͳʹʁ
ϋʔυΣΞʢిࢠճ࿏ʣΛ ωοτ͔Βૢ࡞͢Δ͜ͱ͕Ͱ͖Δ։ൃϘʔυͰ͢ ωοτ͔Βૢ࡞Ͱ͖Δ ʹ ԻεΩϧͱ૬ੑ͕ྑ͍Ͱ͢ ͱͳʹ͔
ͱͳʹ͔ • ిؾ৴߸ΛAPIͱ੍ͯ͠ޚͰ͖ΔIoT։ൃϘʔυ wifiͰৗ࣌ଓ ϢʔβʔϓϩάϥϜ ηϯαʗϞʔλʔ
ͱͳʹ͔ • ిؾ৴߸ΛAPIͱ੍ͯ͠ޚͰ͖ΔIoT։ൃϘʔυ wifiͰৗ࣌ଓ ϢʔβʔϓϩάϥϜ ᶃAPIͰΫϥυ ίϚϯυૹ৴ ηϯαʗϞʔλʔ
ͱͳʹ͔ • ిؾ৴߸ΛAPIͱ੍ͯ͠ޚͰ͖ΔIoT։ൃϘʔυ wifiͰৗ࣌ଓ ϢʔβʔϓϩάϥϜ ᶃAPIͰΫϥυ ίϚϯυૹ৴ ηϯαʗϞʔλʔ ᶄίϚϯυʹԠͯ͡ ηϯαʗϞʔλʔΛ੍ޚ
ͱͳʹ͔ • ిؾ৴߸ΛAPIͱ੍ͯ͠ޚͰ͖ΔIoT։ൃϘʔυ wifiͰৗ࣌ଓ ϢʔβʔϓϩάϥϜ ᶃAPIͰΫϥυ ίϚϯυૹ৴ ᶅ੍ޚ݁Ռ͕ ؼͬͯ͘Δ ηϯαʗϞʔλʔ
ᶄίϚϯυʹԠͯ͡ ηϯαʗϞʔλʔΛ੍ޚ
ͱͳʹ͔ • ిؾ৴߸ΛAPIͱ੍ͯ͠ޚͰ͖ΔIoT։ൃϘʔυ • APIͷࣝͱηϯαʗϞʔλʔͷ͚ࣝͩͰ IoTΛ࡞Δ͜ͱ͕Ͱ͖Δ wifiͰৗ࣌ଓ ϢʔβʔϓϩάϥϜ ᶃAPIͰΫϥυ ίϚϯυૹ৴
ᶅ੍ޚ݁Ռ͕ ؼͬͯ͘Δ ηϯαʗϞʔλʔ ᶄίϚϯυʹԠͯ͡ ηϯαʗϞʔλʔΛ੍ޚ
obnizͱClovaΛ࿈ܞͤ͞Δͱɾɾɾ ϋʔυΣΞͱԻͰ͍Ζ͍ΖͰ͖ͪΌ͍·͢ʂ Ͷ͐Ϋϩʔόɼΰϛശ։͚ͯ Ͷ͐ΫϩʔόɼτΠϨ୭͔ೖͬͯΔʁ Ͷ͐ΫϩʔόɼΧʔςϯ։͚ͯ Ͷ͐Ϋϩʔόɼ૭͠·ͬͯΔʁ
ϋϯζΦϯʹ ೖ͍͖ͬͯ·͠ΐ͏ʂ
࠷ॳʹ • ৼΓฦΓʗίϐϖ༻ʹ͓͍͍ͩ͘͞ →͜ͷURLΛݟ·͠ΐ͏ɹͱ͍͏ͷ͕ͨ͘͞Μ͋Γ·͢ • ਐߦεϐʔυશһʹ߹ΘͤͯਐΊ·͢ • ઌʹਐΊΔਓɼࢿྉΛݟͳ͕ΒઌʹਐΜͰ͍͍ͨͩͯେ ৎͰ͢ʂ •
πΠʔτେܴͰ͢ɹ#obniz #linebootawards
ࠓճ࡞Δͷ લ͢͢Ίʂ ͏͖͝·͢ ΫϩʔόʔͰಈ͘ंɼΫϩʔόɾϥδίϯΛ࡞Γ·͢
ࠓճ࡞Δͷ IUUQTZPVUVCF32Z2SU[ND
صͷ্ʹ͋Γ·͔͢ʁ • obniz • LED • Ϟʔλʔ • ڑηϯα •
൘ • Clova • ྆໘ςʔϓ • ϞόΠϧόοςϦʔ • PC • USBέʔϒϧ (Micro Bࢠ) Ϩϯλϧ/1ਓ1ݸ ࣋ͪ Ϩϯλϧ/ਓͰγΣΞ ˞Ϩϯλϧճऩ͠·͢ͷͰɼஸೡʹѻ͍ͬͯͩ͘͞
obnizΛ ৮ͬͯΈΑ͏ʂ
obnizͷwifiΛઃఆ͠Α͏ • https://obniz.io/doc/quickstart ͷStep2ΛΓ·͢ • ·ͣobnizͷిݯΛೖΕɼ wifiΛબ͠·͢ • ύεϫʔυΛ̍จࣈͣͭೖྗ͠·͢
WIFIใ ɹɹSSID : ɹɹPASSWORD : ※ձͰͷΈදࣔ
ಈ࡞֬ೝ • QRίʔυ͕ग़ͨΒɼhttps://obniz.io/doc/quickstart ͷ Step3ɼఱؾ༧ใΛදࣔͯ͠ΈΑ͏
obnizͷαϯϓϧϓϩάϥϜΛࢼͯ͠ΈΑ͏ • LEDνΧΛͯ͠ΈΑ͏ https://obniz.io/doc/lessons_turning_on_led • ڑηϯαʔͰ༡ΜͰΈΑ͏ https://obniz.io/sdk/parts/GP2Y0A21YK0F/ https://obniz.io/explore/35
node.js͔ΒͬͯΈ·͠ΐ͏ 1. node.jsΛμϯϩʔυɾΠϯετʔϧ 2. ຊ൪ڥͷߏங 3. ϩʔΧϧͰ࡞ɾςετ 4. σϓϩΠ 5.
ຊ൪ڥͰ࣮ߦ
node.js͔ΒͬͯΈ·͠ΐ͏ 1. node.jsΛμϯϩʔυɾΠϯετʔϧ 2. ຊ൪ڥͷߏங 3. ϩʔΧϧͰ࡞ɾςετ 4. σϓϩΠ 5.
ຊ൪ڥͰ࣮ߦ ͜ΕΒෆཁͰ͢
node.js͔ΒͬͯΈ·͠ΐ͏ 1. node.jsΛμϯϩʔυɾΠϯετʔϧ 2. ຊ൪ڥͷߏங 3. ϩʔΧϧͰ࡞ɾςετ 4. σϓϩΠ 5.
ຊ൪ڥͰ࣮ߦ ͜ΕΒෆཁͰ͢ 3VOLJUͰ ͚ͩ͜͜Γ·͢ node.jsͩͱͯ͠ڥߏஙෆཁͰ͓खܰʹΓ·͠ΐ͏
Runkitͱ Runkitnode.jsΛ͙͢ʹαʔόʔͰಈ͔ͤΔαʔϏεͰ͢ɽ • ڥߏஙࡁΈͳͷͰɼnode.jsΛͪΐͬ͜ͱ͓ࢼ͍ͨ͠͠ͱ͖ʹ ͍͍ͯ·͢ɽ • ؆୯ͳΞϓϦΛ࡞Δ͜ͱ͕Ͱ͖·͢ • endpointʢHTTPSαʔόʔʣ࡞Δ͜ͱ͕Ͱ͖·͢
RunkitͰಈ͔͢ͱ͖ͷϑϩʔ ෦ obniz on Ϣʔβʔ HTTPϦΫΤετૹ৴ obnizͱଓ ଓྃ “motor move“Λ
“io0 5V"ʹม ίϚϯυड৴ io0Λ5Vʹ͢Δ ಈ͘ Ϩεϙϯεฦ͢ “io0 5V”Λૹ৴ Ϩεϙϯεडྖ
node.js͔ΒͬͯΈ·͠ΐ͏ https://runkit.com/ ʹϩάΠϯ͠·͢ ※macͷsafariͩͱຊޠจࣈೖྗ͕Ͱ͖ͳ͍͜ͱ͕͋ΔͷͰɼ Chrome, FirefoxΛ͓͢͢Ί͠·͢
node.js͔ΒͬͯΈ·͠ΐ͏ ͪ͜ΒͷίʔυΛClone͠·͢ https://runkit.com/9wick/obniz-express-base-code
node.js͔ΒͬͯΈ·͠ΐ͏ obniz id͚ͩॻ͖͑ͯɼendpointϘλϯΛԡ͠·͢
ϞʔλʔΛnode.js͔Βಈ͔͢ λΠϠͱϞʔλʔΛͭͳ͛ͯɼobnizʹ͠·͢ 0൪pinͱ1൪pinʹͭͳ͗·͢
ϞʔλʔΛnode.js͔Βಈ͔͢ ϞʔλʔΛ̍ඵ͚ͩલʹಈ͔͠·͢ IUUQTSVOLJUDPNXJDLPCOJ[ FYQSFTTNPUPSDPEF
ClovaΛ ৮ͬͯΈΑ͏ʂ
Clova + Runkit+obnizͷϑϩʔ obniz on Clova ʮલʹਐΊʯ obnizͱଓ ଓྃ “motor
move“Λ “io0 5V"ʹม ίϚϯυड৴ io0Λ5Vʹ͢Δ ಈ͘ Ϩεϙϯεฦ͢ “io0 5V”Λૹ৴ ʮલʹਐΈ·͢ʯ σόΠε ԻΛղੳͯ͠ httpϦΫΤετૹ৴ σόΠεʹૹ৴ HTTPϦΫΤετΛղੳ ෦
clova + Runkit+obnizͷϑϩʔ obniz on Clova ʮલʹਐΊʯ obnizͱଓ ଓྃ “motor
move“Λ “io0 5V"ʹม ίϚϯυड৴ io0Λ5Vʹ͢Δ ಈ͘ Ϩεϙϯεฦ͢ “io0 5V”Λૹ৴ ʮલʹਐΈ·͢ʯ σόΠε ԻΛղੳͯ͠ httpϦΫΤετૹ৴ σόΠεʹૹ৴ HTTPϦΫΤετΛղੳ ͜Ε͔Β࡞Δ෦ ઌఔମݧͨ͠෦ ෦
LINE Clovaͷઃఆ ىಈ͠·ͨ͠ લʹ͢͢Ί લʹਐΈ·͢ ΫϩʔόɾϥδίϯΛىಈͯ͠
LINE Clovaͷઃఆ ΫϩʔόɾϥδίϯΛىಈͯ͠ ΞϓϦ໊ ɾεϩοτ(ҙ୯ޠͷॴ) ɾεϩοτλΠϓ ʢͲΜͳ୯ޠ͕ೖΔ͔) લʗޙΖ Πϯςϯτʢจʣ ىಈ͠·ͨ͠
લʹ͢͢Ί લʹਐΈ·͢ ্هΛͯ͢Web্Ͱొ͍͖ͯ͠·͢ ※ฦnode.jsͰॻ͍͍͖ͯ·͢
LINE Clovaͷઃఆ(ΞϓϦͷొ) ΞϓϦͷొΛ͠·͠ΐ͏ https://clova-developers.line.me/
LINE Clovaͷઃఆ(ΞϓϦͷొ) ϩάΠϯ͠·͢
LINE Clovaͷઃఆ(ΞϓϦͷొ) εΩϧνϟωϧΛ࡞͠·͢
LINE Clovaͷઃఆ(ΞϓϦͷొ) ϓϩόΠμʢऀʣΛબʗ࡞͠·͢
LINE Clovaͷઃఆ(ΞϓϦͷొ) νϟωϧ໊Λࢦఆͯ͠࡞͠·͢ νϟωϧ໊ɿΫϩʔόɾϥδίϯ ࣍ͷը໘ͦͷ··Create͠·͢
LINE Clovaͷઃఆ(ΞϓϦͷొ) νϟωϧͷجຊઃఆΛ͠·͢ ࡞ϘλϯΛԡͯ͠อଘ͍ͯͩ͘͠͞ λΠϓ ΧελϜ &YUFOTJPO*% υϝΠϯͷٯॱ FYJPPCOJ[TLJM εΩϧ໊
Ϋϩʔόɾϥδίϯ ݺͼग़໊͠ ϝΠϯ Ϋϩʔόϥδίϯ ݺͼग़໊͠ αϒ ϥδίϯ "VEJP1MBZFSͷ༻ ͍͍͑ ఏڙऀ۠ ݸਓ ఏڙऀ໊ ࣗͷ໊લ ୲ऀϝʔϧΞυϨε ࣗͷΞυϨε &YUFOTJPOͱ࿈ܞ͢Δ -*/&ͷΞΧϯτ બ͠ͳ͍
LINE Clovaͷઃఆ(ରϞσϧͷొ) ԻϫʔυͷొΛ͠·͢ʢ͔͜͜Β͕ຊ൪ʂʣ ʮεΩϧઃఆʯϘλϯΛԡ͠·͢
LINE Clovaͷઃఆ(ରϞσϧͷొ) ରϞσϧͷमਖ਼Λԡ͠·͢
LINE Clovaͷઃఆ(ରϞσϧͷొ) ରϞσϧͷฤूը໘͕ग़͖ͯ·͢
LINE Clovaͷઃఆ ΞϓϦ໊ ɾεϩοτ(ҙ୯ޠͷॴ) ɾεϩοτλΠϓ ʢͲΜͳ୯ޠ͕ೖΔ͔) લʗޙΖ Πϯςϯτʢจʣ ΠϯςϯτͱεϩοτͱεϩοτλΠϓͰ ࠞཚ͠ͳ͍Α͏ʹɾɾɾ
ىಈ͠·ͨ͠ લʹ͢͢Ί લʹਐΈ·͢ ΫϩʔόɾϥδίϯΛىಈͯ͠
LINE Clovaͷઃఆ(ରϞσϧͷొ) εϩοτͷొΛ͠·͠ΐ͏ ΧελϜεϩοτλΠϓͷ ՃϘλϯΛԡ͠·͢ ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ(ରϞσϧͷొ) ໊લΛ͚ͭͯεϩοτλΠϓΛ࡞͠·͢ εϩοτλΠϓ໊ɿDirectionSlotType ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ(ରϞσϧͷొ) εϩοτλΠϓͷ୯ޠΛೖྗ͠·͢ લʗޙΖΛೖྗ͠·͠ΐ͏ ॻ͖ऴΘͬͨΒอଘ͠·͢ ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ ΠϯςϯτͷొΛ͠·͠ΐ͏ ΠϯςϯτͷՃϘλϯΛԡ͠·͢ ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ ໊લΛ͚ͭͯΧελϜΠϯςϯτΛ࡞͠·͢ Πϯςϯτ໊ɿMoveIntent ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ αϯϓϧରϦετʹՃ͠·͢ ରϦετɿલಈ͚ ϥδίϯ ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ ରϦετͷʮલʯͷ෦Λυϥοάͯ͠ɼεϩοτԽ͠·͢ εϩοτ໊:DirectionSlot ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ DirectionSlotͷλΠϓΛDirectionSlotTypeʹઃఆ͠·͢ ઃఆͨ͠ΒอଘϘλϯΛԡ͠·͢ ɾεϩοτ(Ґஔ) ɾεϩοτλΠϓ (୯ޠ) Πϯςϯτ ʮલ͢͢Ίʯ
LINE Clovaͷઃఆ ઃఆͰ͢ʂ ϏϧυϘλϯΛԡ͠·͠ΐ͏ʢɿ݁ߏ͔͔࣌ؒΓ·͢ 15͙Β͍ʣ
ϋʔυΣΞ࡞ Ϗϧυ͍ͯ͠ΔؒʹϋʔυΣΞͱnode.jsଆΛ࡞Γ·͠ΐ͏ λΠϠͱϞʔλʔΛͭͳ͛ͯɼobnizʹ͠·͢
ϋʔυΣΞ࡞ ̎ͭಉ͡Α͏ʹ͠·͢
ϋʔυΣΞ࡞ ྆໘ςʔϓͰ൘ʹࢭΊͨΒͰ͢ obnizͱέʔϒϧదʹͱΊ͍ͯͩ͘͞
node.jsͷ࡞ ίʔυΛΫϩʔϯͯ͠ɼURLͷൃߦʗొΛ͠·͠ΐ͏ https://runkit.com/9wick/obniz-x-line-clova-base-code
LINE Clovaͷઃఆ RunkitͰclovaExtensionIdͱyourObnizIdΛઃఆ͠·͢ clovaExtensionIdج ຊઃఆͰઃఆͨ͠ͷͰ ͢
node.jsͷ࡞ ClovaʹendpointͷURLΛొ͠·͢ ɾendpointΛԡͯ͠ɼ৽͍͠λϒͰURLΛ։͖·͢ ɾURLΛίϐʔ͠·͢ ˞ʮCannot GET /ʯͱग़·͕͢ɼؾʹ͠ͳͯ͘େৎͰ͢ (ϒϥβ͔Βͷ௨ৗͷϦΫΤετʹରԠ͍ͯ͠ͳ͍ΤϥʔͰ͢)
LINE Clovaͷઃఆ ΞϓϦͷجຊใΛमਖ਼͠·͢
LINE Clovaͷઃఆ αʔόʔઃఆΛ͠·͢
LINE Clovaͷઃఆ ExtensionαʔόʔͷURLΛઌఔίϐʔͨ͠URLʹͯ͠อଘ͠·͢
LINE Clovaͷઃఆ Ϗϧυ͕ऴΘΔͷΛͪ·͠ΐ͏ɽɽɽ ͪ࣌ؒͰ؆୯ʹίʔυͷղઆ͠·͢ɽ ղઆ͕ऴΘͬͯϏϧυ͕ऴΘͬͯͳ͔ͬͨΒɼ ઌʹϥδίϯͱͯ͠༡ΜͰ͍ͯͩ͘͞ https://obniz.io/explore/42
LINE Clovaͷઃఆ ςετը໘ʹߦ͖·͢
LINE Clovaͷઃఆ ςετจࣈΛೖྗͯ͠ɼςετ͠·͠ΐ͏ ςετจࣈྻɿલਐΊ ϥδίϯಈ͖·͔ͨ͠ʁ
࣮ػͰςετ ࣮ػͰςετ͠·͠ΐ͏ ClovaͱεϚϗΛඥ͚ͮͯɼClovaΞϓϦ͔Βಈ͔͠·͢ ӈ্ͷઃఆϘλϯ Λબ εΩϧετΞΛબ Ϋϩʔόɾϥδίϯ Λબ ར༻։࢝Λબ
࣮ػͰςετ ClovaʹΛ͔͚ͯΈ·͠ΐ͏ Ͷ͐ΫϩʔόɼΫϩʔόϥδίϯىಈͯ͠ લ͢͢Ί ޙΖ͢͢Ί
͓͔ͭΕ͞·Ͱͨ͠
obniz x ClovaͰͰ͖Δ͜ͱ αʔϘϞʔλΛͬͨεΠονͷΦϯΦϑ ɹ ԹηϯαΛͬͨԹ௨ ɹ ֎ઢϦϞίϯͱͷ࿈ಈ ɹ ϞʔλʔͰཧతͳͷΛಈ͔͢
Ͷ͐Ϋϩʔόɼ෦ͷిؾফͯ͠ Ͷ͐Ϋϩʔόɼ෦ͷԹڭ͑ͯ Ͷ͐ΫϩʔόɼTV͚ͭͯ Ͷ͐Ϋϩʔόɼ͓ӡΜͰ
͘͘λΠϜʗ࣭λΠϜ • ࣗ༝ʹίʔυΛ͍ͬͯ͡ΈͨΓɼਫ਼ಡͯ͠ΈͨΓ͍ͯͩ͘͠͞ • ࣭େܴͰ͢ɽपΓͷελοϑʹฉ͍͍ͯͩ͘͞