PageSourceSearch

https://senioruhak.web.app/_next/static/chunks/448-b3891b5818369749.js

js senioruhak.web.app collected 2026-10-03 12:35:42 UTC 35,251 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[448],{7448:function(e,l,i){"use strict";i.d(l,{Z:function(){return P}});var o=i(5893),s=i(1664),n=i.n(s),a=i(1163),c=i(7294),r=i(3935),t=i(6287),d=i(3228),h=i(5611);let m=e=>(null!=e?e:"").replace(/(\d)\s*[Hh](?![a-zA-Z])/g,"$1시간");var u=i(7363),p=i(7418),_=i(9417),x=i(7827),v=i(5796),b=i(2689),j=i.n(b),N=i(2323),k=i.n(N);function g(e){var l,i;let{current:s,groups:n,onSelect:a,ariaLabel:d}=e,[h,m]=(0,c.useState)(!1),[u,p]=(0,c.useState)(null),_=(0,c.useRef)(null),x=(0,c.useRef)(null),v=null!==(i=null===(l=n.flatMap(e=>e.items).find(e=>e.value===s))||void 0===l?void 0:l.label)&&void 0!==i?i:"";return(0,c.useEffect)(()=>{if(!h)return;let e=e=>{var l,i;let o=e.target;(null===(l=_.current)||void 0===l?void 0:l.contains(o))||(null===(i=x.current)||void 0===i?void 0:i.contains(o))||m(!1)},l=e=>{"Escape"===e.key&&m(!1)},i=e=>{var l;null!==(l=x.current)&&void 0!==l&&l.contains(e.target)||m(!1)},o=()=>m(!1);return document.addEventListener("mousedown",e),document.addEventListener("keydown",l),window.addEventListener("scroll",i,!0),window.addEventListener("resize",o),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",l),window.removeEventListener("scroll",i,!0),window.removeEventListener("resize",o)}},[h]),(0,o.jsxs)("div",{className:j().bcDd,children:[(0,o.jsxs)("button",{ref:_,type:"button",className:"".concat(j().bcDdBtn," ").concat(h?j().bcDdBtnOn:""),"aria-haspopup":"listbox","aria-expanded":h,"aria-label":d,onClick:function(){var e;if(h){m(!1);return}let l=null===(e=_.current)||void 0===e?void 0:e.getBoundingClientRect();if(!l)return;let i=Math.max(8,Math.min(l.left,window.innerWidth-320-8));p({top:l.bottom+6,left:i}),m(!0)},children:[(0,o.jsx)("span",{className:j().bcDdLabel,children:v}),(0,o.jsx)(t.Z,{name:"caret",size:13,className:"".concat(j().bcDdCaret," ").concat(h?j().bcDdCaretOn:"")})]}),h&&u&&(0,r.createPortal)((0,o.jsx)("div",{ref:x,className:j().bcDdMenu,role:"listbox","aria-label":d,style:{top:u.top,left:u.left},children:n.map((e,l)=>(0,o.jsxs)("div",{children:[e.label&&(0,o.jsx)("p",{className:j().bcDdGroup,children:e.label}),e.items.map(e=>(0,o.jsx)("button",{type:"button",role:"option","aria-selected":e.value===s,className:"".concat(j().bcDdItem," ").concat(e.value===s?j().bcDdItemOn:""),onClick:()=>{m(!1),e.value!==s&&a(e.value)},children:e.label},e.value))]},l))}),document.body)]})}let S=e=>{let l=Math.round(e/1e3)/10,i=Number.isInteger(l)?l.toLocaleString():l.toLocaleString(void 0,{minimumFractionDigits:1,maximumFractionDigits:1});return"".concat(i,"만원")},f=e=>e?S(e):"-",D=e=>null!=e?"₱".concat(e.toLocaleString()):"-",C=e=>{var l,i;let o=null!==(i=e.capacity)&&void 0!==i?i:Number(null===(l=/(\d+)\s*인/.exec(e.name))||void 0===l?void 0:l[1])||1;return o>=3?"".concat(o,"인실"):2===o?"2인실":"1인실"};function y(e){let{full:l}=e,i=(0,c.useRef)(null),[s,n]=(0,c.useState)(null),a=()=>n(null);function t(){let e=i.current;if(!e)return;let l=e.getBoundingClientRect(),o=Math.min(320,window.innerWidth-16),s=Math.max(8,Math.min(l.left,window.innerWidth-o-8)),a=l.top>120;n({left:s,w:o,above:a,y:a?window.innerHeight-l.top+8:l.bottom+8})}return(0,c.useEffect)(()=>{if(s)return window.addEventListener("scroll",a,!0),window.addEventListener("resize",a),()=>{window.removeEventListener("scroll",a,!0),window.removeEventListener("resize",a)}},[s]),(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("p",{ref:i,className:j().miniSpec,tabIndex:0,onMouseEnter:t,onMouseLeave:a,onFocus:t,onBlur:a,children:m(function(e){if(!e)return"";let l=function(e){let l="",i=0;for(let o of e)"("===o||"("===o?i++:")"===o||")"===o?i=Math.max(0,i-1):0===i&&(l+=o);return l}(e);return(l=l.replace(/(\d{1,2})\s*:\s*(\d{1,2})(?:\s*~\s*\d+)?/g,(e,l,i)=>2===i.length?e:"1"===l&&"1"===i?"1:1":"그룹")).replace(/\s{2,}/g," ").replace(/\s*\+\s*(?=\+|=|$)/g,"").replace(/^\s*\+\s*/,"").trim()}(l))}),s&&"undefined"!=typeof document&&(0,r.createPortal)((0,o.jsx)("div",{className:j().specTip,style:{left:s.left,maxWidth:s.w,...s.above?{bottom:s.y}:{top:s.y}},children:m(l)}),document.body)]})}function w(e){let{photos:l,index:i,alt:s,onClose:n,onMove:a}=e,t=(0,c.useRef)(null),d=l.length,h=e=>a((i+e+d)%d);return((0,c.useEffect)(()=>{let e=e=>{"Escape"===e.key?n():"ArrowLeft"===e.key?h(-1):"ArrowRight"===e.key&&h(1)};window.addEventListener("keydown",e);
1let l=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",e),document.body.style.overflow=l}},[i,d]),"undefined"==typeof document)?null:(0,r.createPortal)((0,o.jsxs)("div",{className:j().lbOverlay,onClick:n,role:"dialog","aria-modal":"true","aria-label":"사진 크게 보기",children:[(0,o.jsx)("button",{type:"button",className:j().lbClose,onClick:n,"aria-label":"닫기",children:"✕"}),(0,o.jsx)("div",{className:j().lbStage,onTouchStart:e=>{t.current=e.touches[0].clientX},onTouchEnd:e=>{let l=t.current;if(t.current=null,null==l||d<2)return;let i=e.changedTouches[0].clientX-l;Math.abs(i)>40&&h(i<0?1:-1)},children:(0,o.jsx)("img",{className:j().lbImg,src:l[i].url,alt:"".concat(s," 사진 ").concat(i+1),decoding:"async",onClick:e=>e.stopPropagation()})}),d>1&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("button",{type:"button",className:"".concat(j().lbNav," ").concat(j().lbPrev),"aria-label":"이전 사진",onClick:e=>{e.stopPropagation(),h(-1)},children:"‹"}),(0,o.jsx)("button",{type:"button",className:"".concat(j().lbNav," ").concat(j().lbNext),"aria-label":"다음 사진",onClick:e=>{e.stopPropagation(),h(1)},children:"›"})]}),d>1&&(0,o.jsxs)("p",{className:j().lbCount,children:[i+1," / ",d]})]}),document.body)}function T(e){let l="".concat(e.classDetails||""," ").concat(e.name||""),i=l.match(/1\s*:\s*1\s*(\d+)\s*h/i);if(i)return Number(i[1]);let o=l.match(/(\d+)\s*h/i);return o?Number(o[1]):0}let L=[{key:"rec",label:"추천순"},{key:"price",label:"저렴한 순"}],R=(e,l)=>{var i,o;return(null!==(i=e.price4Weeks)&&void 0!==i?i:9e9)-(null!==(o=l.price4Weeks)&&void 0!==o?o:9e9)},W=(e,l)=>{var i,o;return(null!==(i=e.price4Weeks)&&void 0!==i?i:9e9)-(null!==(o=l.price4Weeks)&&void 0!==o?o:9e9)};function E(e){var l;let{value:i,onChange:s}=e,[n,a]=(0,c.useState)(!1),r=(0,c.useRef)(null);return(0,c.useEffect)(()=>{if(!n)return;let e=e=>{var l;(null===(l=r.current)||void 0===l?void 0:l.contains(e.target))||a(!1)},l=e=>"Escape"===e.key&&a(!1);return document.addEventListener("mousedown",e),window.addEventListener("keydown",l),()=>{document.removeEventListener("mousedown",e),window.removeEventListener("keydown",l)}},[n]),(0,o.jsxs)("div",{className:k().sort,ref:r,children:[(0,o.jsxs)("button",{type:"button",className:k().btn,onClick:()=>a(e=>!e),"aria-haspopup":"listbox","aria-expanded":n,children:[null===(l=L.find(e=>e.key===i))||void 0===l?void 0:l.label,(0,o.jsx)("span",{className:"".concat(k().caret," ").concat(n?k().caretOn:""),"aria-hidden":"true"})]}),n&&(0,o.jsx)("div",{className:k().menu,role:"listbox",children:L.map(e=>(0,o.jsx)("button",{type:"button",role:"option","aria-selected":i===e.key,className:"".concat(k().item," ").concat(i===e.key?k().itemOn:""),onClick:()=>{s(e.key),a(!1)},children:e.label},e.key))})]})}function I(e){let{value:l,onChange:i}=e;return(0,o.jsx)("div",{className:j().popSortRow,role:"tablist",children:L.map(e=>(0,o.jsx)("button",{type:"button",role:"tab","aria-selected":l===e.key,className:"".concat(j().popSortTab," ").concat(l===e.key?j().popSortTabOn:""),onClick:()=>i(e.key),children:e.label},e.key))})}function P(e){var l,i,s,r,b,N,k,L,P,O,B,H,M,F,A,G,z,K,Q,Z,U,V,J,q,X,Y,$,ee;let{school:el,admin:ei,onConsult:eo,onMaterial:es,onClose:en}=e,ea=(0,a.useRouter)(),{visible:ec,metaOf:er}=(0,d.SZ)(),et=new Map;ec.forEach(e=>{et.has(e.region)||et.set(e.region,e.regionLabel)});let[ed,eh]=(0,c.useState)(null),[em,eu]=(0,c.useState)("rec"),[ep,e_]=(0,c.useState)("rec"),[ex,ev]=(0,c.useState)(8),[eb,ej]=(0,c.useState)(!1),[eN,ek]=(0,c.useState)(24),eg=[...(0,v.Zu)(el.id),...(null!==(Z=null==ei?void 0:ei.gallery)&&void 0!==Z?Z:[]).filter(e=>!e.hidden)],eS=(0,x.OS)(null!=ei?ei:{}).filter(e=>eg.some(l=>l.tab===e.key)),[ef,eD]=(0,c.useState)(""),eC=eS.some(e=>e.key===ef)?ef:null!==(U=null===(l=eS[0])||void 0===l?void 0:l.key)&&void 0!==U?U:"",ey=eg.filter(e=>e.tab===eC),[ew,eT]=(0,c.useState)(null),eL=(0,_.x)(el.id,el.name),eR={...eL,...null==ei?void 0:ei.meta,campus:eL.campus},eW=(null==ei?void 0:ei.heroImageUrl)||(0,h.p)(el.id,el.region,eR),eE=(0,h.KQ)(el.regionLabel,eR.title),eI=(null==ei?void 0:ei.galleryVisible)!==!1&&eg.length>0,eP=(null==ei?void 0:null===(i=ei.brochures)||void 0===i?void 0:i.length)?ei.brochures:(0,u.O)(el.id),eO=(null===(s=el.courses.find(e=>e.currency))||void 0===s?void 0:s.currency)||(null===(r=el.dormitories.find(e=>e.currency))||void 0===r?void 0:r.currency)||"KRW",eB=e=>
1e?"USD"===eO?"$".concat(e.toLocaleString()):"PHP"===eO?"₱".concat(e.toLocaleString()):S(e):"-",eH=e=>/\(\s*[1-3]\s*주\s*\)|trial|체험|단기|booster|부스터|family|가족|junior|주니어|보호자|guardian|자녀|kids|키즈/i.test(e.name),eM=el.courses.filter(e=>!eH(e)).length?el.courses.filter(e=>!eH(e)):el.courses,eF=eM.map(e=>{var l;let i=e.classDetails||"",o=e.name||"",s=0;/시니어|senior/i.test(o)&&(s+=4),/ESL/i.test(o)&&(s+=3),/보장|guarantee|IELTS|TOEIC|TOEFL|시험|business|sparta|스파르타|crazy/i.test(o)&&(s-=2);let n=Number((null===(l=i.match(/(\d+)\s*H/i))||void 0===l?void 0:l[1])||0);return n>=4&&n<=6?s+=2:n>6&&(s-=1),{c:e,s}}).sort((e,l)=>l.s-e.s||(e.c.price4Weeks||0)-(l.c.price4Weeks||0)).map(e=>e.c),eA=(null===(N=el.picks)||void 0===N?void 0:null===(b=N.recCourses)||void 0===b?void 0:b.length)?el.picks.recCourses.map(e=>el.courses.find(l=>l.name===e)).filter(e=>!!e):eF.slice(0,4),eG="price"===em?[...eM].filter(e=>e.price4Weeks).sort(R).slice(0,4):eA,ez="price"===em?[...el.courses].sort(R):el.courses,eK=(null===(L=el.picks)||void 0===L?void 0:null===(k=L.recDorms)||void 0===k?void 0:k.length)?el.picks.recDorms.map(e=>el.dormitories.find(l=>l.name===e)).filter(e=>!!e).map(e=>({d:e,kind:C(e)})):function(e){e=e.filter(e=>e.price4Weeks);let l=e=>/외부|external|호텔|콘도|hotel|condo|off/i.test(e),i=e=>1===e.capacity||/1인/.test(e.name),o=e=>2===e.capacity||/2인/.test(e.name),s=e=>e.length?e.reduce((e,l)=>{var i,o;return(null!==(i=e.price4Weeks)&&void 0!==i?i:9e9)<=(null!==(o=l.price4Weeks)&&void 0!==o?o:9e9)?e:l}):void 0,n=[],a=(e,l)=>{e&&!n.find(l=>l.d===e)&&n.push({d:e,kind:l})};return a(s(e.filter(e=>i(e)&&!l(e.name))),"기숙사 1인실"),a(s(e.filter(e=>o(e)&&!l(e.name))),"기숙사 2인실"),a(s(e.filter(e=>i(e)&&l(e.name))),"외부 1인실"),a(s(e.filter(e=>o(e)&&l(e.name))),"외부 2인실"),n.length||e.slice(0,2).forEach(e=>a(e,e.name)),n}(el.dormitories),eQ="price"===ep?[...el.dormitories].filter(e=>e.price4Weeks).sort(W).slice(0,4).map(e=>({d:e,kind:C(e)})):eK,eZ="price"===ep?[...el.dormitories].sort(W):el.dormitories,eU=null!==(V=null===(P=el.registrationFee)||void 0===P?void 0:P.amount)&&void 0!==V?V:0,eV=eA[0],eJ=e=>{var l,i;return null!==(i=e.capacity)&&void 0!==i?i:Number(null===(l=/(\d+)\s*인/.exec(e.name))||void 0===l?void 0:l[1])||1},eq=eM.filter(e=>e.price4Weeks),eX=el.dormitories.filter(e=>e.price4Weeks),eY=eq.length?eq.reduce((e,l)=>{var i,o;return(null!==(i=e.price4Weeks)&&void 0!==i?i:9e9)<=(null!==(o=l.price4Weeks)&&void 0!==o?o:9e9)?e:l}):void 0,e$=eX.length?eX.reduce((e,l)=>{var i,o;let s=eJ(e),n=eJ(l);return s!==n?s>n?e:l:(null!==(i=e.price4Weeks)&&void 0!==i?i:9e9)<=(null!==(o=l.price4Weeks)&&void 0!==o?o:9e9)?e:l}):void 0;(null===(B=el.picks)||void 0===B?void 0:null===(O=B.lowest)||void 0===O?void 0:O.course)&&(eY=null!==(J=el.courses.find(e=>e.name===el.picks.lowest.course))&&void 0!==J?J:eY),(null===(M=el.picks)||void 0===M?void 0:null===(H=M.lowest)||void 0===H?void 0:H.dorm)&&(e$=null!==(q=el.dormitories.find(e=>e.name===el.picks.lowest.dorm))&&void 0!==q?q:e$);let e0=((null==eY?void 0:eY.price4Weeks)||0)+((null==e$?void 0:e$.price4Weeks)||0),e1=(null===(A=el.picks)||void 0===A?void 0:null===(F=A.recCombo)||void 0===F?void 0:F.course)&&null!==(X=el.courses.find(e=>e.name===el.picks.recCombo.course))&&void 0!==X?X:eV,e4=(null===(z=el.picks)||void 0===z?void 0:null===(G=z.recCombo)||void 0===G?void 0:G.dorm)?el.dormitories.find(e=>e.name===el.picks.recCombo.dorm):null===(K=eK[0])||void 0===K?void 0:K.d,e2=((null==e1?void 0:e1.price4Weeks)||0)+((null==e4?void 0:e4.price4Weeks)||0),e9=el.packages||[],e3=el.courses.length>0,e6=el.dormitories.length>0,e8=e9.length?e9.reduce((e,l)=>{var i,o;return(null!==(i=e.price)&&void 0!==i?i:9e9)<=(null!==(o=l.price)&&void 0!==o?o:9e9)?e:l}):void 0,e7=e3&&e6&&e0?"split":(null==e8?void 0:e8.price)?"package":"none";(el.surcharges||[]).find(e=>e.amountPerWeek);let e5=null==ei?void 0:null===(Q=ei.reasons)||void 0===Q?void 0:Q.filter(e=>e&&e.trim()),le=(null==e5?void 0:e5.length)?e5:null!==(Y=p.O[el.id])&&void 0!==Y?Y:function(e,l,i,o){let s=[];e.courses.some(e=>/시니어|senior/i.test(e.name))&&s.push("시니어 전용 코스가 따로 있어, 또래 눈높이에 맞춘 수업을 받으실 수 있어요.");let n=e.courses.map(T).filter(e=>e>0);return n.length&&4>=Math.min(...n)&&s.push("하루 1:1 수업이 적은 완화 코스가 있어, 체력 부담 없이 공부하실 수 있어요."),o&&o<=17e5&&s.push("학비\xb7기숙사 정가가 비교적 저렴한 편이라 비용 부담이 적어요."),i.some(e=>/외부|external|호텔|콘도|hotel|condo/i.test(e.d.name))&&s.push("학원 내부 기숙사 외에 외부(호텔\xb7콘도형) 숙소도 선택할 수 있어요."),s.length||s.push("시니어 선생님께 맞는 코스와 숙소 구성을 갖춘 학원이에요."),s}(el,eA[0],eK,e0),ll=(e,l)=>
1l?f(e):eb?"약 ".concat(Math.round(e*eN).toLocaleString(),"원"):D(e),li=function(e,l){let i=Math.ceil(l/4),o=[],s=/per_usage|per_visit|per_night|per_kw|per_kwh|per_kg|per_load|per_day|per_trip|per_odd_week|per_book|per_team|per_family/;if(e.forEach(e=>{let n=e.chargeUnit||"",a=e.amount||0,c="KRW"===e.currency,r=e.excludeFromTotal;if(e.amountText){o.push({name:e.name,amt:0,krw:c,text:e.amountText,excl:!0});return}if(e.amountByWeeks){let i=e.amountByWeeks[l];if(null==i)return;o.push({name:e.name,amt:i,krw:c,excl:r});return}if("비자연장"!==e.category){if("ACR I-CARD"===e.category){l>=(e.triggerWeeks||9)&&o.push({name:e.name,amt:a,krw:c,excl:r});return}if((!e.triggerWeeks||!(l<e.triggerWeeks))&&!s.test(n)){if(/per_week|per_room_per_week/.test(n)){o.push({name:"".concat(e.name," (").concat(a,"/주\xd7").concat(l,")"),amt:a*l,krw:c,excl:r});return}if(/per_4weeks|per_person_per_4weeks|per_month/.test(n)){o.push({name:"".concat(e.name," (\xd7").concat(i,")"),amt:a*i,krw:c,excl:r});return}o.push({name:e.name,amt:a,krw:c,excl:r})}}}),l>4){let i=e.filter(e=>"비자연장"===e.category&&(e.triggerWeeks||0)<=l).sort((e,l)=>(l.triggerWeeks||0)-(e.triggerWeeks||0))[0];i&&o.push({name:i.name,amt:i.amount||0,krw:"KRW"===i.currency})}return o}(el.localFees,ex),lo=li.filter(e=>!e.krw&&!e.excl).reduce((e,l)=>e+l.amt,0);return(0,o.jsxs)(o.Fragment,{children:[!en&&(0,o.jsx)("nav",{className:j().breadcrumb,"aria-label":"현재 위치",children:(0,o.jsxs)("div",{className:j().breadcrumbInner,children:[(0,o.jsx)(n(),{href:"/schools",className:j().bcLink,children:"학원 전체보기"}),(0,o.jsx)("span",{className:j().bcSep,children:"›"}),(0,o.jsx)(g,{ariaLabel:"지역 선택",current:el.region,groups:[{items:Array.from(et).map(e=>{let[l,i]=e;return{value:l,label:i}})}],onSelect:e=>ea.push("/schools?region=".concat(e))}),(0,o.jsx)("span",{className:j().bcSep,children:"›"}),(0,o.jsx)(g,{ariaLabel:"학원 선택",current:el.id,groups:Array.from(et).map(e=>{let[l,i]=e;return{label:i,items:ec.filter(e=>e.region===l).map(e=>{let l=er(e.id,e.name);return{value:e.id,label:"".concat(l.title).concat(l.campus?" ".concat(l.campus):"")}})}}),onSelect:e=>ea.push("/schools/".concat(e))})]})}),(0,o.jsxs)("div",{className:"".concat(j().hero," ").concat(en?j().heroModal:""),children:[(0,o.jsx)("img",{className:j().heroImg,src:eW,alt:eE,fetchPriority:"high",decoding:"async"}),(0,o.jsx)("div",{className:j().heroScrim}),(0,o.jsxs)("div",{className:j().heroInner,children:[(0,o.jsxs)("p",{className:j().heroRegion,children:[(0,o.jsx)(t.Z,{name:"pin",size:16})," ",el.regionLabel]}),(0,o.jsx)("h1",{className:j().heroName,children:eR.title}),eR.campus&&(0,o.jsx)("p",{className:j().heroCampus,children:eR.campus}),eR.abbr&&(0,o.jsx)("p",{className:j().heroAbbr,children:eR.abbr}),(0,o.jsxs)("div",{className:j().heroMeta,children:[e3||e6?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("span",{children:["코스 ",el.courses.length,"종"]}),(0,o.jsx)("span",{className:j().dot}),(0,o.jsxs)("span",{children:["기숙사 ",el.dormitories.length,"타입"]})]}):e9.length?(0,o.jsxs)("span",{children:["패키지 ",e9.length,"종"]}):(0,o.jsx)("span",{children:"시니어 어학연수"}),el.minWeeks?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{className:j().dot}),(0,o.jsxs)("span",{children:["최소 ",el.minWeeks,"주"]})]}):null]})]})]}),(0,o.jsxs)("main",{className:j().main,children:[(0,o.jsxs)("section",{className:j().section,children:[(0,o.jsx)("h2",{className:j().secTitle,children:"시니어 선생님께 이 학원을 추천하는 이유"}),(0,o.jsx)("ul",{className:j().reasons,children:le.map((e,l)=>(0,o.jsxs)("li",{className:j().reason,children:[(0,o.jsx)("span",{className:j().reasonCheck,children:"✓"}),e]},l))})]}),e3&&(0,o.jsxs)("section",{className:j().section,children:[(0,o.jsxs)("div",{className:j().secHead,children:[(0,o.jsx)("h2",{className:j().secTitle,children:"추천 코스"}),(0,o.jsxs)("div",{className:j().secHeadRight,children:[(0,o.jsx)(E,{value:em,onChange:eu}),(0,o.jsxs)("button",{className:j().moreBtn,onClick:()=>eh("courses"),children:["코스 전체보기 (",el.courses.length,") →"]})]})]}),(0,o.jsx)("div",{className:j().cardGrid,children:eG.map((e,l)=>
1(0,o.jsxs)("div",{className:j().miniCard,children:[(0,o.jsx)("p",{className:j().miniName,children:e.name}),e.classDetails&&(0,o.jsx)(y,{full:e.classDetails}),(0,o.jsxs)("p",{className:j().miniPrice,children:[eB(e.price4Weeks)," ",(0,o.jsx)("span",{children:"/ 4주"})]})]},l))}),(null==ei?void 0:ei.hintCourse)===""?null:(0,o.jsx)("p",{className:j().miniHint,children:(null==ei?void 0:ei.hintCourse)||el.hintCourse||"시험\xb7스파르타가 아닌, 부담 없는 1:1 중심 코스 위주로 골라드렸어요."})]}),!e3&&!e6&&e9.length>0&&(0,o.jsxs)("section",{className:j().section,children:[(0,o.jsx)("h2",{className:j().secTitle,children:"프로그램 구성"}),(0,o.jsx)("div",{className:j().cardGrid,children:e9.map((e,l)=>{var i;return(0,o.jsxs)("div",{className:j().miniCard,children:[(0,o.jsx)("p",{className:j().miniName,children:e.name}),e.includes&&(0,o.jsx)("p",{className:j().miniSpec,children:e.includes}),(0,o.jsxs)("p",{className:j().miniPrice,children:[f(e.price)," ",(0,o.jsxs)("span",{children:["/ ",null!==(i=e.weeks)&&void 0!==i?i:4,"주"]})]}),e.note&&(0,o.jsx)("p",{className:j().miniHint,children:e.note})]},l)})}),(null==ei?void 0:ei.hintPackage)===""?null:(0,o.jsx)("p",{className:j().miniHint,children:(null==ei?void 0:ei.hintPackage)||"숙식\xb7수업이 포함된 올인원 패키지로 운영돼요. 자세한 구성은 상담으로 안내드려요."})]}),e6&&(0,o.jsxs)("section",{className:j().section,children:[(0,o.jsxs)("div",{className:j().secHead,children:[(0,o.jsx)("h2",{className:j().secTitle,children:"추천 기숙사"}),(0,o.jsxs)("div",{className:j().secHeadRight,children:[(0,o.jsx)(E,{value:ep,onChange:e_}),(0,o.jsxs)("button",{className:j().moreBtn,onClick:()=>eh("dorms"),children:["기숙사 전체보기 (",el.dormitories.length,") →"]})]})]}),(0,o.jsx)("div",{className:j().cardGrid,children:eQ.map((e,l)=>(0,o.jsxs)("div",{className:j().miniCard,children:[(0,o.jsx)("p",{className:j().miniKind,children:e.kind}),(0,o.jsx)("p",{className:j().miniName,children:e.d.name}),(0,o.jsxs)("p",{className:j().miniPrice,children:[eB(e.d.price4Weeks)," ",(0,o.jsx)("span",{children:"/ 4주"})]})]},l))}),(null==ei?void 0:ei.hintDorm)===""?null:(0,o.jsx)("p",{className:j().miniHint,children:(null==ei?void 0:ei.hintDorm)||(eK.some(e=>{var l;return(null===(l=e.kind)||void 0===l?void 0:l.includes("외부"))||/외부|콘도|condo|hotel|호텔/i.test(e.d.name)})?"개인 생활이 편한 1\xb72인실과 외부 기숙사까지 함께 추천드려요.":"개인 생활이 편한 1\xb72인실을 추천드려요.")}),(null!==($=null==ei?void 0:ei.dormNote)&&void 0!==$?$:el.dormNote)&&(0,o.jsx)("p",{className:j().dormNote,children:null!==(ee=null==ei?void 0:ei.dormNote)&&void 0!==ee?ee:el.dormNote})]}),(0,o.jsxs)("section",{className:"".concat(j().section," ").concat(j().priceSec),children:[(0,o.jsx)("h2",{className:j().secTitle,children:"예상 비용"}),"none"!==e7&&(null==ei?void 0:ei.hintPrice)!==""&&(0,o.jsx)("p",{className:j().miniHint,children:(null==ei?void 0:ei.hintPrice)||(0,o.jsxs)(o.Fragment,{children:["표시 금액은 모두 ",(0,o.jsx)("strong",{children:"4주 기준"}),"이에요."]})}),"split"===e7&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:j().priceCards,children:[(0,o.jsxs)("div",{className:j().priceCard,children:[(0,o.jsx)("p",{className:j().priceCardLabel,children:"최저가"}),(0,o.jsxs)("p",{className:j().priceCardPrice,children:[eB(e0),(0,o.jsx)("span",{children:"부터"})]}),(0,o.jsxs)("p",{className:j().priceCardName,children:[null==eY?void 0:eY.name," + ",null==e$?void 0:e$.name]})]}),e4&&(0,o.jsxs)("div",{className:"".concat(j().priceCard," ").concat(j().priceCardRec),children:[(0,o.jsxs)("p",{className:j().priceCardLabel,children:[(0,o.jsx)("span",{className:j().priceCardTag,children:"시니어 추천"})," 조합"]}),(0,o.jsx)("p",{className:j().priceCardPrice,children:eB(e2)}),(0,o.jsxs)("p",{className:j().priceCardName,children:[null==e1?void 0:e1.name," + ",e4.name]})]})]}),(0,o.jsxs)("p",{className:j().priceNote,children:[(0,o.jsx)("strong",{children:"정가는 할인 전 금액"}),"이라, 연락 주시면 프로모션과 ",(0,o.jsx)("strong",{children:"시니어유학"})," 자체 할인까지 받아보실 수 있어요. 추천 조합은 1:1 부담이 적은 코스에 개인 생활이 되는 방을 더한 시니어 맞춤이에요."]})]}),"package"===e7&&e8&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{className:j().priceCards,style:{gridTemplateColumns:"1fr"},children:(0,o.jsxs)("div",{className:j().priceCard,children:[(0,o.jsx)("p",{className:j().priceCardLabel,children:"최저가"}),(0,o.jsxs)("p",{className:j().priceCardPrice,children:[f(e8.price),(0,o.jsx)("span",{children:e8.weeks?" / ".concat(e8.weeks,"주부터"):" 부터"})]}),(0,o.jsxs)("p",{className:j().priceCardName,children:[e8.name,e8.allInclusive?" \xb7 숙식\xb7현지비 포함 올인원":""]})]})}),(0,o.jsxs)("p",{className:j().priceNote,children:[(0,o.jsx)("strong",{children:e8.name})," 기준 ",e8.allInclusive?"숙식\xb7현지비까지 포함된 올인원":"패키지"," 정가예요. 연락 주시면 프로모션과 ",(0,o.jsx)("strong",{children:"시니어유학"})," 자체 할인까지 받아보실 수 있어요."]})]}),"none"===e7&&(0,o.jsxs)("p",{className:j().priceNote,children:["코스\xb7숙소\xb7비용 구성은 시기에 따라 달라져, 연락 주시면 ",(0,o.jsx)("strong",{children:"시니어유학"}),"이 정확히 안내드려요."]}),(0,o.jsxs)("ul",{className:j().priceExtra,children:[el.priceNote?(0,o.jsx)("li",{children:el.priceNote}
1):null,"none"===e7||!eU||(null==e8?void 0:e8.allInclusive)?null:(0,o.jsxs)("li",{children:["등록금 ",eB(eU)," 별도"]}),(el.surcharges||[]).filter(e=>e.amountPerWeek).map((e,l)=>{var i,s;return(0,o.jsxs)("li",{children:["성수기(",null===(i=e.startDate)||void 0===i?void 0:i.slice(5),"~",null===(s=e.endDate)||void 0===s?void 0:s.slice(5),") 주당 ",f(e.amountPerWeek)," 추가"]},l)}),el.localFees.length>0&&(0,o.jsx)("li",{className:j().feeLink,children:(0,o.jsx)("button",{onClick:()=>eh("fees"),children:"현지 납부 비용 보기 (4\xb78\xb712주) →"})})]}),(0,o.jsxs)("div",{className:j().discountCta,children:[(0,o.jsxs)("p",{className:j().discountTitle,children:["지금 보시는 건 ",(0,o.jsx)("strong",{children:"정가"}),"예요."]}),(0,o.jsxs)("p",{className:j().discountSub,children:["연락 주시면 시기별 학원 ",(0,o.jsx)("strong",{children:"프로모션"}),"과 ",(0,o.jsx)("strong",{children:"시니어유학"})," 자체 할인까지 받아보실 수 있어요."]}),(0,o.jsxs)("div",{className:j().discountBtns,children:[(0,o.jsx)("button",{className:j().btnPrimary,onClick:eo,children:"상담받고 프로모션\xb7할인 받아보기"}),(0,o.jsxs)("button",{className:j().btnAlt,onClick:function(){if(1===eP.length){let e=eP[0],l=document.createElement("a");l.href=(0,u.IL)(el.id,e),l.target="_blank",l.rel="noopener noreferrer",l.download="",l.click();return}eh("brochure")},children:[(0,o.jsx)("img",{className:j().btnIco,src:"/img/newIcon/brochure.svg",alt:""})," 브로셔 다운로드"]}),(0,o.jsxs)("button",{className:j().btnAlt,onClick:es,children:[(0,o.jsx)("img",{className:j().btnIco,src:"/img/newIcon/brochure_add.svg",alt:""})," 자료 요청하기"]})]})]})]}),eI&&(0,o.jsxs)("section",{className:j().section,children:[(0,o.jsx)("h2",{className:j().secTitle,children:"사진"}),(0,o.jsx)("div",{className:j().photoTabs,children:eS.map(e=>(0,o.jsx)("button",{className:"".concat(j().photoTab," ").concat(eC===e.key?j().photoTabOn:""),onClick:()=>{eD(e.key),eT(null)},children:e.label},e.key))}),(0,o.jsx)("div",{className:j().photoGrid,children:ey.map((e,l)=>(0,o.jsx)("button",{type:"button",className:j().photo,onClick:()=>eT(l),"aria-label":"사진 ".concat(l+1," 크게 보기"),children:(0,o.jsx)("img",{className:j().photoEl,src:e.url,alt:eE,loading:"lazy",decoding:"async"})},e.id))}),(0,o.jsx)("p",{className:j().miniHint,children:"사진을 누르시면 크게 볼 수 있어요."}),null!=ew&&ey[ew]&&(0,o.jsx)(w,{photos:ey,index:ew,alt:eE,onClose:()=>eT(null),onMove:eT})]}),en?(0,o.jsx)("button",{className:j().backLink,onClick:en,style:{background:"none",border:"none",cursor:"pointer",font:"inherit"},children:"← 목록으로 닫기"}):(0,o.jsx)(n(),{href:"/schools",className:j().backLink,children:"← 다른 어학원 보기"})]}),"courses"===ed&&(0,o.jsx)("div",{className:j().popOverlay,onClick:()=>eh(null),children:(0,o.jsxs)("div",{className:j().popBox,onClick:e=>e.stopPropagation(),children:[(0,o.jsxs)("div",{className:j().popHead,children:[(0,o.jsxs)("h3",{children:["전체 코스 (",el.courses.length,")"]}),(0,o.jsx)("button",{onClick:()=>eh(null),children:"✕"})]}),(0,o.jsxs)("div",{className:j().popBody,children:[(0,o.jsx)(I,{value:em,onChange:eu}),ez.map((e,l)=>(0,o.jsxs)("div",{className:j().popRow,children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("p",{className:j().popRowName,children:e.name}),e.classDetails&&(0,o.jsx)("p",{className:j().popRowSub,children:m(e.classDetails)})]}),(0,o.jsx)("span",{className:j().popRowPrice,children:eB(e.price4Weeks)})]},l))]})]})}),"dorms"===ed&&(0,o.jsx)("div",{className:j().popOverlay,onClick:()=>eh(null),children:(0,o.jsxs)("div",{className:j().popBox,onClick:e=>e.stopPropagation(),children:[(0,o.jsxs)("div",{className:j().popHead,children:[(0,o.jsxs)("h3",{children:["전체 기숙사 (",el.dormitories.length,")"]}),(0,o.jsx)("button",{onClick:()=>eh(null),children:"✕"})]}),(0,o.jsxs)("div",{className:j().popBody,children:[(0,o.jsx)(I,{value:ep,onChange:e_}),eZ.map((e,l)=>(0,o.jsxs)("div",{className:j().popRow,children:[(0,o.jsx)("p",{className:j().popRowName,children:e.name}),(0,o.jsx)("span",{className:j().popRowPrice,children:eB(e.price4Weeks)})]},l))]})]})}),"fees"===ed&&(0,o.jsx)("div",{className:j().popOverlay,onClick:()=>eh(null),children:(0,o.jsxs)("div",{className:j().popBox,onClick:e=>e.stopPropagation(),children:[(0,o.jsxs)("div",{className:j().popHead,children:[(0,o.jsx)("h3",{children:"현지 납부 비용 (대략)"}),(0,o.jsx)("button",{onClick:()=>eh(null),children:"✕"})]}),(0,o.jsxs)("div",{className:j().feeControls,children:[(0,o.jsx)("div",{className:j().weekTabs,children:[4,8,12].map(e=>(0,o.jsxs)("button",{className:"".concat(j().weekTab," ").concat(ex===e?j().weekTabOn:""),onClick:()=>ev(e),children:[e,"주"]},e))}),(0,o.jsxs)("label",{className:j().fxToggle,children:[(0,o.jsx)("input",{type:"checkbox",checked:eb,onChange:e=>ej(e.target.checked)})," 원화로 보기"]})]}),eb&&(0,o.jsxs)("div",{className:j().fxRateRow,children:[(0,o.jsx)("span",{children:"기준환율 ₱1 ="}),(0,o.jsxs)("span",{className:j().fxInputWrap,children:["₩",(0,o.jsx)("input",{className:j().fxInput,type:"number",min:1,step:.5,value:eN,onChange:e=>ek(Math.max(1,Number(e.target.value)||1)),"aria-label":"기준환율"})]}),(0,o.jsxs)("button",{type:"button",className:j().fxReset,onClick:()=>ek(24),disabled:24===eN,children:["기본값(",24,")"]})]}),(0,o.jsxs)("div",{className:j().popBody,children:[li.map((e,l)=>{var i;return(0,o.jsxs)("div",{className:j().popRow,children:[(0,o.jsx)("span",{className:j().feeName,children:e.name}),(0,o.jsx)("span",{className:j().popRowPrice,children:null!==(i=e.text)&&void 0!==i?i:ll(e.amt,e.krw)})]},l)}),(0,o.jsxs)("div",{className:j().feeTotal,children:[(0,o.jsx)("span",{children:"합계 (대략)"}),(0,o.jsx)("span",{children:eb?"약 ".concat(Math.round(lo*eN).toLocaleStr
1ing(),"원"):D(lo)})]})]}),(0,o.jsxs)("p",{className:j().feeFoot,children:["※ 현지 페소 납부. 세탁\xb7전기 사용량 등 변동 항목은 제외한 추정치이며, 환율\xb7시기\xb7학원 사정에 따라 달라집니다. (적용 환율 ₱1≈₩",eN,")"]})]})}),"brochure"===ed&&(0,o.jsx)("div",{className:j().popOverlay,onClick:()=>eh(null),children:(0,o.jsxs)("div",{className:j().popBox,onClick:e=>e.stopPropagation(),children:[(0,o.jsxs)("div",{className:j().popHead,children:[(0,o.jsx)("h3",{children:"브로셔 \xb7 자료 다운로드"}),(0,o.jsx)("button",{onClick:()=>eh(null),children:"✕"})]}),(0,o.jsx)("div",{className:j().popBody,children:eP.length>0?eP.map((e,l)=>(0,o.jsxs)("a",{href:(0,u.IL)(el.id,e),target:"_blank",rel:"noopener noreferrer",download:!0,className:j().popRow,style:{textDecoration:"none"},children:[(0,o.jsx)("p",{className:j().popRowName,children:e.label}),(0,o.jsx)("span",{className:j().popRowPrice,children:"받기 ↓"})]},l)):(0,o.jsxs)("div",{style:{textAlign:"center",padding:"14px 6px"},children:[(0,o.jsxs)("p",{style:{fontSize:15,color:"var(--color-text-secondary)",lineHeight:1.65,marginBottom:18},children:["아직 다운로드 자료가 준비 중이에요.",(0,o.jsx)("br",{}),"상담을 신청하시면 전담팀이 최신 브로셔를 보내드립니다."]}),(0,o.jsx)("button",{className:j().btnPrimary,onClick:()=>{eh(null),eo()},children:"상담 신청하고 자료 받기"})]})})]})})]})}},2689:function(e){e.exports={notFound:"SchoolDetail_notFound__zJR51",backLink:"SchoolDetail_backLink__d_KVS",breadcrumb:"SchoolDetail_breadcrumb__9oUyc",breadcrumbInner:"SchoolDetail_breadcrumbInner__oEuVS",bcLink:"SchoolDetail_bcLink__emqrB",bcSep:"SchoolDetail_bcSep__JMazB",bcCurrent:"SchoolDetail_bcCurrent__iraJn",bcDd:"SchoolDetail_bcDd__DkpgH",bcDdBtn:"SchoolDetail_bcDdBtn__SJtyw",bcDdBtnOn:"SchoolDetail_bcDdBtnOn__K22t0",bcDdLabel:"SchoolDetail_bcDdLabel__g_vnN",bcDdCaret:"SchoolDetail_bcDdCaret__t_rug",bcDdCaretOn:"SchoolDetail_bcDdCaretOn__tb06O",bcDdMenu:"SchoolDetail_bcDdMenu__HRYR8",bcDdIn:"SchoolDetail_bcDdIn__d6sM_",bcDdGroup:"SchoolDetail_bcDdGroup__tXNSB",bcDdItem:"SchoolDetail_bcDdItem__db8SF",bcDdItemOn:"SchoolDetail_bcDdItemOn__7KV3U",hero:"SchoolDetail_hero__u2FBk",heroModal:"SchoolDetail_heroModal__h9QaE",heroImg:"SchoolDetail_heroImg__iKVpM",heroScrim:"SchoolDetail_heroScrim__f8_nG",heroInner:"SchoolDetail_heroInner__IyACe",heroRegion:"SchoolDetail_heroRegion__xdbRu",heroName:"SchoolDetail_heroName__HkZU2",heroCampus:"SchoolDetail_heroCampus___QFds",heroAbbr:"SchoolDetail_heroAbbr__6OMm2",heroMeta:"SchoolDetail_heroMeta__sxEII",dot:"SchoolDetail_dot__ouQl0",main:"SchoolDetail_main__yfKzH",section:"SchoolDetail_section__sLnZL",secHead:"SchoolDetail_secHead__cNgG5",secTitle:"SchoolDetail_secTitle__vln92",secHeadRight:"SchoolDetail_secHeadRight__x4e36",btnIco:"SchoolDetail_btnIco__H3D_4",popSortRow:"SchoolDetail_popSortRow__0xNuw",popSortTab:"SchoolDetail_popSortTab__YvdQV",popSortTabOn:"SchoolDetail_popSortTabOn__cwUDq",moreBtn:"SchoolDetail_moreBtn__Bw7Hi",reasons:"SchoolDetail_reasons__P05mz",reason:"SchoolDetail_reason__vTvW_",reasonCheck:"SchoolDetail_reasonCheck__wsVCp",cardGrid:"SchoolDetail_cardGrid__JTFsR",miniCard:"SchoolDetail_miniCard__nYLa9",miniKind:"SchoolDetail_miniKind__TXqap",miniName:"SchoolDetail_miniName__d0zOj",miniSpec:"SchoolDetail_miniSpec__Cx2sF",specTip:"SchoolDetail_specTip__57cyQ",specTipIn:"SchoolDetail_specTipIn__AoAxT",miniPrice:"SchoolDetail_miniPrice__TvjC8",miniHint:"SchoolDetail_miniHint__fDJr0",dormNote:"SchoolDetail_dormNote__TDu2B",priceSec:"SchoolDetail_priceSec__DLx6C",priceNote:"SchoolDetail_priceNote__kNxB9",priceCards:"SchoolDetail_priceCards__K9_9e",priceCard:"SchoolDetail_priceCard__fE9FQ",priceCardRec:"SchoolDetail_priceCardRec__1pO1W",priceCardLabel:"SchoolDetail_priceCardLabel__3Cnrq",priceCardTag:"SchoolDetail_priceCardTag__S1clM",priceCardPrice:"SchoolDetail_priceCardPrice__2P78A",priceCardName:"SchoolDetail_priceCardName__9mEOV",priceExtra:"SchoolDetail_priceExtra__ExCsp",feeLink:"SchoolDetail_feeLink__G1vn_",discountCta:"SchoolDetail_discountCta__v__NG",discountTitle:"SchoolDetail_discountTitle__tCdmH",discountSub:"SchoolDetail_discountSub__0iBYC",discountBtns:"SchoolDetail_discountBtns__J_1dT",btnPrimary:"SchoolDetail_btnPrimary__9aZE7",btnAlt:"SchoolDetail_btnAlt__0k9jP",photoTabs:"SchoolDetail_photoTabs__crMoS",photoTab:"SchoolDetail_photoTab__iErWO",photoTabOn:"SchoolDetail_photoTabOn__T9oSW",photoGrid:"SchoolDetail_photoGrid__K73K9",photo:"SchoolDetail_photo__Pzpye",photoEl:"SchoolDetail_photoEl__wHfAQ",lbOverlay:"SchoolDetail_lbOverlay__GgirL",lbStage:"SchoolDetail_lbStage__XoI0n",lbImg:"SchoolDetail_lbImg__GLm4_",lbNav:"SchoolDetail_lbNav__jmYFc",lbClose:"SchoolDetail_lbClose__RsOOx",lbPrev:"SchoolDetail_lbPrev__LRQ5C",lbNext:"SchoolDetail_lbNext__iU9cB",lbCount:"SchoolDetail_lbCount__HIg5n",stickyBar:"SchoolDetail_stickyBar__ci1Lr",stickyAlt:"SchoolDetail_stickyAlt___2KfS",stickyPrimary:"SchoolDetail_stickyPrimary__iaWnU",popOverlay:"SchoolDetail_popOverlay__7kerp",popBox:"SchoolDetail_popBox__7LQmi",popHead:"SchoolDetail_popHead__F9y_F",popBody:"SchoolDetail_popBo
1dy___MNPu",popRow:"SchoolDetail_popRow__GH6kS",popRowName:"SchoolDetail_popRowName__zJLUo",popRowSub:"SchoolDetail_popRowSub__ZL_Z3",popRowPrice:"SchoolDetail_popRowPrice__3qqjy",feeControls:"SchoolDetail_feeControls__0u4th",weekTabs:"SchoolDetail_weekTabs__BTxTQ",weekTab:"SchoolDetail_weekTab__Rntdl",weekTabOn:"SchoolDetail_weekTabOn__Vxmhw",fxToggle:"SchoolDetail_fxToggle__jpcxE",fxRateRow:"SchoolDetail_fxRateRow__jkqRG",fxInputWrap:"SchoolDetail_fxInputWrap__OCJ6w",fxInput:"SchoolDetail_fxInput__o0fMO",fxReset:"SchoolDetail_fxReset__u9aQg",feeName:"SchoolDetail_feeName__Ch6n_",feeTotal:"SchoolDetail_feeTotal__iaztV",feeFoot:"SchoolDetail_feeFoot__6GvS8"}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.